Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/game/StarWorldServer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/game/StarWorldServer.hpp')
-rw-r--r--source/game/StarWorldServer.hpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/source/game/StarWorldServer.hpp b/source/game/StarWorldServer.hpp
index 63414f7..14080d7 100644
--- a/source/game/StarWorldServer.hpp
+++ b/source/game/StarWorldServer.hpp
@@ -135,6 +135,9 @@ public:
TileModificationList validTileModifications(TileModificationList const& modificationList, bool allowEntityOverlap) const override;
TileModificationList applyTileModifications(TileModificationList const& modificationList, bool allowEntityOverlap) override;
+ bool replaceTile(Vec2I const& pos, TileModification const& modification);
+ TileModificationList replaceTiles(TileModificationList const& modificationList) override;
+ bool damageWouldDestroy(Vec2I const& pos, TileLayer layer, TileDamage const& tileDamage) const override;
EntityPtr entity(EntityId entityId) const override;
void addEntity(EntityPtr const& entity, EntityId entityId = NullEntityId) override;
EntityPtr closestEntity(Vec2F const& center, float radius, EntityFilter selector = EntityFilter()) const override;
@@ -217,7 +220,7 @@ public:
SkyPtr sky() const;
void modifyLiquid(Vec2I const& pos, LiquidId liquid, float quantity, bool additive = false);
void setLiquid(Vec2I const& pos, LiquidId liquid, float level, float pressure);
- List<ItemDescriptor> destroyBlock(TileLayer layer, Vec2I const& pos, bool genItems, bool destroyModFirst);
+ List<ItemDescriptor> destroyBlock(TileLayer layer, Vec2I const& pos, bool genItems, bool destroyModFirst, bool updateNeighbors = true);
void removeEntity(EntityId entityId, bool andDie);
void updateTileEntityTiles(TileEntityPtr const& object, bool removing = false, bool checkBreaks = true);
@@ -314,7 +317,7 @@ private:
// of ticks since the last run.
Maybe<unsigned> shouldRunThisStep(String const& timingConfiguration);
- TileModificationList doApplyTileModifications(TileModificationList const& modificationList, bool allowEntityOverlap, bool ignoreTileProtection = false);
+ TileModificationList doApplyTileModifications(TileModificationList const& modificationList, bool allowEntityOverlap, bool ignoreTileProtection = false, bool updateNeighbors = true);
// Queues pending (step based) updates to the given player
void queueUpdatePackets(ConnectionId clientId, bool sendRemoteUpdates);