3#include "game/kart/KartObjectProxy.hh"
5#include "game/system/map/MapdataPointInfo.hh"
25 void setCurrentIdx(s16 idx) {
35 enum class SearchDirection {
41 void calcTrackerGlobal();
42 void calcTrackerRegional();
45 bool search(SearchDirection searchDirection, s16 &idx,
EGG::Vector3f &point,
64 void changePoint(s16 idx, f32 distance);
67 void resetDistance() {
71 [[nodiscard]] s16 incomingIdx()
const {
76 return m_pullDirection;
79 [[nodiscard]] f32 pullSpeed()
const {
83 [[nodiscard]] f32 maxPullSpeed()
const {
84 return m_maxPullSpeed;
87 [[nodiscard]] f32 roadSpeedDecay()
const {
88 return m_roadSpeedDecay;
93 void calcPointChange();
107 f32 m_roadSpeedDecay;
Base class for most kart-related objects.
Tracks the kart's progress along the pull path.
Type m_type
Replaces inheritance for calc.
f32 getDistance(const EGG::Vector3f &point, const EGG::Vector3f &dir) const
Gets the distance from the line formed by the point and direction.
Manages areas pulling the kart along a given path.
EGG::Vector3f getPullUnitNormal() const
Pertains to kart-related functionality.