diff options
author | sfan5 <sfan5@live.de> | 2017-09-15 12:19:01 +0200 |
---|---|---|
committer | SmallJoker <mk939@ymail.com> | 2018-06-03 17:31:59 +0200 |
commit | c2a0333901a696f7dcb67356aeb0206b89be14e6 (patch) | |
tree | 11d378e7426f53797e94e6f0d103164ffe1356cf /src/serverenvironment.h | |
parent | 5b2461c713889b9832f5b99c85abf87e5d494242 (diff) | |
download | minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.tar.gz minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.tar.bz2 minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.zip |
ServerEnv: Clean up object lifecycle handling (#6414)
* ServerEnv: Clean up object lifecycle handling
Diffstat (limited to 'src/serverenvironment.h')
-rw-r--r-- | src/serverenvironment.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/serverenvironment.h b/src/serverenvironment.h index 7c370fd54..f6c2f17fc 100644 --- a/src/serverenvironment.h +++ b/src/serverenvironment.h @@ -33,6 +33,7 @@ class PlayerDatabase; class PlayerSAO; class ServerEnvironment; class ActiveBlockModifier; +struct StaticObject; class ServerActiveObject; class Server; class ServerScripting; @@ -362,7 +363,7 @@ private: u16 addActiveObjectRaw(ServerActiveObject *object, bool set_changed, u32 dtime_s); /* - Remove all objects that satisfy (m_removed && m_known_by_count==0) + Remove all objects that satisfy (isGone() && m_known_by_count==0) */ void removeRemovedObjects(); @@ -383,6 +384,14 @@ private: void deactivateFarObjects(bool force_delete); /* + A few helpers used by the three above methods + */ + void deleteStaticFromBlock( + ServerActiveObject *obj, u16 id, u32 mod_reason, bool no_emerge); + bool saveStaticToBlock(v3s16 blockpos, u16 store_id, + ServerActiveObject *obj, const StaticObject &s_obj, u32 mod_reason); + + /* Member variables */ |