aboutsummaryrefslogtreecommitdiff
path: root/src/serverobject.h
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2011-05-22 17:00:09 +0300
committerPerttu Ahola <celeron55@gmail.com>2011-05-22 17:00:09 +0300
commit0af53115384cda1d96337b39c4205cb7a970c069 (patch)
treee4fa369ece509e685e2ff719b9228492bffc93d8 /src/serverobject.h
parentaf7d50e91091b7bec74d94ad61c948062d4c1aab (diff)
downloadminetest-0af53115384cda1d96337b39c4205cb7a970c069.tar.gz
minetest-0af53115384cda1d96337b39c4205cb7a970c069.tar.bz2
minetest-0af53115384cda1d96337b39c4205cb7a970c069.zip
Preliminary "active block" stuff + set up test code to grow grass.
Diffstat (limited to 'src/serverobject.h')
-rw-r--r--src/serverobject.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/serverobject.h b/src/serverobject.h
index 71199475e..955969819 100644
--- a/src/serverobject.h
+++ b/src/serverobject.h
@@ -106,8 +106,13 @@ public:
*/
virtual u16 punch(const std::string &toolname){return 0;}
- // Number of players which know about this object
+ /*
+ Number of players which know about this object. Object won't be
+ deleted until this is 0 to keep the id preserved for the right
+ object.
+ */
u16 m_known_by_count;
+
/*
- Whether this object is to be removed when nobody knows about
it anymore.
@@ -120,6 +125,16 @@ public:
bool m_removed;
/*
+ This is set to true when a block should be removed from the active
+ object list but couldn't be removed because the id has to be
+ reserved for some client.
+
+ The environment checks this periodically. If this is true and also
+ m_known_by_count is true,
+ */
+ bool m_pending_deactivation;
+
+ /*
Whether the object's static data has been stored to a block
*/
bool m_static_exists;