Mario Kart 64
Loading...
Searching...
No Matches
course.h File Reference
#include <ultra64.h>
#include <PR/gbi.h>
#include <macros.h>
#include "path.h"
Include dependency graph for course.h:

Go to the source code of this file.

Data Structures

struct  TrackSections
 
struct  _struct_gCoursePathSizes_0x10
 

Macros

#define GET_COURSE_800DCBB4(n)   D_800DCBB4[gCurrentCourseId][n]
 
#define GET_COURSE_AIMaximumSeparation   cpu_CourseMaximumSeparation[gCurrentCourseId]
 
#define GET_COURSE_PathSizes   gCoursePathSizes[gCurrentCourseId]
 
#define GET_COURSE_AISteeringSensitivity   cpu_SteeringSensitivity[gCurrentCourseId]
 
#define GET_COURSE_AIMinimumSeparation   cpu_CourseMinimumSeparation[gCurrentCourseId]
 
#define GET_COURSE_PathTable(p)   segmented_to_virtual_dupe_2(gCoursePathTable[gCurrentCourseId][p])
 
#define GET_COURSE_PathTable2(p)   segmented_to_virtual_dupe_2(gCoursePathTable2[gCurrentCourseId][p])
 
#define GET_COURSE_AIBehaviour   segmented_to_virtual_dupe_2(cpu_BehaviourLUT[i])
 
#define GET_COURSE_Name   gCourseNames[gCurrentCourseId]
 
#define GET_COURSE_NameDup   gCourseNamesDup[gCupCourseOrder[gCupSelection][gCourseIndexInCup]]
 
#define GET_COURSE_debugName   gDebugCourseNames[gCurrentCourseId]
 
#define gCourseFarPersp   gCourseFarPersp
 
#define gCourseNearPersp   gCourseNearPersp
 
#define GET_COURSE_D_0D0096B8(cc)   *(f32*) segmented_to_virtual_dupe_2(&D_0D0096B8[gCurrentCourseId][cc])
 
#define GET_COURSE_cpu_OffTrackTargetSpeed(cc)    *(f32*) segmented_to_virtual_dupe_2(&cpu_OffTrackTargetSpeed[gCurrentCourseId][cc])
 
#define GET_COURSE_cpu_CurveTargetSpeed(cc)    *(f32*) segmented_to_virtual_dupe_2(&cpu_CurveTargetSpeed[gCurrentCourseId][cc])
 
#define GET_COURSE_cpu_NormalTargetSpeed(cc)    *(f32*) segmented_to_virtual_dupe_2(&cpu_NormalTargetSpeed[gCurrentCourseId][cc])
 

Enumerations

enum  COURSES {
  COURSE_MARIO_RACEWAY = 0 , COURSE_CHOCO_MOUNTAIN , COURSE_BOWSER_CASTLE , COURSE_BANSHEE_BOARDWALK ,
  COURSE_YOSHI_VALLEY , COURSE_FRAPPE_SNOWLAND , COURSE_KOOPA_BEACH , COURSE_ROYAL_RACEWAY ,
  COURSE_LUIGI_RACEWAY , COURSE_MOO_MOO_FARM , COURSE_TOADS_TURNPIKE , COURSE_KALAMARI_DESERT ,
  COURSE_SHERBET_LAND , COURSE_RAINBOW_ROAD , COURSE_WARIO_STADIUM , COURSE_BLOCK_FORT ,
  COURSE_SKYSCRAPER , COURSE_DOUBLE_DECK , COURSE_DK_JUNGLE , COURSE_BIG_DONUT ,
  COURSE_AWARD_CEREMONY , NUM_COURSES
}
 

Variables

s16 gCurrentCourseId
 
s16D_800DCBB4 []
 
f32 cpu_CourseMaximumSeparation []
 
struct _struct_gCoursePathSizes_0x10 gCoursePathSizes []
 
s16 cpu_SteeringSensitivity []
 
f32 cpu_CourseMinimumSeparation []
 
TrackPathPointgCoursePathTable [][4]
 
TrackPathPointgCoursePathTable2 [][4]
 
CPUBehaviourcpu_BehaviourLUT []
 
char * gCourseNames []
 
char * gCourseNamesDup []
 
char * gDebugCourseNames []
 
f32 gCourseFarPersp
 
f32 gCourseNearPersp
 

Macro Definition Documentation

◆ gCourseFarPersp

#define gCourseFarPersp   gCourseFarPersp

◆ gCourseNearPersp

#define gCourseNearPersp   gCourseNearPersp

◆ GET_COURSE_800DCBB4

#define GET_COURSE_800DCBB4 ( n)    D_800DCBB4[gCurrentCourseId][n]

◆ GET_COURSE_AIBehaviour

#define GET_COURSE_AIBehaviour   segmented_to_virtual_dupe_2(cpu_BehaviourLUT[i])

