Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
Transport Class Reference

#include <Transport.h>

Inheritance diagram for Transport:
Collaboration diagram for Transport:

Public Member Functions

void AddPassenger (WorldObject *passenger)
void BuildUpdate (UpdateDataMapType &data_map)
void CalculatePassengerOffset (float &x, float &y, float &z, float *o) const
 This method transforms supplied global coordinates into local offsets.
void CalculatePassengerPosition (float &x, float &y, float &z, float *o) const
 This method transforms supplied transport offsets into global coordinates.
bool Create (uint32 guidlow, uint32 entry, uint32 mapid, float x, float y, float z, float ang, uint32 animprogress)
GameObjectCreateGOPassenger (uint32 guid, GameObjectData const *data)
bool CreateLocal (uint32 guidlow, uint32 entry, Map *map, float x, float y, float z, float ang, float rotation0, float rotation1, float rotation2, float rotation3, uint32 animprogress)
CreatureCreateNPCPassenger (uint32 guid, CreatureData const *data)
void EnableMovement (bool enabled)
KeyFrameVec const & GetKeyFrames () const
std::set< WorldObject * > const & GetPassengers () const
uint32 GetPeriod () const
uint32 GetTimer () const
TransportTemplate const * GetTransportTemplate () const
void LoadStaticPassengers ()
 Needed when transport moves from inactive to active grid.
void RemovePassenger (WorldObject *passenger)
void SetPeriod (uint32 period)
void UnloadStaticPassengers ()
 Needed when transport enters inactive grid.
void Update (uint32 diff)
void UpdatePosition (float x, float y, float z, float o)
 ~Transport ()
Public Member Functions inherited from GameObject
bool ActivateToQuest (Player *target) const
void AddLootMode (uint16 lootMode)
void AddToSkillupList (uint32 PlayerGuidLow)
void AddToWorld () OVERRIDE
void AddUniqueUse (Player *player)
void AddUse ()
GameObjectAIAI () const
void BuildValuesUpdate (uint8 updatetype, ByteBuffer *data, Player *target) const OVERRIDE
void CastSpell (Unit *target, uint32 spell)
void CleanupsBeforeDelete (bool finalCleanup=true) OVERRIDE
void ClearSkillupList ()
bool Create (uint32 guidlow, uint32 name_id, Map *map, float x, float y, float z, float ang, float rotation0, float rotation1, float rotation2, float rotation3, uint32 animprogress, GOState go_state, uint32 artKit=0)
void Delete ()
void DeleteFromDB ()
void EnableCollision (bool enable)
void EventInform (uint32 eventId)
 GameObject ()
