summaryrefslogtreecommitdiffstats
path: root/src/Mobs/Behaviors/Behavior.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Mobs/Behaviors/Behavior.h')
-rw-r--r--src/Mobs/Behaviors/Behavior.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/Mobs/Behaviors/Behavior.h b/src/Mobs/Behaviors/Behavior.h
index 989addf8d..0b554ec62 100644
--- a/src/Mobs/Behaviors/Behavior.h
+++ b/src/Mobs/Behaviors/Behavior.h
@@ -2,11 +2,16 @@
struct TakeDamageInfo;
class cChunk;
+class cPlayer;
+class cMonster;
#include <chrono>
class cBehavior
{
public:
+ virtual void AttachToMonster(cMonster & a_Parent) = 0;
+
+ // Tick-related
virtual bool IsControlDesired(std::chrono::milliseconds a_Dt, cChunk & a_Chunk);
virtual bool ControlStarting(std::chrono::milliseconds a_Dt, cChunk & a_Chunk);
virtual bool ControlEnding(std::chrono::milliseconds a_Dt, cChunk & a_Chunk);
@@ -14,8 +19,8 @@ public:
virtual void PostTick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk);
virtual void PreTick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk);
-
- virtual void onRightClicked();
+ // Other
+ virtual void OnRightClicked(cPlayer & a_Player);
virtual void Destroyed();
virtual void DoTakeDamage(TakeDamageInfo & a_TDI);
virtual ~cBehavior() {}