projects
/
oweals
/
minetest.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix Android build, but there is a remaining linking issue in guiConfirmRegistration
[oweals/minetest.git]
/
src
/
serverobject.h
diff --git
a/src/serverobject.h
b/src/serverobject.h
index 140ff9f4ac2118347306760acc18fa2d12c27662..304281093cc20302b4cd414803508fd5f6763746 100644
(file)
--- a/
src/serverobject.h
+++ b/
src/serverobject.h
@@
-55,7
+55,7
@@
public:
Prototypes are used that way.
*/
ServerActiveObject(ServerEnvironment *env, v3f pos);
Prototypes are used that way.
*/
ServerActiveObject(ServerEnvironment *env, v3f pos);
- virtual ~ServerActiveObject();
+ virtual ~ServerActiveObject()
= default
;
virtual ActiveObjectType getSendType() const
{ return getType(); }
virtual ActiveObjectType getSendType() const
{ return getType(); }
@@
-154,6
+154,8
@@
public:
{}
virtual void getAnimation(v2f *frames, float *frame_speed, float *frame_blend, bool *frame_loop)
{}
{}
virtual void getAnimation(v2f *frames, float *frame_speed, float *frame_blend, bool *frame_loop)
{}
+ virtual void setAnimationSpeed(float frame_speed)
+ {}
virtual void setBonePosition(const std::string &bone, v3f position, v3f rotation)
{}
virtual void getBonePosition(const std::string &bone, v3f *position, v3f *lotation)
virtual void setBonePosition(const std::string &bone, v3f position, v3f rotation)
{}
virtual void getBonePosition(const std::string &bone, v3f *position, v3f *lotation)
@@
-210,23
+212,27
@@
public:
it anymore.
- Removal is delayed to preserve the id for the time during which
it could be confused to some other object by some client.
it anymore.
- Removal is delayed to preserve the id for the time during which
it could be confused to some other object by some client.
- - This is set to true by the step() method when the object wants
- to be deleted.
- - This can be set to true by anything else too.
+ - This is usually set to true by the step() method when the object wants
+ to be deleted but can be set by anything else too.
*/
*/
- bool m_
removed
= false;
+ bool m_
pending_removal
= false;
/*
/*
- This is set to true when an object should be removed from the active
- object list but couldn't be removed because the id has to be
- reserved for some client.
+ Same purpose as m_pending_removal but for deactivation.
+ deactvation = save static data in block, remove active object
- The environment checks this periodically. If this is true and also
- m_known_by_count is true, object is deleted from the active object
- list.
+ If this is set alongside with m_pending_removal, removal takes
+ priority.
*/
bool m_pending_deactivation = false;
*/
bool m_pending_deactivation = false;
+ /*
+ A getter that unifies the above to answer the question:
+ "Can the environment still interact with this object?"
+ */
+ inline bool isGone() const
+ { return m_pending_removal || m_pending_deactivation; }
+
/*
Whether the object's static data has been stored to a block
*/
/*
Whether the object's static data has been stored to a block
*/