Mario Kart 64
Loading...
Searching...
No Matches
code_80005FD0.h
Go to the documentation of this file.
1#ifndef CODE_80005FD0_H
2#define CODE_80005FD0_H
3
4#include "vehicles.h"
5#include "camera.h"
6#include "waypoints.h"
8
10 /* 0x0 */ u16 unk0;
11 /* 0x2 */ s16 ffff;
12 /* 0x4 */ s16 timer; // confirm?
13 /* 0x6 */ s16 laps; // confirm?
14 /* 0x8 */ s32 blank;
15 /* 0xC */ s32 unkC;
16};
17
19 /* 0x00 */ s32 unk0;
20 /* 0x04 */ s32 unk4;
21 /* 0x08 */ s32 unk8;
22 /* 0x0C */ u16 unkC;
23 /* 0x0E */ u16 actorIndex;
24 /* 0x10 */ s16 unk10;
25 /* 0x12 */ // s16 compilerPadding;
26 /* 0x14 */ u32 unk14;
27 /* 0x18 */ s32 unk18;
28}; // size = 0x1C
29
30typedef struct {
31 /* 0x00 */ f32 unk0;
32 /* 0x04 */ f32 unk4;
33 /* 0x08 */ f32 unk8;
34 /* 0x0C */ f32 unkC;
35} Test; // size = 0x10
36
37// Something related to CPU item usage
38typedef struct {
39 /* 0x00 */ s16 unk_00;
40 /* 0x02 */ s16 actorIndex;
41 /* 0x04 */ s16 unk_04;
42 /* 0x06 */ s16 unk_06;
43 /* 0x08 */ s16 unk_08;
44 /* 0x0A */ s16 unk_0A;
45 /* 0x0C */ s16 unk_0C;
46 /* 0x0E */ s16 unk_0E;
47} D_801642D8_entry; // size = 0x10
48
55
56typedef struct {
59} Path2D;
60
61/* Function Prototypes */
63
68void set_places(void);
69
70void func_800070F4(void);
71void func_800074D4(void);
75
78void func_80008DC0(s32);
80void func_80008F38(s32);
81
82void func_80009000(s32);
86void update_vehicles(void);
90
95void func_8000B95C(s32, u16, s32);
96void func_8000BA14(u16, f32, f32, s16);
97void func_8000BBD8(u16, f32, s16);
99
107
113void func_8000D438(s32, u16);
118void func_8000DF8C(s32);
119
125void func_8000EEDC(void);
126void generate_player_smoke(void);
127
128void func_8000F0E0(void);
129void func_8000F124(void);
130void func_8000F2BC(TrackWaypoint*, size_t);
131void func_8000F2DC(void);
132void func_8000F628(void);
133
134void func_800100F0(s32);
135void func_80010218(s32);
137void func_800107C4(s32);
139void func_80010DBC(s32);
140void func_80010E6C(s32);
143
154
155void generate_train_waypoints(void);
156void generate_ferry_waypoints(void);
158void spawn_course_vehicles(void);
160void init_vehicles_trains(void);
162void update_vehicle_trains(void);
163void func_80012DC0(s32, Player*);
164
165void func_80013054(void);
167void init_vehicles_ferry(void);
169void func_80013854(Player*);
174
177void init_vehicles_box_trucks(void);
179void func_800148C4(s32, Player*);
180void func_8001490C(s32);
183void func_80014A18(s32, Player*);
184void func_80014A60(s32);
185void init_vehicles_trucks(void);
187void func_80014B6C(s32, Player*);
188void func_80014BB4(s32);
189void init_vehicles_cars(void);
190void update_vehicle_cars(void);
191void func_80014CC0(s32, Player*);
192void func_80014D08(s32);
193void func_80014D30(s32, s32);
194void func_80014DE4(s32);
196
198void func_8001530C(void);
201void func_80015544(s32, f32, s32, s32);
203void func_80015A9C(s32, f32, s32, s16);
205
206void func_800162CC(s32, f32, s32, s16);
209
213
217
220void func_8001968C(void);
223void func_80019890(s32, s32);
224void func_80019B50(s32, u16);
225void func_80019C50(s32);
227void func_80019DE4(void);
228void func_80019DF4(void);
229void func_80019E58(void);
230void func_80019ED0(void);
231void func_80019FB4(s32);
232
234void func_8001A0DC(u16*, Camera*, Player*, s8, s32);
235void func_8001A124(s32, s32);
237void func_8001A348(s32, f32, s32);
238void func_8001A3D8(s32, f32, s32);
239void func_8001A450(s32, s32, s32);
240void func_8001A518(s32, s32, s32);
242void func_8001AAAC(s16, s16, s16);
243void func_8001AB00(void);
246void func_8001ABEC(struct struct_801642D8*);
248
249void func_8001BE78(void);
250
251void func_8001C05C(void);
252void func_8001C14C(void);
253void func_8001C3C4(s32);
254void func_8001C42C(void);
255
256/* This is where I'd put my static data, if I had any */
257
258extern Collision D_80162E70;
259extern s16 D_80162EB0; // Possibly a float.
260extern s16 D_80162EB2; // possibly [3]
262extern s16 D_80162F10[];
263extern s16 D_80162F50[];
264extern Vec3f D_80162FA0;
265extern Vec3f D_80162FB0;
266extern Vec3f D_80162FC0;
267extern s16 gTrainSmokeTimer;
268extern s16 D_80162FD0;
269extern f32 gCourseCompletionPercentByRank[]; // D_80162FD8
270extern s16 D_80162FF8[];
271extern s16 D_80163010[];
272extern f32 D_80163028[];
273extern s16 D_80163050[];
274extern f32 D_80163068[];
275extern f32 D_80163090[];
276extern s32 D_801630B8[];
277extern u16 D_801630E0;
278extern s16 D_801630E2;
279extern s16 D_801630E8[];
280extern s16 gFerrySmokeTimer;
281extern s32 D_80163100[];
282extern s32 D_80163128[];
283extern s32 D_80163150[];
284extern f32 D_80163178[];
285extern f32 D_801631A0[];
286extern s16 D_801631C8;
287extern s32 D_801631CC;
290extern s16* D_801631D8;
291extern u16 D_801631E0[];
292extern u16 D_801631F8[];
293extern f32 D_8016320C;
294extern f32 D_80163210[];
295extern s32 D_80163238;
296extern u16 D_80163240[];
297extern u16 D_80163258[];
298extern u16 D_80163270[];
299extern s32 D_80163288[];
300// Exact pointer type unknown
305
307
308extern s16 D_80163300[];
309extern u16 D_80163318[];
310extern u16 D_80163330[];
311extern u16 D_80163344[];
312extern u16 D_80163348[];
313extern u16 D_8016334C[];
315
316enum {
322
323extern s32 D_80163368[];
324extern s32 D_80163378;
325extern s32 D_8016337C;
326extern s16 D_80163380[];
327extern s16 D_80163398[];
328extern s16 D_801633B0[];
329extern s16 D_801633C8[];
330extern s16 D_801633E0[];
331extern s16 D_801633F8[];
332extern s16 D_80163410[];
333extern f32 D_80163418[];
334extern f32 D_80163428[];
335extern f32 D_80163438[];
336extern s32 D_80163448;
337extern f32 D_8016344C;
338extern f32 D_80163450[];
339extern s16 D_80163478;
340// 0 or 1, only 1 when when in extra (mirror) mode
341extern s16 D_8016347A;
342extern s16 D_8016347C;
343extern s16 D_8016347E;
344extern s32 D_80163480;
345extern s32 D_80163484;
346extern s32 D_80163488;
347extern s16 D_8016348C;
348extern s16 D_80163490[];
349extern s16 D_801634A8[];
350extern s16 D_801634C0[];
351extern s16 bStopAICrossing[];
352extern s16 D_801634EC;
353extern s32 D_801634F0;
354extern s32 D_801634F4;
355extern Test D_801634F8[];
360extern s32 D_80163DD8[];
363extern s16 D_80164358;
364extern s16 D_8016435A;
365extern s16 D_8016435C;
366extern s16 gGPCurrentRacePlayerIdByRank[]; // D_80164360
367extern s16 D_80164378[];
368extern s32 gLapCountByPlayerId[]; // D_80164390
369extern s32 gGPCurrentRaceRankByPlayerId[]; // D_801643B8
370extern s32 D_801643E0[];
371extern s32 D_80164408[];
372extern u16 D_80164430;
374extern s32 D_80164450[];
375extern s16 D_80164478[];
376extern s32 D_8016448C;
377extern f32 D_80164498[];
378extern f32 gLapCompletionPercentByPlayerId[]; // D_801644A8
379extern f32 gCourseCompletionPercentByPlayerId[]; // D_801644D0
380extern s16 D_801644F8[];
381extern f32 D_80164510[];
382extern s16 D_80164538[];
383extern s32 D_801645D0[];
384extern s32 D_801645E8[];
385extern f32 D_801645F8[];
386extern s32 D_80164608[];
387extern f32 D_80164618[];
388extern s32 D_80164628[];
389extern f32 D_80164638[];
390extern f32 D_80164648[];
391extern f32 D_80164658[];
392extern s16 D_80164670[];
393extern s16 D_80164678[];
394extern s16 D_80164680[];
395extern f32 D_80164688[];
396extern f32 D_80164698;
397extern f32 D_8016469C;
398extern f32 D_801646A0;
399extern s16 D_801646C0[];
400extern u32 D_801646C8;
401extern u16 D_801646CC;
403
404// See bss_80005FD0.s
408extern u16 D_801637BE;
409extern u16 D_80163E2A;
410
411// extern Gfx D_0D0076F8[];
412
413#endif
void func_800188F4(Camera *, Player *, s32, s32)
void func_8001C14C(void)
Definition code_80005FD0.c:7672
void spawn_vehicle_on_road(VehicleStuff *)
Definition code_80005FD0.c:4374
s16 D_80163490[]
Definition code_80005FD0.c:129
f32 D_80163438[]
Definition code_80005FD0.c:117
void func_8000EEDC(void)
Definition code_80005FD0.c:3306
Vec3f D_80162FA0
Definition code_80005FD0.c:50
void kart_ai_decisions_branch_item(s32, s16 *, s32)
u16 gPreviousKartAIBehaviourId[]
Definition code_80005FD0.c:96
s32 D_80164608[]
Definition code_80005FD0.c:185
s32 generate_2d_path(Path2D *, TrackWaypoint *, s32)
Definition code_80005FD0.c:4095
D_801642D8_entry D_801642D8[]
Definition code_80005FD0.c:151
void func_80009000(s32)
Definition code_80005FD0.c:1340
void func_80008F38(s32)
Definition code_80005FD0.c:1329
s16 func_8000D6D0(Vec3f, s16 *, f32, f32, s16, s16)
Definition code_80005FD0.c:2734
s16 D_80164670[]
Definition code_80005FD0.c:192
void func_800180F0(Camera *, Player *, s32, s32)
KartAIBehaviour * sCurrentKartAIBehaviour
Definition code_80005FD0.c:94
s32 D_8016448C
Definition code_80005FD0.h:407
s16 D_801633C8[]
Definition code_80005FD0.c:111
void func_80017720(s32, f32, s32, s16)
void initialize_toads_turnpike_vehicle(f32, f32, s32, s32, VehicleStuff *, TrackWaypoint *)
Definition code_80005FD0.c:4966
Collision D_80162E70
Definition code_80005FD0.c:35
u16 sCrossingActiveTimer[]
Definition code_80005FD0.c:141
void func_8001ABEC(struct struct_801642D8 *)
Definition code_80005FD0.c:7113
s16 D_80164680[]
Definition code_80005FD0.c:194
s16 func_8000D2B4(f32, f32, f32, s16, s32)
Definition code_80005FD0.c:2625
void func_800148C4(s32, Player *)
Definition code_80005FD0.c:5327
void init_vehicles_cars(void)
Definition code_80005FD0.c:5392
void func_80013F7C(s32, Player *, VehicleStuff *, f32, f32, s32, u32)
Definition code_80005FD0.c:5111
void func_80015544(s32, f32, s32, s32)
Definition code_80005FD0.c:5630
void spawn_course_vehicles(void)
Definition code_80005FD0.c:4398
void func_8000F2BC(TrackWaypoint *, size_t)
Definition code_80005FD0.c:3416
s16 func_8000CC88(f32, f32, f32, Player *, s32, s32 *)
Definition code_80005FD0.c:2504
s16 D_801633B0[]
Definition code_80005FD0.c:110
s16 D_801634C0[]
Definition code_80005FD0.c:131
void func_8000F2DC(void)
Definition code_80005FD0.c:3421
s32 gVehicle2DWaypointLength
Definition code_80005FD0.c:138
void generate_player_smoke(void)
Definition code_80005FD0.c:3317
TrackWaypoint * D_801631D4
Definition code_80005FD0.c:82
s32 func_8001A310(s32, s32)
Definition code_80005FD0.c:6869
s16 D_80163398[]
Definition code_80005FD0.c:109
void func_8001A0A4(u16 *, Camera *, Player *, s8, s32)
s32 add_red_shell_in_unexpired_actor_list(s32)
Definition code_80005FD0.c:3269
void func_8000F0E0(void)
Definition code_80005FD0.c:3361
void kart_ai_behaviour_end(s32, Player *)
Definition code_80005FD0.c:4254
void func_8001A124(s32, s32)
Definition code_80005FD0.c:6818
s16 D_80164478[]
Definition code_80005FD0.c:164
void kart_ai_behaviour(s32)
Definition code_80005FD0.c:4291
f32 D_80164658[]
Definition code_80005FD0.c:190
void func_8001C3C4(s32)
Definition code_80005FD0.c:7722
u16 D_80163348[]
Definition code_80005FD0.c:102
f32 func_800145A8(s16, f32, s16)
Definition code_80005FD0.c:5249
s16 D_801644F8[]
Definition code_80005FD0.c:170
void func_800178F4(Camera *, Player *, s32, s32)
void func_80014BB4(s32)
Definition code_80005FD0.c:5388
UnkStruct_46D0 D_801646D0[]
Definition code_80005FD0.c:211
void func_80014CC0(s32, Player *)
Definition code_80005FD0.c:5411
void func_80015314(s32, f32, s32)
void func_8000D438(s32, u16)
Definition code_80005FD0.c:2669
s16 func_8000CD24(f32, f32, f32, s16, Player *, s32, s32)
Definition code_80005FD0.c:2518
void func_8000BBD8(u16, f32, s16)
Definition code_80005FD0.c:2217
void update_vehicle_tanker_trucks(void)
Definition code_80005FD0.c:5376
void func_80014B6C(s32, Player *)
Definition code_80005FD0.c:5383
void func_8001C05C(void)
Definition code_80005FD0.c:7648
void func_80017F10(s32, f32, s32, s16)
void func_80010DBC(s32)
Definition code_80005FD0.c:3884
void func_800162CC(s32, f32, s32, s16)
Definition code_80005FD0.c:5825
void init_vehicles_school_buses(void)
Definition code_80005FD0.c:5336
s16 D_80162F50[]
Definition code_80005FD0.c:45
void func_8001490C(s32)
Definition code_80005FD0.c:5332
Vec3f D_80162FC0
Definition code_80005FD0.c:52
u16 D_801637BE
s16 func_8000D940(Vec3f, s16 *, f32, f32, s16)
Definition code_80005FD0.c:2800
f32 D_8016320C
Definition code_80005FD0.c:87
void func_80013054(void)
Definition code_80005FD0.c:4745
u16 gNearestWaypointByPlayerId[]
Definition code_80005FD0.c:162
void init_vehicles_box_trucks(void)
Definition code_80005FD0.c:5310
s32 D_80163448
Definition code_80005FD0.c:118
f32 D_80164688[]
Definition code_80005FD0.c:195
void func_8001A348(s32, f32, s32)
Definition code_80005FD0.c:6876
f32 func_80009258(s32, f32, f32)
void init_vehicles_ferry(void)
Definition code_80005FD0.c:4800
void update_vehicle_box_trucks(void)
Definition code_80005FD0.c:5320
void func_8000BA14(u16, f32, f32, s16)
Definition code_80005FD0.c:2180
u16 D_801630E0
Definition code_80005FD0.c:70
Vec3f D_80162FB0
Definition code_80005FD0.c:51
void func_8001530C(void)
Definition code_80005FD0.c:5566
f32 D_80164618[]
Definition code_80005FD0.c:186
void func_8001A518(s32, s32, s32)
Definition code_80005FD0.c:6913
void func_8001577C(Camera *, UNUSED Player *, s32, s32)
s16 D_80163300[]
Definition code_80005FD0.c:98
void func_8000CBA4(f32, f32, f32, s16 *, s32)
s16 func_8000C884(f32, f32, f32, s16, s32, u16)
Definition code_80005FD0.c:2391
void func_8001A0DC(u16 *, Camera *, Player *, s8, s32)
Definition code_80005FD0.c:6813
void func_80014A60(s32)
Definition code_80005FD0.c:5360
f32 D_80164648[]
Definition code_80005FD0.c:189
KartAIBehaviour * gCoursesKartAIBehaviour[]
Definition code_80005FD0.c:39
void set_places(void)
Definition code_80005FD0.c:701
struct unexpiredActors gUnexpiredActorsList[]
Definition code_80005FD0.c:150
u16 D_80163318[]
Definition code_80005FD0.c:99
s16 D_80164538[]
Definition code_80005FD0.c:172
void func_800074D4(void)
Definition code_80005FD0.c:844
f32 D_801631A0[]
Definition code_80005FD0.c:78
void func_8001968C(void)
Definition code_80005FD0.c:6560
void func_800090F0(s32, Player *)
Definition code_80005FD0.c:1377
f32 D_80163028[]
Definition code_80005FD0.c:65
s32 D_80163238
Definition code_80005FD0.c:89
s32 D_801630B8[]
Definition code_80005FD0.c:69
void func_8001A588(u16 *, Camera *, Player *, s8, s32)
void func_8000F628(void)
Definition code_80005FD0.c:3494
s32 add_actor_in_unexpired_actor_list(s32, s16)
Definition code_80005FD0.c:3248
f32 func_8000B874(f32, f32, u16, s32)
Definition code_80005FD0.c:2143
void func_80019FB4(s32)
Definition code_80005FD0.c:6782
s16 D_8016435A
Definition code_80005FD0.c:153
s16 D_80162F10[]
Definition code_80005FD0.c:44
void reset_kart_ai_behaviour(s32)
Definition code_80005FD0.c:4182
s32 func_80006018(f32, f32, f32, f32, f32, f32, f32, f32)
Definition code_80005FD0.c:564
s16 D_80162FF8[]
Definition code_80005FD0.c:63
s32 gLapCountByPlayerId[]
Definition code_80005FD0.c:157
s16 D_80162EB2
Definition code_80005FD0.c:37
f32 gLapCompletionPercentByPlayerId[]
Definition code_80005FD0.c:168
f32 func_80010F40(f32, f32, f32, s32, s32)
void adjust_position_by_angle(Vec3f, Vec3f, s16)
Definition code_80005FD0.c:582
s16 find_closest_waypoint_track_section(f32, f32, f32, u16, s32 *)
Definition code_80005FD0.c:2292
f32 D_8016344C
Definition code_80005FD0.c:119
s16 * D_801631D8
Definition code_80005FD0.c:83
void delete_actor_in_unexpired_actor_list(s32)
Definition code_80005FD0.c:3293
u16 D_80163240[]
Definition code_80005FD0.c:90
void func_800099EC(s32, Player *)
void func_80019118(s32, f32, s32, s16)
void update_vehicle_paddle_boats(void)
Definition code_80005FD0.c:4829
u16 D_80163258[]
Definition code_80005FD0.c:91
s16 func_8000D24C(f32, f32, f32, s32 *)
Definition code_80005FD0.c:2617
void func_800100F0(s32)
Definition code_80005FD0.c:3663
f32 func_80010FA0(f32, f32, f32, s32, s32)
s16 D_801631C8
Definition code_80005FD0.c:79
TrackWaypoint * D_801631D0
Definition code_80005FD0.c:81
s16 D_8016347A
Definition code_80005FD0.c:122
u16 gSpeedKartAIBehaviour[]
Definition code_80005FD0.c:104
void func_80015C94(Camera *, Player *, s32, s32)
f32 D_80163450[]
Definition code_80005FD0.c:120
void func_8001BE78(void)
Definition code_80005FD0.c:7609
void func_80015A9C(s32, f32, s32, s16)
Definition code_80005FD0.c:5716
void update_vehicle_school_bus(void)
Definition code_80005FD0.c:5348
void func_80016C3C(s32, f32, s32)
f32 func_8000D3B8(s32)
Definition code_80005FD0.c:2646
s16 D_80163478
Definition code_80005FD0.c:121
void calculate_camera_up_vector(Camera *, s32)
Definition code_80005FD0.c:5535
f32 func_80013C74(s16, s16)
Definition code_80005FD0.c:5012
s16 D_80163010[]
Definition code_80005FD0.c:64
s32 process_path_data(TrackWaypoint *, TrackWaypoint *)
Definition code_80005FD0.c:4063
void func_80019E58(void)
Definition code_80005FD0.c:6753
s32 D_801634F0
Definition code_80005FD0.c:134
void func_8000F124(void)
Definition code_80005FD0.c:3369
s32 func_8000B7E4(s32, u16)
void func_80019760(Camera *, UNUSED Player *, s32, s32)
void func_8000B95C(s32, u16, s32)
Definition code_80005FD0.c:2169
s16 find_closest_vehicles_waypoint(f32, f32, f32, s16)
s32 D_80164628[]
Definition code_80005FD0.c:187
s16 func_80010CB0(s32, s32)
Definition code_80005FD0.c:3865
void func_8001AAAC(s16, s16, s16)
Definition code_80005FD0.c:7057
s32 D_80163128[]
Definition code_80005FD0.c:75
f32 D_80163418[]
Definition code_80005FD0.c:115
s32 add_blue_shell_in_unexpired_actor_list(s32)
Definition code_80005FD0.c:3285
void func_800070F4(void)
Definition code_80005FD0.c:792
f32 D_8016469C
Definition code_80005FD0.c:197
void func_80019D2C(Camera *, Player *, s32)
Definition code_80005FD0.c:6720
void generate_ferry_waypoints(void)
Definition code_80005FD0.c:4360
s16 D_801630E2
Definition code_80005FD0.c:71
s32 D_801631CC
Definition code_80005FD0.c:80
Path2D * gVehicle2DWaypoint
Definition code_80005FD0.c:137
s16 D_80162FD0
Definition code_80005FD0.c:55
void func_80009B60(s32)
f32 D_80163178[]
Definition code_80005FD0.c:77
s16 D_801646C0[]
Definition code_80005FD0.c:208
void func_80019B50(s32, u16)
Definition code_80005FD0.c:6668
void update_vehicle_cars(void)
Definition code_80005FD0.c:5404
void copy_courses_kart_ai_behaviour(void)
Definition code_80005FD0.c:4169
s32 D_80163DD8[]
Definition code_80005FD0.c:147
s32 func_8000B820(s32)
Definition code_80005FD0.c:2135
void func_800065D0(s32, Player *)
Definition code_80005FD0.c:667
s32 D_801634F4
Definition code_80005FD0.c:135
void func_80019DE4(void)
Definition code_80005FD0.c:6737
void func_80019ED0(void)
Definition code_80005FD0.c:6764
u16 D_80163E2A
s32 add_green_shell_in_unexpired_actor_list(s32)
Definition code_80005FD0.c:3277
void func_800107C4(s32)
Definition code_80005FD0.c:3810
s16 D_80163410[]
Definition code_80005FD0.c:114
void func_80008DC0(s32)
Definition code_80005FD0.c:1295
void func_80014D30(s32, s32)
Definition code_80005FD0.c:5419
void func_80010E6C(s32)
Definition code_80005FD0.c:3896
void func_80018718(s32, f32, s32, s16)
s16 gGPCurrentRacePlayerIdByRank[]
Definition code_80005FD0.c:155
void update_vehicle_trains(void)
Definition code_80005FD0.c:4612
s32 D_801645E8[]
Definition code_80005FD0.c:183
void func_80019DF4(void)
Definition code_80005FD0.c:6741
s16 D_801633F8[]
Definition code_80005FD0.c:113
f32 D_80164638[]
Definition code_80005FD0.c:188
f32 D_80164498[]
Definition code_80005FD0.c:167
s32 D_80163100[]
Definition code_80005FD0.c:74
s16 gTrainSmokeTimer
Definition code_80005FD0.c:53
s16 D_8016348C
Definition code_80005FD0.c:128
s16 D_801634A8[]
Definition code_80005FD0.c:130
u16 D_801631F8[]
Definition code_80005FD0.c:86
void sync_train_components(TrainCarStuff *, s16)
sync the train components vehicle with the actor
Definition code_80005FD0.c:4596
u16 D_80163270[]
Definition code_80005FD0.c:92
u16 D_801631E0[]
Definition code_80005FD0.c:85
@ SPEED_KART_AI_BEHAVIOUR_FAST
Definition code_80005FD0.h:318
@ SPEED_KART_AI_BEHAVIOUR_SLOW
Definition code_80005FD0.h:319
@ SPEED_KART_AI_BEHAVIOUR_NORMAL
Definition code_80005FD0.h:317
@ SPEED_KART_AI_BEHAVIOUR_MAX
Definition code_80005FD0.h:320
void func_800146B8(s32, s32, VehicleStuff *)
Definition code_80005FD0.c:5288
void func_8001933C(Camera *, UNUSED Player *, s32, s32)
f32 D_801645F8[]
Definition code_80005FD0.c:184
void func_80007FA4(s32, Player *, f32)
Definition code_80005FD0.c:1010
Test D_801634F8[]
Definition code_80005FD0.c:136
void func_80014A18(s32, Player *)
Definition code_80005FD0.c:5355
u16 isCrossingTriggeredByIndex[]
Definition code_80005FD0.c:140
s32 D_801643E0[]
Definition code_80005FD0.h:406
void kart_ai_behaviour_start(s32, Player *)
Definition code_80005FD0.c:4188
u16 D_80163330[]
Definition code_80005FD0.c:100
s16 bStopAICrossing[]
Definition code_80005FD0.c:132
s16 D_80163380[]
Definition code_80005FD0.c:108
@ KART_AI_BEHAVIOUR_STATE_RUNNING
Definition code_80005FD0.h:306
@ KART_AI_BEHAVIOUR_STATE_START
Definition code_80005FD0.h:306
@ KART_AI_BEHAVIOUR_STATE_NONE
Definition code_80005FD0.h:306
void generate_train_waypoints(void)
Definition code_80005FD0.c:4346
s16 D_8016347E
Definition code_80005FD0.c:124
s32 D_80163368[]
Definition code_80005FD0.c:105
s16 D_80164358
Definition code_80005FD0.c:152
s16 D_801633E0[]
Definition code_80005FD0.c:112
s32 func_800088D8(s32, s16, s16)
f32 func_80014EE4(f32, s32)
Definition code_80005FD0.c:5456
s16 D_8016435C
Definition code_80005FD0.c:154
void reset_kart_ai_behaviour_none(s32)
Definition code_80005FD0.c:4176
s32 D_8016337C
Definition code_80005FD0.c:107
f32 D_801646A0
Definition code_80005FD0.c:198
u32 D_801646C8
Definition code_80005FD0.c:209
s32 D_80163150[]
Definition code_80005FD0.c:76
s32 D_80164450[]
Definition code_80005FD0.c:163
f32 gCourseCompletionPercentByRank[]
Definition code_80005FD0.h:405
s32 D_80164408[]
Definition code_80005FD0.c:160
void func_8001A450(s32, s32, s32)
Definition code_80005FD0.c:6897
f32 D_80163428[]
Definition code_80005FD0.c:116
void func_80015390(Camera *, Player *, s32)
f32 D_80163210[]
Definition code_80005FD0.c:88
s16 D_80164678[]
Definition code_80005FD0.c:193
s32 set_vehicle_render_distance_flags(Vec3f, f32, s32)
Definition code_80005FD0.c:603
void func_8001ABE0(s32, D_801642D8_entry *)
s16 D_801630E8[]
Definition code_80005FD0.c:72
void check_ai_crossing_distance(s32)
Definition code_80005FD0.c:4779
void func_80014DE4(s32)
Definition code_80005FD0.c:5429
void func_8001A3D8(s32, f32, s32)
Definition code_80005FD0.c:6886
void func_80019C50(s32)
Definition code_80005FD0.c:6701
void func_80007D04(s32, Player *)
Definition code_80005FD0.c:927
void func_80016494(Camera *, Player *, s32, s32)
u16 gKartAIBehaviourState[]
Definition code_80005FD0.c:97
s32 func_80008E58(s32, s32)
Definition code_80005FD0.c:1305
f32 D_80164510[]
Definition code_80005FD0.c:171
void update_vehicle_follow_waypoint(VehicleStuff *)
Definition code_80005FD0.c:5045
s16 func_8000BD94(f32, f32, f32, s32)
Definition code_80005FD0.c:2258
s16 gFerrySmokeTimer
Definition code_80005FD0.c:73
void func_8001C42C(void)
Definition code_80005FD0.c:7734
f32 D_80164698
Definition code_80005FD0.c:196
s16 func_8000D33C(f32, f32, f32, s16, s32)
Definition code_80005FD0.c:2636
void set_bomb_kart_spawn_positions(void)
Definition code_80005FD0.c:2923
s16 get_angle_between_waypoints(Vec3f, Vec3f)
Definition code_80005FD0.c:552
u16 D_8016334C[]
Definition code_80005FD0.c:103
void func_80013854(Player *)
Definition code_80005FD0.c:4931
s32 D_80163484
Definition code_80005FD0.c:126
s32 gGPCurrentRaceRankByPlayerId[]
Definition code_80005FD0.c:158
void func_80011EC0(s32, Player *, s32, u16)
void kart_ai_use_item_strategy(s32)
void func_80012DC0(s32, Player *)
Definition code_80005FD0.c:4688
u16 gCurrentKartAIBehaviourId[]
Definition code_80005FD0.c:95
void func_8000929C(s32, Player *)
f32 D_80163068[]
Definition code_80005FD0.c:67
s32 func_80007BF8(u16, u16, u16, u16, u16)
Definition code_80005FD0.c:911
s16 D_801634EC
Definition code_80005FD0.c:133
void func_8000DF8C(s32)
Definition code_80005FD0.c:2981
s32 D_80163480
Definition code_80005FD0.c:125
s32 D_801645D0[]
Definition code_80005FD0.c:181
s16 update_vehicle_following_waypoint(Vec3f, s16 *, f32)
Definition code_80005FD0.c:2866
s32 D_80163288[]
Definition code_80005FD0.c:93
u16 D_801646CC
Definition code_80005FD0.c:210
s16 D_80163050[]
Definition code_80005FD0.c:66
void set_vehicle_pos_waypoint(TrainCarStuff *, Path2D *, u16)
Definition code_80005FD0.c:4509
s16 D_80164378[]
Definition code_80005FD0.c:156
s16 find_closest_waypoint_with_previous_waypoint(f32, f32, f32, s16, s32)
Definition code_80005FD0.c:2432
s32 D_80163378
Definition code_80005FD0.c:106
void func_80019890(s32, s32)
Definition code_80005FD0.c:6602
s16 D_80162EB0
Definition code_80005FD0.c:36
f32 gCourseCompletionPercentByPlayerId[]
Definition code_80005FD0.c:169
void func_800098FC(s32, Player *)
Definition code_80005FD0.c:1559
s32 D_80163488
Definition code_80005FD0.c:127
void init_vehicles_trains(void)
Definition code_80005FD0.c:4525
void update_vehicles(void)
Definition code_80005FD0.c:1523
u16 D_80164430
Definition code_80005FD0.c:161
void func_80010218(s32)
Definition code_80005FD0.c:3707
s16 D_8016347C
Definition code_80005FD0.c:123
void func_8001969C(s32, f32, s32, s16)
s32 func_80011014(TrackWaypoint *, TrackWaypoint *, s32, s32)
void func_8000B140(s32)
void init_vehicles_trucks(void)
Definition code_80005FD0.c:5364
void func_80008424(s32, f32, Player *)
Definition code_80005FD0.c:1055
u16 D_80163344[]
Definition code_80005FD0.c:101
f32 D_80163090[]
Definition code_80005FD0.c:68
void func_80014D08(s32)
Definition code_80005FD0.c:5415
void func_8001AB00(void)
Definition code_80005FD0.c:7065
void func_8000CBF8(f32, f32, f32, s16 *, s32)
f32 func_80010480(s32, u16)
Definition code_80005FD0.c:3758
f32 Vec3f[3]
Definition common_structs.h:6
#define NUM_PLAYERS
Definition defines.h:104
#define UNUSED
Definition macros.h:23
Definition camera.h:26
Definition common_structs.h:132
Definition code_80005FD0.h:38
s16 actorIndex
Definition code_80005FD0.h:40
s16 unk_0A
Definition code_80005FD0.h:44
s16 unk_0E
Definition code_80005FD0.h:46
s16 unk_00
Definition code_80005FD0.h:39
s16 unk_0C
Definition code_80005FD0.h:45
s16 unk_08
Definition code_80005FD0.h:43
s16 unk_06
Definition code_80005FD0.h:42
s16 unk_04
Definition code_80005FD0.h:41
Definition common_structs.h:29
Definition code_80005FD0.h:56
s16 z
Definition code_80005FD0.h:58
s16 x
Definition code_80005FD0.h:57
Definition common_structs.h:249
Definition code_80005FD0.h:30
f32 unkC
Definition code_80005FD0.h:34
f32 unk4
Definition code_80005FD0.h:32
f32 unk0
Definition code_80005FD0.h:31
f32 unk8
Definition code_80005FD0.h:33
Definition waypoints.h:6
Definition vehicles.h:38
Definition code_80005FD0.h:49
s16 unk4
Definition code_80005FD0.h:52
s16 unk2
Definition code_80005FD0.h:51
u16 unk6
Definition code_80005FD0.h:53
s16 unk0
Definition code_80005FD0.h:50
Definition vehicles.h:75
Definition code_80005FD0.h:9
u16 unk0
Definition code_80005FD0.h:10
s16 timer
Definition code_80005FD0.h:12
s16 laps
Definition code_80005FD0.h:13
s32 blank
Definition code_80005FD0.h:14
s32 unkC
Definition code_80005FD0.h:15
s16 ffff
Definition code_80005FD0.h:11
Definition code_80005FD0.h:18
u16 actorIndex
Definition code_80005FD0.h:23
s32 unk18
Definition code_80005FD0.h:27
u16 unkC
Definition code_80005FD0.h:22
s32 unk8
Definition code_80005FD0.h:21
s16 unk10
Definition code_80005FD0.h:24
u32 unk14
Definition code_80005FD0.h:26
s32 unk4
Definition code_80005FD0.h:20
s32 unk0
Definition code_80005FD0.h:19
signed int s32
Definition ultratypes.h:15
unsigned int u32
Definition ultratypes.h:16
signed char s8
Definition ultratypes.h:11
signed short int s16
Definition ultratypes.h:13
float f32
Definition ultratypes.h:34
unsigned short int u16
Definition ultratypes.h:14