diff options
author | Mattes D <github@xoft.cz> | 2014-04-28 20:58:15 +0200 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-04-28 20:58:15 +0200 |
commit | 709015369df050d3d5b1d12b7d74ae814cd046df (patch) | |
tree | 106568e25f564d0e0e414269a8fbb28ed3f1507e /src/Entities/Player.cpp | |
parent | Fixed braces. (diff) | |
parent | Revert "Withers now use the new invulnerable." (diff) | |
download | cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar.gz cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar.bz2 cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar.lz cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar.xz cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.tar.zst cuberite-709015369df050d3d5b1d12b7d74ae814cd046df.zip |
Diffstat (limited to 'src/Entities/Player.cpp')
-rw-r--r-- | src/Entities/Player.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/Entities/Player.cpp b/src/Entities/Player.cpp index fedb62527..08b7d3984 100644 --- a/src/Entities/Player.cpp +++ b/src/Entities/Player.cpp @@ -808,14 +808,14 @@ void cPlayer::SetFlying(bool a_IsFlying) -void cPlayer::DoTakeDamage(TakeDamageInfo & a_TDI) +bool cPlayer::DoTakeDamage(TakeDamageInfo & a_TDI) { if ((a_TDI.DamageType != dtInVoid) && (a_TDI.DamageType != dtPlugin)) { if (IsGameModeCreative()) { // No damage / health in creative mode if not void or plugin damage - return; + return false; } } @@ -828,17 +828,19 @@ void cPlayer::DoTakeDamage(TakeDamageInfo & a_TDI) if (!m_Team->AllowsFriendlyFire()) { // Friendly fire is disabled - return; + return false; } } } - super::DoTakeDamage(a_TDI); - - // Any kind of damage adds food exhaustion - AddFoodExhaustion(0.3f); - - SendHealth(); + if (super::DoTakeDamage(a_TDI)) + { + // Any kind of damage adds food exhaustion + AddFoodExhaustion(0.3f); + SendHealth(); + return true; + } + return false; } @@ -897,6 +899,7 @@ void cPlayer::KilledBy(cEntity * a_Killer) void cPlayer::Respawn(void) { m_Health = GetMaxHealth(); + SetInvulnerableTicks(20); // Reset food level: m_FoodLevel = MAX_FOOD_LEVEL; |