25 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);
UNORDERED_MAP< Player *, UpdateData > UpdateDataMapType
std::vector< KeyFrame > KeyFrameVec
GameObjectValue const * GetGOValue() const
uint32 GetUInt32Value(uint16 index) const
void SetUInt32Value(uint16 index, uint32 value)
virtual void CalculatePassengerPosition(float &x, float &y, float &z, float *o=NULL) const =0
This method transforms supplied transport offsets into global coordinates.
virtual void CalculatePassengerOffset(float &x, float &y, float &z, float *o=NULL) const =0
This method transforms supplied global coordinates into local offsets.
void UpdatePosition(float x, float y, float z, float o)
void SetPeriod(uint32 period)
std::set< WorldObject * > _staticPassengers
void UpdatePassengerPositions(std::set< WorldObject * > &passengers)
void CalculatePassengerPosition(float &x, float &y, float &z, float *o) const
This method transforms supplied transport offsets into global coordinates.
bool TeleportTransport(uint32 newMapid, float x, float y, float z)
void LoadStaticPassengers()
Needed when transport moves from inactive to active grid.
bool _triggeredArrivalEvent
These are needed to properly control events triggering only once for each frame.
std::set< WorldObject * > const & GetPassengers() const
GameObject * CreateGOPassenger(uint32 guid, GameObjectData const *data)
KeyFrameVec::const_iterator _currentFrame
void DoEventIfAny(KeyFrame const &node, bool departure)
void EnableMovement(bool enabled)
bool Create(uint32 guidlow, uint32 entry, uint32 mapid, float x, float y, float z, float ang, uint32 animprogress)
float CalculateSegmentPos(float perc)
void CalculatePassengerOffset(float &x, float &y, float &z, float *o) const
This method transforms supplied global coordinates into local offsets.
void RemovePassenger(WorldObject *passenger)
void UnloadStaticPassengers()
Needed when transport enters inactive grid.
KeyFrameVec const & GetKeyFrames() const
std::set< WorldObject * > _passengers
TimeTrackerSmall _positionChangeTimer
bool _triggeredDepartureEvent
TransportTemplate const * GetTransportTemplate() const
void BuildUpdate(UpdateDataMapType &data_map)
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)
KeyFrameVec::const_iterator _nextFrame
TransportTemplate const * _transportInfo
void MoveToNextWaypoint()
void AddPassenger(WorldObject *passenger)
bool IsMoving() const
Helpers to know if stop frame was reached.
Creature * CreateNPCPassenger(uint32 guid, CreatureData const *data)
Transport * CreateLocalTransport(uint32 guid, Map *map)
Transport * CreateTransport(uint32 entry, uint32 guid=0, Map *map=NULL)
WorldObject(bool isWorldObject)
float GetPositionZ() const
float GetOrientation() const
float GetPositionX() const
float GetPositionY() const
struct GameObjectValue::@210223111052332366220354331325332170103204164100 Transport