TrinityCore
Loading...
Searching...
No Matches
TransportTemplate Struct Reference

#include <TransportMgr.h>

Public Member Functions

 TransportTemplate ()
 
 ~TransportTemplate ()
 
 TransportTemplate (TransportTemplate const &)=delete
 
 TransportTemplate (TransportTemplate &&) noexcept
 
TransportTemplate & operator= (TransportTemplate const &)=delete
 
TransportTemplate & operator= (TransportTemplate &&) noexcept
 
Optional< Position > ComputePosition (uint32 time, TransportMovementState *moveState, size_t *legIndex) const
 
TransportPathLeg const * GetLegForTime (uint32 time) const
 
uint32 GetNextPauseWaypointTimestamp (uint32 time) const
 
double CalculateDistanceMoved (double timePassedInSegment, double segmentDuration, bool isFirstSegment, bool isLastSegment) const
 

Public Attributes

uint32 TotalPathTime = 0
 
double Speed = 0.0
 
double AccelerationRate = 0.0
 
double AccelerationTime = 0.0
 
double AccelerationDistance = 0.0
 
std::vector< TransportPathLeg > PathLegs
 
std::vector< TransportPathEvent > Events
 
std::set< uint32 > MapIds
 

Detailed Description

Definition at line 81 of file TransportMgr.h.

Constructor & Destructor Documentation

◆ TransportTemplate() [1/3]

TransportTemplate::TransportTemplate ( )
default

◆ ~TransportTemplate()

TransportTemplate::~TransportTemplate ( )
default

◆ TransportTemplate() [2/3]

TransportTemplate::TransportTemplate ( TransportTemplate const &  )
delete

◆ TransportTemplate() [3/3]

TransportTemplate::TransportTemplate ( TransportTemplate &&  )
defaultnoexcept

Member Function Documentation

◆ CalculateDistanceMoved()

double TransportTemplate::CalculateDistanceMoved ( double  timePassedInSegment,
double  segmentDuration,
bool  isFirstSegment,
bool  isLastSegment 
) const

Definition at line 121 of file TransportMgr.cpp.

References AccelerationDistance, AccelerationRate, AccelerationTime, and Speed.

◆ ComputePosition()

Optional< Position > TransportTemplate::ComputePosition ( uint32  time,
TransportMovementState *  moveState,
size_t *  legIndex 
) const

◆ GetLegForTime()

TransportPathLeg const * TransportTemplate::GetLegForTime ( uint32  time) const

Definition at line 93 of file TransportMgr.cpp.

References PathLegs.

Referenced by GetNextPauseWaypointTimestamp(), and Transport::Update().

◆ GetNextPauseWaypointTimestamp()

uint32 TransportTemplate::GetNextPauseWaypointTimestamp ( uint32  time) const

Definition at line 107 of file TransportMgr.cpp.

References GetLegForTime(), and TransportPathLeg::Segments.

Referenced by Transport::EnableMovement().

◆ operator=() [1/2]

TransportTemplate & TransportTemplate::operator= ( TransportTemplate &&  )
defaultnoexcept

◆ operator=() [2/2]

TransportTemplate & TransportTemplate::operator= ( TransportTemplate const &  )
delete

Member Data Documentation

◆ AccelerationDistance

double TransportTemplate::AccelerationDistance = 0.0

Definition at line 95 of file TransportMgr.h.

Referenced by CalculateDistanceMoved(), and TransportMgr::GeneratePath().

◆ AccelerationRate

double TransportTemplate::AccelerationRate = 0.0

Definition at line 93 of file TransportMgr.h.

Referenced by CalculateDistanceMoved(), and TransportMgr::GeneratePath().

◆ AccelerationTime

double TransportTemplate::AccelerationTime = 0.0

Definition at line 94 of file TransportMgr.h.

Referenced by CalculateDistanceMoved(), and TransportMgr::GeneratePath().

◆ Events

std::vector<TransportPathEvent> TransportTemplate::Events

Definition at line 97 of file TransportMgr.h.

Referenced by Transport::Create(), TransportMgr::GeneratePath(), and Transport::Update().

◆ MapIds

std::set<uint32> TransportTemplate::MapIds

◆ PathLegs

std::vector<TransportPathLeg> TransportTemplate::PathLegs

◆ Speed

double TransportTemplate::Speed = 0.0

Definition at line 92 of file TransportMgr.h.

Referenced by CalculateDistanceMoved(), and TransportMgr::GeneratePath().

◆ TotalPathTime

uint32 TransportTemplate::TotalPathTime = 0

Definition at line 91 of file TransportMgr.h.

Referenced by Transport::Create(), and TransportMgr::GeneratePath().


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