◆ GET_COURSE_AIMaximumSeparation

#define GET_COURSE_AIMaximumSeparation   cpu_CourseMaximumSeparation[gCurrentCourseId]

◆ GET_COURSE_AIMinimumSeparation

#define GET_COURSE_AIMinimumSeparation   cpu_CourseMinimumSeparation[gCurrentCourseId]

◆ GET_COURSE_AISteeringSensitivity

#define GET_COURSE_AISteeringSensitivity   cpu_SteeringSensitivity[gCurrentCourseId]

◆ GET_COURSE_cpu_CurveTargetSpeed

#define GET_COURSE_cpu_CurveTargetSpeed ( cc)     *(f32*) segmented_to_virtual_dupe_2(&cpu_CurveTargetSpeed[gCurrentCourseId][cc])

◆ GET_COURSE_cpu_NormalTargetSpeed

#define GET_COURSE_cpu_NormalTargetSpeed ( cc)     *(f32*) segmented_to_virtual_dupe_2(&cpu_NormalTargetSpeed[gCurrentCourseId][cc])

◆ GET_COURSE_cpu_OffTrackTargetSpeed

#define GET_COURSE_cpu_OffTrackTargetSpeed ( cc)     *(f32*) segmented_to_virtual_dupe_2(&cpu_OffTrackTargetSpeed[gCurrentCourseId][cc])

◆ GET_COURSE_D_0D0096B8

#define GET_COURSE_D_0D0096B8 ( cc)    *(f32*) segmented_to_virtual_dupe_2(&D_0D0096B8[gCurrentCourseId][cc])

◆ GET_COURSE_debugName

#define GET_COURSE_debugName   gDebugCourseNames[gCurrentCourseId]

◆ GET_COURSE_Name

#define GET_COURSE_Name   gCourseNames[gCurrentCourseId]

◆ GET_COURSE_NameDup

#define GET_COURSE_NameDup   gCourseNamesDup[gCupCourseOrder[gCupSelection][gCourseIndexInCup]]

◆ GET_COURSE_PathSizes

#define GET_COURSE_PathSizes   gCoursePathSizes[gCurrentCourseId]

◆ GET_COURSE_PathTable

#define GET_COURSE_PathTable ( p)    segmented_to_virtual_dupe_2(gCoursePathTable[gCurrentCourseId][p])

◆ GET_COURSE_PathTable2

#define GET_COURSE_PathTable2 ( p)    segmented_to_virtual_dupe_2(gCoursePathTable2[gCurrentCourseId][p])

Enumeration Type Documentation

◆ COURSES

enum COURSES
Enumerator
COURSE_MARIO_RACEWAY 
COURSE_CHOCO_MOUNTAIN 
COURSE_BOWSER_CASTLE 
COURSE_BANSHEE_BOARDWALK 
COURSE_YOSHI_VALLEY 
COURSE_FRAPPE_SNOWLAND 
COURSE_KOOPA_BEACH 
COURSE_ROYAL_RACEWAY 
COURSE_LUIGI_RACEWAY 
COURSE_MOO_MOO_FARM 
COURSE_TOADS_TURNPIKE 
COURSE_KALAMARI_DESERT 
COURSE_SHERBET_LAND 
COURSE_RAINBOW_ROAD 
COURSE_WARIO_STADIUM 
COURSE_BLOCK_FORT 
COURSE_SKYSCRAPER 
COURSE_DOUBLE_DECK 
COURSE_DK_JUNGLE 
COURSE_BIG_DONUT 
COURSE_AWARD_CEREMONY 
NUM_COURSES 

Variable Documentation

◆ cpu_BehaviourLUT

CPUBehaviour* cpu_BehaviourLUT[]
extern

◆ cpu_CourseMaximumSeparation

f32 cpu_CourseMaximumSeparation[]
extern

◆ cpu_CourseMinimumSeparation

f32 cpu_CourseMinimumSeparation[]
extern

◆ cpu_SteeringSensitivity

s16 cpu_SteeringSensitivity[]
extern
Warning
Array contains an extra zero element at the end.

◆ D_800DCBB4

s16* D_800DCBB4[]
extern

◆ gCourseFarPersp

f32 gCourseFarPersp
extern

◆ gCourseNames

char* gCourseNames[]
extern

◆ gCourseNamesDup

char* gCourseNamesDup[]
extern

◆ gCourseNearPersp

f32 gCourseNearPersp
extern

◆ gCoursePathSizes

struct _struct_gCoursePathSizes_0x10 gCoursePathSizes[]
extern

◆ gCoursePathTable

TrackPathPoint* gCoursePathTable[][4]
extern

◆ gCoursePathTable2

TrackPathPoint* gCoursePathTable2[][4]
extern

◆ gCurrentCourseId

s16 gCurrentCourseId
extern

◆ gDebugCourseNames

char* gDebugCourseNames[]
extern