Mario Kart 64
Loading...
Searching...
No Matches
path.h File Reference
#include <common_structs.h>
Include dependency graph for path.h:

Go to the source code of this file.

Data Structures

struct  TrackPathPoint
 

Enumerations

enum  {
  RIGHT_LEANING_CURVE = 0 , LEFT_LEANING_CURVE = 1 , RIGHT_CURVE = 2 , LEFT_CURVE = 3 ,
  STRAIGHT = 4
}
 

Variables

TrackPathPointgTrackPaths []
 
TrackPathPointgTrackLeftPaths []
 
TrackPathPointgTrackRightPaths []
 
s16gTrackSectionTypes []
 
s16gPathExpectedRotation []
 
s16gTrackConsecutiveCurveCounts []
 
s16 sSomeNearestPathPoint
 
s32 gPlayerPathIndex
 
TrackPathPointgCurrentTrackLeftPath
 
TrackPathPointgCurrentTrackRightPath
 
s16gCurrentTrackSectionTypesPath
 
s16gCurrentPathPointExpectedRotationPath
 
u16 gSelectedPathCount
 
TrackPathPointgCurrentTrackPath
 
s16gCurrentTrackConsecutiveCurveCountsPath
 
u16 gNearestPathPointByPlayerId []
 
s32 gNumPathPointsTraversed []
 
u16 gPathIndexByPlayerId []
 
u16 gPathCountByPathIndex []
 
s16 gNearestPathPointByCameraId []
 
f32 gTrackPositionFactor []
 
u16 gPlayersTrackSectionId []
 
s32 D_80163368 []
 
f32 gPathStartZ
 
s16 cpu_enteringPathIntersection []
 
s16 cpu_exitingPathIntersection []
 
s16 bInMultiPathSection []
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
RIGHT_LEANING_CURVE 
LEFT_LEANING_CURVE 
RIGHT_CURVE 
LEFT_CURVE 
STRAIGHT 

Variable Documentation

◆ bInMultiPathSection

s16 bInMultiPathSection[]
extern

◆ cpu_enteringPathIntersection

s16 cpu_enteringPathIntersection[]
extern

◆ cpu_exitingPathIntersection

s16 cpu_exitingPathIntersection[]
extern

◆ D_80163368

s32 D_80163368[]
extern

◆ gCurrentPathPointExpectedRotationPath

s16* gCurrentPathPointExpectedRotationPath
extern

◆ gCurrentTrackConsecutiveCurveCountsPath

s16* gCurrentTrackConsecutiveCurveCountsPath
extern

◆ gCurrentTrackLeftPath

TrackPathPoint* gCurrentTrackLeftPath
extern

◆ gCurrentTrackPath

TrackPathPoint* gCurrentTrackPath
extern

◆ gCurrentTrackRightPath

TrackPathPoint* gCurrentTrackRightPath
extern

◆ gCurrentTrackSectionTypesPath

s16* gCurrentTrackSectionTypesPath
extern

◆ gNearestPathPointByCameraId

s16 gNearestPathPointByCameraId[]
extern

◆ gNearestPathPointByPlayerId

u16 gNearestPathPointByPlayerId[]
extern

◆ gNumPathPointsTraversed

s32 gNumPathPointsTraversed[]
extern

◆ gPathCountByPathIndex

u16 gPathCountByPathIndex[]
extern

◆ gPathExpectedRotation

s16* gPathExpectedRotation[]
extern

◆ gPathIndexByPlayerId

u16 gPathIndexByPlayerId[]
extern

◆ gPathStartZ

f32 gPathStartZ
extern

◆ gPlayerPathIndex

s32 gPlayerPathIndex
extern

◆ gPlayersTrackSectionId

u16 gPlayersTrackSectionId[]
extern

◆ gSelectedPathCount

u16 gSelectedPathCount
extern

◆ gTrackConsecutiveCurveCounts

s16* gTrackConsecutiveCurveCounts[]
extern

◆ gTrackLeftPaths

TrackPathPoint* gTrackLeftPaths[]
extern

◆ gTrackPaths

TrackPathPoint* gTrackPaths[]
extern

These are per-path arrays that contain some information relating to path The arrays in gTrackPaths contain X/Y/Z and track segment information The arrays in gTrackLeftPaths and gCurrentTrackRightPath track some other X/Y/Z, but the track segment is always 0 (so, untracked/unused) Its unclear how these arrays relate to each other

◆ gTrackPositionFactor

f32 gTrackPositionFactor[]
extern

Stuff that may not be directly related to path, but are only referenced in cpu_vehicles_camera_path. So they are at least pathPoint adjacent.

◆ gTrackRightPaths

TrackPathPoint* gTrackRightPaths[]
extern

◆ gTrackSectionTypes

s16* gTrackSectionTypes[]
extern

Don't know what exactly these are, but like gTrackPaths, gTrackLeftPaths, and gCurrentTrackRightPath they track something about the path on a per-path basis

◆ sSomeNearestPathPoint

s16 sSomeNearestPathPoint
extern

Certain parts of the pathPoint logic will copy some path/player specific data to a temporary variable. For example: gCurrentTrackPath is always a value from gTrackPaths. Depending on which path a given player is on, the specific value may change