diff options
Diffstat (limited to 'src/game-server/monster.h')
-rw-r--r-- | src/game-server/monster.h | 11 |
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. */ |