std::string GetAIName () const
uint32 GetDBTableGUIDLow () const
GameObjectDestructibleState GetDestructibleState () const
uint32 GetDisplayId () const
void getFishLoot (Loot *loot, Player *loot_owner)
uint8 GetGoAnimProgress () const
uint8 GetGoArtKit () const
GameObjectData const * GetGOData () const
GameObjectTemplate const * GetGOInfo () const
GOState GetGoState () const
uint32 GetGOStateValue (GOState state)
GameobjectTypes GetGoType () const
GameObjectValue const * GetGOValue () const
uint8 getLevelForTarget (WorldObject const *target) const OVERRIDE
uint16 GetLootMode () const
PlayerGetLootRecipient () const
GroupGetLootRecipientGroup () const
LootState getLootState () const
std::string const & GetNameForLocaleIdx (LocaleConstant locale_idx) const OVERRIDE
UnitGetOwner () const
uint64 GetOwnerGUID () const
std::vector< uint32 > const * GetPauseTimes () const
uint32 GetRespawnDelay () const
void GetRespawnPosition (float &x, float &y, float &z, float *ori=NULL) const
time_t GetRespawnTime () const
time_t GetRespawnTimeEx () const
uint64 GetRotation () const
virtual uint32 GetScriptId () const
uint32 GetSpellId () const
float GetStationaryO () const OVERRIDE
float GetStationaryX () const OVERRIDE
float GetStationaryY () const OVERRIDE
float GetStationaryZ () const OVERRIDE
uint32 GetTransportPathProgress () const
uint32 GetTransportPeriod () const
uint32 GetUniqueUseCount () const
uint32 GetUseCount () const
bool hasInvolvedQuest (uint32 quest_id) const OVERRIDE
bool HasLootMode (uint16 lootMode) const
bool HasLootRecipient () const
bool hasQuest (uint32 quest_id) const OVERRIDE
bool IsAlwaysVisibleFor (WorldObject const *seer) const OVERRIDE
bool IsDestructibleBuilding () const
bool IsDynTransport () const
bool IsInRange (float x, float y, float z, float radius) const
bool IsInSkillupList (uint32 PlayerGuidLow) const
bool IsInvisibleDueToDespawn () const OVERRIDE
bool IsLootAllowedFor (Player const *player) const
bool isSpawned () const
bool isSpawnedByDefault () const
bool IsTransport () const
bool LoadFromDB (uint32 guid, Map *map)
bool LoadGameObjectFromDB (uint32 guid, Map *map, bool addToMap=true)
GameObjectLookupFishingHoleAround (float range)
void ModifyHealth (int32 change, Unit *attackerOrHealer=NULL, uint32 spellId=0)
void Refresh ()
void RemoveFromWorld () OVERRIDE
void RemoveLootMode (uint16 lootMode)
void ResetDoorOrButton ()
void ResetLootMode ()
void Respawn ()
void SaveRespawnTime () OVERRIDE
void SaveToDB ()
void SaveToDB (uint32 mapid, uint32 spawnMask)
void SendCustomAnim (uint32 anim)
void SetDestructibleState (GameObjectDestructibleState state, Player *eventInvoker=NULL, bool setHealth=false)
void SetDisplayId (uint32 displayid)
void SetGameobjectTransparence (uint8 transparency)
void SetGoAnimProgress (uint8 animprogress)
void SetGoArtKit (uint8 artkit)
void SetGoHealth (uint8 health)
void SetGoState (GOState state)
void SetGoType (GameobjectTypes type)
void SetLegacyTransportTravelTime (uint32 travelTime)
void SetLootMode (uint16 lootMode)
void SetLootRecipient (Unit *unit)
void SetLootState (LootState s, Unit *unit=NULL)
void SetOwnerGUID (uint64 owner)
bool SetPhased (uint32 id, bool update, bool apply) OVERRIDE
void SetPhaseMask (uint32 newPhaseMask, bool update) OVERRIDE
void SetRespawnTime (int32 respawn)
void SetSpawnedByDefault (bool b)
void SetSpellId (uint32 id)
void SetTransportPathProgress (uint32 pathProgress)
void StartLegacyTransportToFirstStop (uint32 travelTime)
void StopLegacyTransportAtCurrentProgress ()
void StopLegacyTransportAtInitialStop ()
TransportToTransport ()
Transport const * ToTransport () const
void TriggeringLinkedGameObject (uint32 trapEntry, Unit *target)
void UpdateModelPosition ()
void UpdateRotationFields (float rotation2=0.0f, float rotation3=0.0f)
void UpdateWorldRotationField ()
void Use (Unit *user)
void UseDoorOrButton (uint32 time_to_restore=0, bool alternative=false, Unit *user=NULL)
 ~GameObject ()
