diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 19086e9eef..5edc4a598f 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -1139,7 +1139,8 @@ Unit* Creature::SelectVictim() bool Creature::SetDisableGravity(bool disable, bool packetOnly /*= false*/, bool updateAnimationTier /*= true*/) { - Unit::SetDisableGravity(disable, packetOnly, updateAnimationTier); + if (!Unit::SetDisableGravity(disable, packetOnly, updateAnimationTier)) + return false; if (updateAnimationTier && IsAlive() && !HasUnitState(UNIT_STATE_ROOT) && !GetMovementTemplate().IsRooted()) { @@ -1156,7 +1157,8 @@ bool Creature::SetDisableGravity(bool disable, bool packetOnly /*= false*/, bool bool Creature::SetHover(bool enable, bool packetOnly /*= false*/, bool updateAnimationTier /*= true*/) { - Unit::SetHover(enable, packetOnly, updateAnimationTier); + if (!Unit::SetHover(enable, packetOnly, updateAnimationTier)) + return false; if (updateAnimationTier && IsAlive() && !HasUnitState(UNIT_STATE_ROOT) && !GetMovementTemplate().IsRooted()) { diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 612cc098d6..3d18506bfd 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -10954,7 +10954,7 @@ bool Unit::IsPolymorphed() const void Unit::SetAnimationTier(AnimationTier tier, bool immediate /* = true */) { - if (!IsCreature()) + if (!IsCreature() || tier == GetAnimationTier()) return; SetByteValue(UNIT_FIELD_BYTES_1, UNIT_BYTES_1_OFFSET_ANIM_TIER, static_cast(tier));