diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2023-08-19 18:26:52 +1000 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2023-08-19 18:26:52 +1000 |
commit | ec4f70340e0f9a3a867aef7d39df19457bec1d3e (patch) | |
tree | 32ee125d2ff837b0e6b5b5db20881f60f56b79ec /source/game/StarWorldServer.cpp | |
parent | f22eed8304c90418314e254f2569bb87ee5d72fc (diff) |
Allow overriding placed collision kind ("""overground""") from world.placeMaterial
Diffstat (limited to 'source/game/StarWorldServer.cpp')
-rw-r--r-- | source/game/StarWorldServer.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/game/StarWorldServer.cpp b/source/game/StarWorldServer.cpp index 492ea81..6579c91 100644 --- a/source/game/StarWorldServer.cpp +++ b/source/game/StarWorldServer.cpp @@ -1378,7 +1378,10 @@ TileModificationList WorldServer::doApplyTileModifications(TileModificationList tile->foregroundHueShift = m_worldTemplate->biomeMaterialHueShift(tile->blockBiomeIndex, placeMaterial->material); tile->foregroundColorVariant = DefaultMaterialColorVariant; - tile->updateCollision(materialDatabase->materialCollisionKind(tile->foreground)); + if (placeMaterial->collisionOverride != TileCollisionOverride::None) + tile->updateCollision(collisionKindFromOverride(placeMaterial->collisionOverride)); + else + tile->updateCollision(materialDatabase->materialCollisionKind(tile->foreground)); if (tile->foreground == EmptyMaterialId) { // Remove the foreground mod if removing the foreground. tile->foregroundMod = NoModId; |