Public Member Functions inherited from WorldObject
void _Create (uint32 guidlow, HighGuid guidhigh, uint32 phaseMask)
void AddObjectToRemoveList ()
void AddToNotify (uint16 f)
void BuildUpdate (UpdateDataMapType &)
bool CanSeeOrDetect (WorldObject const *obj, bool ignoreStealth=false, bool distanceCheck=false) const
void ClearPhases (bool update=false)
void DestroyForNearbyPlayers ()
MapFindMap () const
CreatureFindNearestCreature (uint32 entry, float range, bool alive=true) const
GameObjectFindNearestGameObject (uint32 entry, float range) const
GameObjectFindNearestGameObjectOfType (GameobjectTypes type, float range) const
uint32 GetAreaId () const
Map const * GetBaseMap () const
void GetClosePoint (float &x, float &y, float &z, float size, float distance2d=0, float angle=0) const
void GetContactPoint (WorldObject const *obj, float &x, float &y, float &z, float distance2d=CONTACT_DISTANCE) const
void GetCreatureListWithEntryInGrid (std::list< Creature * > &lList, uint32 uiEntry, float fMaxSearchRange) const
float GetDistance (float x, float y, float z) const
float GetDistance (Position const &pos) const
float GetDistance (WorldObject const *obj) const
float GetDistance2d (float x, float y) const
float GetDistance2d (WorldObject const *obj) const
bool GetDistanceOrder (WorldObject const *obj1, WorldObject const *obj2, bool is3D=true) const
float GetDistanceZ (WorldObject const *obj) const
void GetFirstCollisionPosition (Position &pos, float dist, float angle)
void GetGameObjectListWithEntryInGrid (std::list< GameObject * > &lList, uint32 uiEntry, float fMaxSearchRange) const
float GetGridActivationRange () const
uint32 GetInstanceId () const
InstanceScriptGetInstanceScript ()
MapGetMap () const
std::string const & GetName () const
void GetNearPoint (WorldObject const *searcher, float &x, float &y, float &z, float searcher_size, float distance2d, float absAngle) const
void GetNearPoint2D (float &x, float &y, float distance, float absAngle) const
void GetNearPosition (Position &pos, float dist, float angle)
uint16 GetNotifyFlags () const
float GetObjectSize () const
uint32 GetPhaseMask () const
std::set< uint32 > const & GetPhases () const
void GetPlayerListInGrid (std::list< Player * > &lList, float fMaxSearchRange) const
void GetRandomNearPosition (Position &pos, float radius)
void GetRandomPoint (Position const &srcPos, float distance, float &rand_x, float &rand_y, float &rand_z) const
void GetRandomPoint (Position const &srcPos, float distance, Position &pos) const
float GetSightRange (WorldObject const *target=NULL) const
std::set< uint32 > const & GetTerrainSwaps () const
virtual uint64 GetTransGUID () const
float GetTransOffsetO () const
float GetTransOffsetX () const
float GetTransOffsetY () const
float GetTransOffsetZ () const
TransportGetTransport () const
int8 GetTransSeat () const
uint32 GetTransTime () const
float GetVisibilityRange () const
std::set< uint32 > const & GetWorldMapSwaps () const
void GetZoneAndAreaId (uint32 &zoneid, uint32 &areaid) const
uint32 GetZoneId () const
ZoneScriptGetZoneScript () const
bool HasPhaseList (uint32 phase)
bool InSamePhase (uint32 phasemask) const
bool InSamePhase (WorldObject const *obj) const
bool isActiveObject () const
bool isInBack (WorldObject const *target, float arc=M_PI) const
bool IsInBetween (WorldObject const *obj1, WorldObject const *obj2, float size=0) const
bool isInFront (WorldObject const *target, float arc=M_PI) const
bool IsInMap (WorldObject const *obj) const
bool IsInRange (WorldObject const *obj, float minRange, float maxRange, bool is3D=true) const
bool IsInRange2d (float x, float y, float minRange, float maxRange) const
bool IsInRange3d (float x, float y, float z, float minRange, float maxRange) const
bool isNeedNotify (uint16 f) const
bool IsPermanentWorldObject () const
bool IsPhased (uint32 phase) const
bool IsPhased (WorldObject const *obj) const
bool IsSelfOrInSameMap (WorldObject const *obj) const
bool IsTerrainSwaped (uint32 terrainSwap) const
bool IsWithinDist (WorldObject const *obj, float dist2compare, bool is3D=true) const
bool IsWithinDist2d (float x, float y, float dist) const
bool IsWithinDist2d (Position const *pos, float dist) const
bool IsWithinDist3d (float x, float y, float z, float dist) const
bool IsWithinDist3d (Position const *pos, float dist) const
bool IsWithinDistInMap (WorldObject const *obj, float dist2compare, bool is3D=true) const
bool IsWithinLOS (float x, float y, float z) const
bool IsWithinLOSInMap (WorldObject const *obj) const
bool IsWorldObject () const
void MonsterSay (const char *text, Language language, WorldObject const *target)
void MonsterSay (int32 textId, Language language, WorldObject const *target)
void MonsterTextEmote (const char *text, WorldObject const *target, bool IsBossEmote=false)
void MonsterTextEmote (int32 textId, WorldObject const *target, bool IsBossEmote=false)
void MonsterWhisper (const char *text, Player const *target, bool IsBossWhisper=false)
void MonsterWhisper (int32 textId, Player const *target, bool IsBossWhisper=false)
void MonsterYell (const char *text, Language language, WorldObject const *target)
void MonsterYell (int32 textId, Language language, WorldObject const *target)
void MovePosition (Position &pos, float dist, float angle)
void MovePositionToFirstCollision (Position &pos, float dist, float angle)
bool NotifyExecuted (uint16 f) const
void PlayDirectSound (uint32 sound_id, Player *target=NULL)
void PlayDistanceSound (uint32 sound_id, Player *target)
void RebuildTerrainSwaps ()
void RebuildWorldMapAreaSwaps ()
void ResetAllNotifies ()
virtual void ResetMap ()
virtual void SendMessageToSet (WorldPacket *data, bool self)
virtual void SendMessageToSet (WorldPacket *data, Player const *skipped_rcvr)
virtual void SendMessageToSetInRange (WorldPacket *data, float dist, bool self)
void SendObjectDeSpawnAnim (uint64 guid)
void SendPlaySound (uint32 SoundSound, bool OnlySelf)
void setActive (bool isActiveObject)
virtual void SetMap (Map *map)
void SetName (std::string const &newname)
void SetNotified (uint16 f)
void SetTransport (Transport *t)
void SetWorldObject (bool apply)
void SetZoneScript ()
TempSummonSummonCreature (uint32 id, float x, float y, float z, float ang=0, TempSummonType spwtype=TempSummonType::TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0) const
TempSummonSummonCreature (uint32 id, Position const &pos, TempSummonType spwtype=TempSummonType::TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0, uint32 vehId=0) const
void SummonCreatureGroup (uint8 group, std::list< TempSummon * > *list=NULL)
GameObjectSummonGameObject (uint32 entry, float x, float y, float z, float ang, float rotation0, float rotation1, float rotation2, float rotation3, uint32 respawnTime)
CreatureSummonTrigger (float x, float y, float z, float ang, uint32 dur, CreatureAI *(*GetAI)(Creature *)=NULL)
void UpdateAllowedPositionZ (float x, float y, float &z) const
void UpdateAreaPhase ()
void UpdateGroundPositionZ (float x, float y, float &z) const
virtual void UpdateObjectVisibility (bool forced=true)
template<class NOTIFIER>
void VisitNearbyGridObject (float const &radius, NOTIFIER &notifier) const
template<class NOTIFIER>
void VisitNearbyObject (float const &radius, NOTIFIER &notifier) const
template<class NOTIFIER>
void VisitNearbyWorldObject (float const &radius, NOTIFIER &notifier) const
virtual ~WorldObject ()
Public Member Functions inherited from Object
bool AddUInt64Value (uint16 index, uint64 value)
void ApplyModFlag (uint16 index, uint32 flag, bool apply)
void ApplyModFlag64 (uint16 index, uint64 flag, bool apply)
void ApplyModInt32Value (uint16 index, int32 val, bool apply)
void ApplyModPositiveFloatValue (uint16 index, float val, bool apply)
void ApplyModSignedFloatValue (uint16 index, float val, bool apply)
void ApplyModUInt32Value (uint16 index, int32 val, bool apply)
void ApplyPercentModFloatValue (uint16 index, float val, bool apply)
virtual void BuildCreateUpdateBlockForPlayer (UpdateData *data, Player *target) const
void BuildFieldsUpdate (Player *, UpdateDataMapType &) const
void BuildOutOfRangeUpdateBlock (UpdateData *data) const
void BuildValuesUpdateBlockForPlayer (UpdateData *data, Player *target) const
void ClearUpdateMask (bool remove)
virtual void DestroyForPlayer (Player *target, bool onDeath=false) const
void ForceValuesUpdateAtIndex (uint32)
uint8 GetByteValue (uint16 index, uint8 offset) const
uint32 GetDynamicUInt32Value (uint32 tab, uint16 index) const
uint32 GetEntry () const
float GetFloatValue (uint16 index) const
uint64 GetGUID () const
uint32 GetGUIDHigh () const
uint32 GetGUIDLow () const
uint32 GetGUIDMid () const
int32 GetInt32Value (uint16 index) const
ObjectGuid GetObjectGUID () const
float GetObjectScale () const
const ByteBufferGetPackGUID () const
TypeID GetTypeId () const
uint16 GetUInt16Value (uint16 index, uint8 offset) const
uint32 GetUInt32Value (uint16 index) const
uint64 GetUInt64Value (uint16 index) const
uint16 GetValuesCount () const
bool HasByteFlag (uint16 index, uint8 offset, uint8 flag) const
bool HasFlag (uint16 index, uint32 flag) const
bool HasFlag64 (uint16 index, uint64 flag) const
bool IsInWorld () const
bool isType (uint16 mask) const
void RemoveByteFlag (uint16 index, uint8 offset, uint8 newFlag)
void RemoveFieldNotifyFlag (uint16 flag)
void RemoveFlag (uint16 index, uint32 oldFlag)
void RemoveFlag64 (uint16 index, uint64 oldFlag)
bool RemoveUInt64Value (uint16 index, uint64 value)
void SendDestroyObject (Player *target, ObjectGuid Guid, bool onDeath=false) const
void SendUpdateToPlayer (Player *player)
void SetByteFlag (uint16 index, uint8 offset, uint8 newFlag)
void SetByteValue (uint16 index, uint8 offset, uint8 value)
void SetDynamicUInt32Value (uint32 tab, uint16 index, uint32 value)
void SetEntry (uint32 entry)
void SetFieldNotifyFlag (uint16 flag)
void SetFlag (uint16 index, uint32 newFlag)
void SetFlag64 (uint16 index, uint64 newFlag)
void SetFloatValue (uint16 index, float value)
void SetInt16Value (uint16 index, uint8 offset, int16 value)
void SetInt32Value (uint16 index, int32 value)
virtual void SetObjectScale (float scale)
void SetStatFloatValue (uint16 index, float value)
void SetStatInt32Value (uint16 index, int32 value)
void SetUInt16Value (uint16 index, uint8 offset, uint16 value)
void SetUInt32Value (uint16 index, uint32 value)
void SetUInt64Value (uint16 index, uint64 value)
AreaTriggerToAreaTrigger ()
AreaTrigger const * ToAreaTrigger () const
CorpseToCorpse ()
Corpse const * ToCorpse () const
CreatureToCreature ()
Creature const * ToCreature () const
DynamicObjectToDynObject ()
DynamicObject const * ToDynObject () const
GameObjectToGameObject ()
GameObject const * ToGameObject () const
void ToggleByteFlag (uint16 index, uint8 offset, uint8 flag)
void ToggleFlag (uint16 index, uint32 flag)
void ToggleFlag64 (uint16 index, uint64 flag)
PlayerToPlayer ()
Player const * ToPlayer () const
UnitToUnit ()
Unit const * ToUnit () const
void UpdateUInt32Value (uint16 index, uint32 value)
virtual ~Object ()
Public Member Functions inherited from WorldLocation
uint32 GetMapId () const
 WorldLocation (const WorldLocation &loc)
 WorldLocation (uint32 _mapid=MAPID_INVALID, float _x=0, float _y=0, float _z=0, float _o=0)
