Matched REL/w04/big_boo + applying new macros

This commit is contained in:
mrshigure 2024-04-25 05:15:29 -07:00
parent 818428e4ff
commit 4229bfe0c1
19 changed files with 1449 additions and 277 deletions

View file

@ -12,7 +12,7 @@
#include "game/board/window.h"
#include "dolphin.h"
#include "math.h"
#include "ext_math.h"
static void fn_1_17B4(s16 arg0, s16 arg1);
static void fn_1_191C(void);
@ -20,9 +20,10 @@ static void fn_1_1B98(s16 arg0);
static void fn_1_1C2C(void);
static void fn_1_1E60(void);
static void fn_1_2008(void);
static void fn_1_2044(void);
static Process *lbl_1_bss_3C[3];
Process *lbl_1_bss_38;
static Process *lbl_1_bss_38;
static s32 lbl_1_data_298[] = {
DATA_MAKE_NUM(DATADIR_W04, 32),
@ -61,7 +62,7 @@ void fn_1_12FC(void) {
sp8.x = sp8.y = sp8.z = 2.0f;
BoardModelScaleSetV(lbl_1_bss_14[11], &sp8);
fn_1_1C2C();
if (lbl_1_bss_0[0] & 1) {
if (lbl_1_bss_0->unk00 & 1) {
BoardModelMotionStartEndSet(lbl_1_bss_14[5], 0, 180);
BoardModelMotionTimeSet(lbl_1_bss_14[5], 108.0f);
fn_1_17B4(0, 1);
@ -106,7 +107,7 @@ void fn_1_1618(void) {
HuPrcVSleep();
}
BoardCameraMotionWait();
*lbl_1_bss_0 ^= 1;
lbl_1_bss_0->unk00 ^= 1;
fn_1_191C();
fn_1_1C2C();
HuAudPlayerVoicePlay(temp_r31, 0x128);
@ -115,7 +116,7 @@ void fn_1_1618(void) {
HuPrcVSleep();
}
HuPrcSleep(30);
if (!(*lbl_1_bss_0 & 1)) {
if (!(lbl_1_bss_0->unk00 & 1)) {
BoardWinCreate(2, MAKE_MESSID(32, 24), 11);
BoardWinWait();
BoardWinKill();
@ -164,7 +165,7 @@ static void fn_1_191C(void) {
s32 var_r30;
HuAudFXPlay(0x4B);
if (*lbl_1_bss_0 & 1) {
if (lbl_1_bss_0->unk00 & 1) {
BoardWinCreate(2, MAKE_MESSID(32, 23), 11);
BoardWinWait();
BoardWinKill();
@ -219,7 +220,7 @@ static void fn_1_1C2C(void) {
s16 *var_r28;
s32 i;
if (*lbl_1_bss_0 == 0) {
if (lbl_1_bss_0->unk00 == 0) {
BoardModelMotionStartEndSet(lbl_1_bss_14[3], 0, 80);
BoardModelMotionTimeSet(lbl_1_bss_14[3], 0.0f);
BoardModelVisibilitySet(lbl_1_bss_14[0], 1);
@ -262,10 +263,10 @@ static void fn_1_1E60(void) {
BoardSpacePosGet(0, var_r28, &sp8);
PSVECSubtract(&sp8, &sp14, &sp20);
PSVECScale(&sp20, &sp20, 0.008333334f);
temp_f31 = 180.0 * (atan2(sp8.x - sp14.x, sp8.z - sp14.z) / M_PI);
temp_f31 = atan2d(sp8.x - sp14.x, sp8.z - sp14.z);
BoardModelPosGet(temp_r31[1], &sp14);
while (fn_1_1130(temp_r31[1], temp_f31, 2.5f) == 0) {
if (*lbl_1_bss_0 == 0) {
if (lbl_1_bss_0->unk00 == 0) {
BoardModelAlphaSet(temp_r31[1], 0xFF);
} else {
BoardModelAlphaSet(temp_r31[1], 0);
@ -273,7 +274,7 @@ static void fn_1_1E60(void) {
HuPrcVSleep();
}
for (i = 0; i < 120; i++) {
if (*lbl_1_bss_0 == 0) {
if (lbl_1_bss_0->unk00 == 0) {
BoardModelAlphaSet(temp_r31[1], 0xFF);
} else {
BoardModelAlphaSet(temp_r31[1], 0);
@ -295,3 +296,18 @@ static void fn_1_2008(void) {
BoardModelKill(temp_r31[1]);
HuMemDirectFree(temp_r31);
}
static void fn_1_2044(void) {
lbl_1_bss_38 = NULL;
}
void fn_1_2058(void) {
s32 sp8;
sp8 = GWSystem.player_curr;
lbl_1_bss_38 = HuPrcChildCreate(fn_1_1618, 0x2003, 0x2000, 0, boardMainProc);
HuPrcDestructorSet2(lbl_1_bss_38, fn_1_2044);
while (lbl_1_bss_38) {
HuPrcVSleep();
}
}