diff options
author | Meji <alvaro.megias@outlook.com> | 2022-09-10 13:42:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-10 13:42:52 +0200 |
commit | f75f8d9bb8c0d764b8a7926476e7a16a3cfad713 (patch) | |
tree | e3d479610882b777055543080ec7844e53edc3d2 | |
parent | 1521a0d1312dff7599348f0d271b8605b034c127 (diff) |
Core/Unit: Update collision height calculation (#28239)
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 0bbc2a97578..8ca2c06c50a 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1670,7 +1670,7 @@ void Player::SetObjectScale(float scale) SetBoundingRadius(scale * DEFAULT_PLAYER_BOUNDING_RADIUS); SetCombatReach(scale * DEFAULT_PLAYER_COMBAT_REACH); if (IsInWorld()) - SendMovementSetCollisionHeight(scale * GetCollisionHeight(), WorldPackets::Movement::UpdateCollisionHeightReason::Scale); + SendMovementSetCollisionHeight(GetCollisionHeight(), WorldPackets::Movement::UpdateCollisionHeightReason::Scale); } bool Player::IsImmunedToSpellEffect(SpellInfo const* spellInfo, SpellEffectInfo const& spellEffectInfo, WorldObject const* caster, diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index a070acbdf3a..b3f5516583a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -13597,7 +13597,7 @@ float Unit::GetCollisionHeight() const { CreatureDisplayInfoEntry const* displayInfo = sCreatureDisplayInfoStore.AssertEntry(GetNativeDisplayId()); CreatureModelDataEntry const* modelData = sCreatureModelDataStore.AssertEntry(displayInfo->ModelID); - float const collisionHeight = scaleMod * (mountModelData->MountHeight + modelData->CollisionHeight * modelData->ModelScale * displayInfo->CreatureModelScale * 0.5f); + float const collisionHeight = scaleMod * ((mountModelData->MountHeight * mountDisplayInfo->CreatureModelScale) + (modelData->CollisionHeight * modelData->ModelScale * displayInfo->CreatureModelScale * 0.5f)); return collisionHeight == 0.0f ? DEFAULT_COLLISION_HEIGHT : collisionHeight; } } |