From 84f86a467e7c289936571c738f9422868ecaaee6 Mon Sep 17 00:00:00 2001 From: Mat Date: Thu, 26 Mar 2020 19:54:40 +0200 Subject: Improvements to blaze and ghast (#4547) --- src/Mobs/Ghast.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/Mobs/Ghast.h') diff --git a/src/Mobs/Ghast.h b/src/Mobs/Ghast.h index a41a72ddc..7312b25c9 100644 --- a/src/Mobs/Ghast.h +++ b/src/Mobs/Ghast.h @@ -17,10 +17,23 @@ public: CLASS_PROTODEF(cGhast) + virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override; virtual void GetDrops(cItems & a_Drops, cEntity * a_Killer = nullptr) override; virtual bool Attack(std::chrono::milliseconds a_Dt) override; + virtual bool DoTakeDamage(TakeDamageInfo & a_TDI) override; - bool IsCharging(void) const {return false; } + bool IsCharging(void) const { return m_IsCharging; } + +private: + /** Specifies whether or not the ghast has started shooting a fireball. */ + bool m_IsCharging; + + /** Number of ticks until the ghast tries to fly to another position. */ + int m_FlightCooldown; + + /** Number of ticks until a projectile is created. + Only used while m_IsCharging is true. */ + int m_TicksUntilShot; } ; -- cgit v1.2.3