Match function related to the podium scene text (#120)

Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
This commit is contained in:
Tyler McGavran
2021-12-27 18:36:27 -05:00
committed by GitHub
parent ae7451596a
commit 2263234e58
5 changed files with 69 additions and 360 deletions
+69 -109
View File
@@ -12581,156 +12581,116 @@ void func_800A70E8(void *arg0) {
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A70E8.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
s32 draw_box(s32, ?, ?, ?, s32, s32, s32, s32, s32); // extern
extern s32 gDisplayListHead;
void func_800A7258(void *arg0) {
s32 phi_v0;
// Shading layer of the grand prix podium result screen
void func_800A7258(struct_8018D9E0_entry *arg0) {
if (arg0->unk4 == 0) {
phi_v0 = draw_box(gDisplayListHead, 0, 0, 0x13F, 0xEF, 0, 0, 0, arg0->unk1C);
// If shading layer is fading in
gDisplayListHead = draw_box(gDisplayListHead, 0, 0, 0x13F, 0xEF, 0, 0, 0, arg0->unk1C);
} else {
phi_v0 = draw_box(gDisplayListHead, 0, 0, 0x13F, 0xEF, 0, 0, 0, 0x64);
// All other stages of the podium scene
gDisplayListHead = draw_box(gDisplayListHead, 0, 0, 0x13F, 0xEF, 0, 0, 0, 0x64);
}
gDisplayListHead = phi_v0;
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A7258.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? draw_text(s32, s32, s32, ?, f32, f32); // extern
s32 get_string_width(s32); // extern
? set_text_color(?); // extern
extern ? D_800E7500;
extern ? D_800E76CC;
extern ? D_800E76DC;
extern s8 gCupSelection;
extern char *D_800E76CC[4];
extern char *D_800E76DC[4];
extern char *D_800E7500[9];
void func_800A72FC(void *arg0) {
s32 sp30;
s32 sp2C;
// Podium scene, top line
void func_800A72FC(struct_8018D9E0_entry *arg0) {
s32 pad;
s32 cupNameLength = (((f32) get_string_width(D_800E7500[gCupSelection]) * 1) + 10) / 2;
s32 ccNameLength = (((f32) get_string_width(D_800E76CC[gCCSelection]) * 1) + 10) / 2;
sp30 = ((get_string_width(*(&D_800E7500 + (gCupSelection * 4))) * 1.0f) + 10.0f) / 2.0f;
sp2C = ((get_string_width(*(&D_800E76CC + (gCCSelection * 4))) * 1.0f) + 10.0f) / 2.0f;
set_text_color(TEXT_YELLOW);
draw_text(arg0->unkC - sp2C, arg0->unk10, *(&D_800E7500 + (gCupSelection * 4)), 0, 1.0f, 1.0f);
draw_text(arg0->column - ccNameLength, arg0->row, D_800E7500[gCupSelection], 0, 1, 1);
set_text_color(TEXT_YELLOW);
draw_text(arg0->unkC + sp30, arg0->unk10, *(&D_800E76DC + (gCCSelection * 4)), 0, 1.0f, 1.0f);
draw_text(arg0->column + cupNameLength, arg0->row, D_800E76DC[gCCSelection], 0, 1, 1);
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A72FC.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? draw_text(s32, s32, s32, ?, f32, f32); // extern
s32 get_string_width(s32, void *); // extern
? set_text_color(?); // extern
extern s32 D_800E7A88;
extern s32 D_800E7A98;
extern s8 D_802874F5;
extern char *D_800E7A88[4];
extern char *D_800E7A98;
void func_800A7448(void *arg0) {
void func_800A7448(struct_8018D9E0_entry *arg0) {
s32 pad;
s32 sp40;
s32 sp3C;
s32 sp38;
void *sp34;
f32 temp_f8;
s8 temp_v1;
void *temp_a1;
temp_v1 = D_802874F5;
if (temp_v1 >= 3) {
s32 thing = D_802874F5;
if (thing >= 3) {
set_text_color(TEXT_YELLOW);
draw_text(arg0->unkC, arg0->unk10, D_800E7A98, 0, 0.75f, 0.75f);
return;
draw_text(arg0->column, arg0->row, D_800E7A98, 0, 0.75f, 0.75f);
} else {
sp40 = (s32) (((f32) (get_string_width(D_800E7A88[0]) + 5) * 0.75f) / 2);
sp3C = (s32) (((f32) (get_string_width(D_800E7A88[thing + 1]) + 5) * 0.75f) / 2);
set_text_color(TEXT_YELLOW);
draw_text(arg0->column - sp3C, arg0->row, D_800E7A88[0], 0, 0.75f, 0.75f);
set_text_color(TEXT_YELLOW);
draw_text(arg0->column + sp40, arg0->row, D_800E7A88[thing + 1], 0, 0.75f, 0.75f);
}
sp38 = temp_v1;
temp_f8 = (get_string_width(D_800E7A88) + 5) * 0.75f;
temp_a1 = (temp_v1 * 4) + &D_800E7A88;
sp34 = temp_a1;
sp40 = temp_f8 / 2.0f;
sp3C = ((get_string_width(temp_a1->unk4, temp_a1) + 5) * 0.75f) / 2.0f;
set_text_color(TEXT_YELLOW);
draw_text(arg0->unkC - sp3C, arg0->unk10, D_800E7A88, 0, 0.75f, 0.75f);
set_text_color(TEXT_YELLOW);
draw_text(arg0->unkC + sp40, arg0->unk10, sp34->unk4, 0, 0.75f, 0.75f);
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A7448.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? draw_text(s32, s32, s32, ?, f32, f32); // extern
? set_text_color(?); // extern
extern ? D_800E7A9C;
extern char *D_800E7A9C[2];
extern f32 D_800F1F30;
extern s8 D_802874F5;
void func_800A75A0(void *arg0) {
s32 sp20;
f32 temp_f0;
s32 phi_v0;
void func_800A75A0(struct_8018D9E0_entry *arg0) {
s32 pad;
s32 topThree;
if (D_802874F5 < 3) {
phi_v0 = 0;
topThree = 0;
} else {
phi_v0 = 1;
topThree = 1;
}
sp20 = phi_v0;
set_text_color(TEXT_BLUE_GREEN_RED_CYCLE_1);
temp_f0 = D_800F1F30;
draw_text(arg0->unkC, arg0->unk10, *(&D_800E7A9C + (phi_v0 * 4)), 0, temp_f0, temp_f0);
draw_text(arg0->column, arg0->row, D_800E7A9C[topThree], 0, D_800F1F30, D_800F1F30);
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A75A0.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? draw_text(s32, s32, s32, ?, f32, f32); // extern
s32 get_string_width(s32); // extern
? func_800939C8(s32, s32, ? *, ?, f32, f32); // extern
? convert_number_to_ascii(s32, ? *); // extern
? func_800A79F4(s32, ? *); // extern
? set_text_color(s32); // extern
extern s32 D_800E7AA4;
extern f32 D_800F1F34;
//generated by mips_to_c commit dacbf209f1bb5d4acaecaf1fefff331d60ffd80c
? convert_number_to_ascii(s32, s8 *); /* extern */
? draw_text(s32, s32, s8 *, ?, f32, f32); /* extern */
s32 get_string_width(s8 *); /* extern */
? set_text_color(s32); /* extern */
extern s8 D_802874F5;
extern s32 gGlobalTimer;
static s8 *D_800E7AA4[9] = {
"YOU PLACED",
" st",
" nd",
" rd",
" th",
" th",
" th",
" th",
" th",
}; /* const */
void func_800A761C(void *arg0) {
void func_800A761C(struct_8018D9E0_entry *arg0) {
s32 sp48;
s32 sp44;
? sp3D;
? sp3C;
s32 sp38;
s32 *sp34;
f32 temp_f20;
s8 sp3D;
s8 sp3C;
s8 sp38;
s8 **sp34;
f32 temp_f8;
s32 *temp_v1;
s32 temp_a0;
s8 **temp_v1;
temp_a0 = D_802874F5 + 1;
sp38 = temp_a0;
func_800A79F4(temp_a0, &sp3C);
temp_f20 = D_800F1F34;
temp_f8 = (get_string_width(D_800E7AA4) + 5) * temp_f20;
temp_v1 = (sp38 * 4) + &D_800E7AA4;
temp_f8 = (f32) (get_string_width(*D_800E7AA4) + 5) * 1.2f;
temp_v1 = &D_800E7AA4[(s32) sp38];
sp34 = temp_v1;
sp48 = temp_f8 / 2.0f;
sp44 = ((get_string_width(*temp_v1) + 5) * temp_f20) / 2.0f;
sp48 = (s32) (temp_f8 / 2.0f);
sp44 = (s32) (((f32) (get_string_width(*temp_v1) + 5) * 1.2f) / 2.0f);
set_text_color(TEXT_BLUE_GREEN_RED_CYCLE_2);
draw_text(arg0->unkC - sp44, arg0->unk10, D_800E7AA4, 0, temp_f20, temp_f20);
set_text_color(gGlobalTimer % 3);
draw_text(arg0->unkC + sp48, arg0->unk10, *sp34, 0, temp_f20, temp_f20);
convert_number_to_ascii(temp_a0, &sp3C);
func_800939C8((arg0->unkC + sp48) - 0x18, arg0->unk10, &sp3D, 0, 2.0f, 2.0f);
draw_text(arg0->column - sp44, arg0->row, *D_800E7AA4, 0, 1.2f, 1.2f);
set_text_color((s32) gGlobalTimer % 3);
draw_text(arg0->column + sp48, arg0->row, *sp34, 0, 1.2f, 1.2f);
convert_number_to_ascii((s32) sp38, &sp3C);
func_800939C8((arg0->column + sp48) - 0x18, arg0->row, &sp3D, 0, 2.0f, 2.0f);
}
#else
GLOBAL_ASM("asm/non_matchings/code_80091750/func_800A761C.s")