Mario Kart 64
Loading...
Searching...
No Matches
ceremony_and_credits.h
Go to the documentation of this file.
1#ifndef CEREMONY_AND_CREDITS_H
2#define CEREMONY_AND_CREDITS_H
3
4#include <common_structs.h>
5#include "camera.h"
6
11
13 s8 unk0; // index
14 s8 unk1; // speed
15 u16 unk2; // point
19};
20
43
44// Cinematic camera? Camera rails?
45// CutsceneVariable?
51typedef struct {
52 /* 0x00 */ Vec3f pos;
53 /* 0x0C */ Vec3f lookAt;
54 /* 0x18 */ f32 unk18;
55 /* 0x1C */ u8 cutscene;
56 /* 0x20 */ f32 unk20;
57 /* 0x24 */ Vec3f unk24;
58 /* 0x30 */ Vec3f unk30;
59 /* 0x3C */ Vec3f unk3C;
60 /* 0x48 */ Vec3s unk48;
61 /* 0x4E */ Vec3s unk4E;
62 /* 0x54 */ Vec3s unk54;
63 /* 0x5A */ Vec3s unk5A;
64 /* 0x60 */ s16 unk60;
65 /* 0x62 */ s16 unk62;
66 /* 0x64 */ f32 unk64;
67 /* 0x68 */ f32 unk68;
68 /* 0x6C */ s16 unk6C;
69 /* 0x6E */ s16 unk6E;
70} CinematicCamera; // size = 0x70
71
81
86
94
100
101struct Cutscene {
102 /* 0x0 */ void (*shot)(CinematicCamera*);
103 /* 0x4 */ s16 duration;
104 /* 0x6 */ // s16 pad;
105}; /* size = 0x8 */
106
107typedef void (*CameraEvent)(CinematicCamera* c);
109
110/* Function Prototypes */
111
112void init_cinematic_camera(void);
116void vec3f_clear(Vec3f);
117void vec3s_clear(Vec3s);
120void func_80282040(void);
121void func_80282048(void);
128void reset_spline(void);
133void evaluate_cubic_spline(f32, Vec3f, f32*, f32[], f32[], f32[], f32[]);
135void func_80282BE4(struct struct_80283430*, s8, u8, s8, Vec3s, s32);
136void func_80282C40(struct struct_80283430*, struct struct_80282C40*, s32);
140void func_80282F00(s16*, s16);
144void func_80283240(s16);
148s32 cinematic_stub(void);
198void func_802846AC(void);
204
205/* This is where I'd put my static data, if I had any */
206
207extern s32 D_80283FCC;
208extern s32 D_80283FF4;
209extern f32 D_802856B0;
210extern f32 D_802856B4;
212extern f32 D_802856BC;
214extern s32 D_802856C4;
215extern s32 D_802856C8[]; // padding?
216extern s16 sCutsceneShot;
218extern s32 D_802876D4;
219extern s32 D_802876D8;
220extern s32 D_802876DC; // fake/padding? Or D8 is array?
222extern struct struct_80283431 D_80287750[];
223extern struct struct_80283430 D_80287818[];
224extern struct struct_80283430 D_80287998[];
227extern s16 D_80287B1E;
228extern s8 D_80287B20;
229extern struct struct_80282C40 D_802856DC[];
230extern struct struct_80282C40 D_80285718[];
231extern struct struct_80282C40 D_80285754[];
232extern struct struct_80282C40 D_80285784[];
233extern struct struct_80282C40 D_802857B4[];
234extern struct struct_80282C40 D_802857CC[];
235extern struct struct_80282C40 D_802857F0[];
236extern struct struct_80282C40 D_80285850[];
237extern struct struct_80282C40 D_802858B0[];
238extern struct struct_80282C40 D_802858C8[];
239extern struct struct_80282C40 D_80285910[];
240extern struct struct_80282C40 D_80285928[];
241extern struct struct_80282C40 D_80285940[];
242extern struct struct_80282C40 D_80285A10[];
243extern struct struct_80282C40 D_80285A4C[];
244extern struct struct_80282C40 D_80285A88[];
245extern struct struct_80282C40 D_80285AB8[];
246extern struct struct_80282C40 D_80285AE8[];
247extern struct struct_80282C40 D_80285B00[];
248extern struct struct_80282C40 D_80285B18[];
249extern struct struct_80282C40 D_80285B54[];
250extern struct struct_80282C40 D_80285B90[];
251extern struct struct_80282C40 D_80285BA8[];
252extern struct struct_80282C40 D_80285C38[];
253extern struct struct_80282C40 D_80285C74[];
254extern struct Cutscene gCutScene[];
255extern s16 D_80285D14;
258// extern struct credits_data_1FA0 *D_802876E0;
259
260#endif // CEREMONY_AND_CREDITS_H
f32 sCutsceneSplineSegmentProgress
Definition ceremony_and_credits.c:44
void func_80283A54(CinematicCamera *)
void vec3f_set_dupe(Vec3f, f32, f32, f32)
Definition ceremony_and_credits.c:49
struct struct_80282C40 D_80285C74[]
Definition ceremony_and_credits.c:1135
void lerp_player_three_in_camera(CinematicCamera *)
Definition ceremony_and_credits.c:962
void reset_spline_wrap(CinematicCamera *)
s16 gCutsceneShotTimer
Definition ceremony_and_credits.c:35
f32 D_802856BC
Definition ceremony_and_credits.c:28
void wrap_func_8028100C(CinematicCamera *)
void play_sound_balloon_pop(CinematicCamera *)
void init_cinematic_camera(void)
Definition ceremony_and_credits.c:525
s32 D_802856C4
Definition ceremony_and_credits.c:30
void animation_disapears_sliding_borders(CinematicCamera *)
void apply_distance_angle_y_and_angle_y_to_xz(Vec3f, Vec3f, f32, s16, s16)
Definition ceremony_and_credits.c:223
void play_sound_podium(CinematicCamera *)
void(* CameraEvent)(CinematicCamera *c)
Definition ceremony_and_credits.h:107
void func_80283F6C(CinematicCamera *)
Definition ceremony_and_credits.c:952
void wrap_func_800CB14C(CinematicCamera *)
void play_sound_welcome(CinematicCamera *)
struct struct_80282C40 D_80285B00[]
Definition ceremony_and_credits.c:1083
struct struct_80282C40 D_80285928[]
spline animation
Definition ceremony_and_credits.c:894
void copy_player_three_in_camera(CinematicCamera *)
Definition ceremony_and_credits.c:958
CameraEvent CutsceneShot
Definition ceremony_and_credits.h:108
void func_8028454C(CinematicCamera *)
Definition ceremony_and_credits.c:1184
void vec3s_copy_dupe(Vec3s, Vec3s)
Definition ceremony_and_credits.c:75
void func_802840C8(CinematicCamera *)
Definition ceremony_and_credits.c:974
void func_80283BF0(CinematicCamera *)
struct struct_80282C40 D_802857F0[]
spline animation
Definition ceremony_and_credits.c:827
void play_sound_farewell(CinematicCamera *)
struct struct_80283431 D_80287750[]
Definition ceremony_and_credits.c:41
struct struct_80282C40 D_80285A10[]
Definition ceremony_and_credits.c:1048
s32 ease_out_transition(s16 *, s16, s16)
Definition ceremony_and_credits.c:123
struct struct_80282C40 D_80285AE8[]
Definition ceremony_and_credits.c:1078
void func_80283100(CinematicCamera *, f32 *)
Definition ceremony_and_credits.c:455
void func_80283CD0(CinematicCamera *)
struct struct_80282C40 D_80285910[]
spline animation
Definition ceremony_and_credits.c:885
void func_80282F00(s16 *, s16)
Definition ceremony_and_credits.c:412
void func_802845EC(CinematicCamera *)
Definition ceremony_and_credits.c:1193
void wrap_func_800CB134(CinematicCamera *)
struct struct_80282C40 D_80285B18[]
Definition ceremony_and_credits.c:1088
void func_802847CC(CinematicCamera *)
Definition ceremony_and_credits.c:1441
void func_80284184(CinematicCamera *)
Definition ceremony_and_credits.c:995
void play_sound_fish(CinematicCamera *)
void ceremony_transition_sliding_borders(void)
Definition ceremony_and_credits.c:1560
struct struct_80282C40 D_80285A88[]
Definition ceremony_and_credits.c:1064
struct struct_80282C40 D_80285B90[]
Definition ceremony_and_credits.c:1104
s32 move_point_along_spline(Vec3f, f32 *, struct struct_80283430[], s16 *, f32 *)
Definition ceremony_and_credits.c:285
void play_cutscene(CinematicCamera *)
Definition ceremony_and_credits.c:1503
void func_80283C78(CinematicCamera *)
void func_8028461C(CinematicCamera *)
Definition ceremony_and_credits.c:1198
void vec3f_clear(Vec3f)
Definition ceremony_and_credits.c:61
void func_802841E8(CinematicCamera *)
Definition ceremony_and_credits.c:1001
s32 func_80283648(Camera *)
Definition ceremony_and_credits.c:577
void aborting_cinematic_function(Vec3f, Vec3f, Vec3f, Vec3s)
Definition ceremony_and_credits.c:229
s32 D_80283FCC
void wrap_func_80280FFC(CinematicCamera *)
void rotate_x_vec3f(Vec3f, Vec3f, s16)
Definition ceremony_and_credits.c:96
void func_80284648(CinematicCamera *)
Definition ceremony_and_credits.c:1203
f32 gSizeSlidingBorders
Definition ceremony_and_credits.c:29
void play_sound_congratulation(CinematicCamera *)
void func_80283D2C(CinematicCamera *)
Definition ceremony_and_credits.c:919
s32 D_802876D8
Definition ceremony_and_credits.h:257
struct struct_80282C40 D_80285A4C[]
Definition ceremony_and_credits.c:1056
struct struct_80283430 D_80287818[]
Definition ceremony_and_credits.c:42
void func_80282BE4(struct struct_80283430 *, s8, u8, s8, Vec3s, s32)
Definition ceremony_and_credits.c:340
void vec3f_copy_return_dupe(Vec3f, Vec3f)
Definition ceremony_and_credits.c:69
void wrap_func_80092C80(CinematicCamera *)
s16 D_80285D14
void func_80283240(s16)
Definition ceremony_and_credits.c:466
void func_80284308(CinematicCamera *)
Definition ceremony_and_credits.c:1023
void func_80282040(void)
Definition ceremony_and_credits.c:81
void func_80283BA4(CinematicCamera *)
f32 D_802856B0
Definition ceremony_and_credits.c:25
void func_802842A8(CinematicCamera *)
Definition ceremony_and_credits.c:1013
s16 sCutsceneShot
Definition ceremony_and_credits.c:34
void func_802842D8(CinematicCamera *)
Definition ceremony_and_credits.c:1018
s32 func_80283330(s32)
Definition ceremony_and_credits.c:487
void copy_player_two_in_camera(CinematicCamera *)
Definition ceremony_and_credits.c:942
void func_80284068(CinematicCamera *)
Definition ceremony_and_credits.c:968
void func_80282C40(struct struct_80283430 *, struct struct_80282C40 *, s32)
Definition ceremony_and_credits.c:353
void func_80282E58(CinematicCamera *, struct struct_80282C40 *, s32)
Definition ceremony_and_credits.c:396
void func_80283C14(CinematicCamera *)
s32 cinematic_stub(void)
Definition ceremony_and_credits.c:521
struct struct_80282C40 D_80285850[]
spline animation
Definition ceremony_and_credits.c:838
f32 D_802856B4
Definition ceremony_and_credits.c:26
struct struct_80282C40 D_80285718[]
spline animation
Definition ceremony_and_credits.c:776
struct struct_80282C40 D_802856DC[]
Camera rail spline animation.
Definition ceremony_and_credits.c:765
struct struct_80282C40 D_802857CC[]
spline animation
Definition ceremony_and_credits.c:817
struct struct_80282C40 D_802857B4[]
spline animation
Definition ceremony_and_credits.c:808
s32 f32_lerp(f32 *, f32, f32)
Definition ceremony_and_credits.c:110
s32 adjust_s16_value_transition(s16 *, s16, s16)
Definition ceremony_and_credits.c:171
struct struct_80283430 D_80287998[]
Definition ceremony_and_credits.c:43
s32 func_8028336C(CinematicCamera *, Camera *)
void func_80282048(void)
Definition ceremony_and_credits.c:84
void play_sound_shoot_trophy(CinematicCamera *)
s32 D_802876D4
Definition ceremony_and_credits.h:256
struct struct_80282C40 D_802858B0[]
spline animation
Definition ceremony_and_credits.c:849
struct struct_80282C40 D_80285940[]
Definition ceremony_and_credits.c:900
void func_802846B4(CinematicCamera *)
Definition ceremony_and_credits.c:1212
void lerp_player_two_in_camera(CinematicCamera *)
Definition ceremony_and_credits.c:946
void func_80282F44(s32, CinematicCamera *, Camera *)
Definition ceremony_and_credits.c:420
struct struct_80282C40 D_802858C8[]
spline animation
Definition ceremony_and_credits.c:858
void rotate_y_vec3f(Vec3f, Vec3f, s16)
Definition ceremony_and_credits.c:87
struct struct_80282C40 D_80285BA8[]
Definition ceremony_and_credits.c:1109
f32 gOrderedSizeSlidingBorders
Definition ceremony_and_credits.c:27
struct struct_80282C40 D_80285B54[]
Definition ceremony_and_credits.c:1096
void func_802830B4(CinematicCamera *, s16, s16, s16)
Definition ceremony_and_credits.c:447
void play_sound_fish_2(CinematicCamera *)
void func_80284494(CinematicCamera *)
Definition ceremony_and_credits.c:1171
void vec3s_clear(Vec3s)
Definition ceremony_and_credits.c:65
struct struct_80282C40 D_80285754[]
spline animation
Definition ceremony_and_credits.c:786
void play_sound_trophy(CinematicCamera *)
void reset_spline(void)
Definition ceremony_and_credits.c:199
void func_802846E4(CinematicCamera *)
Definition ceremony_and_credits.c:1218
void func_80284418(CinematicCamera *)
Definition ceremony_and_credits.c:1163
void func_802846AC(void)
Definition ceremony_and_credits.c:1209
void func_80283CA8(CinematicCamera *)
void func_80284154(CinematicCamera *)
Definition ceremony_and_credits.c:990
void func_8028422C(CinematicCamera *)
Definition ceremony_and_credits.c:1006
s8 D_80287B20
Definition ceremony_and_credits.c:47
void func_80283B6C(CinematicCamera *)
struct struct_80282C40 D_80285AB8[]
Definition ceremony_and_credits.c:1071
void func_802844FC(CinematicCamera *)
Definition ceremony_and_credits.c:1178
void evaluate_cubic_spline(f32, Vec3f, f32 *, f32[], f32[], f32[], f32[])
Definition ceremony_and_credits.c:243
CinematicCamera D_802876E0
Definition ceremony_and_credits.c:40
s32 move_cinematic_camera_along_spline(CinematicCamera *, struct struct_80286A04 *, struct struct_80286A04 *, s32)
Definition ceremony_and_credits.c:379
void animation_apears_sliding_borders(CinematicCamera *)
struct struct_80282C40 D_80285C38[]
Definition ceremony_and_credits.c:1127
s32 D_802856C8[]
Definition ceremony_and_credits.c:32
s32 D_802876DC
Definition ceremony_and_credits.c:38
void calculate_distance_angle_y_and_angle_y_to_xz(Vec3f, Vec3f, f32 *, s16 *, s16 *)
Definition ceremony_and_credits.c:210
s16 D_80287B1E
Definition ceremony_and_credits.c:46
s16 sCutsceneSplineSegment
Definition ceremony_and_credits.c:45
struct Cutscene gCutScene[]
Definition ceremony_and_credits.c:1157
s32 D_80283FF4
s32 adjust_f32_value_transition(f32 *, f32, f32)
Definition ceremony_and_credits.c:142
void wrap_func_800CA0CC(CinematicCamera *)
void func_80282EAC(s32, CinematicCamera *, s16, s16, s16)
Definition ceremony_and_credits.c:402
void func_80283EA0(CinematicCamera *)
Definition ceremony_and_credits.c:937
void func_80283A7C(CinematicCamera *)
s32 cutscene_event(CameraEvent event, CinematicCamera *, s16, s16)
Definition ceremony_and_credits.c:478
void vec3s_set_dupe(Vec3s, s16, s16, s16)
Definition ceremony_and_credits.c:55
struct struct_80282C40 D_80285784[]
spline animation
Definition ceremony_and_credits.c:797
f32 Vec3f[3]
Definition common_structs.h:6
s16 Vec3s[3]
Definition common_structs.h:11
Definition camera.h:26
Definition ceremony_and_credits.h:51
f32 unk20
Definition ceremony_and_credits.h:56
Vec3f lookAt
Definition ceremony_and_credits.h:53
s16 unk6C
Definition ceremony_and_credits.h:68
Vec3s unk54
Definition ceremony_and_credits.h:62
Vec3s unk4E
Definition ceremony_and_credits.h:61
f32 unk18
Definition ceremony_and_credits.h:54
f32 unk64
Definition ceremony_and_credits.h:66
u8 cutscene
Definition ceremony_and_credits.h:55
Vec3s unk5A
Definition ceremony_and_credits.h:63
Vec3f unk24
Definition ceremony_and_credits.h:57
Vec3f pos
Definition ceremony_and_credits.h:52
f32 unk68
Definition ceremony_and_credits.h:67
Vec3f unk3C
Definition ceremony_and_credits.h:59
s16 unk60
Definition ceremony_and_credits.h:64
s16 unk62
Definition ceremony_and_credits.h:65
s16 unk6E
Definition ceremony_and_credits.h:69
Vec3s unk48
Definition ceremony_and_credits.h:60
Vec3f unk30
Definition ceremony_and_credits.h:58
Definition ceremony_and_credits.h:95
s8 index
Definition ceremony_and_credits.h:96
Vec3s point
Definition ceremony_and_credits.h:98
u8 speed
Definition ceremony_and_credits.h:97
Definition ceremony_and_credits.h:101
void(* shot)(CinematicCamera *)
Definition ceremony_and_credits.h:102
s16 duration
Definition ceremony_and_credits.h:103
Definition ceremony_and_credits.h:21
s16 unk6E
Definition ceremony_and_credits.h:41
s16 unk6C
Definition ceremony_and_credits.h:40
s8 unk1D
Definition ceremony_and_credits.h:25
s16 unk1E
Definition ceremony_and_credits.h:26
s16 unk5A[2]
Definition ceremony_and_credits.h:34
s16 unk4E[2]
Definition ceremony_and_credits.h:30
f32 unk64
Definition ceremony_and_credits.h:38
Vec3f unk0
Definition ceremony_and_credits.h:22
s16 unk58
Definition ceremony_and_credits.h:33
s16 unk48[3]
Definition ceremony_and_credits.h:29
f32 unk20
Definition ceremony_and_credits.h:27
s8 pad2[0x24]
Definition ceremony_and_credits.h:28
s16 unk5E
Definition ceremony_and_credits.h:35
s8 unk1C
Definition ceremony_and_credits.h:24
s8 pad[0x10]
Definition ceremony_and_credits.h:23
s16 unk62
Definition ceremony_and_credits.h:37
s16 un52
Definition ceremony_and_credits.h:31
s16 unk60
Definition ceremony_and_credits.h:36
s16 unk54[2]
Definition ceremony_and_credits.h:32
f32 unk68
Definition ceremony_and_credits.h:39
Definition ceremony_and_credits.h:72
s8 unk1
Definition ceremony_and_credits.h:74
s8 unk0
Definition ceremony_and_credits.h:73
Vec3s unk6
Definition ceremony_and_credits.h:79
s8 unk2
Definition ceremony_and_credits.h:75
s8 unk5
Definition ceremony_and_credits.h:78
u8 unk3
Definition ceremony_and_credits.h:76
s8 unk4
Definition ceremony_and_credits.h:77
Definition ceremony_and_credits.h:12
s8 unk5
Definition ceremony_and_credits.h:17
s8 unk0
Definition ceremony_and_credits.h:13
u16 unk2
Definition ceremony_and_credits.h:15
s8 unk1
Definition ceremony_and_credits.h:14
s8 unk4
Definition ceremony_and_credits.h:16
Vec3s unk6
Definition ceremony_and_credits.h:18
Definition ceremony_and_credits.h:7
Vec3s unkC
Definition ceremony_and_credits.h:9
Vec3f unk0
Definition ceremony_and_credits.h:8
Definition ceremony_and_credits.h:82
u8 unk0[6]
Definition ceremony_and_credits.h:83
Vec3s unk6
Definition ceremony_and_credits.h:84
Definition ceremony_and_credits.h:87
u16 unkC
Definition ceremony_and_credits.h:92
u8 unk0
Definition ceremony_and_credits.h:88
struct struct_80285D80 * unk8
Definition ceremony_and_credits.h:91
struct struct_80285D80 * unk4
Definition ceremony_and_credits.h:90
u8 unk1
Definition ceremony_and_credits.h:89
signed int s32
Definition ultratypes.h:15
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
unsigned char u8
Definition ultratypes.h:12