![]() |
TrinityCore
|
#include <TransportMgr.h>
Public Member Functions | |
| TransportMgr (TransportMgr const &)=delete | |
| TransportMgr (TransportMgr &&)=delete | |
| TransportMgr & | operator= (TransportMgr const &)=delete |
| TransportMgr & | operator= (TransportMgr &&)=delete |
| void | Unload () |
| void | LoadTransportTemplates () |
| void | LoadTransportAnimationAndRotation () |
| void | LoadTransportSpawns () |
| Transport * | CreateTransport (uint32 entry, Map *map, ObjectGuid::LowType guid=0, uint8 phaseUseFlags=0, uint32 phaseId=0, uint32 phaseGroupId=0) |
| void | CreateTransportsForMap (Map *map) |
| TransportTemplate const * | GetTransportTemplate (uint32 entry) const |
| TransportAnimation const * | GetTransportAnimInfo (uint32 entry) const |
| TransportSpawn const * | GetTransportSpawn (ObjectGuid::LowType spawnId) const |
Static Public Member Functions | |
| static TransportMgr * | instance () |
Private Member Functions | |
| TransportMgr () | |
| ~TransportMgr () | |
| void | GeneratePath (GameObjectTemplate const *goInfo, TransportTemplate *transport) |
| void | AddPathNodeToTransport (uint32 transportEntry, uint32 timeSeg, TransportAnimationEntry const *node) |
| void | AddPathRotationToTransport (uint32 transportEntry, uint32 timeSeg, TransportRotationEntry const *node) |
Private Attributes | |
| std::unordered_map< uint32, TransportTemplate > | _transportTemplates |
| std::unordered_map< uint32, std::set< TransportSpawn * > > | _transportsByMap |
| std::map< uint32, TransportAnimation > | _transportAnimations |
| std::unordered_map< ObjectGuid::LowType, TransportSpawn > | _transportSpawns |
Definition at line 138 of file TransportMgr.h.
|
delete |
|
delete |
|
privatedefault |
|
privatedefault |
|
private |
Definition at line 543 of file TransportMgr.cpp.
References _transportAnimations, TransportAnimation::Path, and TransportAnimation::TotalTime.
Referenced by LoadTransportAnimationAndRotation().
|
private |
Definition at line 552 of file TransportMgr.cpp.
References _transportAnimations, TransportAnimation::Path, TransportAnimation::Rotations, and TransportAnimation::TotalTime.
Referenced by LoadTransportAnimationAndRotation().
| Transport * TransportMgr::CreateTransport | ( | uint32 | entry, |
| Map * | map, | ||
| ObjectGuid::LowType | guid = 0, |
||
| uint8 | phaseUseFlags = 0, |
||
| uint32 | phaseId = 0, |
||
| uint32 | phaseGroupId = 0 |
||
| ) |
Definition at line 561 of file TransportMgr.cpp.
References Map::AddToMap(), TransportTemplate::ComputePosition(), Transport::Create(), Map::GenerateLowGuid(), Map::GetId(), WorldObject::GetPhaseShift(), GetTransportTemplate(), PhasingHandler::InitDbPhaseShift(), instance(), WorldObject::m_zoneScript, TransportTemplate::MapIds, WorldObject::SetMap(), TC_LOG_ERROR, Map::ToInstanceMap(), and Transport.
Referenced by CreateTransportsForMap().
| void TransportMgr::CreateTransportsForMap | ( | Map * | map | ) |
Definition at line 620 of file TransportMgr.cpp.
References _transportsByMap, CreateTransport(), and Map::GetId().
|
private |
Definition at line 489 of file TransportMgr.cpp.
References TransportTemplate::AccelerationDistance, TransportTemplate::AccelerationRate, TransportTemplate::AccelerationTime, GameObjectTemplate::accelRate, ASSERT, TransportTemplate::Events, InitializeLeg(), TransportPathLeg::MapId, TransportTemplate::MapIds, GameObjectTemplate::moTransport, GameObjectTemplate::moveSpeed, TransportTemplate::PathLegs, sMapStore, TransportTemplate::Speed, TransportPathLeg::Spline, sTaxiPathNodesByPath, TAXI_PATH_NODE_FLAG_STOP, TAXI_PATH_NODE_FLAG_TELEPORT, GameObjectTemplate::taxiPathID, and TransportTemplate::TotalPathTime.
Referenced by LoadTransportTemplates().
| TransportAnimation const * TransportMgr::GetTransportAnimInfo | ( | uint32 | entry | ) | const |
Definition at line 638 of file TransportMgr.cpp.
References _transportAnimations, and Trinity::Containers::MapGetValuePtr().
| TransportSpawn const * TransportMgr::GetTransportSpawn | ( | ObjectGuid::LowType | spawnId | ) | const |
Definition at line 643 of file TransportMgr.cpp.
References _transportSpawns, and Trinity::Containers::MapGetValuePtr().
| TransportTemplate const * TransportMgr::GetTransportTemplate | ( | uint32 | entry | ) | const |
Definition at line 633 of file TransportMgr.cpp.
References _transportTemplates, and Trinity::Containers::MapGetValuePtr().
Referenced by CreateTransport(), and LoadTransportSpawns().
|
static |
Definition at line 183 of file TransportMgr.cpp.
Referenced by CreateTransport().
| void TransportMgr::LoadTransportAnimationAndRotation | ( | ) |
Definition at line 239 of file TransportMgr.cpp.
References AddPathNodeToTransport(), AddPathRotationToTransport(), sTransportAnimationStore, and sTransportRotationStore.
| void TransportMgr::LoadTransportSpawns | ( | ) |
Definition at line 248 of file TransportMgr.cpp.
References _transportsByMap, _transportSpawns, _transportTemplates, getMSTime(), GetMSTimeDiffToNow(), GetTransportTemplate(), Field::GetUInt32(), Field::GetUInt64(), Field::GetUInt8(), TransportTemplate::MapIds, PHASE_USE_FLAGS_ALL, PHASE_USE_FLAGS_ALWAYS_VISIBLE, PHASE_USE_FLAGS_INVERSE, TransportSpawn::PhaseGroup, TransportSpawn::PhaseId, TransportSpawn::PhaseUseFlags, sDB2Manager, TransportSpawn::SpawnId, sPhaseStore, TC_LOG_ERROR, TC_LOG_INFO, TransportSpawn::TransportGameObjectId, and WorldDatabase.
| void TransportMgr::LoadTransportTemplates | ( | ) |
Definition at line 194 of file TransportMgr.cpp.
References _transportTemplates, GeneratePath(), getMSTime(), GetMSTimeDiffToNow(), Field::GetUInt32(), GameObjectTemplate::moTransport, GameObjectTemplate::name, sObjectMgr, sTaxiPathNodesByPath, GameObjectTemplate::taxiPathID, TC_LOG_ERROR, TC_LOG_INFO, and WorldDatabase.
|
delete |
|
delete |
| void TransportMgr::Unload | ( | ) |
Definition at line 189 of file TransportMgr.cpp.
References _transportTemplates.
|
private |
Definition at line 185 of file TransportMgr.h.
Referenced by AddPathNodeToTransport(), AddPathRotationToTransport(), and GetTransportAnimInfo().
|
private |
Definition at line 183 of file TransportMgr.h.
Referenced by CreateTransportsForMap(), and LoadTransportSpawns().
|
private |
Definition at line 187 of file TransportMgr.h.
Referenced by GetTransportSpawn(), and LoadTransportSpawns().
|
private |
Definition at line 180 of file TransportMgr.h.
Referenced by GetTransportTemplate(), LoadTransportSpawns(), LoadTransportTemplates(), and Unload().