void WorldRelocate (const WorldLocation &loc)
Public Member Functions inherited from Position
float GetAngle (float x, float y) const
float GetAngle (Position const *pos) const
float GetExactDist (float x, float y, float z) const
float GetExactDist (Position const *pos) const
float GetExactDist2d (const float x, const float y) const
float GetExactDist2d (Position const *pos) const
float GetExactDist2dSq (float x, float y) const
float GetExactDist2dSq (Position const *pos) const
float GetExactDistSq (float x, float y, float z) const
float GetExactDistSq (Position const *pos) const
float GetOrientation () const
void GetPosition (float &x, float &y) const
void GetPosition (float &x, float &y, float &z) const
void GetPosition (float &x, float &y, float &z, float &o) const
void GetPosition (Position *pos) const
void GetPositionOffsetTo (Position const &endPos, Position &retOffset) const
float GetPositionX () const
float GetPositionY () const
float GetPositionZ () const
float GetRelativeAngle (float x, float y) const
float GetRelativeAngle (Position const *pos) const
void GetSinCos (float x, float y, float &vsin, float &vcos) const
bool HasInArc (float arcangle, Position const *pos, float border=2.0f) const
bool HasInLine (WorldObject const *target, float width) const
bool IsInDist (float x, float y, float z, float dist) const
bool IsInDist (Position const *pos, float dist) const
bool IsInDist2d (float x, float y, float dist) const
bool IsInDist2d (Position const *pos, float dist) const
bool IsPositionValid () const
bool operator!= (Position const &a)
bool operator== (Position const &a)
Position::PositionXYZOStreamer PositionXYZOStream ()
Position::PositionXYZStreamer PositionXYZStream ()
void Relocate (float x, float y)
void Relocate (float x, float y, float z)
void Relocate (float x, float y, float z, float orientation)
void Relocate (Position const &pos)
void Relocate (Position const *pos)
void RelocateOffset (Position const &offset)
void SetOrientation (float orientation)
std::string ToString () const
Public Member Functions inherited from GridObject< GameObject >
void AddToGrid (GridRefManager< GameObject > &m)
bool IsInGrid () const
void RemoveFromGrid ()
virtual ~GridObject ()

