aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Unit
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-10-14 13:11:41 +0200
committerShauren <shauren.trinity@gmail.com>2025-10-14 13:11:41 +0200
commita8f01e07d111ea14cbe843d82fbfce19f63faa12 (patch)
tree2aca52b9b4dfa9723ec170e672e2a4ddb7481178 /src/server/game/Entities/Unit
parentd48e97731538b01c4005cd7c73653a0f33015098 (diff)
Core/Entities: Merge duplicate functions calculating relative positions - remove CalculatePassengerPosition/CalculatePassengerOffset from TransportBase class
Diffstat (limited to 'src/server/game/Entities/Unit')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index a24c32d8d74..03205c45f78 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -618,7 +618,7 @@ void Unit::UpdateSplinePosition()
pos.SetOrientation(loc.orientation);
if (TransportBase* transport = GetDirectTransport())
- transport->CalculatePassengerPosition(loc.x, loc.y, loc.z, &loc.orientation);
+ transport->GetPositionWithOffset(pos).GetPosition(loc.x, loc.y, loc.z, loc.orientation);
else
return;
}
@@ -12852,10 +12852,7 @@ void Unit::SendTeleportPacket(TeleportLocation const& teleportLocation)
if (!transport)
return;
- float x, y, z, o;
- teleportLocation.Location.GetPosition(x, y, z, o);
- transport->CalculatePassengerPosition(x, y, z, &o);
- moveUpdateTeleport.Status->pos.Relocate(x, y, z, o);
+ moveUpdateTeleport.Status->pos.Relocate(transport->GetPositionWithOffset(teleportLocation.Location));
moveUpdateTeleport.Status->transport.pos.Relocate(teleportLocation.Location);
}
else
@@ -13078,7 +13075,7 @@ void CharmInfo::SaveStayPosition()
if (_unit->movespline->onTransport)
if (TransportBase* transport = _unit->GetDirectTransport())
- transport->CalculatePassengerPosition(stayPos.x, stayPos.y, stayPos.z);
+ transport->GetPositionWithOffset({ stayPos.x, stayPos.y, stayPos.z }).GetPosition(stayPos.x, stayPos.y, stayPos.z);
_stayX = stayPos.x;
_stayY = stayPos.y;