diff options
author | Bond-009 <bond.009@outlook.com> | 2018-02-04 21:53:35 +0100 |
---|---|---|
committer | Alexander Harkness <me@bearbin.net> | 2018-02-04 21:53:35 +0100 |
commit | d12804d4c05d125c8de3187da29013bef6ae5d0b (patch) | |
tree | 866f22486712382c07dddf60e0d2478311888e05 /src/Mobs | |
parent | cppcheck found an out of bound array access. (#4182) (diff) | |
download | cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar.gz cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar.bz2 cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar.lz cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar.xz cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.tar.zst cuberite-d12804d4c05d125c8de3187da29013bef6ae5d0b.zip |
Diffstat (limited to '')
-rw-r--r-- | src/Mobs/Chicken.cpp | 12 | ||||
-rw-r--r-- | src/Mobs/Chicken.h | 2 | ||||
-rw-r--r-- | src/Mobs/Ocelot.cpp | 10 | ||||
-rw-r--r-- | src/Mobs/Ocelot.h | 1 |
4 files changed, 19 insertions, 6 deletions
diff --git a/src/Mobs/Chicken.cpp b/src/Mobs/Chicken.cpp index e2caa6f67..242fe5aa0 100644 --- a/src/Mobs/Chicken.cpp +++ b/src/Mobs/Chicken.cpp @@ -74,10 +74,12 @@ void cChicken::GetDrops(cItems & a_Drops, cEntity * a_Killer) -void cChicken::HandleFalling(void) +bool cChicken::DoTakeDamage(TakeDamageInfo & a_TDI) { - // empty - chickens don't take fall damage -} - - + if (a_TDI.DamageType == dtFalling) + { + return false; + } + return super::DoTakeDamage(a_TDI); +} diff --git a/src/Mobs/Chicken.h b/src/Mobs/Chicken.h index 0dfc5e3d6..bb12ce9b3 100644 --- a/src/Mobs/Chicken.h +++ b/src/Mobs/Chicken.h @@ -27,7 +27,7 @@ public: a_Items.Add(E_ITEM_SEEDS); } - virtual void HandleFalling(void) override; + virtual bool DoTakeDamage(TakeDamageInfo & a_TDI) override; private: diff --git a/src/Mobs/Ocelot.cpp b/src/Mobs/Ocelot.cpp index 50dd249c0..5e94cacb9 100644 --- a/src/Mobs/Ocelot.cpp +++ b/src/Mobs/Ocelot.cpp @@ -218,3 +218,13 @@ bool cOcelot::IsCatSittingOnBlock(cWorld * a_World, Vector3d a_BlockPosition) + +bool cOcelot::DoTakeDamage(TakeDamageInfo & a_TDI) +{ + if (a_TDI.DamageType == dtFalling) + { + return false; + } + + return super::DoTakeDamage(a_TDI); +} diff --git a/src/Mobs/Ocelot.h b/src/Mobs/Ocelot.h index 75758a973..b8efc60ee 100644 --- a/src/Mobs/Ocelot.h +++ b/src/Mobs/Ocelot.h @@ -35,6 +35,7 @@ public: { a_Items.Add(E_ITEM_RAW_FISH); } + virtual bool DoTakeDamage(TakeDamageInfo & a_TDI) override; // Get functions bool IsSitting (void) const override { return m_IsSitting; } |