Private Member Functions

float CalculateSegmentPos (float perc)
void DoEventIfAny (KeyFrame const &node, bool departure)
bool IsMoving () const
 Helpers to know if stop frame was reached.
void MoveToNextWaypoint ()
void SetMoving (bool val)
bool TeleportTransport (uint32 newMapid, float x, float y, float z)
 Transport ()
void UpdatePassengerPositions (std::set< WorldObject * > &passengers)

Private Attributes

KeyFrameVec::const_iterator _currentFrame
bool _isMoving
KeyFrameVec::const_iterator _nextFrame
std::set< WorldObject * > _passengers
bool _pendingStop
TimeTrackerSmall _positionChangeTimer
std::set< WorldObject * > _staticPassengers
TransportTemplate const * _transportInfo
bool _triggeredArrivalEvent
 These are needed to properly control events triggering only once for each frame.
bool _triggeredDepartureEvent

Friends

TransportTransportMgr::CreateLocalTransport (uint32, Map *)
TransportTransportMgr::CreateLocalTransport (uint32, Map *, float, float, float, float, uint32)
TransportTransportMgr::CreateTransport (uint32, uint32, Map *)

Additional Inherited Members

Static Public Member Functions inherited from GameObject
static GameObjectGetGameObject (WorldObject &object, uint64 guid)
static void SetGoArtKit (uint8 artkit, GameObject *go, uint32 lowguid=0)
Static Public Member Functions inherited from Position
static float NormalizeOrientation (float o)
Public Attributes inherited from GameObject
Loot loot
uint32 lootingGroupLowGUID
uint32 m_groupLootTimer
GameObjectModelm_model
Public Attributes inherited from WorldObject
uint32 LastUsedScriptID
FlaggedValuesArray32< int32, uint32, InvisibilityType, TOTAL_INVISIBILITY_TYPESm_invisibility
FlaggedValuesArray32< int32, uint32, InvisibilityType, TOTAL_INVISIBILITY_TYPESm_invisibilityDetect
MovementInfo m_movementInfo
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPESm_serverSideVisibility
FlaggedValuesArray32< int32, uint32, ServerSideVisibilityType, TOTAL_SERVERSIDE_VISIBILITY_TYPESm_serverSideVisibilityDetect
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPESm_stealth
FlaggedValuesArray32< int32, uint32, StealthType, TOTAL_STEALTH_TYPESm_stealthDetect
Public Attributes inherited from WorldLocation
uint32 m_mapId
Public Attributes inherited from Position
float m_orientation
float m_positionX
float m_positionY
float m_positionZ
Protected Types inherited from GameObject
typedef std::map< uint32, uint64ChairSlotAndUser
Protected Member Functions inherited from GameObject
bool AIM_Initialize ()
GameObjectModelCreateModel ()
uint32 GetLegacyTransportTargetProgress (GOState state) const
void HandleLegacyTransportStateChange (GOState oldState, GOState newState)
void InitializeLegacyTransport ()
void MarkLegacyTransportPathProgressChanged ()
void SetLegacyTransportStopped (bool stopped)
void UpdateLegacyTransportPathProgress ()
void UpdateModel ()
Protected Member Functions inherited from WorldObject
virtual bool IsAlwaysDetectableFor (WorldObject const *) const
virtual bool IsNeverVisible () const
void SetLocationInstanceId (uint32 _instanceId)
void SetLocationMapId (uint32 _mapId)
 WorldObject (bool isWorldObject)
