41 void DelayedUpdate(
uint32 diff);
88 void UpdatePosition(
float x,
float y,
float z,
float o);
91 void LoadStaticPassengers();
94 void UnloadStaticPassengers();
96 void EnableMovement(
bool enabled);
105 void MoveToNextWaypoint();
106 float CalculateSegmentPos(
float perc);
107 bool TeleportTransport(
uint32 newMapid,
float x,
float y,
float z,
float o);
108 void DelayedTeleportTransport();
109 void UpdatePassengerPositions(PassengerSet& passengers);
110 void DoEventIfAny(
KeyFrame const& node,
bool departure);
std::unordered_map< Player *, UpdateData > UpdateDataMapType
std::vector< KeyFrame > KeyFrameVec
std::string GetDebugInfo() const override
GameObjectValue const * GetGOValue() const
void SetLevel(uint32 level)
void CleanupsBeforeDelete(bool finalCleanup=true) override
void Update(uint32 p_time) override
bool Create(ObjectGuid::LowType guidlow, uint32 name_id, Map *map, uint32 phaseMask, Position const &pos, QuaternionData const &rotation, uint32 animprogress, GOState go_state, uint32 artKit=0, bool dynamic=false, ObjectGuid::LowType spawnid=0)
uint32 GetUInt32Value(uint16 index) const
virtual void CalculatePassengerPosition(float &x, float &y, float &z, float *o=nullptr) const =0
This method transforms supplied transport offsets into global coordinates.
virtual void CalculatePassengerOffset(float &x, float &y, float &z, float *o=nullptr) const =0
This method transforms supplied global coordinates into local offsets.
Transport * CreateTransport(uint32 entry, ObjectGuid::LowType guid=0, Map *map=nullptr)
void SetPeriod(uint32 period)
bool _triggeredArrivalEvent
These are needed to properly control events triggering only once for each frame.
void CalculatePassengerOffset(float &x, float &y, float &z, float *o=nullptr) const override
This method transforms supplied global coordinates into local offsets.
uint32 GetTransportPeriod() const override
PassengerSet const & GetPassengers() const
KeyFrameVec::const_iterator _currentFrame
PassengerSet _staticPassengers
KeyFrameVec const & GetKeyFrames() const
TimeTracker _positionChangeTimer
bool _triggeredDepartureEvent
TransportTemplate const * GetTransportTemplate() const
PassengerSet::iterator _passengerTeleportItr
std::set< WorldObject * > PassengerSet
KeyFrameVec::const_iterator _nextFrame
TransportTemplate const * _transportInfo
void SetDelayedAddModelToMap()
bool IsMoving() const
Helpers to know if stop frame was reached.
void CalculatePassengerPosition(float &x, float &y, float &z, float *o=nullptr) const override
This method transforms supplied transport offsets into global coordinates.
void BuildUpdate(UpdateDataMapType &) override
float GetPositionZ() const
float GetOrientation() const
float GetPositionX() const
float GetPositionY() const
struct GameObjectValue::@187 Transport