18#ifndef TRINITYSERVER_MOVEPLINE_H
19#define TRINITYSERVER_MOVEPLINE_H
23#include <G3D/Vector3.h>
62 Result_Arrived = 0x02,
63 Result_NextCycle = 0x04,
64 Result_NextSegment = 0x08
94 void computeParabolicElevation(
int32 time_point,
float& el)
const;
117 template<
class UpdateHandler>
122 handler(_updateState(difftime));
123 while (difftime > 0);
129 do _updateState(difftime);
130 while (difftime > 0);
138 bool isCyclic()
const {
return splineflags.Cyclic; }
142 int32 currentPathIdx()
const;
151 return time_passed > 0;
std::optional< T > Optional
Optional helper class to wrap optional values within.
int32 next_timestamp() const
Vector3 const & CurrentDestination() const
MySpline::ControlArray const & getPath() const
void updateState(int32 difftime)
Optional< AnimTierTransition > anim_tier
Optional< AnimTier > GetAnimation() const
MySpline const & _Spline() const
float vertical_acceleration
Vector3 const & FinalDestination() const
int32 _currentSplineIdx() const
int32 segment_time_elapsed() const
void updateState(int32 difftime, UpdateHandler &handler)
MoveSplineFlag splineflags
Optional< SpellEffectExtraData > spell_effect_extra
int32 timeRemaining() const
std::vector< Vector3 > ControlArray
ControlArray const & getPoints() const
Vector3 const & getPoint(index_type i) const
length_type length() const
float computeFallElevation(float t_passed, bool isSafeFall, float start_velocity=0.0f)
std::string ToString(Type &&val, Params &&... params)
Location(Vector3 const &v, float o)
Location(Vector3 const &v)
Location(float x, float y, float z, float o)