Protected Member Functions inherited from Object
std::string _ConcatFields (uint16 startIndex, uint16 size) const
void _Create (uint32 guidlow, uint32 entry, HighGuid guidhigh)
void _InitValues ()
void _LoadIntoDataField (std::string const &data, uint32 startOffset, uint32 count)
void BuildDynamicValuesUpdate (uint8 updateType, ByteBuffer *data, Player *target) const
void BuildMovementUpdate (ByteBuffer *data, uint16 flags) const
uint32 GetUpdateFieldData (Player const *target, uint32 *&flags) const
 Object ()
Protected Member Functions inherited from MapObject
 MapObject ()
Protected Member Functions inherited from TransportBase
 TransportBase ()
virtual ~TransportBase ()
Static Protected Member Functions inherited from TransportBase
static void CalculatePassengerOffset (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO)
static void CalculatePassengerPosition (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO)
Protected Attributes inherited from GameObject
ChairSlotAndUser ChairListSlots
time_t m_cooldownTime
uint32 m_DBTableGuid
 For new or temporary gameobjects is 0 for saved it is lowguid.
GameObjectData const * m_goData
GameObjectTemplate const * m_goInfo
GameObjectValue m_goValue
uint16 m_LootMode
uint64 m_lootRecipient
uint32 m_lootRecipientGroup
LootState m_lootState
uint32 m_respawnDelayTime
time_t m_respawnTime
Playerm_ritualOwner
uint64 m_rotation
std::list< uint32m_SkillupList
bool m_spawnedByDefault
uint32 m_spellId
Position m_stationaryPosition
std::vector< uint32m_transportPauseTimes
std::set< uint64m_unique_users
uint32 m_usetimes
Protected Attributes inherited from WorldObject
bool m_isActive
const bool m_isWorldObject
std::string m_name
Transportm_transport
ZoneScriptm_zoneScript
Protected Attributes inherited from Object
union { 
   float *   m_floatValues 
   int32 *   m_int32Values 
   uint32 *   m_uint32Values 
}; 
UpdateMask _changesMask
std::vector< bool * > m_dynamicChange
std::vector< uint32 * > m_dynamicTab
uint16 m_fieldNotifyFlags
uint16 m_objectType
TypeID m_objectTypeId
bool m_objectUpdated
uint16 m_updateFlag
uint16 m_valuesCount

