aboutsummaryrefslogtreecommitdiff
path: root/src/server/luaentity_sao.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/luaentity_sao.h')
-rw-r--r--src/server/luaentity_sao.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/server/luaentity_sao.h b/src/server/luaentity_sao.h
index 87b664a8b..1dc72b150 100644
--- a/src/server/luaentity_sao.h
+++ b/src/server/luaentity_sao.h
@@ -36,23 +36,30 @@ public:
{
}
~LuaEntitySAO();
+
ActiveObjectType getType() const { return ACTIVEOBJECT_TYPE_LUAENTITY; }
ActiveObjectType getSendType() const { return ACTIVEOBJECT_TYPE_GENERIC; }
virtual void addedToEnvironment(u32 dtime_s);
void step(float dtime, bool send_recommended);
std::string getClientInitializationData(u16 protocol_version);
+
bool isStaticAllowed() const { return m_prop.static_save; }
bool shouldUnload() const { return true; }
void getStaticData(std::string *result) const;
+
u32 punch(v3f dir, const ToolCapabilities *toolcap = nullptr,
ServerActiveObject *puncher = nullptr,
float time_from_last_punch = 1000000.0f,
u16 initial_wear = 0);
+
void rightClick(ServerActiveObject *clicker);
+
void setPos(const v3f &pos);
void moveTo(v3f pos, bool continuous);
float getMinimumSavedMovement();
+
std::string getDescription();
+
void setHP(s32 hp, const PlayerHPChangeReason &reason);
u16 getHP() const;
@@ -73,9 +80,9 @@ public:
bool collideWithObjects() const;
protected:
- void dispatchScriptDeactivate();
- virtual void onMarkedForDeactivation() { dispatchScriptDeactivate(); }
- virtual void onMarkedForRemoval() { dispatchScriptDeactivate(); }
+ void dispatchScriptDeactivate(bool removal);
+ virtual void onMarkedForDeactivation() { dispatchScriptDeactivate(false); }
+ virtual void onMarkedForRemoval() { dispatchScriptDeactivate(true); }
private:
std::string getPropertyPacket();