Core/Transports: undo all custom transport changes as preparation for cherry picks

This commit is contained in:
Ovahlord committed 2022-06-18 18:37:14 +02:00
1 parent 74c60fa456
commit 6e9ec1a4bf
46 files changed
+618 -1469

No files matched your search

+12 -23
View File
@@ -362,8 +362,6 @@ i_scriptLock(false), _respawnCheckTimer(0)
//lets initialize visibility distance for map
Map::InitVisibilityDistance();
GetGuidSequenceGenerator<HighGuid::Transport>().Set(sObjectMgr->GetGenerator<HighGuid::Transport>().GetNextAfterMaxUsed());
_weatherUpdateTimer.SetInterval(time_t(1 * IN_MILLISECONDS));
MMAP::MMapFactory::createOrGetMMapManager()->loadMapInstance(sWorld->GetDataPath(), GetId(), i_InstanceId);
@@ -549,7 +547,7 @@ void Map::DeleteFromWorld(Player* player)
}
template<>
void Map::DeleteFromWorld(MapTransport* transport)
void Map::DeleteFromWorld(Transport* transport)
{
ObjectAccessor::RemoveObject(transport);
delete transport;
@@ -763,7 +761,7 @@ bool Map::AddToMap(T* obj)
}
template<>
bool Map::AddToMap(MapTransport* obj)
bool Map::AddToMap(Transport* obj)
{
//TODO: Needs clean up. An object should not be added to map twice.
if (obj->IsInWorld())
@@ -784,7 +782,7 @@ bool Map::AddToMap(MapTransport* obj)
{
for (Map::PlayerList::const_iterator itr = GetPlayers().begin(); itr != GetPlayers().end(); ++itr)
{
if (itr->GetSource()->GetMapTransport() != obj)
if (itr->GetSource()->GetTransport() != obj)
{
UpdateData data(GetId());
obj->BuildCreateUpdateBlockForPlayer(&data, itr->GetSource());
@@ -1123,7 +1121,7 @@ void Map::RemoveFromMap(T *obj, bool remove)
}
template<>
void Map::RemoveFromMap(MapTransport* obj, bool remove)
void Map::RemoveFromMap(Transport* obj, bool remove)
{
obj->RemoveFromWorld();
@@ -1735,10 +1733,10 @@ void Map::UnloadAll()
for (TransportsContainer::iterator itr = _transports.begin(); itr != _transports.end();)
{
MapTransport* transport = *itr;
Transport* transport = *itr;
++itr;
RemoveFromMap<MapTransport>(transport, true);
RemoveFromMap<Transport>(transport, true);
}
for (auto& cellCorpsePair : _corpsesByCell)
@@ -2872,7 +2870,7 @@ void Map::SendInitSelf(Player* player)
player->BuildCreateUpdateBlockForPlayer(&data, player);
// build other passengers at transport also (they always visible and marked as visible and will not send at visibility update at add to map
if (MapTransport* transport = player->GetMapTransport())
if (Transport* transport = player->GetTransport())
for (WorldObject* passenger : transport->GetPassengers())
if (player != passenger && player->HaveAtClient(passenger))
passenger->BuildCreateUpdateBlockForPlayer(&data, player);
@@ -2888,7 +2886,7 @@ void Map::SendInitTransports(Player* player)
UpdateData transData(player->GetMapId());
for (Transport* transport : _transports)
{
if (transport != player->GetMapTransport() && player->IsInPhase(transport))
if (transport != player->GetTransport() && player->IsInPhase(transport))
{
transport->BuildCreateUpdateBlockForPlayer(&transData, player);
player->m_visibleTransports.insert(transport->GetGUID());
@@ -2906,7 +2904,7 @@ void Map::SendRemoveTransports(Player* player)
UpdateData transData(player->GetMapId());
for (Transport* transport : _transports)
{
if (transport != player->GetMapTransport())
if (transport != player->GetTransport())
{
transport->BuildOutOfRangeUpdateBlock(&transData);
player->m_visibleTransports.erase(transport->GetGUID());
@@ -3459,7 +3457,7 @@ void Map::DelayedUpdate(uint32 t_diff)
{
for (_transportsUpdateIter = _transports.begin(); _transportsUpdateIter != _transports.end();)
{
MapTransport* transport = *_transportsUpdateIter;
Transport* transport = *_transportsUpdateIter;
++_transportsUpdateIter;
if (!transport->IsInWorld())
@@ -3564,7 +3562,7 @@ void Map::RemoveAllObjectsInRemoveList()
case TYPEID_GAMEOBJECT:
{
GameObject* go = obj->ToGameObject();
if (MapTransport* transport = go->ToMapTransport())
if (Transport* transport = go->ToTransport())
RemoveFromMap(transport, true);
else
RemoveFromMap(go, true);
@@ -4340,22 +4338,13 @@ Pet* Map::GetPet(ObjectGuid const& guid)
Transport* Map::GetTransport(ObjectGuid const& guid)
{
if (!guid.IsTransport())
if (!guid.IsMOTransport())
return nullptr;
GameObject* go = GetGameObject(guid);
return go ? go->ToTransport() : nullptr;
}
MapTransport* Map::GetMapTransport(ObjectGuid const& guid)
{
if (!guid.IsTransport())
return nullptr;
GameObject* go = GetGameObject(guid);
return go ? go->ToMapTransport() : nullptr;
}
void Map::UpdateIteratorBack(Player* player)
{
if (m_mapRefIter == player->GetMapRef())