Mario Kart 64
Loading...
Searching...
No Matches
Game.h
Go to the documentation of this file.
1#ifndef _GAME_H
2#define _GAME_H
3
4#include <libultraship.h>
6#include "engine/HM_Intro.h"
7
8#ifdef __cplusplus
10class Course;
11extern "C" {
12#endif
13#include "camera.h"
14#include "actor_types.h"
15
16extern s32 gTrophyIndex;
17
18#ifdef __cplusplus
19extern Editor::Editor gEditor;
20extern HarbourMastersIntro gMenuIntro;
21#endif
22
24Properties* CM_GetPropsCourseId(s32 courseId);
25
26void HM_InitIntro(void);
27void HM_TickIntro(void);
28void HM_DrawIntro(void);
29
31
32void CM_DisplayBattleBombKart(s32 playerId, s32 primAlpha);
33void CM_DrawBattleBombKarts(s32 cameraId);
34
35u32 WorldNextCup(void);
36
37u32 WorldPreviousCup(void);
38
39u32 GetCupIndex(void);
40
41const char* GetCupName(void);
42
43void LoadCourse();
44
45size_t GetCourseIndex();
46
47void SetCourse(const char* name);
48
49void NextCourse();
50void PreviousCourse();
51
52void CM_SetCup(void*);
53
54void CM_SetCupIndex(size_t index);
55
56void CM_LoadTextures();
57
58void CM_RenderCourse(struct UnkStruct_800DC5EC* arg0);
59
60void CM_RenderCredits();
61
63void CM_ActivateFinishLakitu(s32 playerId);
64void CM_ActivateSecondLapLakitu(s32 playerId);
65void CM_ActivateFinalLapLakitu(s32 playerId);
66void CM_ActivateReverseLakitu(s32 playerId);
67
69
70void CM_InitClouds();
71
72void CM_DrawActors(Camera* camera, struct Actor* actor);
74
75void CM_TickObjects();
77void CM_DrawObjects(s32 cameraId);
78
79void CM_TickEditor();
80void CM_DrawEditor();
81void CM_Editor_SetLevelDimensions(s16 minX, s16 maxX, s16 minZ, s16 maxZ, s16 minY, s16 maxY);
84
85void CM_TickParticles(void);
86void CM_DrawParticles(s32 cameraId);
87
88void CM_UpdateClouds(s32 arg0, Camera* camera);
89
90void CM_Waypoints(Player* player, int8_t playerId);
91
92void CM_SomeCollisionThing(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6,
93 f32* arg7);
94
96
98
99void CM_RenderCourseObjects(s32 cameraId);
100
101void CM_SomeSounds();
102
104
105void CM_WhatDoesThisDo(Player* player, int8_t playerId);
106
107void CM_WhatDoesThisDoAI(Player* player, int8_t playerId);
108
109void CM_SetStaffGhost();
110
111void CM_BombKartsWaypoint(s32 cameraId);
112
114
115s32 CM_GetCrossingOnTriggered(uintptr_t* crossing);
116
117void CM_BeginPlay();
118
119void CM_DrawWater(struct UnkStruct_800DC5EC* screen, uint16_t pathCounter, uint16_t cameraRot,
120 uint16_t playerDirection);
121
122void CM_AICrossingBehaviour(s32 playerId);
123
124void CM_ClearVehicles(void);
125
126void CM_CrossingTrigger();
127
128void CM_VehicleCollision(s32 playerId, Player* player);
129
130void CM_TickActors();
131
132void CM_DrawBombKarts(s32 cameraId);
133
134size_t GetCupCursorPosition();
135
136void SetCupCursorPosition(size_t position);
137
138size_t GetCupSize();
139
140void SetCourseFromCup();
141
142void* GetCourse(void);
143
144void SetCourseById(s32 course);
145
146struct Actor* CM_GetActor(size_t index);
147void CM_DeleteActor(size_t index);
148struct Actor* CM_AddBaseActor();
149void CM_AddEditorObject(struct Actor* actor, const char* name);
150void Editor_AddLight(s8* direction);
151size_t CM_GetActorSize();
152size_t CM_FindActorIndex(struct Actor* actor);
153void CM_ActorCollision(Player* player, struct Actor* actor);
154void CM_CleanWorld(void);
155
156f32 CM_GetWaterLevel(Vec3f pos, Collision* collision);
157
158bool IsMarioRaceway();
159bool IsLuigiRaceway();
160bool IsChocoMountain();
161bool IsBowsersCastle();
162bool IsBansheeBoardwalk();
163bool IsYoshiValley();
164bool IsFrappeSnowland();
165bool IsKoopaTroopaBeach();
166bool IsRoyalRaceway();
167bool IsMooMooFarm();
168bool IsToadsTurnpike();
169bool IsKalimariDesert();
170bool IsSherbetLand();
171bool IsRainbowRoad();
172bool IsWarioStadium();
173bool IsBlockFort();
174bool IsSkyscraper();
175bool IsDoubleDeck();
176bool IsDkJungle();
177bool IsBigDonut();
178bool IsPodiumCeremony();
179
180void SelectMarioRaceway();
181void SelectLuigiRaceway();
185void SelectYoshiValley();
188void SelectRoyalRaceway();
189void SelectMooMooFarm();
192void SelectSherbetLand();
193void SelectRainbowRoad();
194void SelectWarioStadium();
195void SelectBlockFort();
196void SelectSkyscraper();
197void SelectDoubleDeck();
198void SelectDkJungle();
199void SelectBigDonut();
201
202void* GetMushroomCup(void);
203
204void* GetFlowerCup(void);
205
206void* GetStarCup(void);
207
208void* GetSpecialCup(void);
209
210void* GetBattleCup(void);
211
212void* GetCup();
213
214void CM_RunGarbageCollector(void);
215
216#ifdef __cplusplus
217}
218#endif
219
220#endif // _GAME_H
s32 gTrophyIndex
Definition Game.cpp:86
HarbourMastersIntro gMenuIntro
Definition Game.cpp:82
Editor::Editor gEditor
Definition Game.cpp:84
void CM_InitClouds()
Definition Game.cpp:440
void CM_SomeSounds()
Definition Game.cpp:486
u32 GetCupIndex(void)
Definition Game.cpp:217
void CM_Editor_SetLevelDimensions(s16 minX, s16 maxX, s16 minZ, s16 maxZ, s16 minY, s16 maxY)
Definition Game.cpp:414
size_t CM_GetActorSize()
Definition Game.cpp:689
bool IsBlockFort()
Definition Game.cpp:722
void CM_CleanWorld(void)
Definition Game.cpp:639
void SelectDkJungle()
Definition Game.cpp:747
void SelectSkyscraper()
Definition Game.cpp:745
void CM_DrawWater(struct UnkStruct_800DC5EC *screen, uint16_t pathCounter, uint16_t cameraRot, uint16_t playerDirection)
Definition Game.cpp:533
void SelectChocoMountain()
Definition Game.cpp:731
bool IsWarioStadium()
Definition Game.cpp:721
void CM_AICrossingBehaviour(s32 playerId)
Definition Game.cpp:310
void SelectToadsTurnpike()
Definition Game.cpp:739
void SetCourseById(s32 course)
Definition Game.cpp:251
void CM_DisplayBattleBombKart(s32 playerId, s32 primAlpha)
Definition Game.cpp:277
void NextCourse()
Definition Game.cpp:243
void SelectBlockFort()
Definition Game.cpp:744
void CM_SetStaffGhost()
Definition Game.cpp:510
bool IsLuigiRaceway()
Definition Game.cpp:708
void CM_UpdateClouds(s32 arg0, Camera *camera)
Definition Game.cpp:446
Properties * CM_GetProps()
Definition Game.cpp:516
void CM_DrawParticles(s32 cameraId)
Definition Game.cpp:424
void CM_DrawStaticMeshActors()
Definition Game.cpp:366
void SetCourseFromCup()
Definition Game.cpp:597
void HM_DrawIntro(void)
Definition Game.cpp:185
bool IsBansheeBoardwalk()
Definition Game.cpp:711
void SelectMooMooFarm()
Definition Game.cpp:738
void SelectWarioStadium()
Definition Game.cpp:743
struct Actor * CM_AddBaseActor()
Definition Game.cpp:671
bool IsSherbetLand()
Definition Game.cpp:719
bool IsDkJungle()
Definition Game.cpp:725
void CM_RenderCourse(struct UnkStruct_800DC5EC *arg0)
Definition Game.cpp:331
bool IsDoubleDeck()
Definition Game.cpp:724
void CM_RenderCredits()
Definition Game.cpp:347
bool IsMarioRaceway()
Definition Game.cpp:707
bool IsRainbowRoad()
Definition Game.cpp:720
void CM_ClearVehicles(void)
Definition Game.cpp:298
void CM_Waypoints(Player *player, int8_t playerId)
Definition Game.cpp:452
void HM_InitIntro(void)
Definition Game.cpp:177
void CM_DrawObjects(s32 cameraId)
Definition Game.cpp:400
void CM_RunGarbageCollector(void)
Definition Game.cpp:773
void CM_UpdateCourseObjects()
Definition Game.cpp:471
size_t GetCourseIndex()
Definition Game.cpp:235
struct Actor * CM_GetActor(size_t index)
Definition Game.cpp:605
void SelectYoshiValley()
Definition Game.cpp:734
void CM_TickEditor()
Definition Game.cpp:406
void * GetSpecialCup(void)
Definition Game.cpp:764
void * GetBattleCup(void)
Definition Game.cpp:768
void CM_TickObjects()
Definition Game.cpp:386
void CM_DrawActors(Camera *camera, struct Actor *actor)
Definition Game.cpp:359
void CM_InitCourseObjects()
Definition Game.cpp:465
void CM_DrawBombKarts(s32 cameraId)
void CM_ActivateFinalLapLakitu(s32 playerId)
Definition Game.cpp:570
void CM_TickParticles(void)
Definition Game.cpp:418
bool IsToadsTurnpike()
Definition Game.cpp:717
void CM_SetCupIndex(size_t index)
Definition Game.cpp:221
f32 CM_GetWaterLevel(Vec3f pos, Collision *collision)
Definition Game.cpp:701
bool CM_DoesFinishlineExist()
Definition Game.cpp:431
void CM_BeginPlay()
Definition Game.cpp:370
void CM_WhatDoesThisDo(Player *player, int8_t playerId)
Definition Game.cpp:498
bool IsMooMooFarm()
Definition Game.cpp:716
void CM_SomeCollisionThing(Player *player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32 *arg4, f32 *arg5, f32 *arg6, f32 *arg7)
Definition Game.cpp:458
void SelectRainbowRoad()
Definition Game.cpp:742
bool IsBowsersCastle()
Definition Game.cpp:710
void * GetMushroomCup(void)
Definition Game.cpp:752
void Editor_ClearMatrix()
Definition Game.cpp:685
size_t CM_FindActorIndex(struct Actor *actor)
Definition Game.cpp:615
void CM_ActivateFinishLakitu(s32 playerId)
Definition Game.cpp:556
void SelectBowsersCastle()
Definition Game.cpp:732
void SelectPodiumCeremony()
Definition Game.cpp:749
void SelectRoyalRaceway()
Definition Game.cpp:737
void * GetStarCup(void)
Definition Game.cpp:760
void CM_RenderCourseObjects(s32 cameraId)
Definition Game.cpp:478
void SelectFrappeSnowland()
Definition Game.cpp:735
void CM_SpawnFromLevelProps()
Definition Game.cpp:189
bool IsChocoMountain()
Definition Game.cpp:709
void CM_ActivateReverseLakitu(s32 playerId)
Definition Game.cpp:577
bool IsSkyscraper()
Definition Game.cpp:723
s32 CM_GetCrossingOnTriggered(uintptr_t *crossing)
Definition Game.cpp:318
bool IsKoopaTroopaBeach()
Definition Game.cpp:714
u32 WorldPreviousCup(void)
Definition Game.cpp:205
void * GetCup()
Definition Game.cpp:213
void CM_DrawBattleBombKarts(s32 cameraId)
Definition Game.cpp:292
void SelectMarioRaceway()
Definition Game.cpp:729
bool IsPodiumCeremony()
Definition Game.cpp:727
void CM_AddEditorObject(struct Actor *actor, const char *name)
Definition Game.cpp:675
void CM_TickDraw()
void LoadCourse()
Definition Game.cpp:229
void SelectDoubleDeck()
Definition Game.cpp:746
void CM_CreditsSpawnActors()
Definition Game.cpp:492
bool IsYoshiValley()
Definition Game.cpp:712
void SelectKoopaTroopaBeach()
Definition Game.cpp:736
void CM_WhatDoesThisDoAI(Player *player, int8_t playerId)
Definition Game.cpp:504
void * GetFlowerCup(void)
Definition Game.cpp:756
void CM_TickObjects60fps()
Definition Game.cpp:394
void CM_VehicleCollision(s32 playerId, Player *player)
Definition Game.cpp:259
u32 WorldNextCup(void)
Definition Game.cpp:201
bool IsBigDonut()
Definition Game.cpp:726
void CM_SpawnStarterLakitu()
Definition Game.cpp:543
void HM_TickIntro(void)
Definition Game.cpp:181
void SelectBigDonut()
Definition Game.cpp:748
void CM_ActivateSecondLapLakitu(s32 playerId)
Definition Game.cpp:563
void CM_DrawEditor()
Definition Game.cpp:410
void CM_DeleteActor(size_t index)
Definition Game.cpp:629
void PreviousCourse()
Definition Game.cpp:247
bool IsKalimariDesert()
Definition Game.cpp:718
void CM_BombKartsWaypoint(s32 cameraId)
Definition Game.cpp:267
void CM_ScrollingTextures()
Definition Game.cpp:527
Properties * CM_GetPropsCourseId(s32 courseId)
Definition Game.cpp:523
void SelectLuigiRaceway()
Definition Game.cpp:730
void CM_ActorCollision(Player *player, struct Actor *actor)
Definition Game.cpp:693
void SelectBansheeBoardwalk()
Definition Game.cpp:733
void CM_SetCup(void *)
Definition Game.cpp:209
size_t GetCupCursorPosition()
Definition Game.cpp:584
void CM_TickActors()
Definition Game.cpp:353
void SetCupCursorPosition(size_t position)
Definition Game.cpp:588
void CM_CrossingTrigger()
Definition Game.cpp:302
void Editor_AddLight(s8 *direction)
Definition Game.cpp:679
size_t GetCupSize()
Definition Game.cpp:593
void CM_LoadTextures()
Definition Game.cpp:325
const char * GetCupName(void)
Definition Game.cpp:225
void SelectKalimariDesert()
Definition Game.cpp:740
bool IsFrappeSnowland()
Definition Game.cpp:713
void SelectSherbetLand()
Definition Game.cpp:741
void SetCourse(const char *name)
Definition Game.cpp:239
bool IsRoyalRaceway()
Definition Game.cpp:715
void * GetCourse(void)
Definition Game.cpp:601
f32 Vec3f[3]
Definition common_structs.h:10
Definition actor_types.h:124
Vec3f pos
Definition actor_types.h:133
Definition camera.h:27
Definition common_structs.h:147
Definition common_structs.h:264
Definition Course.h:64
Definition code_800029B0.h:9