24#include <boost/dynamic_bitset_fwd.hpp>
89 void UpdatePosition(
float x,
float y,
float z,
float o);
92 void LoadStaticPassengers();
95 void UnloadStaticPassengers();
97 void EnableMovement(
bool enabled);
104 uint32 GetExpectedMapId()
const;
107 bool TeleportTransport(
uint32 oldMapId,
uint32 newMapId,
float x,
float y,
float z,
float o);
108 void TeleportPassengersAndHideTransport(
uint32 newMapid);
109 void UpdatePassengerPositions(PassengerSet
const& passengers);
std::unordered_map< Player *, UpdateData > UpdateDataMapType
std::chrono::milliseconds Milliseconds
Milliseconds shorthand typedef.
std::optional< T > Optional
Optional helper class to wrap optional values within.
ObjectGuid const & GetGUID() const
std::string GetDebugInfo() const override
void SetLevel(uint32 level)
void Update(uint32 diff) override
void CleanupsBeforeDelete(bool finalCleanup=true) override
bool Create(uint32 entry, Map *map, Position const &pos, QuaternionData const &rotation, uint32 animProgress, GOState goState, uint32 artKit, bool dynamic, ObjectGuid::LowType spawnid)
bool HasDynamicFlag(uint32 flag) const
virtual void AddPassenger(WorldObject *passenger, Position const &offset)=0
virtual int32 GetMapIdForSpawning() const =0
virtual TransportBase * RemovePassenger(WorldObject *passenger)=0
Transport * CreateTransport(uint32 entry, Map *map, ObjectGuid::LowType guid=0, uint8 phaseUseFlags=0, uint32 phaseId=0, uint32 phaseGroupId=0)
TransportMovementState _movementState
void SetPeriod(uint32 period)
uint32 GetTransportPeriod() const
Position GetPositionWithOffset(Position const &offset) const override
This method transforms supplied transport offsets into global coordinates.
Optional< uint32 > _requestStopTimestamp
PassengerSet const & GetPassengers() const
float GetTransportOrientation() const override
Position GetPositionOffsetTo(Position const &endPos) const override
This method transforms supplied global coordinates into local offsets.
Optional< uint32 > GetNextStopTimestamp() const
PassengerSet _staticPassengers
TimeTracker _positionChangeTimer
ObjectGuid GetTransportGUID() const override
std::set< WorldObject * > PassengerSet
TransportTemplate const * _transportInfo
void SetDelayedAddModelToMap()
std::unique_ptr< boost::dynamic_bitset< uint8 > > _eventsToTrigger
void BuildUpdate(UpdateDataMapType &) override
Position GetPositionWithOffset(Position const &offset) const
Position GetPositionOffsetTo(Position const &endPos) const
constexpr float GetOrientation() const