summaryrefslogtreecommitdiff
path: root/src/game-server/monster.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/game-server/monster.h')
-rw-r--r--src/game-server/monster.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/game-server/monster.h b/src/game-server/monster.h
index 3b58fa60..afa93e71 100644
--- a/src/game-server/monster.h
+++ b/src/game-server/monster.h
@@ -202,12 +202,18 @@ class MonsterClass
void setUpdateCallback(Script *script)
{ script->assignCallback(mUpdateCallback); }
+ void setDamageCallback(Script *script)
+ { script->assignCallback(mDamageCallback); }
+
void setEventCallback(const std::string &event, Script *script)
{ script->assignCallback(mEventCallbacks[event]); }
Script::Ref getUpdateCallback() const
{ return mUpdateCallback; }
+ Script::Ref getDamageCallback() const
+ { return mDamageCallback; }
+
Script::Ref getEventCallback(const std::string &event) const
{ return mEventCallbacks.value(event); }
@@ -237,6 +243,11 @@ class MonsterClass
Script::Ref mUpdateCallback;
/**
+ * A reference to the script that is called when a mob takes damage.
+ */
+ Script::Ref mDamageCallback;
+
+ /**
* Named event callbacks. Currently only used for custom attack
* callbacks.
*/