Detailed Description

Definition at line 15 of file Transport.h.

Constructor & Destructor Documentation

◆ Transport()

◆ ~Transport()

Transport::~Transport ( )

Definition at line 30 of file Transport.cpp.

References _passengers, ASSERT, and UnloadStaticPassengers().

Member Function Documentation

◆ AddPassenger()

◆ BuildUpdate()

◆ CalculatePassengerOffset()

void Transport::CalculatePassengerOffset ( float & x,
float & y,
float & z,
float * o ) const
inlinevirtual

This method transforms supplied global coordinates into local offsets.

Implements TransportBase.

Definition at line 45 of file Transport.h.

References TransportBase::CalculatePassengerOffset(), Position::GetOrientation(), Position::GetPositionX(), Position::GetPositionY(), and Position::GetPositionZ().

◆ CalculatePassengerPosition()

void Transport::CalculatePassengerPosition ( float & x,
float & y,
float & z,
float * o ) const
inlinevirtual

◆ CalculateSegmentPos()

◆ Create()

◆ CreateGOPassenger()

◆ CreateLocal()

bool Transport::CreateLocal ( uint32 guidlow,
uint32 entry,
Map * map,
float x,
float y,
float z,
float ang,
float rotation0,
float rotation1,
float rotation2,
float rotation3,
uint32 animprogress )

Definition at line 91 of file Transport.cpp.

References Object::_Create(), _triggeredArrivalEvent, _triggeredDepartureEvent, GameObject::AIM_Initialize(), GameObject::CreateModel(), GameObjectTemplate::displayId, GameObjectTemplate::entry, GameObjectTemplate::faction, GameObjectTemplate::flags, GAMEOBJECT_FIELD_FACTION_TEMPLATE, GAMEOBJECT_FIELD_FLAGS, GAMEOBJECT_FIELD_PARENT_ROTATION, GAMEOBJECT_FIELD_PERCENT_HEALTH, GAMEOBJECT_TYPE_TRANSPORT, GameObject::GetGOInfo(), GameObject::GetGOStateValue(), Map::GetId(), Skyfire::GameObjects::GetInitialLegacyTransportState(), GO_FLAG_NODESPAWN, GO_FLAG_TRANSPORT, HIGHGUID_MO_TRANSPORT, GameObject::InitializeLegacyTransport(), Position::IsPositionValid(), WorldObject::LastUsedScriptID, GameObject::m_goInfo, GameObject::m_goValue, GameObject::m_model, GameObject::m_stationaryPosition, GameObject::m_transportPauseTimes, MapObject::Map, GameObjectTemplate::name, Position::Relocate(), GameObjectTemplate::ScriptId, Object::SetByteValue(), GameObject::SetDisplayId(), Object::SetEntry(), Object::SetFloatValue(), GameObject::SetGoAnimProgress(), GameObject::SetGoType(), GameObject::SetLegacyTransportStopped(), WorldObject::SetMap(), WorldObject::SetName(), Object::SetObjectScale(), Object::SetUInt32Value(), SF_LOG_ERROR, GameObjectTemplate::size, sObjectMgr, GameObjectTemplate::startOpen, sTransportMgr, GameObjectTemplate::transport, GameObjectTemplate::type, and GameObject::UpdateRotationFields().

Referenced by TransportMgr::CreateLocalTransport(), and TransportMgr::CreateLocalTransport().

◆ CreateNPCPassenger()

◆ DoEventIfAny()

◆ EnableMovement()

◆ GetKeyFrames()

KeyFrameVec const & Transport::GetKeyFrames ( ) const
inline

Definition at line 54 of file Transport.h.

References _transportInfo.

Referenced by MoveToNextWaypoint(), and Update().

◆ GetPassengers()

std::set< WorldObject * > const & Transport::GetPassengers ( ) const
inline

Definition at line 33 of file Transport.h.

References _passengers.

◆ GetPeriod()

uint32 Transport::GetPeriod ( ) const
inline

Definition at line 50 of file Transport.h.

References GAMEOBJECT_FIELD_LEVEL, and Object::GetUInt32Value().

Referenced by Update().

◆ GetTimer()

uint32 Transport::GetTimer ( ) const
inline

◆ GetTransportTemplate()

TransportTemplate const * Transport::GetTransportTemplate ( ) const
inline

Definition at line 66 of file Transport.h.

References _transportInfo.

Referenced by Map::~Map().

◆ IsMoving()

bool Transport::IsMoving ( ) const
inlineprivate

Helpers to know if stop frame was reached.

Definition at line 76 of file Transport.h.

References _isMoving.

Referenced by Update().

◆ LoadStaticPassengers()

void Transport::LoadStaticPassengers ( )

Needed when transport moves from inactive to active grid.

Definition at line 470 of file Transport.cpp.

References CreateGOPassenger(), CreateNPCPassenger(), GameObject::GetGOInfo(), WorldObject::GetMap(), GameObjectTemplate::mapID, and sObjectMgr.

Referenced by UpdatePosition().

◆ MoveToNextWaypoint()

void Transport::MoveToNextWaypoint ( )
private

Definition at line 514 of file Transport.cpp.

References _currentFrame, _nextFrame, _triggeredArrivalEvent, _triggeredDepartureEvent, and GetKeyFrames().

Referenced by Update().

◆ RemovePassenger()

◆ SetMoving()

void Transport::SetMoving ( bool val)
inlineprivate

Definition at line 77 of file Transport.h.

References _isMoving.

Referenced by Update().

◆ SetPeriod()

void Transport::SetPeriod ( uint32 period)
inline

Definition at line 51 of file Transport.h.

References GAMEOBJECT_FIELD_LEVEL, and Object::SetUInt32Value().

Referenced by Create().

◆ TeleportTransport()

◆ UnloadStaticPassengers()

void Transport::UnloadStaticPassengers ( )

Needed when transport enters inactive grid.

Definition at line 491 of file Transport.cpp.

References _staticPassengers, WorldObject::AddObjectToRemoveList(), and WorldObject::WorldObject().

Referenced by TeleportTransport(), UpdatePosition(), and ~Transport().

◆ Update()

◆ UpdatePassengerPositions()

◆ UpdatePosition()

◆ TransportMgr::CreateLocalTransport [1/2]

◆ TransportMgr::CreateLocalTransport [2/2]

Transport * TransportMgr::CreateLocalTransport ( uint32 ,
Map * ,
float ,
float ,
float ,
float ,
uint32  )
friend

References MapObject::Map, and Transport().

◆ TransportMgr::CreateTransport

Member Data Documentation

◆ _currentFrame

KeyFrameVec::const_iterator Transport::_currentFrame
private

Definition at line 81 of file Transport.h.

Referenced by CalculateSegmentPos(), Create(), MoveToNextWaypoint(), and Update().

◆ _isMoving

bool Transport::_isMoving
private

Definition at line 84 of file Transport.h.

Referenced by IsMoving(), SetMoving(), and Transport().

◆ _nextFrame

KeyFrameVec::const_iterator Transport::_nextFrame
private

Definition at line 82 of file Transport.h.

Referenced by Create(), MoveToNextWaypoint(), and Update().

◆ _passengers

std::set<WorldObject*> Transport::_passengers
private

◆ _pendingStop

bool Transport::_pendingStop
private

Definition at line 85 of file Transport.h.

Referenced by Create(), EnableMovement(), Transport(), and Update().

◆ _positionChangeTimer

TimeTrackerSmall Transport::_positionChangeTimer
private

Definition at line 83 of file Transport.h.

Referenced by Update().

◆ _staticPassengers

std::set<WorldObject*> Transport::_staticPassengers
private

◆ _transportInfo

TransportTemplate const* Transport::_transportInfo
private

◆ _triggeredArrivalEvent

bool Transport::_triggeredArrivalEvent
private

These are needed to properly control events triggering only once for each frame.

Definition at line 88 of file Transport.h.

Referenced by Create(), CreateLocal(), MoveToNextWaypoint(), Transport(), and Update().

◆ _triggeredDepartureEvent

bool Transport::_triggeredDepartureEvent
private

Definition at line 89 of file Transport.h.

Referenced by Create(), CreateLocal(), MoveToNextWaypoint(), Transport(), and Update().


The documentation for this class was generated from the following files: