Applied DATA_MAKE_NUM and MAKE_MESSID macros
This commit is contained in:
parent
c1c506360c
commit
a0ebc7588d
116 changed files with 38174 additions and 37156 deletions
|
|
@ -453,10 +453,10 @@ static s16 lbl_2_data_31E[] = {
|
|||
};
|
||||
|
||||
static u32 playerCntMessTbl[] = {
|
||||
0x00220002,
|
||||
0x00220003,
|
||||
0x00220004,
|
||||
0x00220001
|
||||
MAKE_MESSID(0x22, 0x02),
|
||||
MAKE_MESSID(0x22, 0x03),
|
||||
MAKE_MESSID(0x22, 0x04),
|
||||
MAKE_MESSID(0x22, 0x01)
|
||||
};
|
||||
|
||||
static void UpdatePlayerCnt(omObjData *object)
|
||||
|
|
@ -602,16 +602,16 @@ static void InitPlayerCnt(omObjData *object)
|
|||
HuSprAttrSet(group, index, HUSPR_ATTR_DISPOFF);
|
||||
HuSprAttrSet(index2, index, HUSPR_ATTR_DISPOFF);
|
||||
}
|
||||
HuWinMesMaxSizeGet(1, sizeMax, 0x220000);
|
||||
HuWinMesMaxSizeGet(1, sizeMax, MAKE_MESSID(0x22, 0x00));
|
||||
index2 = HuWinCreate(-10000, 26, sizeMax[0], sizeMax[1], 0);
|
||||
work->winHeader = index2;
|
||||
HuWinMesColSet(index2, 4);
|
||||
HuWinBGTPLvlSet(index2, 0);
|
||||
HuWinMesSpeedSet(index2, 0);
|
||||
HuWinMesSet(index2, 0x220000);
|
||||
HuWinMesSet(index2, MAKE_MESSID(0x22, 0x00));
|
||||
work->playerCntOld = work->playerCnt = configE3.playerCnt;
|
||||
mess = playerCntMessTbl[work->playerCnt];
|
||||
HuWinMesMaxSizeGet(4, sizeMax, 0x220001, 0x220002, 0x220003, 0x220004);
|
||||
HuWinMesMaxSizeGet(4, sizeMax, MAKE_MESSID(0x22, 0x01), MAKE_MESSID(0x22, 0x02), MAKE_MESSID(0x22, 0x03), MAKE_MESSID(0x22, 0x04));
|
||||
index2 = HuWinCreate(-10000, 58, sizeMax[0], sizeMax[1], 0);
|
||||
work->winPlayer = index2;
|
||||
work->winSize = *(Vec2f *)(sizeMax); //FIXME: Remove Cast
|
||||
|
|
@ -1143,8 +1143,8 @@ typedef struct e3_rumble_cfg_work {
|
|||
} E3RumbleCfgWork;
|
||||
|
||||
static u32 rumbleMess[] = {
|
||||
0x220008,
|
||||
0x220007
|
||||
MAKE_MESSID(0x22, 0x08),
|
||||
MAKE_MESSID(0x22, 0x07)
|
||||
};
|
||||
|
||||
static void UpdateRumbleCfg(omObjData *object)
|
||||
|
|
@ -1283,16 +1283,16 @@ static void InitRumbleCfg(omObjData *object)
|
|||
HuSprAttrSet(group, index, HUSPR_ATTR_DISPOFF);
|
||||
HuSprAttrSet(index2, index, HUSPR_ATTR_DISPOFF);
|
||||
}
|
||||
HuWinMesMaxSizeGet(1, sizeMax, 0x220006);
|
||||
HuWinMesMaxSizeGet(1, sizeMax, MAKE_MESSID(0x22, 0x06));
|
||||
index2 = HuWinCreate(-10000, 267, sizeMax[0], sizeMax[1], 0);
|
||||
work->winHeader = index2;
|
||||
HuWinMesColSet(index2, 4);
|
||||
HuWinBGTPLvlSet(index2, 0);
|
||||
HuWinMesSpeedSet(index2, 0);
|
||||
HuWinMesSet(index2, 0x220006);
|
||||
HuWinMesSet(index2, MAKE_MESSID(0x22, 0x06));
|
||||
work->rumbleValOld = work->rumbleVal = configE3.rumble;
|
||||
mess = rumbleMess[work->rumbleVal];
|
||||
HuWinMesMaxSizeGet(2, sizeMax, 0x220007, 0x220008);
|
||||
HuWinMesMaxSizeGet(2, sizeMax, MAKE_MESSID(0x22, 0x07), MAKE_MESSID(0x22, 0x08));
|
||||
index2 = HuWinCreate(-10000, 299, sizeMax[0], sizeMax[1], 0);
|
||||
work->winValue = index2;
|
||||
work->winSize = *(Vec2f *)(sizeMax); //FIXME: Remove Cast
|
||||
|
|
@ -1366,12 +1366,12 @@ static void UpdateModeSel(omObjData *object)
|
|||
object->work[2] = 2;
|
||||
work->boardOld = -1;
|
||||
HuWinMesColSet(work->winMode, 4);
|
||||
HuWinMesMaxSizeGet(1, winSize, 0x22000F);
|
||||
HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(0x22, 0x0F));
|
||||
HuWinCenterPosSet(work->winMode, (work->winSizeMode.x-winSize[0])/-2.0f, (work->winSizeMode.y-winSize[1])/-2.0f);
|
||||
HuWinMesSet(work->winMode, 0x22000F);
|
||||
HuWinMesMaxSizeGet(1, winSize, 0x220010);
|
||||
HuWinMesSet(work->winMode, MAKE_MESSID(0x22, 0x0F));
|
||||
HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(0x22, 0x10));
|
||||
HuWinCenterPosSet(work->winBoard, (work->winSizeBoard.x-winSize[0])/-2.0f, (work->winSizeBoard.y-winSize[1])/-2.0f);
|
||||
HuWinMesSet(work->winBoard, 0x220010);
|
||||
HuWinMesSet(work->winBoard, MAKE_MESSID(0x22, 0x10));
|
||||
}
|
||||
} else if(btnDown & PAD_BUTTON_B) {
|
||||
HuAudFXPlay(3);
|
||||
|
|
@ -1405,12 +1405,12 @@ static void UpdateModeSel(omObjData *object)
|
|||
work->modeOld = -1;
|
||||
object->work[2] = 1;
|
||||
HuWinMesColSet(work->winMode, 4);
|
||||
HuWinMesMaxSizeGet(1, winSize, 0x220009);
|
||||
HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(0x22, 0x09));
|
||||
HuWinCenterPosSet(work->winMode, (work->winSizeMode.x-winSize[0])/-2.0f, (work->winSizeMode.y-winSize[1])/-2.0f);
|
||||
HuWinMesSet(work->winMode, 0x220009);
|
||||
HuWinMesMaxSizeGet(1, winSize, 0x22000A);
|
||||
HuWinMesSet(work->winMode, MAKE_MESSID(0x22, 0x09));
|
||||
HuWinMesMaxSizeGet(1, winSize, MAKE_MESSID(0x22, 0x0A));
|
||||
HuWinCenterPosSet(work->winBoard, (work->winSizeBoard.x-winSize[0])/-2.0f, (work->winSizeBoard.y-winSize[1])/-2.0f);
|
||||
HuWinMesSet(work->winBoard, 0x22000A);
|
||||
HuWinMesSet(work->winBoard, MAKE_MESSID(0x22, 0x0A));
|
||||
} else if(btnDown & PAD_BUTTON_LEFT) {
|
||||
HuAudFXPlay(0);
|
||||
work->board--;
|
||||
|
|
@ -1504,23 +1504,23 @@ static void InitModeSel(omObjData *object)
|
|||
index++;
|
||||
HuSprAttrSet(group, 0, HUSPR_ATTR_DISPOFF);
|
||||
HuSprAttrSet(group, 1, HUSPR_ATTR_DISPOFF);
|
||||
HuWinMesMaxSizeGet(2, &work->winSizeMode.x, 0x220009, 0x22000F);
|
||||
HuWinMesMaxSizeGet(2, &work->winSizeMode.x, MAKE_MESSID(0x22, 0x09), MAKE_MESSID(0x22, 0x0F));
|
||||
index2 = HuWinCreate(-10000, 350, work->winSizeMode.x, work->winSizeMode.y, 0);
|
||||
work->winMode = index2;
|
||||
HuWinMesColSet(index2, 4);
|
||||
HuWinBGTPLvlSet(index2, 0);
|
||||
HuWinMesSpeedSet(index2, 0);
|
||||
HuWinMesMaxSizeGet(1, size, 0x220009);
|
||||
HuWinMesMaxSizeGet(1, size, MAKE_MESSID(0x22, 0x09));
|
||||
HuWinCenterPosSet(index2, (work->winSizeMode.x-size[0])/-2.0f, (work->winSizeMode.y-size[1])/-2.0f);
|
||||
HuWinMesSet(index2, 0x220009);
|
||||
HuWinMesMaxSizeGet(2, &work->winSizeBoard.x, 0x22000A, 0x220010);
|
||||
HuWinMesSet(index2, MAKE_MESSID(0x22, 0x09));
|
||||
HuWinMesMaxSizeGet(2, &work->winSizeBoard.x, MAKE_MESSID(0x22, 0x0A), MAKE_MESSID(0x22, 0x10));
|
||||
index2 = HuWinCreate(-10000, 390, work->winSizeBoard.x, work->winSizeBoard.y, 0);
|
||||
work->winBoard = index2;
|
||||
HuWinBGTPLvlSet(index2, 0);
|
||||
HuWinMesSpeedSet(index2, 0);
|
||||
HuWinMesMaxSizeGet(1, size, 0x22000A);
|
||||
HuWinMesMaxSizeGet(1, size, MAKE_MESSID(0x22, 0x0A));
|
||||
HuWinCenterPosSet(index2, (work->winSizeBoard.x-size[0])/-2.0f, (work->winSizeBoard.y-size[1])/-2.0f);
|
||||
HuWinMesSet(index2, 0x22000A);
|
||||
HuWinMesSet(index2, MAKE_MESSID(0x22, 0x0A));
|
||||
object->work[0] = 0;
|
||||
object->work[1] = 0;
|
||||
object->work[2] = 0;
|
||||
|
|
|
|||
|
|
@ -94,19 +94,19 @@ static s16 mgOvlTbl[] = {
|
|||
static s16 mgIdTbl[] = { 403, 404, 407, 410, 412, 415, 418, 419, 425, 426, 431, 436, 438, 0 };
|
||||
|
||||
static s32 mgNameTbl[] = {
|
||||
0x00170003,
|
||||
0x00170004,
|
||||
0x00170007,
|
||||
0x0017000A,
|
||||
0x0017000C,
|
||||
0x0017000F,
|
||||
0x00170012,
|
||||
0x00170013,
|
||||
0x00170019,
|
||||
0x0017001A,
|
||||
0x0017001F,
|
||||
0x00170024,
|
||||
0x00170026,
|
||||
MAKE_MESSID(0x17, 0x03),
|
||||
MAKE_MESSID(0x17, 0x04),
|
||||
MAKE_MESSID(0x17, 0x07),
|
||||
MAKE_MESSID(0x17, 0x0A),
|
||||
MAKE_MESSID(0x17, 0x0C),
|
||||
MAKE_MESSID(0x17, 0x0F),
|
||||
MAKE_MESSID(0x17, 0x12),
|
||||
MAKE_MESSID(0x17, 0x13),
|
||||
MAKE_MESSID(0x17, 0x19),
|
||||
MAKE_MESSID(0x17, 0x1A),
|
||||
MAKE_MESSID(0x17, 0x1F),
|
||||
MAKE_MESSID(0x17, 0x24),
|
||||
MAKE_MESSID(0x17, 0x26),
|
||||
};
|
||||
|
||||
char lbl_2_data_A8[] = "\013TEST MINIGAME NAME01\n test";
|
||||
|
|
@ -332,12 +332,12 @@ static void CreateMGSelect(omObjData *object)
|
|||
temp_r30 = HuSprGrpCreate(3);
|
||||
temp_r31->unk_1C = temp_r30;
|
||||
HuSprGrpPosSet(temp_r30, 174.0f, 271.0f);
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(0x21, MEMORY_DEFAULT_NUM));
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x21), MEMORY_DEFAULT_NUM));
|
||||
temp_r31->unk_00[index2] = temp_r25;
|
||||
temp_r29 = HuSprCreate(temp_r25, 0x7540, 0);
|
||||
HuSprGrpMemberSet(temp_r30, index2, temp_r29);
|
||||
index2++;
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(0x27, MEMORY_DEFAULT_NUM));
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x27), MEMORY_DEFAULT_NUM));
|
||||
temp_r31->unk_00[index2] = temp_r25;
|
||||
temp_r29 = HuSprCreate(temp_r25, 0x64, 0);
|
||||
HuSprGrpMemberSet(temp_r30, index2, temp_r29);
|
||||
|
|
@ -346,9 +346,9 @@ static void CreateMGSelect(omObjData *object)
|
|||
temp_r31->unk_42 = 0;
|
||||
HuSprPosSet(temp_r30, index2, 0.0f, cursorYOfsTbl[temp_r31->unk_42]);
|
||||
index2++;
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(0x35, MEMORY_DEFAULT_NUM));
|
||||
temp_r25 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x35), MEMORY_DEFAULT_NUM));
|
||||
temp_r31->unk_00[index2++] = temp_r25;
|
||||
temp_r23 = HuSprAnimRead(HuDataReadNum(0x36, MEMORY_DEFAULT_NUM));
|
||||
temp_r23 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x36), MEMORY_DEFAULT_NUM));
|
||||
temp_r31->unk_00[index2++] = temp_r23;
|
||||
temp_r30 = HuSprGrpCreate(2);
|
||||
temp_r31->unk_1E = temp_r30;
|
||||
|
|
@ -449,7 +449,7 @@ static void CreateMGPic(omObjData *object)
|
|||
HuSprAttrSet(temp_r3, var_r30, 4);
|
||||
}
|
||||
index2 = var_r30;
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(0x22, MEMORY_DEFAULT_NUM));
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x22), MEMORY_DEFAULT_NUM));
|
||||
temp_r28->unk_00[index2] = temp_r3_2;
|
||||
group = HuSprCreate(temp_r3_2, 0x7540, 0);
|
||||
HuSprGrpMemberSet(temp_r3, index2, group);
|
||||
|
|
@ -478,7 +478,7 @@ static void CreateMGInterface(omObjData *object)
|
|||
group = HuSprGrpCreate(1);
|
||||
unkStruct->group = group;
|
||||
HuSprGrpPosSet(group, 288.0f, 64.0f);
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(0x24, MEMORY_DEFAULT_NUM));
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x24), MEMORY_DEFAULT_NUM));
|
||||
unkStruct->unk_00[index2] = temp_r3_2;
|
||||
index = HuSprCreate(temp_r3_2, 0x2710, 0);
|
||||
HuSprGrpMemberSet(group, 0, index);
|
||||
|
|
@ -486,7 +486,7 @@ static void CreateMGInterface(omObjData *object)
|
|||
group = HuSprGrpCreate(1);
|
||||
unkStruct->group2 = group;
|
||||
HuSprGrpPosSet(group, 444.0f, 384.0f);
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(0x23, MEMORY_DEFAULT_NUM));
|
||||
temp_r3_2 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_E3SETUP, 0x23), MEMORY_DEFAULT_NUM));
|
||||
unkStruct->unk_00[index2] = temp_r3_2;
|
||||
index = HuSprCreate(temp_r3_2, 0x271A, 0);
|
||||
HuSprGrpMemberSet(group, 0, index);
|
||||
|
|
|
|||
|
|
@ -840,7 +840,7 @@ static void fn_1_2FA0(void)
|
|||
HuSprGrpPosSet(temp_r24, 1000, 186);
|
||||
HuSprPriSet(temp_r24, 0, 1000);
|
||||
sp10[0] = HuWinCreate(1000, 186, 456, 42, 0);
|
||||
HuWinMesSet(sp10[0], 0x240000+lbl_1_bss_10);
|
||||
HuWinMesSet(sp10[0], MAKE_MESSID(0x24, lbl_1_bss_10));
|
||||
HuWinBGTPLvlSet(sp10[0], 0.0f);
|
||||
temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 17));
|
||||
temp_r23 = HuSprGrpCreate(1);
|
||||
|
|
@ -849,11 +849,11 @@ static void fn_1_2FA0(void)
|
|||
HuSprGrpPosSet(temp_r23, 1000, 242);
|
||||
HuSprPriSet(temp_r23, 0, 1000);
|
||||
sp10[1] = HuWinCreate(1000, 242, 456, 42, 0);
|
||||
HuWinMesSet(sp10[1], lbl_1_bss_10+0x240001);
|
||||
HuWinMesSet(sp10[1], lbl_1_bss_10+MAKE_MESSID(0x24, 0x01));
|
||||
HuWinBGTPLvlSet(sp10[1], 0.0f);
|
||||
temp_r28 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_INST, 18));
|
||||
sp10[2] = HuWinCreate(1000, 292, 456, 42, 0);
|
||||
HuWinMesSet(sp10[2], lbl_1_bss_10+0x240002);
|
||||
HuWinMesSet(sp10[2], lbl_1_bss_10+MAKE_MESSID(0x24, 0x02));
|
||||
HuWinBGTPLvlSet(sp10[2], 0.0f);
|
||||
HuWinMesSpeedSet(sp10[2], 0);
|
||||
temp_r31 = HuWinAnimSet(sp10[2], temp_r28, 0, 201, 18);
|
||||
|
|
@ -861,7 +861,7 @@ static void fn_1_2FA0(void)
|
|||
temp_r27 = HuWinCreate(1000, 292, 456, 42, 0);
|
||||
HuWinBGTPLvlSet(temp_r27, 0.0f);
|
||||
HuWinMesSpeedSet(temp_r27, 0);
|
||||
HuWinMesSet(temp_r27, lbl_1_bss_10+0x240002);
|
||||
HuWinMesSet(temp_r27, lbl_1_bss_10+MAKE_MESSID(0x24, 0x02));
|
||||
temp_r31 = HuWinAnimSet(temp_r27, temp_r28, 0, 201, 18);
|
||||
HuWinPriSet(temp_r27, 10);
|
||||
HuWinSprPriSet(temp_r27, temp_r31, 11);
|
||||
|
|
@ -908,16 +908,16 @@ static void fn_1_2FA0(void)
|
|||
while(lbl_1_data_0 != 3) {
|
||||
if(temp_r21 != lbl_1_bss_6) {
|
||||
temp_f31 = 16.0f+(lbl_1_data_124[6]-217.0f);
|
||||
HuWinMesSet(temp_r27, 0x240002+lbl_1_bss_10+temp_r21);
|
||||
HuWinMesSet(temp_r27, MAKE_MESSID(0x24, 0x02)+lbl_1_bss_10+temp_r21);
|
||||
temp_r21 = lbl_1_bss_6;
|
||||
if(lbl_1_bss_6 == 1) {
|
||||
if(mgInfoTbl[lbl_1_bss_14].inst_mess[2]) {
|
||||
HuWinMesSet(sp10[2], 0x240002+lbl_1_bss_10+lbl_1_bss_6);
|
||||
HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02)+lbl_1_bss_10+lbl_1_bss_6);
|
||||
} else {
|
||||
HuWinMesSet(sp10[2], 0x240006+lbl_1_bss_10);
|
||||
HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x06)+lbl_1_bss_10);
|
||||
}
|
||||
} else {
|
||||
HuWinMesSet(sp10[2], 0x240002+lbl_1_bss_10+lbl_1_bss_6);
|
||||
HuWinMesSet(sp10[2], MAKE_MESSID(0x24, 0x02)+lbl_1_bss_10+lbl_1_bss_6);
|
||||
}
|
||||
for(temp_r31=0; temp_r31<=10; temp_r31++) {
|
||||
HuWinPosSet(temp_r27, 30.0*sind(temp_r31*9.0f)+temp_f31, 200.0*(1.0-cosd(temp_r31*9.0f))+274.0);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -289,85 +289,86 @@ void fn_1_39C(omObjData *object)
|
|||
void fn_1_400(omObjData *object)
|
||||
{
|
||||
switch (fn_1_38C()) {
|
||||
case 0:
|
||||
if (--lbl_1_bss_24) {
|
||||
case 0:
|
||||
if (--lbl_1_bss_24) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(1);
|
||||
lbl_1_bss_24 = 180;
|
||||
break;
|
||||
}
|
||||
fn_1_37C(1);
|
||||
lbl_1_bss_24 = 180;
|
||||
break;
|
||||
case 1:
|
||||
if (--lbl_1_bss_24) {
|
||||
case 1:
|
||||
if (--lbl_1_bss_24) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(2);
|
||||
lbl_1_bss_C = MGSeqCreate(3, 0);
|
||||
break;
|
||||
}
|
||||
fn_1_37C(2);
|
||||
lbl_1_bss_C = MGSeqCreate(3, 0);
|
||||
break;
|
||||
case 2:
|
||||
if (!MGSeqStatGet(lbl_1_bss_C)) {
|
||||
fn_1_37C(3);
|
||||
}
|
||||
if (lbl_1_data_7C8 >= 0) {
|
||||
case 2:
|
||||
if (!MGSeqStatGet(lbl_1_bss_C)) {
|
||||
fn_1_37C(3);
|
||||
}
|
||||
if (lbl_1_data_7C8 >= 0) {
|
||||
break;
|
||||
}
|
||||
if (!(MGSeqStatGet(lbl_1_bss_C) & 16)) {
|
||||
break;
|
||||
}
|
||||
lbl_1_data_7C8 = HuAudSeqPlay(69);
|
||||
break;
|
||||
}
|
||||
if (!(MGSeqStatGet(lbl_1_bss_C) & 16)) {
|
||||
case 3:
|
||||
if (!fn_1_E48()) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(4);
|
||||
lbl_1_bss_C = MGSeqCreate(3, 1);
|
||||
HuAudSeqFadeOut(lbl_1_data_7C8, 100);
|
||||
break;
|
||||
}
|
||||
lbl_1_data_7C8 = HuAudSeqPlay(69);
|
||||
break;
|
||||
case 3:
|
||||
if (!fn_1_E48()) {
|
||||
case 4:
|
||||
if (!MGSeqStatGet(lbl_1_bss_C)) {
|
||||
fn_1_37C(5);
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30);
|
||||
lbl_1_bss_24 = 60;
|
||||
}
|
||||
case 5:
|
||||
if (--lbl_1_bss_24) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(6);
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
|
||||
break;
|
||||
}
|
||||
fn_1_37C(4);
|
||||
lbl_1_bss_C = MGSeqCreate(3, 1);
|
||||
HuAudSeqFadeOut(lbl_1_data_7C8, 100);
|
||||
break;
|
||||
case 4:
|
||||
if (!MGSeqStatGet(lbl_1_bss_C)) {
|
||||
fn_1_37C(5);
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 30);
|
||||
lbl_1_bss_24 = 60;
|
||||
}
|
||||
case 5:
|
||||
if (--lbl_1_bss_24) {
|
||||
case 6:
|
||||
if (WipeStatGet()) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(7);
|
||||
lbl_1_bss_24 = 180;
|
||||
break;
|
||||
}
|
||||
fn_1_37C(6);
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
|
||||
break;
|
||||
case 6:
|
||||
if (WipeStatGet()) {
|
||||
case 7:
|
||||
if (--lbl_1_bss_24) {
|
||||
break;
|
||||
}
|
||||
fn_1_37C(9);
|
||||
fn_1_1160();
|
||||
if (lbl_1_bss_38[0] >= 0) {
|
||||
HuAudSStreamPlay(1);
|
||||
}
|
||||
else {
|
||||
HuAudSStreamPlay(4);
|
||||
}
|
||||
lbl_1_bss_24 = 210;
|
||||
break;
|
||||
}
|
||||
fn_1_37C(7);
|
||||
lbl_1_bss_24 = 180;
|
||||
break;
|
||||
case 7:
|
||||
if (--lbl_1_bss_24) {
|
||||
case 8:
|
||||
break;
|
||||
}
|
||||
fn_1_37C(9);
|
||||
fn_1_1160();
|
||||
if (lbl_1_bss_38[0] >= 0) {
|
||||
HuAudSStreamPlay(1);
|
||||
} else {
|
||||
HuAudSStreamPlay(4);
|
||||
}
|
||||
lbl_1_bss_24 = 210;
|
||||
break;
|
||||
case 8:
|
||||
break;
|
||||
case 9:
|
||||
if (--lbl_1_bss_24) {
|
||||
case 9:
|
||||
if (--lbl_1_bss_24) {
|
||||
break;
|
||||
}
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_784;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_784;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
if (omSysExitReq && !WipeStatGet()) {
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
|
|
@ -393,14 +394,37 @@ float lbl_1_data_81C[][2] = { { 0.0f, 0.0f }, { 0.0f, 0.0f }, { -46.0f, -2.0f },
|
|||
|
||||
float lbl_1_data_84C[][2] = { { 472.0f, 128.0f }, { 472.0f, 208.0f }, { 472.0f, 288.0f }, { 472.0f, 368.0f } };
|
||||
|
||||
s32 lbl_1_data_86C[] = { 0x00610000, 0x00610001, 0x00610002, 0x00610003, 0x00610004, 0x00610005, 0x00610006, 0x00610007 };
|
||||
s32 lbl_1_data_86C[] = {
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x01),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x03),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x04),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0x07),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_88C = 0xFFFFFFFF;
|
||||
|
||||
u32 lbl_1_data_890[][2]
|
||||
= { { 0x005F0000, 0x00000000 }, { 0x005F0002, 0x00000000 }, { 0x00230022, 0x00000001 }, { 0x005F0017, 0x00000000 }, { 0x005F0018, 0x00000000 } };
|
||||
u32 lbl_1_data_890[][2] = {
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0x00000000 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), 0x00000000 },
|
||||
{ DATA_MAKE_NUM(DATADIR_M404, 0x22), 0x00000001 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), 0x00000000 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), 0x00000000 },
|
||||
};
|
||||
|
||||
s32 lbl_1_data_8B8[] = { 0x00230001, 0x00230002, 0x00230003, 0x00230004, 0x00230005, 0x00230006, 0x00230007, 0x00230008 };
|
||||
s32 lbl_1_data_8B8[] = {
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x01),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x03),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x04),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x07),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x08),
|
||||
};
|
||||
|
||||
float lbl_1_data_8D8[] = { 35.0f, 30.000002f, 25.0f, 20.0f };
|
||||
|
||||
|
|
@ -408,7 +432,11 @@ float (*lbl_1_data_8E8[])[2] = { lbl_1_data_0, lbl_1_data_248, lbl_1_data_4A8 };
|
|||
|
||||
u16 lbl_1_data_8F4[] = { 73, 76, 82, 0 };
|
||||
|
||||
s32 lbl_1_data_8FC[][2] = { { 0x00230013, 0x00230014 }, { 0x00230015, 0x00230016 }, { 0x00230017, 0x00230018 } };
|
||||
s32 lbl_1_data_8FC[][2] = {
|
||||
{ DATA_MAKE_NUM(DATADIR_M404, 0x13), DATA_MAKE_NUM(DATADIR_M404, 0x14) },
|
||||
{ DATA_MAKE_NUM(DATADIR_M404, 0x15), DATA_MAKE_NUM(DATADIR_M404, 0x16) },
|
||||
{ DATA_MAKE_NUM(DATADIR_M404, 0x17), DATA_MAKE_NUM(DATADIR_M404, 0x18) },
|
||||
};
|
||||
|
||||
void fn_1_7E0(omObjData *object)
|
||||
{
|
||||
|
|
@ -426,26 +454,26 @@ void fn_1_7E0(omObjData *object)
|
|||
for (var_r29 = 0; var_r29 < 4; var_r31++, var_r29++) {
|
||||
for (var_r27 = var_r26[var_r29]->data, var_r30 = 0; var_r30 < 6; var_r30++) {
|
||||
switch (lbl_1_data_810[var_r30]) {
|
||||
case 0:
|
||||
var_r31->unk_02[var_r30] = espEntry(0x610014, 1, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 256);
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk_02[var_r30] = espEntry(0x610015, 0, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 257);
|
||||
espColorSet(var_r31->unk_02[var_r30], 0, 0, 0);
|
||||
espTPLvlSet(var_r31->unk_02[var_r30], 0.5f);
|
||||
break;
|
||||
case 2:
|
||||
var_r31->unk_02[var_r30] = espEntry(lbl_1_data_86C[var_r27->unk_02[5]]);
|
||||
espPriSet(var_r31->unk_02[var_r30], 255);
|
||||
break;
|
||||
case 3:
|
||||
var_r31->unk_02[var_r30] = espEntry(0x610033, 1, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 255);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
case 0:
|
||||
var_r31->unk_02[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x14), 1, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 256);
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk_02[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x15), 0, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 257);
|
||||
espColorSet(var_r31->unk_02[var_r30], 0, 0, 0);
|
||||
espTPLvlSet(var_r31->unk_02[var_r30], 0.5f);
|
||||
break;
|
||||
case 2:
|
||||
var_r31->unk_02[var_r30] = espEntry(lbl_1_data_86C[var_r27->unk_02[5]]);
|
||||
espPriSet(var_r31->unk_02[var_r30], 255);
|
||||
break;
|
||||
case 3:
|
||||
var_r31->unk_02[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x33), 1, 0);
|
||||
espPriSet(var_r31->unk_02[var_r30], 255);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
espDispOff(var_r31->unk_02[var_r30]);
|
||||
espDrawNoSet(var_r31->unk_02[var_r30], 0);
|
||||
|
|
@ -469,30 +497,30 @@ void fn_1_A9C(omObjData *object)
|
|||
|
||||
var_r30 = object->data;
|
||||
switch (fn_1_38C()) {
|
||||
case 6:
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
for (var_r29 = 0; var_r29 < 6; var_r29++) {
|
||||
espDispOn(var_r30[var_r31].unk_02[var_r29]);
|
||||
case 6:
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
for (var_r29 = 0; var_r29 < 6; var_r29++) {
|
||||
espDispOn(var_r30[var_r31].unk_02[var_r29]);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
var_r27 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
|
||||
for (var_r29 = 0, var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
var_r28 = var_r27[var_r31]->data;
|
||||
var_r30[var_r31].unk_00 = var_r28->unk_58;
|
||||
if (var_r28->unk_00_field1) {
|
||||
var_r29++;
|
||||
break;
|
||||
case 7:
|
||||
var_r27 = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
|
||||
for (var_r29 = 0, var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
var_r28 = var_r27[var_r31]->data;
|
||||
var_r30[var_r31].unk_00 = var_r28->unk_58;
|
||||
if (var_r28->unk_00_field1) {
|
||||
var_r29++;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ((var_r29 >= 4) && (lbl_1_bss_0 == 0)) {
|
||||
HuAudFXPlay(1325);
|
||||
lbl_1_bss_0 = 1;
|
||||
}
|
||||
if ((lbl_1_bss_0 == 0) && (lbl_1_data_88C < 0)) {
|
||||
lbl_1_data_88C = HuAudFXPlay(1324);
|
||||
}
|
||||
break;
|
||||
if ((var_r29 >= 4) && (lbl_1_bss_0 == 0)) {
|
||||
HuAudFXPlay(1325);
|
||||
lbl_1_bss_0 = 1;
|
||||
}
|
||||
if ((lbl_1_bss_0 == 0) && (lbl_1_data_88C < 0)) {
|
||||
lbl_1_data_88C = HuAudFXPlay(1324);
|
||||
}
|
||||
break;
|
||||
}
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
espBankSet(var_r30[var_r31].unk_02[3], var_r30[var_r31].unk_00 / 100);
|
||||
|
|
@ -669,20 +697,21 @@ void fn_1_1344(omObjData *object)
|
|||
memset(var_r31, 0, 484);
|
||||
var_r31->unk_02 = lbl_1_bss_20++;
|
||||
var_r31->unk_04 = GWPlayerCfg[var_r31->unk_02].pad_idx;
|
||||
|
||||
|
||||
var_r31->unk_0C = var_r24 = GWPlayerCfg[var_r31->unk_02].character;
|
||||
var_r31->unk_0E = GWPlayerCfg[var_r31->unk_02].diff;
|
||||
var_r31->unk_10 = GWPlayerCfg[var_r31->unk_02].group;
|
||||
object->model[0] = CharModelCreate(var_r24, 2);
|
||||
Hu3DModelShadowSet(object->model[0]);
|
||||
object->model[1] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_8B8[var_r24], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->model[1] = Hu3DModelCreateFile(lbl_1_data_8B8[var_r24]);
|
||||
Hu3DModelHookSet(object->model[0], "test11_tex_we-itemhook-r", object->model[1]);
|
||||
var_r31->unk_2C = 0;
|
||||
|
||||
for (var_r29 = 0; var_r29 < (u32)5; var_r29++) {
|
||||
if (!lbl_1_data_890[var_r29][1]) {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_0C, lbl_1_data_890[var_r29][0]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_0C, var_r31->unk_0C + lbl_1_data_890[var_r29][0]);
|
||||
}
|
||||
}
|
||||
|
|
@ -702,12 +731,12 @@ void fn_1_1344(omObjData *object)
|
|||
var_r31->unk_44 = HuMemDirectMallocNum(HEAP_SYSTEM, var_r31->unk_48, MEMORY_DEFAULT_NUM);
|
||||
DCInvalidateRange(var_r31->unk_44, var_r31->unk_48);
|
||||
var_r31->unk_48 = fn_1_6248(var_r31->unk_44, var_r31->unk_48);
|
||||
var_r31->unk_3C = HuSprAnimRead(HuDataSelHeapReadNum(lbl_1_data_8FC[lbl_1_bss_1C][0], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
var_r31->unk_3C = HuSprAnimReadFile(lbl_1_data_8FC[lbl_1_bss_1C][0]);
|
||||
DCFlushRangeNoSync(var_r31->unk_3C->bmp->data, (var_r31->unk_3C->bmp->pixSize * (var_r31->unk_3C->bmp->sizeX * var_r31->unk_3C->bmp->sizeY)) / 8);
|
||||
var_r31->unk_54 = 0;
|
||||
var_r31->unk_56 = fn_1_ED4(object);
|
||||
var_r31->unk_40 = HuSprAnimRead(HuDataSelHeapReadNum(lbl_1_data_8FC[lbl_1_bss_1C][1], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
var_r31->unk_50 = HuSprAnimRead(HuDataSelHeapReadNum(0x230019, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
var_r31->unk_40 = HuSprAnimReadFile(lbl_1_data_8FC[lbl_1_bss_1C][1]);
|
||||
var_r31->unk_50 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M404, 0x19));
|
||||
DCFlushRangeNoSync(var_r31->unk_50->bmp->data, (var_r31->unk_50->bmp->pixSize * (var_r31->unk_50->bmp->sizeX * var_r31->unk_50->bmp->sizeY)) / 8);
|
||||
Hu3DMotionOverlaySet(object->model[0], object->motion[2]);
|
||||
object->trans.y = 1500.0f;
|
||||
|
|
@ -744,7 +773,6 @@ void fn_1_1AFC(omObjData *object)
|
|||
{
|
||||
UnkM404Struct3 *var_r31;
|
||||
|
||||
|
||||
var_r31 = object->data;
|
||||
if (fn_1_38C() >= 1) {
|
||||
if (var_r31->unk_00_field2) {
|
||||
|
|
@ -873,7 +901,7 @@ float fn_1_2EBC(float arg0[], float arg8)
|
|||
|
||||
float fn_1_3A38(float arg0[], float arg8, float arg9)
|
||||
{
|
||||
volatile float sp40;
|
||||
volatile float sp40;
|
||||
volatile float sp3C;
|
||||
float var_f24;
|
||||
float var_f18;
|
||||
|
|
@ -926,7 +954,8 @@ void fn_1_3F30(omObjData *object)
|
|||
var_r31->unk_64 = 3.0f - (var_r31->unk_68 - var_r31->unk_64);
|
||||
var_r31->unk_5E += 3;
|
||||
var_r31->unk_68 = fn_1_2EBC(var_r31->unk_70[var_r31->unk_5E], 1.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_64 += 3.0f;
|
||||
}
|
||||
var_r31->unk_60 = fn_1_3A38(var_r31->unk_70[var_r31->unk_5E], var_r31->unk_60, var_r31->unk_64);
|
||||
|
|
@ -936,7 +965,8 @@ void fn_1_3F30(omObjData *object)
|
|||
var_r31->unk_14 = fn_1_3E2C(var_r31->unk_14, atan2d(var_f24 - object->trans.x, -(var_f23 - object->trans.z)), 0.1f);
|
||||
var_r31->unk_06 = (u8)(20.0 * sind(var_r31->unk_14));
|
||||
var_r31->unk_07 = (u8)(20.0 * cosd(var_r31->unk_14));
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_06 = 20;
|
||||
var_r31->unk_07 = 0;
|
||||
}
|
||||
|
|
@ -961,7 +991,6 @@ void fn_1_44A0(omObjData *object)
|
|||
s32 var_r28;
|
||||
s16 var_r27;
|
||||
|
||||
|
||||
var_r31 = object->data;
|
||||
var_r28 = -1;
|
||||
if (fn_1_38C() == 6) {
|
||||
|
|
@ -969,104 +998,111 @@ void fn_1_44A0(omObjData *object)
|
|||
}
|
||||
if (fn_1_38C() == 3 && !var_r31->unk_00_field0) {
|
||||
switch (var_r31->unk_12) {
|
||||
case 0:
|
||||
if (GWPlayerCfg[var_r31->unk_02].iscom == 0) {
|
||||
var_r31->unk_06 = HuPadStkX[var_r31->unk_04];
|
||||
var_r31->unk_07 = HuPadStkY[var_r31->unk_04];
|
||||
var_r31->unk_08 = HuPadBtn[var_r31->unk_04];
|
||||
var_r31->unk_0A = HuPadBtnDown[var_r31->unk_04];
|
||||
} else {
|
||||
var_r31->unk_08 = var_r31->unk_0A = 0;
|
||||
var_r31->unk_06 = var_r31->unk_07 = 0;
|
||||
fn_1_3F30(object);
|
||||
}
|
||||
if (((var_r31->unk_06 * var_r31->unk_06) + (var_r31->unk_07 * var_r31->unk_07)) > 16.0f) {
|
||||
var_f31 = atan2d(var_r31->unk_06, -var_r31->unk_07);
|
||||
var_r31->unk_20 = 3.0f * sind(var_f31);
|
||||
var_r31->unk_28 = 3.0f * cosd(var_f31);
|
||||
var_r28 = 1;
|
||||
if (var_r31->unk_20 > 0.0f) {
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 0.5f);
|
||||
} else {
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, -0.5f);
|
||||
case 0:
|
||||
if (GWPlayerCfg[var_r31->unk_02].iscom == 0) {
|
||||
var_r31->unk_06 = HuPadStkX[var_r31->unk_04];
|
||||
var_r31->unk_07 = HuPadStkY[var_r31->unk_04];
|
||||
var_r31->unk_08 = HuPadBtn[var_r31->unk_04];
|
||||
var_r31->unk_0A = HuPadBtnDown[var_r31->unk_04];
|
||||
}
|
||||
Hu3DMotionOverlaySpeedSet(object->model[0], Hu3DData[object->model[0]].unk_68);
|
||||
if (var_r31->unk_2C == 0) {
|
||||
Hu3DModelAttrReset(object->model[0], 0x40000400);
|
||||
else {
|
||||
var_r31->unk_08 = var_r31->unk_0A = 0;
|
||||
var_r31->unk_06 = var_r31->unk_07 = 0;
|
||||
fn_1_3F30(object);
|
||||
}
|
||||
if (((var_r31->unk_06 * var_r31->unk_06) + (var_r31->unk_07 * var_r31->unk_07)) > 16.0f) {
|
||||
var_f31 = atan2d(var_r31->unk_06, -var_r31->unk_07);
|
||||
var_r31->unk_20 = 3.0f * sind(var_f31);
|
||||
var_r31->unk_28 = 3.0f * cosd(var_f31);
|
||||
var_r28 = 1;
|
||||
if (var_r31->unk_20 > 0.0f) {
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 0.5f);
|
||||
}
|
||||
else {
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, -0.5f);
|
||||
}
|
||||
Hu3DMotionOverlaySpeedSet(object->model[0], Hu3DData[object->model[0]].unk_68);
|
||||
if (var_r31->unk_2C == 0) {
|
||||
Hu3DModelAttrReset(object->model[0], 0x40000400);
|
||||
Hu3DMotionOverlayTimeSet(object->model[0], 0.0f);
|
||||
}
|
||||
}
|
||||
else {
|
||||
var_r31->unk_20 = var_r31->unk_28 = 0.0f;
|
||||
var_r28 = 0;
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 1.0f);
|
||||
Hu3DMotionOverlayTimeSet(object->model[0], 0.0f);
|
||||
Hu3DModelAttrSet(object->model[0], 0x40000400);
|
||||
}
|
||||
} else {
|
||||
var_r31->unk_20 = var_r31->unk_28 = 0.0f;
|
||||
var_r28 = 0;
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 1.0f);
|
||||
Hu3DMotionOverlayTimeSet(object->model[0], 0.0f);
|
||||
Hu3DModelAttrSet(object->model[0], 0x40000400);
|
||||
}
|
||||
sp8.x = object->trans.x;
|
||||
sp8.z = object->trans.z;
|
||||
object->trans.x += var_r31->unk_20;
|
||||
object->trans.z += var_r31->unk_28;
|
||||
if (object->trans.x < -90.0f) {
|
||||
object->trans.x = -90.0f;
|
||||
}
|
||||
if (object->trans.x < (Center.x - 500.0f)) {
|
||||
object->trans.x = Center.x - 500.0f;
|
||||
} else if (object->trans.x > (550.0f + Center.x)) {
|
||||
object->trans.x = 550.0f + Center.x;
|
||||
}
|
||||
if ((object->trans.x != sp8.x) || (object->trans.z != sp8.z)) {
|
||||
if (var_r31->unk_74 < 0) {
|
||||
var_r31->unk_74 = HuAudFXPlay(0x52B);
|
||||
sp8.x = object->trans.x;
|
||||
sp8.z = object->trans.z;
|
||||
object->trans.x += var_r31->unk_20;
|
||||
object->trans.z += var_r31->unk_28;
|
||||
if (object->trans.x < -90.0f) {
|
||||
object->trans.x = -90.0f;
|
||||
}
|
||||
} else if (var_r31->unk_74 >= 0) {
|
||||
HuAudFXStop(var_r31->unk_74);
|
||||
var_r31->unk_74 = -1;
|
||||
}
|
||||
var_r29 = &Hu3DData[object->model[2]];
|
||||
if (object->trans.z < (var_r29->pos.z - 100.0f)) {
|
||||
object->trans.z = var_r29->pos.z - 100.0f;
|
||||
} else if (object->trans.z > ((100.0f + var_r29->pos.z) - 1.0f)) {
|
||||
object->trans.z = (100.0f + var_r29->pos.z) - 1.0f;
|
||||
}
|
||||
if ((90.0f + object->trans.x) > 3000.0f) {
|
||||
object->trans.x = 2910.0f;
|
||||
var_r31->unk_12++;
|
||||
var_r31->unk_2C = -1;
|
||||
var_r28 = 1;
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 1.0f);
|
||||
Hu3DMotionOverlayReset(object->model[0]);
|
||||
Hu3DModelAttrSet(object->model[1], 1);
|
||||
if (var_r31->unk_74 >= 0) {
|
||||
if (object->trans.x < (Center.x - 500.0f)) {
|
||||
object->trans.x = Center.x - 500.0f;
|
||||
}
|
||||
else if (object->trans.x > (550.0f + Center.x)) {
|
||||
object->trans.x = 550.0f + Center.x;
|
||||
}
|
||||
if ((object->trans.x != sp8.x) || (object->trans.z != sp8.z)) {
|
||||
if (var_r31->unk_74 < 0) {
|
||||
var_r31->unk_74 = HuAudFXPlay(0x52B);
|
||||
}
|
||||
}
|
||||
else if (var_r31->unk_74 >= 0) {
|
||||
HuAudFXStop(var_r31->unk_74);
|
||||
var_r31->unk_74 = -1;
|
||||
}
|
||||
}
|
||||
fn_1_5278(object);
|
||||
if (var_r31->unk_74 >= 0) {
|
||||
var_r27 = 64.0f + ((64.0f * (object->trans.x - Center.x)) / 500.0f);
|
||||
if (var_r27 < 0) {
|
||||
var_r27 = 0;
|
||||
} else if (var_r27 > 127) {
|
||||
var_r27 = 127;
|
||||
var_r29 = &Hu3DData[object->model[2]];
|
||||
if (object->trans.z < (var_r29->pos.z - 100.0f)) {
|
||||
object->trans.z = var_r29->pos.z - 100.0f;
|
||||
}
|
||||
HuAudFXPanning(var_r31->unk_74, var_r27);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
var_r28 = 1;
|
||||
object->trans.x += 4.0000005f;
|
||||
if (object->trans.x >= 3200.0f) {
|
||||
var_r31->unk_12++;
|
||||
var_r31->unk_38 = 0x3C;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
var_r28 = 0;
|
||||
object->rot.y += 0.1f * -object->rot.y;
|
||||
if (--var_r31->unk_38 == 0) {
|
||||
var_r31->unk_00_field0 = 1;
|
||||
}
|
||||
break;
|
||||
else if (object->trans.z > ((100.0f + var_r29->pos.z) - 1.0f)) {
|
||||
object->trans.z = (100.0f + var_r29->pos.z) - 1.0f;
|
||||
}
|
||||
if ((90.0f + object->trans.x) > 3000.0f) {
|
||||
object->trans.x = 2910.0f;
|
||||
var_r31->unk_12++;
|
||||
var_r31->unk_2C = -1;
|
||||
var_r28 = 1;
|
||||
CharModelMotionSpeedSet(var_r31->unk_0C, 1.0f);
|
||||
Hu3DMotionOverlayReset(object->model[0]);
|
||||
Hu3DModelAttrSet(object->model[1], 1);
|
||||
if (var_r31->unk_74 >= 0) {
|
||||
HuAudFXStop(var_r31->unk_74);
|
||||
var_r31->unk_74 = -1;
|
||||
}
|
||||
}
|
||||
fn_1_5278(object);
|
||||
if (var_r31->unk_74 >= 0) {
|
||||
var_r27 = 64.0f + ((64.0f * (object->trans.x - Center.x)) / 500.0f);
|
||||
if (var_r27 < 0) {
|
||||
var_r27 = 0;
|
||||
}
|
||||
else if (var_r27 > 127) {
|
||||
var_r27 = 127;
|
||||
}
|
||||
HuAudFXPanning(var_r31->unk_74, var_r27);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
var_r28 = 1;
|
||||
object->trans.x += 4.0000005f;
|
||||
if (object->trans.x >= 3200.0f) {
|
||||
var_r31->unk_12++;
|
||||
var_r31->unk_38 = 0x3C;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
var_r28 = 0;
|
||||
object->rot.y += 0.1f * -object->rot.y;
|
||||
if (--var_r31->unk_38 == 0) {
|
||||
var_r31->unk_00_field0 = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (var_r28 >= 0 && var_r28 != var_r31->unk_2C) {
|
||||
var_r31->unk_2C = var_r28;
|
||||
|
|
@ -1115,7 +1151,8 @@ void fn_1_4F4C(omObjData *object)
|
|||
}
|
||||
if (var_r29 < 4) {
|
||||
var_r30->unk_2C = 3;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r30->unk_2C = 4;
|
||||
}
|
||||
CharModelMotionShiftSet(var_r30->unk_0C, object->motion[var_r30->unk_2C], 0.0f, 5.0f, 0);
|
||||
|
|
@ -1170,9 +1207,13 @@ void fn_1_5598(Process *arg0)
|
|||
|
||||
void fn_1_55F0(void) { }
|
||||
|
||||
s32 lbl_1_data_930[] = { 0x0023000B, 0x0023000C, 0x0023000D, 0x0023000E, 0x0023000F, 0x00230010, 0x00230011, 0x00230012 };
|
||||
s32 lbl_1_data_930[] = { DATA_MAKE_NUM(DATADIR_M404, 0x0B), DATA_MAKE_NUM(DATADIR_M404, 0x0C), DATA_MAKE_NUM(DATADIR_M404, 0x0D),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x0E), DATA_MAKE_NUM(DATADIR_M404, 0x0F), DATA_MAKE_NUM(DATADIR_M404, 0x10), DATA_MAKE_NUM(DATADIR_M404, 0x11),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x12) };
|
||||
|
||||
s32 lbl_1_data_950[] = { 0x0023001A, 0x0023001B, 0x0023001C, 0x0023001D, 0x0023001E, 0x0023001F, 0x00230020, 0x00230021 };
|
||||
s32 lbl_1_data_950[] = { DATA_MAKE_NUM(DATADIR_M404, 0x1A), DATA_MAKE_NUM(DATADIR_M404, 0x1B), DATA_MAKE_NUM(DATADIR_M404, 0x1C),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x1D), DATA_MAKE_NUM(DATADIR_M404, 0x1E), DATA_MAKE_NUM(DATADIR_M404, 0x1F), DATA_MAKE_NUM(DATADIR_M404, 0x20),
|
||||
DATA_MAKE_NUM(DATADIR_M404, 0x21) };
|
||||
|
||||
char *lbl_1_data_98C[] = { "kari00", "kari01", "kari02", "kari03" };
|
||||
|
||||
|
|
@ -1187,18 +1228,16 @@ void fn_1_55F4(omObjData *object)
|
|||
{
|
||||
s32 var_r30;
|
||||
|
||||
object->model[0] = Hu3DModelCreate(HuDataSelHeapReadNum(0x230009, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->model[1] = Hu3DModelCreate(HuDataSelHeapReadNum(0x23000A, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M404, 0x09));
|
||||
object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M404, 0x0A));
|
||||
Hu3DModelAttrSet(object->model[1], 0x40000001);
|
||||
object->model[2] = Hu3DModelCreate(HuDataSelHeapReadNum(0x230000, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->model[2] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M404, 0x00));
|
||||
Hu3DModelShadowMapSet(object->model[2]);
|
||||
|
||||
for (var_r30 = 0; var_r30 < 4; var_r30++) {
|
||||
object->model[var_r30 + 3]
|
||||
= Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_930[GWPlayerCfg[var_r30].character], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->model[var_r30 + 3] = Hu3DModelCreateFile(lbl_1_data_930[GWPlayerCfg[var_r30].character]);
|
||||
Hu3DModelPosSet(object->model[var_r30 + 3], 0.0f, 0.0f, lbl_1_data_99C[var_r30]);
|
||||
Hu3DAnimCreate(HuSprAnimRead(HuDataSelHeapReadNum(lbl_1_data_950[GWPlayerCfg[var_r30].character], MEMORY_DEFAULT_NUM, HEAP_DATA)),
|
||||
object->model[2], lbl_1_data_98C[var_r30]);
|
||||
Hu3DAnimCreate(HuSprAnimReadFile(lbl_1_data_950[GWPlayerCfg[var_r30].character]), object->model[2], lbl_1_data_98C[var_r30]);
|
||||
}
|
||||
object->func = fn_1_57A0;
|
||||
}
|
||||
|
|
@ -1295,38 +1334,39 @@ void fn_1_5E74(AnimData *arg0, u16 arg1, u16 arg2, u16 arg3)
|
|||
u8 temp_r0;
|
||||
|
||||
switch (arg0->bmp->pixSize) {
|
||||
case 4:
|
||||
var_r30 = lbl_1_data_9DC[0]; // 8
|
||||
var_r29 = lbl_1_data_9DC[1]; // 8
|
||||
break;
|
||||
case 8:
|
||||
var_r30 = lbl_1_data_9DC[2]; // 8
|
||||
var_r29 = lbl_1_data_9DC[3]; // 4
|
||||
break;
|
||||
case 16:
|
||||
var_r30 = lbl_1_data_9DC[4]; // 4
|
||||
var_r29 = lbl_1_data_9DC[5]; // 4
|
||||
break;
|
||||
case 4:
|
||||
var_r30 = lbl_1_data_9DC[0]; // 8
|
||||
var_r29 = lbl_1_data_9DC[1]; // 8
|
||||
break;
|
||||
case 8:
|
||||
var_r30 = lbl_1_data_9DC[2]; // 8
|
||||
var_r29 = lbl_1_data_9DC[3]; // 4
|
||||
break;
|
||||
case 16:
|
||||
var_r30 = lbl_1_data_9DC[4]; // 4
|
||||
var_r29 = lbl_1_data_9DC[5]; // 4
|
||||
break;
|
||||
}
|
||||
|
||||
var_r31 = (void *)(((arg1/var_r30)*32)+(((arg1%8)*arg0->bmp->pixSize)/8)+(((arg0->bmp->sizeX / var_r30) * ((arg2 / var_r29) << 5))+((u32)arg0->bmp->data)+((arg0->bmp->pixSize * ((arg2 % var_r29) * 8)) / 8)));
|
||||
var_r31 = (void *)(((arg1 / var_r30) * 32) + (((arg1 % 8) * arg0->bmp->pixSize) / 8)
|
||||
+ (((arg0->bmp->sizeX / var_r30) * ((arg2 / var_r29) << 5)) + ((u32)arg0->bmp->data) + ((arg0->bmp->pixSize * ((arg2 % var_r29) * 8)) / 8)));
|
||||
|
||||
switch (arg0->bmp->pixSize) {
|
||||
case 4:
|
||||
if ((arg1 & 1) == 0) {
|
||||
*var_r31 &= 0xF;
|
||||
*var_r31 |= arg3 << 4;
|
||||
case 4:
|
||||
if ((arg1 & 1) == 0) {
|
||||
*var_r31 &= 0xF;
|
||||
*var_r31 |= arg3 << 4;
|
||||
break;
|
||||
}
|
||||
*var_r31 &= 0xF0;
|
||||
*var_r31 |= arg3;
|
||||
break;
|
||||
case 8:
|
||||
*var_r31 |= arg3;
|
||||
break;
|
||||
case 16:
|
||||
*((u16 *)var_r31) = arg3;
|
||||
break;
|
||||
}
|
||||
*var_r31 &= 0xF0;
|
||||
*var_r31 |= arg3;
|
||||
break;
|
||||
case 8:
|
||||
*var_r31 |= arg3;
|
||||
break;
|
||||
case 16:
|
||||
*((u16 *)var_r31) = arg3;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1340,42 +1380,44 @@ u16 fn_1_607C(AnimData *arg0, u16 arg1, u16 arg2)
|
|||
u32 temp_r6;
|
||||
u8 temp_r0;
|
||||
u8 temp_r0_3;
|
||||
|
||||
|
||||
switch (arg0->bmp->pixSize) {
|
||||
case 4:
|
||||
var_r31 = lbl_1_data_9F4[0];
|
||||
var_r30 = lbl_1_data_9F4[1];
|
||||
break;
|
||||
case 8:
|
||||
var_r31 = lbl_1_data_9F4[2];
|
||||
var_r30 = lbl_1_data_9F4[3];
|
||||
break;
|
||||
case 16:
|
||||
var_r31 = lbl_1_data_9F4[4];
|
||||
var_r30 = lbl_1_data_9F4[5];
|
||||
break;
|
||||
case 4:
|
||||
var_r31 = lbl_1_data_9F4[0];
|
||||
var_r30 = lbl_1_data_9F4[1];
|
||||
break;
|
||||
case 8:
|
||||
var_r31 = lbl_1_data_9F4[2];
|
||||
var_r30 = lbl_1_data_9F4[3];
|
||||
break;
|
||||
case 16:
|
||||
var_r31 = lbl_1_data_9F4[4];
|
||||
var_r30 = lbl_1_data_9F4[5];
|
||||
break;
|
||||
}
|
||||
var_r29 = (void *)(((arg1/var_r31)*32)+(((arg1%8)*arg0->bmp->pixSize)/8)+(((arg0->bmp->sizeX / var_r31) * ((arg2 / var_r30) << 5))+((u32)arg0->bmp->data)+((arg0->bmp->pixSize * ((arg2 % var_r30) * 8)) / 8)));
|
||||
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
|
||||
var_r29 = (void *)(((arg1 / var_r31) * 32) + (((arg1 % 8) * arg0->bmp->pixSize) / 8)
|
||||
+ (((arg0->bmp->sizeX / var_r31) * ((arg2 / var_r30) << 5)) + ((u32)arg0->bmp->data) + ((arg0->bmp->pixSize * ((arg2 % var_r30) * 8)) / 8)));
|
||||
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
|
||||
switch (arg0->bmp->pixSize) {
|
||||
case 4:
|
||||
if ((arg1 & 1) == 0) {
|
||||
var_r28 = *var_r29 >> 4;
|
||||
} else {
|
||||
var_r28 = *var_r29 & 0xF;
|
||||
}
|
||||
return var_r28;
|
||||
case 8:
|
||||
return *var_r29;
|
||||
case 16:
|
||||
return *((u16 *)var_r29);
|
||||
case 4:
|
||||
if ((arg1 & 1) == 0) {
|
||||
var_r28 = *var_r29 >> 4;
|
||||
}
|
||||
else {
|
||||
var_r28 = *var_r29 & 0xF;
|
||||
}
|
||||
return var_r28;
|
||||
case 8:
|
||||
return *var_r29;
|
||||
case 16:
|
||||
return *((u16 *)var_r29);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1423,28 +1465,28 @@ void fn_1_66DC(omObjData *object)
|
|||
|
||||
var_r31 = Hu3DCamera;
|
||||
switch (fn_1_38C()) {
|
||||
case 1:
|
||||
fn_1_648C(0, 1, 1.0 - cosd(90.0f * lbl_1_bss_4));
|
||||
if (lbl_1_bss_4 < 1.0f) {
|
||||
lbl_1_bss_4 += 0.007999999f;
|
||||
if (lbl_1_bss_4 > 1.0f) {
|
||||
lbl_1_bss_4 = 1.0f;
|
||||
case 1:
|
||||
fn_1_648C(0, 1, 1.0 - cosd(90.0f * lbl_1_bss_4));
|
||||
if (lbl_1_bss_4 < 1.0f) {
|
||||
lbl_1_bss_4 += 0.007999999f;
|
||||
if (lbl_1_bss_4 > 1.0f) {
|
||||
lbl_1_bss_4 = 1.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
Center.x += 2.0000002f;
|
||||
Hu3DShadowData.unk_14.x = 1000.0f + var_r31->pos.x;
|
||||
Hu3DShadowData.unk_20.x = Hu3DShadowData.unk_14.x - 1500.0f;
|
||||
break;
|
||||
case 6:
|
||||
fn_1_648C(1, 1, 0.0f);
|
||||
break;
|
||||
case 7:
|
||||
if (Center.x < 3000.0f) {
|
||||
Center.x += 25.0f;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
break;
|
||||
case 3:
|
||||
Center.x += 2.0000002f;
|
||||
Hu3DShadowData.unk_14.x = 1000.0f + var_r31->pos.x;
|
||||
Hu3DShadowData.unk_20.x = Hu3DShadowData.unk_14.x - 1500.0f;
|
||||
break;
|
||||
case 6:
|
||||
fn_1_648C(1, 1, 0.0f);
|
||||
break;
|
||||
case 7:
|
||||
if (Center.x < 3000.0f) {
|
||||
Center.x += 25.0f;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2446,10 +2446,10 @@ void fn_1_9F78(void)
|
|||
|
||||
var_r30 = lbl_1_bss_9C = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(UnkM406Struct8), MEMORY_DEFAULT_NUM);
|
||||
memset(var_r30, 0, sizeof(UnkM406Struct8));
|
||||
var_r30->unk_00 = HuSprAnimRead(HuDataReadNum(0x250040, MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_04 = HuSprAnimRead(HuDataReadNum(0x250041, MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_08 = HuSprAnimRead(HuDataReadNum(0x250042, MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_0C = HuSprAnimRead(HuDataReadNum(0x250043, MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_00 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M406, 0x40), MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_04 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M406, 0x41), MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_08 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M406, 0x42), MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_0C = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M406, 0x43), MEMORY_DEFAULT_NUM));
|
||||
var_r30->unk_24 = 0.0f;
|
||||
var_r30->unk_28 = 0.0f;
|
||||
var_r27 = fn_1_B474(var_r30->unk_00, 1);
|
||||
|
|
|
|||
|
|
@ -251,16 +251,16 @@ char *lbl_1_data_1068[4] = {
|
|||
};
|
||||
|
||||
s32 lbl_1_data_1078[10] = {
|
||||
0x5F0037,
|
||||
0x5F0055,
|
||||
0x5F0039,
|
||||
0x5F0054,
|
||||
0x5F0041,
|
||||
0x5F0056,
|
||||
0x5F0050,
|
||||
0x5F0016,
|
||||
0x5F0053,
|
||||
0x5F0023,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x37),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x55),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x39),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x54),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x41),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x56),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x50),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x16),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x53),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x23),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_10A0[8][4] = {
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
#include "src/REL/m407dll/m407dll.h"
|
||||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/hsfdraw.h"
|
||||
|
||||
#include "REL/m407dll.h"
|
||||
|
||||
typedef struct unkDominationData4 {
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ u32 unk_04;
|
||||
|
|
@ -28,11 +29,11 @@ omObjData* lbl_1_bss_37E0[100];
|
|||
|
||||
//data
|
||||
s32 lbl_1_data_288[] = {
|
||||
0x00260015,
|
||||
0x00260016,
|
||||
0x00260017,
|
||||
0x00260018,
|
||||
0x00260019
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x15),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x16),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x17),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x18),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x19)
|
||||
};
|
||||
|
||||
ObjFuncs lbl_1_data_29C[] = {
|
||||
|
|
@ -143,7 +144,7 @@ void fn_1_46EC(omObjData* arg0) {
|
|||
temp_r30->unk_00 = arg0->work[0];
|
||||
temp_r30->unk_08 = arg0->work[1];
|
||||
temp_r30->unk_1C = 0;
|
||||
arg0->model[0] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_288[temp_r30->unk_08], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[0] = Hu3DModelCreateFile(lbl_1_data_288[temp_r30->unk_08]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x4000);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x40000002);
|
||||
Hu3DModelAttrSet(arg0->model[0], 1);
|
||||
|
|
|
|||
|
|
@ -1,51 +1,47 @@
|
|||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/object.h"
|
||||
#include "game/process.h"
|
||||
|
||||
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
|
||||
|
||||
//function signatures
|
||||
void fn_1_162C(omObjData*);
|
||||
void fn_1_1A8C(omObjData*);
|
||||
// function signatures
|
||||
void fn_1_162C(omObjData *);
|
||||
void fn_1_1A8C(omObjData *);
|
||||
|
||||
//bss
|
||||
Process* lbl_1_bss_2C;
|
||||
omObjData* lbl_1_bss_28;
|
||||
// bss
|
||||
Process *lbl_1_bss_2C;
|
||||
omObjData *lbl_1_bss_28;
|
||||
s16 lbl_1_bss_24;
|
||||
s32 lbl_1_bss_20;
|
||||
|
||||
//data
|
||||
// data
|
||||
s32 lbl_1_data_198[] = {
|
||||
0x00260000,
|
||||
0x00260002,
|
||||
0x00260003,
|
||||
0x00260001,
|
||||
0x00260005,
|
||||
0x00260006,
|
||||
0x00260007,
|
||||
0x00260008,
|
||||
0x00260009,
|
||||
0x0026000A,
|
||||
0x0026000B,
|
||||
0x0026000C,
|
||||
0x00260004,
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x03),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x01),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x07),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x08),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x09),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0A),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0B),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0C),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x04),
|
||||
};
|
||||
|
||||
Vec lbl_1_data_1CC[] = {
|
||||
{600.0f, 3.0f, -300.0f},
|
||||
{200.0f, 3.0f, -300.0f},
|
||||
{-200.0f, 3.0f, -300.0f},
|
||||
{-600.0f, 3.0f, -300.0f}
|
||||
};
|
||||
Vec lbl_1_data_1CC[] = { { 600.0f, 3.0f, -300.0f }, { 200.0f, 3.0f, -300.0f }, { -200.0f, 3.0f, -300.0f }, { -600.0f, 3.0f, -300.0f } };
|
||||
|
||||
Point3d lbl_1_data_1FC = {2000.0f, 3000.0f, 2000.0f};
|
||||
Point3d lbl_1_data_208 = {-0.5f, -0.5f, -0.5f};
|
||||
GXColor lbl_1_data_214 = {255, 255, 255, 255};
|
||||
Point3d lbl_1_data_218 = {0.0f, 1.0f, 0.0f};
|
||||
Point3d lbl_1_data_1FC = { 2000.0f, 3000.0f, 2000.0f };
|
||||
Point3d lbl_1_data_208 = { -0.5f, -0.5f, -0.5f };
|
||||
GXColor lbl_1_data_214 = { 255, 255, 255, 255 };
|
||||
Point3d lbl_1_data_218 = { 0.0f, 1.0f, 0.0f };
|
||||
|
||||
void fn_1_14F0(Process* arg0, s32 arg1) {
|
||||
LightData* sp10;
|
||||
void fn_1_14F0(Process *arg0, s32 arg1)
|
||||
{
|
||||
LightData *sp10;
|
||||
|
||||
lbl_1_bss_2C = arg0;
|
||||
lbl_1_bss_20 = arg1;
|
||||
|
|
@ -57,7 +53,8 @@ void fn_1_14F0(Process* arg0, s32 arg1) {
|
|||
sp10 = &Hu3DGlobalLight[lbl_1_bss_24];
|
||||
}
|
||||
|
||||
void fn_1_15D8(void) {
|
||||
void fn_1_15D8(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 13; i++) {
|
||||
|
|
@ -65,7 +62,8 @@ void fn_1_15D8(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_162C(omObjData* arg0) {
|
||||
void fn_1_162C(omObjData *arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
s32 var_r30_2;
|
||||
s32 var_r30_3;
|
||||
|
|
@ -73,50 +71,52 @@ void fn_1_162C(omObjData* arg0) {
|
|||
s32 i;
|
||||
|
||||
arg0->func = fn_1_1A8C;
|
||||
arg0->model[0] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[2], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[0] = Hu3DModelCreateFile(lbl_1_data_198[2]);
|
||||
Hu3DModelShadowMapSet(arg0->model[0]);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
arg0->model[1] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[3], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[1] = Hu3DModelCreateFile(lbl_1_data_198[3]);
|
||||
Hu3DModelAmbSet(arg0->model[1], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelAttrSet(arg0->model[1], 1);
|
||||
for (i = 0; i < ARRAY_COUNT(GWPlayerCfg); i++) {
|
||||
arg0->model[i+2] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[GWPlayerCfg[i].character + 4], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[i + 2] = Hu3DModelCreateFile(lbl_1_data_198[GWPlayerCfg[i].character + 4]);
|
||||
Hu3DModelAmbSet(arg0->model[i + 2], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelShadowMapSet(arg0->model[i + 2]);
|
||||
}
|
||||
|
||||
for (i = 0; i < 5; i++) {
|
||||
if (i == 0) {
|
||||
arg0->model[i + 6] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[0], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
} else {
|
||||
arg0->model[i + 6] = Hu3DModelCreateFile(lbl_1_data_198[0]);
|
||||
}
|
||||
else {
|
||||
arg0->model[i + 6] = Hu3DModelLink(arg0->model[6]);
|
||||
}
|
||||
Hu3DModelAmbSet(arg0->model[i + 6], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelShadowMapSet(arg0->model[i + 6]);
|
||||
}
|
||||
|
||||
arg0->model[11] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[12], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[12] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_198[1], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[11] = Hu3DModelCreateFile(lbl_1_data_198[12]);
|
||||
arg0->model[12] = Hu3DModelCreateFile(lbl_1_data_198[1]);
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
Hu3DModelPosSetV(arg0->model[i + 2], &lbl_1_data_1CC[i]);
|
||||
}
|
||||
|
||||
for (i = 0; i < 5; i++) {
|
||||
Hu3DModelPosSet(arg0->model[i + 6], 0.0f, 0.0f, -2000.0f + (8000.0f * (f32) i));
|
||||
Hu3DModelPosSet(arg0->model[i + 6], 0.0f, 0.0f, -2000.0f + (8000.0f * (f32)i));
|
||||
}
|
||||
|
||||
|
||||
Hu3DModelPosSet(arg0->model[11], 0.0f, 0.0f, -3900.0f);
|
||||
Hu3DModelPosSet(arg0->model[12], 0.0f, 0.0f, 0.0f);
|
||||
Hu3DModelAttrSet(arg0->model[12], 0x40000001);
|
||||
|
||||
|
||||
if (lbl_1_bss_20 > 0) {
|
||||
Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, 200.0f * (f32) lbl_1_bss_20);
|
||||
Hu3DModelPosSet(arg0->model[1], 0.0f, 0.0f, 200.0f * (f32)lbl_1_bss_20);
|
||||
Hu3DModelAttrReset(arg0->model[1], 1);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1A8C(omObjData* arg0) {
|
||||
void fn_1_1A8C(omObjData *arg0)
|
||||
{
|
||||
Point3d sp8;
|
||||
|
||||
sp8.x = lbl_1_data_1FC.x;
|
||||
|
|
@ -124,4 +124,4 @@ void fn_1_1A8C(omObjData* arg0) {
|
|||
sp8.z = lbl_1_data_1FC.z + Center.z;
|
||||
Hu3DGLightPosSetV(lbl_1_bss_24, &sp8, &lbl_1_data_208);
|
||||
Hu3DShadowPosSet(&sp8, &lbl_1_data_218, &Center);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,27 @@
|
|||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/object.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/process.h"
|
||||
#include "math.h"
|
||||
|
||||
#include "rel_sqrt_consts.h"
|
||||
|
||||
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
|
||||
typedef void (*ObjFuncs)(omObjData*);
|
||||
typedef void (*ObjFuncs)(omObjData *);
|
||||
|
||||
typedef struct unkDominationData {
|
||||
u8 unk_00;
|
||||
u8 unk_01;
|
||||
u8 unk_02;
|
||||
//padding unk_03
|
||||
// padding unk_03
|
||||
s32 unk_04;
|
||||
s32 unk_08;
|
||||
u8 unk_0C;
|
||||
//padding unk_0D
|
||||
// padding unk_0D
|
||||
f32 unk_10;
|
||||
f32 unk_14;
|
||||
f32 unk_18;
|
||||
|
|
@ -35,90 +35,150 @@ typedef struct unkDominationData {
|
|||
s32 unk_38;
|
||||
} unkDominationData;
|
||||
|
||||
//function signatures
|
||||
void fn_1_628(omObjData*, s32);
|
||||
void fn_1_64C(omObjData*);
|
||||
void fn_1_99C(omObjData*);
|
||||
void fn_1_A1C(omObjData* arg0);
|
||||
// function signatures
|
||||
void fn_1_628(omObjData *, s32);
|
||||
void fn_1_64C(omObjData *);
|
||||
void fn_1_99C(omObjData *);
|
||||
void fn_1_A1C(omObjData *arg0);
|
||||
void fn_1_26CC(u8);
|
||||
void fn_1_4544(s32, s32, f32, f32, f32);
|
||||
s16 fn_1_28B8(u8);
|
||||
s16 fn_1_28E4(u8);
|
||||
void fn_1_A88(omObjData* arg0);
|
||||
void fn_1_A8C(omObjData* arg0);
|
||||
void fn_1_C58(omObjData* arg0);
|
||||
void fn_1_CF4(omObjData* arg0);
|
||||
void fn_1_DB4(omObjData* arg0);
|
||||
void fn_1_F8C(omObjData* arg0);
|
||||
void fn_1_1074(omObjData* arg0);
|
||||
void fn_1_11CC(omObjData* arg0);
|
||||
void fn_1_13E4(omObjData* arg0);
|
||||
void fn_1_1460(omObjData* arg0);
|
||||
void fn_1_A88(omObjData *arg0);
|
||||
void fn_1_A8C(omObjData *arg0);
|
||||
void fn_1_C58(omObjData *arg0);
|
||||
void fn_1_CF4(omObjData *arg0);
|
||||
void fn_1_DB4(omObjData *arg0);
|
||||
void fn_1_F8C(omObjData *arg0);
|
||||
void fn_1_1074(omObjData *arg0);
|
||||
void fn_1_11CC(omObjData *arg0);
|
||||
void fn_1_13E4(omObjData *arg0);
|
||||
void fn_1_1460(omObjData *arg0);
|
||||
|
||||
//bss
|
||||
Process* lbl_1_bss_18;
|
||||
omObjData* lbl_1_bss_8[4];
|
||||
Process* lbl_1_bss_0[2];
|
||||
// bss
|
||||
Process *lbl_1_bss_18;
|
||||
omObjData *lbl_1_bss_8[4];
|
||||
Process *lbl_1_bss_0[2];
|
||||
|
||||
//data
|
||||
// data
|
||||
u32 lbl_1_data_0[8][8] = {
|
||||
{0x005F0000, 0x005F0024, 0x005F0029, 0x005F0005, 0x005F0006, 0x005F004A, 0x005F004B, 0x005F0018},
|
||||
{0x001A0000, 0x001A0024, 0x001A0029, 0x001A0005, 0x001A0006, 0x001A004A, 0x001A004B, 0x001A0018},
|
||||
{0x006D0000, 0x006D0024, 0x006D0029, 0x006D0005, 0x006D0006, 0x006D004A, 0x006D004B, 0x006D0018},
|
||||
{0x008A0000, 0x008A0024, 0x008A0029, 0x008A0005, 0x008A0006, 0x008A004A, 0x008A004B, 0x008A0018},
|
||||
{0x00850000, 0x00850024, 0x00850029, 0x00850005, 0x00850006, 0x0085004A, 0x0085004B, 0x00850018},
|
||||
{0x00110000, 0x00110024, 0x00110029, 0x00110005, 0x00110006, 0x0011004A, 0x0011004B, 0x00110018},
|
||||
{0x000D0000, 0x000D0024, 0x000D0029, 0x000D0005, 0x000D0006, 0x000D004A, 0x000D004B, 0x000D0018},
|
||||
{0x00810000, 0x00810024, 0x00810029, 0x00810005, 0x00810006, 0x0081004A, 0x0081004B, 0x00810018}
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x18),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x4A),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x4B),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x18),
|
||||
},
|
||||
};
|
||||
|
||||
s32 lbl_1_data_100[] = {0x0026000D, 0x0026000E, 0x0026000F, 0x00260010, 0x00260011, 0x00260012, 0x00260013, 0x00260014};
|
||||
s32 lbl_1_data_100[] = {
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0D),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0E),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x0F),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x10),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x11),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x12),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x13),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x14),
|
||||
};
|
||||
|
||||
char lbl_1_data_120[] = "test11_tex_we-itemhook-r";
|
||||
char* lbl_1_data_13C[] = {
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120,
|
||||
lbl_1_data_120
|
||||
};
|
||||
char *lbl_1_data_13C[]
|
||||
= { lbl_1_data_120, lbl_1_data_120, lbl_1_data_120, lbl_1_data_120, lbl_1_data_120, lbl_1_data_120, lbl_1_data_120, lbl_1_data_120 };
|
||||
|
||||
ObjFuncs lbl_1_data_15C[] = {
|
||||
fn_1_A88,
|
||||
fn_1_A8C,
|
||||
fn_1_C58,
|
||||
fn_1_CF4,
|
||||
fn_1_DB4,
|
||||
fn_1_F8C,
|
||||
fn_1_1074,
|
||||
fn_1_11CC,
|
||||
fn_1_13E4,
|
||||
fn_1_1460
|
||||
};
|
||||
ObjFuncs lbl_1_data_15C[] = { fn_1_A88, fn_1_A8C, fn_1_C58, fn_1_CF4, fn_1_DB4, fn_1_F8C, fn_1_1074, fn_1_11CC, fn_1_13E4, fn_1_1460 };
|
||||
|
||||
u8 lbl_1_data_184[4][2] = {
|
||||
{0x3C, 0x0F},
|
||||
{0x50, 0x0F},
|
||||
{0x64, 0x14},
|
||||
{0x78, 0x14}
|
||||
};
|
||||
u8 lbl_1_data_184[4][2] = { { 0x3C, 0x0F }, { 0x50, 0x0F }, { 0x64, 0x14 }, { 0x78, 0x14 } };
|
||||
|
||||
inline void SetDominationDataStuff(omObjData* arg0, s32 val0, s32 val1) {
|
||||
unkDominationData* temp_r29 = arg0->data;
|
||||
inline void SetDominationDataStuff(omObjData *arg0, s32 val0, s32 val1)
|
||||
{
|
||||
unkDominationData *temp_r29 = arg0->data;
|
||||
temp_r29->unk_1C = val0;
|
||||
temp_r29->unk_20 = val1;
|
||||
}
|
||||
|
||||
void ObjectSetup(void) {
|
||||
void ObjectSetup(void)
|
||||
{
|
||||
lbl_1_bss_0[0] = omInitObjMan(0x2F8, 0x2000);
|
||||
omGameSysInit(lbl_1_bss_0[0]);
|
||||
fn_1_4980(lbl_1_bss_0[0]);
|
||||
}
|
||||
|
||||
void fn_1_F4(Process* arg0) {
|
||||
void fn_1_F4(Process *arg0)
|
||||
{
|
||||
u32 i;
|
||||
lbl_1_bss_18 = arg0;
|
||||
|
||||
|
|
@ -128,7 +188,8 @@ void fn_1_F4(Process* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_194(void) {
|
||||
void fn_1_194(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -136,7 +197,8 @@ void fn_1_194(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_1E4(void) {
|
||||
void fn_1_1E4(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -144,7 +206,8 @@ void fn_1_1E4(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_238(void) {
|
||||
void fn_1_238(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -152,7 +215,8 @@ void fn_1_238(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_28C(void) {
|
||||
void fn_1_28C(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -160,7 +224,8 @@ void fn_1_28C(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_2E0(void) {
|
||||
void fn_1_2E0(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -168,7 +233,8 @@ void fn_1_2E0(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_334(void) {
|
||||
void fn_1_334(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -176,19 +242,22 @@ void fn_1_334(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_388(u8 arg0, s32 arg1) {
|
||||
omObjData* obj = lbl_1_bss_8[arg0];
|
||||
unkDominationData* unkData = obj->data;
|
||||
void fn_1_388(u8 arg0, s32 arg1)
|
||||
{
|
||||
omObjData *obj = lbl_1_bss_8[arg0];
|
||||
unkDominationData *unkData = obj->data;
|
||||
unkData->unk_38 = arg1;
|
||||
}
|
||||
|
||||
void fn_1_3C4(u8 arg0) {
|
||||
void fn_1_3C4(u8 arg0)
|
||||
{
|
||||
fn_1_628(lbl_1_bss_8[arg0], 8);
|
||||
}
|
||||
|
||||
void fn_1_404(void) {
|
||||
omObjData* temp_r31;
|
||||
unkDominationData* unkData;
|
||||
void fn_1_404(void)
|
||||
{
|
||||
omObjData *temp_r31;
|
||||
unkDominationData *unkData;
|
||||
s32 temp_r0;
|
||||
u8 i;
|
||||
|
||||
|
|
@ -196,68 +265,74 @@ void fn_1_404(void) {
|
|||
temp_r31 = lbl_1_bss_8[i];
|
||||
unkData = temp_r31->data;
|
||||
switch (unkData->unk_38) {
|
||||
case 0:
|
||||
fn_1_628(temp_r31, 9);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_628(temp_r31, 6);
|
||||
break;
|
||||
case 2:
|
||||
fn_1_628(temp_r31, 9);
|
||||
break;
|
||||
case 0:
|
||||
fn_1_628(temp_r31, 9);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_628(temp_r31, 6);
|
||||
break;
|
||||
case 2:
|
||||
fn_1_628(temp_r31, 9);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_4C0(u8 arg0) {
|
||||
unkDominationData* unkData;
|
||||
|
||||
s32 fn_1_4C0(u8 arg0)
|
||||
{
|
||||
unkDominationData *unkData;
|
||||
|
||||
if (arg0 >= 4) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
unkData = lbl_1_bss_8[arg0]->data;
|
||||
return unkData->unk_01;
|
||||
}
|
||||
|
||||
s32 fn_1_508(u8 arg0) {
|
||||
unkDominationData* unkData = lbl_1_bss_8[arg0]->data;
|
||||
s32 fn_1_508(u8 arg0)
|
||||
{
|
||||
unkDominationData *unkData = lbl_1_bss_8[arg0]->data;
|
||||
return unkData->unk_04;
|
||||
}
|
||||
|
||||
s32 fn_1_53C(u8 arg0) {
|
||||
return ((unkDominationData*)(lbl_1_bss_8[arg0]->data))->unk_1C == 0;
|
||||
s32 fn_1_53C(u8 arg0)
|
||||
{
|
||||
return ((unkDominationData *)(lbl_1_bss_8[arg0]->data))->unk_1C == 0;
|
||||
}
|
||||
|
||||
void fn_1_568(s16 arg0, s16 arg1, s16 arg2) {
|
||||
unkDominationData* unkData;
|
||||
void fn_1_568(s16 arg0, s16 arg1, s16 arg2)
|
||||
{
|
||||
unkDominationData *unkData;
|
||||
|
||||
unkData = lbl_1_bss_8[arg0]->data;
|
||||
switch (arg1) {
|
||||
case 0:
|
||||
omVibrate(unkData->unk_00, arg2, 6, 6);
|
||||
break;
|
||||
case 1:
|
||||
omVibrate(unkData->unk_00, arg2, 4, 2);
|
||||
break;
|
||||
case 2:
|
||||
omVibrate(unkData->unk_00, arg2, 0xC, 0);
|
||||
break;
|
||||
case 0:
|
||||
omVibrate(unkData->unk_00, arg2, 6, 6);
|
||||
break;
|
||||
case 1:
|
||||
omVibrate(unkData->unk_00, arg2, 4, 2);
|
||||
break;
|
||||
case 2:
|
||||
omVibrate(unkData->unk_00, arg2, 0xC, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_628(omObjData* arg0, s32 arg1) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_628(omObjData *arg0, s32 arg1)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_1C = arg1;
|
||||
temp_r31->unk_20 = 0;
|
||||
}
|
||||
|
||||
void fn_1_64C(omObjData* arg0) {
|
||||
void fn_1_64C(omObjData *arg0)
|
||||
{
|
||||
u32 temp_r29;
|
||||
unkDominationData* temp_r27;
|
||||
unkDominationData* temp_r31;
|
||||
unkDominationData *temp_r27;
|
||||
unkDominationData *temp_r31;
|
||||
u32 i;
|
||||
|
||||
arg0->func = fn_1_A1C;
|
||||
|
|
@ -276,14 +351,14 @@ void fn_1_64C(omObjData* arg0) {
|
|||
temp_r31->unk_30 = (600.0f / (lbl_1_data_184[temp_r31->unk_02][0] - frandmod31(lbl_1_data_184[temp_r31->unk_02][1])));
|
||||
temp_r31->unk_2C = temp_r31->unk_30;
|
||||
arg0->model[0] = CharModelCreate(temp_r31->unk_01, 8);
|
||||
arg0->model[1] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_100[temp_r31->unk_01], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[1] = Hu3DModelCreateFile(lbl_1_data_100[temp_r31->unk_01]);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelAmbSet(arg0->model[1], 1.0f, 1.0f, 1.0f);
|
||||
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
arg0->motion[i] = CharModelMotionCreate(temp_r31->unk_01, lbl_1_data_0[temp_r31->unk_01][i]);
|
||||
}
|
||||
|
||||
|
||||
Hu3DModelShadowSet(arg0->model[0]);
|
||||
Hu3DModelShadowSet(arg0->model[1]);
|
||||
CharModelMotionDataClose(temp_r31->unk_01);
|
||||
|
|
@ -296,47 +371,49 @@ void fn_1_64C(omObjData* arg0) {
|
|||
SetDominationDataStuff(arg0, 0, 0);
|
||||
}
|
||||
|
||||
void fn_1_99C(omObjData* arg0) {
|
||||
void fn_1_99C(omObjData *arg0)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
Hu3DMotionKill(arg0->motion[i]);
|
||||
}
|
||||
|
||||
for (i = 0; i < 2; i++){
|
||||
for (i = 0; i < 2; i++) {
|
||||
Hu3DModelKill(arg0->model[i]);
|
||||
}
|
||||
|
||||
|
||||
HuMemDirectFree(arg0->data);
|
||||
}
|
||||
|
||||
void fn_1_A1C(omObjData* arg0) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_A1C(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
lbl_1_data_15C[temp_r31->unk_1C](arg0);
|
||||
omSetTra(arg0, temp_r31->unk_10, temp_r31->unk_14, temp_r31->unk_18);
|
||||
}
|
||||
|
||||
void fn_1_A88(omObjData* arg0) {
|
||||
void fn_1_A88(omObjData *arg0) { }
|
||||
|
||||
}
|
||||
|
||||
void fn_1_A8C(omObjData* arg0) {
|
||||
void fn_1_A8C(omObjData *arg0)
|
||||
{
|
||||
s32 var_r29;
|
||||
unkDominationData* temp_r31;
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
var_r29 = 0;
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_28 += 1.0f;
|
||||
|
||||
|
||||
if (temp_r31->unk_04 == 0) {
|
||||
var_r29 = (HuPadBtnDown[temp_r31->unk_0C] & 0x100) ? 1 : 0;
|
||||
} else if ((u32) temp_r31->unk_28 >= (u32) temp_r31->unk_2C) {
|
||||
}
|
||||
else if ((u32)temp_r31->unk_28 >= (u32)temp_r31->unk_2C) {
|
||||
var_r29 = 1;
|
||||
temp_r31->unk_2C += temp_r31->unk_30;
|
||||
}
|
||||
|
||||
|
||||
if (var_r29 != 0) {
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[2], 0.0f, 0.0f, 0);
|
||||
fn_1_4544(4, 0x10, 600.0f - (400.0f * temp_r31->unk_00), -20.0f, -450.0f);
|
||||
|
|
@ -344,15 +421,16 @@ void fn_1_A8C(omObjData* arg0) {
|
|||
temp_r31->unk_34 = 1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if ((temp_r31->unk_34 != 0) && (Hu3DMotionEndCheck(arg0->model[0]) != 0)) {
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[1], 0.0f, 0.0f, 0x40000001);
|
||||
temp_r31->unk_34 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_C58(omObjData* arg0) {
|
||||
unkDominationData* temp_r30;
|
||||
void fn_1_C58(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r30;
|
||||
|
||||
temp_r30 = arg0->data;
|
||||
if (Hu3DMotionEndCheck(arg0->model[0]) != 0) {
|
||||
|
|
@ -362,8 +440,9 @@ void fn_1_C58(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_CF4(omObjData* arg0) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_CF4(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (temp_r31->unk_20 == 0) {
|
||||
|
|
@ -375,56 +454,59 @@ void fn_1_CF4(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_DB4(omObjData* arg0) {
|
||||
void fn_1_DB4(omObjData *arg0)
|
||||
{
|
||||
f32 temp_f31;
|
||||
f32 temp_f30;
|
||||
unkDominationData* temp_r31;
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
|
||||
|
||||
if (temp_r31->unk_20 == 0) {
|
||||
CharModelVoiceEnableSet(temp_r31->unk_01, arg0->motion[3], 0);
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[3], 0.0f, 10.0f, 0);
|
||||
temp_r31->unk_24 = 0.0f;
|
||||
temp_r31->unk_20++;
|
||||
}
|
||||
|
||||
|
||||
temp_f31 = (32.0f * sin(1.0471975511965976)) - (9.8f * temp_r31->unk_24);
|
||||
temp_f30 = 22.0f * cos(1.0471975511965976);
|
||||
temp_r31->unk_18 = temp_r31->unk_18 + temp_f30;
|
||||
temp_r31->unk_14 = temp_r31->unk_14 + temp_f31;
|
||||
temp_r31->unk_24 += 0.3f;
|
||||
|
||||
|
||||
if (!(temp_f31 < 0.0f) || !(temp_r31->unk_14 <= 30.0f)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
temp_r31->unk_14 = 30.0f;
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[4], 0.0f, 10.0f, 0);
|
||||
SetDominationDataStuff(arg0, 0, 0);
|
||||
}
|
||||
|
||||
//can also be placed into fn_1_F8C as static const
|
||||
const s32 lbl_1_rodata_70[] = {0x00000122, 0x00000162, 0x000001A2, 0x000001E2, 0x00000222, 0x00000262, 0x000002A2, 0x000002E2};
|
||||
// can also be placed into fn_1_F8C as static const
|
||||
const s32 lbl_1_rodata_70[] = { 0x00000122, 0x00000162, 0x000001A2, 0x000001E2, 0x00000222, 0x00000262, 0x000002A2, 0x000002E2 };
|
||||
|
||||
void fn_1_F8C(omObjData* arg0) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_F8C(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
|
||||
|
||||
if (temp_r31->unk_20 == 0) {
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[5], 0.0f, 10.0f, 0);
|
||||
HuAudFXPlay(lbl_1_rodata_70[temp_r31->unk_01]);
|
||||
}
|
||||
|
||||
|
||||
if (temp_r31->unk_20++ >= 120) {
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[0], 0.0f, 10.0f, 0x40000001);
|
||||
SetDominationDataStuff(arg0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1074(omObjData* arg0) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_1074(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (temp_r31->unk_20 == 0) {
|
||||
|
|
@ -433,18 +515,19 @@ void fn_1_1074(omObjData* arg0) {
|
|||
temp_r31->unk_24 = 0.0f;
|
||||
temp_r31->unk_20 = 1;
|
||||
}
|
||||
|
||||
|
||||
temp_r31->unk_14 = (temp_r31->unk_14 + ((80.0 * sin(1.5707963267948966)) - (9.8 * temp_r31->unk_24)));
|
||||
temp_r31->unk_24 += 0.3f;
|
||||
|
||||
|
||||
if (!(temp_r31->unk_14 < 1000.0f)) {
|
||||
CharModelMotionShiftSet(temp_r31->unk_01, arg0->motion[4], 0.0f, 10.0f, 0);
|
||||
SetDominationDataStuff(arg0, 7, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_11CC(omObjData* arg0) {
|
||||
unkDominationData* temp_r31;
|
||||
void fn_1_11CC(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r31;
|
||||
s16 temp;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
|
|
@ -456,10 +539,10 @@ void fn_1_11CC(omObjData* arg0) {
|
|||
temp_r31->unk_24 = 0.0f;
|
||||
temp_r31->unk_20 = 1;
|
||||
}
|
||||
|
||||
|
||||
temp_r31->unk_14 = (temp_r31->unk_14 - (2.0f + (9.8f * temp_r31->unk_24)));
|
||||
temp_r31->unk_24 += 0.3f;
|
||||
|
||||
|
||||
if (!(temp_r31->unk_14 > 300.0f)) {
|
||||
temp_r31->unk_14 = 300.0f;
|
||||
CharModelVoiceEnableSet(temp_r31->unk_01, arg0->motion[4], 0);
|
||||
|
|
@ -473,16 +556,18 @@ void fn_1_11CC(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_13E4(omObjData* arg0) {
|
||||
unkDominationData* temp_r30;
|
||||
void fn_1_13E4(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r30;
|
||||
|
||||
temp_r30 = arg0->data;
|
||||
CharModelMotionShiftSet(temp_r30->unk_01, arg0->motion[6], 0.0f, 10.0f, 0);
|
||||
SetDominationDataStuff(arg0, 0, 0);
|
||||
}
|
||||
|
||||
void fn_1_1460(omObjData* arg0) {
|
||||
unkDominationData* temp_r30;
|
||||
void fn_1_1460(omObjData *arg0)
|
||||
{
|
||||
unkDominationData *temp_r30;
|
||||
|
||||
temp_r30 = arg0->data;
|
||||
CharModelVoiceEnableSet(temp_r30->unk_01, arg0->motion[7], 0);
|
||||
|
|
|
|||
|
|
@ -1,42 +1,40 @@
|
|||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/esprite.h"
|
||||
#include "game/object.h"
|
||||
#include "game/process.h"
|
||||
#include "game/sprite.h"
|
||||
|
||||
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
|
||||
|
||||
typedef void (*ObjFuncs)(void);
|
||||
|
||||
typedef struct unkDominationData6 {
|
||||
/* 0x00 */ s32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ s16 unk_08;
|
||||
/* 0x0A */ s16 unk_0A;
|
||||
/* 0x0C */ s16 unk_0C[8]; //what size is this??
|
||||
/* 0x1C */ s32 unk_1C;
|
||||
/* 0x20 */ f32 unk_20;
|
||||
} unkDominationData6; //sizeof 0x24
|
||||
/* 0x00 */ s32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ s16 unk_08;
|
||||
/* 0x0A */ s16 unk_0A;
|
||||
/* 0x0C */ s16 unk_0C[8]; // what size is this??
|
||||
/* 0x1C */ s32 unk_1C;
|
||||
/* 0x20 */ f32 unk_20;
|
||||
} unkDominationData6; // sizeof 0x24
|
||||
|
||||
//func signatures
|
||||
// func signatures
|
||||
void fn_1_61A0(void);
|
||||
void fn_1_6218(void);
|
||||
void fn_1_62A0(void);
|
||||
void fn_1_5FE4(omObjData* arg0);
|
||||
void fn_1_5FE4(omObjData *arg0);
|
||||
void fn_1_5FB4(s32 arg0);
|
||||
s16 fn_1_28D4(void);
|
||||
|
||||
//bss
|
||||
Process* lbl_1_bss_398C;
|
||||
omObjData* lbl_1_bss_3988;
|
||||
// bss
|
||||
Process *lbl_1_bss_398C;
|
||||
omObjData *lbl_1_bss_3988;
|
||||
|
||||
//data
|
||||
ObjFuncs lbl_1_data_360[] = {
|
||||
fn_1_61A0,
|
||||
fn_1_6218,
|
||||
fn_1_62A0
|
||||
};
|
||||
// data
|
||||
ObjFuncs lbl_1_data_360[] = { fn_1_61A0, fn_1_6218, fn_1_62A0 };
|
||||
|
||||
void fn_1_5C5C(Process* arg0, s16 arg1) {
|
||||
unkDominationData6* temp_r31;
|
||||
void fn_1_5C5C(Process *arg0, s16 arg1)
|
||||
{
|
||||
unkDominationData6 *temp_r31;
|
||||
u32 i;
|
||||
|
||||
lbl_1_bss_398C = arg0;
|
||||
|
|
@ -45,21 +43,21 @@ void fn_1_5C5C(Process* arg0, s16 arg1) {
|
|||
temp_r31 = lbl_1_bss_3988->data;
|
||||
temp_r31->unk_08 = arg1;
|
||||
temp_r31->unk_0A = 0;
|
||||
temp_r31->unk_0C[6] = espEntry(0x260025, 2, 0);
|
||||
temp_r31->unk_0C[6] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x25), 2, 0);
|
||||
espTPLvlSet(temp_r31->unk_0C[6], 0.5f);
|
||||
espPosSet(temp_r31->unk_0C[6], 508.0f, 64.0f);
|
||||
temp_r31->unk_0C[7] = espEntry(0x260022, 1, 0);
|
||||
temp_r31->unk_0C[7] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x22), 1, 0);
|
||||
espPosSet(temp_r31->unk_0C[7], 480.0f, 56.0f);
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
temp_r31->unk_0C[i] = espEntry(0x26001F, 0, 0);
|
||||
temp_r31->unk_0C[i] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x1F), 0, 0);
|
||||
espPosSet(temp_r31->unk_0C[i], i * 16 + 0x1F4, 56.0f);
|
||||
espDispOff(temp_r31->unk_0C[i]);
|
||||
}
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
temp_r31->unk_0C[i+3] = espEntry(0x260020, 1, 0);
|
||||
espPosSet(temp_r31->unk_0C[i+3], i * 16 + 0x1F4, 74.0f);
|
||||
temp_r31->unk_0C[i + 3] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x20), 1, 0);
|
||||
espPosSet(temp_r31->unk_0C[i + 3], i * 16 + 0x1F4, 74.0f);
|
||||
}
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
|
|
@ -69,44 +67,49 @@ void fn_1_5C5C(Process* arg0, s16 arg1) {
|
|||
fn_1_5FB4(0);
|
||||
}
|
||||
|
||||
void fn_1_5ECC(void) {
|
||||
void fn_1_5ECC(void)
|
||||
{
|
||||
s32 i;
|
||||
unkDominationData6* temp_r30;
|
||||
unkDominationData6 *temp_r30;
|
||||
|
||||
temp_r30 = lbl_1_bss_3988->data;
|
||||
for (i = 0; i < 7; i++) {
|
||||
espKill(temp_r30->unk_0C[i]);
|
||||
}
|
||||
|
||||
|
||||
HuMemDirectFree(lbl_1_bss_3988->data);
|
||||
}
|
||||
|
||||
void fn_1_5F40(s32 arg0) {
|
||||
void fn_1_5F40(s32 arg0)
|
||||
{
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
fn_1_5FB4(1);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_5FB4(2);
|
||||
break;
|
||||
case 0:
|
||||
fn_1_5FB4(1);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_5FB4(2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_5F90(void) {
|
||||
void fn_1_5F90(void)
|
||||
{
|
||||
fn_1_5FB4(0);
|
||||
}
|
||||
|
||||
void fn_1_5FB4(s32 arg0) {
|
||||
unkDominationData6* temp_r31;
|
||||
void fn_1_5FB4(s32 arg0)
|
||||
{
|
||||
unkDominationData6 *temp_r31;
|
||||
|
||||
temp_r31 = lbl_1_bss_3988->data;
|
||||
temp_r31->unk_00 = arg0;
|
||||
temp_r31->unk_04 = 0;
|
||||
}
|
||||
|
||||
void fn_1_5FE4(omObjData* arg0) {
|
||||
void fn_1_5FE4(omObjData *arg0)
|
||||
{
|
||||
s16 temp_r31;
|
||||
unkDominationData6* temp_r30;
|
||||
unkDominationData6 *temp_r30;
|
||||
|
||||
temp_r30 = lbl_1_bss_3988->data;
|
||||
lbl_1_data_360[temp_r30->unk_00]();
|
||||
|
|
@ -114,19 +117,20 @@ void fn_1_5FE4(omObjData* arg0) {
|
|||
espBankSet(temp_r30->unk_0C[0], temp_r31 / 100);
|
||||
temp_r31 = (temp_r31 - ((temp_r31 / 100) * 100));
|
||||
espBankSet(temp_r30->unk_0C[1], (temp_r31 / 10));
|
||||
temp_r31 = (temp_r31 - ((temp_r31 / 10) * 10));
|
||||
temp_r31 = (temp_r31 - ((temp_r31 / 10) * 10));
|
||||
espBankSet(temp_r30->unk_0C[2], temp_r31);
|
||||
temp_r31 = temp_r30->unk_0A;
|
||||
espBankSet(temp_r30->unk_0C[3], (temp_r31 / 100));
|
||||
temp_r31 = (temp_r31 - ((temp_r31 / 100) * 100));
|
||||
espBankSet(temp_r30->unk_0C[4], (temp_r31 / 10));
|
||||
espBankSet(temp_r30->unk_0C[4], (temp_r31 / 10));
|
||||
temp_r31 = (temp_r31 - ((temp_r31 / 10) * 10));
|
||||
espBankSet(temp_r30->unk_0C[5], temp_r31);
|
||||
}
|
||||
|
||||
void fn_1_61A0(void) {
|
||||
void fn_1_61A0(void)
|
||||
{
|
||||
s32 i;
|
||||
unkDominationData6* temp_r31;
|
||||
unkDominationData6 *temp_r31;
|
||||
|
||||
temp_r31 = lbl_1_bss_3988->data;
|
||||
|
||||
|
|
@ -138,9 +142,10 @@ void fn_1_61A0(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_6218(void) {
|
||||
void fn_1_6218(void)
|
||||
{
|
||||
s16 i;
|
||||
unkDominationData6* temp_r31;
|
||||
unkDominationData6 *temp_r31;
|
||||
|
||||
temp_r31 = lbl_1_bss_3988->data;
|
||||
|
||||
|
|
@ -154,9 +159,10 @@ void fn_1_6218(void) {
|
|||
temp_r31->unk_0A = fn_1_28D4();
|
||||
}
|
||||
|
||||
void fn_1_62A0(void) {
|
||||
void fn_1_62A0(void)
|
||||
{
|
||||
s32 i;
|
||||
unkDominationData6* temp_r31;
|
||||
unkDominationData6 *temp_r31;
|
||||
|
||||
temp_r31 = lbl_1_bss_3988->data;
|
||||
|
||||
|
|
@ -174,7 +180,8 @@ void fn_1_62A0(void) {
|
|||
temp_r31->unk_20 = 1.2f;
|
||||
temp_r31->unk_1C = 1;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if ((temp_r31->unk_20 -= 0.04f) <= 1.0f) {
|
||||
temp_r31->unk_20 = 1.0f;
|
||||
temp_r31->unk_1C = 0;
|
||||
|
|
|
|||
|
|
@ -1,45 +1,45 @@
|
|||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/object.h"
|
||||
#include "game/process.h"
|
||||
|
||||
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
|
||||
|
||||
#define MAX_WHOMPS_PLAYER 160
|
||||
#define MAX_WHOMPS_ALL_PLAYERS MAX_WHOMPS_PLAYER * ARRAY_COUNT(GWPlayer)
|
||||
#define MAX_WHOMPS (MAX_WHOMPS_PLAYER + 1) * ARRAY_COUNT(GWPlayer)
|
||||
#define MAX_WHOMPS_PLAYER 160
|
||||
#define MAX_WHOMPS_ALL_PLAYERS MAX_WHOMPS_PLAYER *ARRAY_COUNT(GWPlayer)
|
||||
#define MAX_WHOMPS (MAX_WHOMPS_PLAYER + 1) * ARRAY_COUNT(GWPlayer)
|
||||
|
||||
typedef void (*ObjFuncs)(omObjData*);
|
||||
typedef void (*ObjFuncs)(omObjData *);
|
||||
|
||||
typedef struct unkDominationData7 {
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ Vec unk_14;
|
||||
/* 0x20 */ char unk_20[4];
|
||||
/* 0x24 */ s32 unk_24;
|
||||
/* 0x28 */ s32 unk_28;
|
||||
/* 0x2C */ s32 unk_2C;
|
||||
} unkDominationData7; //sizeof 0x30
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ Vec unk_14;
|
||||
/* 0x20 */ char unk_20[4];
|
||||
/* 0x24 */ s32 unk_24;
|
||||
/* 0x28 */ s32 unk_28;
|
||||
/* 0x2C */ s32 unk_2C;
|
||||
} unkDominationData7; // sizeof 0x30
|
||||
|
||||
//function signatures
|
||||
void fn_1_3360(omObjData*);
|
||||
void fn_1_3364(omObjData*);
|
||||
void fn_1_34A4(omObjData*);
|
||||
void fn_1_37B0(omObjData*);
|
||||
void fn_1_36D0(omObjData*);
|
||||
void fn_1_2B7C(omObjData*);
|
||||
void fn_1_290C(omObjData*, s32);
|
||||
void fn_1_31F8(omObjData*);
|
||||
// function signatures
|
||||
void fn_1_3360(omObjData *);
|
||||
void fn_1_3364(omObjData *);
|
||||
void fn_1_34A4(omObjData *);
|
||||
void fn_1_37B0(omObjData *);
|
||||
void fn_1_36D0(omObjData *);
|
||||
void fn_1_2B7C(omObjData *);
|
||||
void fn_1_290C(omObjData *, s32);
|
||||
void fn_1_31F8(omObjData *);
|
||||
void fn_1_4544(s32, s32, f32, f32, f32);
|
||||
void fn_1_3BB8(s16, f32, f32);
|
||||
void fn_1_568(s16, s16, s16);
|
||||
|
||||
//bss
|
||||
Process* lbl_1_bss_37C0;
|
||||
omObjData* lbl_1_bss_2DB0[MAX_WHOMPS];
|
||||
// bss
|
||||
Process *lbl_1_bss_37C0;
|
||||
omObjData *lbl_1_bss_2DB0[MAX_WHOMPS];
|
||||
s16 lbl_1_bss_1E98[MAX_WHOMPS][3];
|
||||
s16 lbl_1_bss_68[MAX_WHOMPS][6];
|
||||
s16 lbl_1_bss_66;
|
||||
|
|
@ -47,23 +47,23 @@ s16 lbl_1_bss_64;
|
|||
s16 lbl_1_bss_3A[21];
|
||||
s16 lbl_1_bss_38;
|
||||
|
||||
//data
|
||||
// data
|
||||
s32 lbl_1_data_228[] = {
|
||||
0x0026001C,
|
||||
0x0026001D,
|
||||
0x0026001E,
|
||||
0x0026001B
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x1C),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x1D),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x1E),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x1B),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_238[] = {
|
||||
0x0026002E,
|
||||
0x0026002F,
|
||||
0x0026002D,
|
||||
0x0026002A,
|
||||
0x0026002C,
|
||||
0x00260027,
|
||||
0x00260028,
|
||||
0x00260029
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x2E),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x2F),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x2D),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x2A),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x2C),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x28),
|
||||
DATA_MAKE_NUM(DATADIR_M407, 0x29),
|
||||
};
|
||||
|
||||
ObjFuncs lbl_1_data_258[] = {
|
||||
|
|
@ -74,8 +74,9 @@ ObjFuncs lbl_1_data_258[] = {
|
|||
fn_1_36D0,
|
||||
};
|
||||
|
||||
void fn_1_2354(Process* arg0) {
|
||||
Process* sp8;
|
||||
void fn_1_2354(Process *arg0)
|
||||
{
|
||||
Process *sp8;
|
||||
u32 i;
|
||||
u32 j;
|
||||
|
||||
|
|
@ -84,7 +85,7 @@ void fn_1_2354(Process* arg0) {
|
|||
for (j = 0, i = 0; i < MAX_WHOMPS_ALL_PLAYERS; i++) {
|
||||
lbl_1_bss_2DB0[i] = omAddObjEx(lbl_1_bss_37C0, 0x200, 3, 6, 2, fn_1_2B7C);
|
||||
lbl_1_bss_2DB0[i]->work[0] = i;
|
||||
lbl_1_bss_2DB0[i]->work[1] = 0;
|
||||
lbl_1_bss_2DB0[i]->work[1] = 0;
|
||||
}
|
||||
|
||||
j = j + i;
|
||||
|
|
@ -92,7 +93,7 @@ void fn_1_2354(Process* arg0) {
|
|||
for (i = 0; i < 4; i++) {
|
||||
lbl_1_bss_2DB0[j + i] = omAddObjEx(lbl_1_bss_37C0, 0x200, 3, 6, 2, fn_1_2B7C);
|
||||
lbl_1_bss_2DB0[j + i]->work[0] = j + i;
|
||||
lbl_1_bss_2DB0[j + i]->work[1] = 1;
|
||||
lbl_1_bss_2DB0[j + i]->work[1] = 1;
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
|
|
@ -102,7 +103,8 @@ void fn_1_2354(Process* arg0) {
|
|||
lbl_1_bss_64 = 0;
|
||||
}
|
||||
|
||||
void fn_1_24F0(void) {
|
||||
void fn_1_24F0(void)
|
||||
{
|
||||
u32 i;
|
||||
|
||||
for (i = 0; i < MAX_WHOMPS; i++) {
|
||||
|
|
@ -111,7 +113,8 @@ void fn_1_24F0(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_2564(void) {
|
||||
void fn_1_2564(void)
|
||||
{
|
||||
u32 i;
|
||||
|
||||
HuAudFXPlay(0x542);
|
||||
|
|
@ -120,30 +123,32 @@ void fn_1_2564(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_25C0(void) {
|
||||
void fn_1_25C0(void)
|
||||
{
|
||||
u32 i, j;
|
||||
|
||||
lbl_1_bss_38 = 0;
|
||||
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
if (lbl_1_bss_38 < lbl_1_bss_3A[i]) {
|
||||
lbl_1_bss_38 = lbl_1_bss_3A[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
lbl_1_bss_66 = 0;
|
||||
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
if (lbl_1_bss_3A[i] > 0) {
|
||||
fn_1_290C(lbl_1_bss_2DB0[i], 3);
|
||||
lbl_1_bss_66 += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_26CC(u8 arg0) {
|
||||
void fn_1_26CC(u8 arg0)
|
||||
{
|
||||
u32 i;
|
||||
omObjData* temp;
|
||||
omObjData *temp;
|
||||
|
||||
i = lbl_1_bss_3A[arg0];
|
||||
if (i < MAX_WHOMPS_PLAYER) {
|
||||
|
|
@ -153,9 +158,10 @@ void fn_1_26CC(u8 arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_2770(u8 arg0, s16 arg2) {
|
||||
omObjData* temp_r30;
|
||||
unkDominationData7* temp_r31;
|
||||
void fn_1_2770(u8 arg0, s16 arg2)
|
||||
{
|
||||
omObjData *temp_r30;
|
||||
unkDominationData7 *temp_r31;
|
||||
|
||||
temp_r30 = lbl_1_bss_2DB0[arg0 + MAX_WHOMPS_ALL_PLAYERS];
|
||||
temp_r31 = temp_r30->data;
|
||||
|
|
@ -165,35 +171,41 @@ void fn_1_2770(u8 arg0, s16 arg2) {
|
|||
fn_1_290C(temp_r30, 2);
|
||||
}
|
||||
|
||||
s32 fn_1_2880(void) {
|
||||
s32 fn_1_2880(void)
|
||||
{
|
||||
return (lbl_1_bss_66 == 0) ? 1 : 0;
|
||||
}
|
||||
|
||||
s16 fn_1_28B8(u8 arg0) {
|
||||
s16 fn_1_28B8(u8 arg0)
|
||||
{
|
||||
return lbl_1_bss_3A[arg0];
|
||||
}
|
||||
|
||||
s16 fn_1_28D4(void) {
|
||||
s16 fn_1_28D4(void)
|
||||
{
|
||||
return lbl_1_bss_64;
|
||||
}
|
||||
|
||||
s16 fn_1_28E4(u8 arg0) {
|
||||
s16 fn_1_28E4(u8 arg0)
|
||||
{
|
||||
return lbl_1_bss_2DB0[arg0 + MAX_WHOMPS_ALL_PLAYERS]->model[0];
|
||||
}
|
||||
|
||||
void fn_1_290C(omObjData* arg0, s32 arg1) {
|
||||
unkDominationData7* temp_r31;
|
||||
void fn_1_290C(omObjData *arg0, s32 arg1)
|
||||
{
|
||||
unkDominationData7 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_24 = arg1;
|
||||
temp_r31->unk_2C = 0;
|
||||
}
|
||||
|
||||
void fn_1_2930(omObjData* arg0) {
|
||||
unkDominationData7* temp_r28;
|
||||
omObjData* temp_r29;
|
||||
void fn_1_2930(omObjData *arg0)
|
||||
{
|
||||
unkDominationData7 *temp_r28;
|
||||
omObjData *temp_r29;
|
||||
u32 i;
|
||||
unkDominationData7* temp_r31;
|
||||
unkDominationData7 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
lbl_1_data_258[temp_r31->unk_24](arg0);
|
||||
|
|
@ -208,30 +220,33 @@ void fn_1_2930(omObjData* arg0) {
|
|||
|
||||
if (temp_r31->unk_08.y < 0.0f) {
|
||||
Hu3DModelShadowDispOff(arg0->model[0]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelShadowDispOn(arg0->model[0]);
|
||||
}
|
||||
|
||||
temp_r31->unk_04 = 1;
|
||||
}
|
||||
|
||||
|
||||
if ((temp_r31->unk_08.y < 0.0f) || (temp_r31->unk_08.z < (Center.z - 2000.0f))) {
|
||||
Hu3DModelAttrSet(arg0->model[0], 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelAttrReset(arg0->model[0], 1);
|
||||
}
|
||||
|
||||
|
||||
omSetTra(arg0, temp_r31->unk_08.x, temp_r31->unk_08.y, temp_r31->unk_08.z);
|
||||
omSetRot(arg0, temp_r31->unk_14.x, temp_r31->unk_14.y, temp_r31->unk_14.z);
|
||||
|
||||
|
||||
if (temp_r31->unk_28 == 1) {
|
||||
Hu3DModelPosSet(arg0->model[2], temp_r31->unk_08.x, 1.0f + temp_r31->unk_08.y, temp_r31->unk_08.z);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_2B7C(omObjData* arg0) {
|
||||
void fn_1_2B7C(omObjData *arg0)
|
||||
{
|
||||
u32 i;
|
||||
unkDominationData7* temp_r30;
|
||||
unkDominationData7 *temp_r30;
|
||||
|
||||
arg0->func = fn_1_2930;
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(unkDominationData7), MEMORY_DEFAULT_NUM);
|
||||
|
|
@ -242,72 +257,74 @@ void fn_1_2B7C(omObjData* arg0) {
|
|||
}
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
arg0->motion[i] = -1;
|
||||
arg0->motion[i] = -1;
|
||||
}
|
||||
|
||||
temp_r30->unk_00 = (u32) arg0->work[0];
|
||||
temp_r30->unk_28 = (u32) arg0->work[1];
|
||||
|
||||
temp_r30->unk_00 = (u32)arg0->work[0];
|
||||
temp_r30->unk_28 = (u32)arg0->work[1];
|
||||
temp_r30->unk_04 = 0;
|
||||
temp_r30->unk_2C = 0;
|
||||
switch (temp_r30->unk_28) {
|
||||
case 0:
|
||||
temp_r30->unk_14.x = 0.0f;
|
||||
temp_r30->unk_14.y = 180.0f;
|
||||
temp_r30->unk_14.z = 0.0f;
|
||||
if (temp_r30->unk_00 < 80) {
|
||||
arg0->model[0] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_228[1], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x4000);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
if (temp_r30->unk_00 == 0) {
|
||||
arg0->motion[5] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[5], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[3] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[7], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[4] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[6], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
} else {
|
||||
arg0->motion[5] = lbl_1_bss_68[0][5];
|
||||
arg0->motion[3] = lbl_1_bss_68[0][3];
|
||||
arg0->motion[4] = lbl_1_bss_68[0][4];
|
||||
}
|
||||
Hu3DModelShadowSet(arg0->model[0]);
|
||||
for (i = 0; i < 3; i++) {
|
||||
lbl_1_bss_1E98[temp_r30->unk_00][i] = arg0->model[i];
|
||||
}
|
||||
case 0:
|
||||
temp_r30->unk_14.x = 0.0f;
|
||||
temp_r30->unk_14.y = 180.0f;
|
||||
temp_r30->unk_14.z = 0.0f;
|
||||
if (temp_r30->unk_00 < 80) {
|
||||
arg0->model[0] = Hu3DModelCreateFile(lbl_1_data_228[1]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x4000);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
if (temp_r30->unk_00 == 0) {
|
||||
arg0->motion[5] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[5]);
|
||||
arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[7]);
|
||||
arg0->motion[4] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[6]);
|
||||
}
|
||||
else {
|
||||
arg0->motion[5] = lbl_1_bss_68[0][5];
|
||||
arg0->motion[3] = lbl_1_bss_68[0][3];
|
||||
arg0->motion[4] = lbl_1_bss_68[0][4];
|
||||
}
|
||||
Hu3DModelShadowSet(arg0->model[0]);
|
||||
for (i = 0; i < 3; i++) {
|
||||
lbl_1_bss_1E98[temp_r30->unk_00][i] = arg0->model[i];
|
||||
}
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
lbl_1_bss_68[temp_r30->unk_00][i] = arg0->motion[i];
|
||||
for (i = 0; i < 6; i++) {
|
||||
lbl_1_bss_68[temp_r30->unk_00][i] = arg0->motion[i];
|
||||
}
|
||||
Hu3DMotionSet(arg0->model[0], arg0->motion[5]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x40000001);
|
||||
temp_r30->unk_04 = 1;
|
||||
}
|
||||
Hu3DMotionSet(arg0->model[0], arg0->motion[5]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x40000001);
|
||||
else {
|
||||
temp_r30->unk_04 = 0;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
temp_r30->unk_14.x = 0.0f;
|
||||
temp_r30->unk_14.y = 0.0f;
|
||||
temp_r30->unk_14.z = 0.0f;
|
||||
arg0->model[0] = Hu3DModelCreateFile(lbl_1_data_228[0]);
|
||||
arg0->model[1] = Hu3DModelCreateFile(lbl_1_data_228[2]);
|
||||
arg0->model[2] = Hu3DModelCreateFile(lbl_1_data_228[3]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x4000);
|
||||
Hu3DModelAttrSet(arg0->model[1], 0x4000);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelAmbSet(arg0->model[1], 1.0f, 1.0f, 1.0f);
|
||||
arg0->motion[2] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[2]);
|
||||
arg0->motion[3] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[4]);
|
||||
arg0->motion[5] = Hu3DJointMotionFile(arg0->model[0], lbl_1_data_238[3]);
|
||||
arg0->motion[0] = Hu3DJointMotionFile(arg0->model[1], lbl_1_data_238[0]);
|
||||
arg0->motion[1] = Hu3DJointMotionFile(arg0->model[1], lbl_1_data_238[1]);
|
||||
Hu3DModelHookSet(arg0->model[0], "itemhook_r", arg0->model[1]);
|
||||
Hu3DModelShadowSet(arg0->model[0]);
|
||||
Hu3DModelShadowSet(arg0->model[1]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 1);
|
||||
Hu3DModelAttrSet(arg0->model[1], 1);
|
||||
Hu3DModelAttrSet(arg0->model[2], 1);
|
||||
Hu3DModelAttrSet(arg0->model[2], 0x40000002);
|
||||
Hu3DModelAttrSet(arg0->model[2], 0x40000001);
|
||||
temp_r30->unk_04 = 1;
|
||||
} else {
|
||||
temp_r30->unk_04 = 0;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
temp_r30->unk_14.x = 0.0f;
|
||||
temp_r30->unk_14.y = 0.0f;
|
||||
temp_r30->unk_14.z = 0.0f;
|
||||
arg0->model[0] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_228[0], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[1] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_228[2], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[2] = Hu3DModelCreate(HuDataSelHeapReadNum(lbl_1_data_228[3], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
Hu3DModelAttrSet(arg0->model[0], 0x4000);
|
||||
Hu3DModelAttrSet(arg0->model[1], 0x4000);
|
||||
Hu3DModelAmbSet(arg0->model[0], 1.0f, 1.0f, 1.0f);
|
||||
Hu3DModelAmbSet(arg0->model[1], 1.0f, 1.0f, 1.0f);
|
||||
arg0->motion[2] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[2], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[3] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[4], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[5] = Hu3DJointMotion(arg0->model[0], HuDataSelHeapReadNum(lbl_1_data_238[3], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[0] = Hu3DJointMotion(arg0->model[1], HuDataSelHeapReadNum(lbl_1_data_238[0], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->motion[1] = Hu3DJointMotion(arg0->model[1], HuDataSelHeapReadNum(lbl_1_data_238[1], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
Hu3DModelHookSet(arg0->model[0], "itemhook_r", arg0->model[1]);
|
||||
Hu3DModelShadowSet(arg0->model[0]);
|
||||
Hu3DModelShadowSet(arg0->model[1]);
|
||||
Hu3DModelAttrSet(arg0->model[0], 1);
|
||||
Hu3DModelAttrSet(arg0->model[1], 1);
|
||||
Hu3DModelAttrSet(arg0->model[2], 1);
|
||||
Hu3DModelAttrSet(arg0->model[2], 0x40000002);
|
||||
Hu3DModelAttrSet(arg0->model[2], 0x40000001);
|
||||
temp_r30->unk_04 = 1;
|
||||
break;
|
||||
break;
|
||||
}
|
||||
temp_r30->unk_08.x = (600.0f - (400.0f * (temp_r30->unk_00 & 3)));
|
||||
temp_r30->unk_08.y = 0.0f;
|
||||
|
|
@ -315,133 +332,136 @@ void fn_1_2B7C(omObjData* arg0) {
|
|||
fn_1_290C(arg0, 0);
|
||||
}
|
||||
|
||||
void fn_1_31F8(omObjData* arg0) {
|
||||
void fn_1_31F8(omObjData *arg0)
|
||||
{
|
||||
s32 i;
|
||||
unkDominationData7* temp_r29;
|
||||
unkDominationData7 *temp_r29;
|
||||
|
||||
temp_r29 = arg0->data;
|
||||
switch (temp_r29->unk_28) { /* irregular */
|
||||
case 0:
|
||||
if (temp_r29->unk_00 == 0) {
|
||||
switch (temp_r29->unk_28) { /* irregular */
|
||||
case 0:
|
||||
if (temp_r29->unk_00 == 0) {
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (arg0->motion[i] != -1) {
|
||||
Hu3DMotionKill(arg0->motion[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (temp_r29->unk_04 != 0) {
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (arg0->model[i] != -1) {
|
||||
Hu3DModelKill(arg0->model[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (arg0->motion[i] != -1) {
|
||||
Hu3DMotionKill(arg0->motion[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (temp_r29->unk_04 != 0) {
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (arg0->model[i] != -1) {
|
||||
Hu3DModelKill(arg0->model[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (arg0->motion[i] != -1) {
|
||||
Hu3DMotionKill(arg0->motion[i]);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (arg0->model[i] != -1) {
|
||||
Hu3DModelKill(arg0->model[i]);
|
||||
}
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
if (arg0->data) {
|
||||
HuMemDirectFree(arg0->data);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_3360(omObjData*) {
|
||||
void fn_1_3360(omObjData *) { }
|
||||
|
||||
}
|
||||
|
||||
void fn_1_3364(omObjData* arg0) {
|
||||
unkDominationData7* temp_r31;
|
||||
void fn_1_3364(omObjData *arg0)
|
||||
{
|
||||
unkDominationData7 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (temp_r31->unk_2C == 0) {
|
||||
Hu3DMotionSet(arg0->model[0], arg0->motion[4]);
|
||||
Hu3DModelAttrReset(arg0->model[0], 0x40000001);
|
||||
switch (temp_r31->unk_28) {
|
||||
case 0:
|
||||
fn_1_4544(0, 0, temp_r31->unk_08.x, 0.0f, temp_r31->unk_08.z);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_4544(1, 0, temp_r31->unk_08.x, 0.0f, temp_r31->unk_08.z);
|
||||
break;
|
||||
case 0:
|
||||
fn_1_4544(0, 0, temp_r31->unk_08.x, 0.0f, temp_r31->unk_08.z);
|
||||
break;
|
||||
case 1:
|
||||
fn_1_4544(1, 0, temp_r31->unk_08.x, 0.0f, temp_r31->unk_08.z);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (temp_r31->unk_2C == 0x2A) {
|
||||
Hu3DModelShadowDispOff(arg0->model[0]);
|
||||
}
|
||||
|
||||
|
||||
if (Hu3DMotionEndCheck(*arg0->model) == 0) {
|
||||
temp_r31->unk_2C++;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
temp_r31->unk_08.y = -300.0f;
|
||||
Hu3DModelAttrSet(arg0->model[0], 1);
|
||||
fn_1_290C(arg0, 0);
|
||||
}
|
||||
|
||||
void fn_1_34A4(omObjData* arg0) {
|
||||
unkDominationData7* temp_r30;
|
||||
void fn_1_34A4(omObjData *arg0)
|
||||
{
|
||||
unkDominationData7 *temp_r30;
|
||||
|
||||
temp_r30 = arg0->data;
|
||||
if (temp_r30->unk_2C == 0) {
|
||||
if (temp_r30->unk_28 == 1) {
|
||||
Hu3DModelAttrReset(arg0->model[0], 1);
|
||||
Hu3DModelAttrReset(arg0->model[1], 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelAttrReset(arg0->model[0], 1);
|
||||
}
|
||||
Hu3DMotionSet(arg0->model[0], arg0->motion[3]);
|
||||
Hu3DModelAttrReset(arg0->model[0], 0x40000001);
|
||||
switch (temp_r30->unk_28) { /* irregular */
|
||||
case 0:
|
||||
fn_1_4544(0, 0, temp_r30->unk_08.x, 0.0f, temp_r30->unk_08.z);
|
||||
HuAudFXPlay(0x543);
|
||||
break;
|
||||
case 1:
|
||||
HuAudFXPlay(0x544);
|
||||
fn_1_4544(1, 0, temp_r30->unk_08.x, 0.0f, temp_r30->unk_08.z);
|
||||
break;
|
||||
switch (temp_r30->unk_28) { /* irregular */
|
||||
case 0:
|
||||
fn_1_4544(0, 0, temp_r30->unk_08.x, 0.0f, temp_r30->unk_08.z);
|
||||
HuAudFXPlay(0x543);
|
||||
break;
|
||||
case 1:
|
||||
HuAudFXPlay(0x544);
|
||||
fn_1_4544(1, 0, temp_r30->unk_08.x, 0.0f, temp_r30->unk_08.z);
|
||||
break;
|
||||
}
|
||||
temp_r30->unk_08.y = 0.0f;
|
||||
}
|
||||
|
||||
|
||||
if (temp_r30->unk_2C == 0xA) {
|
||||
Hu3DModelShadowDispOn(arg0->model[0]);
|
||||
}
|
||||
|
||||
|
||||
if ((temp_r30->unk_2C == 0xA) && (temp_r30->unk_28 == 1)) {
|
||||
Hu3DMotionSet(arg0->model[1], arg0->motion[1]);
|
||||
Hu3DModelAttrReset(arg0->model[1], 0x40000001);
|
||||
}
|
||||
|
||||
|
||||
temp_r30->unk_2C++;
|
||||
|
||||
|
||||
if (Hu3DMotionEndCheck(arg0->model[0]) != 0) {
|
||||
Hu3DMotionShiftSet(arg0->model[0], arg0->motion[5], 0.0f, 10.0f, 0x40000001);
|
||||
switch (temp_r30->unk_28) {
|
||||
case 0:
|
||||
fn_1_290C(arg0, 0);
|
||||
return;
|
||||
case 1:
|
||||
fn_1_290C(arg0, 4);
|
||||
break;
|
||||
case 0:
|
||||
fn_1_290C(arg0, 0);
|
||||
return;
|
||||
case 1:
|
||||
fn_1_290C(arg0, 4);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_36D0(omObjData* arg0) {
|
||||
unkDominationData7* sp8;
|
||||
void fn_1_36D0(omObjData *arg0)
|
||||
{
|
||||
unkDominationData7 *sp8;
|
||||
|
||||
sp8 = arg0->data;
|
||||
Hu3DMotionShiftSet(arg0->model[0], arg0->motion[2], 0.0f, 10.0f, 0x40000001);
|
||||
|
|
@ -453,8 +473,9 @@ void fn_1_36D0(omObjData* arg0) {
|
|||
fn_1_290C(arg0, 0);
|
||||
}
|
||||
|
||||
void fn_1_37B0(omObjData* arg0) {
|
||||
unkDominationData7* temp_r31;
|
||||
void fn_1_37B0(omObjData *arg0)
|
||||
{
|
||||
unkDominationData7 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (temp_r31->unk_2C == 0) {
|
||||
|
|
@ -479,7 +500,7 @@ void fn_1_37B0(omObjData* arg0) {
|
|||
}
|
||||
|
||||
temp_r31->unk_14.x = (temp_r31->unk_2C == 1) ? -90.0f : -68.0f;
|
||||
|
||||
|
||||
if (temp_r31->unk_2C == 1) {
|
||||
fn_1_4544(3, 0, temp_r31->unk_08.x, 0.0f, 200.0f + temp_r31->unk_08.z);
|
||||
HuAudFXPlay(0x544);
|
||||
|
|
@ -487,7 +508,8 @@ void fn_1_37B0(omObjData* arg0) {
|
|||
fn_1_3BB8((temp_r31->unk_00 >> 2) + 1, temp_r31->unk_08.x, temp_r31->unk_08.z);
|
||||
}
|
||||
lbl_1_bss_66 -= 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_4544(2, 0, temp_r31->unk_08.x, 0.0f, 200.0f + temp_r31->unk_08.z);
|
||||
HuAudFXPlay(0x543);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,39 +1,42 @@
|
|||
#include "src/REL/m407dll/m407dll.h"
|
||||
#include "game/process.h"
|
||||
#include "game/object.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/esprite.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/object.h"
|
||||
#include "game/process.h"
|
||||
#include "game/sprite.h"
|
||||
|
||||
#include "REL/m407dll.h"
|
||||
|
||||
typedef struct unkDominationData3 {
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ s32 unk_14;
|
||||
/* 0x18 */ s16 unk_18[4];
|
||||
/* 0x20 */ f32 unk_20;
|
||||
} unkDominationData3; //sizeof 0x24
|
||||
/* 0x00 */ u32 unk_00;
|
||||
/* 0x04 */ s32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ s32 unk_14;
|
||||
/* 0x18 */ s16 unk_18[4];
|
||||
/* 0x20 */ f32 unk_20;
|
||||
} unkDominationData3; // sizeof 0x24
|
||||
|
||||
//function signatures
|
||||
// function signatures
|
||||
void Hu3D3Dto2D(Vec *arg0, s16 arg1, Vec *arg2);
|
||||
void fn_1_3D28(omObjData* arg0, s32 arg1);
|
||||
void fn_1_3E34(omObjData*);
|
||||
void fn_1_3F7C(omObjData* arg0);
|
||||
void fn_1_3FF0(omObjData*);
|
||||
void fn_1_3FF4(omObjData* arg0);
|
||||
void fn_1_40F4(omObjData* arg0);
|
||||
void fn_1_3D28(omObjData *arg0, s32 arg1);
|
||||
void fn_1_3E34(omObjData *);
|
||||
void fn_1_3F7C(omObjData *arg0);
|
||||
void fn_1_3FF0(omObjData *);
|
||||
void fn_1_3FF4(omObjData *arg0);
|
||||
void fn_1_40F4(omObjData *arg0);
|
||||
|
||||
//bss
|
||||
Process* lbl_1_bss_37D8;
|
||||
omObjData* lbl_1_bss_37C8[4];
|
||||
// bss
|
||||
Process *lbl_1_bss_37D8;
|
||||
omObjData *lbl_1_bss_37C8[4];
|
||||
|
||||
//data
|
||||
// data
|
||||
ObjFuncs lbl_1_data_278[] = {
|
||||
fn_1_3FF0,
|
||||
fn_1_3FF4,
|
||||
fn_1_40F4,
|
||||
};
|
||||
|
||||
void fn_1_3AC8(Process* arg0) {
|
||||
void fn_1_3AC8(Process *arg0)
|
||||
{
|
||||
u32 i;
|
||||
|
||||
lbl_1_bss_37D8 = arg0;
|
||||
|
|
@ -44,7 +47,8 @@ void fn_1_3AC8(Process* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_3B68(void) {
|
||||
void fn_1_3B68(void)
|
||||
{
|
||||
u32 i;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(lbl_1_bss_37C8); i++) {
|
||||
|
|
@ -52,10 +56,11 @@ void fn_1_3B68(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_3BB8(s16 arg0, f32 arg8, f32 arg9) {
|
||||
omObjData* obj;
|
||||
void fn_1_3BB8(s16 arg0, f32 arg8, f32 arg9)
|
||||
{
|
||||
omObjData *obj;
|
||||
Vec sp14;
|
||||
unkDominationData3* temp_r31;
|
||||
unkDominationData3 *temp_r31;
|
||||
u32 i;
|
||||
s16 temp;
|
||||
|
||||
|
|
@ -66,7 +71,7 @@ void fn_1_3BB8(s16 arg0, f32 arg8, f32 arg9) {
|
|||
temp = arg0;
|
||||
espBankSet(temp_r31->unk_18[1], (temp / 100));
|
||||
temp = (temp - ((temp / 100) * 100));
|
||||
espBankSet(temp_r31->unk_18[2],(temp / 10));
|
||||
espBankSet(temp_r31->unk_18[2], (temp / 10));
|
||||
temp = (temp - ((temp / 10) * 10));
|
||||
espBankSet(temp_r31->unk_18[3], temp);
|
||||
sp14.x = arg8;
|
||||
|
|
@ -79,17 +84,19 @@ void fn_1_3BB8(s16 arg0, f32 arg8, f32 arg9) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_3D28(omObjData* arg0, s32 arg1) {
|
||||
unkDominationData3* temp_r31;
|
||||
void fn_1_3D28(omObjData *arg0, s32 arg1)
|
||||
{
|
||||
unkDominationData3 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_04 = arg1;
|
||||
temp_r31->unk_14 = 0;
|
||||
}
|
||||
|
||||
void fn_1_3D4C(omObjData* arg0) {
|
||||
void fn_1_3D4C(omObjData *arg0)
|
||||
{
|
||||
s32 temp_r5;
|
||||
unkDominationData3* temp_r31;
|
||||
unkDominationData3 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
lbl_1_data_278[temp_r31->unk_04](arg0);
|
||||
|
|
@ -100,8 +107,9 @@ void fn_1_3D4C(omObjData* arg0) {
|
|||
espPosSet(temp_r31->unk_18[3], 18.0f + temp_r31->unk_08.x, temp_r31->unk_08.y - 8.0f);
|
||||
}
|
||||
|
||||
void fn_1_3E34(omObjData* arg0) {
|
||||
unkDominationData3* temp_r31;
|
||||
void fn_1_3E34(omObjData *arg0)
|
||||
{
|
||||
unkDominationData3 *temp_r31;
|
||||
|
||||
arg0->func = fn_1_3D4C;
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(unkDominationData3), MEMORY_DEFAULT_NUM);
|
||||
|
|
@ -109,24 +117,25 @@ void fn_1_3E34(omObjData* arg0) {
|
|||
temp_r31->unk_00 = arg0->work[0];
|
||||
temp_r31->unk_14 = 0;
|
||||
temp_r31->unk_04 = 0;
|
||||
temp_r31->unk_18[0] = espEntry(0x260026, 1, 0);
|
||||
temp_r31->unk_18[1] = espEntry(0x260020, 0, 0);
|
||||
temp_r31->unk_18[2] = espEntry(0x260020, 0, 0);
|
||||
temp_r31->unk_18[3] = espEntry(0x260020, 0, 0);
|
||||
temp_r31->unk_18[0] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x26), 1, 0);
|
||||
temp_r31->unk_18[1] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x20), 0, 0);
|
||||
temp_r31->unk_18[2] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x20), 0, 0);
|
||||
temp_r31->unk_18[3] = espEntry(DATA_MAKE_NUM(DATADIR_M407, 0x20), 0, 0);
|
||||
espDispOff(temp_r31->unk_18[0]);
|
||||
espDispOff(temp_r31->unk_18[1]);
|
||||
espDispOff(temp_r31->unk_18[2]);
|
||||
espDispOff(temp_r31->unk_18[3]);
|
||||
espScaleSet(temp_r31->unk_18[0], 1.8f, 1.8f);
|
||||
temp_r31->unk_08.x = (f32) 0.0f;
|
||||
temp_r31->unk_08.y = (f32) 0.0f;
|
||||
temp_r31->unk_08.x = (f32)0.0f;
|
||||
temp_r31->unk_08.y = (f32)0.0f;
|
||||
fn_1_3D28(arg0, 0);
|
||||
}
|
||||
|
||||
void fn_1_3F7C(omObjData* arg0) {
|
||||
void fn_1_3F7C(omObjData *arg0)
|
||||
{
|
||||
s32 i;
|
||||
unkDominationData3* temp_r29;
|
||||
|
||||
unkDominationData3 *temp_r29;
|
||||
|
||||
temp_r29 = arg0->data;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(temp_r29->unk_18); i++) {
|
||||
|
|
@ -138,12 +147,11 @@ void fn_1_3F7C(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_3FF0(omObjData* arg0) {
|
||||
void fn_1_3FF0(omObjData *arg0) { }
|
||||
|
||||
}
|
||||
|
||||
void fn_1_3FF4(omObjData* arg0) {
|
||||
unkDominationData3* temp_r31;
|
||||
void fn_1_3FF4(omObjData *arg0)
|
||||
{
|
||||
unkDominationData3 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (temp_r31->unk_14 == 0) {
|
||||
|
|
@ -166,8 +174,9 @@ void fn_1_3FF4(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_40F4(omObjData* arg0) {
|
||||
unkDominationData3* temp_r31;
|
||||
void fn_1_40F4(omObjData *arg0)
|
||||
{
|
||||
unkDominationData3 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
|
||||
|
|
@ -186,4 +195,3 @@ void fn_1_40F4(omObjData* arg0) {
|
|||
espDispOff(temp_r31->unk_18[3]);
|
||||
fn_1_3D28(arg0, 0);
|
||||
}
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -13,10 +13,10 @@ void fn_1_BF88(s16 arg0, s16 arg1) {
|
|||
lbl_1_bss_F0.unk4 = Hu3DHookFuncCreate(fn_1_CB98);
|
||||
Hu3DModelLayerSet(lbl_1_bss_F0.unk4, 6);
|
||||
lbl_1_bss_F0.unk0 = arg0;
|
||||
var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(unkStruct8), 0x10000000);
|
||||
var_r29 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(unkStruct8), MEMORY_DEFAULT_NUM);
|
||||
lbl_1_bss_F0.unk10 = var_r29;
|
||||
lbl_1_bss_F0.unk2 = arg1;
|
||||
var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct9Sub), 0x10000000);
|
||||
var_r30 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct9Sub), MEMORY_DEFAULT_NUM);
|
||||
lbl_1_bss_F0.unkC = var_r30;
|
||||
|
||||
for (var_r31 = 0; var_r31 < arg0; var_r31++, var_r29++) {
|
||||
|
|
@ -264,7 +264,7 @@ void fn_1_CCF8(unkStruct11** arg0, s16 arg1, f32 arg8, f32 arg9) {
|
|||
s32 var_r30;
|
||||
unkStruct11* var_r31;
|
||||
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct11), 0x10000000);
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct11), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r30 = 0; var_r30 < arg1; var_r31++, var_r30++) {
|
||||
var_r31->unk0.x = (-0.5f * arg8);
|
||||
|
|
@ -287,7 +287,7 @@ void fn_1_CE7C(Vec** arg0, s16 arg1, Vec* arg2) {
|
|||
s32 var_r28;
|
||||
Vec* var_r31;
|
||||
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec[4]), 0x10000000);
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec[4]), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r29 = 0; var_r29 < arg1; var_r29++) {
|
||||
for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) {
|
||||
|
|
@ -303,7 +303,7 @@ void fn_1_CF1C(GXColor** arg0, s16 arg1, GXColor* arg2) {
|
|||
s32 var_r28;
|
||||
GXColor* var_r31;
|
||||
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(GXColor[4]), 0x10000000U);
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(GXColor[4]), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r29 = 0; var_r29 < arg1; var_r29++) {
|
||||
for (var_r28 = 0; var_r28 < 4; var_r31++, arg2++, var_r28++) {
|
||||
|
|
@ -319,7 +319,7 @@ void fn_1_CFC4(Vec** arg0, s16 arg1, Vec* arg2) {
|
|||
s32 var_r29;
|
||||
Vec* var_r31;
|
||||
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), 0x10000000U);
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(Vec), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r29 = 0; var_r29 < arg1; var_r31++, arg2++, var_r29++) {
|
||||
var_r31->x = arg2->x;
|
||||
|
|
@ -333,7 +333,7 @@ void fn_1_D050(HsfVector2f** arg0, s16 arg1, HsfVector2f* arg2) {
|
|||
s32 var_r29;
|
||||
HsfVector2f* var_r31;
|
||||
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(HsfVector2f[4]), 0x10000000U);
|
||||
var_r31 = *arg0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(HsfVector2f[4]), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r28 = 0; var_r28 < arg1; var_r28++) {
|
||||
for (var_r29 = 0; var_r29 < 4; var_r31++, arg2++, var_r29++) {
|
||||
|
|
@ -371,14 +371,14 @@ void fn_1_D0E8(unkStruct8Sub* arg0) {
|
|||
if (arg0->unk48 != NULL) {
|
||||
HuMemDirectFree(arg0->unk48);
|
||||
}
|
||||
arg0->unk48 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Vec), 0x10000000);
|
||||
arg0->unk48 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(Vec), MEMORY_DEFAULT_NUM);
|
||||
arg0->unk48->x = 0.0f;
|
||||
arg0->unk48->y = 0.0f;
|
||||
arg0->unk48->z = 1.0f;
|
||||
if (arg0->unk3C != NULL) {
|
||||
HuMemDirectFree(arg0->unk3C);
|
||||
}
|
||||
temp_r3_3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1000, 0x10000000);
|
||||
temp_r3_3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x1000, MEMORY_DEFAULT_NUM);
|
||||
arg0->unk3C = temp_r3_3;
|
||||
DCFlushRange(arg0->unk3C, 0x1000);
|
||||
GXBeginDisplayList(temp_r3_3, 0x1000);
|
||||
|
|
@ -526,9 +526,9 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) {
|
|||
var_r30->unk30 = NULL;
|
||||
var_r30->unk2 = arg0;
|
||||
var_r30->unk4 = arg1;
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(unkStruct8Sub), 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * sizeof(unkStruct8Sub), MEMORY_DEFAULT_NUM);
|
||||
var_r30->unk3C = var_r31;
|
||||
var_r30->unk34 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(s16), 0x10000000);
|
||||
var_r30->unk34 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(s16), MEMORY_DEFAULT_NUM);
|
||||
var_r30->unkC.x = var_r30->unkC.y = var_r30->unkC.z = 0.0f;
|
||||
var_r30->unk18.x = var_r30->unk18.y = var_r30->unk18.z = 0.0f;
|
||||
var_r30->unk24.x = var_r30->unk24.y = var_r30->unk24.z = 1.0f;
|
||||
|
|
@ -551,7 +551,7 @@ s16 fn_1_DA48(u8 arg0, u8 arg1) {
|
|||
var_r31->unk4C.a = 0xFF;
|
||||
var_r31->unk50.r = var_r31->unk50.g = var_r31->unk50.b = 0xFF;
|
||||
var_r31->unk50.a = 0xFF;
|
||||
var_r31->unk54 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct12), 0x10000000);
|
||||
var_r31->unk54 = HuMemDirectMallocNum(HEAP_SYSTEM, arg1 * sizeof(unkStruct12), MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r28 = 0; var_r28 < arg1; var_r28++) {
|
||||
var_r31->unk54[var_r28].unk0 = var_r31->unk54[var_r28].unk1 = 0;
|
||||
|
|
@ -644,7 +644,7 @@ s16 fn_1_DF20(u32 arg0, s16 arg1, s16 arg2) {
|
|||
}
|
||||
var_r31->unk8 = arg0;
|
||||
var_r31->unk6 = 1;
|
||||
temp_r30 = HuSprAnimRead(HuDataReadNum(arg0, 0x10000000));
|
||||
temp_r30 = HuSprAnimRead(HuDataReadNum(arg0, MEMORY_DEFAULT_NUM));
|
||||
if ((arg1 == 0) || (arg2 == 0)) {
|
||||
arg1 = temp_r30->bmp->sizeX;
|
||||
arg2 = temp_r30->bmp->sizeY;
|
||||
|
|
@ -716,7 +716,7 @@ s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) {
|
|||
}
|
||||
temp_f30 = temp_r30->unk50;
|
||||
temp_f31 = temp_r30->unk4E;
|
||||
var_r29 = var_r28->unk40 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x30, 0x10000000);
|
||||
var_r29 = var_r28->unk40 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x30, MEMORY_DEFAULT_NUM);
|
||||
|
||||
for (var_r25 = 0; var_r25 < 1; var_r29++, var_r25++) {
|
||||
var_r29->unk0.x = (-0.5f * temp_f31);
|
||||
|
|
@ -739,7 +739,7 @@ s32 fn_1_E2A8(s16 arg0, u8 arg1, u32 arg2, s16 arg3, s16 arg4) {
|
|||
temp_r31->unkC = 1.0f;
|
||||
temp_r31->unk10 = 0.0f;
|
||||
if (temp_r31->unk4 == NULL) {
|
||||
temp_r31->unk4 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x20, 0x10000000U);
|
||||
temp_r31->unk4 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x20, MEMORY_DEFAULT_NUM);
|
||||
}
|
||||
temp_r31->unk4[0].x = temp_r31->unk0 * temp_r30->unk54;
|
||||
temp_r31->unk4[0].y = temp_r31->unk0 * temp_r30->unk58;
|
||||
|
|
@ -1205,4 +1205,4 @@ void fn_1_F4F0(s16 arg0, u8 arg1) {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -21,7 +21,7 @@ unkStruct9 lbl_1_bss_F0;
|
|||
|
||||
// data
|
||||
u32 lbl_1_data_138 = 0xFFFF0000;
|
||||
s32 lbl_1_data_13C[7] = { 0x30, 0x2D, 0x3A, 0x2E, 0x280032, 0x17, 0x18 };
|
||||
s32 lbl_1_data_13C[7] = { 0x30, 0x2D, 0x3A, 0x2E, DATA_MAKE_NUM(DATADIR_M409, 0x32), 0x17, 0x18 };
|
||||
GXColor lbl_1_data_158[8] = {
|
||||
{ 0xFF, 0x00, 0x00, 0xFF },
|
||||
{ 0x00, 0x00, 0xFF, 0xFF },
|
||||
|
|
@ -61,7 +61,7 @@ void fn_1_67E0(Process* arg0) {
|
|||
}
|
||||
lbl_1_bss_39C = var_r30 = omAddObjEx(arg0, 0x40, 8, 0xA, 4, fn_1_91C0);
|
||||
fn_1_BF88(0x40, 0x40);
|
||||
fn_1_DF20(0x28002C, 0x40, 0x40);
|
||||
fn_1_DF20(DATA_MAKE_NUM(DATADIR_M409, 0x2C), 0x40, 0x40);
|
||||
temp_r28 = (u8)frand();
|
||||
|
||||
for (var_r31 = 0; var_r31 < (temp_r28 + 1); var_r31++) {
|
||||
|
|
@ -95,7 +95,7 @@ void fn_1_6928(omObjData* arg0) {
|
|||
s32 var_r30;
|
||||
s32 var_r28;
|
||||
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(unkStruct7), 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, sizeof(unkStruct7), MEMORY_DEFAULT_NUM);
|
||||
arg0->data = var_r31;
|
||||
var_r31->unk0 = arg0->work[0];
|
||||
var_r31->unk1 = GWPlayerCfg[var_r31->unk0].character;
|
||||
|
|
@ -133,12 +133,12 @@ void fn_1_6928(omObjData* arg0) {
|
|||
Hu3DModelPosSet(var_r30, var_r31->unk24.x, var_r31->unk24.y, var_r31->unk24.z);
|
||||
Hu3DModelRotSet(var_r30, 0.0f, 30.0f, 0.0f);
|
||||
CharModelStepTypeSet(var_r31->unk1, 0);
|
||||
arg0->model[1] = var_r30 = Hu3DModelCreate(HuDataSelHeapReadNum(0x280012, 0x10000000, HEAP_DATA));
|
||||
arg0->model[1] = var_r30 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M409, 0x12));
|
||||
Hu3DModelHookSet(arg0->model[0], (char*)sp38[var_r31->unk1], arg0->model[1]);
|
||||
var_r30 = fn_1_DA48(2, 1);
|
||||
var_r31->unk57 = var_r30;
|
||||
lbl_1_bss_F0.unk10[var_r30].unk30 = fn_1_8838;
|
||||
fn_1_E2A8(var_r30, 0, 0x28002B, 0x40, 0x40);
|
||||
fn_1_E2A8(var_r30, 0, DATA_MAKE_NUM(DATADIR_M409, 0x2B), 0x40, 0x40);
|
||||
fn_1_F098(var_r30, lbl_1_data_158[var_r31->unk1].r, lbl_1_data_158[var_r31->unk1].g, lbl_1_data_158[var_r31->unk1].b, lbl_1_data_158[var_r31->unk1].a);
|
||||
fn_1_F024(var_r30, 1, lbl_1_data_158[var_r31->unk1].r, lbl_1_data_158[var_r31->unk1].g, lbl_1_data_158[var_r31->unk1].b, 0x98);
|
||||
fn_1_E85C(var_r30, 0, var_r31->unk24.x, 100.0f + var_r31->unk24.y, -1200.0f);
|
||||
|
|
@ -149,7 +149,7 @@ void fn_1_6928(omObjData* arg0) {
|
|||
fn_1_F408(var_r30, 1, 1);
|
||||
var_r30 = fn_1_DA48(1, 1);
|
||||
fn_1_DEF4(var_r30, 0, 0);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, 0x28002D);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, DATA_MAKE_NUM(DATADIR_M409, 0x2D));
|
||||
var_r31->unk58 = var_r30;
|
||||
lbl_1_bss_F0.unk10[var_r30].unk30 = &fn_1_8D6C;
|
||||
fn_1_ED44(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 4);
|
||||
|
|
@ -158,27 +158,27 @@ void fn_1_6928(omObjData* arg0) {
|
|||
fn_1_EC1C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 0.5f, 0.5f, 1.0f);
|
||||
var_r31->unk59 = 0;
|
||||
var_r31->unk60 = 0;
|
||||
var_r30 = espEntry(0x280031, 1, 0);
|
||||
var_r30 = espEntry(DATA_MAKE_NUM(DATADIR_M409, 0x31), 1, 0);
|
||||
var_r31->unk55 = var_r30;
|
||||
espColorSet(var_r30, 0, 0, 0);
|
||||
espTPLvlSet(var_r30, 0.5);
|
||||
espPosSet(var_r30, lbl_1_data_178[var_r31->unk0].x, lbl_1_data_178[var_r31->unk0].y);
|
||||
espAttrSet(var_r30, 4);
|
||||
var_r30 = espEntry(0x280030, 1, 0);
|
||||
var_r30 = espEntry(DATA_MAKE_NUM(DATADIR_M409, 0x30), 1, 0);
|
||||
var_r31->unk54 = var_r30;
|
||||
espPosSet(var_r30, lbl_1_data_178[var_r31->unk0].x, lbl_1_data_178[var_r31->unk0].y);
|
||||
espAttrSet(var_r30, 4);
|
||||
var_r30 = espEntry(var_r31->unk1 + 0x610000, 1, 0);
|
||||
var_r30 = espEntry(var_r31->unk1 + DATA_MAKE_NUM(DATADIR_MGCONST, 0x00), 1, 0);
|
||||
var_r31->unk56 = var_r30;
|
||||
espPosSet(var_r30, lbl_1_data_178[var_r31->unk0].x - 27.0f, lbl_1_data_178[var_r31->unk0].y - 20.0f);
|
||||
espAttrSet(var_r30, 4);
|
||||
|
||||
for (var_r28 = 0; var_r28 < 3; var_r28++) {
|
||||
var_r30 = espEntry(0x61000A, 0, 0);
|
||||
var_r30 = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x0A), 0, 0);
|
||||
var_r31->unk5A[var_r28][0] = var_r30;
|
||||
espAttrSet(var_r30, 4);
|
||||
espPosSet(var_r30, lbl_1_data_178[var_r31->unk0].x - 32.0f + (var_r28 * 0x1E), 16.0f + lbl_1_data_178[var_r31->unk0].y);
|
||||
var_r30 = espEntry(0x61000B, 0, 0);
|
||||
var_r30 = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x0B), 0, 0);
|
||||
var_r31->unk5A[var_r28][1] = var_r30;
|
||||
espAttrSet(var_r30, 4);
|
||||
espPosSet(var_r30, lbl_1_data_178[var_r31->unk0].x - 32.0f + (var_r28 * 0x1E), 16.0f + lbl_1_data_178[var_r31->unk0].y);
|
||||
|
|
@ -286,7 +286,7 @@ void fn_1_7344(omObjData* arg0) {
|
|||
Hu3DModelAttrSet(arg0->model[1], 1);
|
||||
temp_r23 = fn_1_DA48(1, 1);
|
||||
fn_1_DEF4(temp_r23, 0, 0);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, 0x28002C);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, DATA_MAKE_NUM(DATADIR_M409, 0x2C));
|
||||
fn_1_E85C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 20.0f + temp_r31->unk24.x, 100.0f + temp_r31->unk24.y, temp_r31->unk24.z - 25.0f);
|
||||
fn_1_EC1C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 2.0f, 2.0f, 1.0f);
|
||||
fn_1_ED44(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 0x80000000);
|
||||
|
|
@ -693,7 +693,7 @@ void fn_1_91C0(omObjData* arg0) {
|
|||
Hu3DModelAttrSet(var_r28, 0x40000001);
|
||||
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
arg0->motion[var_r30] = Hu3DJointMotion(var_r28, HuDataSelHeapReadNum(var_r30 + 0x28000F, 0x10000000, HEAP_DATA));
|
||||
arg0->motion[var_r30] = Hu3DJointMotion(var_r28, HuDataSelHeapReadNum(var_r30 + DATA_MAKE_NUM(DATADIR_M409, 0x0F), MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
}
|
||||
Hu3DMotionSet(var_r28, arg0->motion[0]);
|
||||
omSetTra(arg0, 419.99997f, 250.0f, -180.0f);
|
||||
|
|
@ -704,7 +704,7 @@ void fn_1_91C0(omObjData* arg0) {
|
|||
}
|
||||
|
||||
for (var_r30 = 0; var_r30 < 8; var_r30++) {
|
||||
var_r28 = Hu3DModelCreateFile(var_r30 + 0x28001B);
|
||||
var_r28 = Hu3DModelCreateFile(var_r30 + DATA_MAKE_NUM(DATADIR_M409, 0x1B));
|
||||
arg0->model[var_r30 + 1] = var_r28;
|
||||
Hu3DModelAttrSet(var_r28, 1);
|
||||
}
|
||||
|
|
@ -712,7 +712,7 @@ void fn_1_91C0(omObjData* arg0) {
|
|||
|
||||
|
||||
for (var_r31 = lbl_1_bss_10C, var_r30 = 0; var_r30 < 8; var_r30++, var_r31++) {
|
||||
var_r28 = Hu3DModelCreateFile(var_r30 + 0x280013);
|
||||
var_r28 = Hu3DModelCreateFile(var_r30 + DATA_MAKE_NUM(DATADIR_M409, 0x13));
|
||||
var_r31->unk0 = var_r28;
|
||||
Hu3DModelLayerSet(var_r28, 3);
|
||||
var_r31->unkC.x = -400.0f + (100.0f * var_r30);
|
||||
|
|
@ -728,7 +728,7 @@ void fn_1_91C0(omObjData* arg0) {
|
|||
var_r31->unk30.z = var_r31->unkC.z;
|
||||
var_r31->unk48 = var_r30;
|
||||
fn_1_DEF4((var_r31->unk1 = fn_1_DA48(1, 1)), 0, 0);
|
||||
fn_1_E2A8(lbl_1_bss_F0.unk6, 0, var_r30 + 0x280023, 0x40, 0x40);
|
||||
fn_1_E2A8(lbl_1_bss_F0.unk6, 0, var_r30 + DATA_MAKE_NUM(DATADIR_M409, 0x23), 0x40, 0x40);
|
||||
fn_1_EC1C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 2.0f, 2.0f, 1.0f);
|
||||
fn_1_F024(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 0xFF, 0xFF, 0xFF, 0xA0);
|
||||
fn_1_ED44(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 0x40000004);
|
||||
|
|
@ -892,7 +892,7 @@ void fn_1_962C(omObjData* arg0) {
|
|||
}
|
||||
var_r26 = fn_1_DA48(1, 1);
|
||||
fn_1_DEF4(var_r26, 0, 0);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, 0x28002C);
|
||||
fn_1_E7C8(lbl_1_bss_F0.unk6, 0, DATA_MAKE_NUM(DATADIR_M409, 0x2C));
|
||||
fn_1_E85C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, var_r31->unkC.x, var_r31->unkC.y, var_r31->unkC.z);
|
||||
fn_1_EC1C(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 4.0f, 4.0f, 1.0f);
|
||||
fn_1_ED44(lbl_1_bss_F0.unk6, lbl_1_bss_F0.unk8, 0x80000000);
|
||||
|
|
@ -1232,4 +1232,4 @@ f32 fn_1_BF38(s16 arg0) {
|
|||
hsfMotionData = motionData->unk_04->motion;
|
||||
length = hsfMotionData->len;
|
||||
return length;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,21 +20,53 @@ char *lbl_1_data_140[] = { "dmy-itemhook-r", "dmy-itemhook-r", "dmy-itemhook-r",
|
|||
|
||||
char *lbl_1_data_16C[] = { "itemhook-r", "itemhook-r", "itemhook-r", "itemhook-r", "itemhook-r", "itemhook-r", "itemhook-r", "itemhook-r" };
|
||||
|
||||
s32 lbl_1_data_18C[]
|
||||
= { DATA_MAKE_NUM(DATADIR_M410, 0), DATA_MAKE_NUM(DATADIR_M410, 1), DATA_MAKE_NUM(DATADIR_M410, 2), DATA_MAKE_NUM(DATADIR_M410, 3),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 4), DATA_MAKE_NUM(DATADIR_M410, 5), DATA_MAKE_NUM(DATADIR_M410, 6), DATA_MAKE_NUM(DATADIR_M410, 7) };
|
||||
s32 lbl_1_data_18C[] = {
|
||||
DATA_MAKE_NUM(DATADIR_M410, 0),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 1),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 2),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 3),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 4),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 5),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 6),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 7),
|
||||
};
|
||||
|
||||
u32 lbl_1_data_1AC[] = { 0, DATA_MAKE_NUM(DATADIR_M410, 70), DATA_MAKE_NUM(DATADIR_M410, 22), DATA_MAKE_NUM(DATADIR_M410, 30),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 38), DATA_MAKE_NUM(DATADIR_M410, 46), DATA_MAKE_NUM(DATADIR_M410, 62), DATA_MAKE_NUM(DATADIR_M410, 54),
|
||||
DATA_MAKE_NUM(DATADIR_E3SETUP, 23), DATA_MAKE_NUM(DATADIR_E3SETUP, 24) };
|
||||
u32 lbl_1_data_1AC[] = {
|
||||
0,
|
||||
DATA_MAKE_NUM(DATADIR_M410, 70),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 22),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 30),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 38),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 46),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 62),
|
||||
DATA_MAKE_NUM(DATADIR_M410, 54),
|
||||
DATA_MAKE_NUM(DATADIR_E3SETUP, 23),
|
||||
DATA_MAKE_NUM(DATADIR_E3SETUP, 24),
|
||||
};
|
||||
|
||||
UnkM410Struct10 lbl_1_data_1D4[] = { { 0.0f, 0.0f, 12.0f, 0x40000001 }, { 0.0f, 0.0f, 1.1999999, 0 }, { 0.0f, 0.0f, 12.0f, 0x40000001 },
|
||||
{ 0.0f, 0.0f, 6.0f, 0 }, { 6.0f, 0.0f, 4.7999997f, 0 }, { 0.0f, 0.0f, 1.1999999f, 0 }, { 0.0f, 0.0f, 1.1999999f, 0 }, { 0.0f, 0.0f, 1.1999999f, 0 },
|
||||
{ 0.0f, 0.0f, 12.0f, 0 }, { 0.0f, 0.0f, 12.0f, 0 } };
|
||||
UnkM410Struct10 lbl_1_data_1D4[] = {
|
||||
{ 0.0f, 0.0f, 12.0f, 0x40000001 },
|
||||
{ 0.0f, 0.0f, 1.1999999, 0 },
|
||||
{ 0.0f, 0.0f, 12.0f, 0x40000001 },
|
||||
{ 0.0f, 0.0f, 6.0f, 0 },
|
||||
{ 6.0f, 0.0f, 4.7999997f, 0 },
|
||||
{ 0.0f, 0.0f, 1.1999999f, 0 },
|
||||
{ 0.0f, 0.0f, 1.1999999f, 0 },
|
||||
{ 0.0f, 0.0f, 1.1999999f, 0 },
|
||||
{ 0.0f, 0.0f, 12.0f, 0 },
|
||||
{ 0.0f, 0.0f, 12.0f, 0 },
|
||||
};
|
||||
|
||||
s32 lbl_1_data_274[] = { DATA_MAKE_NUM(DATADIR_MGCONST, 0), DATA_MAKE_NUM(DATADIR_MGCONST, 1), DATA_MAKE_NUM(DATADIR_MGCONST, 2),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 3), DATA_MAKE_NUM(DATADIR_MGCONST, 4), DATA_MAKE_NUM(DATADIR_MGCONST, 5), DATA_MAKE_NUM(DATADIR_MGCONST, 6),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 7) };
|
||||
s32 lbl_1_data_274[] = {
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 0),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 1),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 2),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 3),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 4),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 5),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 6),
|
||||
DATA_MAKE_NUM(DATADIR_MGCONST, 7),
|
||||
};
|
||||
|
||||
GXColor lbl_1_data_294[] = {
|
||||
{ 102, 0, 0, 255 },
|
||||
|
|
@ -144,9 +176,9 @@ void fn_1_80A0(omObjData *object)
|
|||
for (var_r29 = 0; var_r29 < 10; var_r29++) {
|
||||
if (lbl_1_data_1AC[var_r29] < 0x10000) {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r28, lbl_1_data_1AC[var_r29]);
|
||||
} else {
|
||||
object->motion[var_r29]
|
||||
= Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(var_r28 + lbl_1_data_1AC[var_r29], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
}
|
||||
else {
|
||||
object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], var_r28 + lbl_1_data_1AC[var_r29]);
|
||||
}
|
||||
}
|
||||
CharModelMotionDataClose(var_r28);
|
||||
|
|
@ -178,40 +210,40 @@ void fn_1_8414(omObjData *object)
|
|||
UnkM410Struct7 sp8 = { { 42, 78, 108, 125 } };
|
||||
|
||||
switch (var_r31->unk_34) {
|
||||
case 0:
|
||||
fn_1_9F70(object, 0);
|
||||
if (fn_1_2804()) {
|
||||
var_r31->unk_38 = 0;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (var_r31->unk_38 >= sp8.unk_00[var_r31->unk_04]) {
|
||||
var_r31->unk_28 = 1;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
fn_1_96F4(object);
|
||||
if (var_r31->unk_38 >= (2.8f + 0.00040000002f * frandmod(1000)) * 60.0f) {
|
||||
var_r31->unk_2C = 1;
|
||||
var_r31->unk_38 = 0;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (var_r31->unk_24) {
|
||||
if (var_r31->unk_38 >= 27.0f) {
|
||||
var_r31->unk_30 = 1;
|
||||
case 0:
|
||||
fn_1_9F70(object, 0);
|
||||
if (fn_1_2804()) {
|
||||
var_r31->unk_38 = 0;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
}
|
||||
if (fn_1_9A90(object)) {
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
fn_1_9F70(object, 0);
|
||||
break;
|
||||
break;
|
||||
case 1:
|
||||
if (var_r31->unk_38 >= sp8.unk_00[var_r31->unk_04]) {
|
||||
var_r31->unk_28 = 1;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
fn_1_96F4(object);
|
||||
if (var_r31->unk_38 >= (2.8f + 0.00040000002f * frandmod(1000)) * 60.0f) {
|
||||
var_r31->unk_2C = 1;
|
||||
var_r31->unk_38 = 0;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (var_r31->unk_24) {
|
||||
if (var_r31->unk_38 >= 27.0f) {
|
||||
var_r31->unk_30 = 1;
|
||||
}
|
||||
}
|
||||
if (fn_1_9A90(object)) {
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
fn_1_9F70(object, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
fn_1_8A10(object);
|
||||
|
|
@ -241,35 +273,37 @@ void fn_1_8678(omObjData *object)
|
|||
}
|
||||
}
|
||||
switch (var_r31->unk_34) {
|
||||
case 0:
|
||||
if (fn_1_9F70(object, 0)) {
|
||||
var_r31->unk_28 = 1;
|
||||
}
|
||||
fn_1_96F4(object);
|
||||
if (var_r31->unk_18) {
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (!var_r31->unk_1C && !var_r31->unk_20) {
|
||||
if (var_r31->unk_10 & 0x100) {
|
||||
if (fn_1_281C() == 2) {
|
||||
var_r31->unk_2C = 1;
|
||||
}
|
||||
} else if (var_r31->unk_10 & 0x200 && fn_1_281C() == 2) {
|
||||
if (fabs(fn_1_30F0(var_r31->unk_3C, var_r31->unk_40)) < 45.0) {
|
||||
var_r31->unk_30 = 1;
|
||||
}
|
||||
case 0:
|
||||
if (fn_1_9F70(object, 0)) {
|
||||
var_r31->unk_28 = 1;
|
||||
}
|
||||
var_r29 = 1;
|
||||
} else if (var_r31->unk_24 && var_r31->unk_10 & 0x200) {
|
||||
var_r31->unk_30 = 1;
|
||||
}
|
||||
if (fn_1_9A90(object) || fn_1_9C84(object)) {
|
||||
var_r31->unk_36 = 0;
|
||||
var_r31->unk_34--;
|
||||
}
|
||||
break;
|
||||
fn_1_96F4(object);
|
||||
if (var_r31->unk_18) {
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (!var_r31->unk_1C && !var_r31->unk_20) {
|
||||
if (var_r31->unk_10 & 0x100) {
|
||||
if (fn_1_281C() == 2) {
|
||||
var_r31->unk_2C = 1;
|
||||
}
|
||||
}
|
||||
else if (var_r31->unk_10 & 0x200 && fn_1_281C() == 2) {
|
||||
if (fabs(fn_1_30F0(var_r31->unk_3C, var_r31->unk_40)) < 45.0) {
|
||||
var_r31->unk_30 = 1;
|
||||
}
|
||||
}
|
||||
var_r29 = 1;
|
||||
}
|
||||
else if (var_r31->unk_24 && var_r31->unk_10 & 0x200) {
|
||||
var_r31->unk_30 = 1;
|
||||
}
|
||||
if (fn_1_9A90(object) || fn_1_9C84(object)) {
|
||||
var_r31->unk_36 = 0;
|
||||
var_r31->unk_34--;
|
||||
}
|
||||
break;
|
||||
}
|
||||
fn_1_8A10(object);
|
||||
if (fn_1_281C() == 3 && var_r29) {
|
||||
|
|
@ -286,32 +320,33 @@ void fn_1_88D8(omObjData *object)
|
|||
var_r31 = object->data;
|
||||
fn_1_8A10(object);
|
||||
switch (var_r31->unk_34) {
|
||||
case 0:
|
||||
var_r31->unk_34++;
|
||||
return;
|
||||
case 1:
|
||||
if (fn_1_2834() == 1) {
|
||||
Hu3DModelHookReset(object->model[0]);
|
||||
Hu3DModelAttrSet(object->model[1], 1);
|
||||
if ((1 << object->work[0]) & fn_1_2864()) {
|
||||
fn_1_9E0C(object, 8);
|
||||
} else {
|
||||
fn_1_9E0C(object, 9);
|
||||
case 0:
|
||||
var_r31->unk_34++;
|
||||
return;
|
||||
case 1:
|
||||
if (fn_1_2834() == 1) {
|
||||
Hu3DModelHookReset(object->model[0]);
|
||||
Hu3DModelAttrSet(object->model[1], 1);
|
||||
if ((1 << object->work[0]) & fn_1_2864()) {
|
||||
fn_1_9E0C(object, 8);
|
||||
}
|
||||
else {
|
||||
fn_1_9E0C(object, 9);
|
||||
}
|
||||
var_r31->unk_40 = 0.0f;
|
||||
var_r31->unk_44 = 0.0f;
|
||||
var_r31->unk_48 = 0.005f;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
var_r31->unk_40 = 0.0f;
|
||||
var_r31->unk_44 = 0.0f;
|
||||
var_r31->unk_48 = 0.005f;
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (fn_1_9EFC(object)) {
|
||||
fn_1_28AC(object->work[0]);
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
break;
|
||||
case 2:
|
||||
if (fn_1_9EFC(object)) {
|
||||
fn_1_28AC(object->work[0]);
|
||||
var_r31->unk_34++;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -351,72 +386,75 @@ void fn_1_8ABC(omObjData *object)
|
|||
var_r31 = object->data;
|
||||
var_r31->unk_10 = 0;
|
||||
switch (var_r31->unk_50) {
|
||||
case 0:
|
||||
if (!var_r31->unk_18) {
|
||||
return;
|
||||
}
|
||||
if (frandmod(1000) <= 1000.0f * var_r31->unk_4C) {
|
||||
var_f28 = 42.0f;
|
||||
if (frandmod(1000) <= 1000.0f * var_r31->unk_4C) {
|
||||
var_f29 = 280.0f;
|
||||
var_r31->unk_54 = 31.8f + frandmod(6);
|
||||
} else {
|
||||
var_f29 = 419.99997f;
|
||||
var_r31->unk_54 = 9.0f + frandmod(15);
|
||||
case 0:
|
||||
if (!var_r31->unk_18) {
|
||||
return;
|
||||
}
|
||||
var_f27 = var_f28 + var_r31->unk_54;
|
||||
var_r29 = -1;
|
||||
var_f31 = 10000.0f;
|
||||
for (var_r30 = 0; var_r30 < 18; var_r30++) {
|
||||
fn_1_7888(var_r30, (s32)var_f27, &sp28);
|
||||
if (fabs(sp28.y - var_f29) > 10.0) {
|
||||
continue;
|
||||
if (frandmod(1000) <= 1000.0f * var_r31->unk_4C) {
|
||||
var_f28 = 42.0f;
|
||||
if (frandmod(1000) <= 1000.0f * var_r31->unk_4C) {
|
||||
var_f29 = 280.0f;
|
||||
var_r31->unk_54 = 31.8f + frandmod(6);
|
||||
}
|
||||
fn_1_7840(var_r30, &sp34);
|
||||
if (fabs(sp34.x) < 1.9166667461395264) {
|
||||
continue;
|
||||
else {
|
||||
var_f29 = 419.99997f;
|
||||
var_r31->unk_54 = 9.0f + frandmod(15);
|
||||
}
|
||||
var_f30 = sp28.x - var_r31->unk_88.x;
|
||||
if (sp34.x >= 0.0f) {
|
||||
if (var_f30 < 0.0f) {
|
||||
var_f27 = var_f28 + var_r31->unk_54;
|
||||
var_r29 = -1;
|
||||
var_f31 = 10000.0f;
|
||||
for (var_r30 = 0; var_r30 < 18; var_r30++) {
|
||||
fn_1_7888(var_r30, (s32)var_f27, &sp28);
|
||||
if (fabs(sp28.y - var_f29) > 10.0) {
|
||||
continue;
|
||||
}
|
||||
fn_1_7840(var_r30, &sp34);
|
||||
if (fabs(sp34.x) < 1.9166667461395264) {
|
||||
continue;
|
||||
}
|
||||
var_f30 = sp28.x - var_r31->unk_88.x;
|
||||
if (sp34.x >= 0.0f) {
|
||||
if (var_f30 < 0.0f) {
|
||||
if (fabs(var_f30) < var_f31) {
|
||||
var_r29 = var_r30;
|
||||
var_f31 = fabs(var_f30);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (var_f30 > 0.0f) {
|
||||
if (fabs(var_f30) < var_f31) {
|
||||
var_r29 = var_r30;
|
||||
var_f31 = fabs(var_f30);
|
||||
}
|
||||
}
|
||||
} else if (var_f30 > 0.0f) {
|
||||
if (fabs(var_f30) < var_f31) {
|
||||
var_r29 = var_r30;
|
||||
var_f31 = fabs(var_f30);
|
||||
}
|
||||
}
|
||||
if (var_r29 < 0) {
|
||||
return;
|
||||
}
|
||||
fn_1_7840(var_r29, &sp34);
|
||||
var_f31 /= fabs(sp34.x);
|
||||
var_r31->unk_52 = var_f27 + var_f31 - var_f28 - var_r31->unk_54;
|
||||
}
|
||||
if (var_r29 < 0) {
|
||||
return;
|
||||
else {
|
||||
var_r31->unk_52 = 24.0f + frandmod(36);
|
||||
var_r31->unk_54 = 12.0f + frandmod(18);
|
||||
}
|
||||
fn_1_7840(var_r29, &sp34);
|
||||
var_f31 /= fabs(sp34.x);
|
||||
var_r31->unk_52 = var_f27 + var_f31 - var_f28 - var_r31->unk_54;
|
||||
} else {
|
||||
var_r31->unk_52 = 24.0f + frandmod(36);
|
||||
var_r31->unk_54 = 12.0f + frandmod(18);
|
||||
}
|
||||
var_r31->unk_50++;
|
||||
return;
|
||||
case 1:
|
||||
if (!var_r31->unk_52) {
|
||||
var_r31->unk_10 |= 256;
|
||||
var_r31->unk_50++;
|
||||
}
|
||||
var_r31->unk_52--;
|
||||
return;
|
||||
case 2:
|
||||
if (!var_r31->unk_54) {
|
||||
var_r31->unk_10 |= 512;
|
||||
var_r31->unk_50 = 0;
|
||||
}
|
||||
var_r31->unk_54--;
|
||||
break;
|
||||
return;
|
||||
case 1:
|
||||
if (!var_r31->unk_52) {
|
||||
var_r31->unk_10 |= 256;
|
||||
var_r31->unk_50++;
|
||||
}
|
||||
var_r31->unk_52--;
|
||||
return;
|
||||
case 2:
|
||||
if (!var_r31->unk_54) {
|
||||
var_r31->unk_10 |= 512;
|
||||
var_r31->unk_50 = 0;
|
||||
}
|
||||
var_r31->unk_54--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -480,7 +518,8 @@ void fn_1_9040(omObjData *object)
|
|||
sp2C.x = (0.016666668f * (sp20.x - var_r31->unk_70.x)) / var_f31;
|
||||
sp2C.y = 0.016666668f * var_f27;
|
||||
sp2C.z = (0.016666668f * (sp20.z - var_r31->unk_70.z)) / var_f31;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (var_r31->unk_20 != 0) {
|
||||
var_f30 = -450.0f + (0.05f * frandmod(1000));
|
||||
var_f29 = -100.0f;
|
||||
|
|
@ -488,7 +527,8 @@ void fn_1_9040(omObjData *object)
|
|||
sp20.x = var_r31->unk_70.x + (0.05f * (frandmod(2000) - 1000));
|
||||
sp20.y = var_f29;
|
||||
sp20.z = var_f30;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f30 = -700.0f;
|
||||
var_f29 = 420.0f;
|
||||
if (var_r31->unk_68 < -600.0f) {
|
||||
|
|
@ -516,7 +556,8 @@ void fn_1_9040(omObjData *object)
|
|||
}
|
||||
if (var_r28 >= 0 && var_f30 <= var_f25) {
|
||||
fn_1_7888(var_r28, var_r27, &sp20);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp20.x = var_r31->unk_88.x;
|
||||
sp20.y = var_f29;
|
||||
sp20.z = -700.0f;
|
||||
|
|
@ -585,7 +626,8 @@ void fn_1_96F4(omObjData *object)
|
|||
}
|
||||
if (var_r31->unk_18 != 0) {
|
||||
Hu3DModelPosSet(object->model[1], 0.0f, 0.0f, 0.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelPosSet(object->model[1], var_r31->unk_70.x, var_r31->unk_70.y, var_r31->unk_70.z);
|
||||
}
|
||||
if (var_r31->unk_36 >= (60.0f * (var_f31 - 0.17f))) {
|
||||
|
|
@ -621,7 +663,8 @@ s32 fn_1_9A90(omObjData *object)
|
|||
var_r31->unk_1C = 0;
|
||||
if (var_r31->unk_18) {
|
||||
fn_1_9E0C(object, 7);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29 = 1;
|
||||
fn_1_9E0C(object, 6);
|
||||
}
|
||||
|
|
@ -636,7 +679,8 @@ s32 fn_1_9A90(omObjData *object)
|
|||
var_r31->unk_30 = 0;
|
||||
}
|
||||
}
|
||||
} else if (var_r31->unk_18) {
|
||||
}
|
||||
else if (var_r31->unk_18) {
|
||||
fn_1_9F70(object, 2);
|
||||
}
|
||||
return var_r29;
|
||||
|
|
@ -658,12 +702,14 @@ s32 fn_1_9C84(omObjData *object)
|
|||
var_r31->unk_30 = 0;
|
||||
var_r31->unk_20 = 1;
|
||||
var_r31->unk_36 = 0;
|
||||
} else if (var_r31->unk_20) {
|
||||
}
|
||||
else if (var_r31->unk_20) {
|
||||
if (var_r31->unk_18) {
|
||||
if (var_r31->unk_36 >= 18.0f) {
|
||||
fn_1_9040(object);
|
||||
}
|
||||
} else if (var_r31->unk_36 >= 30.0f && fn_1_9EFC(object)) {
|
||||
}
|
||||
else if (var_r31->unk_36 >= 30.0f && fn_1_9EFC(object)) {
|
||||
var_r31->unk_30 = 0;
|
||||
var_r31->unk_2C = 0;
|
||||
var_r31->unk_20 = 0;
|
||||
|
|
@ -786,49 +832,50 @@ void fn_1_A3C0(omObjData *object)
|
|||
|
||||
for (var_r29 = 0; var_r29 < 4; var_r29++, var_r31++) {
|
||||
switch (var_r31->unk_14) {
|
||||
case 0:
|
||||
if (fn_1_281C() == 2) {
|
||||
var_r31->unk_14 = 1;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk_18 = 0;
|
||||
var_r31->unk_20 = var_r31->unk_08 % 10;
|
||||
var_r31->unk_1C = (var_r31->unk_08 / 10) % 10;
|
||||
espDispOn(var_r31->unk_3C[0]);
|
||||
espDispOn(var_r31->unk_3C[1]);
|
||||
espDispOn(var_r31->unk_40);
|
||||
espDispOn(var_r31->unk_42);
|
||||
espDispOn(var_r31->unk_44);
|
||||
espBankSet(var_r31->unk_3C[0], var_r31->unk_1C);
|
||||
espBankSet(var_r31->unk_3C[1], var_r31->unk_20);
|
||||
espBankSet(var_r31->unk_40, var_r31->unk_24);
|
||||
if (var_r31->unk_00) {
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = 0.5f;
|
||||
var_r31->unk_14++;
|
||||
} else {
|
||||
var_r31->unk_00 = 1;
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = 1.0f;
|
||||
var_r31->unk_14 += 3;
|
||||
case 0:
|
||||
if (fn_1_281C() == 2) {
|
||||
var_r31->unk_14 = 1;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk_18 = 0;
|
||||
var_r31->unk_20 = var_r31->unk_08 % 10;
|
||||
var_r31->unk_1C = (var_r31->unk_08 / 10) % 10;
|
||||
espDispOn(var_r31->unk_3C[0]);
|
||||
espDispOn(var_r31->unk_3C[1]);
|
||||
espDispOn(var_r31->unk_40);
|
||||
espDispOn(var_r31->unk_42);
|
||||
espDispOn(var_r31->unk_44);
|
||||
espBankSet(var_r31->unk_3C[0], var_r31->unk_1C);
|
||||
espBankSet(var_r31->unk_3C[1], var_r31->unk_20);
|
||||
espBankSet(var_r31->unk_40, var_r31->unk_24);
|
||||
if (var_r31->unk_00) {
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = 0.5f;
|
||||
var_r31->unk_14++;
|
||||
}
|
||||
else {
|
||||
var_r31->unk_00 = 1;
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = 1.0f;
|
||||
var_r31->unk_14 += 3;
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
var_f31 = var_r31->unk_2C[0];
|
||||
var_f31 += 0.10000001f;
|
||||
if (var_f31 >= 1.5f) {
|
||||
var_r31->unk_14++;
|
||||
}
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = var_f31;
|
||||
break;
|
||||
case 3:
|
||||
var_f31 = var_r31->unk_2C[0];
|
||||
var_f31 -= 0.10000001f;
|
||||
if (var_f31 <= 1.0f) {
|
||||
var_f31 = 1.0f;
|
||||
var_r31->unk_14 = var_r31->unk_14 + 1;
|
||||
}
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = var_f31;
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
var_f31 = var_r31->unk_2C[0];
|
||||
var_f31 += 0.10000001f;
|
||||
if (var_f31 >= 1.5f) {
|
||||
var_r31->unk_14++;
|
||||
}
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = var_f31;
|
||||
break;
|
||||
case 3:
|
||||
var_f31 = var_r31->unk_2C[0];
|
||||
var_f31 -= 0.10000001f;
|
||||
if (var_f31 <= 1.0f) {
|
||||
var_f31 = 1.0f;
|
||||
var_r31->unk_14 = var_r31->unk_14 + 1;
|
||||
}
|
||||
var_r31->unk_2C[0] = var_r31->unk_2C[1] = var_f31;
|
||||
break;
|
||||
}
|
||||
var_r31->unk_18++;
|
||||
|
||||
|
|
@ -845,7 +892,8 @@ void fn_1_A3C0(omObjData *object)
|
|||
var_r30->unk_00++;
|
||||
if (var_r30->unk_00 < 12.0f) {
|
||||
var_r30->unk_04 += 0.058333337f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r30->unk_04 += 0.025000002f;
|
||||
var_r30->unk_0C -= 0.050000004f;
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,40 +1,35 @@
|
|||
#include "game/audio.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/object.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/wipe.h"
|
||||
#include "game/sprite.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/sprite.h"
|
||||
#include "game/wipe.h"
|
||||
|
||||
#include "math.h"
|
||||
#include "ext_math.h"
|
||||
#include "math.h"
|
||||
|
||||
#include "REL/m416Dll.h"
|
||||
|
||||
GXColor lbl_1_data_268 = { 0, 0, 0, 255 };
|
||||
Vec lbl_1_data_26C[8] = {
|
||||
{ 70, 0, 70 },
|
||||
{ 70, 0, -70 },
|
||||
{ -70, 0, -70 },
|
||||
{ -70, 0, 70 },
|
||||
{ 70, 0, 70 },
|
||||
{ 70, 0, -70 },
|
||||
{ -70, 0, -70 },
|
||||
{ -70, 0, 70 },
|
||||
};
|
||||
Vec lbl_1_data_2CC[2] = {
|
||||
{ 370, 615, -245 },
|
||||
{ -370, 615, -245 }
|
||||
};
|
||||
float lbl_1_data_2E4[2] = {
|
||||
0, 1
|
||||
{ 70, 0, 70 },
|
||||
{ 70, 0, -70 },
|
||||
{ -70, 0, -70 },
|
||||
{ -70, 0, 70 },
|
||||
{ 70, 0, 70 },
|
||||
{ 70, 0, -70 },
|
||||
{ -70, 0, -70 },
|
||||
{ -70, 0, 70 },
|
||||
};
|
||||
Vec lbl_1_data_2CC[2] = { { 370, 615, -245 }, { -370, 615, -245 } };
|
||||
float lbl_1_data_2E4[2] = { 0, 1 };
|
||||
|
||||
omObjData *lbl_1_bss_118C;
|
||||
omObjData *lbl_1_bss_1188;
|
||||
|
|
@ -58,274 +53,272 @@ void fn_1_8FF0(void);
|
|||
|
||||
void fn_1_79D0(Process *objman)
|
||||
{
|
||||
lbl_1_bss_118C = omAddObjEx(objman, 20, 2, 0, -1, fn_1_7A74);
|
||||
lbl_1_bss_1188 = omAddObjEx(objman, 20, 10, 0, -1, fn_1_7F30);
|
||||
fn_1_8EA0();
|
||||
lbl_1_bss_118C = omAddObjEx(objman, 20, 2, 0, -1, fn_1_7A74);
|
||||
lbl_1_bss_1188 = omAddObjEx(objman, 20, 10, 0, -1, fn_1_7F30);
|
||||
fn_1_8EA0();
|
||||
}
|
||||
|
||||
void fn_1_7A54(void)
|
||||
{
|
||||
fn_1_8FF0();
|
||||
fn_1_8FF0();
|
||||
}
|
||||
|
||||
void fn_1_7A74(omObjData *object)
|
||||
{
|
||||
s16 i;
|
||||
object->model[0] = Hu3DModelCreateFile(0x2F0000);
|
||||
Hu3DModelShadowMapSet(object->model[0]);
|
||||
Hu3DModelLayerSet(object->model[0], 0);
|
||||
object->trans.x = 0;
|
||||
object->trans.y = 0;
|
||||
object->trans.z = 0;
|
||||
fn_1_8EB4(object->model[0]);
|
||||
for(i=0; i<2; i++) {
|
||||
lbl_1_bss_1174[i+2] = Hu3DLLightCreate(object->model[0], 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||
Hu3DLLightStaticSet(object->model[0], lbl_1_bss_1174[i+2], 1);
|
||||
Hu3DLLightPointSet(object->model[0], lbl_1_bss_1174[i+2], 45, 0.8, 3);
|
||||
Hu3DLLightColorSet(object->model[0], lbl_1_bss_1174[i+2], 255, 160, 0, 255);
|
||||
Hu3DLLightPosSet(object->model[0], lbl_1_bss_1174[i+2], lbl_1_data_2CC[i].x, 475, lbl_1_data_2CC[i].z, 0, 1, 0);
|
||||
}
|
||||
object->model[1] = Hu3DHookFuncCreate(fn_1_89BC);
|
||||
Hu3DModelLayerSet(object->model[1], 1);
|
||||
lbl_1_bss_1184 = GXGetTexBufferSize(640, 480, GX_TF_RGBA8, GX_FALSE, 0);
|
||||
lbl_1_bss_1180 = HuMemDirectMallocNum(HEAP_DATA, lbl_1_bss_1184, MEMORY_DEFAULT_NUM);
|
||||
memset(lbl_1_bss_1180, 0, lbl_1_bss_1184);
|
||||
object->func = fn_1_7D74;
|
||||
s16 i;
|
||||
object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M416, 0x00));
|
||||
Hu3DModelShadowMapSet(object->model[0]);
|
||||
Hu3DModelLayerSet(object->model[0], 0);
|
||||
object->trans.x = 0;
|
||||
object->trans.y = 0;
|
||||
object->trans.z = 0;
|
||||
fn_1_8EB4(object->model[0]);
|
||||
for (i = 0; i < 2; i++) {
|
||||
lbl_1_bss_1174[i + 2] = Hu3DLLightCreate(object->model[0], 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||
Hu3DLLightStaticSet(object->model[0], lbl_1_bss_1174[i + 2], 1);
|
||||
Hu3DLLightPointSet(object->model[0], lbl_1_bss_1174[i + 2], 45, 0.8, 3);
|
||||
Hu3DLLightColorSet(object->model[0], lbl_1_bss_1174[i + 2], 255, 160, 0, 255);
|
||||
Hu3DLLightPosSet(object->model[0], lbl_1_bss_1174[i + 2], lbl_1_data_2CC[i].x, 475, lbl_1_data_2CC[i].z, 0, 1, 0);
|
||||
}
|
||||
object->model[1] = Hu3DHookFuncCreate(fn_1_89BC);
|
||||
Hu3DModelLayerSet(object->model[1], 1);
|
||||
lbl_1_bss_1184 = GXGetTexBufferSize(640, 480, GX_TF_RGBA8, GX_FALSE, 0);
|
||||
lbl_1_bss_1180 = HuMemDirectMallocNum(HEAP_DATA, lbl_1_bss_1184, MEMORY_DEFAULT_NUM);
|
||||
memset(lbl_1_bss_1180, 0, lbl_1_bss_1184);
|
||||
object->func = fn_1_7D74;
|
||||
}
|
||||
|
||||
void fn_1_7D74(omObjData *object)
|
||||
{
|
||||
s32 i;
|
||||
for(i=0; i<2; i++) {
|
||||
Hu3DLLightPointSet(object->model[0], lbl_1_bss_1174[i+2], (15*sind(object->work[i]))+45, 0.8, 3);
|
||||
object->work[i] += 8.0f;
|
||||
if(object->work[i] > 360.0f) {
|
||||
object->work[i] -= 360.0f;
|
||||
}
|
||||
}
|
||||
s32 i;
|
||||
for (i = 0; i < 2; i++) {
|
||||
Hu3DLLightPointSet(object->model[0], lbl_1_bss_1174[i + 2], (15 * sind(object->work[i])) + 45, 0.8, 3);
|
||||
object->work[i] += 8.0f;
|
||||
if (object->work[i] > 360.0f) {
|
||||
object->work[i] -= 360.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_7F30(omObjData *object)
|
||||
{
|
||||
Mtx sp68;
|
||||
Mtx sp38;
|
||||
Mtx sp8;
|
||||
s32 temp_r30;
|
||||
Vec *temp_r29;
|
||||
s32 temp_r28;
|
||||
s32 temp_r27;
|
||||
s16 temp_r26;
|
||||
s16 temp_r25;
|
||||
s16 temp_r24;
|
||||
AnimData *temp_r23;
|
||||
object->stat |= 0x100;
|
||||
for(temp_r30=0; temp_r30<2; temp_r30++) {
|
||||
if(temp_r30 == 0) {
|
||||
temp_r25 = Hu3DModelCreateFile(0x2F0001);
|
||||
temp_r26 = temp_r25;
|
||||
} else {
|
||||
temp_r24 = Hu3DModelLink(temp_r25);
|
||||
temp_r26 = temp_r24;
|
||||
}
|
||||
object->model[temp_r30] = temp_r26;
|
||||
Hu3DModelLayerSet(temp_r26, 2);
|
||||
fn_1_8EB4(object->model[temp_r30]);
|
||||
Hu3DModelPosSet(object->model[temp_r30], lbl_1_data_2CC[temp_r30].x, lbl_1_data_2CC[temp_r30].y, lbl_1_data_2CC[temp_r30].z);
|
||||
}
|
||||
temp_r23 = HuSprAnimReadFile(0x2F0006);
|
||||
temp_r29 = &lbl_1_data_26C[0];
|
||||
for(temp_r30=0; temp_r30<2; temp_r30++) {
|
||||
for(temp_r27=0; temp_r27<4; temp_r27++, temp_r29++) {
|
||||
temp_r28 = (temp_r30*4)+2;
|
||||
temp_r28 = temp_r27+temp_r28;
|
||||
object->model[temp_r28] = Hu3DParticleCreate(temp_r23, 50);
|
||||
Hu3DParticleHookSet(object->model[temp_r28], fn_1_613C);
|
||||
Hu3DParticleBlendModeSet(object->model[temp_r28], 1);
|
||||
Hu3DModelLayerSet(object->model[temp_r28], 6);
|
||||
Hu3DModelScaleSet(object->model[temp_r28], 0.5f, 0.7f, 0.5f);
|
||||
MTXTrans(sp68, lbl_1_data_2CC[temp_r30].x, lbl_1_data_2CC[temp_r30].y, lbl_1_data_2CC[temp_r30].z);
|
||||
MTXTrans(sp38, 0, -150, 0);
|
||||
MTXConcat(sp68, sp38, sp68);
|
||||
MTXTrans(sp8, temp_r29->x, temp_r29->y, temp_r29->z);
|
||||
MTXConcat(sp68, sp8, sp68);
|
||||
Hu3DModelPosSet(object->model[temp_r28], sp68[0][3], sp68[1][3], sp68[2][3]);
|
||||
}
|
||||
}
|
||||
for(temp_r30=0; temp_r30<2; temp_r30++) {
|
||||
lbl_1_bss_1174[temp_r30] = Hu3DLLightCreate(object->model[temp_r30], 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||
Hu3DLLightStaticSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 1);
|
||||
Hu3DLLightPointSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 1000, 0.8, 3);
|
||||
Hu3DLLightColorSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 255, 160, 0, 255);
|
||||
Hu3DLLightPosSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], lbl_1_data_2CC[temp_r30].x, 475, lbl_1_data_2CC[temp_r30].z, 0, 1, 0);
|
||||
}
|
||||
object->work[0] = 0;
|
||||
object->work[1] = 45;
|
||||
lbl_1_bss_117C = 0;
|
||||
object->func = fn_1_83B4;
|
||||
Mtx sp68;
|
||||
Mtx sp38;
|
||||
Mtx sp8;
|
||||
s32 temp_r30;
|
||||
Vec *temp_r29;
|
||||
s32 temp_r28;
|
||||
s32 temp_r27;
|
||||
s16 temp_r26;
|
||||
s16 temp_r25;
|
||||
s16 temp_r24;
|
||||
AnimData *temp_r23;
|
||||
object->stat |= 0x100;
|
||||
for (temp_r30 = 0; temp_r30 < 2; temp_r30++) {
|
||||
if (temp_r30 == 0) {
|
||||
temp_r25 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M416, 0x01));
|
||||
temp_r26 = temp_r25;
|
||||
}
|
||||
else {
|
||||
temp_r24 = Hu3DModelLink(temp_r25);
|
||||
temp_r26 = temp_r24;
|
||||
}
|
||||
object->model[temp_r30] = temp_r26;
|
||||
Hu3DModelLayerSet(temp_r26, 2);
|
||||
fn_1_8EB4(object->model[temp_r30]);
|
||||
Hu3DModelPosSet(object->model[temp_r30], lbl_1_data_2CC[temp_r30].x, lbl_1_data_2CC[temp_r30].y, lbl_1_data_2CC[temp_r30].z);
|
||||
}
|
||||
temp_r23 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M416, 0x06));
|
||||
temp_r29 = &lbl_1_data_26C[0];
|
||||
for (temp_r30 = 0; temp_r30 < 2; temp_r30++) {
|
||||
for (temp_r27 = 0; temp_r27 < 4; temp_r27++, temp_r29++) {
|
||||
temp_r28 = (temp_r30 * 4) + 2;
|
||||
temp_r28 = temp_r27 + temp_r28;
|
||||
object->model[temp_r28] = Hu3DParticleCreate(temp_r23, 50);
|
||||
Hu3DParticleHookSet(object->model[temp_r28], fn_1_613C);
|
||||
Hu3DParticleBlendModeSet(object->model[temp_r28], 1);
|
||||
Hu3DModelLayerSet(object->model[temp_r28], 6);
|
||||
Hu3DModelScaleSet(object->model[temp_r28], 0.5f, 0.7f, 0.5f);
|
||||
MTXTrans(sp68, lbl_1_data_2CC[temp_r30].x, lbl_1_data_2CC[temp_r30].y, lbl_1_data_2CC[temp_r30].z);
|
||||
MTXTrans(sp38, 0, -150, 0);
|
||||
MTXConcat(sp68, sp38, sp68);
|
||||
MTXTrans(sp8, temp_r29->x, temp_r29->y, temp_r29->z);
|
||||
MTXConcat(sp68, sp8, sp68);
|
||||
Hu3DModelPosSet(object->model[temp_r28], sp68[0][3], sp68[1][3], sp68[2][3]);
|
||||
}
|
||||
}
|
||||
for (temp_r30 = 0; temp_r30 < 2; temp_r30++) {
|
||||
lbl_1_bss_1174[temp_r30] = Hu3DLLightCreate(object->model[temp_r30], 0, 0, 0, 0, 0, 0, 0, 0, 0);
|
||||
Hu3DLLightStaticSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 1);
|
||||
Hu3DLLightPointSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 1000, 0.8, 3);
|
||||
Hu3DLLightColorSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], 255, 160, 0, 255);
|
||||
Hu3DLLightPosSet(object->model[temp_r30], lbl_1_bss_1174[temp_r30], lbl_1_data_2CC[temp_r30].x, 475, lbl_1_data_2CC[temp_r30].z, 0, 1, 0);
|
||||
}
|
||||
object->work[0] = 0;
|
||||
object->work[1] = 45;
|
||||
lbl_1_bss_117C = 0;
|
||||
object->func = fn_1_83B4;
|
||||
}
|
||||
|
||||
void fn_1_83B4(omObjData *object)
|
||||
{
|
||||
float temp_f31;
|
||||
|
||||
s32 temp_r31;
|
||||
Vec *temp_r29;
|
||||
s32 temp_r28;
|
||||
s32 temp_r27;
|
||||
ModelData *temp_r26;
|
||||
|
||||
Mtx sp130[2];
|
||||
Mtx sp100;
|
||||
Mtx spD0;
|
||||
Mtx spA0;
|
||||
Mtx sp70;
|
||||
Mtx sp40;
|
||||
Mtx sp10;
|
||||
float sp8[2];
|
||||
MTXIdentity(sp100);
|
||||
MTXIdentity(sp130[0]);
|
||||
MTXIdentity(sp130[1]);
|
||||
MTXIdentity(spD0);
|
||||
MTXIdentity(spA0);
|
||||
MTXIdentity(sp70);
|
||||
MTXIdentity(sp40);
|
||||
MTXIdentity(sp10);
|
||||
lbl_1_bss_117C = fmod(1+lbl_1_bss_117C, 360);
|
||||
sp8[0] = 20*sind(lbl_1_bss_117C);
|
||||
sp8[1] = 20*cosd(lbl_1_bss_117C);
|
||||
if(fn_1_1240() == 6) {
|
||||
for(temp_r31=0; temp_r31<2; temp_r31++) {
|
||||
temp_f31 = sp8[temp_r31]-lbl_1_bss_116C[temp_r31];
|
||||
if(temp_f31*lbl_1_data_2E4[temp_r31] <= 0.0f) {
|
||||
temp_r26 = &Hu3DData[object->model[temp_r31]];
|
||||
HuAudFXEmiterPlay(1467, &temp_r26->pos);
|
||||
}
|
||||
lbl_1_data_2E4[temp_r31] = temp_f31;
|
||||
}
|
||||
}
|
||||
lbl_1_bss_116C[0] = sp8[0];
|
||||
lbl_1_bss_116C[1] = sp8[1];
|
||||
temp_r29 = &lbl_1_data_26C[0];
|
||||
for(temp_r31=0; temp_r31<2; temp_r31++) {
|
||||
MTXRotDeg(sp130[temp_r31], 'y', lbl_1_bss_116C[temp_r31]);
|
||||
for(temp_r28=0; temp_r28<4; temp_r28++, temp_r29++) {
|
||||
temp_r27 = (temp_r31*4)+2;
|
||||
temp_r27 = temp_r28+temp_r27;
|
||||
MTXTrans(spA0, lbl_1_data_2CC[temp_r31].x, lbl_1_data_2CC[temp_r31].y, lbl_1_data_2CC[temp_r31].z);
|
||||
MTXTrans(sp70, 0, -150, 0);
|
||||
MTXConcat(spA0, sp70, spA0);
|
||||
MTXTrans(sp40, temp_r29->x, temp_r29->y, temp_r29->z);
|
||||
MTXConcat(sp130[temp_r31], sp40, sp10);
|
||||
MTXConcat(spA0, sp10, spA0);
|
||||
Hu3DModelPosSet(object->model[temp_r27], spA0[0][3], spA0[1][3], spA0[2][3]);
|
||||
}
|
||||
}
|
||||
Hu3DModelRotSet(object->model[0], 0, lbl_1_bss_116C[0], 0);
|
||||
Hu3DModelRotSet(object->model[1], 0, lbl_1_bss_116C[1], 0);
|
||||
for(temp_r31=0; temp_r31<2; temp_r31++) {
|
||||
Hu3DLLightPointSet(object->model[temp_r31], lbl_1_bss_1174[temp_r31], (15*sind(object->work[temp_r31]))+45, 0.9, 3);
|
||||
object->work[temp_r31] += 8.0f;
|
||||
if(object->work[temp_r31] > 360.0f) {
|
||||
object->work[temp_r31] -= 360.0f;
|
||||
}
|
||||
}
|
||||
float temp_f31;
|
||||
|
||||
s32 temp_r31;
|
||||
Vec *temp_r29;
|
||||
s32 temp_r28;
|
||||
s32 temp_r27;
|
||||
ModelData *temp_r26;
|
||||
|
||||
Mtx sp130[2];
|
||||
Mtx sp100;
|
||||
Mtx spD0;
|
||||
Mtx spA0;
|
||||
Mtx sp70;
|
||||
Mtx sp40;
|
||||
Mtx sp10;
|
||||
float sp8[2];
|
||||
MTXIdentity(sp100);
|
||||
MTXIdentity(sp130[0]);
|
||||
MTXIdentity(sp130[1]);
|
||||
MTXIdentity(spD0);
|
||||
MTXIdentity(spA0);
|
||||
MTXIdentity(sp70);
|
||||
MTXIdentity(sp40);
|
||||
MTXIdentity(sp10);
|
||||
lbl_1_bss_117C = fmod(1 + lbl_1_bss_117C, 360);
|
||||
sp8[0] = 20 * sind(lbl_1_bss_117C);
|
||||
sp8[1] = 20 * cosd(lbl_1_bss_117C);
|
||||
if (fn_1_1240() == 6) {
|
||||
for (temp_r31 = 0; temp_r31 < 2; temp_r31++) {
|
||||
temp_f31 = sp8[temp_r31] - lbl_1_bss_116C[temp_r31];
|
||||
if (temp_f31 * lbl_1_data_2E4[temp_r31] <= 0.0f) {
|
||||
temp_r26 = &Hu3DData[object->model[temp_r31]];
|
||||
HuAudFXEmiterPlay(1467, &temp_r26->pos);
|
||||
}
|
||||
lbl_1_data_2E4[temp_r31] = temp_f31;
|
||||
}
|
||||
}
|
||||
lbl_1_bss_116C[0] = sp8[0];
|
||||
lbl_1_bss_116C[1] = sp8[1];
|
||||
temp_r29 = &lbl_1_data_26C[0];
|
||||
for (temp_r31 = 0; temp_r31 < 2; temp_r31++) {
|
||||
MTXRotDeg(sp130[temp_r31], 'y', lbl_1_bss_116C[temp_r31]);
|
||||
for (temp_r28 = 0; temp_r28 < 4; temp_r28++, temp_r29++) {
|
||||
temp_r27 = (temp_r31 * 4) + 2;
|
||||
temp_r27 = temp_r28 + temp_r27;
|
||||
MTXTrans(spA0, lbl_1_data_2CC[temp_r31].x, lbl_1_data_2CC[temp_r31].y, lbl_1_data_2CC[temp_r31].z);
|
||||
MTXTrans(sp70, 0, -150, 0);
|
||||
MTXConcat(spA0, sp70, spA0);
|
||||
MTXTrans(sp40, temp_r29->x, temp_r29->y, temp_r29->z);
|
||||
MTXConcat(sp130[temp_r31], sp40, sp10);
|
||||
MTXConcat(spA0, sp10, spA0);
|
||||
Hu3DModelPosSet(object->model[temp_r27], spA0[0][3], spA0[1][3], spA0[2][3]);
|
||||
}
|
||||
}
|
||||
Hu3DModelRotSet(object->model[0], 0, lbl_1_bss_116C[0], 0);
|
||||
Hu3DModelRotSet(object->model[1], 0, lbl_1_bss_116C[1], 0);
|
||||
for (temp_r31 = 0; temp_r31 < 2; temp_r31++) {
|
||||
Hu3DLLightPointSet(object->model[temp_r31], lbl_1_bss_1174[temp_r31], (15 * sind(object->work[temp_r31])) + 45, 0.9, 3);
|
||||
object->work[temp_r31] += 8.0f;
|
||||
if (object->work[temp_r31] > 360.0f) {
|
||||
object->work[temp_r31] -= 360.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_8904(void *arg0, u8 arg1)
|
||||
{
|
||||
GXSetTexCopySrc(0, 0, 640, 480);
|
||||
GXSetTexCopyDst(640, 480, GX_TF_RGBA8, GX_FALSE);
|
||||
GXSetCopyClear(BGColor, 0xFFFFFF);
|
||||
GXCopyTex(arg0, arg1);
|
||||
DCFlushRange(arg0, lbl_1_bss_1184);
|
||||
GXSetTexCopySrc(0, 0, 640, 480);
|
||||
GXSetTexCopyDst(640, 480, GX_TF_RGBA8, GX_FALSE);
|
||||
GXSetCopyClear(BGColor, 0xFFFFFF);
|
||||
GXCopyTex(arg0, arg1);
|
||||
DCFlushRange(arg0, lbl_1_bss_1184);
|
||||
}
|
||||
|
||||
void fn_1_89BC(ModelData *model, Mtx mtx)
|
||||
{
|
||||
Mtx44 sp34;
|
||||
GXTexObj sp14;
|
||||
MTXOrtho(sp34, 0, 480, 0, 576, 0, 1000);
|
||||
GXSetProjection(sp34, GX_ORTHOGRAPHIC);
|
||||
MTXIdentity(mtx);
|
||||
GXLoadPosMtxImm(mtx, GX_PNMTX0);
|
||||
GXSetNumChans(1);
|
||||
GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE);
|
||||
GXSetChanAmbColor(GX_COLOR0A0, lbl_1_data_268);
|
||||
GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_268);
|
||||
GXSetNumTexGens(1);
|
||||
GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY);
|
||||
GXSetNumTevStages(1);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0);
|
||||
GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_RASA);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXInitTexObj(&sp14, lbl_1_bss_1180, 640, 480, GX_TF_RGBA8, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
||||
GXLoadTexObj(&sp14, GX_TEXMAP0);
|
||||
GXSetBlendMode(GX_BM_BLEND, GX_BL_INVSRCALPHA, GX_BL_SRCALPHA, GX_LO_NOOP);
|
||||
GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE);
|
||||
GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
|
||||
GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0);
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
GXPosition3f32(0, 0, -10);
|
||||
GXTexCoord2f32(0, 0);
|
||||
GXPosition3f32(576, 0, -10);
|
||||
GXTexCoord2f32(1, 0);
|
||||
GXPosition3f32(576, 480, -10);
|
||||
GXTexCoord2f32(1, 1);
|
||||
GXPosition3f32(0, 480, -10);
|
||||
GXTexCoord2f32(0, 1);
|
||||
GXEnd();
|
||||
fn_1_8904(lbl_1_bss_1180, GX_FALSE);
|
||||
Mtx44 sp34;
|
||||
GXTexObj sp14;
|
||||
MTXOrtho(sp34, 0, 480, 0, 576, 0, 1000);
|
||||
GXSetProjection(sp34, GX_ORTHOGRAPHIC);
|
||||
MTXIdentity(mtx);
|
||||
GXLoadPosMtxImm(mtx, GX_PNMTX0);
|
||||
GXSetNumChans(1);
|
||||
GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE);
|
||||
GXSetChanAmbColor(GX_COLOR0A0, lbl_1_data_268);
|
||||
GXSetChanMatColor(GX_COLOR0A0, lbl_1_data_268);
|
||||
GXSetNumTexGens(1);
|
||||
GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY);
|
||||
GXSetNumTevStages(1);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR0A0);
|
||||
GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD0, GX_TEXMAP1, GX_COLOR0A0);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_RASA);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXInitTexObj(&sp14, lbl_1_bss_1180, 640, 480, GX_TF_RGBA8, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
||||
GXLoadTexObj(&sp14, GX_TEXMAP0);
|
||||
GXSetBlendMode(GX_BM_BLEND, GX_BL_INVSRCALPHA, GX_BL_SRCALPHA, GX_LO_NOOP);
|
||||
GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE);
|
||||
GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
|
||||
GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_F32, 0);
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
GXPosition3f32(0, 0, -10);
|
||||
GXTexCoord2f32(0, 0);
|
||||
GXPosition3f32(576, 0, -10);
|
||||
GXTexCoord2f32(1, 0);
|
||||
GXPosition3f32(576, 480, -10);
|
||||
GXTexCoord2f32(1, 1);
|
||||
GXPosition3f32(0, 480, -10);
|
||||
GXTexCoord2f32(0, 1);
|
||||
GXEnd();
|
||||
fn_1_8904(lbl_1_bss_1180, GX_FALSE);
|
||||
}
|
||||
|
||||
void fn_1_8EA0(void)
|
||||
{
|
||||
lbl_1_bss_1168 = 0;
|
||||
lbl_1_bss_1168 = 0;
|
||||
}
|
||||
|
||||
void fn_1_8EB4(s16 model)
|
||||
{
|
||||
HsfMaterial *temp_r31;
|
||||
HsfData *temp_r30;
|
||||
s32 temp_r29;
|
||||
ModelData *temp_r28;
|
||||
s16 *temp_r27;
|
||||
s16 temp_r26;
|
||||
temp_r28 = &Hu3DData[model];
|
||||
temp_r30 = temp_r28->hsfData;
|
||||
temp_r26 = temp_r30->materialCnt;
|
||||
temp_r27 = &lbl_1_bss_968[lbl_1_bss_1168][0];
|
||||
*temp_r27 = model;
|
||||
temp_r31 = temp_r30->material;
|
||||
for(temp_r29=0; temp_r29<temp_r26; temp_r31++, temp_r29++) {
|
||||
temp_r31->vtxMode = 1;
|
||||
}
|
||||
lbl_1_bss_1168++;
|
||||
HsfMaterial *temp_r31;
|
||||
HsfData *temp_r30;
|
||||
s32 temp_r29;
|
||||
ModelData *temp_r28;
|
||||
s16 *temp_r27;
|
||||
s16 temp_r26;
|
||||
temp_r28 = &Hu3DData[model];
|
||||
temp_r30 = temp_r28->hsfData;
|
||||
temp_r26 = temp_r30->materialCnt;
|
||||
temp_r27 = &lbl_1_bss_968[lbl_1_bss_1168][0];
|
||||
*temp_r27 = model;
|
||||
temp_r31 = temp_r30->material;
|
||||
for (temp_r29 = 0; temp_r29 < temp_r26; temp_r31++, temp_r29++) {
|
||||
temp_r31->vtxMode = 1;
|
||||
}
|
||||
lbl_1_bss_1168++;
|
||||
}
|
||||
|
||||
void fn_1_8F60(float arg0)
|
||||
{
|
||||
s16 *temp_r31;
|
||||
s32 temp_r30;
|
||||
temp_r31 = &lbl_1_bss_968[0][0];
|
||||
for(temp_r30=0; temp_r30<lbl_1_bss_1168; temp_r31 += 4, temp_r30++) {
|
||||
ModelData *sp8 = &Hu3DData[*temp_r31];
|
||||
Hu3DModelAmbSet(*temp_r31, arg0, arg0, arg0);
|
||||
}
|
||||
s16 *temp_r31;
|
||||
s32 temp_r30;
|
||||
temp_r31 = &lbl_1_bss_968[0][0];
|
||||
for (temp_r30 = 0; temp_r30 < lbl_1_bss_1168; temp_r31 += 4, temp_r30++) {
|
||||
ModelData *sp8 = &Hu3DData[*temp_r31];
|
||||
Hu3DModelAmbSet(*temp_r31, arg0, arg0, arg0);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_8FF0(void)
|
||||
{
|
||||
|
||||
}
|
||||
void fn_1_8FF0(void) { }
|
||||
|
||||
void fn_1_8FF4(float arg0)
|
||||
{
|
||||
lbl_1_data_268.a = arg0*255;
|
||||
}
|
||||
lbl_1_data_268.a = arg0 * 255;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -243,9 +243,9 @@ void fn_1_7C8C(omObjData *object)
|
|||
if (lbl_1_data_90[var_r29][var_r27 + 1]) {
|
||||
if (lbl_1_data_90[var_r29][0] < 65536) {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r28, lbl_1_data_90[var_r29][0]);
|
||||
} else {
|
||||
object->motion[var_r29]
|
||||
= Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(var_r28 + lbl_1_data_90[var_r29][0], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
}
|
||||
else {
|
||||
object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], var_r28 + lbl_1_data_90[var_r29][0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -271,7 +271,8 @@ void fn_1_7C8C(omObjData *object)
|
|||
if (var_r31->unk_0C) {
|
||||
Vec sp18 = { 0.0f, 1.0f, 0.0f };
|
||||
PSMTXRotAxisRad(var_r31->unk_1C4, &sp18, 0.017453292f * var_r31->unk_64);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Vec spC = { 0.0f, 1.0f, 0.0f };
|
||||
PSMTXIdentity(var_r31->unk_1C4);
|
||||
C_QUATRotAxisRad(&var_r31->unk_184, &spC, 0.0f);
|
||||
|
|
@ -322,7 +323,8 @@ void fn_1_82FC(omObjData *object)
|
|||
if (fn_1_26F8() == 2) {
|
||||
if (var_r31->unk_44) {
|
||||
fn_1_ADC4(object);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_14 = HuPadBtn[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
var_r31->unk_10 = HuPadBtnDown[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
var_f31 = HuPadStkX[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
|
|
@ -336,7 +338,8 @@ void fn_1_82FC(omObjData *object)
|
|||
}
|
||||
if ((s32)var_r31->unk_50 != 0) {
|
||||
(void)var_r29;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29 = 1;
|
||||
}
|
||||
fn_1_9FF0(object);
|
||||
|
|
@ -348,7 +351,8 @@ void fn_1_82FC(omObjData *object)
|
|||
var_r31->unk_50 = 0;
|
||||
object->func = fn_1_8B0C;
|
||||
}
|
||||
} else if (var_r31->unk_3C) {
|
||||
}
|
||||
else if (var_r31->unk_3C) {
|
||||
var_r31->unk_40 = 1;
|
||||
fn_1_2728(2);
|
||||
var_r31->unk_50 = 0;
|
||||
|
|
@ -377,7 +381,8 @@ void fn_1_86E8(omObjData *object)
|
|||
if (var_r31->unk_44 != 0) {
|
||||
var_r31->unk_1C = 0;
|
||||
fn_1_B2C0(object);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_14 = HuPadBtn[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
var_r31->unk_10 = HuPadBtnDown[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
var_f31 = HuPadStkX[GWPlayerCfg[object->work[0]].pad_idx];
|
||||
|
|
@ -398,7 +403,8 @@ void fn_1_86E8(omObjData *object)
|
|||
fn_1_9298(object);
|
||||
if ((s32)var_r31->unk_50 != 0) {
|
||||
(void)var_r29;
|
||||
} else if (var_r31->unk_2C) {
|
||||
}
|
||||
else if (var_r31->unk_2C) {
|
||||
var_r29 = 1;
|
||||
}
|
||||
fn_1_91E0(object);
|
||||
|
|
@ -435,7 +441,8 @@ void fn_1_8B0C(omObjData *object)
|
|||
if (var_r31->unk_24 > 1.0f) {
|
||||
var_r31->unk_24 = 1.0f;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_20 = 0.0f;
|
||||
var_r31->unk_24 = 0.01f;
|
||||
fn_1_2770(object->work[0]);
|
||||
|
|
@ -447,7 +454,8 @@ void fn_1_8B0C(omObjData *object)
|
|||
var_r31->unk_28 = 0;
|
||||
if (fn_1_2740(object->work[0]) >= 0) {
|
||||
fn_1_B8A0(object, 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_B8A0(object, 2);
|
||||
}
|
||||
var_r31->unk_50++;
|
||||
|
|
@ -481,7 +489,8 @@ void fn_1_8D30(omObjData *object)
|
|||
if (fn_1_2740(object->work[0]) >= 0) {
|
||||
var_r31->unk_68 = 0.0f;
|
||||
fn_1_B8A0(object, 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_B8A0(object, 2);
|
||||
}
|
||||
var_r31->unk_50++;
|
||||
|
|
@ -518,7 +527,8 @@ void fn_1_8E44(omObjData *object)
|
|||
sp8.y = 0.0f;
|
||||
if (PSVECMag(&sp8) > 0.0f) {
|
||||
PSVECNormalize(&sp8, &sp8);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp8.x = 1.0f;
|
||||
sp8.z = 0.0f;
|
||||
}
|
||||
|
|
@ -539,7 +549,8 @@ void fn_1_8E44(omObjData *object)
|
|||
sp8.y = 0.0f;
|
||||
if (PSVECMag(&sp8) > 0.0f) {
|
||||
PSVECNormalize(&sp8, &sp8);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp8.x = 0.0f;
|
||||
sp8.z = 1.0f;
|
||||
}
|
||||
|
|
@ -619,7 +630,8 @@ void fn_1_9298(omObjData *object)
|
|||
var_r31->unk_B4.x += var_r31->unk_B4.y;
|
||||
if (var_r31->unk_B4.x >= 360.0f) {
|
||||
var_r31->unk_B4.x -= 360.0f;
|
||||
} else if (var_r31->unk_B4.x < 0.0f) {
|
||||
}
|
||||
else if (var_r31->unk_B4.x < 0.0f) {
|
||||
var_r31->unk_B4.x += 360.0f;
|
||||
}
|
||||
PSMTXRotAxisRad(var_r31->unk_1C4, &sp8, 0.017453292f * var_r31->unk_B4.x);
|
||||
|
|
@ -661,7 +673,8 @@ void fn_1_9298(omObjData *object)
|
|||
case 2:
|
||||
if (var_r31->unk_E0.y >= 0.0f) {
|
||||
var_r31->unk_AC += (1.0f / 60.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_AC -= (1.0f / 60.0f);
|
||||
}
|
||||
var_r31->unk_34 = 0;
|
||||
|
|
@ -681,7 +694,8 @@ void fn_1_9298(omObjData *object)
|
|||
var_r31->unk_E0.y = 0.0f;
|
||||
fn_1_B8A0(object, 9);
|
||||
var_r31->unk_A0++;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_E0.y += (0.016666668f * (0.016666668f * var_r31->unk_11C.w));
|
||||
var_r31->unk_D4.y += var_r31->unk_E0.y;
|
||||
if (var_r31->unk_D4.y <= var_r31->unk_F8.y) {
|
||||
|
|
@ -762,7 +776,8 @@ void fn_1_9A1C(omObjData *object)
|
|||
}
|
||||
if (var_f31 == 0.0f) {
|
||||
var_f30 = 11.5f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f30 = 23.0 - fabs(var_f31);
|
||||
var_f30 = (0.5f * var_f30) * (var_f31 / fabs(var_f31));
|
||||
}
|
||||
|
|
@ -803,13 +818,15 @@ void fn_1_9C14(omObjData *object)
|
|||
if (var_r31->unk_24 > var_f30) {
|
||||
fn_1_B8A0(object, 4);
|
||||
var_f29 = var_r31->unk_24;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_B8A0(object, 3);
|
||||
var_f29 = var_r31->unk_24 / var_f30;
|
||||
}
|
||||
CharModelMotionSpeedSet(var_r31->unk_00, var_f29);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_E0.x = var_r31->unk_E0.y = var_r31->unk_E0.z = 0.0f;
|
||||
if (var_r31->unk_28 && CharModelMotionShiftIDGet(var_r31->unk_00) < 0) {
|
||||
fn_1_B8A0(object, 0);
|
||||
|
|
@ -890,7 +907,8 @@ void fn_1_9FF0(omObjData *object)
|
|||
var_r31->unk_98 = var_r31->unk_F8.y - var_r31->unk_104.y;
|
||||
var_r31->unk_98 += -0.27222225f;
|
||||
var_r31->unk_30 = 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_98 = var_r31->unk_F8.y - var_r31->unk_104.y;
|
||||
var_r31->unk_98 += -0.8166667f;
|
||||
var_r31->unk_30 = 1;
|
||||
|
|
@ -923,7 +941,8 @@ void fn_1_9FF0(omObjData *object)
|
|||
var_f31 = 0.0f;
|
||||
sp8.x = 1.0f;
|
||||
sp8.y = sp8.z = 0.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (var_f31 > 1.0f) {
|
||||
var_f31 = 1.0f;
|
||||
}
|
||||
|
|
@ -1003,7 +1022,8 @@ void fn_1_9FF0(omObjData *object)
|
|||
}
|
||||
PSVECScale(&sp14, &sp14, (0.0033333336f * var_f29) + var_r31->unk_144);
|
||||
PSVECAdd(&var_r31->unk_14C, &sp14, &var_r31->unk_14C);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECScale(&var_r31->unk_14C, &var_r31->unk_14C, 0.98f);
|
||||
}
|
||||
var_r31->unk_14C.y = 0.0f;
|
||||
|
|
@ -1020,12 +1040,14 @@ void fn_1_9FF0(omObjData *object)
|
|||
sp8.x = var_r31->unk_14C.z;
|
||||
sp8.y = 0.0f;
|
||||
sp8.z = -var_r31->unk_14C.x;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp8.x = 1.0f;
|
||||
sp8.y = sp8.z = 0.0f;
|
||||
}
|
||||
C_QUATRotAxisRad(&var_r31->unk_184, &sp8, 0.9424779f * var_f31);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp8.x = var_r31->unk_14C.z;
|
||||
sp8.y = 0.0f;
|
||||
sp8.z = -var_r31->unk_14C.x;
|
||||
|
|
@ -1090,7 +1112,8 @@ void fn_1_ADC4(omObjData *object)
|
|||
var_r31->unk_110 = sp28;
|
||||
}
|
||||
var_r31->unk_84 = 60.0f * ((0.23f - (0.04f * var_r31->unk_74)) + (0.001f * ((0.4f - (0.15f * var_r31->unk_74)) * frandmod(1000))));
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_84--;
|
||||
}
|
||||
sp28 = var_r31->unk_110;
|
||||
|
|
@ -1101,7 +1124,8 @@ void fn_1_ADC4(omObjData *object)
|
|||
var_f31 = PSVECMag(&sp10);
|
||||
if (var_r31->unk_48) {
|
||||
var_r30 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r30 = 0;
|
||||
}
|
||||
var_r29 = var_r30;
|
||||
|
|
@ -1129,7 +1153,8 @@ void fn_1_B2C0(omObjData *object)
|
|||
var_r29 = 0;
|
||||
if (var_r31->unk_90) {
|
||||
var_r31->unk_90--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_88 = 1.0f;
|
||||
if (frandmod(1000) < 500) {
|
||||
var_r31->unk_88 = -1.0f;
|
||||
|
|
@ -1142,7 +1167,8 @@ void fn_1_B2C0(omObjData *object)
|
|||
if (lbl_1_bss_884 >= object->work[0]) {
|
||||
if (lbl_1_bss_880) {
|
||||
lbl_1_bss_880--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_880 = 60.0f * (8.0f + (0.004f * frandmod(1000)));
|
||||
}
|
||||
}
|
||||
|
|
@ -1160,11 +1186,13 @@ void fn_1_B2C0(omObjData *object)
|
|||
if (var_r31->unk_80 > 240.0f) {
|
||||
var_r31->unk_80 = 1;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_80 = 60.0f * (0.00080000004f * ((1.05f - var_r31->unk_74) * frandmod(1000)));
|
||||
var_r31->unk_80 += (var_r31->unk_8C * (30.0f + (0.03f * frandmod(1000))));
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_80--;
|
||||
if (!var_r31->unk_80) {
|
||||
var_r31->unk_10 |= 256;
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ UnkM417Struct3 *fn_1_3574(omObjData *arg0, s16 arg1, s16 arg2)
|
|||
var_r31 = var_r30;
|
||||
for (var_r29 = 0; var_r29 < arg2; var_r29++, var_r31++, arg1++) {
|
||||
var_r31->unk_00 = arg1;
|
||||
arg0->model[arg1] = Hu3DModelCreate(HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M417, 3), MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
arg0->model[arg1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M417, 3));
|
||||
Hu3DModelLayerSet(arg0->model[var_r31->unk_00], 0);
|
||||
var_f30 = frandmod(360);
|
||||
var_f29 = frandmod(640);
|
||||
|
|
@ -196,7 +196,8 @@ void fn_1_37A0(omObjData *object, UnkM417Struct3 *arg1)
|
|||
var_r29 = 0;
|
||||
if (arg1->unk_30 > arg1->unk_34) {
|
||||
var_r29 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECSubtract(&arg1->unk_14, &arg1->unk_08, &sp8);
|
||||
var_f31 = PSVECMag(&sp8);
|
||||
if (var_f31 < 50.0f) {
|
||||
|
|
@ -247,7 +248,7 @@ void fn_1_3BC4(omObjData *object)
|
|||
Hu3DModelLayerSet(object->model[1], 1);
|
||||
object->model[2] = Hu3DHookFuncCreate(fn_1_6B60);
|
||||
Hu3DModelLayerSet(object->model[2], 7);
|
||||
var_r30 = Hu3DParticleCreate(HuSprAnimRead(HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M417, 17), MEMORY_DEFAULT_NUM, HEAP_DATA)), 512);
|
||||
var_r30 = Hu3DParticleCreate(HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M417, 17)), 512);
|
||||
object->model[3] = var_r30;
|
||||
Hu3DModelLayerSet(var_r30, 4);
|
||||
Hu3DParticleColSet(var_r30, 255, 255, 255);
|
||||
|
|
@ -339,7 +340,8 @@ void fn_1_3D58(omObjData *object)
|
|||
lbl_1_bss_178.unk_24[var_r29] = 0.0f;
|
||||
var_f31 = 850.0f / var_f31;
|
||||
PSVECScale(var_r28, var_r28, var_f31);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_178.unk_28[var_r31] = 1;
|
||||
lbl_1_bss_178.unk_1C[var_r31] = var_r30;
|
||||
lbl_1_bss_178.unk_24[var_r30] = 1.0f;
|
||||
|
|
@ -368,7 +370,8 @@ void fn_1_3D58(omObjData *object)
|
|||
(*var_r27)[1] = lbl_1_bss_178.unk_1C[var_r29 + 30];
|
||||
(*var_r27)[2] = lbl_1_bss_178.unk_1C[var_r29 + 1];
|
||||
(*var_r27)[3] = lbl_1_bss_178.unk_1C[var_r29 + 31];
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29 = var_r30 + (var_r31 * 30);
|
||||
(*var_r27)[1] = lbl_1_bss_178.unk_1C[var_r29];
|
||||
(*var_r27)[3] = lbl_1_bss_178.unk_1C[var_r29 + 30];
|
||||
|
|
@ -447,7 +450,8 @@ void fn_1_4BC8(float arg8, float arg9)
|
|||
|
||||
if (arg9 < 0.0f) {
|
||||
arg9 = 0.0f;
|
||||
} else if (arg9 > 1.0f) {
|
||||
}
|
||||
else if (arg9 > 1.0f) {
|
||||
arg9 = 1.0f;
|
||||
}
|
||||
var_f30 = 1.0f - arg9;
|
||||
|
|
@ -474,7 +478,7 @@ void fn_1_4BC8(float arg8, float arg9)
|
|||
return;
|
||||
}
|
||||
}
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
}
|
||||
|
||||
void fn_1_4E64(omObjData *object)
|
||||
|
|
@ -521,12 +525,14 @@ void fn_1_4E64(omObjData *object)
|
|||
}
|
||||
if (PSVECMag(&var_r31->unk_04) > 800.0f && var_r31->unk_00 >= 2 && (var_r31->unk_1C -= 0.033333335f, var_r31->unk_1C < 0.0f)) {
|
||||
var_r31->unk_00 = 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (var_r31->unk_00 < 2) {
|
||||
PSVECSubtract(&sp8, &var_r31->unk_04, &sp20);
|
||||
if (PSVECDotProduct(&sp14, &sp20) <= 0.0f) {
|
||||
var_r31->unk_00 = 2;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 1.2f * (PSVECMag(&sp20) / (var_r31->unk_18 * var_r31->unk_28));
|
||||
if (var_f31 < 1.2f) {
|
||||
if (var_f31 > 1.0f) {
|
||||
|
|
@ -538,7 +544,8 @@ void fn_1_4E64(omObjData *object)
|
|||
var_r29->unk_0C = var_f31;
|
||||
}
|
||||
}
|
||||
} else if (var_r31->unk_00 == 2 && PSVECMag(&var_r31->unk_04) > ((800.0f - (100.0f * (2.0f * var_r31->unk_20))) - 30.000002f)) {
|
||||
}
|
||||
else if (var_r31->unk_00 == 2 && PSVECMag(&var_r31->unk_04) > ((800.0f - (100.0f * (2.0f * var_r31->unk_20))) - 30.000002f)) {
|
||||
var_r31->unk_00 = 3;
|
||||
fn_1_6D64(lbl_1_bss_58, 0, var_r31->unk_10, 20.0f + (40.0f * var_r31->unk_20), var_r31->unk_20);
|
||||
sp2C.x = sind(var_r31->unk_10);
|
||||
|
|
@ -631,7 +638,8 @@ void fn_1_57B0(omObjData *object)
|
|||
var_r29->unk_0C += var_r29->unk_18;
|
||||
if (var_r29->unk_0C >= 360.0f) {
|
||||
var_r29->unk_0C -= 360.0f;
|
||||
} else if (var_r29->unk_0C < 0.0f) {
|
||||
}
|
||||
else if (var_r29->unk_0C < 0.0f) {
|
||||
var_r29->unk_0C += 360.0f;
|
||||
}
|
||||
var_f31 = var_r29->unk_0C;
|
||||
|
|
@ -688,8 +696,8 @@ void fn_1_57B0(omObjData *object)
|
|||
DCStoreRangeNoSync(lbl_1_bss_178.unk_6CC[lbl_1_bss_178.unk_6B4], 1080 * sizeof(GXColor));
|
||||
DCStoreRangeNoSync(lbl_1_bss_178.unk_6D4[lbl_1_bss_178.unk_6B4], 30 * 36 * sizeof(Vec2f));
|
||||
PPCSync();
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
}
|
||||
|
||||
void fn_1_5E3C(omObjData *object)
|
||||
|
|
@ -714,7 +722,8 @@ void fn_1_5E3C(omObjData *object)
|
|||
GXColor1x16(var_r31);
|
||||
GXTexCoord1x16(var_r31);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
GXBegin(GX_TRIANGLESTRIP, GX_VTXFMT0, 59);
|
||||
for (var_r30 = 29; var_r30 >= 0; var_r30--) {
|
||||
var_r31 = lbl_1_bss_178.unk_1C[var_r30 + (var_r29 * 30)];
|
||||
|
|
@ -936,7 +945,8 @@ void fn_1_6D64(s32 arg0, u32 arg1, float arg8, float arg9, float argA)
|
|||
arg8 += 180.0f;
|
||||
arg9 = 60.0f;
|
||||
var_f27 = fn_1_75BC();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r28 = 20.0f + (80.0f * argA);
|
||||
var_f27 = 0.0f;
|
||||
}
|
||||
|
|
@ -972,7 +982,8 @@ void fn_1_6D64(s32 arg0, u32 arg1, float arg8, float arg9, float argA)
|
|||
var_r31->unk40.r = 200.0f + (55.0f * var_f31);
|
||||
var_r31->unk40.g = 220.0f + (20.0f * var_f31);
|
||||
var_r31->unk40.b = 245.0f + (10.0f * var_f31);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk2C = 100.0f + frandmod(100);
|
||||
var_r31->unk40.a = frandmod(100) + 80;
|
||||
var_r31->unk40.r = 200.0f + (55.0f * var_f31);
|
||||
|
|
@ -1087,7 +1098,8 @@ void fn_1_7968(float arg8, float arg9, float argA, Vec *arg0)
|
|||
if (var_r30 < 0) {
|
||||
arg0->x = arg0->z = 0.0f;
|
||||
arg0->y = 1.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
*arg0 = lbl_1_bss_178.unk_6C4[lbl_1_bss_178.unk_6B4][var_r30];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -442,7 +442,8 @@ void fn_1_330(omObjData *object)
|
|||
if ((var_r26 & 16) && lbl_1_bss_48 == -1) {
|
||||
lbl_1_bss_48 = HuAudSeqPlay(70);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 0;
|
||||
}
|
||||
if (lbl_1_bss_50 == -1 || !var_r26) {
|
||||
|
|
@ -463,7 +464,8 @@ void fn_1_330(omObjData *object)
|
|||
MGSeqParamSet(lbl_1_bss_4C, 1, var_r25);
|
||||
if (lbl_1_bss_58 == 600) {
|
||||
lbl_1_bss_34 = 3.0f;
|
||||
} else if (lbl_1_bss_58 == 1200) {
|
||||
}
|
||||
else if (lbl_1_bss_58 == 1200) {
|
||||
lbl_1_bss_34 = 2.5f;
|
||||
}
|
||||
if (--lbl_1_bss_58 < -1 || lbl_1_bss_1C[0] <= 0 || lbl_1_bss_1C[1] <= 0) {
|
||||
|
|
@ -485,9 +487,11 @@ void fn_1_330(omObjData *object)
|
|||
if (fn_1_2EDC()) {
|
||||
if (lbl_1_bss_1C[0] == lbl_1_bss_1C[1]) {
|
||||
var_r28 = 2;
|
||||
} else if (lbl_1_bss_1C[0] > lbl_1_bss_1C[1]) {
|
||||
}
|
||||
else if (lbl_1_bss_1C[0] > lbl_1_bss_1C[1]) {
|
||||
var_r28 = 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r28 = 1;
|
||||
}
|
||||
if (var_r28 < 2) {
|
||||
|
|
@ -505,7 +509,8 @@ void fn_1_330(omObjData *object)
|
|||
}
|
||||
lbl_1_bss_50 = MGSeqCreate(5, 3, sp8[0], sp8[1], -1, -1);
|
||||
HuAudSStreamPlay(1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (var_r27 = 0; var_r27 < 2; var_r27++) {
|
||||
var_r30 = lbl_1_bss_8C[var_r27]->data;
|
||||
for (var_r31 = 0; var_r31 < 2; var_r31++) {
|
||||
|
|
@ -546,32 +551,32 @@ s32 lbl_1_data_10C = 66051;
|
|||
s32 lbl_1_data_110[16] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
|
||||
s32 lbl_1_data_150[8] = {
|
||||
6225920,
|
||||
1703936,
|
||||
7143424,
|
||||
9043968,
|
||||
1114112,
|
||||
8716288,
|
||||
8454144,
|
||||
851968,
|
||||
DATADIR_MARIOMOT,
|
||||
DATADIR_LUIGIMOT,
|
||||
DATADIR_PEACHMOT,
|
||||
DATADIR_YOSHIMOT,
|
||||
DATADIR_DONKEYMOT,
|
||||
DATADIR_WARIOMOT,
|
||||
DATADIR_WALUIGIMOT,
|
||||
DATADIR_DAISYMOT,
|
||||
};
|
||||
|
||||
UnkM426Struct13 lbl_1_data_170[12] = {
|
||||
{ 6225920, 0xFFFFFFFF },
|
||||
{ 6225922, 0xFFFFFFFF },
|
||||
{ 6225923, 0xFFFFFFFF },
|
||||
{ 6225925, 0xFFFFFFFF },
|
||||
{ 6225926, 0xFFFFFFFF },
|
||||
{ 6225940, 0xFFFFFFFF },
|
||||
{ 6225942, 0xFFFFFFFF },
|
||||
{ 6225945, 0xFFFFFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 2), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 3), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 5), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 6), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 20), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 22), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 25), DATA_NUM_LISTEND },
|
||||
{ 0, 0 },
|
||||
{ 0, 1 },
|
||||
{ 6225943, 0xFFFFFFFF },
|
||||
{ 6226034, 0xFFFFFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 23), DATA_NUM_LISTEND },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 114), DATA_NUM_LISTEND },
|
||||
};
|
||||
|
||||
s32 lbl_1_data_1D0[2] = { 3735584, 3735592 };
|
||||
s32 lbl_1_data_1D0[2] = { DATA_MAKE_NUM(DATADIR_M426, 32), DATA_MAKE_NUM(DATADIR_M426, 40) };
|
||||
|
||||
void fn_1_DB8(omObjData *arg0)
|
||||
{
|
||||
|
|
@ -620,7 +625,8 @@ void fn_1_EB8(void)
|
|||
}
|
||||
if (var_r30 != 2) {
|
||||
memcpy(&lbl_1_bss_18, &lbl_1_data_10C, 4);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
if (GWPlayerCfg[var_r31].group) {
|
||||
lbl_1_bss_18[var_r30] = var_r31;
|
||||
|
|
@ -721,14 +727,16 @@ void fn_1_125C(omObjData *object)
|
|||
var_r31->unk_40 = lbl_1_data_0[var_r27].x;
|
||||
if (var_r31->unk_40 < 0.0f) {
|
||||
var_r31->unk_44 = 90.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_44 = -90.0f;
|
||||
}
|
||||
var_r31->unk_48 = lbl_1_bss_8C[var_r31->unk_00];
|
||||
var_r28 = var_r31->unk_48->data;
|
||||
if (object != var_r28->unk_04[0]) {
|
||||
var_r31->unk_4C = var_r28->unk_04[0];
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_4C = var_r28->unk_04[1];
|
||||
}
|
||||
memset(&var_r31->unk_50, 0, 0x3C);
|
||||
|
|
@ -751,13 +759,15 @@ void fn_1_125C(omObjData *object)
|
|||
if (lbl_1_data_170[var_r29].unk_04 == -1) {
|
||||
if ((var_r29 == 11) && (var_r31->unk_0C == 4)) {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_0C, DATA_MAKE_NUM(DATADIR_MARIOMOT, 114));
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
object->motion[var_r29] = CharModelMotionCreate(var_r31->unk_0C, lbl_1_data_170[var_r29].unk_00);
|
||||
}
|
||||
if (var_r29 == 5) {
|
||||
CharModelVoiceEnableSet(var_r31->unk_0C, object->motion[var_r29], 0);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
object->motion[var_r29] = Hu3DJointMotion(
|
||||
object->model[0], HuDataSelHeapReadNum(var_r31->unk_0C + lbl_1_data_1D0[lbl_1_data_170[var_r29].unk_04], 268435456, HEAP_DATA));
|
||||
}
|
||||
|
|
@ -817,7 +827,8 @@ void fn_1_16F8(omObjData *object)
|
|||
sp20 = sp1C = 0.0f;
|
||||
sp10 = var_r21 = 0;
|
||||
fn_1_2F5C(object, &sp20, &sp1C, &sp10);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp20 = HuPadStkX[var_r31->unk_10];
|
||||
sp1C = HuPadStkY[var_r31->unk_10];
|
||||
var_r21 = HuPadBtn[var_r31->unk_10];
|
||||
|
|
@ -833,10 +844,11 @@ void fn_1_16F8(omObjData *object)
|
|||
case 1:
|
||||
if (var_r31->unk_90 == -1) {
|
||||
var_r31->unk_90 = fn_1_48F0(object->trans.z);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (!lbl_1_bss_40) {
|
||||
sp20 = sp1C = 0.0f;
|
||||
|
||||
|
||||
sp10 = var_r21 = 0;
|
||||
}
|
||||
if (fabs(sp20) > 8.0) {
|
||||
|
|
@ -850,7 +862,8 @@ void fn_1_16F8(omObjData *object)
|
|||
}
|
||||
if (var_r31->unk_94 != -1) {
|
||||
var_f27 = 16.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f27 = 0.0f;
|
||||
}
|
||||
var_r31->unk_50[var_r31->unk_8C] = var_f27;
|
||||
|
|
@ -863,22 +876,27 @@ void fn_1_16F8(omObjData *object)
|
|||
var_f28 *= 0.06666667f;
|
||||
if (var_r31->unk_98 != 0.0f) {
|
||||
var_r26 = 3;
|
||||
} else if (var_f28 <= 0.0f) {
|
||||
}
|
||||
else if (var_f28 <= 0.0f) {
|
||||
if (lbl_1_bss_54 == 5) {
|
||||
var_r26 = 8;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 0;
|
||||
}
|
||||
} else if (var_f28 < 10.0f) {
|
||||
}
|
||||
else if (var_f28 < 10.0f) {
|
||||
var_r26 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 2;
|
||||
}
|
||||
if (var_r26 != var_r31->unk_28) {
|
||||
var_r31->unk_28 = var_r26;
|
||||
if (var_r26 == 3) {
|
||||
CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, 0);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, 0x40000001);
|
||||
}
|
||||
}
|
||||
|
|
@ -887,7 +905,8 @@ void fn_1_16F8(omObjData *object)
|
|||
if (var_f31 < 0.0f) {
|
||||
var_r27 = var_r31->unk_90 - 1;
|
||||
var_r25 = var_r31->unk_90 - 2;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r27 = var_r31->unk_90 + 1;
|
||||
var_r25 = var_r31->unk_90 + 2;
|
||||
}
|
||||
|
|
@ -924,7 +943,8 @@ void fn_1_16F8(omObjData *object)
|
|||
var_r31->unk_3C = 0;
|
||||
object->trans.x = var_f25;
|
||||
object->trans.z = var_f24;
|
||||
} else if (var_f27 != 0.0f) {
|
||||
}
|
||||
else if (var_f27 != 0.0f) {
|
||||
var_f27 = 1.0f / var_f27;
|
||||
object->trans.x += var_f28 * (var_f30 * var_f27);
|
||||
object->trans.z += var_f28 * (var_f31 * var_f27);
|
||||
|
|
@ -934,11 +954,13 @@ void fn_1_16F8(omObjData *object)
|
|||
var_f31 = object->trans.z - var_f21;
|
||||
if (fabs(var_f30) > 8.0 || fabs(var_f31) > 8.0) {
|
||||
var_f26 = atan2d(var_f30, var_f31);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (fabs(sp20) > 8.0 || fabs(sp1C) > 8.0) {
|
||||
var_f26 = atan2d(sp20, -sp1C);
|
||||
var_f26 = var_f26;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f26 = object->rot.y;
|
||||
}
|
||||
}
|
||||
|
|
@ -950,7 +972,8 @@ void fn_1_16F8(omObjData *object)
|
|||
var_r31->unk_28 = 9;
|
||||
CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 8.0f, 8.0f, 0);
|
||||
}
|
||||
} else if (sp10 & 256) {
|
||||
}
|
||||
else if (sp10 & 256) {
|
||||
var_r31->unk_3C = 20;
|
||||
}
|
||||
}
|
||||
|
|
@ -965,11 +988,13 @@ void fn_1_16F8(omObjData *object)
|
|||
if (fn_1_4AF4(&lbl_1_bss_C, object->rot.y, 1)) {
|
||||
if (!var_r31->unk_00) {
|
||||
HuAudFXPlay(1601);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuAudFXPlay(1602);
|
||||
}
|
||||
}
|
||||
} else if (var_r31->unk_2C >= 20) {
|
||||
}
|
||||
else if (var_r31->unk_2C >= 20) {
|
||||
var_r31->unk_24 = 0;
|
||||
var_r31->unk_2C = 0;
|
||||
var_r31->unk_28 = 8;
|
||||
|
|
@ -988,7 +1013,8 @@ void fn_1_16F8(omObjData *object)
|
|||
if (fabs(object->trans.x) > 750.0) {
|
||||
if (object->trans.x > 0.0f) {
|
||||
object->trans.x = 750.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
object->trans.x = -750.0f;
|
||||
}
|
||||
}
|
||||
|
|
@ -1020,10 +1046,12 @@ void fn_1_16F8(omObjData *object)
|
|||
if (lbl_1_bss_40 == 0) {
|
||||
var_r31->unk_2C = 59;
|
||||
}
|
||||
} else if (var_r31->unk_2C == 60.0f) {
|
||||
}
|
||||
else if (var_r31->unk_2C == 60.0f) {
|
||||
var_r31->unk_28 = 7;
|
||||
CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, 0);
|
||||
} else if (var_r31->unk_2C >= 90.0f) {
|
||||
}
|
||||
else if (var_r31->unk_2C >= 90.0f) {
|
||||
var_r31->unk_24 = 7;
|
||||
var_r31->unk_28 = 8;
|
||||
CharModelMotionShiftSet(var_r31->unk_0C, object->motion[var_r31->unk_28], 0.0f, 8.0f, 0x40000001);
|
||||
|
|
@ -1056,7 +1084,8 @@ void fn_1_16F8(omObjData *object)
|
|||
object->rot.y = fn_1_770C(0.0f, object->rot.y, 10.0f);
|
||||
if (var_r31->unk_24 == 8) {
|
||||
var_r26 = 10;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 11;
|
||||
}
|
||||
if (var_r26 != var_r31->unk_28) {
|
||||
|
|
@ -1207,7 +1236,8 @@ void fn_1_2B74(Vec *arg0)
|
|||
|
||||
if (arg0->x < 0.0f) {
|
||||
var_r26 = 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 1;
|
||||
}
|
||||
if (lbl_1_bss_8C[var_r26]) {
|
||||
|
|
@ -1226,21 +1256,26 @@ void fn_1_2B74(Vec *arg0)
|
|||
var_r31->unk_90 = var_r31->unk_94 = -1;
|
||||
if (!var_r29->unk_00) {
|
||||
var_r31->unk_9C.x = -1.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_9C.x = 1.0f;
|
||||
}
|
||||
if (fabs(var_r31->unk_4C->trans.z - var_r30->trans.z) < 100.0) {
|
||||
var_r31->unk_90 = fn_1_48F0(var_r30->trans.z);
|
||||
if (var_r31->unk_90 == 5) {
|
||||
var_r31->unk_9C.z = -1.0f;
|
||||
} else if (!var_r31->unk_90) {
|
||||
}
|
||||
else if (!var_r31->unk_90) {
|
||||
var_r31->unk_9C.z = 1.0f;
|
||||
} else if ((var_r31->unk_4C->trans.z - var_r30->trans.z) < 0.0f) {
|
||||
}
|
||||
else if ((var_r31->unk_4C->trans.z - var_r30->trans.z) < 0.0f) {
|
||||
var_r31->unk_9C.z = 1.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_9C.z = -1.0f;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_9C.z = 0.0f;
|
||||
}
|
||||
var_r31->unk_9C.y = 45.5f;
|
||||
|
|
@ -1396,12 +1431,14 @@ void fn_1_2F5C(omObjData *object, float *arg1, float *arg2, s32 *arg3)
|
|||
for (var_r30 = 0; var_r30 < 6; var_r27++, var_r30++) {
|
||||
sp14[var_r27] = var_r30;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (var_r31->unk_90 < var_r29) {
|
||||
for (var_r30 = 0; var_r30 < 3; var_r27++, var_r30++) {
|
||||
sp14[var_r27] = var_r30;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (var_r30 = 3; var_r30 < 6; var_r27++, var_r30++) {
|
||||
sp14[var_r27] = var_r30;
|
||||
}
|
||||
|
|
@ -1437,16 +1474,20 @@ void fn_1_2F5C(omObjData *object, float *arg1, float *arg2, s32 *arg3)
|
|||
if (var_r29 == -1) {
|
||||
if (var_r31->unk_90 < 3) {
|
||||
var_r31->unk_B0 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_B0 = 4;
|
||||
}
|
||||
} else if (var_r29 > var_r31->unk_90) {
|
||||
}
|
||||
else if (var_r29 > var_r31->unk_90) {
|
||||
var_r31->unk_B0 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_B0 = 4;
|
||||
}
|
||||
var_r31->unk_BC = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_BC = 2;
|
||||
}
|
||||
var_r31->unk_B8 = 0;
|
||||
|
|
@ -1525,7 +1566,8 @@ void fn_1_3714(omObjData *object)
|
|||
var_r31->unk_20 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M426, 6));
|
||||
var_r31->unk_24 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M426, 8));
|
||||
var_r31->unk_28 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M426, 9));
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_10 = Hu3DModelLink(var_r28->unk_10);
|
||||
Hu3DModelShadowMapSet(var_r31->unk_10);
|
||||
var_r31->unk_14 = Hu3DModelLink(var_r28->unk_14);
|
||||
|
|
@ -1594,7 +1636,8 @@ void fn_1_3EFC(omObjData *object)
|
|||
var_f30 = 50.0f + (-19.999998f * var_f31);
|
||||
Hu3DModelPosSet(var_r30->unk_20, -500.0f, var_f30, var_r30->unk_38);
|
||||
Hu3DModelPosSet(var_r30->unk_28, 500.0f, var_f29, var_r30->unk_38);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f29 = 50.0f + (-19.999998f * var_f31);
|
||||
var_f30 = 30.000002f + (19.999998f * var_f31);
|
||||
Hu3DModelPosSet(var_r30->unk_1C, -500.0f, var_f30, var_r30->unk_38);
|
||||
|
|
@ -1603,7 +1646,8 @@ void fn_1_3EFC(omObjData *object)
|
|||
if (var_r30->unk_0C >= 2) {
|
||||
if (var_r30->unk_04 == 0) {
|
||||
HuAudFXPlay(1600);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuAudFXPlay(1599);
|
||||
}
|
||||
fn_1_4738(var_r28, var_r30->unk_04);
|
||||
|
|
@ -1639,7 +1683,8 @@ void fn_1_3EFC(omObjData *object)
|
|||
object->work[2] = 0;
|
||||
}
|
||||
lbl_1_bss_30--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (object->work[0]) {
|
||||
if (++object->work[0] >= 20) {
|
||||
object->work[0] = 0;
|
||||
|
|
@ -1835,7 +1880,8 @@ s32 fn_1_4AF4(Vec *arg0, float arg8, s32 arg1)
|
|||
var_r30 = lbl_1_bss_78->data;
|
||||
if (arg0->x < 0.0f) {
|
||||
var_f28 = -500.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f28 = 500.0f;
|
||||
}
|
||||
for (var_r29 = 0; var_r29 < 6; var_r29++, var_r30++) {
|
||||
|
|
@ -1856,7 +1902,8 @@ s32 fn_1_4AF4(Vec *arg0, float arg8, s32 arg1)
|
|||
if (!var_r30->unk_08) {
|
||||
return 0;
|
||||
}
|
||||
} else if (var_r30->unk_08 == 1) {
|
||||
}
|
||||
else if (var_r30->unk_08 == 1) {
|
||||
return 0;
|
||||
}
|
||||
if (arg1) {
|
||||
|
|
@ -1881,15 +1928,17 @@ void fn_1_4F14(omObjData *object)
|
|||
for (var_r29 = 0; var_r29 < 6; var_r29++, var_r31++) {
|
||||
if (var_r29 == 0) {
|
||||
var_r31->unk_00 = Hu3DModelCreateFile(3735579);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_00 = Hu3DModelLink(var_r30->unk_00);
|
||||
}
|
||||
Hu3DModelShadowSet(var_r31->unk_00);
|
||||
Hu3DModelLayerSet(var_r31->unk_00, 2);
|
||||
if (var_r29 == 0) {
|
||||
var_r31->unk_08 = Hu3DJointMotion(var_r31->unk_00, HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M426, 28), MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
var_r31->unk_0C = Hu3DJointMotion(var_r31->unk_00, HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M426, 29), MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
} else {
|
||||
var_r31->unk_08 = Hu3DJointMotionFile(var_r31->unk_00, DATA_MAKE_NUM(DATADIR_M426, 28));
|
||||
var_r31->unk_0C = Hu3DJointMotionFile(var_r31->unk_00, DATA_MAKE_NUM(DATADIR_M426, 29));
|
||||
}
|
||||
else {
|
||||
var_r31->unk_08 = var_r30->unk_08;
|
||||
var_r31->unk_0C = var_r30->unk_0C;
|
||||
}
|
||||
|
|
@ -1955,14 +2004,16 @@ void fn_1_5134(omObjData *object)
|
|||
var_r31->unk_30 = 0;
|
||||
var_r31->unk_28 = 3;
|
||||
Hu3DMotionShiftSet(var_r31->unk_00, var_r31->unk_0C, 0.0f, 8.0f, 0x40000001);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_48 = fn_1_770C(0.0f, var_r31->unk_48, 10.0f);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (!var_r26) {
|
||||
var_f31 = 90.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 270.0f;
|
||||
}
|
||||
if (fabs(fn_1_75F4(var_f31, var_r31->unk_48)) < 5.0) {
|
||||
|
|
@ -1970,7 +2021,8 @@ void fn_1_5134(omObjData *object)
|
|||
if ((var_r31->unk_34 += 0.1f) > lbl_1_bss_34) {
|
||||
var_r31->unk_34 = lbl_1_bss_34;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_48 = fn_1_770C(var_f31, var_r31->unk_48, 10.0f);
|
||||
if ((var_r31->unk_34 -= 0.1f) < 0.0f) {
|
||||
var_r31->unk_34 = 0.0f;
|
||||
|
|
@ -1990,7 +2042,8 @@ void fn_1_5134(omObjData *object)
|
|||
var_r31->unk_34 = 0.0f;
|
||||
if (var_r31->unk_3C > 0.0f) {
|
||||
var_r31->unk_3C = 399.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_3C = -399.0f;
|
||||
}
|
||||
var_r31->unk_18 = 0;
|
||||
|
|
@ -2002,7 +2055,8 @@ void fn_1_5134(omObjData *object)
|
|||
lbl_1_bss_1C[0]--;
|
||||
fn_1_3654(0);
|
||||
HuAudFXPlay(1603);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_1C[1]--;
|
||||
fn_1_3654(1);
|
||||
HuAudFXPlay(1604);
|
||||
|
|
@ -2028,20 +2082,23 @@ void fn_1_5134(omObjData *object)
|
|||
fn_1_2B74(&sp8);
|
||||
if (var_r31->unk_3C < 0.0f) {
|
||||
fn_1_46A4(var_r31->unk_24, 0);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_46A4(var_r31->unk_24, 1);
|
||||
}
|
||||
var_r31->unk_28 = 5;
|
||||
|
||||
if (var_r26 == 0) {
|
||||
var_r31->unk_4C += 30.000002f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_4C -= 30.000002f;
|
||||
}
|
||||
if (fabs(var_r31->unk_4C) > 150.0) {
|
||||
if (!var_r26) {
|
||||
var_r31->unk_4C = 150.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_4C = -150.0f;
|
||||
}
|
||||
}
|
||||
|
|
@ -2067,7 +2124,8 @@ void fn_1_5134(omObjData *object)
|
|||
if (!var_r31->unk_38) {
|
||||
Hu3DModelPosSet(var_r31->unk_00, var_r31->unk_3C, var_r31->unk_40, var_r31->unk_44);
|
||||
Hu3DModelRotSet(var_r31->unk_00, 0.0f, var_r31->unk_48, 0.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelAttrSet(var_r31->unk_00, 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -2155,11 +2213,14 @@ s32 fn_1_5D3C(void)
|
|||
}
|
||||
if (var_r31->unk_3C < 0.0f) {
|
||||
var_r30++;
|
||||
} else if (var_r31->unk_3C > 0.0f) {
|
||||
}
|
||||
else if (var_r31->unk_3C > 0.0f) {
|
||||
var_r29++;
|
||||
} else if (frand() & 1) {
|
||||
}
|
||||
else if (frand() & 1) {
|
||||
var_r30++;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29++;
|
||||
}
|
||||
}
|
||||
|
|
@ -2194,7 +2255,8 @@ void fn_1_5EBC(omObjData *object)
|
|||
if (var_r30 == 0) {
|
||||
var_r31->unk_08 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M426, 0), MEMORY_DEFAULT_NUM));
|
||||
var_r31->unk_04 = fn_1_795C(var_r31->unk_08, 512);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_08 = var_r29->unk_08;
|
||||
var_r31->unk_04 = fn_1_7DC8(var_r29->unk_04);
|
||||
}
|
||||
|
|
@ -2230,7 +2292,8 @@ void fn_1_6008(omObjData *object)
|
|||
}
|
||||
if (var_r30->unk_10 <= 0) {
|
||||
Hu3DModelAttrSet(var_r30->unk_04, 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelAttrReset(var_r30->unk_04, 1);
|
||||
var_r26 = &Hu3DData[var_r30->unk_04];
|
||||
var_r29 = var_r26->unk_120;
|
||||
|
|
@ -2358,7 +2421,8 @@ s32 fn_1_63B8(s32 arg0, Vec *arg1, Vec *arg2, float arg8, GXColor arg3)
|
|||
var_r31->unk_30.x = arg1->x - var_r30->unk_14.x;
|
||||
var_r31->unk_30.y = arg1->y - var_r30->unk_14.y;
|
||||
var_r31->unk_30.z = arg1->z - var_r30->unk_14.z;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_30.x = var_r30->unk_14.x;
|
||||
var_r31->unk_30.y = var_r30->unk_14.y;
|
||||
var_r31->unk_30.z = var_r30->unk_14.z;
|
||||
|
|
@ -2368,7 +2432,8 @@ s32 fn_1_63B8(s32 arg0, Vec *arg1, Vec *arg2, float arg8, GXColor arg3)
|
|||
var_r31->unk_04.x = arg2->x;
|
||||
var_r31->unk_04.y = arg2->y;
|
||||
var_r31->unk_04.z = arg2->z;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_04.x = var_r31->unk_04.y = var_r31->unk_04.z = 0.0f;
|
||||
}
|
||||
|
||||
|
|
@ -2498,7 +2563,8 @@ void fn_1_6A34(omObjData *object)
|
|||
for (var_r29 = 0; var_r29 < 2; var_r29++, var_r31++) {
|
||||
if (var_r29 == 0) {
|
||||
var_r31->unk_00 = 100;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk_00 = 490;
|
||||
}
|
||||
var_r31->unk_04 = 65;
|
||||
|
|
@ -2570,10 +2636,11 @@ void fn_1_6DC0(omObjData *object)
|
|||
if (var_r31->unk_0C) {
|
||||
var_f31 = 1.0 + (0.8f * sind((180.0f * (var_r31->unk_0C / 20.0f))));
|
||||
var_r31->unk_0C--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 1.0f;
|
||||
}
|
||||
var_r28 = lbl_1_bss_1C[var_r29];
|
||||
var_r28 = lbl_1_bss_1C[var_r29];
|
||||
if ((sp8[0] = var_r28 / 10) > 9) {
|
||||
sp8[0] = 9;
|
||||
}
|
||||
|
|
@ -2635,7 +2702,8 @@ void fn_1_7328(s32 arg0)
|
|||
for (var_r30 = 0; var_r30 < 6; var_r30++) {
|
||||
if (arg0) {
|
||||
espDispOn(var_r31->unk_14[var_r30]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
espDispOff(var_r31->unk_14[var_r30]);
|
||||
}
|
||||
}
|
||||
|
|
@ -2686,18 +2754,21 @@ float fn_1_75F4(float arg8, float arg9)
|
|||
|
||||
if (arg8 >= 360.0f) {
|
||||
arg8 -= 360.0f;
|
||||
} else if (arg8 < 0.0f) {
|
||||
}
|
||||
else if (arg8 < 0.0f) {
|
||||
arg8 += 360.0f;
|
||||
}
|
||||
if (arg9 >= 360.0f) {
|
||||
arg9 -= 360.0f;
|
||||
} else if (arg9 < 0.0f) {
|
||||
}
|
||||
else if (arg9 < 0.0f) {
|
||||
arg9 += 360.0f;
|
||||
}
|
||||
var_f31 = arg8 - arg9;
|
||||
if (var_f31 <= -180.0f) {
|
||||
var_f31 += 360.0f;
|
||||
} else if (var_f31 >= 180.0f) {
|
||||
}
|
||||
else if (var_f31 >= 180.0f) {
|
||||
var_f31 -= 360.0f;
|
||||
}
|
||||
return var_f31;
|
||||
|
|
@ -2710,12 +2781,14 @@ float fn_1_770C(float arg8, float arg9, float argA)
|
|||
|
||||
if (arg8 >= 360.0) {
|
||||
arg8 -= 360.0;
|
||||
} else if (arg8 < 0.0) {
|
||||
}
|
||||
else if (arg8 < 0.0) {
|
||||
arg8 += 360.0;
|
||||
}
|
||||
if (arg9 >= 360.0) {
|
||||
arg9 -= 360.0;
|
||||
} else if (arg9 < 0.0) {
|
||||
}
|
||||
else if (arg9 < 0.0) {
|
||||
arg9 += 360.0;
|
||||
}
|
||||
var_f30 = 360.0 + (arg8 - arg9);
|
||||
|
|
@ -2725,19 +2798,23 @@ float fn_1_770C(float arg8, float arg9, float argA)
|
|||
if (var_f30 < 180.0) {
|
||||
if (var_f30 <= argA) {
|
||||
var_f31 = var_f30;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = argA;
|
||||
}
|
||||
} else if ((360.0 - var_f30) <= argA) {
|
||||
}
|
||||
else if ((360.0 - var_f30) <= argA) {
|
||||
var_f31 = -(360.0 - var_f30);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = -argA;
|
||||
}
|
||||
var_f31 += arg9;
|
||||
if (var_f31 >= 360.0) {
|
||||
var_f31 -= 360.0;
|
||||
var_f31 = var_f31;
|
||||
} else if (var_f31 < 0.0) {
|
||||
}
|
||||
else if (var_f31 < 0.0) {
|
||||
var_f31 += 360.0;
|
||||
var_f31 = var_f31;
|
||||
}
|
||||
|
|
@ -2936,16 +3013,19 @@ void fn_1_80DC(ModelData *arg0, Mtx arg1)
|
|||
if (shadowModelDrawF != 0) {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO);
|
||||
GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r21 = var_r31->unk_38->bmp->dataFmt & 15;
|
||||
if (var_r21 == 7 || var_r21 == 8) {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO);
|
||||
}
|
||||
if (arg0->attr & 2) {
|
||||
GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
GXSetZMode(GX_TRUE, GX_LEQUAL, GX_FALSE);
|
||||
}
|
||||
}
|
||||
|
|
@ -3000,7 +3080,8 @@ void fn_1_80DC(ModelData *arg0, Mtx arg1)
|
|||
var_r30++;
|
||||
var_r30->x = var_r30->y = var_r30->z = 0.0f;
|
||||
var_r30++;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (!var_r29->unk_2C) {
|
||||
var_r28 = sp98;
|
||||
var_r27 = sp38;
|
||||
|
|
@ -3012,7 +3093,8 @@ void fn_1_80DC(ModelData *arg0, Mtx arg1)
|
|||
PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++);
|
||||
PSVECScale(var_r27++, var_r28, var_r29->unk_28);
|
||||
PSVECAdd(var_r28++, &var_r29->unk_30, var_r30++);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECScale(&lbl_1_data_22C[0], &sp98[0], var_r29->unk_28);
|
||||
PSVECScale(&lbl_1_data_22C[1], &sp98[1], var_r29->unk_28);
|
||||
PSVECScale(&lbl_1_data_22C[2], &sp98[2], var_r29->unk_28);
|
||||
|
|
@ -3080,11 +3162,13 @@ void fn_1_88B4(ModelData *arg0, Mtx arg1)
|
|||
if (shadowModelDrawF) {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ONE, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO);
|
||||
GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r28 = var_r29->bmp->dataFmt & 15;
|
||||
if (var_r28 == 7 || var_r28 == 8) {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ONE, GX_CC_RASC, GX_CC_ZERO);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_RASC, GX_CC_ZERO);
|
||||
}
|
||||
GXSetZMode(GX_FALSE, GX_LEQUAL, GX_FALSE);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -39,14 +39,14 @@ float lbl_1_data_1D4[8] = {
|
|||
};
|
||||
|
||||
u32 lbl_1_data_1F4[8] = {
|
||||
0x5F0000,
|
||||
0x5F0002,
|
||||
0x5F0003,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03),
|
||||
-1,
|
||||
0x5F0048,
|
||||
0x5F0049,
|
||||
0x5F0017,
|
||||
0x5F0072
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x49),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x72)
|
||||
};
|
||||
|
||||
char *lbl_1_data_230[8] = {
|
||||
|
|
@ -621,7 +621,7 @@ void fn_1_9440(omObjData *object)
|
|||
if(lbl_1_data_1F4[temp_r28] != -1) {
|
||||
object->motion[temp_r28] = CharModelMotionCreate(temp_r31->unk8, lbl_1_data_1F4[temp_r28]);
|
||||
} else {
|
||||
object->motion[temp_r28] = Hu3DJointMotionFile(object->model[0], 0x3E0021+temp_r31->unk8);
|
||||
object->motion[temp_r28] = Hu3DJointMotionFile(object->model[0], DATA_MAKE_NUM(DATADIR_M431, 0x21)+temp_r31->unk8);
|
||||
}
|
||||
if(temp_r28 == 4 || temp_r28 == 5) {
|
||||
CharModelVoiceEnableSet(temp_r31->unk8, object->motion[temp_r28], 0);
|
||||
|
|
|
|||
|
|
@ -1,23 +1,22 @@
|
|||
#include "game/object.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/object.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/wipe.h"
|
||||
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "REL/m434Dll.h"
|
||||
#include "math.h"
|
||||
#include "ext_math.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "math.h"
|
||||
|
||||
#include "rel_sqrt_consts.h"
|
||||
|
||||
|
||||
typedef struct camera_view {
|
||||
float zoom;
|
||||
Vec pos;
|
||||
Vec rot;
|
||||
float zoom;
|
||||
Vec pos;
|
||||
Vec rot;
|
||||
} CameraView;
|
||||
|
||||
Vec lbl_1_data_0 = { -700, 2500, -700 };
|
||||
|
|
@ -28,7 +27,6 @@ Vec lbl_1_data_28 = { -700, 2500, 700 };
|
|||
Vec lbl_1_data_34 = { 0, 1, 0 };
|
||||
Vec lbl_1_data_40 = { 0, 0, 0 };
|
||||
|
||||
|
||||
omObjData *lbl_1_bss_3D4;
|
||||
omObjData *lbl_1_bss_3D0;
|
||||
omObjData *lbl_1_bss_3CC;
|
||||
|
|
@ -61,58 +59,58 @@ void fn_1_16B4(void);
|
|||
|
||||
void ObjectSetup(void)
|
||||
{
|
||||
s32 i;
|
||||
Process *objman;
|
||||
OSReport("******* M434ObjectSetup *********\n");
|
||||
objman = omInitObjMan(50, 8192);
|
||||
omGameSysInit(objman);
|
||||
CZoom = 2097.6f;
|
||||
Center.x = 0;
|
||||
Center.y = 172;
|
||||
Center.z = 361;
|
||||
CRot.x = -32;
|
||||
CRot.y = 0;
|
||||
CRot.z = 0;
|
||||
for(i=0; i<4; i++) {
|
||||
CZoomM[i] = CZoom;
|
||||
CenterM[i] = Center;
|
||||
CRotM[i] = CRot;
|
||||
}
|
||||
fn_1_16B4();
|
||||
Hu3DCameraCreate(15);
|
||||
Hu3DCameraPerspectiveSet(2, 30, 20, 25000, 1.2f);
|
||||
Hu3DCameraViewportSet(2, 0, 0, 320, 240, 0, 1);
|
||||
Hu3DCameraPerspectiveSet(13, 30, 20, 25000, 1.2f);
|
||||
Hu3DCameraViewportSet(13, 0, 0, 640, 480, 0, 1);
|
||||
lbl_1_bss_3CC = omAddObjEx(objman, 32730, 0, 0, -1, omOutViewMulti);
|
||||
lbl_1_bss_3CC->work[0] = 4;
|
||||
HuAudSndGrpSet(59);
|
||||
lbl_1_data_C.x = -lbl_1_data_0.x;
|
||||
lbl_1_data_C.y = -lbl_1_data_0.y;
|
||||
lbl_1_data_C.z = -lbl_1_data_0.z;
|
||||
VECNormalize(&lbl_1_data_C, &lbl_1_data_C);
|
||||
lbl_1_bss_3B0 = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24);
|
||||
Hu3DGLightInfinitytSet(lbl_1_bss_3B0);
|
||||
Hu3DGLightStaticSet(lbl_1_bss_3B0, 1);
|
||||
for(i=0; i<4; i++) {
|
||||
lbl_1_bss_3A0[i] = GWPlayerCfg[i].group;
|
||||
}
|
||||
lbl_1_bss_3D4 = omAddObjEx(objman, 0, 0, 0, -1, fn_1_4FC);
|
||||
lbl_1_bss_3D0 = omAddObjEx(objman, 0, 1, 0, -1, fn_1_CC8);
|
||||
fn_1_1DB0(objman);
|
||||
fn_1_4854(objman);
|
||||
fn_1_6860(objman);
|
||||
fn_1_1104(objman);
|
||||
s32 i;
|
||||
Process *objman;
|
||||
OSReport("******* M434ObjectSetup *********\n");
|
||||
objman = omInitObjMan(50, 8192);
|
||||
omGameSysInit(objman);
|
||||
CZoom = 2097.6f;
|
||||
Center.x = 0;
|
||||
Center.y = 172;
|
||||
Center.z = 361;
|
||||
CRot.x = -32;
|
||||
CRot.y = 0;
|
||||
CRot.z = 0;
|
||||
for (i = 0; i < 4; i++) {
|
||||
CZoomM[i] = CZoom;
|
||||
CenterM[i] = Center;
|
||||
CRotM[i] = CRot;
|
||||
}
|
||||
fn_1_16B4();
|
||||
Hu3DCameraCreate(15);
|
||||
Hu3DCameraPerspectiveSet(2, 30, 20, 25000, 1.2f);
|
||||
Hu3DCameraViewportSet(2, 0, 0, 320, 240, 0, 1);
|
||||
Hu3DCameraPerspectiveSet(13, 30, 20, 25000, 1.2f);
|
||||
Hu3DCameraViewportSet(13, 0, 0, 640, 480, 0, 1);
|
||||
lbl_1_bss_3CC = omAddObjEx(objman, 32730, 0, 0, -1, omOutViewMulti);
|
||||
lbl_1_bss_3CC->work[0] = 4;
|
||||
HuAudSndGrpSet(59);
|
||||
lbl_1_data_C.x = -lbl_1_data_0.x;
|
||||
lbl_1_data_C.y = -lbl_1_data_0.y;
|
||||
lbl_1_data_C.z = -lbl_1_data_0.z;
|
||||
VECNormalize(&lbl_1_data_C, &lbl_1_data_C);
|
||||
lbl_1_bss_3B0 = Hu3DGLightCreateV(&lbl_1_data_0, &lbl_1_data_C, &lbl_1_data_24);
|
||||
Hu3DGLightInfinitytSet(lbl_1_bss_3B0);
|
||||
Hu3DGLightStaticSet(lbl_1_bss_3B0, 1);
|
||||
for (i = 0; i < 4; i++) {
|
||||
lbl_1_bss_3A0[i] = GWPlayerCfg[i].group;
|
||||
}
|
||||
lbl_1_bss_3D4 = omAddObjEx(objman, 0, 0, 0, -1, fn_1_4FC);
|
||||
lbl_1_bss_3D0 = omAddObjEx(objman, 0, 1, 0, -1, fn_1_CC8);
|
||||
fn_1_1DB0(objman);
|
||||
fn_1_4854(objman);
|
||||
fn_1_6860(objman);
|
||||
fn_1_1104(objman);
|
||||
}
|
||||
|
||||
void fn_1_558(omObjData *object);
|
||||
|
||||
void fn_1_4FC(omObjData *object)
|
||||
{
|
||||
fn_1_1D64(0);
|
||||
lbl_1_bss_3AA = 0;
|
||||
lbl_1_bss_3A8 = 0;
|
||||
object->func = fn_1_558;
|
||||
fn_1_1D64(0);
|
||||
lbl_1_bss_3AA = 0;
|
||||
lbl_1_bss_3A8 = 0;
|
||||
object->func = fn_1_558;
|
||||
}
|
||||
|
||||
s32 lbl_1_data_70 = -1;
|
||||
|
|
@ -122,138 +120,138 @@ void fn_1_1638(s32 arg0);
|
|||
|
||||
void fn_1_558(omObjData *object)
|
||||
{
|
||||
s32 temp_r31;
|
||||
s32 temp_r29;
|
||||
s32 sp10[2][4];
|
||||
s32 sp8[2];
|
||||
|
||||
switch(fn_1_1D54()) {
|
||||
case 0:
|
||||
lbl_1_bss_3C2 = 60;
|
||||
lbl_1_bss_3C0 = 60;
|
||||
fn_1_1D64(1);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
|
||||
HuAudFXPlay(1736);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if(fn_1_10F4() == 2) {
|
||||
if(lbl_1_bss_10[1] != 0) {
|
||||
if(--lbl_1_bss_10[1] == 0) {
|
||||
lbl_1_bss_3BC = MGSeqStartCreate();
|
||||
HuAudStreamPlay("sound/mu_047a.adp", 1);
|
||||
}
|
||||
} else {
|
||||
if(MGSeqStatGet(lbl_1_bss_3BC) == 0) {
|
||||
fn_1_1D64(2);
|
||||
HuAudFXPlay(1738);
|
||||
lbl_1_bss_3B8 = MGSeqTimerCreate(60);
|
||||
fn_1_1638(1);
|
||||
}
|
||||
if(lbl_1_data_70 < 0 && (MGSeqStatGet(lbl_1_bss_3BC) & 0x10)) {
|
||||
lbl_1_data_70 = HuAudSeqPlay(67);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if(--lbl_1_bss_3C0 == 0) {
|
||||
lbl_1_bss_3C2--;
|
||||
MGSeqParamSet(lbl_1_bss_3B8, 1, lbl_1_bss_3C2);
|
||||
lbl_1_bss_3C0 = 60;
|
||||
}
|
||||
if(!lbl_1_bss_3C2 || lbl_1_bss_3A8 == 1) {
|
||||
fn_1_1D64(3);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
lbl_1_bss_3BC = MGSeqFinishCreate();
|
||||
HuAudStreamFadeOut(30);
|
||||
HuAudSeqFadeOut(lbl_1_data_70, 100);
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if(lbl_1_bss_3B8 >= 0) {
|
||||
MGSeqParamSet(lbl_1_bss_3B8, 2, -1);
|
||||
lbl_1_bss_3B8 = -1;
|
||||
}
|
||||
if(MGSeqStatGet(lbl_1_bss_3BC) == 0) {
|
||||
fn_1_1D64(4);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
}
|
||||
break;
|
||||
|
||||
case 4:
|
||||
if(--lbl_1_bss_10[1] == 0) {
|
||||
sp8[0] = sp8[1] = 0;
|
||||
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||
temp_r29 = fn_1_1D74(temp_r31);
|
||||
sp10[temp_r29][sp8[temp_r29]++] = temp_r31;
|
||||
}
|
||||
lbl_1_bss_3AA = fn_1_1CB8();
|
||||
switch(lbl_1_bss_3AA) {
|
||||
case -1:
|
||||
lbl_1_bss_3AC[0] = GWPlayerCfg[sp10[0][0]].character;
|
||||
lbl_1_bss_3AC[1] = GWPlayerCfg[sp10[0][1]].character;
|
||||
MGSeqWinCreate(lbl_1_bss_3AC[0], lbl_1_bss_3AC[1], -1, -1);
|
||||
GWPlayerCoinWinSet(sp10[0][0], 10);
|
||||
GWPlayerCoinWinSet(sp10[0][1], 10);
|
||||
HuAudSStreamPlay(1);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
MGSeqDrawCreate();
|
||||
HuAudSStreamPlay(4);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
lbl_1_bss_3AC[0] = GWPlayerCfg[sp10[1][0]].character;
|
||||
lbl_1_bss_3AC[1] = GWPlayerCfg[sp10[1][1]].character;
|
||||
MGSeqWinCreate(lbl_1_bss_3AC[0], lbl_1_bss_3AC[1], -1, -1);
|
||||
GWPlayerCoinWinSet(sp10[1][0], 10);
|
||||
GWPlayerCoinWinSet(sp10[1][1], 10);
|
||||
HuAudSStreamPlay(1);
|
||||
break;
|
||||
}
|
||||
fn_1_1D64(5);
|
||||
lbl_1_bss_10[1] = 210;
|
||||
}
|
||||
break;
|
||||
|
||||
case 5:
|
||||
if(--lbl_1_bss_10[1] == 0) {
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_C64;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||
CZoomM[temp_r31] = CZoom;
|
||||
CRotM[temp_r31] = CRot;
|
||||
CenterM[temp_r31] = Center;
|
||||
|
||||
}
|
||||
if(omSysExitReq && !WipeStatGet()) {
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_C64;
|
||||
}
|
||||
s32 temp_r31;
|
||||
s32 temp_r29;
|
||||
s32 sp10[2][4];
|
||||
s32 sp8[2];
|
||||
|
||||
switch (fn_1_1D54()) {
|
||||
case 0:
|
||||
lbl_1_bss_3C2 = 60;
|
||||
lbl_1_bss_3C0 = 60;
|
||||
fn_1_1D64(1);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
|
||||
HuAudFXPlay(1736);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if (fn_1_10F4() == 2) {
|
||||
if (lbl_1_bss_10[1] != 0) {
|
||||
if (--lbl_1_bss_10[1] == 0) {
|
||||
lbl_1_bss_3BC = MGSeqStartCreate();
|
||||
HuAudStreamPlay("sound/mu_047a.adp", 1);
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (MGSeqStatGet(lbl_1_bss_3BC) == 0) {
|
||||
fn_1_1D64(2);
|
||||
HuAudFXPlay(1738);
|
||||
lbl_1_bss_3B8 = MGSeqTimerCreate(60);
|
||||
fn_1_1638(1);
|
||||
}
|
||||
if (lbl_1_data_70 < 0 && (MGSeqStatGet(lbl_1_bss_3BC) & 0x10)) {
|
||||
lbl_1_data_70 = HuAudSeqPlay(67);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if (--lbl_1_bss_3C0 == 0) {
|
||||
lbl_1_bss_3C2--;
|
||||
MGSeqParamSet(lbl_1_bss_3B8, 1, lbl_1_bss_3C2);
|
||||
lbl_1_bss_3C0 = 60;
|
||||
}
|
||||
if (!lbl_1_bss_3C2 || lbl_1_bss_3A8 == 1) {
|
||||
fn_1_1D64(3);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
lbl_1_bss_3BC = MGSeqFinishCreate();
|
||||
HuAudStreamFadeOut(30);
|
||||
HuAudSeqFadeOut(lbl_1_data_70, 100);
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if (lbl_1_bss_3B8 >= 0) {
|
||||
MGSeqParamSet(lbl_1_bss_3B8, 2, -1);
|
||||
lbl_1_bss_3B8 = -1;
|
||||
}
|
||||
if (MGSeqStatGet(lbl_1_bss_3BC) == 0) {
|
||||
fn_1_1D64(4);
|
||||
lbl_1_bss_10[1] = 60;
|
||||
}
|
||||
break;
|
||||
|
||||
case 4:
|
||||
if (--lbl_1_bss_10[1] == 0) {
|
||||
sp8[0] = sp8[1] = 0;
|
||||
for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
|
||||
temp_r29 = fn_1_1D74(temp_r31);
|
||||
sp10[temp_r29][sp8[temp_r29]++] = temp_r31;
|
||||
}
|
||||
lbl_1_bss_3AA = fn_1_1CB8();
|
||||
switch (lbl_1_bss_3AA) {
|
||||
case -1:
|
||||
lbl_1_bss_3AC[0] = GWPlayerCfg[sp10[0][0]].character;
|
||||
lbl_1_bss_3AC[1] = GWPlayerCfg[sp10[0][1]].character;
|
||||
MGSeqWinCreate(lbl_1_bss_3AC[0], lbl_1_bss_3AC[1], -1, -1);
|
||||
GWPlayerCoinWinSet(sp10[0][0], 10);
|
||||
GWPlayerCoinWinSet(sp10[0][1], 10);
|
||||
HuAudSStreamPlay(1);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
MGSeqDrawCreate();
|
||||
HuAudSStreamPlay(4);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
lbl_1_bss_3AC[0] = GWPlayerCfg[sp10[1][0]].character;
|
||||
lbl_1_bss_3AC[1] = GWPlayerCfg[sp10[1][1]].character;
|
||||
MGSeqWinCreate(lbl_1_bss_3AC[0], lbl_1_bss_3AC[1], -1, -1);
|
||||
GWPlayerCoinWinSet(sp10[1][0], 10);
|
||||
GWPlayerCoinWinSet(sp10[1][1], 10);
|
||||
HuAudSStreamPlay(1);
|
||||
break;
|
||||
}
|
||||
fn_1_1D64(5);
|
||||
lbl_1_bss_10[1] = 210;
|
||||
}
|
||||
break;
|
||||
|
||||
case 5:
|
||||
if (--lbl_1_bss_10[1] == 0) {
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_C64;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
for (temp_r31 = 0; temp_r31 < 4; temp_r31++) {
|
||||
CZoomM[temp_r31] = CZoom;
|
||||
CRotM[temp_r31] = CRot;
|
||||
CenterM[temp_r31] = Center;
|
||||
}
|
||||
if (omSysExitReq && !WipeStatGet()) {
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
object->func = fn_1_C64;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_C64(omObjData *object)
|
||||
{
|
||||
if(WipeStatGet()) {
|
||||
return;
|
||||
}
|
||||
fn_1_1E44();
|
||||
fn_1_4964();
|
||||
fn_1_6A84();
|
||||
fn_1_1684();
|
||||
MGSeqKillAll();
|
||||
HuAudFadeOut(1);
|
||||
omOvlReturnEx(1, 1);
|
||||
OSReport("******* M434Exit *********\n");
|
||||
if (WipeStatGet()) {
|
||||
return;
|
||||
}
|
||||
fn_1_1E44();
|
||||
fn_1_4964();
|
||||
fn_1_6A84();
|
||||
fn_1_1684();
|
||||
MGSeqKillAll();
|
||||
HuAudFadeOut(1);
|
||||
omOvlReturnEx(1, 1);
|
||||
OSReport("******* M434Exit *********\n");
|
||||
}
|
||||
|
||||
void fn_1_E44(omObjData *object);
|
||||
|
|
@ -264,20 +262,19 @@ void fn_1_1A10(float arg0);
|
|||
|
||||
void fn_1_CC8(omObjData *object)
|
||||
{
|
||||
lbl_1_bss_8[0] = 0;
|
||||
lbl_1_bss_8[1] = 140;
|
||||
fn_1_16D8();
|
||||
fn_1_1950(302, 0, 125, -188, -24, 28, 0);
|
||||
fn_1_1A00(1);
|
||||
object->func = fn_1_E44;
|
||||
omSetStatBit(object, 0x100);
|
||||
object->model[0] = Hu3DModelCreateFile(0x410007);
|
||||
Hu3DModelCameraSet(object->model[0], 4);
|
||||
Hu3DModelLayerSet(object->model[0], 4);
|
||||
Hu3DModelPosSet(object->model[0], -50, -40, -540);
|
||||
Hu3DMotionSpeedSet(object->model[0], 1);
|
||||
Hu3DModelRotSet(object->model[0], 0, 70, 0);
|
||||
|
||||
lbl_1_bss_8[0] = 0;
|
||||
lbl_1_bss_8[1] = 140;
|
||||
fn_1_16D8();
|
||||
fn_1_1950(302, 0, 125, -188, -24, 28, 0);
|
||||
fn_1_1A00(1);
|
||||
object->func = fn_1_E44;
|
||||
omSetStatBit(object, 0x100);
|
||||
object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M434, 0x07));
|
||||
Hu3DModelCameraSet(object->model[0], 4);
|
||||
Hu3DModelLayerSet(object->model[0], 4);
|
||||
Hu3DModelPosSet(object->model[0], -50, -40, -540);
|
||||
Hu3DMotionSpeedSet(object->model[0], 1);
|
||||
Hu3DModelRotSet(object->model[0], 0, 70, 0);
|
||||
}
|
||||
|
||||
s32 lbl_1_data_A4[] = { 74, 98 };
|
||||
|
|
@ -287,335 +284,326 @@ void fn_1_10BC(omObjData *object);
|
|||
|
||||
void fn_1_E44(omObjData *object)
|
||||
{
|
||||
ModelData *temp_r31;
|
||||
s32 temp_r30;
|
||||
Vec sp8;
|
||||
switch(lbl_1_bss_8[0]) {
|
||||
case 0:
|
||||
if(--lbl_1_bss_8[1] == 0) {
|
||||
Hu3DModelAttrSet(object->model[0], 1);
|
||||
lbl_1_bss_8[0] = 1;
|
||||
}
|
||||
for(temp_r30=0; temp_r30<2u; temp_r30++) {
|
||||
if(lbl_1_bss_4 == lbl_1_data_A4[temp_r30]) {
|
||||
temp_r31 = &Hu3DData[object->model[0]];
|
||||
sp8.x = temp_r31->pos.x+(lbl_1_data_AC[temp_r30]*cosd(temp_r31->rot.y));
|
||||
sp8.y = -15.000001f;
|
||||
sp8.z = temp_r31->pos.z-(lbl_1_data_AC[temp_r30]*sind(temp_r31->rot.y));
|
||||
if(temp_r30 == 0) {
|
||||
fn_1_47EC(&sp8);
|
||||
HuAudFXPlay(1731);
|
||||
} else {
|
||||
fn_1_43AC(&sp8);
|
||||
HuAudFXPlay(1739);
|
||||
}
|
||||
}
|
||||
}
|
||||
lbl_1_bss_4++;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
lbl_1_bss_0 += 0.02f;
|
||||
if(lbl_1_bss_0 >= 1.0f) {
|
||||
lbl_1_bss_8[0] = 2;
|
||||
lbl_1_bss_0 = 1.0f;
|
||||
object->func = fn_1_10BC;
|
||||
}
|
||||
fn_1_1A10(lbl_1_bss_0);
|
||||
break;
|
||||
}
|
||||
ModelData *temp_r31;
|
||||
s32 temp_r30;
|
||||
Vec sp8;
|
||||
switch (lbl_1_bss_8[0]) {
|
||||
case 0:
|
||||
if (--lbl_1_bss_8[1] == 0) {
|
||||
Hu3DModelAttrSet(object->model[0], 1);
|
||||
lbl_1_bss_8[0] = 1;
|
||||
}
|
||||
for (temp_r30 = 0; temp_r30 < 2u; temp_r30++) {
|
||||
if (lbl_1_bss_4 == lbl_1_data_A4[temp_r30]) {
|
||||
temp_r31 = &Hu3DData[object->model[0]];
|
||||
sp8.x = temp_r31->pos.x + (lbl_1_data_AC[temp_r30] * cosd(temp_r31->rot.y));
|
||||
sp8.y = -15.000001f;
|
||||
sp8.z = temp_r31->pos.z - (lbl_1_data_AC[temp_r30] * sind(temp_r31->rot.y));
|
||||
if (temp_r30 == 0) {
|
||||
fn_1_47EC(&sp8);
|
||||
HuAudFXPlay(1731);
|
||||
}
|
||||
else {
|
||||
fn_1_43AC(&sp8);
|
||||
HuAudFXPlay(1739);
|
||||
}
|
||||
}
|
||||
}
|
||||
lbl_1_bss_4++;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
lbl_1_bss_0 += 0.02f;
|
||||
if (lbl_1_bss_0 >= 1.0f) {
|
||||
lbl_1_bss_8[0] = 2;
|
||||
lbl_1_bss_0 = 1.0f;
|
||||
object->func = fn_1_10BC;
|
||||
}
|
||||
fn_1_1A10(lbl_1_bss_0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1788(void);
|
||||
|
||||
void fn_1_10BC(omObjData *object)
|
||||
{
|
||||
fn_1_1788();
|
||||
fn_1_1788();
|
||||
object->func = NULL;
|
||||
fn_1_1788();
|
||||
fn_1_1788();
|
||||
object->func = NULL;
|
||||
}
|
||||
|
||||
s32 fn_1_10F4(void)
|
||||
{
|
||||
return lbl_1_bss_8[0];
|
||||
return lbl_1_bss_8[0];
|
||||
}
|
||||
|
||||
void fn_1_1150(omObjData *object);
|
||||
|
||||
u16 lbl_1_data_B4[6] = {
|
||||
0, 1, 2, 3, 4, 4
|
||||
};
|
||||
u16 lbl_1_data_B4[6] = { 0, 1, 2, 3, 4, 4 };
|
||||
|
||||
float lbl_1_data_C0[6][2] = {
|
||||
0,0,
|
||||
0,0,
|
||||
-33,-2,
|
||||
-9,-2,
|
||||
11,-2,
|
||||
31,-2
|
||||
};
|
||||
float lbl_1_data_C0[6][2] = { 0, 0, 0, 0, -33, -2, -9, -2, 11, -2, 31, -2 };
|
||||
|
||||
float lbl_1_data_F0[2][2] = {
|
||||
104, 56,
|
||||
472, 56
|
||||
};
|
||||
float lbl_1_data_F0[2][2] = { 104, 56, 472, 56 };
|
||||
|
||||
typedef struct work_1150 {
|
||||
s32 unk0;
|
||||
s16 unk4;
|
||||
s16 unk6[6];
|
||||
u16 unk12;
|
||||
s32 unk0;
|
||||
s16 unk4;
|
||||
s16 unk6[6];
|
||||
u16 unk12;
|
||||
} Work1150;
|
||||
|
||||
void fn_1_1104(Process *objman)
|
||||
{
|
||||
lbl_1_bss_3C4 = omAddObjEx(objman, 0, 0, 0, -1, fn_1_1150);
|
||||
lbl_1_bss_3C4 = omAddObjEx(objman, 0, 0, 0, -1, fn_1_1150);
|
||||
}
|
||||
|
||||
void fn_1_1470(omObjData *object);
|
||||
|
||||
void fn_1_1150(omObjData *object)
|
||||
{
|
||||
Work1150 *temp_r31;
|
||||
u32 temp_r30;
|
||||
s32 temp_r29;
|
||||
temp_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 2*sizeof(Work1150), MEMORY_DEFAULT_NUM);
|
||||
object->data = temp_r31;
|
||||
memset(object->data, 0, 2*sizeof(Work1150));
|
||||
for(temp_r29=0; temp_r29<2; temp_r31++, temp_r29++) {
|
||||
for(temp_r30=0; temp_r30<6; temp_r30++) {
|
||||
switch(lbl_1_data_B4[temp_r30]) {
|
||||
case 0:
|
||||
temp_r31->unk6[temp_r30] = espEntry(0x61001D, 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
espColorSet(temp_r31->unk6[temp_r30], 0, 0, 0);
|
||||
espTPLvlSet(temp_r31->unk6[temp_r30], 0.5);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
temp_r31->unk6[temp_r30] = espEntry((temp_r29 == 0) ? 0x61001B : 0x61001C, 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
temp_r31->unk6[temp_r30] = espEntry(0x41000C, 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
espScaleSet(temp_r31->unk6[temp_r30], 0.75, 0.75);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
temp_r31->unk6[temp_r30] = espEntry(0x41000D, 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
temp_r31->unk6[temp_r30] = espEntry(0x610033, 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 255);
|
||||
break;
|
||||
}
|
||||
espDispOff(temp_r31->unk6[temp_r30]);
|
||||
espDrawNoSet(temp_r31->unk6[temp_r30], 0);
|
||||
espAttrSet(temp_r31->unk6[temp_r30], 1);
|
||||
espPosSet(temp_r31->unk6[temp_r30], lbl_1_data_F0[temp_r29][0]+lbl_1_data_C0[temp_r30][0], lbl_1_data_F0[temp_r29][1]+lbl_1_data_C0[temp_r30][1]);
|
||||
}
|
||||
temp_r31->unk0 = -1;
|
||||
}
|
||||
HuDataDirClose(0x610000);
|
||||
object->func = fn_1_1470;
|
||||
Work1150 *temp_r31;
|
||||
u32 temp_r30;
|
||||
s32 temp_r29;
|
||||
temp_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 2 * sizeof(Work1150), MEMORY_DEFAULT_NUM);
|
||||
object->data = temp_r31;
|
||||
memset(object->data, 0, 2 * sizeof(Work1150));
|
||||
for (temp_r29 = 0; temp_r29 < 2; temp_r31++, temp_r29++) {
|
||||
for (temp_r30 = 0; temp_r30 < 6; temp_r30++) {
|
||||
switch (lbl_1_data_B4[temp_r30]) {
|
||||
case 0:
|
||||
temp_r31->unk6[temp_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x1D), 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
espColorSet(temp_r31->unk6[temp_r30], 0, 0, 0);
|
||||
espTPLvlSet(temp_r31->unk6[temp_r30], 0.5);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
temp_r31->unk6[temp_r30] = espEntry((temp_r29 == 0) ? DATA_MAKE_NUM(DATADIR_MGCONST, 0x1B) : DATA_MAKE_NUM(DATADIR_MGCONST, 0x1C), 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
temp_r31->unk6[temp_r30] = espEntry(DATA_MAKE_NUM(DATADIR_M434, 0x0C), 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
espScaleSet(temp_r31->unk6[temp_r30], 0.75, 0.75);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
temp_r31->unk6[temp_r30] = espEntry(DATA_MAKE_NUM(DATADIR_M434, 0x0D), 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 256);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
temp_r31->unk6[temp_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x33), 1, 0);
|
||||
espPriSet(temp_r31->unk6[temp_r30], 255);
|
||||
break;
|
||||
}
|
||||
espDispOff(temp_r31->unk6[temp_r30]);
|
||||
espDrawNoSet(temp_r31->unk6[temp_r30], 0);
|
||||
espAttrSet(temp_r31->unk6[temp_r30], 1);
|
||||
espPosSet(temp_r31->unk6[temp_r30], lbl_1_data_F0[temp_r29][0] + lbl_1_data_C0[temp_r30][0],
|
||||
lbl_1_data_F0[temp_r29][1] + lbl_1_data_C0[temp_r30][1]);
|
||||
}
|
||||
temp_r31->unk0 = -1;
|
||||
}
|
||||
HuDataDirClose(DATADIR_MGCONST);
|
||||
object->func = fn_1_1470;
|
||||
}
|
||||
|
||||
void fn_1_1470(omObjData *object)
|
||||
{
|
||||
float temp_f31;
|
||||
Work1150 *temp_r31;
|
||||
s32 temp_r30;
|
||||
s32 temp_r29;
|
||||
temp_r31 = object->data;
|
||||
for(temp_r29=0; temp_r29<2; temp_r29++, temp_r31++) {
|
||||
if(temp_r31->unk0 >= 0) {
|
||||
if(temp_r31->unk0 == 0) {
|
||||
for(temp_r30=0; temp_r30<6; temp_r30++) {
|
||||
espDispOn(temp_r31->unk6[temp_r30]);
|
||||
}
|
||||
temp_r31->unk0++;
|
||||
}
|
||||
if(temp_r31->unk12) {
|
||||
temp_r31->unk12--;
|
||||
temp_f31 = (0.5*sind((180.0f*temp_r31->unk12)/16.0f))+1.0;
|
||||
espScaleSet(temp_r31->unk6[4], temp_f31, temp_f31);
|
||||
espScaleSet(temp_r31->unk6[5], temp_f31, temp_f31);
|
||||
}
|
||||
espBankSet(temp_r31->unk6[4], temp_r31->unk4/10);
|
||||
espBankSet(temp_r31->unk6[5], temp_r31->unk4%10);
|
||||
}
|
||||
}
|
||||
float temp_f31;
|
||||
Work1150 *temp_r31;
|
||||
s32 temp_r30;
|
||||
s32 temp_r29;
|
||||
temp_r31 = object->data;
|
||||
for (temp_r29 = 0; temp_r29 < 2; temp_r29++, temp_r31++) {
|
||||
if (temp_r31->unk0 >= 0) {
|
||||
if (temp_r31->unk0 == 0) {
|
||||
for (temp_r30 = 0; temp_r30 < 6; temp_r30++) {
|
||||
espDispOn(temp_r31->unk6[temp_r30]);
|
||||
}
|
||||
temp_r31->unk0++;
|
||||
}
|
||||
if (temp_r31->unk12) {
|
||||
temp_r31->unk12--;
|
||||
temp_f31 = (0.5 * sind((180.0f * temp_r31->unk12) / 16.0f)) + 1.0;
|
||||
espScaleSet(temp_r31->unk6[4], temp_f31, temp_f31);
|
||||
espScaleSet(temp_r31->unk6[5], temp_f31, temp_f31);
|
||||
}
|
||||
espBankSet(temp_r31->unk6[4], temp_r31->unk4 / 10);
|
||||
espBankSet(temp_r31->unk6[5], temp_r31->unk4 % 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1638(s32 arg0)
|
||||
{
|
||||
Work1150 *temp_r31;
|
||||
s32 temp_r30;
|
||||
temp_r31 = lbl_1_bss_3C4->data;
|
||||
for(temp_r30=0; temp_r30<2; temp_r30++, temp_r31++) {
|
||||
temp_r31->unk0 = 0;
|
||||
}
|
||||
Work1150 *temp_r31;
|
||||
s32 temp_r30;
|
||||
temp_r31 = lbl_1_bss_3C4->data;
|
||||
for (temp_r30 = 0; temp_r30 < 2; temp_r30++, temp_r31++) {
|
||||
temp_r31->unk0 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1684(void)
|
||||
{
|
||||
HuMemDirectFree(lbl_1_bss_3C4->data);
|
||||
HuMemDirectFree(lbl_1_bss_3C4->data);
|
||||
}
|
||||
|
||||
void fn_1_16B4(void)
|
||||
{
|
||||
lbl_1_bss_39C = 0;
|
||||
lbl_1_bss_18 = 0;
|
||||
lbl_1_bss_39C = 0;
|
||||
lbl_1_bss_18 = 0;
|
||||
}
|
||||
|
||||
void fn_1_16D8(void)
|
||||
{
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r31->zoom = CZoom;
|
||||
temp_r31->pos.x = Center.x;
|
||||
temp_r31->pos.y = Center.y;
|
||||
temp_r31->pos.z = Center.z;
|
||||
temp_r31->rot.x = CRot.x;
|
||||
temp_r31->rot.y = CRot.y;
|
||||
temp_r31->rot.z = CRot.z;
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r31->zoom = CZoom;
|
||||
temp_r31->pos.x = Center.x;
|
||||
temp_r31->pos.y = Center.y;
|
||||
temp_r31->pos.z = Center.z;
|
||||
temp_r31->rot.x = CRot.x;
|
||||
temp_r31->rot.y = CRot.y;
|
||||
temp_r31->rot.z = CRot.z;
|
||||
}
|
||||
|
||||
void fn_1_1788(void)
|
||||
{
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[--lbl_1_bss_39C];
|
||||
CZoom = temp_r31->zoom;
|
||||
Center.x = temp_r31->pos.x;
|
||||
Center.y = temp_r31->pos.y;
|
||||
Center.z = temp_r31->pos.z;
|
||||
CRot.x = temp_r31->rot.x;
|
||||
CRot.y = temp_r31->rot.y;
|
||||
CRot.z = temp_r31->rot.z;
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[--lbl_1_bss_39C];
|
||||
CZoom = temp_r31->zoom;
|
||||
Center.x = temp_r31->pos.x;
|
||||
Center.y = temp_r31->pos.y;
|
||||
Center.z = temp_r31->pos.z;
|
||||
CRot.x = temp_r31->rot.x;
|
||||
CRot.y = temp_r31->rot.y;
|
||||
CRot.z = temp_r31->rot.z;
|
||||
}
|
||||
|
||||
void fn_1_1838(CameraView *arg0)
|
||||
{
|
||||
CameraView *temp_r30;
|
||||
CameraView sp8;
|
||||
sp8 = lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r30 = &sp8;
|
||||
memcpy(temp_r30, arg0, sizeof(CameraView));
|
||||
CZoom = arg0->zoom;
|
||||
Center.x = arg0->pos.x;
|
||||
Center.y = arg0->pos.y;
|
||||
Center.z = arg0->pos.z;
|
||||
CRot.x = arg0->rot.x;
|
||||
CRot.y = arg0->rot.y;
|
||||
CRot.z = arg0->rot.z;
|
||||
CameraView *temp_r30;
|
||||
CameraView sp8;
|
||||
sp8 = lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r30 = &sp8;
|
||||
memcpy(temp_r30, arg0, sizeof(CameraView));
|
||||
CZoom = arg0->zoom;
|
||||
Center.x = arg0->pos.x;
|
||||
Center.y = arg0->pos.y;
|
||||
Center.z = arg0->pos.z;
|
||||
CRot.x = arg0->rot.x;
|
||||
CRot.y = arg0->rot.y;
|
||||
CRot.z = arg0->rot.z;
|
||||
}
|
||||
|
||||
void fn_1_1950(float arg0, float arg1, float arg2, float arg3, float arg4, float arg5, float arg6)
|
||||
{
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r31->zoom = CZoom = arg0;
|
||||
temp_r31->pos.x = Center.x = arg1;
|
||||
temp_r31->pos.y = Center.y = arg2;
|
||||
temp_r31->pos.z = Center.z = arg3;
|
||||
temp_r31->rot.x = CRot.x = arg4;
|
||||
temp_r31->rot.y = CRot.y = arg5;
|
||||
temp_r31->rot.z = CRot.z = arg6;
|
||||
CameraView *temp_r31 = &lbl_1_bss_1C[lbl_1_bss_39C++];
|
||||
temp_r31->zoom = CZoom = arg0;
|
||||
temp_r31->pos.x = Center.x = arg1;
|
||||
temp_r31->pos.y = Center.y = arg2;
|
||||
temp_r31->pos.z = Center.z = arg3;
|
||||
temp_r31->rot.x = CRot.x = arg4;
|
||||
temp_r31->rot.y = CRot.y = arg5;
|
||||
temp_r31->rot.z = CRot.z = arg6;
|
||||
}
|
||||
|
||||
void fn_1_1A00(s32 arg0)
|
||||
{
|
||||
lbl_1_bss_18 = arg0;
|
||||
lbl_1_bss_18 = arg0;
|
||||
}
|
||||
|
||||
#define LERP_PARAM(view1, view2, field, weight) ((view1)->field+)
|
||||
#define LERP_PARAM(view1, view2, field, weight) ((view1)->field +)
|
||||
|
||||
void fn_1_1A10(float arg0)
|
||||
{
|
||||
float weight;
|
||||
CameraView *view1 = &lbl_1_bss_1C[lbl_1_bss_39C-1];
|
||||
CameraView *view2 = view1-1;
|
||||
if(lbl_1_bss_39C < 2) {
|
||||
return;
|
||||
}
|
||||
switch(lbl_1_bss_18) {
|
||||
case 0:
|
||||
weight = arg0;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
weight = sind(90.0f*arg0);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
weight = sind(90.0f*arg0);
|
||||
weight *= weight;
|
||||
break;
|
||||
}
|
||||
|
||||
CZoom = view1->zoom+(weight*(view2->zoom-view1->zoom));
|
||||
Center.x = view1->pos.x+(weight*(view2->pos.x-view1->pos.x));
|
||||
Center.y = view1->pos.y+(weight*(view2->pos.y-view1->pos.y));
|
||||
Center.z = view1->pos.z+(weight*(view2->pos.z-view1->pos.z));
|
||||
CRot.x = view1->rot.x+(weight*(view2->rot.x-view1->rot.x));
|
||||
CRot.y = view1->rot.y+(weight*(view2->rot.y-view1->rot.y));
|
||||
CRot.z = view1->rot.z+(weight*(view2->rot.z-view1->rot.z));
|
||||
float weight;
|
||||
CameraView *view1 = &lbl_1_bss_1C[lbl_1_bss_39C - 1];
|
||||
CameraView *view2 = view1 - 1;
|
||||
if (lbl_1_bss_39C < 2) {
|
||||
return;
|
||||
}
|
||||
switch (lbl_1_bss_18) {
|
||||
case 0:
|
||||
weight = arg0;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
weight = sind(90.0f * arg0);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
weight = sind(90.0f * arg0);
|
||||
weight *= weight;
|
||||
break;
|
||||
}
|
||||
|
||||
CZoom = view1->zoom + (weight * (view2->zoom - view1->zoom));
|
||||
Center.x = view1->pos.x + (weight * (view2->pos.x - view1->pos.x));
|
||||
Center.y = view1->pos.y + (weight * (view2->pos.y - view1->pos.y));
|
||||
Center.z = view1->pos.z + (weight * (view2->pos.z - view1->pos.z));
|
||||
CRot.x = view1->rot.x + (weight * (view2->rot.x - view1->rot.x));
|
||||
CRot.y = view1->rot.y + (weight * (view2->rot.y - view1->rot.y));
|
||||
CRot.z = view1->rot.z + (weight * (view2->rot.z - view1->rot.z));
|
||||
}
|
||||
|
||||
void fn_1_1C44(s32 arg0, s32 arg1)
|
||||
{
|
||||
Work1150 *temp_r31 = &((Work1150 *)lbl_1_bss_3C4->data)[arg0];
|
||||
temp_r31->unk4 += arg1;
|
||||
temp_r31->unk12 = 16;
|
||||
Work1150 *temp_r31 = &((Work1150 *)lbl_1_bss_3C4->data)[arg0];
|
||||
temp_r31->unk4 += arg1;
|
||||
temp_r31->unk12 = 16;
|
||||
}
|
||||
|
||||
s32 fn_1_1C88(s32 arg0)
|
||||
{
|
||||
Work1150 *temp_r31 = &((Work1150 *)lbl_1_bss_3C4->data)[arg0];
|
||||
return temp_r31->unk4;
|
||||
Work1150 *temp_r31 = &((Work1150 *)lbl_1_bss_3C4->data)[arg0];
|
||||
return temp_r31->unk4;
|
||||
}
|
||||
|
||||
s32 fn_1_1CB8(void)
|
||||
{
|
||||
s32 temp_r31 = fn_1_1C88(0);
|
||||
s32 temp_r30 = fn_1_1C88(1);
|
||||
if(temp_r31 == temp_r30) {
|
||||
return 0;
|
||||
}
|
||||
if(temp_r31 > temp_r30) {
|
||||
return -1;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
s32 temp_r31 = fn_1_1C88(0);
|
||||
s32 temp_r30 = fn_1_1C88(1);
|
||||
if (temp_r31 == temp_r30) {
|
||||
return 0;
|
||||
}
|
||||
if (temp_r31 > temp_r30) {
|
||||
return -1;
|
||||
}
|
||||
else {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
s16 fn_1_1D44(void)
|
||||
{
|
||||
return lbl_1_bss_3C2;
|
||||
return lbl_1_bss_3C2;
|
||||
}
|
||||
|
||||
s32 fn_1_1D54(void)
|
||||
{
|
||||
return lbl_1_bss_10[0];
|
||||
return lbl_1_bss_10[0];
|
||||
}
|
||||
|
||||
void fn_1_1D64(s32 arg0)
|
||||
{
|
||||
lbl_1_bss_10[0] = arg0;
|
||||
lbl_1_bss_10[0] = arg0;
|
||||
}
|
||||
|
||||
s32 fn_1_1D74(s32 arg0)
|
||||
{
|
||||
return lbl_1_bss_3A0[arg0];
|
||||
return lbl_1_bss_3A0[arg0];
|
||||
}
|
||||
|
||||
s32 fn_1_1D8C(void)
|
||||
{
|
||||
return lbl_1_bss_3AA;
|
||||
return lbl_1_bss_3AA;
|
||||
}
|
||||
|
||||
void fn_1_1D9C(void)
|
||||
{
|
||||
lbl_1_bss_3A8 = 1;
|
||||
lbl_1_bss_3A8 = 1;
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -2324,7 +2324,7 @@ void fn_1_62BC(void *arg0)
|
|||
// var_r30->unk_2C = 0.01f;
|
||||
// var_r30->unk_28 = 0.01f;
|
||||
// var_r30->unk_24 = 0.01f;
|
||||
// var_r30->unk_7C = Hu3DModelCreateFile(0x45000B);
|
||||
// var_r30->unk_7C = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M438, 0x0B));
|
||||
// var_r30->unk_7E = (30.0f * (0.000015258789f * fn_1_7DB4())) + 0x1E;
|
||||
// var_r29 = 0;
|
||||
// loop_6:
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -23,14 +23,14 @@ s16 lbl_1_bss_70;
|
|||
s16 lbl_1_data_1D8 = 2;
|
||||
s16 lbl_1_data_1DA = -1;
|
||||
u32 lbl_1_data_1DC[8][2] = {
|
||||
{ 0x5F0000, 0 },
|
||||
{ 0x5F0002, 0 },
|
||||
{ 0x5F0003, 0 },
|
||||
{ 0x5F0038, 0 },
|
||||
{ 0x5F0048, 0 },
|
||||
{ 0x5F0017, 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03), 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x38), 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48), 0 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), 0 },
|
||||
{ 0x47000C, 1 },
|
||||
{ 0x5F0036, 0 }
|
||||
{ DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x36), 0 }
|
||||
};
|
||||
f32 lbl_1_data_21C[4] = {
|
||||
210.0f, 190.0f, 170.0f, 0.0f
|
||||
|
|
@ -58,7 +58,7 @@ void fn_1_AEE4(omObjData* arg0) {
|
|||
s16 var_r29;
|
||||
unkObjStruct* temp_r31;
|
||||
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x78, 0x10000000);
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x78, MEMORY_DEFAULT_NUM);
|
||||
temp_r31 = (unkObjStruct*)arg0->data;
|
||||
memset(temp_r31, 0, 0x78);
|
||||
arg0->stat |= 0x100;
|
||||
|
|
@ -1145,4 +1145,4 @@ void fn_1_F4D4(unkObjStruct* arg0, u16 arg1, u16 arg2) {
|
|||
|
||||
s32 fn_1_F4FC(s32 arg0) {
|
||||
return lbl_1_bss_B8[arg0];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -422,7 +422,7 @@ void fn_1_A90(Process *arg0)
|
|||
for (var_r31 = 0; var_r31 < 1; var_r31++) {
|
||||
omAddObjEx(arg0, 5, 0xA, 0x32, 0, fn_1_E88);
|
||||
}
|
||||
lbl_1_bss_11F00 = HuSprAnimRead(HuDataReadNum(0x49000A, MEMORY_DEFAULT_NUM));
|
||||
lbl_1_bss_11F00 = HuSprAnimRead(HuDataReadNum(DATA_MAKE_NUM(DATADIR_M442, 0x0A), MEMORY_DEFAULT_NUM));
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
lbl_1_bss_11EEC[var_r31] = HuSprAnimRead(HuDataReadNum(sp8[var_r31], MEMORY_DEFAULT_NUM));
|
||||
}
|
||||
|
|
@ -466,13 +466,13 @@ s32 fn_1_E04(void)
|
|||
}
|
||||
|
||||
s32 lbl_1_data_FC[7] = {
|
||||
0x5F0000,
|
||||
0x5F0002,
|
||||
0x5F0003,
|
||||
0x5F0005,
|
||||
0x5F002B,
|
||||
0x5F0048,
|
||||
0x5F0018,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x2B),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_118[2] = { 0x490010, 0x490018 };
|
||||
|
|
@ -505,7 +505,7 @@ void fn_1_E88(omObjData *object)
|
|||
object->model[0] = CharModelCreate(var_r26, 8);
|
||||
Hu3DModelLayerSet(object->model[0], 1);
|
||||
Hu3DModelShadowSet(object->model[0]);
|
||||
object->model[1] = Hu3DModelCreateFile(0x490001);
|
||||
object->model[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M442, 0x01));
|
||||
Hu3DModelHookSet(object->model[0], "test11_tex_we-itemhook-r", object->model[1]);
|
||||
var_r30->unk_30 = 0;
|
||||
for (var_r29 = 0; var_r29 < 7; var_r29++) {
|
||||
|
|
@ -1386,7 +1386,7 @@ void fn_1_3EC0(omObjData *object)
|
|||
fn_1_4444(var_r31);
|
||||
}
|
||||
object->model[3] = Hu3DHookFuncCreate(fn_1_485C);
|
||||
lbl_1_bss_11F10 = HuSprAnimRead(HuDataSelHeapReadNum(0x49000B, MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
lbl_1_bss_11F10 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_M442, 0x0B));
|
||||
object->model[4] = Hu3DHookFuncCreate(fn_1_54C8);
|
||||
Hu3DModelLayerSet(object->model[4], 6);
|
||||
for (var_r31 = 0; var_r31 < 15; var_r31++) {
|
||||
|
|
@ -1394,7 +1394,7 @@ void fn_1_3EC0(omObjData *object)
|
|||
}
|
||||
memset(lbl_1_bss_119FC, 0, 0x271);
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_11F04[var_r31] = HuSprAnimRead(HuDataSelHeapReadNum(lbl_1_data_1A0[var_r31], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
lbl_1_bss_11F04[var_r31] = HuSprAnimReadFile(lbl_1_data_1A0[var_r31]);
|
||||
}
|
||||
object->model[5] = Hu3DHookFuncCreate(fn_1_5A48);
|
||||
Hu3DModelLayerSet(object->model[5], 2);
|
||||
|
|
@ -1913,7 +1913,7 @@ void fn_1_6D24(omObjData *object)
|
|||
memset(var_r29, 0, sizeof(M442MainWork2));
|
||||
var_r29->unk_16 = lbl_1_bss_11EE0++;
|
||||
var_r29->unk_18 = 1.0f;
|
||||
object->model[0] = Hu3DModelCreateFile(0x490002);
|
||||
object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M442, 0x02));
|
||||
Hu3DModelLayerSet(object->model[0], 7);
|
||||
Hu3DModelAttrSet(object->model[0], 0x40000001);
|
||||
Hu3DModelAttrSet(object->model[0], 1);
|
||||
|
|
|
|||
|
|
@ -39,25 +39,25 @@ s32 fn_1_91AC(Process *arg0, s16 arg1)
|
|||
var_r31 = lbl_1_bss_11F48->data;
|
||||
var_r31->unk_08 = arg1;
|
||||
var_r31->unk_0A = 0;
|
||||
var_r31->unk_18 = espEntry(0x610023, 2, 0);
|
||||
var_r31->unk_18 = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x23), 2, 0);
|
||||
espTPLvlSet(var_r31->unk_18, 0.5f);
|
||||
espPosSet(var_r31->unk_18, 508.0f, 64.0f);
|
||||
espColorSet(var_r31->unk_18, 0, 0, 0);
|
||||
var_r31->unk_1A = espEntry(0x610037, 1, 0);
|
||||
var_r31->unk_1A = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x37), 1, 0);
|
||||
espPosSet(var_r31->unk_1A, 480.0f, 56.0f);
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
var_r31->unk_0C[var_r30] = espEntry(0x610030, 0, 0);
|
||||
var_r31->unk_0C[var_r30] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x30), 0, 0);
|
||||
espPosSet(var_r31->unk_0C[var_r30], (var_r30 * 0x10) + 0x1F4, 56.0f);
|
||||
espDispOff(var_r31->unk_0C[var_r30]);
|
||||
}
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
var_r31->unk_0C[var_r30 + 3] = espEntry(0x610031, 1, 0);
|
||||
var_r31->unk_0C[var_r30 + 3] = espEntry(DATA_MAKE_NUM(DATADIR_MGCONST, 0x31), 1, 0);
|
||||
espPosSet(var_r31->unk_0C[var_r30 + 3], (var_r30 * 0x10) + 0x1F4, 74.0f);
|
||||
}
|
||||
for (var_r30 = 0; var_r30 < 8; var_r30++) {
|
||||
espDispOff(var_r31->unk_0C[var_r30]);
|
||||
}
|
||||
HuDataDirClose(0x610000);
|
||||
HuDataDirClose(DATADIR_MGCONST);
|
||||
return fn_1_9520(0);
|
||||
}
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -268,11 +268,11 @@ void fn_1_9418(s16 arg0)
|
|||
Hu3DModelRotSet(lbl_1_bss_2D0, 0, 180, 0);
|
||||
CharModelMotionShiftSet(lbl_1_bss_2DA, lbl_1_bss_2C0[3], 0, 4, 0x40000020);
|
||||
HuPrcSleep(12);
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x1C000F);
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x1C, 0x0F));
|
||||
temp_r29 = HuWinCreate(-10000, 340, sp8[0], sp8[1], 1);
|
||||
HuWinMesSpeedSet(temp_r29, 0);
|
||||
HuWinBGTPLvlSet(temp_r29, 0);
|
||||
HuWinMesSet(temp_r29, 0x1C000F);
|
||||
HuWinMesSet(temp_r29, MAKE_MESSID(0x1C, 0x0F));
|
||||
CharModelMotionSet(lbl_1_bss_2DA, lbl_1_bss_2C0[2]);
|
||||
Hu3DModelAttrSet(lbl_1_bss_2D0, 0x40000002);
|
||||
temp_f29 = Hu3DMotionTimeGet(lbl_1_bss_2D0);
|
||||
|
|
@ -1198,4 +1198,4 @@ void fn_1_D1E0(s16 model)
|
|||
}
|
||||
}
|
||||
lbl_1_bss_1884 = temp_r31;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,11 +14,11 @@ unkStruct3* lbl_1_bss_18;
|
|||
unkStruct2* fn_1_1C64(s32 arg0) {
|
||||
unkStruct2* temp_r3;
|
||||
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, 0x10000000U);
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, MEMORY_DEFAULT_NUM);
|
||||
if (!temp_r3) {
|
||||
return NULL;
|
||||
}
|
||||
temp_r3->unk0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 4, 0x10000000U);
|
||||
temp_r3->unk0 = HuMemDirectMallocNum(HEAP_SYSTEM, arg0 * 4, MEMORY_DEFAULT_NUM);
|
||||
if (!temp_r3->unk0) {
|
||||
HuMemDirectFree(temp_r3);
|
||||
return NULL;
|
||||
|
|
@ -75,7 +75,7 @@ s32 fn_1_1DEC(unkStruct2* arg0) {
|
|||
unkStruct3* fn_1_1DF4(void* arg0) {
|
||||
unkStruct3* temp_r3;
|
||||
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, 0x10000000);
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, MEMORY_DEFAULT_NUM);
|
||||
if (!temp_r3) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -250,7 +250,7 @@ unkStruct4* m446CardCreate(s32 arg0) {
|
|||
unkStruct4* temp_r31;
|
||||
unkStruct3* temp_r30;
|
||||
|
||||
temp_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x98, 0x10000000U);
|
||||
temp_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x98, MEMORY_DEFAULT_NUM);
|
||||
if (!temp_r31) {
|
||||
OSReport("[!] m446CardCreate ERROR...\n");
|
||||
return NULL;
|
||||
|
|
@ -521,4 +521,4 @@ void fn_1_2F64(unkStruct4* arg0) {
|
|||
Hu3DModelScaleSet(arg0->unkA[0], arg0->unk58, arg0->unk58, arg0->unk58);
|
||||
Hu3DModelScaleSet(arg0->unkA[1], arg0->unk58, arg0->unk58, arg0->unk58);
|
||||
Hu3DModelRotSet(arg0->unkA[0], arg0->unk34.x, arg0->unk34.y, arg0->unk34.z);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,25 @@
|
|||
#include "REL/m446Dll.h"
|
||||
|
||||
#include "math.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "math.h"
|
||||
|
||||
// bss
|
||||
unkStruct3* lbl_1_bss_98;
|
||||
unkStruct3 *lbl_1_bss_98;
|
||||
|
||||
// data
|
||||
s32 lbl_1_data_3C8[9] = {
|
||||
0x4D0012, 0x4D0013, 0x4D0014,
|
||||
0x4D0015, 0x4D0016, 0x4D0017,
|
||||
0x4D0018, 0x4D0019, 0x4D001A
|
||||
};
|
||||
s32 lbl_1_data_3C8[9] = { 0x4D0012, 0x4D0013, 0x4D0014, 0x4D0015, 0x4D0016, 0x4D0017, 0x4D0018, 0x4D0019, 0x4D001A };
|
||||
|
||||
s32 fn_1_72E0(void) {
|
||||
s32 fn_1_72E0(void)
|
||||
{
|
||||
lbl_1_bss_98 = NULL;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_72F8(void) {
|
||||
unkStruct3* var_r31;
|
||||
unkStruct7* var_r30;
|
||||
void fn_1_72F8(void)
|
||||
{
|
||||
unkStruct3 *var_r31;
|
||||
unkStruct7 *var_r30;
|
||||
|
||||
var_r31 = lbl_1_bss_98;
|
||||
if (var_r31) {
|
||||
|
|
@ -33,10 +31,11 @@ void fn_1_72F8(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_7350(void) {
|
||||
void fn_1_7350(void)
|
||||
{
|
||||
f32 temp_f31;
|
||||
unkStruct3* var_r30;
|
||||
unkStruct7* temp_r31;
|
||||
unkStruct3 *var_r30;
|
||||
unkStruct7 *temp_r31;
|
||||
|
||||
var_r30 = lbl_1_bss_98;
|
||||
if (var_r30) {
|
||||
|
|
@ -65,12 +64,13 @@ void fn_1_7350(void) {
|
|||
}
|
||||
}
|
||||
|
||||
unkStruct7* m446CursorCreate(s32 arg0) {
|
||||
unkStruct7 *m446CursorCreate(s32 arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
unkStruct7* var_r31;
|
||||
unkStruct3* var_r29;
|
||||
unkStruct7 *var_r31;
|
||||
unkStruct3 *var_r29;
|
||||
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x54, 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x54, MEMORY_DEFAULT_NUM);
|
||||
if (!var_r31) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -84,7 +84,7 @@ unkStruct7* m446CursorCreate(s32 arg0) {
|
|||
var_r31->field00_bit3 = 0;
|
||||
var_r31->unk8 = arg0;
|
||||
var_r31->unk48 = 0;
|
||||
var_r31->unkC[0] = Hu3DModelCreateFile(0x4D0009);
|
||||
var_r31->unkC[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M446, 0x09));
|
||||
Hu3DModelLayerSet(var_r31->unkC[0], 6);
|
||||
if (var_r31->unk8 == 0) {
|
||||
for (var_r30 = 0; var_r30 < 9; var_r30++) {
|
||||
|
|
@ -101,15 +101,17 @@ unkStruct7* m446CursorCreate(s32 arg0) {
|
|||
}
|
||||
if (lbl_1_bss_98) {
|
||||
fn_1_1EC8(lbl_1_bss_98, var_r29);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_98 = var_r29;
|
||||
}
|
||||
return var_r31;
|
||||
}
|
||||
|
||||
void fn_1_76E8(unkStruct7* arg0) {
|
||||
void fn_1_76E8(unkStruct7 *arg0)
|
||||
{
|
||||
s32 var_r29;
|
||||
unkStruct3* var_r31;
|
||||
unkStruct3 *var_r31;
|
||||
|
||||
var_r31 = lbl_1_bss_98;
|
||||
if (var_r31) {
|
||||
|
|
@ -134,7 +136,8 @@ void fn_1_76E8(unkStruct7* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_77C8(unkStruct7* arg0, u8 arg1) {
|
||||
void fn_1_77C8(unkStruct7 *arg0, u8 arg1)
|
||||
{
|
||||
s32 var_r30;
|
||||
|
||||
arg0->field00_bit0 = 1;
|
||||
|
|
@ -144,14 +147,16 @@ void fn_1_77C8(unkStruct7* arg0, u8 arg1) {
|
|||
for (var_r30 = 0; var_r30 < 9; var_r30++) {
|
||||
if (var_r30 == arg1) {
|
||||
Hu3DModelAttrReset(arg0->unkC[var_r30 + 1], 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Hu3DModelAttrSet(arg0->unkC[var_r30 + 1], 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_7884(unkStruct7* arg0) {
|
||||
void fn_1_7884(unkStruct7 *arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
|
||||
arg0->field00_bit0 = 0;
|
||||
|
|
@ -163,7 +168,8 @@ void fn_1_7884(unkStruct7* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_7908(unkStruct7* arg0, Vec* arg1, s32 arg2) {
|
||||
void fn_1_7908(unkStruct7 *arg0, Vec *arg1, s32 arg2)
|
||||
{
|
||||
arg0->unk38 = *arg1;
|
||||
arg0->unk2C = arg0->unk20;
|
||||
arg0->unk4C = 0.0f;
|
||||
|
|
@ -171,7 +177,8 @@ void fn_1_7908(unkStruct7* arg0, Vec* arg1, s32 arg2) {
|
|||
arg0->field00_bit1 = 1;
|
||||
}
|
||||
|
||||
void fn_1_799C(unkStruct7* arg0) {
|
||||
void fn_1_799C(unkStruct7 *arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
|
||||
if (arg0->unk8 == 0) {
|
||||
|
|
@ -183,7 +190,8 @@ void fn_1_799C(unkStruct7* arg0) {
|
|||
arg0->field00_bit3 = 1;
|
||||
}
|
||||
|
||||
void fn_1_7A38(unkStruct7* arg0) {
|
||||
void fn_1_7A38(unkStruct7 *arg0)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
if (arg0->unk8 == 0) {
|
||||
|
|
@ -194,7 +202,8 @@ void fn_1_7A38(unkStruct7* arg0) {
|
|||
arg0->field00_bit3 = 0;
|
||||
}
|
||||
|
||||
void fn_1_7AB4(unkStruct7* arg0) {
|
||||
void fn_1_7AB4(unkStruct7 *arg0)
|
||||
{
|
||||
f32 var_f31;
|
||||
s32 temp_r29;
|
||||
s32 var_r30;
|
||||
|
|
@ -208,10 +217,11 @@ void fn_1_7AB4(unkStruct7* arg0) {
|
|||
Hu3DModelScaleSet(arg0->unkC[temp_r29], arg0->unk44, arg0->unk44, arg0->unk44);
|
||||
if (arg0->field00_bit2 != 0) {
|
||||
var_f31 = 180.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 0.0f;
|
||||
}
|
||||
Hu3DModelRotSet(arg0->unkC[temp_r29], 0.0f, var_f31, 0.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ unkStruct5* fn_1_3064(void) {
|
|||
s32 var_r30;
|
||||
unkStruct5* temp_r3;
|
||||
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10, 0x10000000);
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x10, MEMORY_DEFAULT_NUM);
|
||||
if (!temp_r3) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -184,4 +184,4 @@ void fn_1_38E0(u32 arg0) {
|
|||
|
||||
s32 fn_1_38F0(void) {
|
||||
return ((lbl_1_bss_20 = (lbl_1_bss_20 * 0x41C64E6D) + 0x3039) >> 16) % 32768;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@ unkStruct* m446FlowCreate(void) {
|
|||
s32 var_r30;
|
||||
unkStruct* temp_r3;
|
||||
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x9C, 0x10000000);
|
||||
temp_r3 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x9C, MEMORY_DEFAULT_NUM);
|
||||
if (temp_r3 == 0) {
|
||||
OSReport("[!] m446FlowCreate() ERROR...\n");
|
||||
return NULL;
|
||||
|
|
@ -635,9 +635,9 @@ s32 fn_1_1970(s16 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
|||
}
|
||||
|
||||
static const s32 lbl_1_rodata_18[12] = {
|
||||
0x180003, 0x180004, 0x180005, 0x180006,
|
||||
0x180007, 0x180008, 0x180009, 0x18000A,
|
||||
0x18000B, 0x18000C, 0x18000D, 0
|
||||
MAKE_MESSID(0x18, 0x03), MAKE_MESSID(0x18, 0x04), MAKE_MESSID(0x18, 0x05), MAKE_MESSID(0x18, 0x06),
|
||||
MAKE_MESSID(0x18, 0x07), MAKE_MESSID(0x18, 0x08), MAKE_MESSID(0x18, 0x09), MAKE_MESSID(0x18, 0x0A),
|
||||
MAKE_MESSID(0x18, 0x0B), MAKE_MESSID(0x18, 0x0C), MAKE_MESSID(0x18, 0x0D), 0
|
||||
};
|
||||
|
||||
void fn_1_19D4(void) {
|
||||
|
|
@ -652,11 +652,11 @@ void fn_1_19D4(void) {
|
|||
HuWinBGTPLvlSet(temp_r3, 0.8f);
|
||||
HuWinMesSpeedSet(temp_r3, 1);
|
||||
HuWinMesColSet(temp_r3, 0);
|
||||
HuWinMesSet(temp_r3, 0x180001);
|
||||
HuWinMesSet(temp_r3, MAKE_MESSID(0x18, 0x01));
|
||||
fn_1_18EC(temp_r3, 0x3C);
|
||||
if (lbl_1_bss_10 < 2) {
|
||||
HuWinMesColSet(temp_r3, 0);
|
||||
HuWinMesSet(temp_r3, 0x180002);
|
||||
HuWinMesSet(temp_r3, MAKE_MESSID(0x18, 0x02));
|
||||
var_r30 = fn_1_1970(temp_r3, 0, 1, 0x3C);
|
||||
} else {
|
||||
var_r30 = 1;
|
||||
|
|
@ -670,7 +670,7 @@ void fn_1_19D4(void) {
|
|||
}
|
||||
} else {
|
||||
HuWinMesColSet(temp_r3, 0);
|
||||
HuWinMesSet(temp_r3, 0x18000D);
|
||||
HuWinMesSet(temp_r3, MAKE_MESSID(0x18, 0x0D));
|
||||
fn_1_18EC(temp_r3, 0x3C);
|
||||
}
|
||||
HuWinExAnimOut(temp_r3);
|
||||
|
|
|
|||
|
|
@ -1,48 +1,102 @@
|
|||
#include "REL/m446Dll.h"
|
||||
|
||||
#include "math.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/pad.h"
|
||||
#include "math.h"
|
||||
|
||||
// cursor.c
|
||||
extern unkStruct7 *m446CursorCreate(s32);
|
||||
extern void fn_1_76E8(unkStruct7*);
|
||||
extern void fn_1_77C8(unkStruct7*, u8);
|
||||
extern void fn_1_76E8(unkStruct7 *);
|
||||
extern void fn_1_77C8(unkStruct7 *, u8);
|
||||
|
||||
// bss
|
||||
unkStruct3 *lbl_1_bss_30;
|
||||
|
||||
// data
|
||||
s32 lbl_1_data_228[9] = {
|
||||
0x4D000A, 0x4D000B, 0x4D000C,
|
||||
0x4D000D, 0x4D000E, 0x4D000F,
|
||||
0x4D0010, 0x4D0011, 0x4D0021
|
||||
DATA_MAKE_NUM(DATADIR_M446, 10),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 11),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 12),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 13),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 14),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 15),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 16),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 17),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 33),
|
||||
};
|
||||
s32 lbl_1_data_24C[9][4] = {
|
||||
{ 0x5F0000, 0x5F0036, 0x5F0017, 0x5F0072 },
|
||||
{ 0x1A0000, 0x1A0036, 0x1A0017, 0x1A0072 },
|
||||
{ 0x6D0000, 0x6D0036, 0x6D0017, 0x6D0072 },
|
||||
{ 0x8A0000, 0x8A0036, 0x8A0017, 0x8A0072 },
|
||||
{ 0x850000, 0x850036, 0x850017, 0x850072 },
|
||||
{ 0x110000, 0x110036, 0x110017, 0x110072 },
|
||||
{ 0x0D0000, 0x0D0036, 0x0D0017, 0x0D0072 },
|
||||
{ 0x810000, 0x810036, 0x810017, 0x810072 },
|
||||
{ 0x4D0022, 0x4D0023, 0x4D0025, 0x4D0024 }
|
||||
};
|
||||
m446Func8 lbl_1_data_2DC[5] = {NULL, fn_1_5B48, fn_1_5C24, fn_1_5D00, fn_1_6074};
|
||||
|
||||
s32 fn_1_480C(void) {
|
||||
s32 lbl_1_data_24C[9][4] = {
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 54),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 23),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 114),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_M446, 0x22),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 0x23),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 0x25),
|
||||
DATA_MAKE_NUM(DATADIR_M446, 0x24),
|
||||
},
|
||||
};
|
||||
m446Func8 lbl_1_data_2DC[5] = { NULL, fn_1_5B48, fn_1_5C24, fn_1_5D00, fn_1_6074 };
|
||||
|
||||
s32 fn_1_480C(void)
|
||||
{
|
||||
lbl_1_bss_30 = 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_4824(void) {
|
||||
unkStruct3* var_r31;
|
||||
void* var_r30;
|
||||
void fn_1_4824(void)
|
||||
{
|
||||
unkStruct3 *var_r31;
|
||||
void *var_r30;
|
||||
|
||||
var_r31 = lbl_1_bss_30;
|
||||
if (var_r31) {
|
||||
|
|
@ -54,10 +108,11 @@ void fn_1_4824(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_487C(void) {
|
||||
void fn_1_487C(void)
|
||||
{
|
||||
f32 temp_f31;
|
||||
unkStruct8* temp_r31;
|
||||
unkStruct3* var_r30;
|
||||
unkStruct8 *temp_r31;
|
||||
unkStruct3 *var_r30;
|
||||
|
||||
var_r30 = lbl_1_bss_30;
|
||||
if (var_r30) {
|
||||
|
|
@ -100,43 +155,48 @@ void fn_1_487C(void) {
|
|||
}
|
||||
}
|
||||
|
||||
unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
||||
unkStruct8 *m446PlayerCreate(s32 arg0, unkStruct6 *arg1)
|
||||
{
|
||||
f32 var_f31;
|
||||
s32 var_r27;
|
||||
s32 var_r26;
|
||||
s16 var_r25;
|
||||
s16 var_r24;
|
||||
unkStruct3* var_r28;
|
||||
unkStruct3 *var_r28;
|
||||
s32 var_r30;
|
||||
unkStruct8* var_r31;
|
||||
unkStruct8 *var_r31;
|
||||
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xCC, 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xCC, MEMORY_DEFAULT_NUM);
|
||||
if (!var_r31) {
|
||||
return NULL;
|
||||
}
|
||||
var_r31->unk0 = arg0;
|
||||
if (GWPlayerCfg[arg0].iscom != 0) {
|
||||
var_r27 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r27 = 0;
|
||||
}
|
||||
var_r31->unk68 = var_r27;
|
||||
var_r31->unk4 = arg1;
|
||||
if (GWPlayerCfg[arg0].character == 0xB) {
|
||||
var_r26 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = 0;
|
||||
}
|
||||
var_r31->unk70 = var_r26;
|
||||
if (var_r31->unk70 != 0) {
|
||||
var_r25 = 8;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r25 = GWPlayerCfg[arg0].character;
|
||||
}
|
||||
var_r31->unk64 = var_r25;
|
||||
if (var_r31->unk68 != 0) {
|
||||
var_r24 = 4;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r24 = GWPlayerCfg[arg0].pad_idx;
|
||||
}
|
||||
var_r31->unk66 = var_r24;
|
||||
|
|
@ -147,7 +207,8 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
var_r31->unk48.x = 0.0f;
|
||||
if (var_r31->unk70 != 0) {
|
||||
var_f31 = 70.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 0.0f;
|
||||
}
|
||||
var_r31->unk48.y = var_f31;
|
||||
|
|
@ -163,7 +224,7 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
var_r31->unk1C = 0;
|
||||
var_r31->unk98 = 0;
|
||||
var_r31->unkB4 = 0;
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
var_r31->unk2C[var_r30] = NULL;
|
||||
}
|
||||
|
|
@ -174,19 +235,20 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
}
|
||||
fn_1_7884(var_r31->unk8);
|
||||
switch (var_r31->unk0) {
|
||||
case 0:
|
||||
var_r31->unk48.z = 150.0f;
|
||||
var_r31->unk54.y = 180.0f;
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk48.z = -150.0f;
|
||||
var_r31->unk54.y = 0.0f;
|
||||
break;
|
||||
case 0:
|
||||
var_r31->unk48.z = 150.0f;
|
||||
var_r31->unk54.y = 180.0f;
|
||||
break;
|
||||
case 1:
|
||||
var_r31->unk48.z = -150.0f;
|
||||
var_r31->unk54.y = 0.0f;
|
||||
break;
|
||||
}
|
||||
if (var_r31->unk70 != 0) {
|
||||
var_r31->unk3C[0] = Hu3DModelCreateFile(0x4D0020);
|
||||
var_r31->unk3C[1] = Hu3DModelCreateFile(0x4D0021);
|
||||
} else {
|
||||
var_r31->unk3C[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M446, 0x20));
|
||||
var_r31->unk3C[1] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M446, 0x21));
|
||||
}
|
||||
else {
|
||||
var_r31->unk3C[0] = CharModelCreate(var_r31->unk64, 2);
|
||||
var_r31->unk3C[1] = Hu3DModelCreateFile(lbl_1_data_228[var_r31->unk64]);
|
||||
}
|
||||
|
|
@ -199,11 +261,12 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
Hu3DModelAttrSet(var_r31->unk3C[1], 1);
|
||||
Hu3DModelPosSet(var_r31->unk3C[1], 2000.0f, 2000.0f, 2000.0f);
|
||||
fn_1_637C(var_r31, 0);
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 4; var_r30++) {
|
||||
if (var_r31->unk70 != 0) {
|
||||
var_r31->unk40[var_r30] = Hu3DJointMotionFile(var_r31->unk3C[0], lbl_1_data_24C[var_r31->unk64][var_r30]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31->unk40[var_r30] = CharModelMotionCreate(var_r31->unk64, lbl_1_data_24C[var_r31->unk64][var_r30]);
|
||||
}
|
||||
}
|
||||
|
|
@ -212,7 +275,8 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
}
|
||||
if (var_r31->unk70 != 0) {
|
||||
Hu3DMotionSet(var_r31->unk3C[0], var_r31->unk40[0]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionSet(var_r31->unk64, var_r31->unk40[0]);
|
||||
}
|
||||
Hu3DModelAttrSet(var_r31->unk3C[0], 0x40000001);
|
||||
|
|
@ -224,18 +288,20 @@ unkStruct8* m446PlayerCreate(s32 arg0, unkStruct6* arg1) {
|
|||
}
|
||||
if (lbl_1_bss_30) {
|
||||
fn_1_1EC8(lbl_1_bss_30, var_r28);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_30 = var_r28;
|
||||
}
|
||||
return var_r31;
|
||||
}
|
||||
|
||||
void fn_1_509C(unkStruct8* arg0) {
|
||||
void fn_1_509C(unkStruct8 *arg0)
|
||||
{
|
||||
s32 var_r29;
|
||||
unkStruct3* var_r30;
|
||||
unkStruct3 *var_r30;
|
||||
|
||||
var_r30 = lbl_1_bss_30;
|
||||
|
||||
|
||||
do {
|
||||
if (arg0 == var_r30->unk0) {
|
||||
if (var_r30 == lbl_1_bss_30) {
|
||||
|
|
@ -243,18 +309,20 @@ void fn_1_509C(unkStruct8* arg0) {
|
|||
}
|
||||
fn_1_1F04(var_r30);
|
||||
fn_1_1E5C(var_r30);
|
||||
|
||||
|
||||
for (var_r29 = 0; var_r29 < 4; var_r29++) {
|
||||
if (arg0->unk70 != 0) {
|
||||
Hu3DMotionKill(arg0->unk40[var_r29]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionKill(arg0->unk64, arg0->unk40[var_r29]);
|
||||
}
|
||||
}
|
||||
if (arg0->unk70 != 0) {
|
||||
Hu3DModelKill(arg0->unk3C[0]);
|
||||
Hu3DModelKill(arg0->unk3C[1]);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelKill(arg0->unk64);
|
||||
Hu3DModelKill(arg0->unk3C[1]);
|
||||
}
|
||||
|
|
@ -266,7 +334,8 @@ void fn_1_509C(unkStruct8* arg0) {
|
|||
} while (var_r30);
|
||||
}
|
||||
|
||||
s32 m446PlayerAppendCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
||||
s32 m446PlayerAppendCard(unkStruct8 *arg0, unkStruct4 *arg1, s32 arg2)
|
||||
{
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
s32 temp_r0_2;
|
||||
|
|
@ -278,13 +347,13 @@ s32 m446PlayerAppendCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
OSReport("m446PlayerAppendCard ERROR...\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
for (var_r29 = 0; var_r29 < 3; var_r29++) {
|
||||
if (!arg0->unk2C[var_r29]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (var_r29 == 3) {
|
||||
OSReport("m446PlayerAppendCard ERROR...\n");
|
||||
return 0;
|
||||
|
|
@ -302,15 +371,15 @@ s32 m446PlayerAppendCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
sp18.z = -45.0f;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
spC = arg1->unk34;
|
||||
switch (arg0->unk0) {
|
||||
case 0:
|
||||
spC.y = 0.0f;
|
||||
break;
|
||||
case 1:
|
||||
spC.y = 180.0f;
|
||||
break;
|
||||
case 0:
|
||||
spC.y = 0.0f;
|
||||
break;
|
||||
case 1:
|
||||
spC.y = 180.0f;
|
||||
break;
|
||||
}
|
||||
switch (arg2) {
|
||||
case 0:
|
||||
|
|
@ -336,14 +405,16 @@ s32 m446PlayerAppendCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
if ((arg0->unk24 != 0) && (temp_r28 == 0)) {
|
||||
HuAudFXPlay(0x76B);
|
||||
fn_1_64BC(arg0, 1, 0x3C);
|
||||
} else if ((arg0->unk20 != 0) && (temp_r27 == 0)) {
|
||||
}
|
||||
else if ((arg0->unk20 != 0) && (temp_r27 == 0)) {
|
||||
HuAudFXPlay(0x76B);
|
||||
fn_1_64BC(arg0, 0, 0x3C);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
s32 m446PlayerRemoveCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
||||
s32 m446PlayerRemoveCard(unkStruct8 *arg0, unkStruct4 *arg1, s32 arg2)
|
||||
{
|
||||
Vec spC;
|
||||
s32 var_r30;
|
||||
|
||||
|
|
@ -351,7 +422,7 @@ s32 m446PlayerRemoveCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
OSReport("m446PlayerRemoveCard ERROR...\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
if (arg0->unk2C[var_r30] == arg1) {
|
||||
break;
|
||||
|
|
@ -377,7 +448,8 @@ s32 m446PlayerRemoveCard(unkStruct8* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
s32 fn_1_5648(unkStruct8* arg0, s32 arg1, unkStruct4** arg2) {
|
||||
s32 fn_1_5648(unkStruct8 *arg0, s32 arg1, unkStruct4 **arg2)
|
||||
{
|
||||
if ((arg1 < 0) || (arg1 >= 3)) {
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -385,7 +457,8 @@ s32 fn_1_5648(unkStruct8* arg0, s32 arg1, unkStruct4** arg2) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
||||
s32 fn_1_5678(unkStruct8 *arg0, unkStruct4 **arg1, s32 arg2)
|
||||
{
|
||||
s32 sp14[3];
|
||||
Vec sp8;
|
||||
s32 var_r28;
|
||||
|
|
@ -394,7 +467,7 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
s32 var_r24;
|
||||
s32 var_r27;
|
||||
s32 var_r26;
|
||||
unkStruct4* var_r29;
|
||||
unkStruct4 *var_r29;
|
||||
|
||||
var_r27 = 0;
|
||||
var_r26 = 0;
|
||||
|
|
@ -412,14 +485,15 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
var_r29 = arg0->unk2C[var_r30];
|
||||
if (var_r29->unk0 != arg0->unk28) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var_r24 = fn_1_4720(arg0->unk4, var_r29->unk0);
|
||||
if (var_r24 >= 2) {
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
|
|
@ -429,11 +503,13 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk74 = (fn_1_38F0() % 3);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
var_r29 = arg0->unk2C[var_r30];
|
||||
sp14[var_r30] = fn_1_4720(arg0->unk4, var_r29->unk0);
|
||||
|
|
@ -450,7 +526,8 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
}
|
||||
if (var_r28 == 5) {
|
||||
arg0->unk74 = (fn_1_38F0() % 3);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk74 = var_r30;
|
||||
}
|
||||
}
|
||||
|
|
@ -459,22 +536,24 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
}
|
||||
if (arg0->unk7C > 0) {
|
||||
arg0->unk7C--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r27 = arg0->unk74 < arg0->unk10;
|
||||
var_r26 = arg0->unk74 > arg0->unk10;
|
||||
var_r25 = arg0->unk74 == arg0->unk10;
|
||||
arg0->unk7C = 0x12;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
switch (arg0->unk0) {
|
||||
case 0:
|
||||
var_r27 = (HuPadDStkRep[arg0->unk66] & 1) != 0;
|
||||
var_r26 = (HuPadDStkRep[arg0->unk66] & 2) != 0;
|
||||
break;
|
||||
case 1:
|
||||
var_r27 = (HuPadDStkRep[arg0->unk66] & 2) != 0;
|
||||
var_r26 = (HuPadDStkRep[arg0->unk66] & 1) != 0;
|
||||
break;
|
||||
case 0:
|
||||
var_r27 = (HuPadDStkRep[arg0->unk66] & 1) != 0;
|
||||
var_r26 = (HuPadDStkRep[arg0->unk66] & 2) != 0;
|
||||
break;
|
||||
case 1:
|
||||
var_r27 = (HuPadDStkRep[arg0->unk66] & 2) != 0;
|
||||
var_r26 = (HuPadDStkRep[arg0->unk66] & 1) != 0;
|
||||
break;
|
||||
}
|
||||
var_r25 = (HuPadBtnDown[arg0->unk66] & 0x100) != 0;
|
||||
}
|
||||
|
|
@ -513,19 +592,22 @@ s32 fn_1_5678(unkStruct8* arg0, unkStruct4** arg1, s32 arg2) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
void fn_1_5B34(unkStruct8* arg0) {
|
||||
void fn_1_5B34(unkStruct8 *arg0)
|
||||
{
|
||||
arg0->unk18 = 1;
|
||||
arg0->unk1C = 0;
|
||||
}
|
||||
|
||||
static const s32 lbl_1_rodata_1C8[4] = {0, 1, 2, 3};
|
||||
static const s32 lbl_1_rodata_1C8[4] = { 0, 1, 2, 3 };
|
||||
|
||||
void fn_1_5B48(unkStruct8* arg0) {
|
||||
void fn_1_5B48(unkStruct8 *arg0)
|
||||
{
|
||||
switch (arg0->unk1C) {
|
||||
case 0:
|
||||
if (arg0->unk70 != 0) {
|
||||
Hu3DMotionShiftSet(arg0->unk3C[0], arg0->unk40[2], 0.0f, 10.0f, 0);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionShiftSet(arg0->unk64, arg0->unk40[2], 0.0f, 10.0f, 0);
|
||||
}
|
||||
arg0->unk1C = 1;
|
||||
|
|
@ -537,17 +619,20 @@ void fn_1_5B48(unkStruct8* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5C10(unkStruct8* arg0) {
|
||||
void fn_1_5C10(unkStruct8 *arg0)
|
||||
{
|
||||
arg0->unk18 = 2;
|
||||
arg0->unk1C = 0;
|
||||
}
|
||||
|
||||
void fn_1_5C24(unkStruct8* arg0) {
|
||||
void fn_1_5C24(unkStruct8 *arg0)
|
||||
{
|
||||
switch (arg0->unk1C) {
|
||||
case 0:
|
||||
if (arg0->unk70 != 0) {
|
||||
Hu3DMotionShiftSet(arg0->unk3C[0], arg0->unk40[3], 0.0f, 10.0f, 0);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionShiftSet(arg0->unk64, arg0->unk40[3], 0.0f, 10.0f, 0);
|
||||
}
|
||||
arg0->unk1C = 1;
|
||||
|
|
@ -559,12 +644,14 @@ void fn_1_5C24(unkStruct8* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5CEC(unkStruct8* arg0) {
|
||||
void fn_1_5CEC(unkStruct8 *arg0)
|
||||
{
|
||||
arg0->unk18 = 3;
|
||||
arg0->unk1C = 0;
|
||||
}
|
||||
|
||||
void fn_1_5D00(unkStruct8* arg0) {
|
||||
void fn_1_5D00(unkStruct8 *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
|
||||
sp8 = arg0->unk54;
|
||||
|
|
@ -573,7 +660,8 @@ void fn_1_5D00(unkStruct8* arg0) {
|
|||
Hu3DModelAmbSet(arg0->unk3C[0], 0.8f, 0.8f, 0.8f);
|
||||
if (arg0->unk70 != 0) {
|
||||
Hu3DMotionShiftSet(arg0->unk3C[0], arg0->unk40[1], 0.0f, 10.0f, 0U);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
CharModelMotionShiftSet(arg0->unk64, arg0->unk40[1], 0.0f, 10.0f, 0x40000001U);
|
||||
Hu3DMotionStartEndSet(arg0->unk3C[0], 0.0f, 59.0f);
|
||||
}
|
||||
|
|
@ -589,7 +677,8 @@ void fn_1_5D00(unkStruct8* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5E54(unkStruct8* arg0, s32 arg1) {
|
||||
void fn_1_5E54(unkStruct8 *arg0, s32 arg1)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
f32 var_f31;
|
||||
|
|
@ -598,11 +687,12 @@ void fn_1_5E54(unkStruct8* arg0, s32 arg1) {
|
|||
|
||||
if (arg0->unk70 != 0) {
|
||||
var_f31 = 95.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 80.0f;
|
||||
}
|
||||
sp14.y = var_f31;
|
||||
|
||||
|
||||
switch (arg0->unk0) {
|
||||
case 0:
|
||||
sp14.x = -30.0f + (30.0f * arg1);
|
||||
|
|
@ -615,14 +705,16 @@ void fn_1_5E54(unkStruct8* arg0, s32 arg1) {
|
|||
sp14.x = 30.0f - (30.0f * arg1);
|
||||
if (arg0->unk70 != 0) {
|
||||
var_f30 = 30.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f30 = 55.0f;
|
||||
}
|
||||
sp14.z = -50.0f - var_f30;
|
||||
sp8.x = 0.0f;
|
||||
if (arg0->unk70 != 0) {
|
||||
var_f29 = 180.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f29 = -90.0f;
|
||||
}
|
||||
sp8.y = var_f29;
|
||||
|
|
@ -635,11 +727,12 @@ void fn_1_5E54(unkStruct8* arg0, s32 arg1) {
|
|||
arg0->unk1C = 0;
|
||||
}
|
||||
|
||||
void fn_1_6074(unkStruct8* arg0) {
|
||||
void fn_1_6074(unkStruct8 *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
f32 var_f31;
|
||||
f32 var_f30;
|
||||
|
||||
|
||||
switch (arg0->unk1C) {
|
||||
case 0:
|
||||
arg0->unk1C = 1;
|
||||
|
|
@ -648,7 +741,8 @@ void fn_1_6074(unkStruct8* arg0) {
|
|||
sp8 = arg0->unk48;
|
||||
if (arg0->unk0 == 0) {
|
||||
var_f31 = -25.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 25.0f;
|
||||
}
|
||||
sp8.z += var_f31;
|
||||
|
|
@ -658,7 +752,8 @@ void fn_1_6074(unkStruct8* arg0) {
|
|||
arg0->unk14 = 0;
|
||||
break;
|
||||
case 2:
|
||||
if (arg0->unk14++ < 0x1E) break;
|
||||
if (arg0->unk14++ < 0x1E)
|
||||
break;
|
||||
arg0->unk1C = 3;
|
||||
case 3:
|
||||
Hu3DModelAttrSet(arg0->unk3C[1], 0x40000001);
|
||||
|
|
@ -669,13 +764,15 @@ void fn_1_6074(unkStruct8* arg0) {
|
|||
if (arg0->unk14 == 1) {
|
||||
Hu3DModelAttrReset(arg0->unk3C[1], 0x40000001);
|
||||
}
|
||||
if (arg0->unk14++ < 0x1E) break;
|
||||
if (arg0->unk14++ < 0x1E)
|
||||
break;
|
||||
arg0->unk1C = 5;
|
||||
case 5:
|
||||
sp8 = arg0->unk48;
|
||||
if (arg0->unk0 == 0) {
|
||||
var_f30 = -50.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f30 = 50.0f;
|
||||
}
|
||||
sp8.z -= var_f30;
|
||||
|
|
@ -691,7 +788,8 @@ void fn_1_6074(unkStruct8* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_6264(unkStruct8* arg0, Vec* arg1, s32 arg2) {
|
||||
void fn_1_6264(unkStruct8 *arg0, Vec *arg1, s32 arg2)
|
||||
{
|
||||
arg0->unk8C = *arg1;
|
||||
arg0->unk80 = arg0->unk54;
|
||||
arg0->unkB8 = 0.0f;
|
||||
|
|
@ -699,7 +797,8 @@ void fn_1_6264(unkStruct8* arg0, Vec* arg1, s32 arg2) {
|
|||
arg0->unk98 = 1;
|
||||
}
|
||||
|
||||
void fn_1_62F0(unkStruct8* arg0, Vec* arg1, s32 arg2) {
|
||||
void fn_1_62F0(unkStruct8 *arg0, Vec *arg1, s32 arg2)
|
||||
{
|
||||
arg0->unkA8 = *arg1;
|
||||
arg0->unk9C = arg0->unk48;
|
||||
arg0->unkC0 = 0.0f;
|
||||
|
|
@ -707,7 +806,8 @@ void fn_1_62F0(unkStruct8* arg0, Vec* arg1, s32 arg2) {
|
|||
arg0->unkB4 = 1;
|
||||
}
|
||||
|
||||
void fn_1_637C(unkStruct8* arg0, s32 arg1) {
|
||||
void fn_1_637C(unkStruct8 *arg0, s32 arg1)
|
||||
{
|
||||
f32 var_f31;
|
||||
|
||||
arg0->unkC8 = arg1;
|
||||
|
|
@ -719,7 +819,8 @@ void fn_1_637C(unkStruct8* arg0, s32 arg1) {
|
|||
arg0->unk48.x = 0.0f;
|
||||
if (arg0->unk70 != 0) {
|
||||
var_f31 = 70.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 0.0f;
|
||||
}
|
||||
arg0->unk48.y = var_f31;
|
||||
|
|
@ -732,8 +833,8 @@ void fn_1_637C(unkStruct8* arg0, s32 arg1) {
|
|||
arg0->unk48.z = -150.0f;
|
||||
arg0->unk54.y = 0.0f;
|
||||
return;
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
Hu3DModelAttrReset(arg0->unk3C[1], 1);
|
||||
Hu3DModelAttrSet(arg0->unk3C[0], 1);
|
||||
|
|
@ -741,31 +842,35 @@ void fn_1_637C(unkStruct8* arg0, s32 arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_64BC(unkStruct8* arg0, s32 arg1, s32 arg2) {
|
||||
void fn_1_64BC(unkStruct8 *arg0, s32 arg1, s32 arg2)
|
||||
{
|
||||
if (arg0->unk70 == 0) {
|
||||
switch (arg1) {
|
||||
case 0:
|
||||
omVibrate(arg0->unk0, arg2, 6, 6);
|
||||
return;
|
||||
case 1:
|
||||
omVibrate(arg0->unk0, arg2, 4, 2);
|
||||
return;
|
||||
case 2:
|
||||
omVibrate(arg0->unk0, arg2, 12, 0);
|
||||
break;
|
||||
case 0:
|
||||
omVibrate(arg0->unk0, arg2, 6, 6);
|
||||
return;
|
||||
case 1:
|
||||
omVibrate(arg0->unk0, arg2, 4, 2);
|
||||
return;
|
||||
case 2:
|
||||
omVibrate(arg0->unk0, arg2, 12, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static inline unkStruct8UnkC8(unkStruct8* arg0) {
|
||||
static inline unkStruct8UnkC8(unkStruct8 *arg0)
|
||||
{
|
||||
if (arg0->unkC8 == 0) {
|
||||
return 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_6578(unkStruct8* arg0) {
|
||||
void fn_1_6578(unkStruct8 *arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
|
||||
var_r30 = unkStruct8UnkC8(arg0);
|
||||
|
|
@ -774,16 +879,17 @@ void fn_1_6578(unkStruct8* arg0) {
|
|||
Hu3DModelScaleSet(arg0->unk3C[var_r30], arg0->unk60, arg0->unk60, arg0->unk60);
|
||||
}
|
||||
|
||||
void fn_1_6620(unkStruct8* arg0) {
|
||||
void fn_1_6620(unkStruct8 *arg0)
|
||||
{
|
||||
s32 var_r26;
|
||||
unkStruct4* temp_r27;
|
||||
unkStruct4* temp_r30;
|
||||
unkStruct4 *temp_r27;
|
||||
unkStruct4 *temp_r30;
|
||||
s32 var_r29;
|
||||
s32 var_r28;
|
||||
|
||||
arg0->unk20 = 0;
|
||||
arg0->unk24 = 0;
|
||||
|
||||
|
||||
for (var_r29 = 0; var_r29 < 3; var_r29++) {
|
||||
temp_r30 = arg0->unk2C[var_r29];
|
||||
if (temp_r30) {
|
||||
|
|
@ -794,7 +900,7 @@ void fn_1_6620(unkStruct8* arg0) {
|
|||
var_r26 = 0;
|
||||
temp_r30 = arg0->unk2C[var_r29];
|
||||
if (temp_r30) {
|
||||
|
||||
|
||||
for (var_r28 = 0; var_r28 < 3; var_r28++) {
|
||||
temp_r27 = arg0->unk2C[var_r28];
|
||||
if ((var_r29 != var_r28) && (temp_r27) && (temp_r30->unk0 == temp_r27->unk0)) {
|
||||
|
|
@ -805,10 +911,11 @@ void fn_1_6620(unkStruct8* arg0) {
|
|||
arg0->unk28 = temp_r30->unk0;
|
||||
if (var_r26 == 1) {
|
||||
arg0->unk20 = 1;
|
||||
} else if (var_r26 == 2) {
|
||||
}
|
||||
else if (var_r26 == 2) {
|
||||
arg0->unk24 = 1;
|
||||
}
|
||||
|
||||
|
||||
for (var_r28 = 0; var_r28 < 3; var_r28++) {
|
||||
temp_r27 = arg0->unk2C[var_r28];
|
||||
if ((temp_r27) && (temp_r30->unk0 == temp_r27->unk0)) {
|
||||
|
|
@ -819,4 +926,4 @@ void fn_1_6620(unkStruct8* arg0) {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@ unkStruct9* m446StageCreate(void) {
|
|||
unkStruct3* temp_ret;
|
||||
unkStruct9* var_r31;
|
||||
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x30, 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x30, MEMORY_DEFAULT_NUM);
|
||||
if (!var_r31) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
@ -208,4 +208,4 @@ void fn_1_852C(unkStruct9* arg0) {
|
|||
|
||||
void fn_1_860C(unkStruct9* arg0) {
|
||||
arg0->unk28 = 1;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,16 +3,18 @@
|
|||
#include "game/pad.h"
|
||||
|
||||
// bss
|
||||
unkStruct3* lbl_1_bss_28;
|
||||
unkStruct3 *lbl_1_bss_28;
|
||||
|
||||
s32 fn_1_3924(void) {
|
||||
s32 fn_1_3924(void)
|
||||
{
|
||||
lbl_1_bss_28 = NULL;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_393C(void) {
|
||||
unkStruct3* var_r31;
|
||||
unkStruct6* var_r30;
|
||||
void fn_1_393C(void)
|
||||
{
|
||||
unkStruct3 *var_r31;
|
||||
unkStruct6 *var_r30;
|
||||
|
||||
var_r31 = lbl_1_bss_28;
|
||||
if (var_r31) {
|
||||
|
|
@ -24,9 +26,10 @@ void fn_1_393C(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_3994(void) {
|
||||
unkStruct4* sp8;
|
||||
unkStruct3* var_r31;
|
||||
void fn_1_3994(void)
|
||||
{
|
||||
unkStruct4 *sp8;
|
||||
unkStruct3 *var_r31;
|
||||
|
||||
var_r31 = lbl_1_bss_28;
|
||||
if (var_r31) {
|
||||
|
|
@ -37,16 +40,17 @@ void fn_1_3994(void) {
|
|||
}
|
||||
}
|
||||
|
||||
unkStruct6* fn_1_39D0(void) {
|
||||
unkStruct6 *fn_1_39D0(void)
|
||||
{
|
||||
s32 var_r30;
|
||||
unkStruct3* var_r29;
|
||||
unkStruct6* var_r31;
|
||||
unkStruct3 *var_r29;
|
||||
unkStruct6 *var_r31;
|
||||
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x70, 0x10000000);
|
||||
var_r31 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x70, MEMORY_DEFAULT_NUM);
|
||||
if (!var_r31) {
|
||||
return NULL;
|
||||
}
|
||||
var_r31->unk4 = Hu3DModelCreateFile(0x4D0005);
|
||||
var_r31->unk4 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M446, 0x05));
|
||||
Hu3DModelAmbSet(var_r31->unk4, 0.0f, 0.0f, 0.0f);
|
||||
Hu3DModelShadowMapSet(var_r31->unk4);
|
||||
Hu3DModelLayerSet(var_r31->unk4, 0);
|
||||
|
|
@ -55,7 +59,7 @@ unkStruct6* fn_1_39D0(void) {
|
|||
var_r31->unk60 = 10;
|
||||
var_r31->unk5C = 0;
|
||||
var_r31->unk6C = 0;
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 21; var_r30++) {
|
||||
var_r31->unk8[var_r30] = NULL;
|
||||
}
|
||||
|
|
@ -68,14 +72,16 @@ unkStruct6* fn_1_39D0(void) {
|
|||
}
|
||||
if (lbl_1_bss_28) {
|
||||
fn_1_1EC8(lbl_1_bss_28, var_r29);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_28 = var_r29;
|
||||
}
|
||||
return var_r31;
|
||||
}
|
||||
|
||||
void fn_1_3B4C(unkStruct6* arg0) {
|
||||
unkStruct3* var_r31;
|
||||
void fn_1_3B4C(unkStruct6 *arg0)
|
||||
{
|
||||
unkStruct3 *var_r31;
|
||||
|
||||
var_r31 = lbl_1_bss_28;
|
||||
do {
|
||||
|
|
@ -94,11 +100,12 @@ void fn_1_3B4C(unkStruct6* arg0) {
|
|||
} while (var_r31);
|
||||
}
|
||||
|
||||
s32 fn_1_3BF0(unkStruct6* arg0, unkStruct4* arg1, s32 arg2) {
|
||||
s32 fn_1_3BF0(unkStruct6 *arg0, unkStruct4 *arg1, s32 arg2)
|
||||
{
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
s32 temp_r29;
|
||||
|
||||
|
||||
if (arg0->unk5C >= 21) {
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -138,10 +145,11 @@ s32 fn_1_3BF0(unkStruct6* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
s32 fn_1_3EB4(unkStruct6* arg0, unkStruct4* arg1, s32 arg2) {
|
||||
s32 fn_1_3EB4(unkStruct6 *arg0, unkStruct4 *arg1, s32 arg2)
|
||||
{
|
||||
Vec spC;
|
||||
s32 var_r31;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 0x15; var_r31++) {
|
||||
if (arg0->unk8[var_r31] == arg1) {
|
||||
arg0->unk8[var_r31] = NULL;
|
||||
|
|
@ -165,7 +173,8 @@ s32 fn_1_3EB4(unkStruct6* arg0, unkStruct4* arg1, s32 arg2) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
s32 fn_1_3FD0(unkStruct6* arg0, s32 arg1, unkStruct4** arg2) {
|
||||
s32 fn_1_3FD0(unkStruct6 *arg0, s32 arg1, unkStruct4 **arg2)
|
||||
{
|
||||
if ((arg1 < 0) || (arg1 >= 0x15)) {
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -173,21 +182,24 @@ s32 fn_1_3FD0(unkStruct6* arg0, s32 arg1, unkStruct4** arg2) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_4000(unkStruct6* arg0, s32 arg1) {
|
||||
void fn_1_4000(unkStruct6 *arg0, s32 arg1)
|
||||
{
|
||||
s32 var_r31;
|
||||
unkStruct4* var_r30;
|
||||
unkStruct4 *var_r30;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 21; var_r31++) {
|
||||
if (arg1 != 0) {
|
||||
var_r30 = arg0->unk8[20 - var_r31];
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r30 = arg0->unk8[var_r31];
|
||||
}
|
||||
if ((var_r30) && (var_r30->unk64 == 0)) {
|
||||
if (arg1 != 0) {
|
||||
arg0->unk60 = (0x14 - var_r31);
|
||||
return;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk60 = var_r31;
|
||||
return;
|
||||
}
|
||||
|
|
@ -195,11 +207,12 @@ void fn_1_4000(unkStruct6* arg0, s32 arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s32 arg5) {
|
||||
s32 fn_1_4088(unkStruct6 *arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4 **arg4, s32 arg5)
|
||||
{
|
||||
Vec sp10;
|
||||
s32 var_r28;
|
||||
s32 var_r27;
|
||||
unkStruct4* temp_r26;
|
||||
unkStruct4 *temp_r26;
|
||||
s32 var_r25;
|
||||
s32 var_r24;
|
||||
s32 var_r23;
|
||||
|
|
@ -214,11 +227,13 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
*arg4 = NULL;
|
||||
if (arg2 >= 4) {
|
||||
if (arg0->unk6C == 0) {
|
||||
arg0->unk64 = (s32) (fn_1_38F0() % 21);
|
||||
arg0->unk64 = (s32)(fn_1_38F0() % 21);
|
||||
do {
|
||||
if (!(temp_r26 = arg0->unk8[arg0->unk64]) || temp_r26->unk64 != 0) {
|
||||
arg0->unk64 = ++arg0->unk64 % 21;
|
||||
} else break;
|
||||
}
|
||||
else
|
||||
break;
|
||||
(void)temp_r26;
|
||||
} while (TRUE);
|
||||
arg0->unk6C = 1;
|
||||
|
|
@ -226,7 +241,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
}
|
||||
if ((arg0->unk68 > 0) && (arg5 == 0)) {
|
||||
arg0->unk68 = (arg0->unk68 - 1);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r28 = (arg0->unk64 / 7) < (arg0->unk60 / 7);
|
||||
var_r27 = (arg0->unk64 / 7) > (arg0->unk60 / 7);
|
||||
if ((var_r28 == 0) && (var_r27 == 0)) {
|
||||
|
|
@ -236,7 +252,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
var_r23 = arg0->unk64 == arg0->unk60;
|
||||
arg0->unk68 = 0x12;
|
||||
}
|
||||
} else if (arg5 == 0) {
|
||||
}
|
||||
else if (arg5 == 0) {
|
||||
var_r25 = (HuPadDStkRep[arg2] & 1) != 0;
|
||||
var_r24 = (HuPadDStkRep[arg2] & 2) != 0;
|
||||
var_r28 = (HuPadDStkRep[arg2] & 8) != 0;
|
||||
|
|
@ -246,7 +263,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
if (var_r25 != 0) {
|
||||
if ((arg0->unk60 % 7) == 0) {
|
||||
arg0->unk60 = (arg0->unk60 + 6);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk60 = (arg0->unk60 - 1);
|
||||
}
|
||||
HuAudFXPlay(0);
|
||||
|
|
@ -254,7 +272,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
if (var_r24 != 0) {
|
||||
if ((arg0->unk60 % 7) == 6) {
|
||||
arg0->unk60 = (arg0->unk60 - 6);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk60 = (arg0->unk60 + 1);
|
||||
}
|
||||
HuAudFXPlay(0);
|
||||
|
|
@ -262,7 +281,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
if (var_r28 != 0) {
|
||||
if ((arg0->unk60 / 7) == 0) {
|
||||
arg0->unk60 = (arg0->unk60 + 0xE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk60 = (arg0->unk60 - 7);
|
||||
}
|
||||
HuAudFXPlay(0);
|
||||
|
|
@ -270,7 +290,8 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
if (var_r27 != 0) {
|
||||
if ((arg0->unk60 / 7) == 2) {
|
||||
arg0->unk60 = (arg0->unk60 - 0xE);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk60 = (arg0->unk60 + 7);
|
||||
}
|
||||
HuAudFXPlay(0);
|
||||
|
|
@ -295,36 +316,39 @@ s32 fn_1_4088(unkStruct6* arg0, u8 arg1, u8 arg2, s32 arg3, unkStruct4** arg4, s
|
|||
return 1;
|
||||
}
|
||||
HuAudFXPlay(4);
|
||||
} else {
|
||||
HuAudFXPlay(4);
|
||||
}
|
||||
else {
|
||||
HuAudFXPlay(4);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void fn_1_46AC(unkStruct6* arg0) {
|
||||
arg0->unk8[0] = (unkStruct4*)-1;
|
||||
arg0->unk8[6] = (unkStruct4*)-1;
|
||||
arg0->unk8[14] = (unkStruct4*)-1;
|
||||
arg0->unk8[20] = (unkStruct4*)-1;
|
||||
void fn_1_46AC(unkStruct6 *arg0)
|
||||
{
|
||||
arg0->unk8[0] = (unkStruct4 *)-1;
|
||||
arg0->unk8[6] = (unkStruct4 *)-1;
|
||||
arg0->unk8[14] = (unkStruct4 *)-1;
|
||||
arg0->unk8[20] = (unkStruct4 *)-1;
|
||||
}
|
||||
|
||||
void fn_1_46D0(unkStruct6* arg0) {
|
||||
void fn_1_46D0(unkStruct6 *arg0)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 21; var_r31++) {
|
||||
if (arg0->unk8[var_r31] == (unkStruct4*)-1) {
|
||||
if (arg0->unk8[var_r31] == (unkStruct4 *)-1) {
|
||||
arg0->unk8[var_r31] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_4720(unkStruct6* arg0, s32 arg1) {
|
||||
s32 fn_1_4720(unkStruct6 *arg0, s32 arg1)
|
||||
{
|
||||
s32 var_r29;
|
||||
s32 var_r30;
|
||||
unkStruct4* temp_r31;
|
||||
unkStruct4 *temp_r31;
|
||||
|
||||
|
||||
for (var_r29 = 0, var_r30 = 0; var_r30 < 21; var_r30++) {
|
||||
temp_r31 = arg0->unk8[var_r30];
|
||||
if ((temp_r31) && (temp_r31->unk64 == 0) && ((temp_r31->unk0 == arg1) || (arg1 == 5))) {
|
||||
|
|
@ -334,15 +358,15 @@ s32 fn_1_4720(unkStruct6* arg0, s32 arg1) {
|
|||
return var_r29;
|
||||
}
|
||||
|
||||
void fn_1_4798(unkStruct6* arg0) {
|
||||
unkStruct4* temp_r31;
|
||||
void fn_1_4798(unkStruct6 *arg0)
|
||||
{
|
||||
unkStruct4 *temp_r31;
|
||||
s32 var_r30;
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 0x15; var_r30++) {
|
||||
temp_r31 = arg0->unk8[var_r30];
|
||||
if (temp_r31 && (temp_r31->unk64 != 0)) {
|
||||
fn_1_2794(temp_r31);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,52 +1,52 @@
|
|||
#include "REL/mgmodedll.h"
|
||||
|
||||
DataListModel lbl_1_data_490[] = {
|
||||
{ 0x620000, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620001, 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620002, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620003, 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620004, 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x62005E, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x62005F, 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620060, 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620061, 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620005, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620006, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620007, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x620008, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x00), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x01), 0x40000001, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x02), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x03), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x04), 0, 1, -1, 2, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5E), 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x5F), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x60), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x61), 0, 1, -1, 5, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x08), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
};
|
||||
|
||||
DataListSprite lbl_1_data_768[] = {
|
||||
{ 0x62000C, 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ 0x620009, 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ 0x62000A, 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ 0x62000D, 4, 100, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620018, 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001A, 4, 20, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001B, 4, 30, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001C, 4, 40, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001D, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001E, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62001F, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620020, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620021, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620025, 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62000E, 4, 210, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62000F, 4, 210, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620019, 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620028, 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620028, 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62002A, 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62002E, 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x62002F, 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620032, 4, 5, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620031, 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620030, 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620029, 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620029, 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620033, 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x620034, 4, 50, 288, 256, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0C), 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x09), 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0A), 0, 10, 288, -200, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0D), 4, 100, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x18), 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1A), 4, 20, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1B), 4, 30, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1C), 4, 40, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1D), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1E), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x1F), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x20), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x21), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x25), 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0E), 4, 210, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x0F), 4, 210, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x19), 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x28), 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2A), 4, 10, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2E), 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x2F), 4, 200, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x32), 4, 5, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x31), 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x30), 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x29), 4, 4, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x33), 4, 50, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MGMODE, 0x34), 4, 50, 288, 256, { 255, 255, 255, 255 } },
|
||||
{ 0, 0, 0, 0, 0, { 0, 0, 0, 0 } },
|
||||
};
|
||||
|
||||
|
|
@ -128,4 +128,4 @@ void fn_1_26BB0(void)
|
|||
espKill(lbl_1_bss_2C2C[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1321,7 +1321,7 @@ void fn_1_6C18(void)
|
|||
HuSprInit();
|
||||
espInit();
|
||||
HuPrcVSleep();
|
||||
sprite = espEntry(0x860020, 5000, 0);
|
||||
sprite = espEntry(DATA_MAKE_NUM(DATADIR_WIN, 0x20), 5000, 0);
|
||||
espPosSet(sprite, 288.0, 240.0);
|
||||
espAttrReset(sprite, 4);
|
||||
Hu3DBGColorSet(0, 0, 0);
|
||||
|
|
@ -1337,4 +1337,4 @@ void fn_1_6C18(void)
|
|||
while(WipeStatGet()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,13 @@
|
|||
#include "REL/mgmodedll.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/gamework.h"
|
||||
#include "game/wipe.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/gamework.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/wipe.h"
|
||||
|
||||
#include "game/chrman.h"
|
||||
|
||||
#include "math.h"
|
||||
|
||||
|
||||
s16 lbl_1_bss_2C80[13];
|
||||
s16 lbl_1_bss_2C66[13];
|
||||
s16 lbl_1_bss_2C2C[29];
|
||||
|
|
@ -24,25 +23,25 @@ s16 lbl_1_bss_20AA;
|
|||
s16 lbl_1_bss_20A8;
|
||||
|
||||
s32 lbl_1_data_9C0[8] = {
|
||||
0x005F0000,
|
||||
0x001A0000,
|
||||
0x006D0000,
|
||||
0x008A0000,
|
||||
0x00850000,
|
||||
0x00110000,
|
||||
0x000D0000,
|
||||
0x00810000
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_9E0[8] = {
|
||||
0x005E0000,
|
||||
0x00190000,
|
||||
0x006C0000,
|
||||
0x00890000,
|
||||
0x00840000,
|
||||
0x00100000,
|
||||
0x000C0000,
|
||||
0x00800000
|
||||
DATADIR_MARIOMDL1,
|
||||
DATADIR_LUIGIMDL1,
|
||||
DATADIR_PEACHMDL1,
|
||||
DATADIR_YOSHIMDL1,
|
||||
DATADIR_WARIOMDL1,
|
||||
DATADIR_DONKEYMDL1,
|
||||
DATADIR_DAISYMDL1,
|
||||
DATADIR_WALUIGIMDL1,
|
||||
};
|
||||
|
||||
s16 lbl_1_data_A00 = -1;
|
||||
|
|
@ -51,111 +50,111 @@ void fn_1_26C54(s16 layer);
|
|||
|
||||
void fn_1_26C28(void)
|
||||
{
|
||||
Hu3DLayerHookSet(2, fn_1_26C54);
|
||||
Hu3DLayerHookSet(2, fn_1_26C54);
|
||||
}
|
||||
|
||||
void fn_1_26C54(s16 layer)
|
||||
{
|
||||
Mtx44 proj;
|
||||
Mtx modelview;
|
||||
Vec pos, target, up;
|
||||
GXColor color;
|
||||
CameraData *camera = &Hu3DCamera[0];
|
||||
MTXPerspective(proj, camera->fov, camera->aspect, camera->near, camera->far);
|
||||
GXSetProjection(proj, GX_PERSPECTIVE);
|
||||
GXSetViewport(0, 0, 640, 480, 0, 1);
|
||||
GXSetScissor(0, 0, 640, 480);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
|
||||
color.a = 255;
|
||||
GXSetTevColor(GX_TEVREG0, color);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetNumTexGens(0);
|
||||
GXSetNumTevStages(01);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXSetAlphaCompare(GX_GEQUAL, 0, GX_AOP_AND, GX_GEQUAL, 0);
|
||||
GXSetZMode(GX_TRUE, GX_ALWAYS, GX_TRUE);
|
||||
pos.x = pos.y = pos.z = 0;
|
||||
target.x = target.y = 0;
|
||||
target.z = -100;
|
||||
up.x = up.z = 0;
|
||||
up.y = 1;
|
||||
MTXLookAt(modelview, &pos, &up, &target);
|
||||
GXLoadPosMtxImm(modelview, GX_PNMTX0);
|
||||
pos.x = (10000.0f*(-sin(camera->fov/2.0f)))*1.2f;
|
||||
pos.y = (10000.0f*(-sin(camera->fov/2.0f)))*(5.0f/6.0f);
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
GXPosition3f32(-pos.x, -pos.y, -10000.0f);
|
||||
GXPosition3f32(pos.x, -pos.y, -10000.0f);
|
||||
GXPosition3f32(pos.x, pos.y, -10000.0f);
|
||||
GXPosition3f32(-pos.x, pos.y, -10000.0f);
|
||||
GXEnd();
|
||||
Mtx44 proj;
|
||||
Mtx modelview;
|
||||
Vec pos, target, up;
|
||||
GXColor color;
|
||||
CameraData *camera = &Hu3DCamera[0];
|
||||
MTXPerspective(proj, camera->fov, camera->aspect, camera->near, camera->far);
|
||||
GXSetProjection(proj, GX_PERSPECTIVE);
|
||||
GXSetViewport(0, 0, 640, 480, 0, 1);
|
||||
GXSetScissor(0, 0, 640, 480);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
|
||||
color.a = 255;
|
||||
GXSetTevColor(GX_TEVREG0, color);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetNumTexGens(0);
|
||||
GXSetNumTevStages(01);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXSetAlphaCompare(GX_GEQUAL, 0, GX_AOP_AND, GX_GEQUAL, 0);
|
||||
GXSetZMode(GX_TRUE, GX_ALWAYS, GX_TRUE);
|
||||
pos.x = pos.y = pos.z = 0;
|
||||
target.x = target.y = 0;
|
||||
target.z = -100;
|
||||
up.x = up.z = 0;
|
||||
up.y = 1;
|
||||
MTXLookAt(modelview, &pos, &up, &target);
|
||||
GXLoadPosMtxImm(modelview, GX_PNMTX0);
|
||||
pos.x = (10000.0f * (-sin(camera->fov / 2.0f))) * 1.2f;
|
||||
pos.y = (10000.0f * (-sin(camera->fov / 2.0f))) * (5.0f / 6.0f);
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
GXPosition3f32(-pos.x, -pos.y, -10000.0f);
|
||||
GXPosition3f32(pos.x, -pos.y, -10000.0f);
|
||||
GXPosition3f32(pos.x, pos.y, -10000.0f);
|
||||
GXPosition3f32(-pos.x, pos.y, -10000.0f);
|
||||
GXEnd();
|
||||
}
|
||||
|
||||
void fn_1_27080(void)
|
||||
{
|
||||
s16 i;
|
||||
s32 status;
|
||||
CharModelDataClose(-1);
|
||||
CharKill(-1);
|
||||
for(i=0; i<4; i++) {
|
||||
status = HuDataDirReadAsync(lbl_1_data_9C0[GWPlayerCfg[i].character]);
|
||||
if(status != -1) {
|
||||
while(!HuDataGetAsyncStat(status)) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
CharARAMOpen(GWPlayerCfg[i].character);
|
||||
}
|
||||
for(i=0; i<2; i++) {
|
||||
status = HuDataDirReadAsync(lbl_1_data_9E0[GWPlayerCfg[i].character]);
|
||||
if(status != -1) {
|
||||
while(!HuDataGetAsyncStat(status)) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
lbl_1_bss_20AA = 0;
|
||||
HuPrcEnd();
|
||||
while(1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
s16 i;
|
||||
s32 status;
|
||||
CharModelDataClose(-1);
|
||||
CharKill(-1);
|
||||
for (i = 0; i < 4; i++) {
|
||||
status = HuDataDirReadAsync(lbl_1_data_9C0[GWPlayerCfg[i].character]);
|
||||
if (status != -1) {
|
||||
while (!HuDataGetAsyncStat(status)) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
CharARAMOpen(GWPlayerCfg[i].character);
|
||||
}
|
||||
for (i = 0; i < 2; i++) {
|
||||
status = HuDataDirReadAsync(lbl_1_data_9E0[GWPlayerCfg[i].character]);
|
||||
if (status != -1) {
|
||||
while (!HuDataGetAsyncStat(status)) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
lbl_1_bss_20AA = 0;
|
||||
HuPrcEnd();
|
||||
while (1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
s16 fn_1_271B4(s16 mgNo, s16 x, s16 y)
|
||||
{
|
||||
s16 time;
|
||||
AnimData *anim;
|
||||
s16 sprite;
|
||||
s32 mgpic;
|
||||
if(mgNo == -1) {
|
||||
if(lbl_1_data_A00 == -1) {
|
||||
s16 time;
|
||||
AnimData *anim;
|
||||
s16 sprite;
|
||||
s32 mgpic;
|
||||
if (mgNo == -1) {
|
||||
if (lbl_1_data_A00 == -1) {
|
||||
return;
|
||||
}
|
||||
for(time=0; time<=10; time++) {
|
||||
HuSprGrpTPLvlSet(lbl_1_data_A00, 1.0-(time/10.0));
|
||||
}
|
||||
for (time = 0; time <= 10; time++) {
|
||||
HuSprGrpTPLvlSet(lbl_1_data_A00, 1.0 - (time / 10.0));
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuSprGrpKill(lbl_1_data_A00);
|
||||
lbl_1_data_A00 = -1;
|
||||
return;
|
||||
}
|
||||
|
||||
if(lbl_1_data_A00 != -1) {
|
||||
}
|
||||
|
||||
if (lbl_1_data_A00 != -1) {
|
||||
HuSprGrpKill(lbl_1_data_A00);
|
||||
}
|
||||
lbl_1_data_A00 = HuSprGrpCreate(1);
|
||||
mgpic = mgInfoTbl[mgNo].mg_pic[0];
|
||||
if(GWMGAvailGet(mgNo+401)) {
|
||||
if (GWMGAvailGet(mgNo + 401)) {
|
||||
anim = HuSprAnimReadFile(mgpic);
|
||||
} else {
|
||||
anim = HuSprAnimReadFile(0x62002C);
|
||||
}
|
||||
else {
|
||||
anim = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_MGMODE, 0x2C));
|
||||
}
|
||||
sprite = HuSprCreate(anim, 100, 0);
|
||||
HuSprGrpMemberSet(lbl_1_data_A00, 0, sprite);
|
||||
|
|
@ -167,110 +166,111 @@ s16 fn_1_271B4(s16 mgNo, s16 x, s16 y)
|
|||
|
||||
void fn_1_27418(void)
|
||||
{
|
||||
s16 i;
|
||||
s16 j;
|
||||
for(i=0; i<4; i++) {
|
||||
lbl_1_bss_2C1C[i] = i;
|
||||
}
|
||||
for(i=0; i<4; i++) {
|
||||
for(j=0; j<3-i; j++) {
|
||||
if(GWPlayerCfg[lbl_1_bss_2C1C[j]].group > GWPlayerCfg[lbl_1_bss_2C1C[j+1]].group) {
|
||||
s16 temp = lbl_1_bss_2C1C[j];
|
||||
lbl_1_bss_2C1C[j] = lbl_1_bss_2C1C[j+1];
|
||||
lbl_1_bss_2C1C[j+1] = temp;
|
||||
}
|
||||
}
|
||||
}
|
||||
for(i=0; i<4; i++) {
|
||||
s16 charNo;
|
||||
lbl_1_bss_2C24[i] = charNo = GWPlayerCfg[lbl_1_bss_2C1C[i]].character;
|
||||
lbl_1_bss_2C14[i] = CharModelCreate(charNo, 2);
|
||||
lbl_1_bss_2BC4[i][0] = CharModelMotionCreate(charNo, 0x5F0000);
|
||||
lbl_1_bss_2BC4[i][1] = CharModelMotionCreate(charNo, 0x5F0002);
|
||||
lbl_1_bss_2BC4[i][2] = CharModelMotionCreate(charNo, 0x5F0003);
|
||||
lbl_1_bss_2BC4[i][3] = CharModelMotionCreate(charNo, 0x5F0048);
|
||||
lbl_1_bss_2BC4[i][4] = CharModelMotionCreate(charNo, 0x5F0049);
|
||||
lbl_1_bss_2BC4[i][5] = CharModelMotionCreate(charNo, 0x5F0017);
|
||||
lbl_1_bss_2BC4[i][6] = CharModelMotionCreate(charNo, 0x5F0018);
|
||||
CharModelVoiceEnableSet(GWPlayerCfg[lbl_1_bss_2C1C[i]].character, lbl_1_bss_2BC4[i][1], 0);
|
||||
CharModelVoiceEnableSet(GWPlayerCfg[lbl_1_bss_2C1C[i]].character, lbl_1_bss_2BC4[i][2], 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_2C14[i], 600, 0, 800);
|
||||
Hu3DModelLayerSet(lbl_1_bss_2C14[i], 3);
|
||||
CharModelDataClose(charNo);
|
||||
Hu3DModelShadowSet(lbl_1_bss_2C14[i]);
|
||||
}
|
||||
s16 i;
|
||||
s16 j;
|
||||
for (i = 0; i < 4; i++) {
|
||||
lbl_1_bss_2C1C[i] = i;
|
||||
}
|
||||
for (i = 0; i < 4; i++) {
|
||||
for (j = 0; j < 3 - i; j++) {
|
||||
if (GWPlayerCfg[lbl_1_bss_2C1C[j]].group > GWPlayerCfg[lbl_1_bss_2C1C[j + 1]].group) {
|
||||
s16 temp = lbl_1_bss_2C1C[j];
|
||||
lbl_1_bss_2C1C[j] = lbl_1_bss_2C1C[j + 1];
|
||||
lbl_1_bss_2C1C[j + 1] = temp;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 4; i++) {
|
||||
s16 charNo;
|
||||
lbl_1_bss_2C24[i] = charNo = GWPlayerCfg[lbl_1_bss_2C1C[i]].character;
|
||||
lbl_1_bss_2C14[i] = CharModelCreate(charNo, 2);
|
||||
lbl_1_bss_2BC4[i][0] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00));
|
||||
lbl_1_bss_2BC4[i][1] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02));
|
||||
lbl_1_bss_2BC4[i][2] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03));
|
||||
lbl_1_bss_2BC4[i][3] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48));
|
||||
lbl_1_bss_2BC4[i][4] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x49));
|
||||
lbl_1_bss_2BC4[i][5] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17));
|
||||
lbl_1_bss_2BC4[i][6] = CharModelMotionCreate(charNo, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18));
|
||||
CharModelVoiceEnableSet(GWPlayerCfg[lbl_1_bss_2C1C[i]].character, lbl_1_bss_2BC4[i][1], 0);
|
||||
CharModelVoiceEnableSet(GWPlayerCfg[lbl_1_bss_2C1C[i]].character, lbl_1_bss_2BC4[i][2], 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_2C14[i], 600, 0, 800);
|
||||
Hu3DModelLayerSet(lbl_1_bss_2C14[i], 3);
|
||||
CharModelDataClose(charNo);
|
||||
Hu3DModelShadowSet(lbl_1_bss_2C14[i]);
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_2783C(s16 evtno)
|
||||
{
|
||||
s16 i;
|
||||
omOvlHisData *his;
|
||||
for(i=0; i<4; i++) {
|
||||
GWPlayerCfg[i].character = lbl_1_bss_8.unk24[i].unk68;
|
||||
GWPlayerCfg[i].iscom = lbl_1_bss_8.unk24[i].unk60;
|
||||
GWPlayerCfg[i].pad_idx = lbl_1_bss_8.unk24[i].unk6C;
|
||||
GWPlayerCfg[i].diff = lbl_1_bss_8.unk24[i].unk64;
|
||||
}
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
HuAudSeqAllFadeOut(1000);
|
||||
while(WipeStatGet()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
CharKill(-1);
|
||||
for(i=0; i<4; i++) {
|
||||
CharARAMOpen(GWPlayerCfg[i].character);
|
||||
}
|
||||
HuAudVoiceInit(-1);
|
||||
his = omOvlHisGet(0);
|
||||
omOvlHisChg(0, OVL_MGMODE, evtno, his->stat);
|
||||
omOvlCallEx(OVL_INST, 1, 0, 0);
|
||||
while(1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
s16 i;
|
||||
omOvlHisData *his;
|
||||
for (i = 0; i < 4; i++) {
|
||||
GWPlayerCfg[i].character = lbl_1_bss_8.unk24[i].unk68;
|
||||
GWPlayerCfg[i].iscom = lbl_1_bss_8.unk24[i].unk60;
|
||||
GWPlayerCfg[i].pad_idx = lbl_1_bss_8.unk24[i].unk6C;
|
||||
GWPlayerCfg[i].diff = lbl_1_bss_8.unk24[i].unk64;
|
||||
}
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
|
||||
HuAudSeqAllFadeOut(1000);
|
||||
while (WipeStatGet()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
CharKill(-1);
|
||||
for (i = 0; i < 4; i++) {
|
||||
CharARAMOpen(GWPlayerCfg[i].character);
|
||||
}
|
||||
HuAudVoiceInit(-1);
|
||||
his = omOvlHisGet(0);
|
||||
omOvlHisChg(0, OVL_MGMODE, evtno, his->stat);
|
||||
omOvlCallEx(OVL_INST, 1, 0, 0);
|
||||
while (1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_279FC(s32 coinSkipF)
|
||||
{
|
||||
s16 i;
|
||||
s16 mgNum;
|
||||
for(mgNum=0; mgInfoTbl[mgNum].ovl != 65535; mgNum++);
|
||||
for(i=0; i<9; i++) {
|
||||
lbl_1_bss_2638[i] = lbl_1_bss_20AC[i] = 0;
|
||||
}
|
||||
for(i=0; i<mgNum; i++) {
|
||||
s16 type = mgInfoTbl[i].type;
|
||||
if(type >= 0 && type < 9) {
|
||||
if(coinSkipF) {
|
||||
s16 ovl = mgInfoTbl[i].ovl;
|
||||
if(ovl == OVL_M408 || ovl == OVL_M422 || ovl == OVL_M430) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
lbl_1_bss_264C[type][lbl_1_bss_2638[type]] = i;
|
||||
lbl_1_bss_2638[type]++;
|
||||
if(GWMGAvailGet(i+401)) {
|
||||
lbl_1_bss_20C0[type][lbl_1_bss_20AC[type]] = i;
|
||||
lbl_1_bss_20AC[type]++;
|
||||
}
|
||||
}
|
||||
}
|
||||
s16 i;
|
||||
s16 mgNum;
|
||||
for (mgNum = 0; mgInfoTbl[mgNum].ovl != 65535; mgNum++)
|
||||
;
|
||||
for (i = 0; i < 9; i++) {
|
||||
lbl_1_bss_2638[i] = lbl_1_bss_20AC[i] = 0;
|
||||
}
|
||||
for (i = 0; i < mgNum; i++) {
|
||||
s16 type = mgInfoTbl[i].type;
|
||||
if (type >= 0 && type < 9) {
|
||||
if (coinSkipF) {
|
||||
s16 ovl = mgInfoTbl[i].ovl;
|
||||
if (ovl == OVL_M408 || ovl == OVL_M422 || ovl == OVL_M430) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
lbl_1_bss_264C[type][lbl_1_bss_2638[type]] = i;
|
||||
lbl_1_bss_2638[type]++;
|
||||
if (GWMGAvailGet(i + 401)) {
|
||||
lbl_1_bss_20C0[type][lbl_1_bss_20AC[type]] = i;
|
||||
lbl_1_bss_20AC[type]++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_27C0C(s16 type)
|
||||
{
|
||||
s16 i;
|
||||
s16 j;
|
||||
for(i=0; i<256;) {
|
||||
for(j=0; j<lbl_1_bss_20AC[type]; j++, i++) {
|
||||
if(i > 256) {
|
||||
break;
|
||||
}
|
||||
mgIndexList[i] = lbl_1_bss_20C0[type][j];
|
||||
}
|
||||
}
|
||||
for(i=0; i<256; i++) {
|
||||
mgIndexList[i];
|
||||
}
|
||||
lbl_801D3E94 = 0;
|
||||
}
|
||||
s16 i;
|
||||
s16 j;
|
||||
for (i = 0; i < 256;) {
|
||||
for (j = 0; j < lbl_1_bss_20AC[type]; j++, i++) {
|
||||
if (i > 256) {
|
||||
break;
|
||||
}
|
||||
mgIndexList[i] = lbl_1_bss_20C0[type][j];
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 256; i++) {
|
||||
mgIndexList[i];
|
||||
}
|
||||
lbl_801D3E94 = 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,43 +1,43 @@
|
|||
#define HUSPR_USE_OLD_DEFS
|
||||
#include "math.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/object.h"
|
||||
#include "game/wipe.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/hsfex.h"
|
||||
#include "game/printfunc.h"
|
||||
#include "game/window.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/sprite.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "game/hsfex.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/object.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/printfunc.h"
|
||||
#include "game/sprite.h"
|
||||
#include "game/window.h"
|
||||
#include "game/wipe.h"
|
||||
#include "math.h"
|
||||
|
||||
#include "REL/modeltestDll.h"
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
s32 lbl_1_data_0[8] = {
|
||||
0x005F001B,
|
||||
0x005F0015,
|
||||
0x005F0016,
|
||||
0x005F0006,
|
||||
0x005F0000,
|
||||
0x005F0000,
|
||||
0x005F0000,
|
||||
0x005F0004,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x1B),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x15),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x16),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x06),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x04),
|
||||
};
|
||||
|
||||
const f64 unk_rodata_0 = 0.5;
|
||||
const f64 unk_rodata_8 = 3.0;
|
||||
omObjData * lbl_1_bss_9A4;
|
||||
omObjData * lbl_1_bss_9A0;
|
||||
omObjData *lbl_1_bss_9A4;
|
||||
omObjData *lbl_1_bss_9A0;
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
void ObjectSetup(void)
|
||||
{
|
||||
Process * prc;
|
||||
Process *prc;
|
||||
OSReport("******* MODELTESTObjectSetup *********\n");
|
||||
|
||||
prc = omInitObjMan(0x32, 0x2000);
|
||||
|
|
@ -64,108 +64,110 @@ void ObjectSetup(void)
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
char * lbl_1_data_D8[16] = {
|
||||
"target1A",
|
||||
"target1B",
|
||||
"target2A",
|
||||
"target2B",
|
||||
"target3A",
|
||||
"target3B",
|
||||
"target4A",
|
||||
"target4B",
|
||||
"target5A",
|
||||
"target5B",
|
||||
"target6A",
|
||||
"target6B",
|
||||
"target7A",
|
||||
"target7B",
|
||||
"target8A",
|
||||
"target8B"
|
||||
};
|
||||
|
||||
char *lbl_1_data_D8[16] = { "target1A", "target1B", "target2A", "target2B", "target3A", "target3B", "target4A", "target4B", "target5A", "target5B",
|
||||
"target6A", "target6B", "target7A", "target7B", "target8A", "target8B" };
|
||||
|
||||
HsfanimStruct00 lbl_1_data_118 = {
|
||||
/* unk00 */ 40,
|
||||
/* unk02 */ {0, 0},
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 90.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ -0.05000000074505806f, /* z */ 0.0f},
|
||||
/* unk1C */ 50.0f,
|
||||
/* unk20 */ 0.800000011920929f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 4,
|
||||
/* unk2E */ {{ /* r */ 255, /* g */ 255, /* b */ 32, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 0, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 128, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255}},
|
||||
/* unk3E */ {{ /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0}, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0}, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0}, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0}},
|
||||
/* unk00 */ 40,
|
||||
/* unk02 */ { 0, 0 },
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 90.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ -0.05000000074505806f, /* z */ 0.0f },
|
||||
/* unk1C */ 50.0f,
|
||||
/* unk20 */ 0.800000011920929f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 4,
|
||||
/* unk2E */
|
||||
{ { /* r */ 255, /* g */ 255, /* b */ 32, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 0, /* a */ 255 },
|
||||
{ /* r */ 255, /* g */ 255, /* b */ 128, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255 } },
|
||||
/* unk3E */
|
||||
{ { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0 }, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0 },
|
||||
{ /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0 }, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 0 } },
|
||||
};
|
||||
|
||||
HsfanimStruct00 lbl_1_data_168[2] = {
|
||||
{
|
||||
/* unk00 */ 50,
|
||||
/* unk02 */ {0, 0},
|
||||
/* unk04 */ 5.0f,
|
||||
/* unk08 */ 10.0f,
|
||||
/* unk0C */ 10.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f},
|
||||
/* unk1C */ 2.0f,
|
||||
/* unk20 */ 1.0099999904632568f,
|
||||
/* unk24 */ 30.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */ {{ /* r */ 48, /* g */ 48, /* b */ 8, /* a */ 255}, { /* r */ 64, /* g */ 48, /* b */ 8, /* a */ 255}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
/* unk3E */ {{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
},
|
||||
{
|
||||
/* unk00 */ 30,
|
||||
/* unk02 */ {0, 0},
|
||||
/* unk04 */ 3.299999952316284f,
|
||||
/* unk08 */ 10.0f,
|
||||
/* unk0C */ 0.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ -0.05000000074505806f, /* z */ 0.0f},
|
||||
/* unk1C */ 2.0f,
|
||||
/* unk20 */ 1.0f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9800000190734863f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */ {{ /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 64, /* a */ 255}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
/* unk3E */ {{ /* r */ 255, /* g */ 128, /* b */ 128, /* a */ 0}, { /* r */ 255, /* g */ 64, /* b */ 32, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
}};
|
||||
HsfanimStruct00 lbl_1_data_168[2] = { {
|
||||
/* unk00 */ 50,
|
||||
/* unk02 */ { 0, 0 },
|
||||
/* unk04 */ 5.0f,
|
||||
/* unk08 */ 10.0f,
|
||||
/* unk0C */ 10.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f },
|
||||
/* unk1C */ 2.0f,
|
||||
/* unk20 */ 1.0099999904632568f,
|
||||
/* unk24 */ 30.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */
|
||||
{ { /* r */ 48, /* g */ 48, /* b */ 8, /* a */ 255 }, { /* r */ 64, /* g */ 48, /* b */ 8, /* a */ 255 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
/* unk3E */
|
||||
{ { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
},
|
||||
{
|
||||
/* unk00 */ 30,
|
||||
/* unk02 */ { 0, 0 },
|
||||
/* unk04 */ 3.299999952316284f,
|
||||
/* unk08 */ 10.0f,
|
||||
/* unk0C */ 0.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ -0.05000000074505806f, /* z */ 0.0f },
|
||||
/* unk1C */ 2.0f,
|
||||
/* unk20 */ 1.0f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9800000190734863f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */
|
||||
{ { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 64, /* a */ 255 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
/* unk3E */
|
||||
{ { /* r */ 255, /* g */ 128, /* b */ 128, /* a */ 0 }, { /* r */ 255, /* g */ 64, /* b */ 32, /* a */ 0 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
} };
|
||||
|
||||
HsfanimStruct00 lbl_1_data_208 = {
|
||||
/* unk00 */ 40,
|
||||
/* unk02 */ {0, 0},
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 180.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f},
|
||||
/* unk1C */ 30.0f,
|
||||
/* unk20 */ 0.8999999761581421f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 4,
|
||||
/* unk2E */ {{ /* r */ 255, /* g */ 255, /* b */ 32, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 0, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 128, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255}},
|
||||
/* unk3E */ {{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
/* unk00 */ 40,
|
||||
/* unk02 */ { 0, 0 },
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 180.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f },
|
||||
/* unk1C */ 30.0f,
|
||||
/* unk20 */ 0.8999999761581421f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 4,
|
||||
/* unk2E */
|
||||
{ { /* r */ 255, /* g */ 255, /* b */ 32, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 0, /* a */ 255 },
|
||||
{ /* r */ 255, /* g */ 255, /* b */ 128, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 255, /* a */ 255 } },
|
||||
/* unk3E */
|
||||
{ { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
};
|
||||
|
||||
HsfanimStruct00 lbl_1_data_258 = {
|
||||
/* unk00 */ 30,
|
||||
/* unk02 */ {0, 0},
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 90.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f},
|
||||
/* unk1C */ 30.0f,
|
||||
/* unk20 */ 0.949999988079071f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */ {{ /* r */ 255, /* g */ 16, /* b */ 16, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 16, /* a */ 255}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
/* unk3E */ {{ /* r */ 255, /* g */ 16, /* b */ 16, /* a */ 255}, { /* r */ 255, /* g */ 255, /* b */ 16, /* a */ 255}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0}},
|
||||
/* unk00 */ 30,
|
||||
/* unk02 */ { 0, 0 },
|
||||
/* unk04 */ 50.0f,
|
||||
/* unk08 */ 0.0f,
|
||||
/* unk0C */ 90.0f,
|
||||
/* unk10 */ { /* x */ 0.0f, /* y */ 0.0f, /* z */ 0.0f },
|
||||
/* unk1C */ 30.0f,
|
||||
/* unk20 */ 0.949999988079071f,
|
||||
/* unk24 */ 20.0f,
|
||||
/* unk28 */ 0.9900000095367432f,
|
||||
/* unk2C */ 2,
|
||||
/* unk2E */
|
||||
{ { /* r */ 255, /* g */ 16, /* b */ 16, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 16, /* a */ 255 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
/* unk3E */
|
||||
{ { /* r */ 255, /* g */ 16, /* b */ 16, /* a */ 255 }, { /* r */ 255, /* g */ 255, /* b */ 16, /* a */ 255 },
|
||||
{ /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 }, { /* r */ 0, /* g */ 0, /* b */ 0, /* a */ 0 } },
|
||||
};
|
||||
|
||||
const Point3d lbl_1_rodata_38 = {0.0f, 0.0f, 0.0f};
|
||||
const Point3d lbl_1_rodata_44 = {0.0f, 1.0f, 0.0f};
|
||||
const Point3d lbl_1_rodata_38 = { 0.0f, 0.0f, 0.0f };
|
||||
const Point3d lbl_1_rodata_44 = { 0.0f, 1.0f, 0.0f };
|
||||
s16 lbl_1_bss_99C;
|
||||
s16 lbl_1_bss_99A;
|
||||
s16 lbl_1_bss_98A[8];
|
||||
|
|
@ -178,24 +180,24 @@ s16 lbl_1_bss_664[256];
|
|||
s16 lbl_1_bss_460[258];
|
||||
s16 lbl_1_bss_45A[3];
|
||||
s16 lbl_1_bss_458;
|
||||
AnimData * lbl_1_bss_454;
|
||||
AnimData *lbl_1_bss_454;
|
||||
s32 unk_bss_450;
|
||||
HuObjUnk lbl_1_bss_40[20];
|
||||
void * lbl_1_bss_30[4];
|
||||
void *lbl_1_bss_30[4];
|
||||
u8 lbl_1_bss_2C;
|
||||
f32 lbl_1_bss_28;
|
||||
s16 lbl_1_bss_24;
|
||||
f32 lbl_1_bss_20;
|
||||
Process * lbl_1_bss_18[2];
|
||||
Process * lbl_1_bss_14;
|
||||
Process * lbl_1_bss_10;
|
||||
Process *lbl_1_bss_18[2];
|
||||
Process *lbl_1_bss_14;
|
||||
Process *lbl_1_bss_10;
|
||||
s32 lbl_1_bss_C;
|
||||
f32 lbl_1_bss_8;
|
||||
static u8 unk_bss[8];
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
void fn_1_29C(omObjData * arg0)
|
||||
void fn_1_29C(omObjData *arg0)
|
||||
{
|
||||
Point3d sp20;
|
||||
Point3d sp14;
|
||||
|
|
@ -205,8 +207,8 @@ void fn_1_29C(omObjData * arg0)
|
|||
s16 temp_r27;
|
||||
u32 temp_r26;
|
||||
s16 temp_r3;
|
||||
void * temp_r29;
|
||||
AnimData * temp_r28;
|
||||
void *temp_r29;
|
||||
AnimData *temp_r28;
|
||||
f32 temp_r5;
|
||||
f32 temp_f30;
|
||||
s16 chrIdx;
|
||||
|
|
@ -226,8 +228,7 @@ void fn_1_29C(omObjData * arg0)
|
|||
sp20.z = 1000.0f;
|
||||
Hu3DShadowPosSet(&sp20, &sp8, &sp14);
|
||||
|
||||
for (var_r31 = 0; var_r31 < 1; ++var_r31)
|
||||
{
|
||||
for (var_r31 = 0; var_r31 < 1; ++var_r31) {
|
||||
chrIdx = 0;
|
||||
lbl_1_bss_98A[var_r31] = CharModelCreate(chrIdx, 2);
|
||||
if (var_r31 == 1) {
|
||||
|
|
@ -242,7 +243,7 @@ void fn_1_29C(omObjData * arg0)
|
|||
lbl_1_bss_88A[var_r31][5] = CharModelMotionCreate(chrIdx, lbl_1_data_0[5]);
|
||||
lbl_1_bss_88A[var_r31][6] = CharModelMotionCreate(chrIdx, lbl_1_data_0[6]);
|
||||
lbl_1_bss_88A[var_r31][7] = CharModelMotionCreate(chrIdx, lbl_1_data_0[7]);
|
||||
lbl_1_bss_88A[var_r31][0] = CharModelMotionCreate(chrIdx, 0x5F004D);
|
||||
lbl_1_bss_88A[var_r31][0] = CharModelMotionCreate(chrIdx, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x4D));
|
||||
CharModelMotionSet(chrIdx, lbl_1_bss_88A[var_r31][0]);
|
||||
Hu3DModelAttrSet(lbl_1_bss_98A[var_r31], 0x40000001U);
|
||||
Hu3DModelPosSet(lbl_1_bss_98A[var_r31], (var_r31 / 4 * 0xC8) - 100, 0.0f, -(var_r31 % 4) * 0x96);
|
||||
|
|
@ -256,26 +257,27 @@ void fn_1_29C(omObjData * arg0)
|
|||
|
||||
temp_r5 = OSTicksToMicroseconds(OSGetTick() - temp_r26);
|
||||
OSReport("time %f\n", US_TO_60TH_SEC(temp_r5));
|
||||
var_r31 = Hu3DModelCreateFile(0x700024);
|
||||
var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_SAF, 0x24));
|
||||
Hu3DModelScaleSet(var_r31, 5.0f, 5.0f, 5.0f);
|
||||
Hu3DModelShadowMapSet(var_r31);
|
||||
var_r31 = Hu3DModelCreateFile(0x26001E);
|
||||
temp_r27 = Hu3DJointMotion(var_r31, HuDataSelHeapReadNum(0x26002F, 0x10000000, 2));
|
||||
var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_M407, 0x1E));
|
||||
temp_r27 = Hu3DJointMotion(var_r31, HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_M407, 0x2F), MEMORY_DEFAULT_NUM, 2));
|
||||
Hu3DMotionSet(var_r31, temp_r27);
|
||||
Hu3DModelAttrSet(var_r31, 0x40000001U);
|
||||
|
||||
for (var_r31 = 0; var_r31 < 10; ++var_r31) {
|
||||
if (var_r31 == 0) {
|
||||
lbl_1_bss_664[var_r31] = Hu3DModelCreateFile(0x700019);
|
||||
} else {
|
||||
lbl_1_bss_664[var_r31] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_SAF, 0x19));
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_664[var_r31] = Hu3DModelLink(lbl_1_bss_664[0]);
|
||||
}
|
||||
Hu3DModelShadowSet(lbl_1_bss_664[var_r31]);
|
||||
Hu3DModelPosSet(lbl_1_bss_664[var_r31], ((( var_r31 / 5) * 0x1F4) + 0xC8), 0.0f, (-( var_r31 % 5) * 0x12C));
|
||||
Hu3DModelPosSet(lbl_1_bss_664[var_r31], (((var_r31 / 5) * 0x1F4) + 0xC8), 0.0f, (-(var_r31 % 5) * 0x12C));
|
||||
Hu3DModelAttrSet(lbl_1_bss_664[var_r31], 0x4000U);
|
||||
Hu3DModelAttrSet(lbl_1_bss_664[var_r31], 0x40000001U);
|
||||
}
|
||||
temp_r29 = HuDataSelHeapReadNum(0x700013, 0x10000000, 2);
|
||||
temp_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_SAF, 0x13), MEMORY_DEFAULT_NUM, 2);
|
||||
temp_r28 = HuSprAnimRead(temp_r29);
|
||||
lbl_1_bss_99C = HuSprGrpCreate(0x14);
|
||||
|
||||
|
|
@ -289,7 +291,7 @@ void fn_1_29C(omObjData * arg0)
|
|||
HuSprGrpDrawNoSet(lbl_1_bss_99C, 0x40);
|
||||
lbl_1_bss_458 = 0x293;
|
||||
lbl_1_bss_45A[0] = MGSeqTimerCreate(lbl_1_bss_458 / 60);
|
||||
temp_r29 = HuDataSelHeapReadNum(0x120001, 0x10000000, 2);
|
||||
temp_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 0x01), MEMORY_DEFAULT_NUM, 2);
|
||||
temp_r28 = HuSprAnimRead(temp_r29);
|
||||
lbl_1_bss_888 = Hu3DParManCreate(temp_r28, 0x3E8, &lbl_1_data_208);
|
||||
Hu3DParManAttrSet(lbl_1_bss_888, 0x45);
|
||||
|
|
@ -302,14 +304,15 @@ void fn_1_29C(omObjData * arg0)
|
|||
Hu3DParManVecSet(lbl_1_bss_884, 0.0f, 1.0f, 0.0f);
|
||||
Hu3DParManVacumeSet(lbl_1_bss_884, 500.0f, 0.0f, 0.0f, 1.0f);
|
||||
Hu3DParManColorSet(lbl_1_bss_884, 0);
|
||||
temp_r29 = HuDataSelHeapReadNum(0x120002, 0x10000000, 2);
|
||||
temp_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 0x02), MEMORY_DEFAULT_NUM, 2);
|
||||
temp_r28 = HuSprAnimRead(temp_r29);
|
||||
|
||||
for (var_r31 = 0; var_r31 < 10; ++var_r31) {
|
||||
lbl_1_bss_864[var_r31] = Hu3DParManCreate(temp_r28, 0x1F4, &lbl_1_data_168[0]);
|
||||
Hu3DParManAttrSet(lbl_1_bss_864[var_r31], 0x864);
|
||||
Hu3DParticleBlendModeSet(Hu3DParManModelIDGet(lbl_1_bss_864[var_r31]), 1U);
|
||||
Hu3DParManPosSet(lbl_1_bss_864[var_r31], (100.0 * sin((M_PI * (36.0f * var_r31)) / 180.0)), 0.0f, 100.0 * cos((M_PI * (36.0f * var_r31)) / 180.0));
|
||||
Hu3DParManPosSet(
|
||||
lbl_1_bss_864[var_r31], (100.0 * sin((M_PI * (36.0f * var_r31)) / 180.0)), 0.0f, 100.0 * cos((M_PI * (36.0f * var_r31)) / 180.0));
|
||||
Hu3DParManRotSet(lbl_1_bss_864[var_r31], -90.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
|
|
@ -320,9 +323,7 @@ void fn_1_29C(omObjData * arg0)
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
s32 unrefData[] = {
|
||||
0,0,0
|
||||
};
|
||||
s32 unrefData[] = { 0, 0, 0 };
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
|
|
@ -331,7 +332,7 @@ void fn_1_F38(void)
|
|||
f32 var_f31;
|
||||
var_f31 = 0.0f;
|
||||
|
||||
while(TRUE) {
|
||||
while (TRUE) {
|
||||
Hu3DModelRotSet(lbl_1_bss_460[0], 0.0f, var_f31, 0.0f);
|
||||
var_f31 += 1.0f;
|
||||
HuPrcVSleep();
|
||||
|
|
@ -340,7 +341,8 @@ void fn_1_F38(void)
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) {
|
||||
static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30)
|
||||
{
|
||||
s8 temp_r28;
|
||||
|
||||
temp_r28 = HuPadSubStkX[0] & 0xF8;
|
||||
|
|
@ -360,13 +362,11 @@ static inline void HuControlCamCenter(Point3d *sp18, Point3d *sp30) {
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
const HuUnkF9C2 lbl_1_rodata_B8 = {
|
||||
{8, 6, 4, 7, 9, 10, 11}
|
||||
};
|
||||
const HuUnkF9C2 lbl_1_rodata_B8 = { { 8, 6, 4, 7, 9, 10, 11 } };
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
void fn_1_F9C(struct om_obj_data * omData)
|
||||
void fn_1_F9C(struct om_obj_data *omData)
|
||||
{
|
||||
Point3d sp3C;
|
||||
Point3d sp30;
|
||||
|
|
@ -421,40 +421,40 @@ void fn_1_F9C(struct om_obj_data * omData)
|
|||
s32 var_fake;
|
||||
|
||||
while (0) {
|
||||
(void) temp_f30;
|
||||
(void) temp_f30;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r31;
|
||||
(void) var_r30;
|
||||
(void) var_r30;
|
||||
(void) var_r30;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_r29;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void) var_fake;
|
||||
(void)temp_f30;
|
||||
(void)temp_f30;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r31;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r30;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_r29;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
(void)var_fake;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -478,15 +478,15 @@ void fn_1_F9C(struct om_obj_data * omData)
|
|||
temp_f31 = CRot.z;
|
||||
|
||||
sp18.x = sp24.x * (sp30.x * sp30.x + (1.0f - sp30.x * sp30.x) * cos((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.y * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.z * sin((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.z * (sp30.x * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.y * sin((M_PI * temp_f31) / 180.0));
|
||||
+ sp24.y * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.z * sin((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.z * (sp30.x * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.y * sin((M_PI * temp_f31) / 180.0));
|
||||
|
||||
sp18.y = sp24.y * (sp30.y * sp30.y + (1.0f - sp30.y * sp30.y) * cos((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.x * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.z * sin((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.z * (sp30.y * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.x * sin((M_PI * temp_f31) / 180.0));
|
||||
+ sp24.x * (sp30.x * sp30.y * (1.0f - cos((M_PI * temp_f31) / 180.0)) + sp30.z * sin((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.z * (sp30.y * sp30.z * (1.0f - cos((M_PI * temp_f31) / 180.0)) - sp30.x * sin((M_PI * temp_f31) / 180.0));
|
||||
|
||||
sp18.z = sp24.z * (sp30.z * sp30.z + (1.0f - sp30.z * sp30.z) * cos((M_PI * temp_f31) / 180.0))
|
||||
+ (sp24.x * (sp30.x * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) - sp30.y * sin((M_PI * temp_f31) / 180.0))
|
||||
+ (sp24.x * (sp30.x * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) - sp30.y * sin((M_PI * temp_f31) / 180.0))
|
||||
+ sp24.y * (sp30.y * sp30.z * (1.0 - cos((M_PI * temp_f31) / 180.0)) + sp30.x * sin((M_PI * temp_f31) / 180.0)));
|
||||
|
||||
PSVECCrossProduct(&sp24, &sp30, &sp30);
|
||||
|
|
@ -543,8 +543,8 @@ void fn_1_20F4(void)
|
|||
{
|
||||
s16 temp_r3;
|
||||
s16 var_r29;
|
||||
HsfObject * temp_r3_2;
|
||||
HuObjUnk * temp_r31;
|
||||
HsfObject *temp_r3_2;
|
||||
HuObjUnk *temp_r31;
|
||||
Mtx spC0;
|
||||
Vec sp24;
|
||||
Mtx sp90;
|
||||
|
|
@ -553,49 +553,38 @@ void fn_1_20F4(void)
|
|||
Vec sp18;
|
||||
Vec spC;
|
||||
f32 temp_f27;
|
||||
f32 var_f29; // ! - uninitialized
|
||||
s16 var_r27; // ! - uninitialized
|
||||
f32 var_f29; // ! - uninitialized
|
||||
s16 var_r27; // ! - uninitialized
|
||||
s32 var_r26;
|
||||
f32 temp_f30;
|
||||
|
||||
temp_r3 = Hu3DModelCreateFile(0x6C0000);
|
||||
temp_r3 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_PEACHMDL1, 0x00));
|
||||
Hu3DModelPosSet(temp_r3, 0.0f, 0.0f, 100.0f);
|
||||
|
||||
for (var_r29 = 0; var_r29 < 16; ++var_r29)
|
||||
{
|
||||
for (var_r29 = 0; var_r29 < 16; ++var_r29) {
|
||||
OSReport("%s\n", lbl_1_data_D8[var_r29]);
|
||||
temp_r3_2 = Hu3DModelObjPtrGet(temp_r3, lbl_1_data_D8[var_r29]);
|
||||
lbl_1_bss_40[var_r29].obj = temp_r3_2;
|
||||
|
||||
Hu3DMotionNoMotSet(temp_r3, lbl_1_data_D8[var_r29], 0x380);
|
||||
|
||||
lbl_1_bss_40[var_r29].pos.x = temp_r3_2->data.base.pos.x;
|
||||
lbl_1_bss_40[var_r29].pos.y = temp_r3_2->data.base.pos.y;
|
||||
lbl_1_bss_40[var_r29].pos.z = temp_r3_2->data.base.pos.z;
|
||||
lbl_1_bss_40[var_r29].rot.x = temp_r3_2->data.base.rot.x;
|
||||
lbl_1_bss_40[var_r29].rot.y = temp_r3_2->data.base.rot.y;
|
||||
lbl_1_bss_40[var_r29].rot.z = temp_r3_2->data.base.rot.z;
|
||||
lbl_1_bss_40[var_r29].pos.x = temp_r3_2->data.base.pos.x;
|
||||
lbl_1_bss_40[var_r29].pos.y = temp_r3_2->data.base.pos.y;
|
||||
lbl_1_bss_40[var_r29].pos.z = temp_r3_2->data.base.pos.z;
|
||||
lbl_1_bss_40[var_r29].rot.x = temp_r3_2->data.base.rot.x;
|
||||
lbl_1_bss_40[var_r29].rot.y = temp_r3_2->data.base.rot.y;
|
||||
lbl_1_bss_40[var_r29].rot.z = temp_r3_2->data.base.rot.z;
|
||||
lbl_1_bss_40[var_r29].scale.x = temp_r3_2->data.base.scale.x;
|
||||
lbl_1_bss_40[var_r29].scale.y = temp_r3_2->data.base.scale.y;
|
||||
lbl_1_bss_40[var_r29].scale.z = temp_r3_2->data.base.scale.z;
|
||||
|
||||
OSReport(
|
||||
"%d:(%3.2f,%3.2f,%3.2f),(%3.2f,%3.2f,%3.2f)\n",
|
||||
var_r29,
|
||||
temp_r3_2->data.base.pos.x,
|
||||
temp_r3_2->data.base.pos.y,
|
||||
temp_r3_2->data.base.pos.z,
|
||||
temp_r3_2->data.base.rot.x,
|
||||
temp_r3_2->data.base.rot.y,
|
||||
temp_r3_2->data.base.rot.z
|
||||
);
|
||||
OSReport("%d:(%3.2f,%3.2f,%3.2f),(%3.2f,%3.2f,%3.2f)\n", var_r29, temp_r3_2->data.base.pos.x, temp_r3_2->data.base.pos.y,
|
||||
temp_r3_2->data.base.pos.z, temp_r3_2->data.base.rot.x, temp_r3_2->data.base.rot.y, temp_r3_2->data.base.rot.z);
|
||||
}
|
||||
while (TRUE)
|
||||
{
|
||||
while (TRUE) {
|
||||
Hu3DModelObjMtxGet(temp_r3, "ske_skirt", sp30);
|
||||
|
||||
for (var_r29 = 0; var_r29 < 8; ++var_r29)
|
||||
{
|
||||
for (var_r29 = 0; var_r29 < 8; ++var_r29) {
|
||||
temp_r31 = &lbl_1_bss_40[var_r29 * 2];
|
||||
temp_r31->obj->data.curr.rot.x = temp_r31->rot.x;
|
||||
temp_r31->obj->data.curr.rot.y = temp_r31->rot.y;
|
||||
|
|
@ -634,15 +623,16 @@ void fn_1_20F4(void)
|
|||
|
||||
if (HuPadSubStkX[1] < 0) {
|
||||
var_r26 = -HuPadSubStkX[1];
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r26 = HuPadSubStkX[1];
|
||||
}
|
||||
|
||||
|
||||
if (var_r26 < 0xA && ABS(HuPadSubStkY[1]) < 0xA) {
|
||||
var_r27 = 0x168;
|
||||
var_f29 = 0.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r27 = 180.0 * (atan2(HuPadSubStkX[1], HuPadSubStkY[1]) / M_PI);
|
||||
temp_f30 = (HuPadSubStkX[1] * HuPadSubStkX[1]) + (HuPadSubStkY[1] * HuPadSubStkY[1]);
|
||||
var_f29 = sqrtf(temp_f30);
|
||||
|
|
@ -657,11 +647,11 @@ void fn_1_20F4(void)
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
void fn_1_28F8(Point3d * arg0, Point3d * arg1)
|
||||
void fn_1_28F8(Point3d *arg0, Point3d *arg1)
|
||||
{
|
||||
Point3d spC;
|
||||
Mtx sp18;
|
||||
CameraData * cam;
|
||||
CameraData *cam;
|
||||
f32 temp_f31;
|
||||
f32 temp_f30;
|
||||
|
||||
|
|
@ -675,7 +665,8 @@ void fn_1_28F8(Point3d * arg0, Point3d * arg1)
|
|||
arg1->y = 240.0f + (spC.y * (240.0f / temp_f30));
|
||||
}
|
||||
|
||||
void fn_1_2AFC(void) {
|
||||
void fn_1_2AFC(void)
|
||||
{
|
||||
s16 temp_r3;
|
||||
|
||||
HuWinInit(1);
|
||||
|
|
@ -683,7 +674,7 @@ void fn_1_2AFC(void) {
|
|||
HuWinMesSpeedSet(temp_r3, 3);
|
||||
|
||||
while (TRUE) {
|
||||
HuWinMesSet(temp_r3, 0x200011);
|
||||
HuWinMesSet(temp_r3, MAKE_MESSID(0x20, 0x11));
|
||||
HuWinMesWait(temp_r3);
|
||||
}
|
||||
}
|
||||
|
|
@ -692,12 +683,65 @@ void fn_1_2AFC(void) {
|
|||
|
||||
// unreferenced data
|
||||
u8 lbl_1_data_322[54] = {
|
||||
255, 255, 255, 255, 0, 0, 60, 68, 155, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 68, 155, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, 0,
|
||||
255,
|
||||
255,
|
||||
255,
|
||||
255,
|
||||
0,
|
||||
0,
|
||||
60,
|
||||
68,
|
||||
155,
|
||||
166,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
60,
|
||||
68,
|
||||
155,
|
||||
166,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
63,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
63,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
void fn_1_2B68(ModelData * mdl, Mtx arg1)
|
||||
void fn_1_2B68(ModelData *mdl, Mtx arg1)
|
||||
{
|
||||
GXColor sp17;
|
||||
Mtx sp150;
|
||||
|
|
@ -708,7 +752,7 @@ void fn_1_2B68(ModelData * mdl, Mtx arg1)
|
|||
GXTexObj sp30;
|
||||
f32 sp18[2][3];
|
||||
Mtx44 sp50;
|
||||
AnimBmpData * sp10;
|
||||
AnimBmpData *sp10;
|
||||
f32 temp_f31;
|
||||
f32 var_f30; // ! - uninitialized
|
||||
f32 var_f29; // ! - uninitialized
|
||||
|
|
@ -716,7 +760,7 @@ void fn_1_2B68(ModelData * mdl, Mtx arg1)
|
|||
f32 var_f27; // ! - uninitialized
|
||||
|
||||
if (!lbl_1_bss_30[0]) {
|
||||
lbl_1_bss_30[0] = HuMemDirectMallocNum(HEAP_SYSTEM, FB_SIZE(640, 480), 0x10000000);
|
||||
lbl_1_bss_30[0] = HuMemDirectMallocNum(HEAP_SYSTEM, FB_SIZE(640, 480), MEMORY_DEFAULT_NUM);
|
||||
}
|
||||
|
||||
GXSetTexCopySrc(0, 0, 640, 480);
|
||||
|
|
@ -741,15 +785,10 @@ void fn_1_2B68(ModelData * mdl, Mtx arg1)
|
|||
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3CU, 0U, 0x7DU);
|
||||
GXSetNumTevStages(1);
|
||||
|
||||
sp17.r =
|
||||
sp17.g =
|
||||
sp17.b =
|
||||
sp17.a = 255;
|
||||
sp17.r = sp17.g = sp17.b = sp17.a = 255;
|
||||
GXSetChanMatColor(GX_COLOR0A0, sp17);
|
||||
|
||||
sp17.r =
|
||||
sp17.g =
|
||||
sp17.b = 128;
|
||||
sp17.r = sp17.g = sp17.b = 128;
|
||||
sp17.a = 255;
|
||||
GXSetChanAmbColor(GX_COLOR0A0, sp17);
|
||||
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ void fn_1_46F0(void)
|
|||
var_r30 = var_r31;
|
||||
lbl_1_bss_9EC[var_r31] = CharModelCreate(var_r30, 8);
|
||||
Hu3DModelShadowSet(lbl_1_bss_9EC[var_r31]);
|
||||
lbl_1_bss_9AC[var_r31][0] = CharModelMotionCreate(var_r30, 0x5F0002);
|
||||
lbl_1_bss_9AC[var_r31][0] = CharModelMotionCreate(var_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02));
|
||||
CharModelMotionSet(var_r30, lbl_1_bss_9AC[var_r31][0]);
|
||||
Hu3DModelAttrSet(lbl_1_bss_9EC[var_r31], 0x40000001U);
|
||||
Hu3DModelCameraSet(lbl_1_bss_9EC[var_r31], lbl_1_data_358[var_r31]);
|
||||
|
|
@ -206,7 +206,7 @@ void fn_1_46F0(void)
|
|||
CharModelMotionDataClose(var_r30);
|
||||
}
|
||||
|
||||
var_r31 = Hu3DModelCreateFile(0x700024);
|
||||
var_r31 = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_SAF, 0x24));
|
||||
Hu3DModelScaleSet(var_r31, 5.0f, 5.0f, 5.0f);
|
||||
Hu3DModelShadowMapSet(var_r31);
|
||||
|
||||
|
|
@ -228,4 +228,4 @@ void fn_1_46F0(void)
|
|||
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
||||
// -------------------------------------------------------------------------- //
|
||||
// -------------------------------------------------------------------------- //
|
||||
|
|
|
|||
|
|
@ -177,114 +177,114 @@ void fn_1_5A60(omObjData *object)
|
|||
}
|
||||
|
||||
u32 lbl_1_data_3B0[] = {
|
||||
0x005D0000, 0x00000000,
|
||||
0x005E0000, 0x00000000,
|
||||
0x005E0001, 0x00000000,
|
||||
0x005F0006, 0x00000001,
|
||||
0x005F0000, 0x00000001,
|
||||
0x005F0002, 0x00000001,
|
||||
0x005F0003, 0x00000001,
|
||||
0x005F0005, 0x00000000,
|
||||
0x005F0017, 0x00000000,
|
||||
0x005F0018, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMDL0, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMDL1, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMDL1, 0x01), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x06), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x02), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x05), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_408[] = {
|
||||
0x00170000, 0x00000000,
|
||||
0x00170002, 0x00000000,
|
||||
0x00170003, 0x00000000,
|
||||
0x0017000D, 0x00000001,
|
||||
0x00170005, 0x00000001,
|
||||
0x00170007, 0x00000001,
|
||||
0x00170008, 0x00000001,
|
||||
0x0017000C, 0x00000000,
|
||||
0x00170028, 0x00000000,
|
||||
0x00170029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_LUIGI, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_460[] = {
|
||||
0x006A0000, 0x00000000,
|
||||
0x006A0002, 0x00000000,
|
||||
0x006A0003, 0x00000000,
|
||||
0x006A000D, 0x00000001,
|
||||
0x006A0005, 0x00000001,
|
||||
0x006A0007, 0x00000001,
|
||||
0x006A0008, 0x00000001,
|
||||
0x006A000C, 0x00000000,
|
||||
0x006A0028, 0x00000000,
|
||||
0x006A0029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_PEACH, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_4B8[] = {
|
||||
0x00870000, 0x00000000,
|
||||
0x00870002, 0x00000000,
|
||||
0x00870003, 0x00000000,
|
||||
0x0087000D, 0x00000001,
|
||||
0x00870005, 0x00000001,
|
||||
0x00870007, 0x00000001,
|
||||
0x00870008, 0x00000001,
|
||||
0x0087000C, 0x00000000,
|
||||
0x00870028, 0x00000000,
|
||||
0x00870029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_YOSHI, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_510[] = {
|
||||
0x00820000, 0x00000000,
|
||||
0x00820002, 0x00000000,
|
||||
0x00820003, 0x00000000,
|
||||
0x0082000D, 0x00000001,
|
||||
0x00820005, 0x00000001,
|
||||
0x00820007, 0x00000001,
|
||||
0x00820008, 0x00000001,
|
||||
0x0082000C, 0x00000000,
|
||||
0x00820028, 0x00000000,
|
||||
0x00820029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WARIO, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_568[] = {
|
||||
0x000E0000, 0x00000000,
|
||||
0x000E0002, 0x00000000,
|
||||
0x000E0003, 0x00000000,
|
||||
0x000E000D, 0x00000001,
|
||||
0x000E0005, 0x00000001,
|
||||
0x000E0007, 0x00000001,
|
||||
0x000E0008, 0x00000001,
|
||||
0x000E000C, 0x00000000,
|
||||
0x000E0028, 0x00000000,
|
||||
0x000E0029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DONKEY, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_5C0[] = {
|
||||
0x000A0000, 0x00000000,
|
||||
0x000A0002, 0x00000000,
|
||||
0x000A0003, 0x00000000,
|
||||
0x000A000D, 0x00000001,
|
||||
0x000A0005, 0x00000001,
|
||||
0x000A0007, 0x00000001,
|
||||
0x000A0008, 0x00000001,
|
||||
0x000A000C, 0x00000000,
|
||||
0x000A0028, 0x00000000,
|
||||
0x000A0029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_DAISY, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
u32 lbl_1_data_618[] = {
|
||||
0x007E0000, 0x00000000,
|
||||
0x007E0002, 0x00000000,
|
||||
0x007E0003, 0x00000000,
|
||||
0x007E000D, 0x00000001,
|
||||
0x007E0005, 0x00000001,
|
||||
0x007E0007, 0x00000001,
|
||||
0x007E0008, 0x00000001,
|
||||
0x007E000C, 0x00000000,
|
||||
0x007E0028, 0x00000000,
|
||||
0x007E0029, 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x00), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x02), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x03), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x0D), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x05), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x07), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x08), 0x00000001,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x0C), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x28), 0x00000000,
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGI, 0x29), 0x00000000,
|
||||
0x00000000, 0x00000000
|
||||
};
|
||||
|
||||
|
|
@ -750,4 +750,4 @@ void fn_1_83B4(void)
|
|||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,45 +6,45 @@ s16 lbl_1_bss_152[12];
|
|||
s16 lbl_1_bss_150;
|
||||
|
||||
DataListModel lbl_1_data_428[] = {
|
||||
{ 0x630000, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630000, 0x1, 2, 0, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630001, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630001, 0x1, 2, 2, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630002, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630002, 0x1, 2, 4, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630003, 0x1, 1, -1, 4, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630004, 0x1, 1, -1, 4, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630005, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630005, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630005, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630006, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630006, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630006, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630026, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630027, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630028, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630029, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x63002A, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x63002B, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x63002C, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x63002D, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x63002E, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ 0x630007, 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x00), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x00), 0x1, 2, 0, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x01), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x01), 0x1, 2, 2, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x02), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x02), 0x1, 2, 4, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x03), 0x1, 1, -1, 4, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x04), 0x1, 1, -1, 4, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x05), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x06), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x26), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x27), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x28), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x29), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2A), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2B), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2C), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2D), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2E), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x07), 0x1, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
{ -1, 0, 0, -1, -1, { 0, 0, 0 }, { 0, 0, 0 }, { 1, 1, 1 } },
|
||||
};
|
||||
|
||||
DataListSprite lbl_1_data_93C[] = {
|
||||
{ 0x630009, 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x630008, 4, 2000, 288, 100, { 255, 255, 255, 255 } },
|
||||
{ 0x63000A, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x63000B, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x63000C, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x63001F, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x630020, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x630021, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x630022, 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ 0x63002F, 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0x63003C, 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x09), 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x08), 4, 2000, 288, 100, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x0A), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x0B), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x0C), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x1F), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x20), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x21), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x22), 4, 2000, 288, 300, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x2F), 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ DATA_MAKE_NUM(DATADIR_MODESEL, 0x3C), 4, 2000, 288, 240, { 255, 255, 255, 255 } },
|
||||
{ 0, 0, 0, 0, 0, { 0, 0, 0, 0 } },
|
||||
};
|
||||
|
||||
|
|
@ -127,4 +127,4 @@ void fn_1_C2BC(void)
|
|||
espKill(lbl_1_bss_152[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,261 +1,245 @@
|
|||
#define HUWIN_USE_OLD_DEFS
|
||||
#include "game/object.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/wipe.h"
|
||||
#include "game/window.h"
|
||||
#include "game/object.h"
|
||||
#include "game/process.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfanim.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/object.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/process.h"
|
||||
#include "game/window.h"
|
||||
#include "game/wipe.h"
|
||||
|
||||
|
||||
#include "ext_math.h"
|
||||
#include "REL/modeseldll.h"
|
||||
#include "ext_math.h"
|
||||
|
||||
s16 lbl_1_data_80[] = {
|
||||
16, 17, 18,
|
||||
19, 20, 21
|
||||
};
|
||||
|
||||
s32 lbl_1_data_8C[] = {
|
||||
0x630030,
|
||||
0x630032,
|
||||
0x630034,
|
||||
0x630036,
|
||||
0x630038,
|
||||
0x63003A
|
||||
};
|
||||
s16 lbl_1_data_80[] = { 16, 17, 18, 19, 20, 21 };
|
||||
|
||||
s32 lbl_1_data_A4[] = {
|
||||
0x630031,
|
||||
0x630033,
|
||||
0x630035,
|
||||
0x630037,
|
||||
0x630039,
|
||||
0x63003B
|
||||
};
|
||||
s32 lbl_1_data_8C[] = { DATA_MAKE_NUM(DATADIR_MODESEL, 0x30), DATA_MAKE_NUM(DATADIR_MODESEL, 0x32), DATA_MAKE_NUM(DATADIR_MODESEL, 0x34),
|
||||
DATA_MAKE_NUM(DATADIR_MODESEL, 0x36), DATA_MAKE_NUM(DATADIR_MODESEL, 0x38), DATA_MAKE_NUM(DATADIR_MODESEL, 0x3A) };
|
||||
|
||||
u32 lbl_1_data_BC[] = {
|
||||
0x110001,
|
||||
0x110002,
|
||||
0x110003,
|
||||
0x110004,
|
||||
0x110005,
|
||||
0x110006
|
||||
};
|
||||
s32 lbl_1_data_A4[] = { DATA_MAKE_NUM(DATADIR_MODESEL, 0x31), DATA_MAKE_NUM(DATADIR_MODESEL, 0x33), DATA_MAKE_NUM(DATADIR_MODESEL, 0x35),
|
||||
DATA_MAKE_NUM(DATADIR_MODESEL, 0x37), DATA_MAKE_NUM(DATADIR_MODESEL, 0x39), DATA_MAKE_NUM(DATADIR_MODESEL, 0x3B) };
|
||||
|
||||
u32 lbl_1_data_BC[] = { MAKE_MESSID(17, 1), MAKE_MESSID(17, 2), MAKE_MESSID(17, 3), MAKE_MESSID(17, 4), MAKE_MESSID(17, 5), MAKE_MESSID(17, 6) };
|
||||
|
||||
s16 lbl_1_bss_82;
|
||||
s16 lbl_1_bss_80;
|
||||
|
||||
void fn_1_3668(void);
|
||||
|
||||
//Scratch is at https://decomp.me/scratch/iirXp
|
||||
//Register allocation issues at line 180 with load of 1.0 double constant
|
||||
// Scratch is at https://decomp.me/scratch/iirXp
|
||||
// Register allocation issues at line 180 with load of 1.0 double constant
|
||||
s32 fn_1_2490(void)
|
||||
{
|
||||
float sp10[2];
|
||||
float sp8[2];
|
||||
float temp_f31;
|
||||
float temp_f30;
|
||||
s16 temp_r31;
|
||||
s16 temp_r30;
|
||||
s16 temp_r29;
|
||||
s16 temp_r28;
|
||||
s16 temp_r27;
|
||||
s16 temp_r26;
|
||||
s32 temp_r25;
|
||||
WindowData *temp_r24;
|
||||
AnimData *temp_r23;
|
||||
AnimData *temp_r22;
|
||||
s16 temp_r21;
|
||||
fn_1_3668();
|
||||
fn_1_1EC0(1);
|
||||
temp_r25 = HuAudFXPlay(2094);
|
||||
if(omovlevtno) {
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 30);
|
||||
}
|
||||
for(temp_r31=0; temp_r31<=20; temp_r31++) {
|
||||
temp_f31 = 1.0-sind(90.0*(temp_r31/20.0));
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -50.0f+(200.0f*temp_f31), 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[15], 0, -50.0f+(200.0f*temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuPrcSleep(20);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[14], 0x40000002);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[15], 0x40000002);
|
||||
HuAudFXPlay(2093);
|
||||
HuPrcSleep(120);
|
||||
HuAudFXPlay(2095);
|
||||
for(temp_r31=0; temp_r31<=30; temp_r31++) {
|
||||
temp_f31 = temp_r31/30.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -50.0f-(20.0f*temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinMesMaxSizeBetGet(sp10, 0x110000, 0x110006);
|
||||
lbl_1_bss_82 = HuWinExCreateStyled(-10000, 432-sp10[1], sp10[0], sp10[1], -1, 0);
|
||||
HuWinMesSpeedSet(lbl_1_bss_82, 0);
|
||||
temp_r24 = &winData[lbl_1_bss_82];
|
||||
temp_r24->active_pad = 1;
|
||||
HuWinExAnimIn(lbl_1_bss_82);
|
||||
HuWinMesSet(lbl_1_bss_82, 0x110000);
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x1A0020);
|
||||
temp_r29 = HuWinCreate(-10000, 8+(432-sp10[1]-sp8[1]), sp8[0], sp8[1], 0);
|
||||
HuWinMesSpeedSet(temp_r29, 0);
|
||||
HuWinBGTPLvlSet(temp_r29, 0);
|
||||
HuWinMesSet(temp_r29, 0x1A0020);
|
||||
HuWinDispOff(temp_r29);
|
||||
while(!Hu3DMotionEndCheck(lbl_1_bss_19A[15])) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[15], 1);
|
||||
for(temp_r31=0; temp_r31<6; temp_r31++) {
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0, -50, 0);
|
||||
}
|
||||
HuWinMesWait(lbl_1_bss_82);
|
||||
|
||||
lbl_1_bss_80 = temp_r26 = 0;
|
||||
espAttrReset(lbl_1_bss_152[10], HUSPR_ATTR_DISPOFF);
|
||||
espBankSet(lbl_1_bss_152[10], 0);
|
||||
for(temp_r31=0; temp_r31<=10; temp_r31++) {
|
||||
temp_f31 = temp_r31/10.0f;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0, -50, 50.0*sind(90.0f*temp_f31));
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0+(106.0*sind(90.0f*temp_f31)));
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinMesSet(lbl_1_bss_82, lbl_1_data_BC[lbl_1_bss_80]);
|
||||
HuWinDispOn(temp_r29);
|
||||
while(1) {
|
||||
temp_r30 = 0;
|
||||
if(HuPadDStkRep[0] & PAD_BUTTON_LEFT) {
|
||||
temp_r30 = -1;
|
||||
} else if(HuPadDStkRep[0] & PAD_BUTTON_RIGHT) {
|
||||
temp_r30 = 1;
|
||||
}
|
||||
if(temp_r30) {
|
||||
if(lbl_1_bss_80+temp_r30 < 0) {
|
||||
lbl_1_bss_80 = 0;
|
||||
} else if(lbl_1_bss_80+temp_r30 >= 6) {
|
||||
lbl_1_bss_80 = 5;
|
||||
} else {
|
||||
lbl_1_bss_80 += temp_r30;
|
||||
}
|
||||
if(temp_r26 != lbl_1_bss_80) {
|
||||
HuAudFXPlay(0);
|
||||
for(temp_r31=0; temp_r31<=10; temp_r31++) {
|
||||
temp_f31 = temp_r31/10.0f;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r26]], 0, -50, 50.0*cosd(90.0f*temp_f31));
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0, -50, 50.0*sind(90.0f*temp_f31));
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0+(106.0*(1.0-sind(180.0f*temp_f31))));
|
||||
if(temp_r31 == 5) {
|
||||
espBankSet(lbl_1_bss_152[10], lbl_1_bss_80);
|
||||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r26 = lbl_1_bss_80;
|
||||
HuWinMesSet(lbl_1_bss_82, lbl_1_data_BC[lbl_1_bss_80]);
|
||||
}
|
||||
}
|
||||
if(HuPadBtnDown[0] & PAD_BUTTON_A) {
|
||||
HuAudFXPlay(2);
|
||||
break;
|
||||
} else if(HuPadBtnDown[0] & PAD_BUTTON_B) {
|
||||
HuAudFXPlay(3);
|
||||
HuAudFXStop(temp_r25);
|
||||
return -1;
|
||||
} else {
|
||||
HuPrcVSleep();
|
||||
continue;
|
||||
}
|
||||
}
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0x40000002);
|
||||
HuAudSeqAllFadeOut(1000);
|
||||
for(temp_r31=0; temp_r31<=20; temp_r31++) {
|
||||
temp_f31 = temp_r31/20.0f;
|
||||
for(temp_r28=0; temp_r28<6; temp_r28++) {
|
||||
if(temp_r28 != lbl_1_bss_80) {
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r28]], 0, -50-(300.0*(1.0-cosd(90.0f*temp_f31))), 0);
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0+(106.0*(cosd(90.0f*temp_f31))));
|
||||
}
|
||||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinKill(temp_r29);
|
||||
HuWinExAnimOut(lbl_1_bss_82);
|
||||
HuAudFXStop(temp_r25);
|
||||
temp_r27 = HuSprGrpCreate(1);
|
||||
temp_r21 = HuTHPSprCreateVol("movie/opmov_c00.thp", 0, 3000, 90.0);
|
||||
HuSprGrpMemberSet(temp_r27, 0, temp_r21);
|
||||
HuSprPosSet(temp_r27, 0, 288.0f, 240.0f);
|
||||
HuSprDrawNoSet(temp_r27, 0, 127);
|
||||
HuPrcSleep(2);
|
||||
espAttrSet(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF);
|
||||
for(temp_r31=0; temp_r31<=10; temp_r31++) {
|
||||
temp_f31 = temp_r31/10.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -70.0f-(100.0f*temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r23 = HuSprAnimRead(HuDataReadNum(lbl_1_data_8C[lbl_1_bss_80], MEMORY_DEFAULT_NUM));
|
||||
temp_r22 = HuSprAnimRead(HuDataReadNum(lbl_1_data_A4[lbl_1_bss_80], MEMORY_DEFAULT_NUM));
|
||||
Hu3DAnimCreate(temp_r23, lbl_1_bss_19A[22], "ys002_a1");
|
||||
Hu3DAnimCreate(temp_r22, lbl_1_bss_19A[22], "ys002_a2");
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 1);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[22], 0);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[22], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[22], 0x40000002);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, 27, 50);
|
||||
Hu3DModelScaleSet(lbl_1_bss_19A[22], 1.0f, 1.063f, 1.0f);
|
||||
for(temp_r31=1; temp_r31<=20; temp_r31++) {
|
||||
temp_f31 = temp_r31/20.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, 27.0-(60.0*sind(90.0f*temp_f31)), 50);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuPrcSleep(90);
|
||||
Hu3DFogSet(3000, 8000, 255, 255, 255);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[22], 0x40000002);
|
||||
HuPrcSleep(60);
|
||||
temp_f31 =0;
|
||||
temp_f30 = 5;
|
||||
while(!HuTHPEndCheck()) {
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, -33.0f+(temp_f31/30.0f), 50.0f-temp_f31);
|
||||
temp_f31 += temp_f30;
|
||||
temp_f30 += 5.0f;
|
||||
HuPrcVSleep();
|
||||
}
|
||||
_ClearFlag(FLAG_ID_MAKE(1, 11));
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10);
|
||||
while(WipeStatGet()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuTHPClose();
|
||||
HuSprGrpKill(temp_r27);
|
||||
return lbl_1_bss_80;
|
||||
float sp10[2];
|
||||
float sp8[2];
|
||||
float temp_f31;
|
||||
float temp_f30;
|
||||
s16 temp_r31;
|
||||
s16 temp_r30;
|
||||
s16 temp_r29;
|
||||
s16 temp_r28;
|
||||
s16 temp_r27;
|
||||
s16 temp_r26;
|
||||
s32 temp_r25;
|
||||
WindowData *temp_r24;
|
||||
AnimData *temp_r23;
|
||||
AnimData *temp_r22;
|
||||
s16 temp_r21;
|
||||
fn_1_3668();
|
||||
fn_1_1EC0(1);
|
||||
temp_r25 = HuAudFXPlay(2094);
|
||||
if (omovlevtno) {
|
||||
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 30);
|
||||
}
|
||||
for (temp_r31 = 0; temp_r31 <= 20; temp_r31++) {
|
||||
temp_f31 = 1.0 - sind(90.0 * (temp_r31 / 20.0));
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -50.0f + (200.0f * temp_f31), 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[15], 0, -50.0f + (200.0f * temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuPrcSleep(20);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[14], 0x40000002);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[15], 0x40000002);
|
||||
HuAudFXPlay(2093);
|
||||
HuPrcSleep(120);
|
||||
HuAudFXPlay(2095);
|
||||
for (temp_r31 = 0; temp_r31 <= 30; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 30.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -50.0f - (20.0f * temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinMesMaxSizeBetGet(sp10, MAKE_MESSID(0x11, 0x00), MAKE_MESSID(0x11, 0x06));
|
||||
lbl_1_bss_82 = HuWinExCreateStyled(-10000, 432 - sp10[1], sp10[0], sp10[1], -1, 0);
|
||||
HuWinMesSpeedSet(lbl_1_bss_82, 0);
|
||||
temp_r24 = &winData[lbl_1_bss_82];
|
||||
temp_r24->active_pad = 1;
|
||||
HuWinExAnimIn(lbl_1_bss_82);
|
||||
HuWinMesSet(lbl_1_bss_82, MAKE_MESSID(0x11, 0x00));
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x1A, 0x20));
|
||||
temp_r29 = HuWinCreate(-10000, 8 + (432 - sp10[1] - sp8[1]), sp8[0], sp8[1], 0);
|
||||
HuWinMesSpeedSet(temp_r29, 0);
|
||||
HuWinBGTPLvlSet(temp_r29, 0);
|
||||
HuWinMesSet(temp_r29, MAKE_MESSID(0x1A, 0x20));
|
||||
HuWinDispOff(temp_r29);
|
||||
while (!Hu3DMotionEndCheck(lbl_1_bss_19A[15])) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[15], 1);
|
||||
for (temp_r31 = 0; temp_r31 < 6; temp_r31++) {
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r31]], 0, -50, 0);
|
||||
}
|
||||
HuWinMesWait(lbl_1_bss_82);
|
||||
|
||||
lbl_1_bss_80 = temp_r26 = 0;
|
||||
espAttrReset(lbl_1_bss_152[10], HUSPR_ATTR_DISPOFF);
|
||||
espBankSet(lbl_1_bss_152[10], 0);
|
||||
for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 10.0f;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0, -50, 50.0 * sind(90.0f * temp_f31));
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0 + (106.0 * sind(90.0f * temp_f31)));
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinMesSet(lbl_1_bss_82, lbl_1_data_BC[lbl_1_bss_80]);
|
||||
HuWinDispOn(temp_r29);
|
||||
while (1) {
|
||||
temp_r30 = 0;
|
||||
if (HuPadDStkRep[0] & PAD_BUTTON_LEFT) {
|
||||
temp_r30 = -1;
|
||||
}
|
||||
else if (HuPadDStkRep[0] & PAD_BUTTON_RIGHT) {
|
||||
temp_r30 = 1;
|
||||
}
|
||||
if (temp_r30) {
|
||||
if (lbl_1_bss_80 + temp_r30 < 0) {
|
||||
lbl_1_bss_80 = 0;
|
||||
}
|
||||
else if (lbl_1_bss_80 + temp_r30 >= 6) {
|
||||
lbl_1_bss_80 = 5;
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_80 += temp_r30;
|
||||
}
|
||||
if (temp_r26 != lbl_1_bss_80) {
|
||||
HuAudFXPlay(0);
|
||||
for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 10.0f;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r26]], 0, -50, 50.0 * cosd(90.0f * temp_f31));
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0, -50, 50.0 * sind(90.0f * temp_f31));
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0 + (106.0 * (1.0 - sind(180.0f * temp_f31))));
|
||||
if (temp_r31 == 5) {
|
||||
espBankSet(lbl_1_bss_152[10], lbl_1_bss_80);
|
||||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r26 = lbl_1_bss_80;
|
||||
HuWinMesSet(lbl_1_bss_82, lbl_1_data_BC[lbl_1_bss_80]);
|
||||
}
|
||||
}
|
||||
if (HuPadBtnDown[0] & PAD_BUTTON_A) {
|
||||
HuAudFXPlay(2);
|
||||
break;
|
||||
}
|
||||
else if (HuPadBtnDown[0] & PAD_BUTTON_B) {
|
||||
HuAudFXPlay(3);
|
||||
HuAudFXStop(temp_r25);
|
||||
return -1;
|
||||
}
|
||||
else {
|
||||
HuPrcVSleep();
|
||||
continue;
|
||||
}
|
||||
}
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 0x40000002);
|
||||
HuAudSeqAllFadeOut(1000);
|
||||
for (temp_r31 = 0; temp_r31 <= 20; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 20.0f;
|
||||
for (temp_r28 = 0; temp_r28 < 6; temp_r28++) {
|
||||
if (temp_r28 != lbl_1_bss_80) {
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[lbl_1_data_80[temp_r28]], 0, -50 - (300.0 * (1.0 - cosd(90.0f * temp_f31))), 0);
|
||||
espPosSet(lbl_1_bss_152[10], 288.0, -50.0 + (106.0 * (cosd(90.0f * temp_f31))));
|
||||
}
|
||||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuWinKill(temp_r29);
|
||||
HuWinExAnimOut(lbl_1_bss_82);
|
||||
HuAudFXStop(temp_r25);
|
||||
temp_r27 = HuSprGrpCreate(1);
|
||||
temp_r21 = HuTHPSprCreateVol("movie/opmov_c00.thp", 0, 3000, 90.0);
|
||||
HuSprGrpMemberSet(temp_r27, 0, temp_r21);
|
||||
HuSprPosSet(temp_r27, 0, 288.0f, 240.0f);
|
||||
HuSprDrawNoSet(temp_r27, 0, 127);
|
||||
HuPrcSleep(2);
|
||||
espAttrSet(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF);
|
||||
for (temp_r31 = 0; temp_r31 <= 10; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 10.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[14], 0, -70.0f - (100.0f * temp_f31), 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r23 = HuSprAnimRead(HuDataReadNum(lbl_1_data_8C[lbl_1_bss_80], MEMORY_DEFAULT_NUM));
|
||||
temp_r22 = HuSprAnimRead(HuDataReadNum(lbl_1_data_A4[lbl_1_bss_80], MEMORY_DEFAULT_NUM));
|
||||
Hu3DAnimCreate(temp_r23, lbl_1_bss_19A[22], "ys002_a1");
|
||||
Hu3DAnimCreate(temp_r22, lbl_1_bss_19A[22], "ys002_a2");
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[lbl_1_data_80[lbl_1_bss_80]], 1);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[22], 0);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[22], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[22], 0x40000002);
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, 27, 50);
|
||||
Hu3DModelScaleSet(lbl_1_bss_19A[22], 1.0f, 1.063f, 1.0f);
|
||||
for (temp_r31 = 1; temp_r31 <= 20; temp_r31++) {
|
||||
temp_f31 = temp_r31 / 20.0;
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, 27.0 - (60.0 * sind(90.0f * temp_f31)), 50);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuPrcSleep(90);
|
||||
Hu3DFogSet(3000, 8000, 255, 255, 255);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[22], 0x40000002);
|
||||
HuPrcSleep(60);
|
||||
temp_f31 = 0;
|
||||
temp_f30 = 5;
|
||||
while (!HuTHPEndCheck()) {
|
||||
Hu3DModelPosSet(lbl_1_bss_19A[22], 0, -33.0f + (temp_f31 / 30.0f), 50.0f - temp_f31);
|
||||
temp_f31 += temp_f30;
|
||||
temp_f30 += 5.0f;
|
||||
HuPrcVSleep();
|
||||
}
|
||||
_ClearFlag(FLAG_ID_MAKE(1, 11));
|
||||
WipeColorSet(255, 255, 255);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 10);
|
||||
while (WipeStatGet()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuTHPClose();
|
||||
HuSprGrpKill(temp_r27);
|
||||
return lbl_1_bss_80;
|
||||
}
|
||||
|
||||
void fn_1_3668(void)
|
||||
{
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
Hu3DShadowCreate(20, 100, 5000);
|
||||
Hu3DShadowTPLvlSet(0.3f);
|
||||
Hu3DShadowSizeSet(192);
|
||||
sp14.x = sp14.y = sp14.z = 0;
|
||||
sp20.x = 0;
|
||||
sp20.z = 300;
|
||||
sp20.y = 400;
|
||||
sp8.x = 0;
|
||||
sp8.y = 1;
|
||||
sp8.z = 0;
|
||||
Hu3DShadowPosSet(&sp20, &sp8, &sp14);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[15], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[15], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[15], 0);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[14], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[14], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[14], 0);
|
||||
}
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
Hu3DShadowCreate(20, 100, 5000);
|
||||
Hu3DShadowTPLvlSet(0.3f);
|
||||
Hu3DShadowSizeSet(192);
|
||||
sp14.x = sp14.y = sp14.z = 0;
|
||||
sp20.x = 0;
|
||||
sp20.z = 300;
|
||||
sp20.y = 400;
|
||||
sp8.x = 0;
|
||||
sp8.y = 1;
|
||||
sp8.z = 0;
|
||||
Hu3DShadowPosSet(&sp20, &sp8, &sp14);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[15], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[15], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[15], 0);
|
||||
Hu3DModelAttrReset(lbl_1_bss_19A[14], 1);
|
||||
Hu3DModelAttrSet(lbl_1_bss_19A[14], 0x40000002);
|
||||
Hu3DMotionTimeSet(lbl_1_bss_19A[14], 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,54 +21,54 @@ typedef struct struct_data0 {
|
|||
} StructData0;
|
||||
|
||||
StructData0 lbl_1_data_0[] = {
|
||||
{ 0x680000, 0, 0, 0, 1 },
|
||||
{ 0x680001, 0, 0, 0, 1 },
|
||||
{ 0x680002, 0, 0, 0, 1 },
|
||||
{ 0x680003, 0, 0, 0, 1 },
|
||||
{ 0x680004, 0, 0, 0, 1 },
|
||||
{ 0x680005, 0, 0, 0, 1 },
|
||||
{ 0x680006, 0, 0, 0, 1 },
|
||||
{ 0x680007, 0, 0, 0, 1 },
|
||||
{ 0x680008, 0, 0, 0, 1 },
|
||||
{ 0x680009, 0, 0, 0, 1 },
|
||||
{ 0x68000A, 0, 0, 0, 1 },
|
||||
{ 0x68000B, 0, 0, 0, 1 },
|
||||
{ 0x68000C, 0, 0, 0, 1 },
|
||||
{ 0x68000D, 0, 0, 0, 1 },
|
||||
{ 0x68000E, 1, 0, 0, 1 },
|
||||
{ 0x68000F, 0, 0, 0, 1 },
|
||||
{ 0x680010, 0, 0, 0, 1 },
|
||||
{ 0x680011, 0, 0, 0, 1 },
|
||||
{ 0x680012, 0, 0, 0, 1 },
|
||||
{ 0x680013, 0, 0, 0, 1 },
|
||||
{ 0x680014, 0, 0, 0, 1 },
|
||||
{ 0x680015, 0, 0, 0, 1 },
|
||||
{ 0x680016, 0, 0, 0, 1 },
|
||||
{ 0x680017, 0, 0, 0, 1 },
|
||||
{ 0x680018, 0, 0, 0, 1 },
|
||||
{ 0x680019, 0, 0, 0, 1 },
|
||||
{ 0x68001A, 0, 0, 0, 1 },
|
||||
{ 0x68001B, 0, 0, 0, 1 },
|
||||
{ 0x68001C, 0, 0, 0, 1 },
|
||||
{ 0x68001D, 0, 0, 0, 1 },
|
||||
{ 0x68001E, 0, 0, 0, 1 },
|
||||
{ 0x68001F, 0, 0, 0, 1 },
|
||||
{ 0x680020, 0, 0, 0, 1 },
|
||||
{ 0x680021, 0, 0, 0, 1 },
|
||||
{ 0x680022, 0, 0, 0, 1 },
|
||||
{ 0x680023, 0, 0, 0, 1 },
|
||||
{ 0x680024, 0, 0, 0, 1 },
|
||||
{ 0x680025, 0, 0, 0, 1 },
|
||||
{ 0x680026, 0, 0, 0, 1 },
|
||||
{ 0x680027, 0, 0, 0, 1 },
|
||||
{ 0x680028, 0, 0, 0, 1 },
|
||||
{ 0x680029, 0, 0, 0, 1 },
|
||||
{ 0x68002A, 0, 0, 0, 1 },
|
||||
{ 0x68002B, 0, 0, 0, 1 },
|
||||
{ 0x68002C, 0, 0, 0, 1 },
|
||||
{ 0x68002D, 0, 0, 0, 1 },
|
||||
{ 0x68002E, 0, 0, 0, 1 },
|
||||
{ 0x68002F, 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x00), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x01), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x02), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x03), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x04), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x05), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x06), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x07), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x08), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x09), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0A), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0B), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0C), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0D), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0E), 1, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x0F), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x10), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x11), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x12), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x13), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x14), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x15), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x16), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x17), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x18), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x19), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1A), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1B), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1C), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1D), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1E), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x1F), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x20), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x21), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x22), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x23), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x24), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x25), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x26), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x27), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x28), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x29), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2A), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2B), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2C), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2D), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2E), 0, 0, 0, 1 },
|
||||
{ DATA_MAKE_NUM(DATADIR_MSTORY4, 0x2F), 0, 0, 0, 1 },
|
||||
};
|
||||
|
||||
char *lbl_1_data_430[] = {
|
||||
|
|
@ -605,4 +605,4 @@ void fn_1_13A0(void)
|
|||
while(1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ omObjData *OptionGuideCreate(void)
|
|||
object->model[0] = Hu3DModelCreateFile(DATA_MAKE_NUM(DATADIR_OPTION, 12));
|
||||
Hu3DModelLayerSet(object->model[0], 1);
|
||||
for (i = 0; i < 3; i++) {
|
||||
object->motion[i] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(guideMotTbl[i], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->motion[i] = Hu3DJointMotionFile(object->model[0], guideMotTbl[i]);
|
||||
}
|
||||
work->unk_5C = CharModelEffectNpcInit(object->model[0], object->motion[2], 1, 0xC);
|
||||
work->unk_60 = CharModelEffectNpcInit(object->model[0], object->motion[1], 0, 0xC);
|
||||
|
|
@ -217,7 +217,7 @@ static void UpdateGuide(omObjData *object)
|
|||
static float LerpAngle(float start, float end, float time)
|
||||
{
|
||||
float angle;
|
||||
|
||||
|
||||
float delta = fmod(end - start, 360.0);
|
||||
if (0.0f > delta) {
|
||||
delta += 360.0f;
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ omObjData *PresentGuideCreate(void)
|
|||
Hu3DModelLayerSet(object->model[0], 1);
|
||||
|
||||
for (var_r29 = 0; var_r29 < 3; var_r29++) {
|
||||
object->motion[var_r29] = Hu3DJointMotion(object->model[0], HuDataSelHeapReadNum(guideMotTbl[var_r29], MEMORY_DEFAULT_NUM, HEAP_DATA));
|
||||
object->motion[var_r29] = Hu3DJointMotionFile(object->model[0], guideMotTbl[var_r29]);
|
||||
}
|
||||
Hu3DMotionShiftSet(object->model[0], object->motion[work->motion = 0], 0.0f, 8.0f, 0x40000001);
|
||||
work->unk_50 = CharModelEffectNpcInit(object->model[0], object->motion[2], 1, 10);
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ static void ExecPresentView(omObjData *object)
|
|||
case 6:
|
||||
HuAudFXPlay(66);
|
||||
PresentWinAnimIn(work->window);
|
||||
PresentWinMesSet(work->window, 0x320002);
|
||||
PresentWinMesSet(work->window, MAKE_MESSID(0x32, 0x02));
|
||||
object->unk10 = 7;
|
||||
case 7:
|
||||
if (work->window->state) {
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
#include "game/hsfex.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/wipe.h"
|
||||
#include "game/window.h"
|
||||
|
||||
#include "REL/present.h"
|
||||
|
||||
|
|
@ -502,13 +503,13 @@ static void ExecSelectRoom(omObjData *object)
|
|||
PresentWinAnimIn(work->presentDescWindow);
|
||||
PresentWinAnimIn(work->btnLegendWindow);
|
||||
if (work->constellationSelF) {
|
||||
mess = 0x320080;
|
||||
mess = MAKE_MESSID(0x32, 0x80);
|
||||
}
|
||||
else if (work->room == ROOM_TROPHY) {
|
||||
mess = 0x320085;
|
||||
mess = MAKE_MESSID(0x32, 0x85);
|
||||
}
|
||||
else {
|
||||
mess = 0x32007e;
|
||||
mess = MAKE_MESSID(0x32, 0x7e);
|
||||
}
|
||||
PresentWinMesSet(work->btnLegendWindow, mess);
|
||||
switch (work->room) {
|
||||
|
|
@ -522,36 +523,36 @@ static void ExecSelectRoom(omObjData *object)
|
|||
case ROOM_WALUIGI:
|
||||
if (work->constellationSelF) {
|
||||
if (PresentUnlocked(object, work->room, ROOM_TROPHY)) {
|
||||
mess = 0x320005;
|
||||
mess = MAKE_MESSID(0x32, 0x05);
|
||||
}
|
||||
else {
|
||||
mess = 0x320082;
|
||||
mess = MAKE_MESSID(0x32, 0x82);
|
||||
}
|
||||
}
|
||||
else if (UnlockedPresents(object, work->room) > 0) {
|
||||
mess = 0x320001;
|
||||
mess = MAKE_MESSID(0x32, 0x01);
|
||||
}
|
||||
else {
|
||||
mess = 0x320081;
|
||||
mess = MAKE_MESSID(0x32, 0x81);
|
||||
}
|
||||
PresentWinMesSet(work->presentDescWindow, mess);
|
||||
PresentWinInsertMesSet(work->presentDescWindow, roomMessTbl[work->room], 0);
|
||||
break;
|
||||
case ROOM_TROPHY:
|
||||
if (PresentUnlocked(object, ROOM_TROPHY, 0)) {
|
||||
mess = 0x320041;
|
||||
mess = MAKE_MESSID(0x32, 0x41);
|
||||
}
|
||||
else {
|
||||
mess = 0x320084;
|
||||
mess = MAKE_MESSID(0x32, 0x84);
|
||||
}
|
||||
PresentWinMesSet(work->presentDescWindow, mess);
|
||||
break;
|
||||
case ROOM_MG:
|
||||
if (UnlockedPresents(object, ROOM_MG) > 0) {
|
||||
mess = 0x320083;
|
||||
mess = MAKE_MESSID(0x32, 0x83);
|
||||
}
|
||||
else {
|
||||
mess = 0x320081;
|
||||
mess = MAKE_MESSID(0x32, 0x81);
|
||||
}
|
||||
PresentWinMesSet(work->presentDescWindow, mess);
|
||||
break;
|
||||
|
|
@ -718,13 +719,13 @@ static void ExecSelectPresent(omObjData *object)
|
|||
}
|
||||
PresentWinAnimIn(work->presentDescWindow);
|
||||
PresentWinAnimIn(work->btnLegendWindow);
|
||||
PresentWinMesSet(work->btnLegendWindow, 0x32007F);
|
||||
PresentWinMesSet(work->btnLegendWindow, MAKE_MESSID(0x32, 0x7F));
|
||||
|
||||
if (work->roomNotEmptyF) {
|
||||
PresentWinMesSet(work->presentDescWindow, roomTbl[room].presentData[idxInRoom].descMess);
|
||||
}
|
||||
else {
|
||||
PresentWinMesSet(work->presentDescWindow, 0x320003);
|
||||
PresentWinMesSet(work->presentDescWindow, MAKE_MESSID(0x32, 0x03));
|
||||
}
|
||||
work->cursorTime = 0.0f;
|
||||
work->cursorSpeed = 1.0f / 6.0f;
|
||||
|
|
@ -1099,7 +1100,7 @@ static void ExecPresentGet(omObjData *object)
|
|||
case 3:
|
||||
PresentWinAnimIn(work->presentDescWindow);
|
||||
PresentWinInsertMesSet(work->presentDescWindow, roomTbl[work->room].presentData[work->idxInRoom].nameMess, 0);
|
||||
PresentWinMesSet(work->presentDescWindow, 0x320004);
|
||||
PresentWinMesSet(work->presentDescWindow, MAKE_MESSID(0x32, 0x04));
|
||||
PresentWinMesWait(work->presentDescWindow);
|
||||
object->unk10 = 4;
|
||||
case 4:
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -305,7 +305,7 @@ static void CreateStaff(void)
|
|||
}
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = HuDataSelHeapReadNum(var_r31 + 0x73001A, MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
var_r29 = HuDataSelHeapReadNum(var_r31 + DATA_MAKE_NUM(DATADIR_STAFF, 0x1A), MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
var_r28 = HuSprAnimRead(var_r29);
|
||||
var_r30 = HuSprCreate(var_r28, 256, 0);
|
||||
staffLogoGroup[var_r31] = HuSprGrpCreate(1);
|
||||
|
|
@ -319,7 +319,7 @@ static void CreateStaff(void)
|
|||
HuSprGrpPosSet(thpGroup, 280.0f, 200.0f);
|
||||
HuSprAttrSet(thpGroup, 0, HUSPR_ATTR_DISPOFF);
|
||||
HuTHPStop();
|
||||
var_r29 = HuDataSelHeapReadNum(0x73001D, MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
var_r29 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_STAFF, 0x1D), MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
var_r28 = HuSprAnimRead(var_r29);
|
||||
var_r30 = HuSprCreate(var_r28, 16385, 0);
|
||||
thpCoverGroup = HuSprGrpCreate(1);
|
||||
|
|
|
|||
|
|
@ -17,16 +17,16 @@ void fn_1_2D04(void)
|
|||
m02GenDice spEC;
|
||||
m02GenDice sp4C;
|
||||
s32 sp24[10] = {
|
||||
0x0076001C,
|
||||
0x0076001D,
|
||||
0x0076001E,
|
||||
0x0076001F,
|
||||
0x00760020,
|
||||
0x00760021,
|
||||
0x00760022,
|
||||
0x00760023,
|
||||
0x00760024,
|
||||
0x00760025
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x1C),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x1D),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x1E),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x1F),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x20),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x21),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x22),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x23),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x25)
|
||||
};
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
|
|
@ -43,7 +43,7 @@ void fn_1_2D04(void)
|
|||
OSReport("gamble start %d\n", temp_r31);
|
||||
sp8 = BoardSpaceGet(0, GWPlayer[temp_r31].space_curr);
|
||||
BoardRollDispSet(0);
|
||||
temp_r28 = BoardModelCreate(0x76000F, NULL, 0);
|
||||
temp_r28 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x0F), NULL, 0);
|
||||
BoardModelVisibilitySet(temp_r28, 0);
|
||||
switch(lbl_1_bss_54) {
|
||||
case 0:
|
||||
|
|
@ -78,9 +78,9 @@ void fn_1_2D04(void)
|
|||
BoardModelHookReset(temp_r30);
|
||||
BoardModelPosGet(temp_r30, &sp18);
|
||||
BoardModelPosSetV(lbl_1_data_286, &sp18);
|
||||
fn_1_121C(0x13000A);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x0A));
|
||||
spEC.unk00 = 1;
|
||||
spEC.unk04 = 0x76001B;
|
||||
spEC.unk04 = DATA_MAKE_NUM(DATADIR_W02, 0x1B);
|
||||
spEC.unk08 = sp24;
|
||||
spEC.unk0C = sp18;
|
||||
spEC.unk18 = 1;
|
||||
|
|
@ -140,9 +140,9 @@ void fn_1_2D04(void)
|
|||
temp_r27 = spEC.unk94;
|
||||
if(temp_r27 == 10) {
|
||||
HuAudPlayerVoicePlay(temp_r31, 302);
|
||||
fn_1_121C(0x130010);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x10));
|
||||
} else {
|
||||
fn_1_121C(0x13000C);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x0C));
|
||||
}
|
||||
BoardPlayerMotBlendSet(temp_r31, 0, 15);
|
||||
while(!BoardPlayerMotBlendCheck(temp_r31)) {
|
||||
|
|
@ -189,10 +189,10 @@ void fn_1_2D04(void)
|
|||
HuPrcVSleep();
|
||||
}
|
||||
if(sp4C.unk94 > temp_r27) {
|
||||
fn_1_121C(0x13000D);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x0D));
|
||||
} else {
|
||||
HuAudPlayerVoicePlay(temp_r31, 302);
|
||||
fn_1_121C(0x13000F);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x0F));
|
||||
}
|
||||
} else {
|
||||
sp4C.unk94 = 0;
|
||||
|
|
@ -214,7 +214,7 @@ void fn_1_2D04(void)
|
|||
HuAudFXPlay(7);
|
||||
HuPrcSleep(6);
|
||||
}
|
||||
fn_1_121C(0x13000E);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x0E));
|
||||
} else {
|
||||
temp_r26 = GWPlayer[temp_r31].space_curr;
|
||||
BoardCameraTargetSpaceSet(temp_r26);
|
||||
|
|
@ -320,4 +320,4 @@ void fn_1_394C(s32 arg0) {
|
|||
while (lbl_1_bss_50) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,20 +3,20 @@
|
|||
|
||||
typedef struct {
|
||||
union {
|
||||
/* 0x00 */ struct {
|
||||
u8 unk7 : 1;
|
||||
u8 unk6 : 1;
|
||||
u8 unk3 : 3;
|
||||
u8 unk1 : 2;
|
||||
u8 unk0 : 1;
|
||||
/* 0x00 */ struct {
|
||||
u8 unk7 : 1;
|
||||
u8 unk6 : 1;
|
||||
u8 unk3 : 3;
|
||||
u8 unk1 : 2;
|
||||
u8 unk0 : 1;
|
||||
};
|
||||
u8 unk00;
|
||||
};
|
||||
u8 unk00;
|
||||
};
|
||||
/* 0x01 */ u8 unk01;
|
||||
/* 0x02 */ u8 unk02;
|
||||
/* 0x03 */ u8 unk03;
|
||||
/* 0x04 */ s16 unk04;
|
||||
/* 0x06 */ s16 unk06;
|
||||
/* 0x01 */ u8 unk01;
|
||||
/* 0x02 */ u8 unk02;
|
||||
/* 0x03 */ u8 unk03;
|
||||
/* 0x04 */ s16 unk04;
|
||||
/* 0x06 */ s16 unk06;
|
||||
} WorkGenDice;
|
||||
|
||||
/* EXTERN FUNCTIONS */
|
||||
|
|
@ -24,7 +24,7 @@ void fn_1_13D0(void);
|
|||
void fn_1_1574(m02GenDice *arg0);
|
||||
void fn_1_1794(m02GenDice *arg0);
|
||||
void fn_1_1850(omObjData *object);
|
||||
void fn_1_1F94(m02GenDice* arg0, s32 arg1);
|
||||
void fn_1_1F94(m02GenDice *arg0, s32 arg1);
|
||||
void fn_1_2030(m02GenDice *arg0);
|
||||
void fn_1_2100(m02GenDice *arg0, s32 arg1);
|
||||
void fn_1_2220(m02GenDice *arg0);
|
||||
|
|
@ -34,7 +34,8 @@ void fn_1_23B4(m02GenDice *arg0, s32 arg1);
|
|||
void fn_1_272C(m02GenDice *arg0);
|
||||
|
||||
/* LOCAL FUNCTIONS */
|
||||
void fn_1_1254(m02GenDice* arg0) {
|
||||
void fn_1_1254(m02GenDice *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
s32 i;
|
||||
|
||||
|
|
@ -61,11 +62,12 @@ void fn_1_1254(m02GenDice* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_13D0(void) {
|
||||
void fn_1_13D0(void)
|
||||
{
|
||||
s32 var_r29;
|
||||
s32 i;
|
||||
s32 var_r30_2;
|
||||
m02GenDice* temp_r31;
|
||||
m02GenDice *temp_r31;
|
||||
|
||||
temp_r31 = HuPrcCurrentGet()->user_data;
|
||||
temp_r31->unk36[0] = temp_r31->unk36[1] = temp_r31->unk36[2] = 0;
|
||||
|
|
@ -74,17 +76,17 @@ void fn_1_13D0(void) {
|
|||
while (temp_r31->unk96 < temp_r31->unk00) {
|
||||
fn_1_1574(temp_r31);
|
||||
fn_1_1794(temp_r31);
|
||||
while (temp_r31->unk9C == 0) {
|
||||
while (temp_r31->unk9C == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
fn_1_2220(temp_r31);
|
||||
while (temp_r31->unk9C != 0) {
|
||||
}
|
||||
fn_1_2220(temp_r31);
|
||||
while (temp_r31->unk9C != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r31->unk96 += 1;
|
||||
}
|
||||
temp_r31->unk96 += 1;
|
||||
}
|
||||
|
||||
for ( i = 0; i < temp_r31->unk00; i++) {
|
||||
for (i = 0; i < temp_r31->unk00; i++) {
|
||||
var_r29 += temp_r31->unk36[i];
|
||||
}
|
||||
OSReport("Dice res: %d\n", var_r29);
|
||||
|
|
@ -92,7 +94,7 @@ void fn_1_13D0(void) {
|
|||
while (fn_1_233C(temp_r31) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
temp_r31->unk94 = (s16) var_r29;
|
||||
temp_r31->unk94 = (s16)var_r29;
|
||||
temp_r31->unk28 = 1;
|
||||
if (temp_r31->unk22 != 0) {
|
||||
for (i = 0; i < temp_r31->unk00; i++) {
|
||||
|
|
@ -102,11 +104,12 @@ void fn_1_13D0(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
while (TRUE) {
|
||||
HuPrcVSleep();
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_1518(m02GenDice* arg0) {
|
||||
void fn_1_1518(m02GenDice *arg0)
|
||||
{
|
||||
OSReport("m02GenDiceKill\n");
|
||||
if (arg0->unk2C) {
|
||||
HuPrcKill(arg0->unk2C);
|
||||
|
|
@ -115,12 +118,13 @@ void fn_1_1518(m02GenDice* arg0) {
|
|||
fn_1_272C(arg0);
|
||||
}
|
||||
|
||||
void fn_1_1574(m02GenDice* arg0) {
|
||||
void fn_1_1574(m02GenDice *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
f32 temp_f0;
|
||||
omObjData* temp_r3;
|
||||
omObjData *temp_r3;
|
||||
s32 temp_r28;
|
||||
WorkGenDice* temp_r29;
|
||||
WorkGenDice *temp_r29;
|
||||
|
||||
temp_r28 = arg0->unk96;
|
||||
arg0->unk30[temp_r28] = BoardModelCreate(arg0->unk04, NULL, 0);
|
||||
|
|
@ -129,7 +133,7 @@ void fn_1_1574(m02GenDice* arg0) {
|
|||
BoardModelMotionSpeedSet(arg0->unk30[temp_r28], 0);
|
||||
BoardModelMotionTimeSet(arg0->unk30[temp_r28], arg0->unk98);
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x102, 0U, 0U, -1, fn_1_1850);
|
||||
temp_r29 = (WorkGenDice*) temp_r3->work;
|
||||
temp_r29 = (WorkGenDice *)temp_r3->work;
|
||||
|
||||
temp_r29->unk7 = 0;
|
||||
temp_r29->unk6 = 0;
|
||||
|
|
@ -139,7 +143,7 @@ void fn_1_1574(m02GenDice* arg0) {
|
|||
temp_r29->unk04 = 0;
|
||||
temp_r29->unk01 = 3;
|
||||
temp_r29->unk02 = 0;
|
||||
temp_r3->unk10 = (u32) arg0;
|
||||
temp_r3->unk10 = (u32)arg0;
|
||||
arg0->unk3C[temp_r28] = temp_r3;
|
||||
sp8 = arg0->unk0C;
|
||||
sp8.y += (250.0f * arg0->unk24);
|
||||
|
|
@ -153,8 +157,9 @@ void fn_1_1574(m02GenDice* arg0) {
|
|||
HuAudFXPlay(0x302);
|
||||
}
|
||||
|
||||
void fn_1_1794(m02GenDice* arg0) {
|
||||
WorkGenDice* temp_r30;
|
||||
void fn_1_1794(m02GenDice *arg0)
|
||||
{
|
||||
WorkGenDice *temp_r30;
|
||||
|
||||
temp_r30 = OM_GET_WORK_PTR(arg0->unk3C[arg0->unk96], WorkGenDice);
|
||||
while (temp_r30->unk3 != 1) {
|
||||
|
|
@ -162,10 +167,10 @@ void fn_1_1794(m02GenDice* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
s32 fn_1_17F4(m02GenDice* arg0)
|
||||
s32 fn_1_17F4(m02GenDice *arg0)
|
||||
{
|
||||
WorkGenDice* temp;
|
||||
if ( arg0->unk96 < 0) {
|
||||
WorkGenDice *temp;
|
||||
if (arg0->unk96 < 0) {
|
||||
return 0;
|
||||
}
|
||||
temp = OM_GET_WORK_PTR(arg0->unk3C[arg0->unk96], WorkGenDice);
|
||||
|
|
@ -177,121 +182,126 @@ s32 fn_1_17F4(m02GenDice* arg0)
|
|||
|
||||
void fn_1_1850(omObjData *object)
|
||||
{
|
||||
WorkGenDice *temp_r29;
|
||||
m02GenDice *temp_r27;
|
||||
s16 temp_r26;
|
||||
s16 temp_r25;
|
||||
float temp_f29;
|
||||
float temp_f28;
|
||||
float temp_f27;
|
||||
temp_r27 = (m02GenDice *)object->unk10;
|
||||
temp_r29 = OM_GET_WORK_PTR(object, WorkGenDice);
|
||||
if(temp_r29->unk7 || BoardIsKill()) {
|
||||
fn_1_1F94(temp_r27, temp_r29->unk1);
|
||||
temp_r27->unk3C[temp_r29->unk1] = NULL;
|
||||
omDelObjEx(HuPrcCurrentGet(), object);
|
||||
return;
|
||||
}
|
||||
if(BoardPauseActiveCheck()) {
|
||||
return;
|
||||
}
|
||||
switch(temp_r29->unk3) {
|
||||
case 0:
|
||||
if(temp_r29->unk06 >= 1080) {
|
||||
temp_r29->unk3 = 1;
|
||||
object->scale.x = object->scale.y = object->scale.z = 1;
|
||||
|
||||
object->rot.y = temp_r29->unk04 = 0;
|
||||
} else {
|
||||
if(!temp_r29->unk04 && temp_r27->unk88[temp_r29->unk1] == -1) {
|
||||
temp_r27->unk88[temp_r29->unk1] = HuAudFXPlay(768);
|
||||
}
|
||||
object->rot.y = temp_r29->unk06%360;
|
||||
temp_r29->unk06 += 25;
|
||||
if(temp_r29->unk04 < 180) {
|
||||
temp_f27 = 0;
|
||||
temp_f28 = 1;
|
||||
} else {
|
||||
temp_f27 = 1;
|
||||
temp_f28 = 0.5f;
|
||||
}
|
||||
object->scale.x = (temp_f28*sind((float)(temp_r29->unk04%180)))+temp_f27;
|
||||
object->scale.y = object->scale.x;
|
||||
object->scale.z = object->scale.x;
|
||||
if(temp_r29->unk04 <= 360) {
|
||||
if(temp_r29->unk04 < 180) {
|
||||
temp_r29->unk04 += 6;
|
||||
} else {
|
||||
temp_r29->unk04 += 18;
|
||||
}
|
||||
if(temp_r29->unk04 > 360) {
|
||||
temp_r29->unk04 = 360;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
temp_r29->unk04 += 4;
|
||||
if(temp_r29->unk04 > 360) {
|
||||
temp_r29->unk04 -= 360;
|
||||
}
|
||||
OSs16tof32(&temp_r29->unk04, &temp_f29);
|
||||
object->trans.y += sind(temp_f29)*0.2f;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
temp_r29->unk04++;
|
||||
if(temp_r29->unk04 >= 8) {
|
||||
if(temp_r27->unk88[temp_r29->unk1] != -1) {
|
||||
HuAudFXStop(temp_r27->unk88[temp_r29->unk1]);
|
||||
temp_r27->unk88[temp_r29->unk1] = -1;
|
||||
}
|
||||
HuAudFXPlay(771);
|
||||
HuAudFXPlay(780);
|
||||
temp_r29->unk3 = 3;
|
||||
temp_r29->unk04 = 0;
|
||||
fn_1_23FC(temp_r27, temp_r27->unk36[temp_r29->unk1]);
|
||||
fn_1_2100(temp_r27, temp_r29->unk1);
|
||||
Hu3DParManPosSet(temp_r27->unk48[temp_r29->unk1], object->trans.x, object->trans.y, object->trans.z);
|
||||
BoardModelVisibilitySet(temp_r27->unk30[temp_r29->unk1], 0);
|
||||
} else {
|
||||
OSs16tof32(&temp_r29->unk04, &temp_f29);
|
||||
if(temp_r29->unk04 < 4) {
|
||||
object->trans.y += (0.5f*temp_f29)+10.0f;
|
||||
object->scale.x += (0.1f*sind(4.0f*temp_f29));
|
||||
object->scale.y = object->scale.x;
|
||||
object->scale.z = object->scale.x;
|
||||
} else {
|
||||
BoardModelAlphaSet(temp_r27->unk30[temp_r29->unk1], 255-(temp_r29->unk04*32));
|
||||
}
|
||||
object->trans.y += -0.49f*temp_f29*temp_f29;
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if(++temp_r29->unk04 >= 150) {
|
||||
temp_r29->unk7 = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if(!temp_r29->unk6 || temp_r29->unk3 != 3) {
|
||||
if(temp_r29->unk02++ > temp_r29->unk01) {
|
||||
temp_r29->unk02 = 0;
|
||||
temp_r25 = BoardModelMotionTimeGet(temp_r27->unk30[temp_r29->unk1]);
|
||||
do {
|
||||
temp_r26 = BoardRandMod(temp_r27->unk1A);
|
||||
} while(temp_r26 == temp_r25);
|
||||
BoardModelMotionTimeSet(temp_r27->unk30[temp_r29->unk1], temp_r26+0.5f);
|
||||
}
|
||||
}
|
||||
BoardModelPosSet(temp_r27->unk30[temp_r29->unk1], object->trans.x, object->trans.y, object->trans.z);
|
||||
BoardModelRotSet(temp_r27->unk30[temp_r29->unk1], object->rot.x, object->rot.y, object->rot.z);
|
||||
BoardModelScaleSet(temp_r27->unk30[temp_r29->unk1], object->scale.x, object->scale.y, object->scale.z);
|
||||
WorkGenDice *temp_r29;
|
||||
m02GenDice *temp_r27;
|
||||
s16 temp_r26;
|
||||
s16 temp_r25;
|
||||
float temp_f29;
|
||||
float temp_f28;
|
||||
float temp_f27;
|
||||
temp_r27 = (m02GenDice *)object->unk10;
|
||||
temp_r29 = OM_GET_WORK_PTR(object, WorkGenDice);
|
||||
if (temp_r29->unk7 || BoardIsKill()) {
|
||||
fn_1_1F94(temp_r27, temp_r29->unk1);
|
||||
temp_r27->unk3C[temp_r29->unk1] = NULL;
|
||||
omDelObjEx(HuPrcCurrentGet(), object);
|
||||
return;
|
||||
}
|
||||
if (BoardPauseActiveCheck()) {
|
||||
return;
|
||||
}
|
||||
switch (temp_r29->unk3) {
|
||||
case 0:
|
||||
if (temp_r29->unk06 >= 1080) {
|
||||
temp_r29->unk3 = 1;
|
||||
object->scale.x = object->scale.y = object->scale.z = 1;
|
||||
|
||||
object->rot.y = temp_r29->unk04 = 0;
|
||||
}
|
||||
else {
|
||||
if (!temp_r29->unk04 && temp_r27->unk88[temp_r29->unk1] == -1) {
|
||||
temp_r27->unk88[temp_r29->unk1] = HuAudFXPlay(768);
|
||||
}
|
||||
object->rot.y = temp_r29->unk06 % 360;
|
||||
temp_r29->unk06 += 25;
|
||||
if (temp_r29->unk04 < 180) {
|
||||
temp_f27 = 0;
|
||||
temp_f28 = 1;
|
||||
}
|
||||
else {
|
||||
temp_f27 = 1;
|
||||
temp_f28 = 0.5f;
|
||||
}
|
||||
object->scale.x = (temp_f28 * sind((float)(temp_r29->unk04 % 180))) + temp_f27;
|
||||
object->scale.y = object->scale.x;
|
||||
object->scale.z = object->scale.x;
|
||||
if (temp_r29->unk04 <= 360) {
|
||||
if (temp_r29->unk04 < 180) {
|
||||
temp_r29->unk04 += 6;
|
||||
}
|
||||
else {
|
||||
temp_r29->unk04 += 18;
|
||||
}
|
||||
if (temp_r29->unk04 > 360) {
|
||||
temp_r29->unk04 = 360;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
temp_r29->unk04 += 4;
|
||||
if (temp_r29->unk04 > 360) {
|
||||
temp_r29->unk04 -= 360;
|
||||
}
|
||||
OSs16tof32(&temp_r29->unk04, &temp_f29);
|
||||
object->trans.y += sind(temp_f29) * 0.2f;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
temp_r29->unk04++;
|
||||
if (temp_r29->unk04 >= 8) {
|
||||
if (temp_r27->unk88[temp_r29->unk1] != -1) {
|
||||
HuAudFXStop(temp_r27->unk88[temp_r29->unk1]);
|
||||
temp_r27->unk88[temp_r29->unk1] = -1;
|
||||
}
|
||||
HuAudFXPlay(771);
|
||||
HuAudFXPlay(780);
|
||||
temp_r29->unk3 = 3;
|
||||
temp_r29->unk04 = 0;
|
||||
fn_1_23FC(temp_r27, temp_r27->unk36[temp_r29->unk1]);
|
||||
fn_1_2100(temp_r27, temp_r29->unk1);
|
||||
Hu3DParManPosSet(temp_r27->unk48[temp_r29->unk1], object->trans.x, object->trans.y, object->trans.z);
|
||||
BoardModelVisibilitySet(temp_r27->unk30[temp_r29->unk1], 0);
|
||||
}
|
||||
else {
|
||||
OSs16tof32(&temp_r29->unk04, &temp_f29);
|
||||
if (temp_r29->unk04 < 4) {
|
||||
object->trans.y += (0.5f * temp_f29) + 10.0f;
|
||||
object->scale.x += (0.1f * sind(4.0f * temp_f29));
|
||||
object->scale.y = object->scale.x;
|
||||
object->scale.z = object->scale.x;
|
||||
}
|
||||
else {
|
||||
BoardModelAlphaSet(temp_r27->unk30[temp_r29->unk1], 255 - (temp_r29->unk04 * 32));
|
||||
}
|
||||
object->trans.y += -0.49f * temp_f29 * temp_f29;
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if (++temp_r29->unk04 >= 150) {
|
||||
temp_r29->unk7 = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (!temp_r29->unk6 || temp_r29->unk3 != 3) {
|
||||
if (temp_r29->unk02++ > temp_r29->unk01) {
|
||||
temp_r29->unk02 = 0;
|
||||
temp_r25 = BoardModelMotionTimeGet(temp_r27->unk30[temp_r29->unk1]);
|
||||
do {
|
||||
temp_r26 = BoardRandMod(temp_r27->unk1A);
|
||||
} while (temp_r26 == temp_r25);
|
||||
BoardModelMotionTimeSet(temp_r27->unk30[temp_r29->unk1], temp_r26 + 0.5f);
|
||||
}
|
||||
}
|
||||
BoardModelPosSet(temp_r27->unk30[temp_r29->unk1], object->trans.x, object->trans.y, object->trans.z);
|
||||
BoardModelRotSet(temp_r27->unk30[temp_r29->unk1], object->rot.x, object->rot.y, object->rot.z);
|
||||
BoardModelScaleSet(temp_r27->unk30[temp_r29->unk1], object->scale.x, object->scale.y, object->scale.z);
|
||||
}
|
||||
|
||||
void fn_1_1F94(m02GenDice* arg0, s32 arg1) {
|
||||
void fn_1_1F94(m02GenDice *arg0, s32 arg1)
|
||||
{
|
||||
if (arg0->unk30[arg1] != -1) {
|
||||
BoardModelKill(arg0->unk30[arg1]);
|
||||
arg0->unk30[arg1] = -1;
|
||||
|
|
@ -305,157 +315,134 @@ void fn_1_1F94(m02GenDice* arg0, s32 arg1) {
|
|||
|
||||
void fn_1_2030(m02GenDice *arg0)
|
||||
{
|
||||
fn_1_1F94(arg0, 0);
|
||||
fn_1_1F94(arg0, 1);
|
||||
fn_1_1F94(arg0, 2);
|
||||
fn_1_1F94(arg0, 0);
|
||||
fn_1_1F94(arg0, 1);
|
||||
fn_1_1F94(arg0, 2);
|
||||
}
|
||||
|
||||
|
||||
HsfanimStruct00 lbl_1_data_2D8 = {
|
||||
150,
|
||||
{ 0x00, 0x00 }, // padding?
|
||||
50,
|
||||
0,
|
||||
65.0f,
|
||||
{ 0.0f, -0.195f, 0.0f },
|
||||
100.0f,
|
||||
0.99f,
|
||||
40.0f,
|
||||
0.999f,
|
||||
0x0004,
|
||||
{
|
||||
0xFF, 0xFF, 0x20, 0xFF,
|
||||
0xFF, 0xFF, 0x00, 0xFF,
|
||||
0xFF, 0xFF, 0x80, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF
|
||||
},
|
||||
{
|
||||
0xFF, 0xFF, 0xFF, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0x00
|
||||
}
|
||||
};
|
||||
HsfanimStruct00 lbl_1_data_2D8 = { 150, { 0x00, 0x00 }, // padding?
|
||||
50, 0, 65.0f, { 0.0f, -0.195f, 0.0f }, 100.0f, 0.99f, 40.0f, 0.999f, 0x0004,
|
||||
{ 0xFF, 0xFF, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
|
||||
{ 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00 } };
|
||||
|
||||
void fn_1_2100(m02GenDice *arg0, s32 arg1)
|
||||
{
|
||||
s16 temp_r29;
|
||||
AnimData *temp_r28;
|
||||
void *temp_r27;
|
||||
temp_r27 = HuDataSelHeapReadNum(0x120001, MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
temp_r28 = HuSprAnimRead(temp_r27);
|
||||
arg0->unk48[arg1] = Hu3DParManCreate(temp_r28, 100, &lbl_1_data_2D8);
|
||||
Hu3DParManAttrSet(arg0->unk48[arg1], 0x108);
|
||||
Hu3DParManRotSet(arg0->unk48[arg1], 0, 0, 0);
|
||||
Hu3DParManVecSet(arg0->unk48[arg1], 0, 0.4f, 0.2f);
|
||||
temp_r29 = Hu3DParManModelIDGet(arg0->unk48[arg1]);
|
||||
Hu3DModelLayerSet(temp_r29, 2);
|
||||
Hu3DParticleBlendModeSet(temp_r29, 0);
|
||||
s16 temp_r29;
|
||||
AnimData *temp_r28;
|
||||
void *temp_r27;
|
||||
temp_r27 = HuDataSelHeapReadNum(DATA_MAKE_NUM(DATADIR_EFFECT, 0x01), MEMORY_DEFAULT_NUM, HEAP_DATA);
|
||||
temp_r28 = HuSprAnimRead(temp_r27);
|
||||
arg0->unk48[arg1] = Hu3DParManCreate(temp_r28, 100, &lbl_1_data_2D8);
|
||||
Hu3DParManAttrSet(arg0->unk48[arg1], 0x108);
|
||||
Hu3DParManRotSet(arg0->unk48[arg1], 0, 0, 0);
|
||||
Hu3DParManVecSet(arg0->unk48[arg1], 0, 0.4f, 0.2f);
|
||||
temp_r29 = Hu3DParManModelIDGet(arg0->unk48[arg1]);
|
||||
Hu3DModelLayerSet(temp_r29, 2);
|
||||
Hu3DParticleBlendModeSet(temp_r29, 0);
|
||||
}
|
||||
|
||||
void fn_1_2220(m02GenDice *arg0)
|
||||
{
|
||||
s32 temp_r30;
|
||||
WorkGenDice *temp_r29;
|
||||
temp_r30 = arg0->unk96;
|
||||
temp_r29 = OM_GET_WORK_PTR(arg0->unk3C[temp_r30], WorkGenDice);
|
||||
temp_r29->unk3 = 2;
|
||||
temp_r29->unk04 = 0;
|
||||
BoardModelMotionSpeedSet(arg0->unk30[temp_r30], 0);
|
||||
|
||||
arg0->unk36[temp_r30] = arg0->unk1C[temp_r30];
|
||||
s32 temp_r30;
|
||||
WorkGenDice *temp_r29;
|
||||
temp_r30 = arg0->unk96;
|
||||
temp_r29 = OM_GET_WORK_PTR(arg0->unk3C[temp_r30], WorkGenDice);
|
||||
temp_r29->unk3 = 2;
|
||||
temp_r29->unk04 = 0;
|
||||
BoardModelMotionSpeedSet(arg0->unk30[temp_r30], 0);
|
||||
|
||||
arg0->unk36[temp_r30] = arg0->unk1C[temp_r30];
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
u8 field0_bit0 : 1;
|
||||
u8 field0_bit1 : 1;
|
||||
u8 field0_bit2 : 1;
|
||||
u8 field0_bit3 : 2;
|
||||
s8 unk01;
|
||||
s16 unk02;
|
||||
s16 unk04[2];
|
||||
float unk08;
|
||||
u8 field0_bit0 : 1;
|
||||
u8 field0_bit1 : 1;
|
||||
u8 field0_bit2 : 1;
|
||||
u8 field0_bit3 : 2;
|
||||
s8 unk01;
|
||||
s16 unk02;
|
||||
s16 unk04[2];
|
||||
float unk08;
|
||||
} WorkGenDiceNum;
|
||||
|
||||
void fn_1_22BC(m02GenDice *arg0)
|
||||
{
|
||||
s32 temp_r31;
|
||||
WorkGenDiceNum *temp_r30;
|
||||
for(temp_r31=0; temp_r31<arg0->unk00; temp_r31++) {
|
||||
if(arg0->unk50[temp_r31]) {
|
||||
temp_r30 = OM_GET_WORK_PTR(arg0->unk50[temp_r31], WorkGenDiceNum);
|
||||
temp_r30->field0_bit1 = 1;
|
||||
temp_r30->field0_bit2 = 1;
|
||||
temp_r30->unk02 = 0;
|
||||
}
|
||||
}
|
||||
s32 temp_r31;
|
||||
WorkGenDiceNum *temp_r30;
|
||||
for (temp_r31 = 0; temp_r31 < arg0->unk00; temp_r31++) {
|
||||
if (arg0->unk50[temp_r31]) {
|
||||
temp_r30 = OM_GET_WORK_PTR(arg0->unk50[temp_r31], WorkGenDiceNum);
|
||||
temp_r30->field0_bit1 = 1;
|
||||
temp_r30->field0_bit2 = 1;
|
||||
temp_r30->unk02 = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_233C(m02GenDice* arg0)
|
||||
s32 fn_1_233C(m02GenDice *arg0)
|
||||
{
|
||||
s32 temp_r31;
|
||||
WorkGenDiceNum *temp_r30;
|
||||
for(temp_r31=0; temp_r31<arg0->unk00; temp_r31++) {
|
||||
if(!arg0->unk50[temp_r31]) {
|
||||
continue;
|
||||
}
|
||||
temp_r30 = OM_GET_WORK_PTR(arg0->unk50[temp_r31], WorkGenDiceNum);
|
||||
if(temp_r30->field0_bit2) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
s32 temp_r31;
|
||||
WorkGenDiceNum *temp_r30;
|
||||
for (temp_r31 = 0; temp_r31 < arg0->unk00; temp_r31++) {
|
||||
if (!arg0->unk50[temp_r31]) {
|
||||
continue;
|
||||
}
|
||||
temp_r30 = OM_GET_WORK_PTR(arg0->unk50[temp_r31], WorkGenDiceNum);
|
||||
if (temp_r30->field0_bit2) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_23B4(m02GenDice *arg0, s32 arg1)
|
||||
{
|
||||
WorkGenDiceNum *work;
|
||||
if(!arg0->unk50[arg1]) {
|
||||
return;
|
||||
}
|
||||
work = OM_GET_WORK_PTR(arg0->unk50[arg1], WorkGenDiceNum);
|
||||
work->field0_bit0 = 1;
|
||||
WorkGenDiceNum *work;
|
||||
if (!arg0->unk50[arg1]) {
|
||||
return;
|
||||
}
|
||||
work = OM_GET_WORK_PTR(arg0->unk50[arg1], WorkGenDiceNum);
|
||||
work->field0_bit0 = 1;
|
||||
}
|
||||
|
||||
void fn_1_25D0(omObjData *object);
|
||||
|
||||
void fn_1_23FC(m02GenDice *arg0, s32 arg1)
|
||||
{
|
||||
Vec spC;
|
||||
s16 sp8[2];
|
||||
WorkGenDiceNum *temp_r31;
|
||||
s16 temp_r29;
|
||||
omObjData *temp_r28;
|
||||
s32 temp_r26;
|
||||
s16 temp_r25;
|
||||
temp_r26 = arg0->unk96;
|
||||
if(arg1 > 99) {
|
||||
arg1 = 99;
|
||||
}
|
||||
sp8[0] = arg1%10;
|
||||
sp8[1] = arg1/10;
|
||||
spC = arg0->unk0C;
|
||||
spC.y += 300.0f;
|
||||
temp_r28 = omAddObjEx(boardObjMan, 258, 0, 0, -1, fn_1_25D0);
|
||||
temp_r28->unk10 = (u32)arg0;
|
||||
temp_r31 = OM_GET_WORK_PTR(temp_r28, WorkGenDiceNum);
|
||||
temp_r31->field0_bit0 = 0;
|
||||
temp_r31->field0_bit1 = 0;
|
||||
temp_r31->field0_bit2 = 0;
|
||||
temp_r31->field0_bit3 = temp_r26;
|
||||
temp_r31->unk08 = 0.3f;
|
||||
temp_r31->unk01 = arg1;
|
||||
temp_r31->unk02 = 360;
|
||||
for(temp_r29=0; temp_r29<2; temp_r29++) {
|
||||
temp_r25 = BoardModelCreate(arg0->unk08[sp8[temp_r29]], NULL, 0);
|
||||
BoardModelPosSetV(temp_r25, &spC);
|
||||
temp_r31->unk04[temp_r29] = temp_r25;
|
||||
}
|
||||
if(sp8[1] == 0) {
|
||||
BoardModelVisibilitySet(temp_r31->unk04[1], 0);
|
||||
}
|
||||
arg0->unk50[temp_r26] = temp_r28;
|
||||
|
||||
Vec spC;
|
||||
s16 sp8[2];
|
||||
WorkGenDiceNum *temp_r31;
|
||||
s16 temp_r29;
|
||||
omObjData *temp_r28;
|
||||
s32 temp_r26;
|
||||
s16 temp_r25;
|
||||
temp_r26 = arg0->unk96;
|
||||
if (arg1 > 99) {
|
||||
arg1 = 99;
|
||||
}
|
||||
sp8[0] = arg1 % 10;
|
||||
sp8[1] = arg1 / 10;
|
||||
spC = arg0->unk0C;
|
||||
spC.y += 300.0f;
|
||||
temp_r28 = omAddObjEx(boardObjMan, 258, 0, 0, -1, fn_1_25D0);
|
||||
temp_r28->unk10 = (u32)arg0;
|
||||
temp_r31 = OM_GET_WORK_PTR(temp_r28, WorkGenDiceNum);
|
||||
temp_r31->field0_bit0 = 0;
|
||||
temp_r31->field0_bit1 = 0;
|
||||
temp_r31->field0_bit2 = 0;
|
||||
temp_r31->field0_bit3 = temp_r26;
|
||||
temp_r31->unk08 = 0.3f;
|
||||
temp_r31->unk01 = arg1;
|
||||
temp_r31->unk02 = 360;
|
||||
for (temp_r29 = 0; temp_r29 < 2; temp_r29++) {
|
||||
temp_r25 = BoardModelCreate(arg0->unk08[sp8[temp_r29]], NULL, 0);
|
||||
BoardModelPosSetV(temp_r25, &spC);
|
||||
temp_r31->unk04[temp_r29] = temp_r25;
|
||||
}
|
||||
if (sp8[1] == 0) {
|
||||
BoardModelVisibilitySet(temp_r31->unk04[1], 0);
|
||||
}
|
||||
arg0->unk50[temp_r26] = temp_r28;
|
||||
}
|
||||
|
||||
void fn_1_2694(WorkGenDiceNum *arg0);
|
||||
|
|
@ -464,150 +451,147 @@ void fn_1_2BE4(m02GenDice *arg0, WorkGenDiceNum *arg1, s32 arg2);
|
|||
|
||||
void fn_1_25D0(omObjData *object)
|
||||
{
|
||||
WorkGenDiceNum *temp_r31;
|
||||
m02GenDice *temp_r30;
|
||||
temp_r30 = (m02GenDice *)object->unk10;
|
||||
temp_r31 = OM_GET_WORK_PTR(object, WorkGenDiceNum);
|
||||
if(temp_r31->field0_bit0 || BoardIsKill()) {
|
||||
fn_1_2694(temp_r31);
|
||||
temp_r30->unk50[temp_r31->field0_bit3] = NULL;
|
||||
omDelObjEx(HuPrcCurrentGet(), object);
|
||||
return;
|
||||
}
|
||||
if(BoardPauseActiveCheck()) {
|
||||
return;
|
||||
}
|
||||
fn_1_2830(temp_r30, temp_r31, temp_r31->field0_bit1);
|
||||
fn_1_2BE4(temp_r30, temp_r31, temp_r31->field0_bit1);
|
||||
WorkGenDiceNum *temp_r31;
|
||||
m02GenDice *temp_r30;
|
||||
temp_r30 = (m02GenDice *)object->unk10;
|
||||
temp_r31 = OM_GET_WORK_PTR(object, WorkGenDiceNum);
|
||||
if (temp_r31->field0_bit0 || BoardIsKill()) {
|
||||
fn_1_2694(temp_r31);
|
||||
temp_r30->unk50[temp_r31->field0_bit3] = NULL;
|
||||
omDelObjEx(HuPrcCurrentGet(), object);
|
||||
return;
|
||||
}
|
||||
if (BoardPauseActiveCheck()) {
|
||||
return;
|
||||
}
|
||||
fn_1_2830(temp_r30, temp_r31, temp_r31->field0_bit1);
|
||||
fn_1_2BE4(temp_r30, temp_r31, temp_r31->field0_bit1);
|
||||
}
|
||||
|
||||
void fn_1_2694(WorkGenDiceNum *arg0)
|
||||
{
|
||||
s32 i;
|
||||
for(i=0; i<2; i++) {
|
||||
if(arg0->unk04[i] == -1) {
|
||||
continue;
|
||||
}
|
||||
OSReport("%d:GenDiceNumExitOM Kill %d\n", i, arg0->unk04[i]);
|
||||
BoardModelKill(arg0->unk04[i]);
|
||||
arg0->unk04[i] = -1;
|
||||
(void)i;
|
||||
}
|
||||
s32 i;
|
||||
for (i = 0; i < 2; i++) {
|
||||
if (arg0->unk04[i] == -1) {
|
||||
continue;
|
||||
}
|
||||
OSReport("%d:GenDiceNumExitOM Kill %d\n", i, arg0->unk04[i]);
|
||||
BoardModelKill(arg0->unk04[i]);
|
||||
arg0->unk04[i] = -1;
|
||||
(void)i;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_272C(m02GenDice *arg0)
|
||||
{
|
||||
s32 i;
|
||||
WorkGenDiceNum *work;
|
||||
s32 j;
|
||||
for(i=0; i<3; i++) {
|
||||
if(!arg0->unk50[i]) {
|
||||
continue;
|
||||
}
|
||||
work = OM_GET_WORK_PTR(arg0->unk50[i], WorkGenDiceNum);
|
||||
for(j=0; j<2; j++) {
|
||||
if(work->unk04[j] == -1) {
|
||||
continue;
|
||||
}
|
||||
OSReport("%d:GenDiceNumOMKillAll %d\n", j, work->unk04[j]);
|
||||
BoardModelKill(work->unk04[j]);
|
||||
work->unk04[j] = -1;
|
||||
(void)j;
|
||||
}
|
||||
fn_1_23B4(arg0, i);
|
||||
}
|
||||
|
||||
s32 i;
|
||||
WorkGenDiceNum *work;
|
||||
s32 j;
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (!arg0->unk50[i]) {
|
||||
continue;
|
||||
}
|
||||
work = OM_GET_WORK_PTR(arg0->unk50[i], WorkGenDiceNum);
|
||||
for (j = 0; j < 2; j++) {
|
||||
if (work->unk04[j] == -1) {
|
||||
continue;
|
||||
}
|
||||
OSReport("%d:GenDiceNumOMKillAll %d\n", j, work->unk04[j]);
|
||||
BoardModelKill(work->unk04[j]);
|
||||
work->unk04[j] = -1;
|
||||
(void)j;
|
||||
}
|
||||
fn_1_23B4(arg0, i);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_2830(m02GenDice *arg0, WorkGenDiceNum *arg1, s32 arg2)
|
||||
{
|
||||
float temp_f31;
|
||||
s16 temp_r31;
|
||||
Vec *temp_r29;
|
||||
s16 temp_r27;
|
||||
s32 sp8 = 0;
|
||||
Vec sp30;
|
||||
Vec sp24;
|
||||
Vec sp18 = { 288, 155, 1400 };
|
||||
Vec sp54[2];
|
||||
Vec sp3C[2] = {
|
||||
{ 144, 155, 1400 },
|
||||
{ 432, 155, 1400 }
|
||||
};
|
||||
Vec sp6C[3] = {
|
||||
{ 144, 155, 1400 },
|
||||
{ 432, 155, 1400 },
|
||||
{ 288, 155, 1400 }
|
||||
};
|
||||
Vec spC = { 288, 176, 1400 };
|
||||
temp_r27 = arg1->unk01/10;
|
||||
if(arg2) {
|
||||
temp_r29 = &spC;
|
||||
temp_f31 = -20.0f*arg1->field0_bit3;
|
||||
} else {
|
||||
switch(arg0->unk00) {
|
||||
case 1:
|
||||
temp_r29 = &arg0->unk7C;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
case 3:
|
||||
temp_r29 = &arg0->unk64[arg1->field0_bit3];
|
||||
break;
|
||||
}
|
||||
temp_f31 = 0;
|
||||
}
|
||||
for(temp_r31=0; temp_r31<2; temp_r31++) {
|
||||
if(temp_r27 == 0) {
|
||||
sp54[temp_r31].x = temp_r29->x;
|
||||
} else {
|
||||
if(temp_r31) {
|
||||
sp54[temp_r31].x = temp_r29->x-30;
|
||||
} else {
|
||||
sp54[temp_r31].x = temp_r29->x+30;
|
||||
}
|
||||
}
|
||||
sp54[temp_r31].y = temp_r29->y;
|
||||
sp54[temp_r31].z = temp_r29->z+temp_f31;
|
||||
}
|
||||
for(temp_r31=0; temp_r31<2; temp_r31++) {
|
||||
BoardModelPosGet(arg1->unk04[temp_r31], &sp30);
|
||||
Hu3D2Dto3D(&sp54[temp_r31], 1, &sp54[temp_r31]);
|
||||
VECSubtract(&sp54[temp_r31], &sp30, &sp24);
|
||||
if(VECMag(&sp24) < 0.01f) {
|
||||
arg1->field0_bit2 = 0;
|
||||
if(arg2 && arg1->field0_bit3) {
|
||||
BoardModelVisibilitySet(arg1->unk04[temp_r31], 0);
|
||||
}
|
||||
} else {
|
||||
arg1->field0_bit2 = 1;
|
||||
}
|
||||
VECScale(&sp24, &sp24, arg1->unk08);
|
||||
VECAdd(&sp30, &sp24, &sp30);
|
||||
BoardModelPosSetV(arg1->unk04[temp_r31], &sp30);
|
||||
}
|
||||
float temp_f31;
|
||||
s16 temp_r31;
|
||||
Vec *temp_r29;
|
||||
s16 temp_r27;
|
||||
s32 sp8 = 0;
|
||||
Vec sp30;
|
||||
Vec sp24;
|
||||
Vec sp18 = { 288, 155, 1400 };
|
||||
Vec sp54[2];
|
||||
Vec sp3C[2] = { { 144, 155, 1400 }, { 432, 155, 1400 } };
|
||||
Vec sp6C[3] = { { 144, 155, 1400 }, { 432, 155, 1400 }, { 288, 155, 1400 } };
|
||||
Vec spC = { 288, 176, 1400 };
|
||||
temp_r27 = arg1->unk01 / 10;
|
||||
if (arg2) {
|
||||
temp_r29 = &spC;
|
||||
temp_f31 = -20.0f * arg1->field0_bit3;
|
||||
}
|
||||
else {
|
||||
switch (arg0->unk00) {
|
||||
case 1:
|
||||
temp_r29 = &arg0->unk7C;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
case 3:
|
||||
temp_r29 = &arg0->unk64[arg1->field0_bit3];
|
||||
break;
|
||||
}
|
||||
temp_f31 = 0;
|
||||
}
|
||||
for (temp_r31 = 0; temp_r31 < 2; temp_r31++) {
|
||||
if (temp_r27 == 0) {
|
||||
sp54[temp_r31].x = temp_r29->x;
|
||||
}
|
||||
else {
|
||||
if (temp_r31) {
|
||||
sp54[temp_r31].x = temp_r29->x - 30;
|
||||
}
|
||||
else {
|
||||
sp54[temp_r31].x = temp_r29->x + 30;
|
||||
}
|
||||
}
|
||||
sp54[temp_r31].y = temp_r29->y;
|
||||
sp54[temp_r31].z = temp_r29->z + temp_f31;
|
||||
}
|
||||
for (temp_r31 = 0; temp_r31 < 2; temp_r31++) {
|
||||
BoardModelPosGet(arg1->unk04[temp_r31], &sp30);
|
||||
Hu3D2Dto3D(&sp54[temp_r31], 1, &sp54[temp_r31]);
|
||||
VECSubtract(&sp54[temp_r31], &sp30, &sp24);
|
||||
if (VECMag(&sp24) < 0.01f) {
|
||||
arg1->field0_bit2 = 0;
|
||||
if (arg2 && arg1->field0_bit3) {
|
||||
BoardModelVisibilitySet(arg1->unk04[temp_r31], 0);
|
||||
}
|
||||
}
|
||||
else {
|
||||
arg1->field0_bit2 = 1;
|
||||
}
|
||||
VECScale(&sp24, &sp24, arg1->unk08);
|
||||
VECAdd(&sp30, &sp24, &sp30);
|
||||
BoardModelPosSetV(arg1->unk04[temp_r31], &sp30);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_2BE4(m02GenDice *arg0, WorkGenDiceNum *arg1, s32 arg2)
|
||||
{
|
||||
s32 temp_r29;
|
||||
float temp_f30;
|
||||
if(arg2) {
|
||||
arg1->unk02 += 18;
|
||||
if(arg1->unk02 >= 360) {
|
||||
arg1->unk02 = 360;
|
||||
}
|
||||
} else {
|
||||
arg1->unk02 -= 18;
|
||||
if(arg1->unk02 <= 0) {
|
||||
arg1->unk02 = 0;
|
||||
}
|
||||
}
|
||||
OSs16tof32(&arg1->unk02, &temp_f30);
|
||||
for(temp_r29=0; temp_r29<2; temp_r29++) {
|
||||
if(arg1->unk04[temp_r29] == -1) {
|
||||
continue;
|
||||
}
|
||||
BoardModelRotSet(arg1->unk04[temp_r29], 0, temp_f30, 0);
|
||||
}
|
||||
}
|
||||
s32 temp_r29;
|
||||
float temp_f30;
|
||||
if (arg2) {
|
||||
arg1->unk02 += 18;
|
||||
if (arg1->unk02 >= 360) {
|
||||
arg1->unk02 = 360;
|
||||
}
|
||||
}
|
||||
else {
|
||||
arg1->unk02 -= 18;
|
||||
if (arg1->unk02 <= 0) {
|
||||
arg1->unk02 = 0;
|
||||
}
|
||||
}
|
||||
OSs16tof32(&arg1->unk02, &temp_f30);
|
||||
for (temp_r29 = 0; temp_r29 < 2; temp_r29++) {
|
||||
if (arg1->unk04[temp_r29] == -1) {
|
||||
continue;
|
||||
}
|
||||
BoardModelRotSet(arg1->unk04[temp_r29], 0, temp_f30, 0);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -89,17 +89,17 @@ void BoardCreate(void) {
|
|||
|
||||
boardData = get_current_board();
|
||||
lbl_1_bss_0 = GWSystem.board_data;
|
||||
BoardSpaceInit(0x760000);
|
||||
lbl_1_data_280 = BoardModelCreate(0x760001, NULL, 0);
|
||||
BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W02, 0x00));
|
||||
lbl_1_data_280 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x01), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_280, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_280, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_280, 0, 0x40000001);
|
||||
BoardModelMotionSpeedSet(lbl_1_data_280, 0.1f);
|
||||
lbl_1_data_282 = BoardModelCreate(0x760002, NULL, 0);
|
||||
lbl_1_data_282 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x02), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_282, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_282, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_282, 0, 0x40000001);
|
||||
lbl_1_data_284 = BoardModelCreate(0x760003, lbl_1_data_288, 0);
|
||||
lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x03), lbl_1_data_288, 0);
|
||||
BoardModelPosSet(lbl_1_data_284, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_284, 1, 0x40000001);
|
||||
lbl_1_data_286 = BoardModelCreate(0x20005, lbl_1_data_290, 0);
|
||||
|
|
@ -132,8 +132,8 @@ void BoardCreate(void) {
|
|||
fn_1_92C();
|
||||
BoardModelPosGet(lbl_1_bss_30[13], &lbl_1_bss_20);
|
||||
BoardModelPosGet(lbl_1_bss_30[14], &lbl_1_bss_14);
|
||||
lbl_1_bss_2E = BoardModelCreate(0x760010, NULL, 1);
|
||||
lbl_1_bss_2C = BoardModelCreate(0x760010, NULL, 1);
|
||||
lbl_1_bss_2E = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x10), NULL, 1);
|
||||
lbl_1_bss_2C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W02, 0x10), NULL, 1);
|
||||
fn_1_9250();
|
||||
BoardSpaceWalkEventFuncSet(fn_1_800);
|
||||
BoardSpaceWalkMiniEventFuncSet(fn_1_1128);
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -69,11 +69,11 @@ void fn_1_BCFC(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelRotYSet(lbl_1_bss_30[15], -90.0f);
|
||||
fn_1_121C(0x130000);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x00));
|
||||
HuAudFXPlay(0x44);
|
||||
temp_r29 = fn_1_BE88();
|
||||
BoardStatusShowSetAll(0);
|
||||
fn_1_121C(0x130001);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x01));
|
||||
temp_r30 = fn_1_C108(temp_r29);
|
||||
fn_1_CD04(temp_r30);
|
||||
BoardCameraViewSet(1);
|
||||
|
|
@ -104,7 +104,7 @@ s32 fn_1_BE88(void) {
|
|||
if (coinAmount < 5) {
|
||||
return var_r30;
|
||||
}
|
||||
fn_1_121C(0x130002);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x02));
|
||||
|
||||
do {
|
||||
BoardWinCreateChoice(2, MAKE_MESSID(19, 29), 4, 0);
|
||||
|
|
@ -153,17 +153,17 @@ s32 fn_1_BE88(void) {
|
|||
// Coin amount is now the bribe amount in coins
|
||||
switch (bribeChoice) {
|
||||
case 0:
|
||||
mesg = 0x130004;
|
||||
mesg = MAKE_MESSID(0x13, 0x04);
|
||||
coinAmount = 0x14;
|
||||
var_r30 = 0x5A; // 90%
|
||||
break;
|
||||
case 1:
|
||||
mesg = 0x130005;
|
||||
mesg = MAKE_MESSID(0x13, 0x05);
|
||||
coinAmount = 0xA;
|
||||
var_r30 = 0x3C; // 60%
|
||||
break;
|
||||
case 2:
|
||||
mesg = 0x130006;
|
||||
mesg = MAKE_MESSID(0x13, 0x06);
|
||||
coinAmount = 5;
|
||||
var_r30 = 0x1E; // 30%
|
||||
break;
|
||||
|
|
@ -183,7 +183,7 @@ s32 fn_1_BE88(void) {
|
|||
}
|
||||
} while (rouletteChoice == 2); // While viewing map
|
||||
if (var_r30 == -1) {
|
||||
fn_1_121C(0x130007);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x07));
|
||||
}
|
||||
return var_r30;
|
||||
}
|
||||
|
|
@ -516,12 +516,12 @@ void fn_1_D3AC(void)
|
|||
Vec sp20;
|
||||
Vec sp14;
|
||||
float sp8[3] = { 1.0f, 0.3f, 2.5f };
|
||||
fn_1_121C(0x130008);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x08));
|
||||
BoardStatusShowSetAll(1);
|
||||
BoardPlayerMotBlendSet(lbl_1_bss_388, 0, 15);
|
||||
BoardPlayerPosGet(lbl_1_bss_388, &sp14);
|
||||
for(temp_r31=0; temp_r31<20; temp_r31++) {
|
||||
sp38[temp_r31] = BoardModelCreate(0x7000A, NULL, 1);
|
||||
sp38[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
|
||||
sp2C.x = (sp14.x-25.0f)+((1.0f/255.0f)*(frand8()*50.0f));
|
||||
sp2C.y = (sp14.y+1200.0f)+(temp_r31*130.0f)+((1.0f/255.0f)*(frand8()*60.0f));
|
||||
sp2C.z = (sp14.z-25.0f)+((1.0f/255.0f)*(frand8()*50.0f));
|
||||
|
|
@ -603,11 +603,11 @@ s32 fn_1_D8C4(void)
|
|||
s16 temp_r22;
|
||||
|
||||
u32 temp_r21;
|
||||
fn_1_121C(0x130009);
|
||||
fn_1_121C(MAKE_MESSID(0x13, 0x09));
|
||||
temp_r29 = BoardSpaceGet(0, BoardSpaceFlagSearch(0, 0x800));
|
||||
BoardModelPosGet(lbl_1_bss_30[3], &sp40);
|
||||
for(temp_r31=0; temp_r31<4; temp_r31++) {
|
||||
sp14[temp_r31] = BoardModelCreate(0x70000, NULL, 1);
|
||||
sp14[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1);
|
||||
BoardModelLayerSet(sp14[temp_r31], 2);
|
||||
for(temp_r28=0; temp_r28<temp_r29->link_cnt; temp_r28++) {
|
||||
temp_r21 = (BoardSpaceFlagGet(0, temp_r29->link[temp_r28]) & 0xE) >> 1;
|
||||
|
|
@ -627,9 +627,9 @@ s32 fn_1_D8C4(void)
|
|||
BoardModelScaleSetV(sp14[temp_r31], &sp1C);
|
||||
}
|
||||
temp_r25 = fn_1_E2AC();
|
||||
HuWinMesMaxSizeGet(1, spC, 0x13001E);
|
||||
HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(0x13, 0x1E));
|
||||
temp_r30 = HuWinCreate(-10000, 356, spC[0], spC[1], 0);
|
||||
HuWinMesSet(temp_r30, 0x13001E);
|
||||
HuWinMesSet(temp_r30, MAKE_MESSID(0x13, 0x1E));
|
||||
HuWinBGTPLvlSet(temp_r30, 0);
|
||||
HuWinMesSpeedSet(temp_r30, 0);
|
||||
temp_r23 = GWPlayer[lbl_1_bss_388].port;
|
||||
|
|
@ -811,4 +811,4 @@ void fn_1_E41C(void)
|
|||
while(lbl_1_bss_38C) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,25 +25,25 @@ s16 lbl_1_bss_1AC;
|
|||
Vec lbl_1_bss_1A0;
|
||||
|
||||
s32 lbl_1_data_490[8] = {
|
||||
0x0076002E,
|
||||
0x0076002F,
|
||||
0x00760030,
|
||||
0x00760031,
|
||||
0x00760032,
|
||||
0x00760033,
|
||||
0x00760034,
|
||||
0x00760035
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2E),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2F),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x30),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x31),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x32),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x33),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x34),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x35)
|
||||
};
|
||||
|
||||
s32 lbl_1_data_4B0[8] = {
|
||||
0x00760026,
|
||||
0x00760027,
|
||||
0x00760028,
|
||||
0x00760029,
|
||||
0x0076002A,
|
||||
0x0076002B,
|
||||
0x0076002C,
|
||||
0x0076002D
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x26),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x28),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2A),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2B),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2C),
|
||||
DATA_MAKE_NUM(DATADIR_W02, 0x2D)
|
||||
};
|
||||
|
||||
s32 fn_1_9250(void)
|
||||
|
|
@ -135,9 +135,9 @@ void fn_1_94C0(void)
|
|||
BoardCameraRotSet(-10, -sp10.y);
|
||||
BoardCameraZoomSet(900);
|
||||
BoardStatusShowSetAll(0);
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x13001C);
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x13, 0x1C));
|
||||
lbl_1_bss_1AC = HuWinCreate(-10000, 400, sp8[0], sp8[1], 0);
|
||||
HuWinMesSet(lbl_1_bss_1AC, 0x13001C);
|
||||
HuWinMesSet(lbl_1_bss_1AC, MAKE_MESSID(0x13, 0x1C));
|
||||
HuWinBGTPLvlSet(lbl_1_bss_1AC, 0);
|
||||
HuWinMesSpeedSet(lbl_1_bss_1AC, 0);
|
||||
fn_1_9EC4();
|
||||
|
|
@ -238,7 +238,7 @@ void fn_1_9EC4(void)
|
|||
s32 temp_r31;
|
||||
s32 temp_r30;
|
||||
for(temp_r31=0; temp_r31<15; temp_r31++) {
|
||||
lbl_1_bss_34C[temp_r31] = BoardModelCreate(0x7000A, NULL, 1);
|
||||
lbl_1_bss_34C[temp_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
|
||||
BoardModelVisibilitySet(lbl_1_bss_34C[temp_r31], 0);
|
||||
lbl_1_bss_1C4[temp_r31] = 1;
|
||||
}
|
||||
|
|
@ -582,4 +582,4 @@ void fn_1_BB30(void)
|
|||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,21 +1,21 @@
|
|||
#include "REL/w03Dll.h"
|
||||
#include "game/data.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/space.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/space.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/data.h"
|
||||
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/hsfman.h"
|
||||
|
||||
#include "game/pad.h"
|
||||
#include "game/wipe.h"
|
||||
|
||||
//structs
|
||||
// structs
|
||||
|
||||
typedef struct w03UnkStruct5 {
|
||||
/* 0x00 */ struct {
|
||||
/* 0x00 */ struct {
|
||||
u8 unk00_bit0 : 1;
|
||||
u8 unk00_bit1 : 2;
|
||||
u8 unk00_bit3 : 1;
|
||||
|
|
@ -27,21 +27,21 @@ typedef struct w03UnkStruct5 {
|
|||
} w03UnkStruct5;
|
||||
|
||||
typedef struct w03UnkStruct4 {
|
||||
/* 0x00 */ struct {
|
||||
/* 0x00 */ struct {
|
||||
u8 unk00_bit0 : 1;
|
||||
};
|
||||
};
|
||||
} w03UnkStruct4;
|
||||
|
||||
typedef struct w03StructUnk3 {
|
||||
/* 0x00 */ s16 unk_00;
|
||||
/* 0x02 */ s16 model;
|
||||
/* 0x04 */ f32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ Vec unk_14;
|
||||
/* 0x00 */ s16 unk_00;
|
||||
/* 0x02 */ s16 model;
|
||||
/* 0x04 */ f32 unk_04;
|
||||
/* 0x08 */ Vec unk_08;
|
||||
/* 0x14 */ Vec unk_14;
|
||||
} w03StructUnk3;
|
||||
|
||||
typedef struct w03StructUnk2 {
|
||||
/* 0x00 */ struct {
|
||||
/* 0x00 */ struct {
|
||||
u8 unkbit_00 : 1;
|
||||
u8 unkbit_01 : 2;
|
||||
u8 unkbit_03 : 1;
|
||||
|
|
@ -52,10 +52,10 @@ typedef struct w03StructUnk2 {
|
|||
u8 unk_03;
|
||||
s16 model;
|
||||
char unk_06[2];
|
||||
w03StructUnk3* unk_08;
|
||||
w03StructUnk3 *unk_08;
|
||||
} w03StructUnk2;
|
||||
|
||||
//function signatures
|
||||
// function signatures
|
||||
void fn_1_313C(void);
|
||||
void fn_1_3218(void);
|
||||
void fn_1_3304(void);
|
||||
|
|
@ -67,44 +67,40 @@ void fn_1_3F5C(s32);
|
|||
void fn_1_4354(s32);
|
||||
void fn_1_48EC(s32);
|
||||
void fn_1_4A9C(void);
|
||||
void fn_1_50D4(omObjData* arg0);
|
||||
void fn_1_50D4(omObjData *arg0);
|
||||
void fn_1_5838(s32);
|
||||
void fn_1_5AC8(omObjData* arg0);
|
||||
void fn_1_5C5C(omObjData* arg0, w03UnkStruct5* arg1);
|
||||
void fn_1_602C(omObjData* arg0, w03UnkStruct5* arg1);
|
||||
f32 fn_1_61A4(omObjData* arg0, w03UnkStruct5* arg1);
|
||||
void fn_1_5AC8(omObjData *arg0);
|
||||
void fn_1_5C5C(omObjData *arg0, w03UnkStruct5 *arg1);
|
||||
void fn_1_602C(omObjData *arg0, w03UnkStruct5 *arg1);
|
||||
f32 fn_1_61A4(omObjData *arg0, w03UnkStruct5 *arg1);
|
||||
void fn_1_629C(s8 arg0);
|
||||
s32 fn_1_62D0(void);
|
||||
void fn_1_62FC(void);
|
||||
|
||||
//bss
|
||||
// bss
|
||||
float lbl_1_bss_80[20][2];
|
||||
s8 lbl_1_bss_7D;
|
||||
s8 lbl_1_bss_7C;
|
||||
omObjData *lbl_1_bss_78;
|
||||
omObjData *lbl_1_bss_74;
|
||||
Process* lbl_1_bss_70;
|
||||
Process *lbl_1_bss_70;
|
||||
|
||||
//data
|
||||
// data
|
||||
s16 lbl_1_data_310 = -1;
|
||||
s16 lbl_1_data_312 = -1;
|
||||
s16 lbl_1_data_314 = -1;
|
||||
s16 lbl_1_data_316 = -1;
|
||||
s32 lbl_1_data_318[] = {
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x0016),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x0017),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x0018),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x0019),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x001A),
|
||||
DATA_NUM_LISTEND
|
||||
};
|
||||
s32 lbl_1_data_318[] = { DATA_MAKE_NUM(DATADIR_W03, 0x0016), DATA_MAKE_NUM(DATADIR_W03, 0x0017), DATA_MAKE_NUM(DATADIR_W03, 0x0018),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x0019), DATA_MAKE_NUM(DATADIR_W03, 0x001A), DATA_NUM_LISTEND };
|
||||
|
||||
void fn_1_3058(void) {
|
||||
lbl_1_data_310 = BoardModelCreate(0x770015, lbl_1_data_318, 0);
|
||||
void fn_1_3058(void)
|
||||
{
|
||||
lbl_1_data_310 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x15), lbl_1_data_318, 0);
|
||||
fn_1_3304();
|
||||
}
|
||||
|
||||
s32 fn_1_309C(void) {
|
||||
s32 fn_1_309C(void)
|
||||
{
|
||||
BoardRollDispSet(0);
|
||||
lbl_1_bss_70 = HuPrcChildCreate(fn_1_313C, 0x2003U, 0x2000U, 0, boardMainProc);
|
||||
HuPrcDestructorSet2(lbl_1_bss_70, fn_1_3218);
|
||||
|
|
@ -112,12 +108,13 @@ s32 fn_1_309C(void) {
|
|||
while (lbl_1_bss_70) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardRollDispSet(1);
|
||||
return lbl_1_bss_7C;
|
||||
}
|
||||
|
||||
void fn_1_313C(void) {
|
||||
void fn_1_313C(void)
|
||||
{
|
||||
s32 temp_r31;
|
||||
|
||||
temp_r31 = GWSystem.player_curr;
|
||||
|
|
@ -138,8 +135,8 @@ void fn_1_313C(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
|
||||
void fn_1_3218(void) {
|
||||
void fn_1_3218(void)
|
||||
{
|
||||
if (lbl_1_data_316 != -1) {
|
||||
HuWinKill(lbl_1_data_316);
|
||||
lbl_1_data_316 = -1;
|
||||
|
|
@ -154,20 +151,21 @@ void fn_1_3218(void) {
|
|||
BoardPlayerMotionKill(GWSystem.player_curr, lbl_1_data_312);
|
||||
lbl_1_data_312 = -1;
|
||||
}
|
||||
|
||||
|
||||
lbl_1_bss_0->unk3 = 0;
|
||||
lbl_1_bss_70 = 0;
|
||||
}
|
||||
|
||||
|
||||
void fn_1_3304(void) {
|
||||
void fn_1_3304(void)
|
||||
{
|
||||
Vec sp8;
|
||||
f32 temp_f31;
|
||||
s32 var_r31;
|
||||
|
||||
if (lbl_1_bss_0->unk1 != 0) {
|
||||
var_r31 = BoardSpaceFlagSearch(0, 0x4000);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = BoardSpaceFlagSearch(0, 0x8000);
|
||||
}
|
||||
|
||||
|
|
@ -181,7 +179,8 @@ void fn_1_3304(void) {
|
|||
BoardModelMotionStart(lbl_1_data_310, 2, 0x40000001);
|
||||
}
|
||||
|
||||
s32 fn_1_3478(s32 arg0) {
|
||||
s32 fn_1_3478(s32 arg0)
|
||||
{
|
||||
Vec sp38;
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
|
|
@ -214,20 +213,20 @@ s32 fn_1_3478(s32 arg0) {
|
|||
PSVECSubtract(&sp38, &sp2C, &sp20);
|
||||
float_temp = atan2(sp20.x, sp20.z) / M_PI * 180.0f;
|
||||
BoardPlayerMotBlendSet(arg0, (float_temp), 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(arg0) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardPlayerIdleSet(arg0);
|
||||
HuAudFXPlay(0x447);
|
||||
BoardModelMotionShiftSet(lbl_1_data_310, 4, 0.0f, 5.0f, 0);
|
||||
HuPrcSleep(6);
|
||||
|
||||
|
||||
while (BoardModelMotionEndCheck(lbl_1_data_310) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardModelMotionShiftSet(lbl_1_data_310, 1, 0.0f, 5.0f, 0x40000001);
|
||||
temp_r26 = BoardPlayerGetCharMess(arg0);
|
||||
BoardWinCreate(2, MAKE_MESSID(22, 16), 8);
|
||||
|
|
@ -245,26 +244,26 @@ s32 fn_1_3478(s32 arg0) {
|
|||
while (var_r29 == 0) {
|
||||
BoardWinCreateChoice(2, MAKE_MESSID(22, 17), 8, 0);
|
||||
BoardWinAttrSet(0x10);
|
||||
|
||||
|
||||
if (GWPlayer[arg0].com != 0) {
|
||||
fn_1_4354(arg0);
|
||||
}
|
||||
|
||||
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
switch (BoardWinChoiceGet()) {
|
||||
case 0:
|
||||
var_r29 = 1;
|
||||
break;
|
||||
case 2:
|
||||
BoardViewMapExec(arg0);
|
||||
break;
|
||||
default:
|
||||
case 1:
|
||||
BoardWinCreate(2, MAKE_MESSID(22, 20), 8);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
return 0;
|
||||
case 0:
|
||||
var_r29 = 1;
|
||||
break;
|
||||
case 2:
|
||||
BoardViewMapExec(arg0);
|
||||
break;
|
||||
default:
|
||||
case 1:
|
||||
BoardWinCreate(2, MAKE_MESSID(22, 20), 8);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -273,7 +272,7 @@ s32 fn_1_3478(s32 arg0) {
|
|||
for (j = 0; j < 5; j++) {
|
||||
BoardPlayerCoinsAdd(arg0, -1);
|
||||
HuAudFXPlay(14);
|
||||
HuPrcSleep(6);
|
||||
HuPrcSleep(6);
|
||||
}
|
||||
|
||||
HuAudFXPlay(15);
|
||||
|
|
@ -281,7 +280,8 @@ s32 fn_1_3478(s32 arg0) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_3814(s32 arg0) {
|
||||
void fn_1_3814(s32 arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
f32 temp;
|
||||
|
|
@ -289,11 +289,11 @@ void fn_1_3814(s32 arg0) {
|
|||
BoardModelMotionShiftSet(lbl_1_data_310, 2, 0.0f, 10.0f, 0x40000001);
|
||||
temp = (180.0f + BoardPlayerRotYGet(arg0));
|
||||
BoardPlayerMotBlendSet(arg0, temp, 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(arg0) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardCameraViewSet(1);
|
||||
BoardCameraTargetPlayerSet(arg0);
|
||||
|
||||
|
|
@ -310,18 +310,21 @@ void fn_1_3814(s32 arg0) {
|
|||
BoardCameraMotionWait();
|
||||
}
|
||||
|
||||
void fn_1_3968(s32 arg0) {
|
||||
void fn_1_3968(s32 arg0)
|
||||
{
|
||||
s32 var_r29 = 0;
|
||||
s32 var_r28 = 0;
|
||||
s32 sp48[] = {0x005F0065, 0x001A0065, 0x006D0065, 0x008A0065, 0x00850065, 0x00110065, 0x000D0065, 0x00810065};
|
||||
s32 sp48[] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x65), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x65), DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x65),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x65), DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x65), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x65),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x65), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x65) };
|
||||
Vec sp3C;
|
||||
Vec sp30;
|
||||
Vec sp24;
|
||||
Vec sp18;
|
||||
s32 sp10[2] = {0x00770013, 0x00770014};
|
||||
s32 sp10[2] = { 0x00770013, 0x00770014 };
|
||||
f32 spC;
|
||||
s16 sp8;
|
||||
|
||||
|
||||
f32 temp_f30;
|
||||
f32 temp_f28;
|
||||
f32 temp_f31;
|
||||
|
|
@ -332,7 +335,7 @@ void fn_1_3968(s32 arg0) {
|
|||
lbl_1_data_314 = BoardModelCreate(sp10[lbl_1_bss_0->unk1], NULL, 0);
|
||||
character = GWPlayer[arg0].character;
|
||||
lbl_1_data_312 = BoardPlayerMotionCreate(arg0, sp48[character]);
|
||||
|
||||
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_310), "itemhook_oya", &sp3C);
|
||||
BoardPlayerPosGet(arg0, &sp30);
|
||||
temp_f30 = BoardVecDistXZCalc(&sp3C, &sp30);
|
||||
|
|
@ -341,13 +344,13 @@ void fn_1_3968(s32 arg0) {
|
|||
PSVECScale(&sp24, &sp24, temp_f30 / 45.0f);
|
||||
BoardPlayerMotionShiftSet(arg0, 4, 0.0f, 5.0f, 0);
|
||||
HuPrcSleep(5);
|
||||
|
||||
|
||||
spC = BoardPlayerRotYGet(arg0);
|
||||
temp_f27 = 180.0f + spC;
|
||||
var_r29 = 0;
|
||||
sp8 = 0;
|
||||
temp_f28 = 40.0f;
|
||||
|
||||
|
||||
while (1) {
|
||||
temp_f31 = __OSs16tof32(&sp8);
|
||||
sp24.y = temp_f28 + (-0.08166667f * (0.75f * (temp_f31 * temp_f31)));
|
||||
|
|
@ -359,16 +362,17 @@ void fn_1_3968(s32 arg0) {
|
|||
sp30.x = sp3C.x;
|
||||
sp30.z = sp3C.z;
|
||||
}
|
||||
|
||||
|
||||
if (var_r29 == 0) {
|
||||
if (sp3C.y < sp30.y) {
|
||||
var_r29 = 1;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardDAngleCalcRange(&spC, temp_f27, 5.142857f);
|
||||
BoardPlayerRotYSet(arg0, spC);
|
||||
}
|
||||
|
||||
|
||||
if (sp30.y <= sp3C.y && var_r29 != 0) {
|
||||
sp30.y = sp3C.y;
|
||||
break;
|
||||
|
|
@ -376,39 +380,40 @@ void fn_1_3968(s32 arg0) {
|
|||
|
||||
BoardPlayerPosSetV(arg0, &sp30);
|
||||
HuPrcVSleep();
|
||||
sp8 += 1;
|
||||
sp8 += 1;
|
||||
}
|
||||
|
||||
|
||||
BoardMusStart(1, 0x18, 0x7F, 0);
|
||||
BoardPlayerPosSet(arg0, 0.0f, 0.0f, 0.0f);
|
||||
|
||||
|
||||
BoardModelHookSet(lbl_1_data_310, "itemhook_oya", BoardPlayerModelGet(arg0));
|
||||
|
||||
BoardModelHookSet(lbl_1_data_310, "itemhook_oya", BoardPlayerModelGet(arg0));
|
||||
BoardPlayerMotionStart(arg0, lbl_1_data_312, 0x40000001);
|
||||
HuAudFXPlay(0x44F);
|
||||
BoardModelMotionShiftSet(lbl_1_data_310, 5, 0.0f, 5.0f, 0);
|
||||
|
||||
|
||||
sp18.x = -15.0f;
|
||||
sp18.y = 180.0f;
|
||||
sp18.z = 0.0f;
|
||||
|
||||
|
||||
BoardCameraMotionStartEx(lbl_1_data_310, &sp18, NULL, 4000.0f, -1.0f, 336);
|
||||
|
||||
for (var_r28 = 0, sp8 = 0; ; sp8++) {
|
||||
|
||||
for (var_r28 = 0, sp8 = 0;; sp8++) {
|
||||
if (var_r28 == 0) {
|
||||
if (sp8 == 0x78U) {
|
||||
WipeColorSet(0, 0, 0);
|
||||
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, -1);
|
||||
var_r28 = 1;
|
||||
}
|
||||
} else if (WipeStatGet() == 0) {
|
||||
}
|
||||
else if (WipeStatGet() == 0) {
|
||||
break;
|
||||
}
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_3E88(s32 arg0) {
|
||||
void fn_1_3E88(s32 arg0)
|
||||
{
|
||||
lbl_1_bss_7D = 0;
|
||||
fn_1_48EC(arg0);
|
||||
fn_1_5838(arg0);
|
||||
|
|
@ -433,7 +438,8 @@ void fn_1_3E88(s32 arg0) {
|
|||
BoardAudSeqPause(0, 0, 0x3E8);
|
||||
}
|
||||
|
||||
void fn_1_3F5C(s32 arg0) {
|
||||
void fn_1_3F5C(s32 arg0)
|
||||
{
|
||||
Mtx sp38;
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
|
|
@ -447,7 +453,8 @@ void fn_1_3F5C(s32 arg0) {
|
|||
if (lbl_1_bss_0->unk1 != 0) {
|
||||
lbl_1_bss_0->unk1 = 0;
|
||||
var_r30 = BoardSpaceFlagSearch(0, 0x8000);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_0->unk1 = 1;
|
||||
var_r30 = BoardSpaceFlagSearch(0, 0x4000);
|
||||
}
|
||||
|
|
@ -458,7 +465,8 @@ void fn_1_3F5C(s32 arg0) {
|
|||
|
||||
if (lbl_1_bss_0->unk1 != 0) {
|
||||
var_r31 = BoardSpaceFlagSearch(0, 0x4000);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = BoardSpaceFlagSearch(0, 0x8000);
|
||||
}
|
||||
|
||||
|
|
@ -506,19 +514,21 @@ void fn_1_3F5C(s32 arg0) {
|
|||
BoardWinKill();
|
||||
}
|
||||
|
||||
void fn_1_4354(s32 arg0) {
|
||||
void fn_1_4354(s32 arg0)
|
||||
{
|
||||
s32 sp8;
|
||||
s32 starPos;
|
||||
s32 var_r30;
|
||||
|
||||
var_r30 = 0;
|
||||
starPos = GWSystem.star_pos;
|
||||
|
||||
|
||||
if (lbl_1_bss_0->unk1 != 0) {
|
||||
if ((starPos == 1) || (starPos == 2) || (starPos == 3) || (starPos == 4)) {
|
||||
var_r30 = 1;
|
||||
}
|
||||
} else if ((starPos == 0) || (starPos == 5) || (starPos == 6) || (starPos == 7)) {
|
||||
}
|
||||
else if ((starPos == 0) || (starPos == 5) || (starPos == 6) || (starPos == 7)) {
|
||||
var_r30 = 1;
|
||||
}
|
||||
|
||||
|
|
@ -534,12 +544,10 @@ void fn_1_4354(s32 arg0) {
|
|||
BoardComKeySetRight();
|
||||
}
|
||||
|
||||
char *lbl_1_data_34C[] = {
|
||||
"jyanA",
|
||||
"jyanB"
|
||||
};
|
||||
char *lbl_1_data_34C[] = { "jyanA", "jyanB" };
|
||||
|
||||
void fn_1_4424(w03StructUnk2* arg0) {
|
||||
void fn_1_4424(w03StructUnk2 *arg0)
|
||||
{
|
||||
Mtx sp108;
|
||||
Mtx spD8;
|
||||
Mtx spA8;
|
||||
|
|
@ -562,9 +570,9 @@ void fn_1_4424(w03StructUnk2* arg0) {
|
|||
f32 sp10;
|
||||
f32 sp10_2;
|
||||
s16 i;
|
||||
char* temp_r22;
|
||||
w03StructUnk3* temp_r27;
|
||||
ModelData* temp_r28;
|
||||
char *temp_r22;
|
||||
w03StructUnk3 *temp_r27;
|
||||
ModelData *temp_r28;
|
||||
|
||||
memset(&lbl_1_bss_80, 0, 0xA0);
|
||||
sp48.x = sp54.x = 0.0f;
|
||||
|
|
@ -576,7 +584,8 @@ void fn_1_4424(w03StructUnk2* arg0) {
|
|||
|
||||
if (lbl_1_bss_0->unk1 != 0) {
|
||||
PSVECSubtract(&sp6C, &sp60, &sp3C);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECSubtract(&sp60, &sp6C, &sp3C);
|
||||
}
|
||||
|
||||
|
|
@ -595,21 +604,21 @@ void fn_1_4424(w03StructUnk2* arg0) {
|
|||
for (i = var_r25 = 0; i < 20;) {
|
||||
Hu3DMotionExec(temp_r23, temp_r28->unk_08, temp_r28->unk_64, 0);
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_314), temp_r22, &sp54);
|
||||
temp_r28->unk_64 = (f32) (temp_r28->unk_64 + temp_r28->unk_68);
|
||||
temp_r28->unk_64 = (f32)(temp_r28->unk_64 + temp_r28->unk_68);
|
||||
|
||||
if (temp_r28->unk_64 > 400.0f) {
|
||||
break;
|
||||
}
|
||||
|
||||
if (var_r25 % 4 == 0 && ((s16) var_r25 != 0)) {
|
||||
|
||||
if (var_r25 % 4 == 0 && ((s16)var_r25 != 0)) {
|
||||
temp_r27 = &arg0->unk_08[i];
|
||||
temp_r27->unk_00 = 1;
|
||||
temp_f30 = (0.5f - BoardRandFloat()) * 90;
|
||||
OSf32tos16(&temp_f30, &sp8);
|
||||
sp8 = (sp8 / 10) * 10;
|
||||
OSs16tof32(&sp8, &temp_f30);
|
||||
lbl_1_bss_80[i+1][0] = temp_f30;
|
||||
lbl_1_bss_80[i+1][1] = temp_r28->unk_64;
|
||||
lbl_1_bss_80[i + 1][0] = temp_f30;
|
||||
lbl_1_bss_80[i + 1][1] = temp_r28->unk_64;
|
||||
sp30 = sp48;
|
||||
sp18 = sp54;
|
||||
BoardMTXCalcLookAt(spA8, &sp18, &sp24, &sp30);
|
||||
|
|
@ -632,12 +641,13 @@ void fn_1_4424(w03StructUnk2* arg0) {
|
|||
arg0->unk_03 = i;
|
||||
}
|
||||
|
||||
void fn_1_48EC(s32 arg0) {
|
||||
void fn_1_48EC(s32 arg0)
|
||||
{
|
||||
Vec spC;
|
||||
omObjData* obj;
|
||||
omObjData *obj;
|
||||
s32 i;
|
||||
w03StructUnk2* temp_r31;
|
||||
w03StructUnk3* temp_r30;
|
||||
w03StructUnk2 *temp_r31;
|
||||
w03StructUnk3 *temp_r30;
|
||||
|
||||
obj = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_50D4);
|
||||
lbl_1_bss_74 = obj;
|
||||
|
|
@ -648,9 +658,9 @@ void fn_1_48EC(s32 arg0) {
|
|||
temp_r31->unkbit_04 = 0;
|
||||
temp_r31->unk_02 = -1;
|
||||
temp_r31->unkbit_01 = arg0;
|
||||
temp_r31->unk_08 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xA00, 0x10000000U);
|
||||
temp_r31->unk_08 = HuMemDirectMallocNum(HEAP_SYSTEM, 0xA00, MEMORY_DEFAULT_NUM);
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_C[2]), "coin", &spC);
|
||||
temp_r31->model = BoardModelCreate(0x770007, NULL, 0);
|
||||
temp_r31->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x07), NULL, 0);
|
||||
BoardModelVisibilitySet(temp_r31->model, 0);
|
||||
BoardModelPosSetV(temp_r31->model, &spC);
|
||||
BoardModelLayerSet(temp_r31->model, 2U);
|
||||
|
|
@ -658,24 +668,26 @@ void fn_1_48EC(s32 arg0) {
|
|||
|
||||
for (i = 0; i < 80; i++) {
|
||||
temp_r30 = &temp_r31->unk_08[i];
|
||||
temp_r30->model = BoardModelCreate(0x70009, 0, 1);
|
||||
temp_r30->model = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x09), 0, 1);
|
||||
BoardModelVisibilitySet(temp_r30->model, 0);
|
||||
BoardModelMotionStart(temp_r30->model, 0, 0x40000001U);
|
||||
BoardModelMotionStart(temp_r30->model, 0, 0x40000001U);
|
||||
}
|
||||
|
||||
|
||||
fn_1_4424(temp_r31);
|
||||
}
|
||||
|
||||
void fn_1_4A9C(void) {
|
||||
void fn_1_4A9C(void)
|
||||
{
|
||||
OM_GET_WORK_PTR(lbl_1_bss_74, w03UnkStruct4)->unk00_bit0 = 1;
|
||||
}
|
||||
|
||||
void fn_1_4ABC(w03StructUnk2* arg0) {
|
||||
void fn_1_4ABC(w03StructUnk2 *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
f32 temp_f31;
|
||||
w03StructUnk3* temp_r31;
|
||||
w03StructUnk3 *temp_r31;
|
||||
s32 i;
|
||||
|
||||
|
||||
BoardModelPosGet(lbl_1_data_310, &sp8);
|
||||
sp8.y += 250.0f;
|
||||
|
||||
|
|
@ -691,10 +703,10 @@ void fn_1_4ABC(w03StructUnk2* arg0) {
|
|||
HuAudFXPlay(7);
|
||||
}
|
||||
BoardModelPosSetV(temp_r31->model, &temp_r31->unk_08);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//reg alloc hack
|
||||
// reg alloc hack
|
||||
(void)i;
|
||||
(void)i;
|
||||
|
||||
|
|
@ -710,22 +722,25 @@ void fn_1_4ABC(w03StructUnk2* arg0) {
|
|||
if (temp_r31->unk_08.y < -300.0f) {
|
||||
temp_r31->unk_00 = -1;
|
||||
BoardModelVisibilitySet(temp_r31->model, 0);
|
||||
} else if (BoardVecMinDistCheck(&sp8, &temp_r31->unk_08, 200.0f) != 0) {
|
||||
}
|
||||
else if (BoardVecMinDistCheck(&sp8, &temp_r31->unk_08, 200.0f) != 0) {
|
||||
temp_r31->unk_00 = -1;
|
||||
BoardModelVisibilitySet(temp_r31->model, 0);
|
||||
BoardPlayerCoinsAdd(arg0->unkbit_01, 1);
|
||||
CharModelLayerSetAll(2);
|
||||
CharModelCoinEffectCreate(1, &temp_r31->unk_08);
|
||||
HuAudFXPlay(7);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardModelPosSetV(temp_r31->model, &temp_r31->unk_08);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_4D0C(w03StructUnk3** arg0, s16* arg1) {
|
||||
w03StructUnk2* temp_r31;
|
||||
s32 fn_1_4D0C(w03StructUnk3 **arg0, s16 *arg1)
|
||||
{
|
||||
w03StructUnk2 *temp_r31;
|
||||
|
||||
if (!(lbl_1_bss_74)) {
|
||||
return 0;
|
||||
|
|
@ -737,13 +752,14 @@ s32 fn_1_4D0C(w03StructUnk3** arg0, s16* arg1) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_4D60(w03StructUnk2* arg0) {
|
||||
void fn_1_4D60(w03StructUnk2 *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
f32 temp_f31;
|
||||
f32 temp_f30;
|
||||
s32 i;
|
||||
s32 j;
|
||||
w03StructUnk3* temp_r31;
|
||||
w03StructUnk3 *temp_r31;
|
||||
|
||||
if (arg0->unk_02 == 1) {
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_C[2]), "coin", &sp8);
|
||||
|
|
@ -769,20 +785,23 @@ void fn_1_4D60(w03StructUnk2* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_4F24(w03StructUnk2* arg0) {
|
||||
void fn_1_4F24(w03StructUnk2 *arg0)
|
||||
{
|
||||
s32 var_r30 = 0;
|
||||
s32 sp8[4] = {5, 10, 30, 40};
|
||||
s32 sp8[4] = { 5, 10, 30, 40 };
|
||||
s32 temp_r29;
|
||||
s32 temp_r28;
|
||||
|
||||
|
||||
if (arg0->unk_02 == -1) {
|
||||
if (GWTeamGet()) {
|
||||
if (GWPlayer[arg0->unkbit_01].rank == 0) {
|
||||
var_r30 = 5;
|
||||
} else if (GWPlayer[arg0->unkbit_01].rank == 1) {
|
||||
}
|
||||
else if (GWPlayer[arg0->unkbit_01].rank == 1) {
|
||||
var_r30 = 20;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r30 = sp8[GWPlayer[arg0->unkbit_01].rank];
|
||||
}
|
||||
|
||||
|
|
@ -792,10 +811,12 @@ void fn_1_4F24(w03StructUnk2* arg0) {
|
|||
if (temp_r29 < var_r30) {
|
||||
if (temp_r28 < 30) {
|
||||
arg0->unk_02 = 2;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk_02 = 1;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->unk_02 = 0;
|
||||
}
|
||||
|
||||
|
|
@ -805,12 +826,13 @@ void fn_1_4F24(w03StructUnk2* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_50D4(omObjData* arg0) {
|
||||
void fn_1_50D4(omObjData *arg0)
|
||||
{
|
||||
Vec sp50;
|
||||
Vec sp44;
|
||||
Vec sp38;
|
||||
PlayerState* sp18;
|
||||
PlayerState* sp14;
|
||||
PlayerState *sp18;
|
||||
PlayerState *sp14;
|
||||
s16 sp10[2];
|
||||
s16 spC[2];
|
||||
f32 temp_f31;
|
||||
|
|
@ -819,12 +841,12 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
s32 i, j, k;
|
||||
s32 temp_r22;
|
||||
s32 temp_r23;
|
||||
w03StructUnk3* temp_r30;
|
||||
w03StructUnk2* temp_r31;
|
||||
w03StructUnk3* temp;
|
||||
w03StructUnk3 *temp_r30;
|
||||
w03StructUnk2 *temp_r31;
|
||||
w03StructUnk3 *temp;
|
||||
|
||||
temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_74, w03StructUnk2);
|
||||
|
||||
|
||||
if ((temp_r31->unkbit_00 != 0) || (BoardIsKill() != 0)) {
|
||||
for (i = 0; i < 80; i++) {
|
||||
temp = &temp_r31->unk_08[i];
|
||||
|
|
@ -834,28 +856,26 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
for (i = 0; i < 4; i++) {
|
||||
BoardModelVisibilitySet(BoardPlayerModelGet(i), 1);
|
||||
}
|
||||
|
||||
|
||||
BoardModelKill(temp_r31->model);
|
||||
HuMemDirectFree(temp_r31->unk_08);
|
||||
lbl_1_bss_74 = 0;
|
||||
omDelObjEx(HuPrcCurrentGet(), arg0);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (lbl_1_data_314 != -1) {
|
||||
temp_f31 = BoardModelMotionTimeGet(lbl_1_data_314);
|
||||
if (temp_r31->unk_01 == 0) {
|
||||
if ((lbl_1_bss_0->unk1 != 0) &&
|
||||
((temp_f31 >= 212.0f)) ||
|
||||
(lbl_1_bss_0->unk1 == 0) &&
|
||||
((temp_f31 >= 86.0f))) {
|
||||
|
||||
if ((lbl_1_bss_0->unk1 != 0) && ((temp_f31 >= 212.0f)) || (lbl_1_bss_0->unk1 == 0) && ((temp_f31 >= 86.0f))) {
|
||||
|
||||
temp_r31->unk_01 = 1;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_4F24(temp_r31);
|
||||
}
|
||||
|
||||
|
||||
if (temp_r31->unk_01 != 0) {
|
||||
if (BoardModelMotionEndCheck(lbl_1_bss_C[2]) != 0) {
|
||||
BoardModelMotionStart(lbl_1_bss_C[2], 0, 0x40000001);
|
||||
|
|
@ -865,12 +885,13 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
BoardModelVisibilitySet(temp_r31->model, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (BoardModelMotionTimeGet(lbl_1_bss_C[2]) >= 170.0f) {
|
||||
if (temp_r31->unkbit_04 == 0) {
|
||||
if (temp_r31->unkbit_03 == 0) {
|
||||
HuAudFXPlay(0x43C);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuAudFXPlay(0x43D);
|
||||
}
|
||||
temp_r31->unkbit_04 = 1;
|
||||
|
|
@ -878,16 +899,17 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
if (temp_r31->unk_02 == 1) {
|
||||
omVibrate(GWSystem.player_curr, 0xC, 4, 2);
|
||||
fn_1_4D60(temp_r31);
|
||||
} else if ((temp_r31->unk_02 == 2) && (temp_r31->unkbit_03 == 0)) {
|
||||
}
|
||||
else if ((temp_r31->unk_02 == 2) && (temp_r31->unkbit_03 == 0)) {
|
||||
omVibrate(GWSystem.player_curr, 0xC, 0xC, 0);
|
||||
BoardModelVisibilitySet(temp_r31->model, 1);
|
||||
BoardModelMotionStart(temp_r31->model, 0, 0);
|
||||
temp_r31->unkbit_03 = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fn_1_4ABC(temp_r31);
|
||||
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
if (i != GWSystem.player_curr) {
|
||||
BoardPlayerPosGet(i, &sp50);
|
||||
|
|
@ -895,7 +917,8 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
PSVECSubtract(&sp50, &sp44, &sp38);
|
||||
if (PSVECMag(&sp38) >= 2000.0f) {
|
||||
BoardModelVisibilitySet(BoardPlayerModelGet(i), 0);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardModelVisibilitySet(BoardPlayerModelGet(i), 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -903,11 +926,12 @@ void fn_1_50D4(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5838(s32 arg0) {
|
||||
void fn_1_5838(s32 arg0)
|
||||
{
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
omObjData* obj;
|
||||
w03UnkStruct5* temp_r31;
|
||||
omObjData *obj;
|
||||
w03UnkStruct5 *temp_r31;
|
||||
|
||||
obj = omAddObjEx(boardObjMan, 0x7E01, 0, 0, -1, &fn_1_5AC8);
|
||||
lbl_1_bss_78 = obj;
|
||||
|
|
@ -918,18 +942,18 @@ void fn_1_5838(s32 arg0) {
|
|||
temp_r31->unk00_bit3 = 0;
|
||||
|
||||
switch (GWPlayer[temp_r31->unk00_bit1].diff) {
|
||||
case 0:
|
||||
temp_r31->unk_08 = (-15.0f + (-30.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 1:
|
||||
temp_r31->unk_08 = (-5.0f + (-10.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 2:
|
||||
temp_r31->unk_08 = (-2.0f + (-5.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 3:
|
||||
temp_r31->unk_08 = 0.0f;
|
||||
break;
|
||||
case 0:
|
||||
temp_r31->unk_08 = (-15.0f + (-30.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 1:
|
||||
temp_r31->unk_08 = (-5.0f + (-10.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 2:
|
||||
temp_r31->unk_08 = (-2.0f + (-5.0f * BoardRandFloat()));
|
||||
break;
|
||||
case 3:
|
||||
temp_r31->unk_08 = 0.0f;
|
||||
break;
|
||||
}
|
||||
|
||||
BoardCameraMoveSet(0);
|
||||
|
|
@ -950,9 +974,10 @@ void fn_1_5838(s32 arg0) {
|
|||
BoardCameraTargetModelSet(-1);
|
||||
}
|
||||
|
||||
void fn_1_5AC8(omObjData* arg0) {
|
||||
void fn_1_5AC8(omObjData *arg0)
|
||||
{
|
||||
s32 temp_r0;
|
||||
w03UnkStruct5* temp_r31;
|
||||
w03UnkStruct5 *temp_r31;
|
||||
|
||||
temp_r31 = OM_GET_WORK_PTR(arg0, w03UnkStruct5);
|
||||
|
||||
|
|
@ -971,32 +996,29 @@ void fn_1_5AC8(omObjData* arg0) {
|
|||
}
|
||||
|
||||
switch (temp_r31->unk00_bit4) {
|
||||
case 1:
|
||||
if (lbl_1_bss_7D != 0) {
|
||||
fn_1_629C(2);
|
||||
fn_1_62FC();
|
||||
BoardCameraTargetModelSet(lbl_1_data_310);
|
||||
BoardCameraMoveSet(1);
|
||||
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
fn_1_5C5C(arg0, (w03UnkStruct5* ) temp_r31);
|
||||
break;
|
||||
case 3:
|
||||
BoardCameraTargetModelSet(-1);
|
||||
BoardCameraMoveSet(0);
|
||||
temp_r31->unk00_bit0 = 1;
|
||||
break;
|
||||
case 1:
|
||||
if (lbl_1_bss_7D != 0) {
|
||||
fn_1_629C(2);
|
||||
fn_1_62FC();
|
||||
BoardCameraTargetModelSet(lbl_1_data_310);
|
||||
BoardCameraMoveSet(1);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
fn_1_5C5C(arg0, (w03UnkStruct5 *)temp_r31);
|
||||
break;
|
||||
case 3:
|
||||
BoardCameraTargetModelSet(-1);
|
||||
BoardCameraMoveSet(0);
|
||||
temp_r31->unk00_bit0 = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
char *lbl_1_data_35C[] = {
|
||||
"jyanA",
|
||||
"jyanB"
|
||||
};
|
||||
char *lbl_1_data_35C[] = { "jyanA", "jyanB" };
|
||||
|
||||
void fn_1_5C5C(omObjData* arg0, w03UnkStruct5* arg1) {
|
||||
void fn_1_5C5C(omObjData *arg0, w03UnkStruct5 *arg1)
|
||||
{
|
||||
Mtx sp110;
|
||||
Mtx spE0;
|
||||
Mtx spB0;
|
||||
|
|
@ -1009,8 +1031,8 @@ void fn_1_5C5C(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
Vec sp14;
|
||||
Vec sp8;
|
||||
s16 temp_r3;
|
||||
char* temp_r27;
|
||||
ModelData* temp_r30;
|
||||
char *temp_r27;
|
||||
ModelData *temp_r30;
|
||||
|
||||
if (((WipeStatGet() == 0) && (arg1->unk00_bit3) || (BoardModelMotionEndCheck(lbl_1_data_314) != 0))) {
|
||||
fn_1_629C(3);
|
||||
|
|
@ -1037,7 +1059,8 @@ void fn_1_5C5C(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
|
||||
if (0.0f != temp_r30->unk_64) {
|
||||
PSVECSubtract(&sp38, &sp44, &sp2C);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp2C.x = sp2C.y = sp2C.z = 0.0f;
|
||||
}
|
||||
|
||||
|
|
@ -1068,14 +1091,16 @@ void fn_1_5C5C(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
BoardCameraRotSet(-20.0f, (180.0 * (atan2(sp2C.x, sp2C.z) / M_PI)));
|
||||
}
|
||||
|
||||
void fn_1_602C(omObjData* arg0, w03UnkStruct5* arg1) {
|
||||
void fn_1_602C(omObjData *arg0, w03UnkStruct5 *arg1)
|
||||
{
|
||||
f32 temp_f31 = 0.0f;
|
||||
f32 var_f30;
|
||||
f32 var_f29;
|
||||
|
||||
if (GWPlayer[arg1->unk00_bit1].com == 0) {
|
||||
var_f30 = HuPadStkX[GWPlayer[arg1->unk00_bit1].port];
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f30 = fn_1_61A4(arg0, arg1);
|
||||
}
|
||||
|
||||
|
|
@ -1083,7 +1108,8 @@ void fn_1_602C(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
|
||||
if (temp_f31 < 0.0f) {
|
||||
var_f29 = -temp_f31;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f29 = temp_f31;
|
||||
}
|
||||
|
||||
|
|
@ -1095,13 +1121,14 @@ void fn_1_602C(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
BoardDAngleCalcRange(&arg1->unk_04, temp_f31, 1.0f);
|
||||
}
|
||||
|
||||
f32 fn_1_61A4(omObjData* arg0, w03UnkStruct5* arg1) {
|
||||
w03StructUnk3* sp8;
|
||||
f32 fn_1_61A4(omObjData *arg0, w03UnkStruct5 *arg1)
|
||||
{
|
||||
w03StructUnk3 *sp8;
|
||||
f32 temp_f31;
|
||||
s16 i;
|
||||
w03StructUnk2* temp_r29;
|
||||
w03StructUnk2 *temp_r29;
|
||||
s16 var_r28;
|
||||
f32* temp_r31;
|
||||
f32 *temp_r31;
|
||||
|
||||
if (lbl_1_bss_74) {
|
||||
temp_r29 = OM_GET_WORK_PTR(lbl_1_bss_74, w03StructUnk2);
|
||||
|
|
@ -1116,28 +1143,31 @@ f32 fn_1_61A4(omObjData* arg0, w03UnkStruct5* arg1) {
|
|||
temp_r31 = lbl_1_bss_80[i];
|
||||
if ((temp_r31[1] < temp_f31) && (temp_r31[3] > temp_f31)) {
|
||||
return -1.5f * temp_r31[2];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
void fn_1_629C(s8 arg0) {
|
||||
w03UnkStruct5* temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_78, w03UnkStruct5);
|
||||
void fn_1_629C(s8 arg0)
|
||||
{
|
||||
w03UnkStruct5 *temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_78, w03UnkStruct5);
|
||||
temp_r31->unk00_bit4 = arg0;
|
||||
}
|
||||
|
||||
s32 fn_1_62D0(void) {
|
||||
w03UnkStruct5* temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_78, w03UnkStruct5);
|
||||
s32 fn_1_62D0(void)
|
||||
{
|
||||
w03UnkStruct5 *temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_78, w03UnkStruct5);
|
||||
return temp_r31->unk00_bit4;
|
||||
}
|
||||
|
||||
void fn_1_62FC(void) {
|
||||
void fn_1_62FC(void)
|
||||
{
|
||||
f32 widthHeight[2];
|
||||
s32 messageID = 0x000D0005;
|
||||
s32 messageID = DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x05);
|
||||
f32 x;
|
||||
f32 y;
|
||||
|
||||
|
||||
HuWinMesMaxSizeGet(1, widthHeight, messageID);
|
||||
x = -10000.0f;
|
||||
y = 392.0f;
|
||||
|
|
|
|||
|
|
@ -125,24 +125,24 @@ void BoardCreate(void) {
|
|||
|
||||
lbl_1_bss_0 = (w03State*)&GWSystem.board_data;
|
||||
lbl_1_bss_0->unk3 = 0;
|
||||
BoardSpaceInit(0x770000);
|
||||
BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W03, 0x00));
|
||||
|
||||
lbl_1_data_1E0 = BoardModelCreate(0x770001, NULL, 0);
|
||||
lbl_1_data_1E0 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x01), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_1E0, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_1E0, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_1E0, 0, 0x40000001);
|
||||
|
||||
lbl_1_data_1E8 = BoardModelCreate(0x770003, NULL, 0);
|
||||
lbl_1_data_1E8 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x03), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_1E8, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_1E8, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelLayerSet(lbl_1_data_1E8, 2);
|
||||
|
||||
lbl_1_data_1E2 = BoardModelCreate(0x770002, NULL, 0);
|
||||
lbl_1_data_1E2 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x02), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_1E2, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_1E2, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_1E2, 0, 0x40000001);
|
||||
|
||||
lbl_1_data_1E4 = BoardModelCreate(0x77001B, lbl_1_data_20C, 0);
|
||||
lbl_1_data_1E4 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x1B), lbl_1_data_20C, 0);
|
||||
BoardModelPosSet(lbl_1_data_1E4, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_1E4, 1, 0x40000001);
|
||||
|
||||
|
|
@ -473,4 +473,4 @@ void fn_1_10E4(omObjData* arg0) {
|
|||
}
|
||||
|
||||
HuAudFXListnerUpdate(&sp14, &sp8);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
#include "dolphin.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/object.h"
|
||||
#include "REL/w03Dll.h"
|
||||
#include "dolphin.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/space.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/object.h"
|
||||
#include "game/pad.h"
|
||||
|
||||
//structs
|
||||
typedef struct someBits3 { //make sure this is defined correctly
|
||||
// structs
|
||||
typedef struct someBits3 { // make sure this is defined correctly
|
||||
/* 0x00 */ struct {
|
||||
u8 unk00_bit0 : 1;
|
||||
u8 unk00_bit1 : 4;
|
||||
|
|
@ -42,58 +42,61 @@ typedef struct unkTemp2 {
|
|||
s8 unk4;
|
||||
char unk_05[3];
|
||||
f32 unk8;
|
||||
unkTemp* unk_0C;
|
||||
unkTemp *unk_0C;
|
||||
} unkTemp2;
|
||||
|
||||
//function signatures
|
||||
// function signatures
|
||||
void fn_1_7C98(void);
|
||||
void fn_1_7C38(void);
|
||||
s32 fn_1_7D18(s32 arg0);
|
||||
void fn_1_8140(s32 arg0);
|
||||
void fn_1_81E0(s32 arg0);
|
||||
void fn_1_8530(omObjData* arg0);
|
||||
void fn_1_8530(omObjData *arg0);
|
||||
void fn_1_84A8(s32 arg0);
|
||||
void fn_1_8698(omObjData* arg0, someBits3* arg1);
|
||||
void fn_1_8C08(omObjData* arg0, someBits3* arg1);
|
||||
void fn_1_8E44(omObjData* arg0, someBits3* arg1);
|
||||
void fn_1_9044(omObjData* arg0, someBits3* arg1);
|
||||
void fn_1_8698(omObjData *arg0, someBits3 *arg1);
|
||||
void fn_1_8C08(omObjData *arg0, someBits3 *arg1);
|
||||
void fn_1_8E44(omObjData *arg0, someBits3 *arg1);
|
||||
void fn_1_9044(omObjData *arg0, someBits3 *arg1);
|
||||
void fn_1_91B8(void);
|
||||
void fn_1_9230(s32 arg0);
|
||||
void fn_1_9384(void);
|
||||
void fn_1_9474(s32 arg0);
|
||||
void fn_1_97F8(s32 arg0);
|
||||
void fn_1_9A1C(unkTemp2* arg0);
|
||||
void fn_1_9A1C(unkTemp2 *arg0);
|
||||
|
||||
//data
|
||||
// data
|
||||
s32 lbl_1_data_450 = -1;
|
||||
s16 lbl_1_data_454 = -1;
|
||||
s16 lbl_1_data_456 = -1;
|
||||
s16 lbl_1_data_458 = -1;
|
||||
s32 lbl_1_data_45C[] = {0x00770021, 0x00770022, -1};
|
||||
s32 lbl_1_data_45C[] = { DATA_MAKE_NUM(DATADIR_W03, 0x21), DATA_MAKE_NUM(DATADIR_W03, 0x22), DATA_NUM_LISTEND };
|
||||
|
||||
//BSS
|
||||
// BSS
|
||||
char lbl_1_bss_150[0x30];
|
||||
s16 lbl_1_bss_14E;
|
||||
s8 lbl_1_bss_14C;
|
||||
omObjData* lbl_1_bss_148;
|
||||
omObjData* lbl_1_bss_144;
|
||||
Process* lbl_1_bss_140;
|
||||
omObjData *lbl_1_bss_148;
|
||||
omObjData *lbl_1_bss_144;
|
||||
Process *lbl_1_bss_140;
|
||||
|
||||
void fn_1_7ABC(void) {
|
||||
lbl_1_data_456 = BoardModelCreate(0x770020, lbl_1_data_45C, 0);
|
||||
void fn_1_7ABC(void)
|
||||
{
|
||||
lbl_1_data_456 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x20), lbl_1_data_45C, 0);
|
||||
BoardModelHookSet(lbl_1_bss_C[7], "phei", lbl_1_data_456);
|
||||
BoardModelMotionStart(lbl_1_data_456, 2, 0x40000002);
|
||||
BoardModelRotYSet(lbl_1_data_456, -45.0f);
|
||||
}
|
||||
|
||||
void fn_1_7B58(void) {
|
||||
void fn_1_7B58(void)
|
||||
{
|
||||
if (lbl_1_data_456 != -1) {
|
||||
BoardModelKill(lbl_1_data_456);
|
||||
lbl_1_data_456 = -1;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_7BA8(void) {
|
||||
void fn_1_7BA8(void)
|
||||
{
|
||||
BoardRollDispSet(0);
|
||||
lbl_1_bss_140 = HuPrcChildCreate(&fn_1_7C98, 0x2003, 0x2000, 0, boardMainProc);
|
||||
HuPrcDestructorSet2(lbl_1_bss_140, &fn_1_7C38);
|
||||
|
|
@ -103,7 +106,8 @@ void fn_1_7BA8(void) {
|
|||
BoardRollDispSet(1);
|
||||
}
|
||||
|
||||
void fn_1_7C38(void) {
|
||||
void fn_1_7C38(void)
|
||||
{
|
||||
if (lbl_1_data_454 != -1) {
|
||||
HuWinKill(lbl_1_data_454);
|
||||
lbl_1_data_454 = -1;
|
||||
|
|
@ -111,7 +115,8 @@ void fn_1_7C38(void) {
|
|||
lbl_1_bss_140 = 0;
|
||||
}
|
||||
|
||||
void fn_1_7C98(void) {
|
||||
void fn_1_7C98(void)
|
||||
{
|
||||
s32 temp_r31;
|
||||
|
||||
temp_r31 = GWSystem.player_curr;
|
||||
|
|
@ -125,7 +130,8 @@ void fn_1_7C98(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
s32 fn_1_7D18(s32 arg0) {
|
||||
s32 fn_1_7D18(s32 arg0)
|
||||
{
|
||||
Point3d sp38;
|
||||
Point3d sp2C;
|
||||
Point3d sp20;
|
||||
|
|
@ -136,7 +142,7 @@ s32 fn_1_7D18(s32 arg0) {
|
|||
s16 space;
|
||||
s16 temp_r28;
|
||||
f32 arctan;
|
||||
|
||||
|
||||
BoardWinCreateChoice(2, MAKE_MESSID(22, 21), 2, 0);
|
||||
|
||||
if (GWPlayer[arg0].com != 0) {
|
||||
|
|
@ -176,7 +182,8 @@ s32 fn_1_7D18(s32 arg0) {
|
|||
|
||||
if (GWPlayer[arg0].character == 5) {
|
||||
var_f31 = 54.000004f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = 39.0f;
|
||||
}
|
||||
|
||||
|
|
@ -204,9 +211,10 @@ s32 fn_1_7D18(s32 arg0) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_8140(s32 arg0) {
|
||||
void fn_1_8140(s32 arg0)
|
||||
{
|
||||
s16 temp_r31;
|
||||
|
||||
|
||||
fn_1_81E0(arg0);
|
||||
BoardMusStart(1, 0x16, 0x7F, 0);
|
||||
temp_r31 = MGSeqStartCreate();
|
||||
|
|
@ -226,35 +234,36 @@ void fn_1_8140(s32 arg0) {
|
|||
}
|
||||
|
||||
s32 lbl_1_data_470[] = {
|
||||
0x005F0066,
|
||||
0x001A0066,
|
||||
0x006D0066,
|
||||
0x008A0066,
|
||||
0x00850066,
|
||||
0x00110066,
|
||||
0x000D0066,
|
||||
0x00810066
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x66),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x66),
|
||||
};
|
||||
|
||||
s32 lbl_1_data_490[] = {
|
||||
0x005F0067,
|
||||
0x001A0067,
|
||||
0x006D0067,
|
||||
0x008A0067,
|
||||
0x00850067,
|
||||
0x00110067,
|
||||
0x000D0067,
|
||||
0x00810067
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x67),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x67),
|
||||
};
|
||||
|
||||
void fn_1_81E0(s32 arg0) {
|
||||
void fn_1_81E0(s32 arg0)
|
||||
{
|
||||
Point3d sp8;
|
||||
omObjData* temp_r3;
|
||||
omObjData *temp_r3;
|
||||
f32 temp_f31;
|
||||
s32 temp_r28;
|
||||
s32 temp_r5;
|
||||
s32 temp_r5_2;
|
||||
someBits3* temp_r31;
|
||||
someBits3 *temp_r31;
|
||||
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_8530);
|
||||
lbl_1_bss_144 = temp_r3;
|
||||
|
|
@ -273,7 +282,7 @@ void fn_1_81E0(s32 arg0) {
|
|||
temp_r31->unk_06[1] = BoardPlayerMotionCreate(arg0, lbl_1_data_470[temp_r28]);
|
||||
temp_r31->unk_06[2] = BoardPlayerMotionCreate(arg0, lbl_1_data_490[temp_r28]);
|
||||
temp_f31 = 0.3f;
|
||||
temp_r31->unk_06[0] = BoardModelCreate(0x770009, NULL, 0);
|
||||
temp_r31->unk_06[0] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x09), NULL, 0);
|
||||
BoardModelVisibilitySet(temp_r31->unk_06[0], 0);
|
||||
BoardPlayerPosGet(arg0, &sp8);
|
||||
BoardModelPosSetV(temp_r31->unk_06[0], &sp8);
|
||||
|
|
@ -283,10 +292,11 @@ void fn_1_81E0(s32 arg0) {
|
|||
BoardModelMotionSpeedSet(lbl_1_data_456, temp_r3->trans.x);
|
||||
BoardPlayerMotionStart(arg0, temp_r31->unk_06[1], 0x40000001);
|
||||
BoardPlayerMotionSpeedSet(arg0, temp_r3->trans.x);
|
||||
lbl_1_data_458 = BoardModelMotionCreate(lbl_1_bss_C[10], 0x770025);
|
||||
lbl_1_data_458 = BoardModelMotionCreate(lbl_1_bss_C[10], DATA_MAKE_NUM(DATADIR_W03, 0x25));
|
||||
}
|
||||
|
||||
void fn_1_8434(someBits3* arg0) {
|
||||
void fn_1_8434(someBits3 *arg0)
|
||||
{
|
||||
if (arg0->unk_06[1] != -1) {
|
||||
BoardPlayerMotionKill(arg0->unk00_bit5, arg0->unk_06[1]);
|
||||
}
|
||||
|
|
@ -298,9 +308,10 @@ void fn_1_8434(someBits3* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_84A8(s32 arg0) {
|
||||
someBits3* temp_r31;
|
||||
|
||||
void fn_1_84A8(s32 arg0)
|
||||
{
|
||||
someBits3 *temp_r31;
|
||||
|
||||
if (lbl_1_bss_144) {
|
||||
temp_r31 = OM_GET_WORK_PTR(lbl_1_bss_144, someBits3);
|
||||
temp_r31->unk00_bit1 = arg0;
|
||||
|
|
@ -310,12 +321,13 @@ void fn_1_84A8(s32 arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_8530(omObjData* arg0) {
|
||||
void fn_1_8530(omObjData *arg0)
|
||||
{
|
||||
s32 temp_r0;
|
||||
someBits3* temp_r31;
|
||||
someBits3 *temp_r31;
|
||||
|
||||
temp_r31 = OM_GET_WORK_PTR(arg0, someBits3);
|
||||
|
||||
|
||||
if ((temp_r31->unk00_bit0 != 0) || (BoardIsKill() != 0)) {
|
||||
if (temp_r31->unk_04 != -1) {
|
||||
MGSeqParamSet(temp_r31->unk_04, 2, -1);
|
||||
|
|
@ -330,7 +342,7 @@ void fn_1_8530(omObjData* arg0) {
|
|||
BoardModelKill(temp_r31->unk_06[0]);
|
||||
}
|
||||
lbl_1_bss_144 = NULL;
|
||||
|
||||
|
||||
omDelObjEx(HuPrcCurrentGet(), arg0);
|
||||
return;
|
||||
}
|
||||
|
|
@ -341,24 +353,25 @@ void fn_1_8530(omObjData* arg0) {
|
|||
}
|
||||
|
||||
switch (temp_r31->unk00_bit1) {
|
||||
case 0:
|
||||
fn_1_8698(arg0, temp_r31);
|
||||
return;
|
||||
case 1:
|
||||
fn_1_8C08(arg0, temp_r31);
|
||||
return;
|
||||
case 2:
|
||||
fn_1_8E44(arg0, temp_r31);
|
||||
return;
|
||||
case 3:
|
||||
fn_1_9044(arg0, temp_r31);
|
||||
/* fallthrough */
|
||||
case 4:
|
||||
break;
|
||||
case 0:
|
||||
fn_1_8698(arg0, temp_r31);
|
||||
return;
|
||||
case 1:
|
||||
fn_1_8C08(arg0, temp_r31);
|
||||
return;
|
||||
case 2:
|
||||
fn_1_8E44(arg0, temp_r31);
|
||||
return;
|
||||
case 3:
|
||||
fn_1_9044(arg0, temp_r31);
|
||||
/* fallthrough */
|
||||
case 4:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
||||
void fn_1_8698(omObjData *arg0, someBits3 *arg1)
|
||||
{
|
||||
s32 temp_r27;
|
||||
u32 var_r28;
|
||||
u32 var_r26;
|
||||
|
|
@ -367,10 +380,12 @@ void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
|||
|
||||
if (arg1->unk3 != 0) {
|
||||
arg1->unk3--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (arg1->unk2 != 0) {
|
||||
arg1->unk2--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
MGSeqParamSet(arg1->unk_04, 2, -1);
|
||||
arg1->unk_04 = -1;
|
||||
arg1->unk00_bit1 = 1;
|
||||
|
|
@ -384,7 +399,7 @@ void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
|||
lbl_1_bss_14E = 30;
|
||||
}
|
||||
|
||||
OSu16tof32((u16*)&lbl_1_bss_14E, &arg0->rot.x); //??
|
||||
OSu16tof32((u16 *)&lbl_1_bss_14E, &arg0->rot.x); //??
|
||||
BoardModelAttrReset(lbl_1_data_456, 0x40000002);
|
||||
BoardModelAttrReset(lbl_1_bss_C[7], 0x40000002);
|
||||
BoardModelAttrReset(lbl_1_bss_C[10], 0x40000002);
|
||||
|
|
@ -407,35 +422,35 @@ void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
|||
MGSeqParamSet(arg1->unk_04, 1, arg1->unk2);
|
||||
arg1->unk3 = 60;
|
||||
}
|
||||
|
||||
|
||||
|
||||
var_r26 = GWPlayer[arg1->unk00_bit5].port;
|
||||
var_r28 = 0;
|
||||
|
||||
|
||||
if ((GWPlayer[arg1->unk00_bit5].com) != 0) {
|
||||
temp_r27 = BoardRandMod(100);
|
||||
|
||||
switch (GWPlayer[arg1->unk00_bit5].diff) {
|
||||
case 0:
|
||||
if (temp_r27 < 12) {
|
||||
case 0:
|
||||
if (temp_r27 < 12) {
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (temp_r27 < 22) {
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (temp_r27 < 50) {
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (temp_r27 < 22) {
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (temp_r27 < 50) {
|
||||
var_r28 = 0x100;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
var_r28 = 0x100;
|
||||
break;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r28 = HuPadBtnDown[var_r26] & 0x100;
|
||||
}
|
||||
|
||||
|
|
@ -450,7 +465,8 @@ void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
|||
lbl_1_bss_14E += 1;
|
||||
BoardModelVisibilitySet(arg1->unk_06[0], 1);
|
||||
BoardModelRotYSet(arg1->unk_06[0], BoardPlayerRotYGet(arg1->unk00_bit5));
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->trans.x *= 0.98f;
|
||||
arg0->trans.y = 0.0f;
|
||||
if (arg0->trans.x <= 1.0f) {
|
||||
|
|
@ -477,15 +493,10 @@ void fn_1_8698(omObjData* arg0, someBits3* arg1) {
|
|||
}
|
||||
|
||||
s8 lbl_1_data_4B0 = -1;
|
||||
s32 lbl_1_data_4B4[] = {
|
||||
0x00000440,
|
||||
0x00000441,
|
||||
0x00000442,
|
||||
0x00000443,
|
||||
0x00000444
|
||||
};
|
||||
s32 lbl_1_data_4B4[] = { 0x00000440, 0x00000441, 0x00000442, 0x00000443, 0x00000444 };
|
||||
|
||||
void fn_1_8C08(omObjData* arg0, someBits3* arg1) {
|
||||
void fn_1_8C08(omObjData *arg0, someBits3 *arg1)
|
||||
{
|
||||
Point3d spC;
|
||||
f32 temp_f31;
|
||||
f32 temp_f30;
|
||||
|
|
@ -520,7 +531,8 @@ void fn_1_8C08(omObjData* arg0, someBits3* arg1) {
|
|||
BoardPlayerMotionTimeSet(arg1->unk00_bit5, 2.0f * temp_f30);
|
||||
}
|
||||
|
||||
void fn_1_8E44(omObjData* arg0, someBits3* arg1) {
|
||||
void fn_1_8E44(omObjData *arg0, someBits3 *arg1)
|
||||
{
|
||||
Point3d sp8;
|
||||
f32 temp_f1;
|
||||
f32 temp_f31;
|
||||
|
|
@ -558,7 +570,8 @@ void fn_1_8E44(omObjData* arg0, someBits3* arg1) {
|
|||
BoardModelPosSetV(lbl_1_data_456, &sp8);
|
||||
}
|
||||
|
||||
void fn_1_9044(omObjData* arg0, someBits3* arg1) {
|
||||
void fn_1_9044(omObjData *arg0, someBits3 *arg1)
|
||||
{
|
||||
Vec sp8;
|
||||
|
||||
BoardModelRotGet(lbl_1_data_456, &sp8);
|
||||
|
|
@ -580,9 +593,10 @@ void fn_1_9044(omObjData* arg0, someBits3* arg1) {
|
|||
BoardModelRotSetV(lbl_1_data_456, &sp8);
|
||||
}
|
||||
|
||||
s8 lbl_1_data_4C8[] = {1, 5, 10, 15, 20, 20};
|
||||
s8 lbl_1_data_4C8[] = { 1, 5, 10, 15, 20, 20 };
|
||||
|
||||
void fn_1_91B8(void) {
|
||||
void fn_1_91B8(void)
|
||||
{
|
||||
s8 temp_r3;
|
||||
|
||||
if (lbl_1_bss_14E == 0) {
|
||||
|
|
@ -593,7 +607,8 @@ void fn_1_91B8(void) {
|
|||
lbl_1_bss_14C = lbl_1_data_4C8[temp_r3];
|
||||
}
|
||||
|
||||
void fn_1_9230(s32 arg0) {
|
||||
void fn_1_9230(s32 arg0)
|
||||
{
|
||||
Point3d sp20;
|
||||
Point3d sp14;
|
||||
Point3d sp8;
|
||||
|
|
@ -620,20 +635,22 @@ void fn_1_9230(s32 arg0) {
|
|||
BoardCameraMotionWait();
|
||||
}
|
||||
|
||||
void fn_1_9384(void) {
|
||||
void fn_1_9384(void)
|
||||
{
|
||||
f32 widthHeight[2];
|
||||
f32 x, y;
|
||||
|
||||
HuWinMesMaxSizeGet(1, widthHeight, 0x160019);
|
||||
HuWinMesMaxSizeGet(1, widthHeight, MAKE_MESSID(0x16, 0x19));
|
||||
x = -10000.0f;
|
||||
y = 288.0f;
|
||||
lbl_1_data_454 = HuWinCreate(x, y, widthHeight[0], widthHeight[1], 0);
|
||||
HuWinBGTPLvlSet(lbl_1_data_454, 0.0f);
|
||||
HuWinMesSpeedSet(lbl_1_data_454, 0);
|
||||
HuWinMesSet(lbl_1_data_454, 0x160019U);
|
||||
HuWinMesSet(lbl_1_data_454, MAKE_MESSID(0x16, 0x19));
|
||||
}
|
||||
|
||||
void fn_1_9474(s32 arg0) {
|
||||
void fn_1_9474(s32 arg0)
|
||||
{
|
||||
sprintf(lbl_1_bss_150, "%d", lbl_1_bss_14C);
|
||||
BoardWinCreate(2, MAKE_MESSID(22, 23), 2);
|
||||
BoardWinInsertMesSet((u32)lbl_1_bss_150, 4);
|
||||
|
|
@ -664,14 +681,15 @@ void fn_1_9474(s32 arg0) {
|
|||
BoardModelMotionStart(lbl_1_bss_C[7], 0, 0x40000002);
|
||||
}
|
||||
|
||||
void fn_1_95B8(omObjData* arg0) {
|
||||
void fn_1_95B8(omObjData *arg0)
|
||||
{
|
||||
f32 temp_f31;
|
||||
s32 var_r25;
|
||||
s32 var_r26;
|
||||
s32 var_r27;
|
||||
s32 var_r28;
|
||||
unkTemp* var_r30;
|
||||
unkTemp2* temp_r29;
|
||||
unkTemp *var_r30;
|
||||
unkTemp2 *temp_r29;
|
||||
s32 i;
|
||||
s32 temp;
|
||||
|
||||
|
|
@ -679,14 +697,14 @@ void fn_1_95B8(omObjData* arg0) {
|
|||
|
||||
if ((temp_r29->unk00_bit0 != 0) || (BoardIsKill() != 0)) {
|
||||
fn_1_9A1C(temp_r29);
|
||||
HuMemDirectFree((void*)temp_r29->unk_0C);
|
||||
HuMemDirectFree((void *)temp_r29->unk_0C);
|
||||
lbl_1_bss_148 = 0;
|
||||
omDelObjEx(HuPrcCurrentGet(), arg0);
|
||||
return;
|
||||
}
|
||||
|
||||
var_r30 = temp_r29->unk_0C;
|
||||
|
||||
|
||||
for (var_r27 = i = 0; i < 20; i++, var_r30++) {
|
||||
if (var_r30->unk0 == 0) {
|
||||
var_r27++;
|
||||
|
|
@ -697,7 +715,7 @@ void fn_1_95B8(omObjData* arg0) {
|
|||
temp_r29->unk00_bit0 = 1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var_r25 = 0;
|
||||
for (i = 0; i < 20; i++) {
|
||||
var_r30 = &temp_r29->unk_0C[i];
|
||||
|
|
@ -725,23 +743,23 @@ void fn_1_95B8(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
void fn_1_97F8(s32 arg0) {
|
||||
void fn_1_97F8(s32 arg0)
|
||||
{
|
||||
Point3d sp8;
|
||||
f32 temp_f2;
|
||||
f32 var_f31;
|
||||
f64 temp_f1;
|
||||
omObjData* temp_r3;
|
||||
omObjData *temp_r3;
|
||||
s32 i;
|
||||
unkTemp2* temp_r30;
|
||||
unkTemp* temp_r31;
|
||||
unkTemp2 *temp_r30;
|
||||
unkTemp *temp_r31;
|
||||
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_95B8);
|
||||
lbl_1_bss_148 = temp_r3;
|
||||
temp_r30 = OM_GET_WORK_PTR(temp_r3, unkTemp2);
|
||||
temp_r30->unk00_bit0 = 0;
|
||||
temp_r30->unk4 = arg0;
|
||||
temp_r30->unk_0C = HuMemDirectMallocNum(0, 0x190, 0x10000000);
|
||||
temp_r30->unk_0C = HuMemDirectMallocNum(0, 0x190, MEMORY_DEFAULT_NUM);
|
||||
BoardPlayerPosGet(arg0, &sp8);
|
||||
temp_r30->unk8 = (80.0f + sp8.y);
|
||||
memset(temp_r30->unk_0C, 0, 0x190);
|
||||
|
|
@ -749,7 +767,8 @@ void fn_1_97F8(s32 arg0) {
|
|||
for (i = 0; i < lbl_1_bss_14C; i++) {
|
||||
if (i == 0) {
|
||||
var_f31 = 0.0f;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = BoardRandFloat();
|
||||
}
|
||||
temp_r31 = &temp_r30->unk_0C[i];
|
||||
|
|
@ -759,13 +778,14 @@ void fn_1_97F8(s32 arg0) {
|
|||
temp_r31->unk8.y = 600.0f + sp8.y + (500.0f * BoardRandFloat());
|
||||
temp_r31->unk1 = 0;
|
||||
temp_r31->unk4 = BoardRandFloat() * 360.0f;
|
||||
temp_r31->unk_02 = BoardModelCreate(0x7000A, NULL, 1);
|
||||
temp_r31->unk_02 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_9A1C(unkTemp2* arg0) {
|
||||
void fn_1_9A1C(unkTemp2 *arg0)
|
||||
{
|
||||
s32 i;
|
||||
unkTemp* temp;
|
||||
unkTemp *temp;
|
||||
|
||||
for (i = 0; i < 20; i++) {
|
||||
temp = &arg0->unk_0C[i];
|
||||
|
|
|
|||
|
|
@ -1,25 +1,25 @@
|
|||
#include "dolphin.h"
|
||||
#include "REL/executor.h"
|
||||
#include "game/process.h"
|
||||
#include "game/data.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "REL/w03Dll.h"
|
||||
#include "dolphin.h"
|
||||
#include "dolphin/os/OSFastCast.h"
|
||||
#include "ext_math.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/space.h"
|
||||
#include "game/data.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/object.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/sprite.h"
|
||||
#include "game/board/player.h"
|
||||
#include "math.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "dolphin/os/OSFastCast.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/hsfmotion.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/frand.h"
|
||||
#include "ext_math.h"
|
||||
#include "game/process.h"
|
||||
#include "game/sprite.h"
|
||||
#include "math.h"
|
||||
|
||||
typedef struct someBits {
|
||||
/* 0x00 */ struct {
|
||||
|
|
@ -58,11 +58,11 @@ typedef struct w03UnkMG {
|
|||
/* 0x16 */ s16 unk_16;
|
||||
} w03UnkMG;
|
||||
|
||||
//external symbols
|
||||
// external symbols
|
||||
|
||||
extern u16 HuPadBtnDown[4];
|
||||
|
||||
//function signatures
|
||||
// function signatures
|
||||
s32 BoardVecDAngleCalcRange(float *value, float min, float range);
|
||||
|
||||
void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix);
|
||||
|
|
@ -70,23 +70,23 @@ void fn_1_BDAC(void);
|
|||
void fn_1_BC7C(s16 arg0);
|
||||
void fn_1_BBF8(void);
|
||||
s32 fn_1_BBC4(void);
|
||||
void fn_1_BB74(s8* arg0);
|
||||
void fn_1_BB74(s8 *arg0);
|
||||
s32 fn_1_BB48(void);
|
||||
void fn_1_B8E8(s32 arg0);
|
||||
void fn_1_B748(omObjData* arg0, someBits2* arg1);
|
||||
void fn_1_B688(omObjData* arg0, someBits2* arg1);
|
||||
void fn_1_B4AC(omObjData* arg0, someBits2* arg1);
|
||||
void fn_1_B350(omObjData* arg0);
|
||||
void fn_1_B748(omObjData *arg0, someBits2 *arg1);
|
||||
void fn_1_B688(omObjData *arg0, someBits2 *arg1);
|
||||
void fn_1_B4AC(omObjData *arg0, someBits2 *arg1);
|
||||
void fn_1_B350(omObjData *arg0);
|
||||
void fn_1_B0A4(s32 arg0);
|
||||
u32 fn_1_AF24(s32 arg0);
|
||||
s32 fn_1_AE4C(s32 arg0, s8* arg1);
|
||||
s32 fn_1_AE4C(s32 arg0, s8 *arg1);
|
||||
s32 fn_1_AE20(void);
|
||||
void fn_1_ACD8(s32 arg0);
|
||||
void fn_1_ABD0(omObjData* arg0, someBits* arg1);
|
||||
void fn_1_AB18(omObjData* arg0, someBits* arg1);
|
||||
void fn_1_ABD0(omObjData *arg0, someBits *arg1);
|
||||
void fn_1_AB18(omObjData *arg0, someBits *arg1);
|
||||
void fn_1_A8AC(s32 arg0);
|
||||
void fn_1_A7A0(s32 arg0);
|
||||
void fn_1_A994(omObjData* arg0);
|
||||
void fn_1_A994(omObjData *arg0);
|
||||
void fn_1_A5E0(s32 arg0);
|
||||
void fn_1_A6B0(void);
|
||||
void fn_1_A44C(s32 arg0);
|
||||
|
|
@ -96,17 +96,15 @@ s32 fn_1_9CF4(s32 arg0);
|
|||
void fn_1_9F78(void);
|
||||
void fn_1_9FE4(void);
|
||||
|
||||
//data
|
||||
// data
|
||||
s16 lbl_1_data_4D8 = -1;
|
||||
s16 lbl_1_data_4DA = -1;
|
||||
s16 lbl_1_data_4DC = -1;
|
||||
s32 lbl_1_data_4E0 = -1;
|
||||
s16 lbl_1_data_4E4 = -1;
|
||||
s8 lbl_1_data_4E6[] = {1, 1, 3, 3, 2, 2, 2, 1, 2, 3, 0, 4, 5, 0};
|
||||
s8 lbl_1_data_4E6[] = { 1, 1, 3, 3, 2, 2, 2, 1, 2, 3, 0, 4, 5, 0 };
|
||||
|
||||
char* lbl_1_data_508[] = {
|
||||
"item", "item1", "item2"
|
||||
};
|
||||
char *lbl_1_data_508[] = { "item", "item1", "item2" };
|
||||
|
||||
s32 lbl_1_data_514[] = {
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x6D),
|
||||
|
|
@ -125,23 +123,23 @@ s32 lbl_1_data_514[] = {
|
|||
DATA_MAKE_NUM(DATADIR_BOARD, 0x7B),
|
||||
};
|
||||
|
||||
//BSS
|
||||
// BSS
|
||||
s8 lbl_1_bss_194[3];
|
||||
AnimData* lbl_1_bss_190;
|
||||
AnimData *lbl_1_bss_190;
|
||||
s8 lbl_1_bss_18C;
|
||||
omObjData* lbl_1_bss_188;
|
||||
omObjData* lbl_1_bss_184;
|
||||
Process* lbl_1_bss_180;
|
||||
omObjData *lbl_1_bss_188;
|
||||
omObjData *lbl_1_bss_184;
|
||||
Process *lbl_1_bss_180;
|
||||
|
||||
void fn_1_9A7C(void) {
|
||||
void fn_1_9A7C(void)
|
||||
{
|
||||
fn_1_BBF8();
|
||||
}
|
||||
|
||||
void fn_1_9A9C(void) {
|
||||
void fn_1_9A9C(void) { }
|
||||
|
||||
}
|
||||
|
||||
void fn_1_9AA0(void) {
|
||||
void fn_1_9AA0(void)
|
||||
{
|
||||
BoardRollDispSet(0);
|
||||
lbl_1_bss_180 = HuPrcChildCreate(fn_1_9C8C, 0x2003, 0x2000, 0, boardMainProc);
|
||||
HuPrcDestructorSet2(lbl_1_bss_180, fn_1_9B30);
|
||||
|
|
@ -153,7 +151,8 @@ void fn_1_9AA0(void) {
|
|||
BoardRollDispSet(1);
|
||||
}
|
||||
|
||||
void fn_1_9B30(void) {
|
||||
void fn_1_9B30(void)
|
||||
{
|
||||
fn_1_BDAC();
|
||||
|
||||
if (lbl_1_bss_188) {
|
||||
|
|
@ -173,7 +172,7 @@ void fn_1_9B30(void) {
|
|||
BoardModelMotionKill(lbl_1_bss_C[11], lbl_1_data_4DC);
|
||||
lbl_1_data_4DC = -1;
|
||||
}
|
||||
|
||||
|
||||
if (lbl_1_data_4DA != -1) {
|
||||
BoardModelMotionKill(lbl_1_bss_C[11], lbl_1_data_4DA);
|
||||
lbl_1_data_4DA = -1;
|
||||
|
|
@ -187,7 +186,8 @@ void fn_1_9B30(void) {
|
|||
lbl_1_bss_180 = 0;
|
||||
}
|
||||
|
||||
void fn_1_9C8C(void) {
|
||||
void fn_1_9C8C(void)
|
||||
{
|
||||
s32 temp_r31;
|
||||
|
||||
temp_r31 = GWSystem.player_curr;
|
||||
|
|
@ -201,7 +201,8 @@ void fn_1_9C8C(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
s32 fn_1_9CF4(s32 arg0) {
|
||||
s32 fn_1_9CF4(s32 arg0)
|
||||
{
|
||||
Vec sp38;
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
|
|
@ -248,7 +249,7 @@ s32 fn_1_9CF4(s32 arg0) {
|
|||
BoardSpacePosGet(0, temp_r29, &sp38);
|
||||
PSVECSubtract(&sp38, &sp2C, &sp20);
|
||||
PSVECNormalize(&sp20, &sp20);
|
||||
BoardPlayerRotYSet(arg0, (f32) (180.0 * (atan2(-sp20.x, -sp20.z) / M_PI)));
|
||||
BoardPlayerRotYSet(arg0, (f32)(180.0 * (atan2(-sp20.x, -sp20.z) / M_PI)));
|
||||
BoardPlayerPosLerpStart(arg0, &sp2C, &sp38, 0x14);
|
||||
|
||||
while (GWPlayer[arg0].moving != 0) {
|
||||
|
|
@ -264,12 +265,14 @@ s32 fn_1_9CF4(s32 arg0) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void fn_1_9F78(void) {
|
||||
lbl_1_data_4DA = BoardModelMotionCreate(lbl_1_bss_C[11], 0x770023);
|
||||
lbl_1_data_4DC = BoardModelMotionCreate(lbl_1_bss_C[11], 0x770024);
|
||||
void fn_1_9F78(void)
|
||||
{
|
||||
lbl_1_data_4DA = BoardModelMotionCreate(lbl_1_bss_C[11], DATA_MAKE_NUM(DATADIR_W03, 0x23));
|
||||
lbl_1_data_4DC = BoardModelMotionCreate(lbl_1_bss_C[11], DATA_MAKE_NUM(DATADIR_W03, 0x24));
|
||||
}
|
||||
|
||||
void fn_1_9FE4(void) {
|
||||
void fn_1_9FE4(void)
|
||||
{
|
||||
Vec sp30;
|
||||
Vec sp24;
|
||||
Vec sp18;
|
||||
|
|
@ -340,7 +343,8 @@ void fn_1_9FE4(void) {
|
|||
BoardModelMotionShiftSet(lbl_1_bss_C[11], 1, 0.0f, 10.0, 0x40000001);
|
||||
}
|
||||
|
||||
void fn_1_A44C(s32 arg0) {
|
||||
void fn_1_A44C(s32 arg0)
|
||||
{
|
||||
s16 temp_r30;
|
||||
s32 temp_r29;
|
||||
s32 temp_r28;
|
||||
|
|
@ -391,7 +395,8 @@ void fn_1_A44C(s32 arg0) {
|
|||
BoardWinKill();
|
||||
}
|
||||
|
||||
void fn_1_A5E0(s32 arg0) {
|
||||
void fn_1_A5E0(s32 arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
s16 spaceCur;
|
||||
|
|
@ -409,26 +414,28 @@ void fn_1_A5E0(s32 arg0) {
|
|||
BoardCameraMotionWait();
|
||||
}
|
||||
|
||||
void fn_1_A6B0(void) {
|
||||
void fn_1_A6B0(void)
|
||||
{
|
||||
f32 sp8[2];
|
||||
f32 val1, val2;
|
||||
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x16001F);
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x16, 0x1F));
|
||||
val1 = -10000.0f;
|
||||
val2 = 392.0f;
|
||||
lbl_1_data_4D8 = HuWinCreate(val1, val2, sp8[0], sp8[1], 0);
|
||||
HuWinBGTPLvlSet(lbl_1_data_4D8, 0.0f);
|
||||
HuWinMesSpeedSet(lbl_1_data_4D8, 0);
|
||||
HuWinMesSet(lbl_1_data_4D8, 0x16001F);
|
||||
HuWinMesSet(lbl_1_data_4D8, MAKE_MESSID(0x16, 0x1F));
|
||||
}
|
||||
|
||||
void fn_1_A7A0(s32 arg0) {
|
||||
someBits* temp_r31;
|
||||
omObjData* temp_r3;
|
||||
void fn_1_A7A0(s32 arg0)
|
||||
{
|
||||
someBits *temp_r31;
|
||||
omObjData *temp_r3;
|
||||
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void*)fn_1_A994);
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, (void *)fn_1_A994);
|
||||
lbl_1_bss_188 = temp_r3;
|
||||
temp_r31 = (someBits*)&temp_r3->work[0];
|
||||
temp_r31 = (someBits *)&temp_r3->work[0];
|
||||
temp_r31->unk00_bit0 = 0;
|
||||
temp_r31->unk00_bit6 = 0;
|
||||
temp_r31->unk00_bit4 = arg0;
|
||||
|
|
@ -440,7 +447,8 @@ void fn_1_A7A0(s32 arg0) {
|
|||
lbl_1_bss_18C = fn_1_AE4C(arg0, lbl_1_bss_194);
|
||||
}
|
||||
|
||||
void fn_1_A8AC(s32 arg0) {
|
||||
void fn_1_A8AC(s32 arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
f32 playerYRot;
|
||||
|
|
@ -462,18 +470,19 @@ void fn_1_A8AC(s32 arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_A994(omObjData* arg0) {
|
||||
void fn_1_A994(omObjData *arg0)
|
||||
{
|
||||
s32 temp_r0;
|
||||
someBits* temp_r31;
|
||||
someBits *temp_r31;
|
||||
|
||||
temp_r31 = (someBits*)&lbl_1_bss_188->work[0];
|
||||
if ((temp_r31->unk00_bit0 != 0)|| (BoardIsKill() != 0)) {
|
||||
temp_r31 = (someBits *)&lbl_1_bss_188->work[0];
|
||||
if ((temp_r31->unk00_bit0 != 0) || (BoardIsKill() != 0)) {
|
||||
if (temp_r31->unk4 != -1) {
|
||||
MGSeqParamSet(temp_r31->unk4, 2, -1U);
|
||||
temp_r31->unk4 = -1;
|
||||
}
|
||||
lbl_1_bss_188 = NULL;
|
||||
|
||||
|
||||
omDelObjEx(HuPrcCurrentGet(), arg0);
|
||||
return;
|
||||
}
|
||||
|
|
@ -481,10 +490,12 @@ void fn_1_A994(omObjData* arg0) {
|
|||
if (temp_r31->unk00_bit6 == 0) {
|
||||
if (temp_r31->unk2 != 0) {
|
||||
temp_r31->unk2--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
if (temp_r31->unk1 != 0) {
|
||||
temp_r31->unk1--;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_ACD8(2);
|
||||
}
|
||||
MGSeqParamSet(temp_r31->unk4, 1, temp_r31->unk1);
|
||||
|
|
@ -493,27 +504,29 @@ void fn_1_A994(omObjData* arg0) {
|
|||
}
|
||||
|
||||
switch (temp_r31->unk00_bit1) {
|
||||
case 1:
|
||||
fn_1_AB18(arg0, temp_r31);
|
||||
return;
|
||||
case 2:
|
||||
fn_1_ABD0(arg0, temp_r31);
|
||||
return;
|
||||
case 3:
|
||||
if (BoardPlayerMotionEndCheck(temp_r31->unk00_bit4) != 0) {
|
||||
temp_r31->unk00_bit0 = 1;
|
||||
}
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
fn_1_AB18(arg0, temp_r31);
|
||||
return;
|
||||
case 2:
|
||||
fn_1_ABD0(arg0, temp_r31);
|
||||
return;
|
||||
case 3:
|
||||
if (BoardPlayerMotionEndCheck(temp_r31->unk00_bit4) != 0) {
|
||||
temp_r31->unk00_bit0 = 1;
|
||||
}
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_AB18(omObjData* arg0, someBits* arg1) {
|
||||
void fn_1_AB18(omObjData *arg0, someBits *arg1)
|
||||
{
|
||||
u32 var_r31 = 0;
|
||||
|
||||
if (GWPlayer[arg1->unk00_bit4].com != 0) {
|
||||
var_r31 = fn_1_AF24(arg1->unk00_bit4);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = HuPadBtnDown[GWPlayer[arg1->unk00_bit4].port];
|
||||
}
|
||||
if (var_r31 == 0x100) {
|
||||
|
|
@ -521,14 +534,15 @@ void fn_1_AB18(omObjData* arg0, someBits* arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
//TODO properly use inlines
|
||||
void fn_1_ABD0(omObjData* arg0, someBits* arg1) {
|
||||
// TODO properly use inlines
|
||||
void fn_1_ABD0(omObjData *arg0, someBits *arg1)
|
||||
{
|
||||
s16 boardModelID;
|
||||
PlayerState* playerStateCopy;
|
||||
PlayerState *playerStateCopy;
|
||||
s32 bit;
|
||||
PlayerState* playerState;
|
||||
PlayerState *playerState;
|
||||
s16 temp, temp2;
|
||||
|
||||
|
||||
bit = arg1->unk00_bit4;
|
||||
playerState = &GWPlayer[bit];
|
||||
playerStateCopy = playerState;
|
||||
|
|
@ -551,40 +565,43 @@ void fn_1_ABD0(omObjData* arg0, someBits* arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_ACD8(s32 arg0) {
|
||||
someBits* temp_r31;
|
||||
void fn_1_ACD8(s32 arg0)
|
||||
{
|
||||
someBits *temp_r31;
|
||||
|
||||
temp_r31 = (someBits*)&lbl_1_bss_188->work[0];
|
||||
temp_r31 = (someBits *)&lbl_1_bss_188->work[0];
|
||||
temp_r31->unk00_bit1 = arg0;
|
||||
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
BoardPlayerIdleSet(temp_r31->unk00_bit4);
|
||||
return;
|
||||
case 2:
|
||||
temp_r31->unk00_bit6 = 1;
|
||||
if (lbl_1_data_4D8 != -1) {
|
||||
HuWinKill(lbl_1_data_4D8);
|
||||
lbl_1_data_4D8 = -1;
|
||||
}
|
||||
if (temp_r31->unk4 != -1) {
|
||||
MGSeqParamSet(temp_r31->unk4, 2, -1U);
|
||||
temp_r31->unk4 = -1;
|
||||
}
|
||||
BoardPlayerMotionShiftSet(temp_r31->unk00_bit4, 0xB, 0.0f, 10.0f, 0);
|
||||
return;
|
||||
case 3:
|
||||
BoardPlayerMotionShiftSet(temp_r31->unk00_bit4, 7, 0.0f, 10.0f, 0);
|
||||
break;
|
||||
case 0:
|
||||
BoardPlayerIdleSet(temp_r31->unk00_bit4);
|
||||
return;
|
||||
case 2:
|
||||
temp_r31->unk00_bit6 = 1;
|
||||
if (lbl_1_data_4D8 != -1) {
|
||||
HuWinKill(lbl_1_data_4D8);
|
||||
lbl_1_data_4D8 = -1;
|
||||
}
|
||||
if (temp_r31->unk4 != -1) {
|
||||
MGSeqParamSet(temp_r31->unk4, 2, -1U);
|
||||
temp_r31->unk4 = -1;
|
||||
}
|
||||
BoardPlayerMotionShiftSet(temp_r31->unk00_bit4, 0xB, 0.0f, 10.0f, 0);
|
||||
return;
|
||||
case 3:
|
||||
BoardPlayerMotionShiftSet(temp_r31->unk00_bit4, 7, 0.0f, 10.0f, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_AE20(void) {
|
||||
someBits* temp_r31 = (someBits*)&lbl_1_bss_188->work[0];
|
||||
s32 fn_1_AE20(void)
|
||||
{
|
||||
someBits *temp_r31 = (someBits *)&lbl_1_bss_188->work[0];
|
||||
return temp_r31->unk00_bit1;
|
||||
}
|
||||
|
||||
s32 fn_1_AE4C(s32 arg0, s8* arg1) {
|
||||
s32 fn_1_AE4C(s32 arg0, s8 *arg1)
|
||||
{
|
||||
s32 temp_r30;
|
||||
s32 temp_r29;
|
||||
s32 temp_r28;
|
||||
|
|
@ -597,23 +614,29 @@ s32 fn_1_AE4C(s32 arg0, s8* arg1) {
|
|||
if (temp_r29 > temp_r28) {
|
||||
if (temp_r29 > temp_r30) {
|
||||
var_r31 = 0;
|
||||
} else if (temp_r30 > temp_r28) {
|
||||
}
|
||||
else if (temp_r30 > temp_r28) {
|
||||
var_r31 = 2;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = 1;
|
||||
}
|
||||
} else if (temp_r28 > temp_r30) {
|
||||
}
|
||||
else if (temp_r28 > temp_r30) {
|
||||
var_r31 = 1;
|
||||
} else if (temp_r30 > temp_r29) {
|
||||
}
|
||||
else if (temp_r30 > temp_r29) {
|
||||
var_r31 = 2;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = 0;
|
||||
}
|
||||
|
||||
return var_r31;
|
||||
}
|
||||
|
||||
u32 fn_1_AF24(s32 arg0) {
|
||||
u32 fn_1_AF24(s32 arg0)
|
||||
{
|
||||
s32 spC;
|
||||
s32 sp8;
|
||||
s16 temp_r31;
|
||||
|
|
@ -623,18 +646,18 @@ u32 fn_1_AF24(s32 arg0) {
|
|||
spC = 0;
|
||||
|
||||
switch (GWPlayer[arg0].diff) {
|
||||
case 3:
|
||||
var_r30 = 0;
|
||||
break;
|
||||
case 2:
|
||||
var_r30 = 5;
|
||||
break;
|
||||
case 1:
|
||||
var_r30 = 15;
|
||||
break;
|
||||
case 0:
|
||||
var_r30 = 40;
|
||||
break;
|
||||
case 3:
|
||||
var_r30 = 0;
|
||||
break;
|
||||
case 2:
|
||||
var_r30 = 5;
|
||||
break;
|
||||
case 1:
|
||||
var_r30 = 15;
|
||||
break;
|
||||
case 0:
|
||||
var_r30 = 40;
|
||||
break;
|
||||
}
|
||||
if ((var_r30 != 0) && (BoardRandMod(100) < var_r30)) {
|
||||
return 0x100U;
|
||||
|
|
@ -643,38 +666,39 @@ u32 fn_1_AF24(s32 arg0) {
|
|||
temp_r31 = BoardModelMotionTimeGet(lbl_1_bss_C[9]);
|
||||
|
||||
switch (lbl_1_bss_18C) {
|
||||
case 0:
|
||||
if ((temp_r31 < 33) || (temp_r31 > 35)) {
|
||||
case 0:
|
||||
if ((temp_r31 < 33) || (temp_r31 > 35)) {
|
||||
break;
|
||||
}
|
||||
return 0x100U;
|
||||
case 1:
|
||||
if (((temp_r31 >= 40) && (temp_r31 <= 42)) || ((temp_r31 >= 20) && (temp_r31 <= 22))) {
|
||||
return 0x100U;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (temp_r31 >= 50) {
|
||||
return 0x100U;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return 0x100U;
|
||||
case 1:
|
||||
if (((temp_r31 >= 40) && (temp_r31 <= 42)) || ((temp_r31 >= 20) && (temp_r31 <= 22))) {
|
||||
return 0x100U;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (temp_r31 >= 50) {
|
||||
return 0x100U;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void fn_1_B0A4(s32 arg0) {
|
||||
void fn_1_B0A4(s32 arg0)
|
||||
{
|
||||
Mtx sp18;
|
||||
s32 spC[3];
|
||||
s32 j;
|
||||
s32 i;
|
||||
s32 var_r31_2;
|
||||
s32 temp_r29;
|
||||
someBits2* temp_r30;
|
||||
omObjData* temp_r3;
|
||||
someBits2 *temp_r30;
|
||||
omObjData *temp_r3;
|
||||
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, (void*)fn_1_B350);
|
||||
lbl_1_bss_184 = (void*)temp_r3;
|
||||
temp_r30 = (someBits2*)&temp_r3->work[0];
|
||||
temp_r3 = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, (void *)fn_1_B350);
|
||||
lbl_1_bss_184 = (void *)temp_r3;
|
||||
temp_r30 = (someBits2 *)&temp_r3->work[0];
|
||||
|
||||
temp_r30->unk00_bit0 = 0;
|
||||
temp_r30->unk00_bit1 = 0;
|
||||
|
|
@ -691,14 +715,15 @@ void fn_1_B0A4(s32 arg0) {
|
|||
if (spC[i] == -1) {
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
continue;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
|
||||
|
||||
fn_1_BBF8();
|
||||
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(spC); i++) {
|
||||
temp_r29 = spC[i];
|
||||
temp_r30->unk3[i] = temp_r29;
|
||||
|
|
@ -722,11 +747,12 @@ void fn_1_B0A4(s32 arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_B350(omObjData* arg0) {
|
||||
void fn_1_B350(omObjData *arg0)
|
||||
{
|
||||
s32 i;
|
||||
someBits2* temp_r31;
|
||||
someBits2 *temp_r31;
|
||||
|
||||
temp_r31 = (someBits2*)&arg0->work[0];
|
||||
temp_r31 = (someBits2 *)&arg0->work[0];
|
||||
|
||||
if ((temp_r31->unk00_bit0 != 0) || (BoardIsKill() != 0)) {
|
||||
BoardModelHookReset(lbl_1_bss_C[9]);
|
||||
|
|
@ -740,27 +766,28 @@ void fn_1_B350(omObjData* arg0) {
|
|||
}
|
||||
|
||||
switch (temp_r31->unk00_bit1) {
|
||||
case 1:
|
||||
if (!(BoardModelMotionTimeGet(lbl_1_bss_C[9]) < 20.0f)) {
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_C[9], 0x14, 0x3A);
|
||||
fn_1_B8E8(0);
|
||||
case 1:
|
||||
if (!(BoardModelMotionTimeGet(lbl_1_bss_C[9]) < 20.0f)) {
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_C[9], 0x14, 0x3A);
|
||||
fn_1_B8E8(0);
|
||||
return;
|
||||
}
|
||||
case 0:
|
||||
break;
|
||||
case 2:
|
||||
fn_1_B4AC(arg0, temp_r31);
|
||||
return;
|
||||
}
|
||||
case 0:
|
||||
break;
|
||||
case 2:
|
||||
fn_1_B4AC(arg0, temp_r31);
|
||||
return;
|
||||
case 3:
|
||||
fn_1_B688(arg0, temp_r31);
|
||||
return;
|
||||
case 4:
|
||||
fn_1_B748(arg0, temp_r31);
|
||||
break;
|
||||
case 3:
|
||||
fn_1_B688(arg0, temp_r31);
|
||||
return;
|
||||
case 4:
|
||||
fn_1_B748(arg0, temp_r31);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_B4AC(omObjData* arg0, someBits2* arg1) {
|
||||
void fn_1_B4AC(omObjData *arg0, someBits2 *arg1)
|
||||
{
|
||||
Point3d sp20;
|
||||
Point3d sp14;
|
||||
Point3d sp8;
|
||||
|
|
@ -778,7 +805,7 @@ void fn_1_B4AC(omObjData* arg0, someBits2* arg1) {
|
|||
sp8 = sp20;
|
||||
arg1->unk2 = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
HuAudFXPlay(0x30C);
|
||||
|
|
@ -792,7 +819,8 @@ void fn_1_B4AC(omObjData* arg0, someBits2* arg1) {
|
|||
fn_1_BC7C(arg1->unk_06[arg1->unk2]);
|
||||
}
|
||||
|
||||
void fn_1_B688(omObjData* arg0, someBits2* arg1) {
|
||||
void fn_1_B688(omObjData *arg0, someBits2 *arg1)
|
||||
{
|
||||
Point3d sp8;
|
||||
|
||||
if (arg1->unk1-- != 0) {
|
||||
|
|
@ -806,8 +834,9 @@ void fn_1_B688(omObjData* arg0, someBits2* arg1) {
|
|||
|
||||
fn_1_B8E8(0);
|
||||
}
|
||||
|
||||
void fn_1_B748(omObjData* arg0, someBits2* arg1) {
|
||||
|
||||
void fn_1_B748(omObjData *arg0, someBits2 *arg1)
|
||||
{
|
||||
Vec sp14;
|
||||
Point3d sp8;
|
||||
f32 temp_f0;
|
||||
|
|
@ -820,7 +849,7 @@ void fn_1_B748(omObjData* arg0, someBits2* arg1) {
|
|||
}
|
||||
|
||||
if (arg1->unk1 < 90) {
|
||||
OSu8tof32((u8*)&arg1->unk1, &temp_f0);
|
||||
OSu8tof32((u8 *)&arg1->unk1, &temp_f0);
|
||||
BoardModelPosGet(temp_r29, &sp8);
|
||||
sp8.y += arg0->trans.y;
|
||||
BoardModelPosSetV(temp_r29, &sp8);
|
||||
|
|
@ -840,76 +869,81 @@ void fn_1_B748(omObjData* arg0, someBits2* arg1) {
|
|||
fn_1_B8E8(0);
|
||||
}
|
||||
|
||||
void fn_1_B8E8(s32 arg0) {
|
||||
void fn_1_B8E8(s32 arg0)
|
||||
{
|
||||
Point3d sp14;
|
||||
Point3d sp8;
|
||||
f32 temp_f31;
|
||||
someBits2* temp_r31;
|
||||
someBits2 *temp_r31;
|
||||
f32 temp;
|
||||
|
||||
temp_r31 = (someBits2*)&lbl_1_bss_184->work[0];
|
||||
temp_r31 = (someBits2 *)&lbl_1_bss_184->work[0];
|
||||
temp_r31->unk00_bit1 = arg0;
|
||||
|
||||
switch (arg0) {
|
||||
case 1:
|
||||
temp_f31 = 0.31666666f;
|
||||
BoardModelMotionStart(lbl_1_bss_C[9], 0, 0x40000001);
|
||||
BoardModelMotionSpeedSet(lbl_1_bss_C[9], temp_f31);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_C[9], 8.0f);
|
||||
return;
|
||||
case 2:
|
||||
temp_r31->unk00_bit6 = 1;
|
||||
return;
|
||||
case 3:
|
||||
lbl_1_data_4E0 = HuAudFXPlay(0x35F);
|
||||
BoardModelPosGet(temp_r31->unk_06[temp_r31->unk2], &sp8);
|
||||
BoardPlayerPosGet(temp_r31->unk00_bit4, &sp14);
|
||||
temp = 50.0f + sp8.y;
|
||||
lbl_1_bss_184->trans.x = (sp14.x - sp8.x) / 10.0f;
|
||||
lbl_1_bss_184->trans.z = (sp14.z - sp8.z) / 10.0f;
|
||||
lbl_1_bss_184->trans.y = (temp - sp8.y) / 10.0f;
|
||||
temp_r31->unk1 = 10;
|
||||
return;
|
||||
case 4:
|
||||
BoardPlayerPosGet(temp_r31->unk00_bit4, &sp14);
|
||||
sp14.y += 30.000002f;
|
||||
BoardModelPosGet(temp_r31->unk_06[temp_r31->unk2], &sp8);
|
||||
lbl_1_bss_184->trans.y = (sp14.y - sp8.y) / 22.0f;
|
||||
temp_r31->unk1 = 0;
|
||||
case 1:
|
||||
temp_f31 = 0.31666666f;
|
||||
BoardModelMotionStart(lbl_1_bss_C[9], 0, 0x40000001);
|
||||
BoardModelMotionSpeedSet(lbl_1_bss_C[9], temp_f31);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_C[9], 8.0f);
|
||||
return;
|
||||
case 2:
|
||||
temp_r31->unk00_bit6 = 1;
|
||||
return;
|
||||
case 3:
|
||||
lbl_1_data_4E0 = HuAudFXPlay(0x35F);
|
||||
BoardModelPosGet(temp_r31->unk_06[temp_r31->unk2], &sp8);
|
||||
BoardPlayerPosGet(temp_r31->unk00_bit4, &sp14);
|
||||
temp = 50.0f + sp8.y;
|
||||
lbl_1_bss_184->trans.x = (sp14.x - sp8.x) / 10.0f;
|
||||
lbl_1_bss_184->trans.z = (sp14.z - sp8.z) / 10.0f;
|
||||
lbl_1_bss_184->trans.y = (temp - sp8.y) / 10.0f;
|
||||
temp_r31->unk1 = 10;
|
||||
return;
|
||||
case 4:
|
||||
BoardPlayerPosGet(temp_r31->unk00_bit4, &sp14);
|
||||
sp14.y += 30.000002f;
|
||||
BoardModelPosGet(temp_r31->unk_06[temp_r31->unk2], &sp8);
|
||||
lbl_1_bss_184->trans.y = (sp14.y - sp8.y) / 22.0f;
|
||||
temp_r31->unk1 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_BB48(void) {
|
||||
someBits2* temp = (someBits2*)&lbl_1_bss_184->work[0];
|
||||
s32 fn_1_BB48(void)
|
||||
{
|
||||
someBits2 *temp = (someBits2 *)&lbl_1_bss_184->work[0];
|
||||
return temp->unk00_bit1;
|
||||
}
|
||||
|
||||
void fn_1_BB74(s8* arg0) {
|
||||
someBits2* bits = OM_GET_WORK_PTR(lbl_1_bss_184, someBits2);
|
||||
void fn_1_BB74(s8 *arg0)
|
||||
{
|
||||
someBits2 *bits = OM_GET_WORK_PTR(lbl_1_bss_184, someBits2);
|
||||
s32 i;
|
||||
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(bits->unk3); i++) {
|
||||
arg0[i] = bits->unk3[i];
|
||||
}
|
||||
}
|
||||
|
||||
s32 fn_1_BBC4(void) {
|
||||
someBits2* bits = OM_GET_WORK_PTR(lbl_1_bss_184, someBits2);
|
||||
s32 fn_1_BBC4(void)
|
||||
{
|
||||
someBits2 *bits = OM_GET_WORK_PTR(lbl_1_bss_184, someBits2);
|
||||
return bits->unk3[bits->unk2];
|
||||
}
|
||||
|
||||
void fn_1_BBF8(void) {
|
||||
void fn_1_BBF8(void)
|
||||
{
|
||||
BoardModelMotionStart(lbl_1_bss_C[9], 0, 0);
|
||||
BoardModelMotionSpeedSet(lbl_1_bss_C[9], 0.0f);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_C[9], 0.0f);
|
||||
BoardModelAttrReset(lbl_1_bss_C[9], 0x40000004);
|
||||
}
|
||||
|
||||
void fn_1_BC7C(s16 arg0)
|
||||
{
|
||||
ParticleData *particle;
|
||||
|
||||
void fn_1_BC7C(s16 arg0) {
|
||||
ParticleData* particle;
|
||||
|
||||
lbl_1_bss_190 = HuSprAnimReadFile(0x120000);
|
||||
lbl_1_bss_190 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 0x00));
|
||||
HuSprAnimLock(lbl_1_bss_190);
|
||||
lbl_1_data_4E4 = Hu3DParticleCreate(lbl_1_bss_190, 100);
|
||||
Hu3DParticleHookSet(lbl_1_data_4E4, fn_1_BE30);
|
||||
|
|
@ -921,7 +955,8 @@ void fn_1_BC7C(s16 arg0) {
|
|||
particle->unk_02 = arg0;
|
||||
}
|
||||
|
||||
void fn_1_BDAC(void) {
|
||||
void fn_1_BDAC(void)
|
||||
{
|
||||
if (lbl_1_data_4E4 != -1) {
|
||||
Hu3DModelKill(lbl_1_data_4E4);
|
||||
lbl_1_data_4E4 = -1;
|
||||
|
|
@ -932,12 +967,13 @@ void fn_1_BDAC(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix) {
|
||||
void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix)
|
||||
{
|
||||
Point3d sp8;
|
||||
f32 temp_f30;
|
||||
f32 temp_f29;
|
||||
f32 temp_f31;
|
||||
HsfanimStruct01* var_r31;
|
||||
HsfanimStruct01 *var_r31;
|
||||
s32 i, j;
|
||||
|
||||
if (particle->unk_34 == 0) {
|
||||
|
|
@ -961,20 +997,20 @@ void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix) {
|
|||
}
|
||||
}
|
||||
if (j != particle->unk_30) {
|
||||
temp_f30 = 360.0f * ((1.0f/255.0f) * frand8());
|
||||
temp_f29 = temp_f31 * (20.0f + (60.0f * ((1.0f/255.0f) * frand8())));
|
||||
temp_f30 = 360.0f * ((1.0f / 255.0f) * frand8());
|
||||
temp_f29 = temp_f31 * (20.0f + (60.0f * ((1.0f / 255.0f) * frand8())));
|
||||
var_r31->unk34.x = (sp8.x + (temp_f29 * sind(temp_f30)));
|
||||
var_r31->unk34.z = (sp8.z + (temp_f29 * cosd(temp_f30)));
|
||||
var_r31->unk34.y = (sp8.y + (temp_f31 * (-30.0f + (40.0f * ((1.0f/255.0f) * frand8())))));
|
||||
var_r31->unk08.x = (0.5f + (3.0f * ((1.0f/255.0f) * frand8())));
|
||||
var_r31->unk08.y = (0.3f + (2.0f * ((1.0f/255.0f) * frand8())));
|
||||
var_r31->unk34.y = (sp8.y + (temp_f31 * (-30.0f + (40.0f * ((1.0f / 255.0f) * frand8())))));
|
||||
var_r31->unk08.x = (0.5f + (3.0f * ((1.0f / 255.0f) * frand8())));
|
||||
var_r31->unk08.y = (0.3f + (2.0f * ((1.0f / 255.0f) * frand8())));
|
||||
var_r31->unk40.a = 180;
|
||||
var_r31->unk2C = (15.0f * temp_f31);
|
||||
var_r31->unk2C = (15.0f * temp_f31);
|
||||
}
|
||||
}
|
||||
|
||||
var_r31 = particle->unk_48;
|
||||
|
||||
|
||||
for (i = 0; i < particle->unk_30; i++, var_r31++) {
|
||||
if (0.0f != var_r31->unk2C) {
|
||||
var_r31->unk34.y = (var_r31->unk34.y - var_r31->unk08.x);
|
||||
|
|
@ -982,6 +1018,6 @@ void fn_1_BE30(ModelData *model, ParticleData *particle, Mtx matrix) {
|
|||
if (var_r31->unk2C <= 0.0f) {
|
||||
var_r31->unk2C = 0.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,10 +43,10 @@ s16 lbl_1_data_388 = -1;
|
|||
s16 lbl_1_data_38A = -1;
|
||||
s16 lbl_1_data_38C = -1;
|
||||
s32 lbl_1_data_390[] = {
|
||||
0x00770026,
|
||||
0x00770027,
|
||||
0x00770028,
|
||||
-1
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x26),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_W03, 0x28),
|
||||
DATA_NUM_LISTEND
|
||||
};
|
||||
|
||||
void fn_1_63F4(s32 arg0) {
|
||||
|
|
@ -70,8 +70,8 @@ void fn_1_6494(void) {
|
|||
Vec sp8;
|
||||
unkWorkStruct* temp_r31;
|
||||
|
||||
lbl_1_data_388 = BoardModelCreate(0x77000E, NULL, 0);
|
||||
lbl_1_data_38C = BoardModelCreate(0x77000F, NULL, 0);
|
||||
lbl_1_data_388 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0E), NULL, 0);
|
||||
lbl_1_data_38C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0F), NULL, 0);
|
||||
lbl_1_data_38A = BoardModelCreate(0x2000D, &lbl_1_data_390[0], 0);
|
||||
BoardModelMotionStart(lbl_1_data_38A, 1, 0x40000001);
|
||||
BoardModelHookSet(lbl_1_data_38A, "itemhook_R", lbl_1_data_38C);
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ void fn_1_785C(void) {
|
|||
lbl_1_bss_138[0] = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_79E0);
|
||||
temp_r31 = (w03UnkWorkStruct*)&lbl_1_bss_138[0]->work[0];
|
||||
for (i = 0; i < ARRAY_COUNT(temp_r31->unk_00); i++) {
|
||||
temp_r31->unk_00[i] = BoardModelCreate(0x770008, NULL, 0);
|
||||
temp_r31->unk_00[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x08), NULL, 0);
|
||||
temp_r29 = kemuri_strings[i];
|
||||
|
||||
if (0.0f == temp_r31->unk_0C) {
|
||||
|
|
|
|||
|
|
@ -371,7 +371,7 @@ void fn_1_1ED4(s32 arg0) {
|
|||
Point3d spC;
|
||||
f32 sp8;
|
||||
|
||||
lbl_1_data_284 = BoardModelCreate(0x77000C, NULL, 0);
|
||||
lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0C), NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_data_284, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_6C, 0);
|
||||
BoardModelPosGet(lbl_1_bss_6C, &spC);
|
||||
|
|
@ -418,7 +418,7 @@ void fn_1_20E0(s32 arg0) {
|
|||
f32 var_f31;
|
||||
s32 i;
|
||||
|
||||
lbl_1_data_284 = BoardModelCreate(0x77000D, NULL, 0);
|
||||
lbl_1_data_284 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W03, 0x0D), NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_data_284, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_6C, 0);
|
||||
BoardModelPosGet(lbl_1_bss_6C, &spC);
|
||||
|
|
@ -606,7 +606,7 @@ s32 fn_1_2930(s32 arg0) {
|
|||
|
||||
void fn_1_2A40(void) {
|
||||
lbl_1_bss_30 = 0.0f;
|
||||
lbl_1_bss_34 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x96000, 0x10000000U);
|
||||
lbl_1_bss_34 = HuMemDirectMallocNum(HEAP_SYSTEM, 0x96000, MEMORY_DEFAULT_NUM);
|
||||
lbl_1_data_286 = Hu3DHookFuncCreate((void*)&fn_1_2B44);
|
||||
Hu3DModelLayerSet(lbl_1_data_286, 3);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -163,7 +163,7 @@ static void fn_1_20EC(void) {
|
|||
}
|
||||
}
|
||||
for (i = 0; i < 3; i++) {
|
||||
lbl_1_bss_F4[i] = BoardModelCreate(0x70000, NULL, 1);
|
||||
lbl_1_bss_F4[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x00), NULL, 1);
|
||||
BoardModelLayerSet(lbl_1_bss_F4[i], 2);
|
||||
BoardModelVisibilitySet(lbl_1_bss_F4[i], 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,15 @@
|
|||
#include "REL/w05Dll.h"
|
||||
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/objsub.h"
|
||||
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/board/audio.h"
|
||||
|
||||
// bss
|
||||
s16 lbl_1_bss_72[2];
|
||||
|
|
@ -20,44 +20,60 @@ s16 lbl_1_bss_58[6];
|
|||
|
||||
// data
|
||||
char *lbl_1_data_22C[6] = { "orange1", "orange2", "pine2", "pine1", "suika1", "suika2" };
|
||||
s32 lbl_1_data_244[6] = { 0x00790027, 0x00790028, 0x00790029, 0x0079002A, 0x0079002B, 0xFFFFFFFF };
|
||||
s32 lbl_1_data_244[6] = {
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x28),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x29),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2A),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2B),
|
||||
DATA_NUM_LISTEND,
|
||||
};
|
||||
Vec lbl_1_data_25C[6] = {
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 90.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 180.0f, 0.0f },
|
||||
{ 0.0f, 270.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 180.0f, 0.0f },
|
||||
{ 0.0f, 270.0f, 0.0f },
|
||||
{ 0.0f, 90.0f, 0.0f },
|
||||
};
|
||||
Vec lbl_1_data_2A4[6] = {
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 300.0f, 0.0f },
|
||||
{ 0.0f, 450.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 300.0f, 0.0f },
|
||||
{ 0.0f, 450.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
};
|
||||
s32 lbl_1_data_2EC[2] = { 0x76, 0x77 };
|
||||
s32 lbl_1_data_2F4[6] = { 0x0079002C, 0x0079002D, 0x0079002E, 0x0079002C, 0x0079002F, 0x00790030 };
|
||||
s32 lbl_1_data_2F4[6] = {
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2C),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2D),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2E),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2C),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x2F),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x30),
|
||||
};
|
||||
|
||||
void fn_1_3F74(void) {
|
||||
void fn_1_3F74(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
BoardAudSeqPause(0, 1, 0x3E8);
|
||||
|
||||
|
||||
for (var_r31 = 0x3C; var_r31 != 0; var_r31--) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardMusStart(1, 0x24, 0x7F, 0);
|
||||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_3FD8(void) {
|
||||
void fn_1_3FD8(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
BoardAudSeqFadeOut(1, 0x3E8);
|
||||
|
||||
|
||||
for (var_r31 = 0x3C; var_r31 != 0; var_r31--) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -65,7 +81,8 @@ void fn_1_3FD8(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_4034(s32 arg0) {
|
||||
void fn_1_4034(s32 arg0)
|
||||
{
|
||||
Vec sp40;
|
||||
Vec sp34;
|
||||
Vec sp28;
|
||||
|
|
@ -79,20 +96,20 @@ void fn_1_4034(s32 arg0) {
|
|||
s16 var_r30;
|
||||
s32 var_r27;
|
||||
BoardSpace *var_r25;
|
||||
omObjData* temp_r24;
|
||||
omObjData *temp_r24;
|
||||
BoardSpace *var_r28;
|
||||
s32 var_r31;
|
||||
s32 temp_r26;
|
||||
|
||||
lbl_1_bss_68 = GWSystem.player_curr;
|
||||
sp10 = GWPlayer[lbl_1_bss_68].character;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 2; var_r31++) {
|
||||
lbl_1_bss_72[var_r31] = BoardPlayerMotionCreate(lbl_1_bss_68, lbl_1_data_2EC[var_r31] | lbl_1_data_124[GWPlayer[lbl_1_bss_68].character]);
|
||||
}
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_6C[var_r31] = BoardModelCreate(0x7000A, NULL, 1);
|
||||
lbl_1_bss_6C[var_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
|
||||
BoardModelAttrSet(lbl_1_bss_6C[var_r31], 0x40000001);
|
||||
BoardModelVisibilitySet(lbl_1_bss_6C[var_r31], 0);
|
||||
}
|
||||
|
|
@ -118,7 +135,7 @@ void fn_1_4034(s32 arg0) {
|
|||
}
|
||||
BoardPlayerIdleSet(lbl_1_bss_68);
|
||||
HuPrcSleep(8);
|
||||
lbl_1_bss_64 = BoardModelCreate(0x790026, lbl_1_data_244, 0);
|
||||
lbl_1_bss_64 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x26), lbl_1_data_244, 0);
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_118), lbl_1_data_22C[arg0], &sp40);
|
||||
PSVECAdd(&sp40, &lbl_1_data_2A4[arg0], &sp40);
|
||||
BoardModelMotionStart(lbl_1_bss_64, 4, 0);
|
||||
|
|
@ -126,7 +143,7 @@ void fn_1_4034(s32 arg0) {
|
|||
BoardModelPosSetV(lbl_1_bss_64, &sp40);
|
||||
BoardModelRotSetV(lbl_1_bss_64, &lbl_1_data_25C[arg0]);
|
||||
fn_1_66C0(0, &sp40);
|
||||
|
||||
|
||||
var_r30 = 0;
|
||||
while (BoardModelMotionTimeGet(lbl_1_bss_64) < BoardModelMotionMaxTimeGet(lbl_1_bss_64)) {
|
||||
if (BoardModelMotionTimeGet(lbl_1_bss_64) > 50.0f && var_r30 == 0) {
|
||||
|
|
@ -157,7 +174,8 @@ void fn_1_4034(s32 arg0) {
|
|||
}
|
||||
if ((arg0 & 1) != 0) {
|
||||
var_r27 = arg0 - 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r27 = arg0 + 1;
|
||||
}
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_data_118), lbl_1_data_22C[var_r27], &sp34);
|
||||
|
|
@ -167,7 +185,7 @@ void fn_1_4034(s32 arg0) {
|
|||
while (fn_1_1208(lbl_1_bss_64, temp_f25, 10.0f) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardPlayerPosGet(lbl_1_bss_68, &sp28);
|
||||
var_f27 = sqrtf(((sp40.x - sp28.x) * (sp40.x - sp28.x)) + ((sp40.z - sp28.z) * (sp40.z - sp28.z)));
|
||||
PSVECSubtract(&sp40, &sp28, &sp1C);
|
||||
|
|
@ -176,7 +194,7 @@ void fn_1_4034(s32 arg0) {
|
|||
BoardPlayerMotionStart(lbl_1_bss_68, 4, 0);
|
||||
var_f26 = 0.0f;
|
||||
temp_f22 = 15.0f;
|
||||
|
||||
|
||||
loop_37:
|
||||
sp1C.y = temp_f22 - (0.075f * (0.25f * (var_f26 * var_f26)));
|
||||
var_f26++;
|
||||
|
|
@ -190,28 +208,30 @@ loop_37:
|
|||
|
||||
if (sp28.y <= 20.0f + sp40.y) {
|
||||
sp28.y = 20.0f + sp40.y;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp28);
|
||||
HuPrcVSleep();
|
||||
goto loop_37;
|
||||
}
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp28);
|
||||
BoardPlayerMotionStart(lbl_1_bss_68, lbl_1_bss_72[0], 0);
|
||||
|
||||
|
||||
while (fn_1_1208(BoardPlayerModelGet(lbl_1_bss_68), temp_f25, 10.0f) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
while (BoardPlayerMotionEndCheck(lbl_1_bss_68) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardPlayerMotionStart(lbl_1_bss_68, lbl_1_bss_72[1], 0x40000001);
|
||||
HuPrcSleep(0x12);
|
||||
temp_r24->work[1] = 1;
|
||||
if (arg0 < 4) {
|
||||
fn_1_4EB4(arg0, temp_r26, &sp34);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
fn_1_5794(arg0, temp_r26, &sp34);
|
||||
}
|
||||
BoardModelPosGet(lbl_1_bss_64, &sp40);
|
||||
|
|
@ -222,7 +242,7 @@ loop_37:
|
|||
while (BoardPlayerMotBlendCheck(lbl_1_bss_68) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
fn_1_66C0(1, &sp40);
|
||||
BoardModelMotionShiftSet(lbl_1_bss_64, 5, 0.0f, 5.0f, 0);
|
||||
var_r30 = 0;
|
||||
|
|
@ -272,7 +292,7 @@ loop_37:
|
|||
for (var_r31 = 0; var_r31 < 2; var_r31++) {
|
||||
BoardPlayerMotionKill(lbl_1_bss_68, lbl_1_bss_72[var_r31]);
|
||||
}
|
||||
|
||||
|
||||
fn_1_6670();
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
|
|
@ -280,7 +300,8 @@ loop_37:
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
||||
void fn_1_4EB4(s32 arg1, s32 arg2, Vec *arg3)
|
||||
{
|
||||
Vec sp3C;
|
||||
Vec sp30;
|
||||
Vec sp24;
|
||||
|
|
@ -291,8 +312,8 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
|||
f32 var_f22;
|
||||
f32 var_f24;
|
||||
f32 var_f28;
|
||||
omObjData* temp_r30;
|
||||
omObjData* temp_r29;
|
||||
omObjData *temp_r30;
|
||||
omObjData *temp_r29;
|
||||
s32 temp_r28;
|
||||
|
||||
temp_f23 = 10.0f;
|
||||
|
|
@ -315,7 +336,8 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
|||
sp30.y += 20.0f;
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp30);
|
||||
break;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECAdd(&sp3C, &sp24, &sp3C);
|
||||
BoardModelPosSetV(lbl_1_bss_64, &sp3C);
|
||||
sp30 = sp3C;
|
||||
|
|
@ -336,17 +358,17 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
|||
while (BoardPlayerMotBlendCheck(lbl_1_bss_68) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardPlayerPosGet(lbl_1_bss_68, &sp30);
|
||||
var_f28 = sqrtf(((sp3C.x - sp30.x) * (sp3C.x - sp30.x)) + ((sp3C.z - sp30.z) * (sp3C.z - sp30.z)));
|
||||
PSVECSubtract(&sp3C, &sp30, &sp24);
|
||||
PSVECNormalize(&sp24, &sp24);
|
||||
PSVECScale(&sp24, &sp24, var_f28 / 45.0f);
|
||||
BoardPlayerMotionStart(lbl_1_bss_68, 4, 0);
|
||||
|
||||
|
||||
var_f24 = 0.0f;
|
||||
temp_f19 = 15.0f;
|
||||
|
||||
|
||||
while (1) {
|
||||
sp24.y = temp_f19 - (0.075f * (0.25f * (var_f24 * var_f24)));
|
||||
var_f24++;
|
||||
|
|
@ -359,7 +381,8 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
|||
}
|
||||
if (sp30.y <= sp3C.y && sp24.y < 0.0f) {
|
||||
sp30.y = sp3C.y;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp30);
|
||||
HuPrcVSleep();
|
||||
continue;
|
||||
|
|
@ -369,7 +392,8 @@ void fn_1_4EB4(s32 arg1, s32 arg2, Vec* arg3) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5648(void) {
|
||||
void fn_1_5648(void)
|
||||
{
|
||||
Vec sp8;
|
||||
s32 var_r31;
|
||||
|
||||
|
|
@ -391,7 +415,8 @@ void fn_1_5648(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
||||
void fn_1_5794(s32 arg0, s32 arg1, Vec *arg2)
|
||||
{
|
||||
Vec sp64;
|
||||
Vec sp58;
|
||||
Vec sp4C;
|
||||
|
|
@ -400,16 +425,16 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
Vec sp28;
|
||||
Vec sp1C;
|
||||
f32 sp18;
|
||||
Process* temp_r23;
|
||||
Process *temp_r23;
|
||||
f32 temp_f18;
|
||||
f32 temp_f22;
|
||||
f32 var_f27;
|
||||
f32 var_f23;
|
||||
f32 var_f28;
|
||||
omObjData* temp_r27;
|
||||
omObjData* var_r26;
|
||||
omObjData* temp_r25;
|
||||
omObjData* var_r24;
|
||||
omObjData *temp_r27;
|
||||
omObjData *var_r26;
|
||||
omObjData *temp_r25;
|
||||
omObjData *var_r24;
|
||||
s32 var_r28;
|
||||
s32 var_r29;
|
||||
s32 var_r30;
|
||||
|
|
@ -429,7 +454,8 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
PSVECScale(&sp40, &sp40, temp_f22);
|
||||
if (arg0 == 5) {
|
||||
var_r29 = 0x96;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29 = 0x5A;
|
||||
}
|
||||
var_f28 = 0.0f;
|
||||
|
|
@ -442,7 +468,7 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
BoardModelPosGet(lbl_1_bss_64, &sp1C);
|
||||
temp_r27 = fn_1_66C0(4, &sp1C);
|
||||
temp_r25 = fn_1_66C0(5, &sp1C);
|
||||
|
||||
|
||||
while (1) {
|
||||
sp18 = BoardModelRotYGet(lbl_1_bss_64);
|
||||
sp58 = sp64;
|
||||
|
|
@ -455,7 +481,8 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
sp4C.y += 20.0f;
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp4C);
|
||||
break;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
PSVECAdd(&sp58, &sp40, &sp58);
|
||||
sp64 = sp58;
|
||||
if (var_r29 == 0) {
|
||||
|
|
@ -469,24 +496,28 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
temp_r27->work[1] = 1;
|
||||
temp_r25->work[1] = 1;
|
||||
var_r30++;
|
||||
} else if (var_r30 == 1 && var_f28 < -180.0f) {
|
||||
HuAudFXStop(var_r28);
|
||||
HuAudFXPlay(0x47D);
|
||||
HuAudPlayerVoicePlay(lbl_1_bss_68, 0x125);
|
||||
fn_1_66C0(3, &sp58);
|
||||
var_r30++;
|
||||
} else if ((var_r30 == 2) && (var_f28 < -360.0f)) {
|
||||
var_r28 = HuAudFXPlay(0x47F);
|
||||
HuAudFXPlay(0x481);
|
||||
fn_1_66C0(3, &sp58);
|
||||
var_r30++;
|
||||
} else if ((var_r30 == 3) && (-540.0f == var_f28)) {
|
||||
}
|
||||
else if (var_r30 == 1 && var_f28 < -180.0f) {
|
||||
HuAudFXStop(var_r28);
|
||||
HuAudFXPlay(0x47D);
|
||||
HuAudPlayerVoicePlay(lbl_1_bss_68, 0x125);
|
||||
fn_1_66C0(3, &sp58);
|
||||
var_r30++;
|
||||
}
|
||||
else if ((var_r30 == 2) && (var_f28 < -360.0f)) {
|
||||
var_r28 = HuAudFXPlay(0x47F);
|
||||
HuAudFXPlay(0x481);
|
||||
fn_1_66C0(3, &sp58);
|
||||
var_r30++;
|
||||
}
|
||||
else if ((var_r30 == 3) && (-540.0f == var_f28)) {
|
||||
var_r30++;
|
||||
BoardModelPosGet(lbl_1_bss_64, &sp1C);
|
||||
var_r26 = fn_1_66C0(4, &sp1C);
|
||||
var_r24 = fn_1_66C0(5, &sp1C);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r29--;
|
||||
}
|
||||
BoardModelPosSetV(lbl_1_bss_64, &sp58);
|
||||
|
|
@ -536,7 +567,8 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
if (sp4C.y <= sp58.y && sp40.y < 0.0f) {
|
||||
sp4C.y = sp58.y;
|
||||
break;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardPlayerPosSetV(lbl_1_bss_68, &sp4C);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -545,7 +577,8 @@ void fn_1_5794(s32 arg0, s32 arg1, Vec* arg2) {
|
|||
HuPrcKill(temp_r23);
|
||||
}
|
||||
|
||||
void fn_1_62AC(s32 arg0, Vec* arg1) {
|
||||
void fn_1_62AC(s32 arg0, Vec *arg1)
|
||||
{
|
||||
Vec sp34;
|
||||
Vec sp28;
|
||||
Vec sp1C;
|
||||
|
|
@ -578,7 +611,8 @@ void fn_1_62AC(s32 arg0, Vec* arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_64BC(void) {
|
||||
void fn_1_64BC(void)
|
||||
{
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
|
|
@ -602,7 +636,8 @@ void fn_1_64BC(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_65E8(void) {
|
||||
void fn_1_65E8(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 6; var_r31++) {
|
||||
|
|
@ -611,7 +646,8 @@ void fn_1_65E8(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_6670(void) {
|
||||
void fn_1_6670(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 6; var_r31++) {
|
||||
|
|
@ -619,9 +655,10 @@ void fn_1_6670(void) {
|
|||
}
|
||||
}
|
||||
|
||||
omObjData* fn_1_66C0(u32 arg0, Vec* arg1) {
|
||||
omObjData *fn_1_66C0(u32 arg0, Vec *arg1)
|
||||
{
|
||||
Vec sp8;
|
||||
omObjData* temp_r31;
|
||||
omObjData *temp_r31;
|
||||
f32 temp_f31;
|
||||
|
||||
temp_r31 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_6914);
|
||||
|
|
@ -665,7 +702,8 @@ omObjData* fn_1_66C0(u32 arg0, Vec* arg1) {
|
|||
return temp_r31;
|
||||
}
|
||||
|
||||
void fn_1_6914(omObjData* arg0) {
|
||||
void fn_1_6914(omObjData *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
|
||||
if (arg0->work[1] != 0) {
|
||||
|
|
@ -680,7 +718,8 @@ void fn_1_6914(omObjData* arg0) {
|
|||
BoardModelKill(arg0->work[0]);
|
||||
omDelObjEx(boardObjMan, arg0);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
switch (arg0->work[2]) {
|
||||
case 0:
|
||||
case 1:
|
||||
|
|
|
|||
|
|
@ -12,7 +12,8 @@
|
|||
|
||||
// data
|
||||
s32 lbl_1_data_150[5] = {
|
||||
0x790021, 0x790022, 0x790023, 0x790024, 0x790025,
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x21), DATA_MAKE_NUM(DATADIR_W05, 0x22), DATA_MAKE_NUM(DATADIR_W05, 0x23),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x24), DATA_MAKE_NUM(DATADIR_W05, 0x25),
|
||||
};
|
||||
s16 lbl_1_data_164 = 0xFFFF;
|
||||
|
||||
|
|
@ -36,7 +37,7 @@ void fn_1_14D0(void) {
|
|||
}
|
||||
|
||||
u32 lbl_1_data_170[4] = { 0, 10, 25, 40 };
|
||||
s32 lbl_1_data_180 = 0x79000C;
|
||||
s32 lbl_1_data_180 = DATA_MAKE_NUM(DATADIR_W05, 0x0C);
|
||||
|
||||
s16 fn_1_14FC(void) {
|
||||
s16 var_r31;
|
||||
|
|
@ -112,10 +113,10 @@ void fn_1_155C(void) {
|
|||
sprintf(sp18, "%d", lbl_1_bss_0->unk_00);
|
||||
if (var_r30 > 0) {
|
||||
if (var_r30 >= 5) {
|
||||
var_r27 = 0x270001;
|
||||
var_r27 = MAKE_MESSID(0x27, 0x01);
|
||||
var_r30 = 5;
|
||||
} else {
|
||||
var_r27 = 0x270002;
|
||||
var_r27 = MAKE_MESSID(0x27, 0x02);
|
||||
}
|
||||
sprintf(sp8, "%d", var_r30);
|
||||
BoardWinCreate(2, var_r27, 7);
|
||||
|
|
@ -198,7 +199,10 @@ void fn_1_155C(void) {
|
|||
BoardRollDispSet(1);
|
||||
}
|
||||
|
||||
s32 lbl_1_data_188[4] = { 0x79000C, 0x79000E, 0x79000F, 0x790010 };
|
||||
s32 lbl_1_data_188[4] = {
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x0C), DATA_MAKE_NUM(DATADIR_W05, 0x0E),
|
||||
DATA_MAKE_NUM(DATADIR_W05, 0x0F),DATA_MAKE_NUM(DATADIR_W05, 0x10)
|
||||
};
|
||||
s32 lbl_1_data_198[2] = { 28, 25 };
|
||||
|
||||
void fn_1_1E44(void) {
|
||||
|
|
@ -279,7 +283,7 @@ void fn_1_1E44(void) {
|
|||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
} else {
|
||||
temp_r3 = BoardModelCreate(0x790004, NULL, 0);
|
||||
temp_r3 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x04), NULL, 0);
|
||||
BoardModelVisibilitySet(temp_r3, 0);
|
||||
BoardModelLayerSet(temp_r3, 2U);
|
||||
if (lbl_1_bss_0->unk_00 > BoardPlayerCoinsGet(lbl_1_bss_28)) {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
#include "REL/w05Dll.h"
|
||||
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/gamework_data.h"
|
||||
|
||||
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/boo_house.h"
|
||||
|
|
@ -17,68 +18,50 @@
|
|||
|
||||
// data
|
||||
BoardMapObject lbl_1_data_0[7] = {
|
||||
{ { 3300.0f, 100.0f, -900.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x790011
|
||||
},
|
||||
{ { -2550.0f, 0.0f, 1350.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x790014
|
||||
},
|
||||
{ { -3000.0f, 100.0f, -1050.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x79001A
|
||||
},
|
||||
{ { 2100.0f, 100.0f, -450.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x79001B
|
||||
},
|
||||
{ { -450.0f, 100.0f, -750.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x79000A
|
||||
},
|
||||
{ { -2710.0f, 0.0f, 1315.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x79000A
|
||||
},
|
||||
{ { 3055.0f, 100.0f, -815.0f },
|
||||
{ 0.0f, 0.0f, 0.0f },
|
||||
{ 1.0f, 1.0f, 1.0f },
|
||||
0x79000A
|
||||
},
|
||||
{ { 3300.0f, 100.0f, -900.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x11) },
|
||||
{ { -2550.0f, 0.0f, 1350.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x14) },
|
||||
{ { -3000.0f, 100.0f, -1050.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x1A) },
|
||||
{ { 2100.0f, 100.0f, -450.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x1B) },
|
||||
{ { -450.0f, 100.0f, -750.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x0A) },
|
||||
{ { -2710.0f, 0.0f, 1315.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x0A) },
|
||||
{ { 3055.0f, 100.0f, -815.0f }, { 0.0f, 0.0f, 0.0f }, { 1.0f, 1.0f, 1.0f }, DATA_MAKE_NUM(DATADIR_W05, 0x0A) },
|
||||
};
|
||||
s16 lbl_1_data_118 = 0xFFFF;
|
||||
s16 lbl_1_data_11A = 0xFFFF;
|
||||
s16 lbl_1_data_11C = 0xFFFF;
|
||||
s16 lbl_1_data_11E = 0xFFFF;
|
||||
s16 lbl_1_data_120 = 0xFFFF;
|
||||
s32 lbl_1_data_124[8] = {0x5F0000, 0x1A0000, 0x6D0000, 0x8A0000, 0x850000, 0x110000, 0xD0000, 0x810000};
|
||||
s32 lbl_1_data_144[2] = {0x790006, 0xFFFFFFFF};
|
||||
s32 lbl_1_data_124[8] = {
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00),
|
||||
};
|
||||
s32 lbl_1_data_144[2] = { DATA_MAKE_NUM(DATADIR_W05, 0x06), DATA_NUM_LISTEND };
|
||||
s32 lbl_1_data_14C = 0xFFFFFFFF;
|
||||
|
||||
// bss
|
||||
s16 lbl_1_bss_14[7];
|
||||
s32* lbl_1_bss_10;
|
||||
s32 *lbl_1_bss_10;
|
||||
s16 lbl_1_bss_8[4];
|
||||
Process* lbl_1_bss_4;
|
||||
bitcopy* lbl_1_bss_0;
|
||||
Process *lbl_1_bss_4;
|
||||
bitcopy *lbl_1_bss_0;
|
||||
|
||||
void BoardCreate(void) {
|
||||
void BoardCreate(void)
|
||||
{
|
||||
s32 sp8;
|
||||
s32 var_r31;
|
||||
BoardMapObject* temp_r30;
|
||||
BoardMapObject *temp_r30;
|
||||
|
||||
sp8 = GWBoardGet();
|
||||
lbl_1_bss_0 = (bitcopy*) GWSystem.board_data;
|
||||
BoardSpaceInit(0x790000);
|
||||
lbl_1_data_118 = BoardModelCreate(0x790001, NULL, 0);
|
||||
lbl_1_data_120 = BoardModelCreate(0x790002, NULL, 0);
|
||||
lbl_1_bss_0 = (bitcopy *)GWSystem.board_data;
|
||||
BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W05, 0x00));
|
||||
lbl_1_data_118 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x01), NULL, 0);
|
||||
lbl_1_data_120 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x02), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_118, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_118, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_118, 0, 0x40000001);
|
||||
|
|
@ -88,23 +71,24 @@ void BoardCreate(void) {
|
|||
BoardModelMotionStart(lbl_1_data_120, 0, 0x40000001);
|
||||
BoardModelMotionSpeedSet(lbl_1_data_120, 1.0f);
|
||||
BoardModelLayerSet(lbl_1_data_120, 1);
|
||||
lbl_1_data_11A = BoardModelCreate(0x790003, NULL, 0);
|
||||
lbl_1_data_11A = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x03), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_11A, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_11A, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_11A, 0, 0x40000001);
|
||||
lbl_1_data_11C = BoardModelCreate(0x790005, lbl_1_data_144, 0);
|
||||
lbl_1_data_11C = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x05), lbl_1_data_144, 0);
|
||||
BoardModelPosSet(lbl_1_data_11C, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_11C, 1, 0x40000001);
|
||||
lbl_1_data_11E = BoardModelCreate(0x2001C, &lbl_1_data_14C, 0);
|
||||
BoardModelMotionStart(lbl_1_data_11E, 1, 0x40000001);
|
||||
BoardLightHookSet(&fn_1_744, &fn_1_788);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 7; var_r31++) {
|
||||
temp_r30 = &lbl_1_data_0[var_r31];
|
||||
if (temp_r30->data_num != -1) {
|
||||
if ((var_r31 == 4) || (var_r31 == 5) || (var_r31 == 6)) {
|
||||
lbl_1_bss_10 = &lbl_1_data_14C;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
lbl_1_bss_10 = NULL;
|
||||
}
|
||||
lbl_1_bss_14[var_r31] = BoardModelCreate(temp_r30->data_num, lbl_1_bss_10, 0);
|
||||
|
|
@ -129,7 +113,8 @@ void BoardCreate(void) {
|
|||
BoardLotteryHostSet(lbl_1_data_11E);
|
||||
}
|
||||
|
||||
void BoardDestroy(void) {
|
||||
void BoardDestroy(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 7; var_r31++) {
|
||||
|
|
@ -161,20 +146,21 @@ void BoardDestroy(void) {
|
|||
BoardSpaceDestroy();
|
||||
}
|
||||
|
||||
void fn_1_744(void) {
|
||||
void fn_1_744(void)
|
||||
{
|
||||
s16 var_r31 = BoardModelIDGet(lbl_1_data_118);
|
||||
Hu3DModelLightInfoSet(var_r31, 1);
|
||||
}
|
||||
|
||||
void fn_1_788(void) {
|
||||
}
|
||||
void fn_1_788(void) { }
|
||||
|
||||
s32 fn_1_78C(void) {
|
||||
s32 fn_1_78C(void)
|
||||
{
|
||||
s32 var_r30 = GWSystem.player_curr;
|
||||
s32 var_r29 = GWPlayer[var_r30].space_curr;
|
||||
s32 var_r28;
|
||||
u32 temp_r3;
|
||||
|
||||
|
||||
temp_r3 = BoardSpaceFlagGet(0, var_r29);
|
||||
if ((temp_r3 & 2) != 0) {
|
||||
fn_1_1E44();
|
||||
|
|
@ -186,9 +172,10 @@ s32 fn_1_78C(void) {
|
|||
}
|
||||
}
|
||||
|
||||
s32 fn_1_82C(void) {
|
||||
s32 fn_1_82C(void)
|
||||
{
|
||||
s32 temp_r30;
|
||||
BoardSpace* temp_r3;
|
||||
BoardSpace *temp_r3;
|
||||
|
||||
temp_r30 = GWSystem.player_curr;
|
||||
temp_r3 = BoardSpaceGet(0, GWPlayer[temp_r30].space_curr);
|
||||
|
|
@ -213,15 +200,16 @@ s32 fn_1_82C(void) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
void fn_1_92C(void) {
|
||||
void fn_1_92C(void)
|
||||
{
|
||||
fn_1_6B28();
|
||||
fn_1_9680();
|
||||
}
|
||||
|
||||
void fn_1_950(void) {
|
||||
}
|
||||
void fn_1_950(void) { }
|
||||
|
||||
void fn_1_954(void) {
|
||||
void fn_1_954(void)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
s32 var_r26;
|
||||
|
|
@ -239,7 +227,7 @@ void fn_1_954(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
lbl_1_bss_8[0] = 0;
|
||||
|
||||
|
||||
for (var_r31 = 1; var_r31 < 3;) {
|
||||
lbl_1_bss_8[var_r31] = (u32)frandmod(0xE);
|
||||
if ((lbl_1_bss_8[var_r31] == 0xA) || (lbl_1_bss_8[var_r31] == 0xD)) {
|
||||
|
|
@ -260,7 +248,8 @@ void fn_1_954(void) {
|
|||
if (GWPlayer[temp_r30].com != 0) {
|
||||
if (BoardComPreferItemCheck(temp_r30, lbl_1_bss_8[0], lbl_1_bss_8[1], lbl_1_bss_8[2]) != -1) {
|
||||
BoardComKeySetLeft();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardComKeySetRight();
|
||||
}
|
||||
}
|
||||
|
|
@ -297,7 +286,7 @@ void fn_1_954(void) {
|
|||
temp_r27 = GWPlayer[temp_r30].space_curr;
|
||||
var_r26 = BoardSpaceLinkFlagSearch(0, temp_r27, 0x02000000);
|
||||
BoardPlayerMoveBetween(temp_r30, temp_r27, var_r26);
|
||||
|
||||
|
||||
while (GWPlayer[temp_r30].moving != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -314,28 +303,32 @@ void fn_1_954(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_D4C(void) {
|
||||
void fn_1_D4C(void)
|
||||
{
|
||||
BoardWinKill();
|
||||
CharModelDataClose(-1);
|
||||
lbl_1_bss_4 = NULL;
|
||||
}
|
||||
|
||||
void fn_1_D84(void) {
|
||||
void fn_1_D84(void)
|
||||
{
|
||||
lbl_1_bss_4 = HuPrcChildCreate(fn_1_954, 0x2003U, 0x3000U, 0, boardMainProc);
|
||||
HuPrcDestructorSet2(lbl_1_bss_4, fn_1_D4C);
|
||||
|
||||
|
||||
while (lbl_1_bss_4 != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_E04(void) {
|
||||
void fn_1_E04(void)
|
||||
{
|
||||
HuPrcSleep(0x3C);
|
||||
BoardMusStart(1, 0x23, 0x7F, 0);
|
||||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_E40(void) {
|
||||
void fn_1_E40(void)
|
||||
{
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
|
|
@ -350,7 +343,8 @@ void fn_1_E40(void) {
|
|||
if (GWPlayer[temp_r31].com != 0) {
|
||||
if (frandBool() != 0) {
|
||||
BoardComKeySetLeft();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardComKeySetRight();
|
||||
}
|
||||
}
|
||||
|
|
@ -363,7 +357,7 @@ void fn_1_E40(void) {
|
|||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
BoardMGExit();
|
||||
|
||||
|
||||
while (BoardMGDoneFlagGet() != 1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -399,7 +393,8 @@ void fn_1_E40(void) {
|
|||
BoardPlayerMotionStart(temp_r31, 1, 0x40000001);
|
||||
}
|
||||
|
||||
s32 fn_1_1114(void) {
|
||||
s32 fn_1_1114(void)
|
||||
{
|
||||
u32 temp_r31;
|
||||
s16 var_r30 = GWPlayer[GWSystem.player_curr].space_curr;
|
||||
|
||||
|
|
@ -412,13 +407,15 @@ s32 fn_1_1114(void) {
|
|||
while (lbl_1_bss_4 != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
} else if ((temp_r31 & 0x400000) != 0) {
|
||||
}
|
||||
else if ((temp_r31 & 0x400000) != 0) {
|
||||
fn_1_E40();
|
||||
}
|
||||
BoardRollDispSet(1);
|
||||
}
|
||||
|
||||
s32 fn_1_1208(s16 arg0, f32 arg8, f32 arg9) {
|
||||
s32 fn_1_1208(s16 arg0, f32 arg8, f32 arg9)
|
||||
{
|
||||
f32 var_f29;
|
||||
f32 var_f31;
|
||||
s32 var_r31;
|
||||
|
|
@ -440,12 +437,15 @@ s32 fn_1_1208(s16 arg0, f32 arg8, f32 arg9) {
|
|||
if (var_f29 < 180.0f) {
|
||||
if (var_f29 > arg9) {
|
||||
var_f31 = var_f31 + arg9;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = arg8;
|
||||
}
|
||||
} else if ((360.0f - var_f29) > arg9) {
|
||||
}
|
||||
else if ((360.0f - var_f29) > arg9) {
|
||||
var_f31 = var_f31 - arg9;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_f31 = arg8;
|
||||
}
|
||||
if (var_f31 < 0.0f) {
|
||||
|
|
@ -455,7 +455,8 @@ s32 fn_1_1208(s16 arg0, f32 arg8, f32 arg9) {
|
|||
var_f31 -= 360.0f;
|
||||
}
|
||||
BoardModelRotYSet(arg0, var_f31);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
var_r31 = 1;
|
||||
}
|
||||
return var_r31;
|
||||
|
|
|
|||
|
|
@ -1,25 +1,27 @@
|
|||
#include "REL/w05Dll.h"
|
||||
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/pad.h"
|
||||
|
||||
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/board/audio.h"
|
||||
|
||||
|
||||
s16 lbl_1_bss_102[3];
|
||||
s16 lbl_1_bss_100;
|
||||
s16 lbl_1_bss_FE;
|
||||
s16 lbl_1_bss_D6[20];
|
||||
s16 lbl_1_bss_D4;
|
||||
omObjData* lbl_1_bss_D0;
|
||||
omObjData* lbl_1_bss_CC;
|
||||
omObjData* lbl_1_bss_C8;
|
||||
omObjData *lbl_1_bss_D0;
|
||||
omObjData *lbl_1_bss_CC;
|
||||
omObjData *lbl_1_bss_C8;
|
||||
s16 lbl_1_bss_C6;
|
||||
s16 lbl_1_bss_C4;
|
||||
s16 lbl_1_bss_C2;
|
||||
|
|
@ -29,14 +31,16 @@ s32 lbl_1_bss_B8;
|
|||
|
||||
char *lbl_1_data_464[3] = { "gyoei", "gyoei1", "gyoei2" };
|
||||
s32 lbl_1_data_470[3] = { 0x7B, 0x7C, 0x7D };
|
||||
s32 lbl_1_data_47C[3] = { 0x00790016, 0x00790017, 0x00790018 };
|
||||
s32 lbl_1_data_47C[3] = { DATA_MAKE_NUM(DATADIR_W05, 0x16), DATA_MAKE_NUM(DATADIR_W05, 0x17), DATA_MAKE_NUM(DATADIR_W05, 0x18) };
|
||||
char *lbl_1_data_494[3] = { "uo", "uo1", "uo2" };
|
||||
|
||||
void fn_1_9680(void) {
|
||||
void fn_1_9680(void)
|
||||
{
|
||||
BoardModelAttrSet(lbl_1_bss_14[1], 0x40000002U);
|
||||
}
|
||||
|
||||
void fn_1_96B4(void) {
|
||||
void fn_1_96B4(void)
|
||||
{
|
||||
BoardModelAttrReset(lbl_1_bss_14[1], 0x40000002);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_14[1], 0.0f);
|
||||
|
||||
|
|
@ -47,58 +51,63 @@ void fn_1_96B4(void) {
|
|||
BoardModelMotionStartEndSet(lbl_1_bss_14[1], 0x3C, 0x64);
|
||||
}
|
||||
|
||||
void fn_1_9760(void) {
|
||||
void fn_1_9760(void)
|
||||
{
|
||||
BoardModelAttrReset(lbl_1_bss_14[1], 0x40000001);
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_14[1], 0, 0xA0);
|
||||
}
|
||||
|
||||
void fn_1_97AC(void) {
|
||||
void fn_1_97AC(void)
|
||||
{
|
||||
Vec sp8;
|
||||
s32 var_r31;
|
||||
|
||||
lbl_1_bss_C0 = GWSystem.player_curr;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_102[var_r31] = BoardPlayerMotionCreate(lbl_1_bss_C0, lbl_1_data_470[var_r31] | lbl_1_data_124[GWPlayer[lbl_1_bss_C0].character]);
|
||||
}
|
||||
sp8.x = sp8.y = sp8.z = 1.0f;
|
||||
lbl_1_bss_100 = BoardModelCreate(0x790015, NULL, 0);
|
||||
lbl_1_bss_100 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x15), NULL, 0);
|
||||
BoardModelScaleSetV(lbl_1_bss_100, &sp8);
|
||||
BoardModelVisibilitySet(lbl_1_bss_100, 0);
|
||||
lbl_1_bss_D4 = BoardModelCreate(0x79002C, NULL, 0);
|
||||
lbl_1_bss_D4 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x2C), NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_D4, 0);
|
||||
lbl_1_bss_C2 = frandmod(3U);
|
||||
lbl_1_bss_FE = BoardModelCreate(lbl_1_data_47C[lbl_1_bss_C2], NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_FE, 0);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 0x14; var_r31++) {
|
||||
lbl_1_bss_D6[var_r31] = BoardModelCreate(0x7000A, NULL, 1);
|
||||
lbl_1_bss_D6[var_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 0x0A), NULL, 1);
|
||||
BoardModelVisibilitySet(lbl_1_bss_D6[var_r31], 0);
|
||||
}
|
||||
BoardPlayerPostTurnHookSet(lbl_1_bss_C0, (s32 (*)())fn_1_9B74);
|
||||
BoardPlayerPostTurnHookSet(lbl_1_bss_C0, (s32(*)())fn_1_9B74);
|
||||
lbl_1_bss_CC = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_9A68);
|
||||
lbl_1_bss_D0 = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, fn_1_9C24);
|
||||
lbl_1_bss_C6 = 0;
|
||||
lbl_1_bss_C4 = 0;
|
||||
}
|
||||
|
||||
void fn_1_9A68(omObjData* arg0) {
|
||||
void fn_1_9A68(omObjData *arg0)
|
||||
{
|
||||
if ((lbl_1_bss_C4 != 0) && (BoardMGDoneFlagGet() == 1)) {
|
||||
fn_1_9AF0();
|
||||
omDelObjEx(boardObjMan, arg0);
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_9AC0(void) {
|
||||
void fn_1_9AC0(void)
|
||||
{
|
||||
lbl_1_bss_C4 = 1;
|
||||
BoardMGExit();
|
||||
}
|
||||
|
||||
void fn_1_9AF0(void) {
|
||||
void fn_1_9AF0(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
omDelObjEx(boardObjMan, lbl_1_bss_D0);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 0x14; var_r31++) {
|
||||
BoardModelKill(lbl_1_bss_D6[var_r31]);
|
||||
}
|
||||
|
|
@ -106,7 +115,8 @@ void fn_1_9AF0(void) {
|
|||
BoardMGDoneFlagSet(0);
|
||||
}
|
||||
|
||||
void fn_1_9B74(void) {
|
||||
void fn_1_9B74(void)
|
||||
{
|
||||
HsfObject *var_r31;
|
||||
omDelObjEx(boardObjMan, lbl_1_bss_C8);
|
||||
BoardModelKill(lbl_1_bss_FE);
|
||||
|
|
@ -115,7 +125,8 @@ void fn_1_9B74(void) {
|
|||
BoardModelAttrReset(lbl_1_bss_14[1], 0x40000004);
|
||||
}
|
||||
|
||||
void fn_1_9C24(omObjData* arg0) {
|
||||
void fn_1_9C24(omObjData *arg0)
|
||||
{
|
||||
if (arg0->work[0] == 0) {
|
||||
arg0->work[0] = MGSeqCreate(3, 0);
|
||||
return;
|
||||
|
|
@ -125,7 +136,8 @@ void fn_1_9C24(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_9C98(dataCopy2* arg0) {
|
||||
void fn_1_9C98(dataCopy2 *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
Vec temp_r4;
|
||||
|
||||
|
|
@ -134,21 +146,22 @@ void fn_1_9C98(dataCopy2* arg0) {
|
|||
BoardModelPosSetV(arg0->unk_0A, &sp8);
|
||||
}
|
||||
|
||||
void fn_1_9D0C(omObjData* arg0) {
|
||||
void fn_1_9D0C(omObjData *arg0)
|
||||
{
|
||||
Vec sp1C;
|
||||
Vec sp10;
|
||||
f32 sp8[2];
|
||||
s32 var_r30;
|
||||
dataCopy2* temp_r31;
|
||||
dataCopy2 *temp_r31;
|
||||
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x34, 0x10000000);
|
||||
arg0->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x34, MEMORY_DEFAULT_NUM);
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_02 = 5;
|
||||
temp_r31->unk_04 = 0x3C;
|
||||
temp_r31->unk_00 = MGSeqCreate(1, temp_r31->unk_02, 0x120, 0x40);
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x27000E);
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x27, 0x0E));
|
||||
temp_r31->unk_06 = HuWinCreate(-10000.0f, 368.0f, sp8[0], sp8[1], 0);
|
||||
HuWinMesSet(temp_r31->unk_06, 0x27000E);
|
||||
HuWinMesSet(temp_r31->unk_06, MAKE_MESSID(0x27, 0x0E));
|
||||
HuWinBGTPLvlSet(temp_r31->unk_06, 0.0f);
|
||||
HuWinMesSpeedSet(temp_r31->unk_06, 0);
|
||||
temp_r31->unk_08 = 1;
|
||||
|
|
@ -158,7 +171,7 @@ void fn_1_9D0C(omObjData* arg0) {
|
|||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_14[1]), lbl_1_data_494[var_r30], &temp_r31->unk_0C[var_r30]);
|
||||
}
|
||||
temp_r31->unk_0A = BoardModelCreate(0x790019, NULL, 0);
|
||||
temp_r31->unk_0A = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x19), NULL, 0);
|
||||
BoardModelAttrSet(temp_r31->unk_0A, 0x40000001);
|
||||
sp1C.x = sp1C.y = sp1C.z = 1.5f;
|
||||
BoardModelScaleSetV(temp_r31->unk_0A, &sp1C);
|
||||
|
|
@ -168,7 +181,8 @@ void fn_1_9D0C(omObjData* arg0) {
|
|||
arg0->func = fn_1_9F24;
|
||||
}
|
||||
|
||||
void fn_1_9F24(omObjData* arg0) {
|
||||
void fn_1_9F24(omObjData *arg0)
|
||||
{
|
||||
Vec sp24;
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
|
|
@ -176,7 +190,7 @@ void fn_1_9F24(omObjData* arg0) {
|
|||
s16 sp8;
|
||||
f32 var_f31;
|
||||
u16 temp_r29;
|
||||
dataCopy2* temp_r31;
|
||||
dataCopy2 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (--temp_r31->unk_04 == 0) {
|
||||
|
|
@ -189,7 +203,8 @@ void fn_1_9F24(omObjData* arg0) {
|
|||
temp_r29 = GWPlayer[lbl_1_bss_C0].port;
|
||||
if (GWPlayer[lbl_1_bss_C0].com != 0) {
|
||||
fn_1_B2B0(arg0, &spA, &sp8);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp8 = HuPadDStkRep[temp_r29];
|
||||
spA = HuPadBtnDown[temp_r29];
|
||||
}
|
||||
|
|
@ -201,10 +216,12 @@ void fn_1_9F24(omObjData* arg0) {
|
|||
BoardPlayerMotionStart(lbl_1_bss_C0, lbl_1_bss_102[0], 0);
|
||||
BoardPlayerMotionSpeedSet(lbl_1_bss_C0, 0.5f);
|
||||
arg0->func = fn_1_A224;
|
||||
} else if ((temp_r31->unk_08 != 0) && ((sp8 & 1) != 0)) {
|
||||
}
|
||||
else if ((temp_r31->unk_08 != 0) && ((sp8 & 1) != 0)) {
|
||||
HuAudFXPlay(0);
|
||||
temp_r31->unk_08--;
|
||||
} else if ((temp_r31->unk_08 != 2) && ((sp8 & 2) != 0)) {
|
||||
}
|
||||
else if ((temp_r31->unk_08 != 2) && ((sp8 & 2) != 0)) {
|
||||
HuAudFXPlay(0);
|
||||
temp_r31->unk_08++;
|
||||
}
|
||||
|
|
@ -216,7 +233,8 @@ void fn_1_9F24(omObjData* arg0) {
|
|||
BoardModelPosSetV(temp_r31->unk_0A, &spC);
|
||||
}
|
||||
|
||||
void fn_1_A224(omObjData* arg0) {
|
||||
void fn_1_A224(omObjData *arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
f32 temp_f31;
|
||||
|
|
@ -239,21 +257,22 @@ void fn_1_A224(omObjData* arg0) {
|
|||
BoardPlayerMotionStart(lbl_1_bss_C0, lbl_1_bss_102[1], 0);
|
||||
BoardPlayerMotionSpeedSet(lbl_1_bss_C0, 0.5f);
|
||||
switch (lbl_1_bss_C2) {
|
||||
case 0:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 0xC, 0);
|
||||
break;
|
||||
case 1:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 4, 2);
|
||||
break;
|
||||
case 2:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 6, 6);
|
||||
break;
|
||||
case 0:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 0xC, 0);
|
||||
break;
|
||||
case 1:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 4, 2);
|
||||
break;
|
||||
case 2:
|
||||
omVibrate(lbl_1_bss_C0, 0x7FFF, 6, 6);
|
||||
break;
|
||||
}
|
||||
arg0->func = fn_1_A4F8;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_A4F8(omObjData* arg0) {
|
||||
void fn_1_A4F8(omObjData *arg0)
|
||||
{
|
||||
f32 temp_f31;
|
||||
|
||||
temp_f31 = BoardPlayerMotionMaxTimeGet(lbl_1_bss_C0);
|
||||
|
|
@ -264,13 +283,14 @@ void fn_1_A4F8(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_A5B0(omObjData* arg0) {
|
||||
void fn_1_A5B0(omObjData *arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
HsfObject* temp_r28;
|
||||
dataCopy2* temp_r30;
|
||||
omObjData* temp_r29;
|
||||
Vec* temp_r31;
|
||||
HsfObject *temp_r28;
|
||||
dataCopy2 *temp_r30;
|
||||
omObjData *temp_r29;
|
||||
Vec *temp_r31;
|
||||
f32 temp_f30;
|
||||
f32 var_f31;
|
||||
|
||||
|
|
@ -295,7 +315,7 @@ void fn_1_A5B0(omObjData* arg0) {
|
|||
BoardModelVisibilitySet(lbl_1_bss_D4, 1);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_D4, 110.0f);
|
||||
lbl_1_bss_C8 = temp_r29 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_B3C4);
|
||||
temp_r29->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, 0x10000000);
|
||||
temp_r29->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0xC, MEMORY_DEFAULT_NUM);
|
||||
temp_r31 = temp_r29->data;
|
||||
lbl_1_bss_C8->work[1] = 1;
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(lbl_1_bss_14[1]), "fish", &sp14);
|
||||
|
|
@ -323,7 +343,8 @@ void fn_1_A5B0(omObjData* arg0) {
|
|||
BoardModelMotionSpeedSet(lbl_1_bss_100, var_f31);
|
||||
}
|
||||
|
||||
void fn_1_A990(omObjData* arg0) {
|
||||
void fn_1_A990(omObjData *arg0)
|
||||
{
|
||||
Vec sp8;
|
||||
Process *var_r31;
|
||||
|
||||
|
|
@ -344,9 +365,10 @@ void fn_1_A990(omObjData* arg0) {
|
|||
}
|
||||
|
||||
s16 lbl_1_data_4B2[3] = { 20, 10, 5 };
|
||||
s32 lbl_1_data_4B8[3] = { 0x00270013, 0x00270014, 0x00270015 };
|
||||
s32 lbl_1_data_4B8[3] = { MAKE_MESSID(0x27, 0x13), MAKE_MESSID(0x27, 0x14), MAKE_MESSID(0x27, 0x15) };
|
||||
|
||||
void fn_1_AB24(void) {
|
||||
void fn_1_AB24(void)
|
||||
{
|
||||
Vec sp124[20];
|
||||
Vec sp34[20];
|
||||
Vec sp28;
|
||||
|
|
@ -359,7 +381,7 @@ void fn_1_AB24(void) {
|
|||
s32 var_r29;
|
||||
s32 var_r31;
|
||||
f32 var_f30;
|
||||
Vec* temp_r4;
|
||||
Vec *temp_r4;
|
||||
|
||||
temp_r30 = HuPrcCurrentGet()->user_data;
|
||||
spC = temp_r30->data;
|
||||
|
|
@ -367,7 +389,7 @@ void fn_1_AB24(void) {
|
|||
BoardModelPosGet(lbl_1_bss_14[5], &sp1C);
|
||||
var_f30 = (180.0 * (atan2((sp1C.z - sp28.z), (sp1C.x - sp28.x)) / M_PI));
|
||||
BoardPlayerMotBlendSet(lbl_1_bss_C0, var_f30, 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(lbl_1_bss_C0) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -381,12 +403,12 @@ void fn_1_AB24(void) {
|
|||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
BoardPlayerMotBlendSet(lbl_1_bss_C0, 0, 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(lbl_1_bss_C0) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardPlayerPosGet(lbl_1_bss_C0, &sp28);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < lbl_1_bss_C6; var_r31++) {
|
||||
BoardModelVisibilitySet(lbl_1_bss_D6[var_r31], 1);
|
||||
sp124[var_r31] = sp28;
|
||||
|
|
@ -400,7 +422,7 @@ void fn_1_AB24(void) {
|
|||
}
|
||||
var_f31 = -1.0f;
|
||||
var_r29 = 0;
|
||||
|
||||
|
||||
while (1) {
|
||||
for (var_r31 = 0; var_r31 < lbl_1_bss_C6; var_r31++) {
|
||||
if (var_r31 >= var_r29) {
|
||||
|
|
@ -429,11 +451,12 @@ void fn_1_AB24(void) {
|
|||
if (var_r29 == lbl_1_bss_C6) {
|
||||
BoardPlayerMotionShiftSet(lbl_1_bss_C0, 7, 0.0f, 10.0f, 0);
|
||||
break;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
while (BoardPlayerMotionEndCheck(lbl_1_bss_C0) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -444,7 +467,8 @@ void fn_1_AB24(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_B214(omObjData* arg0) {
|
||||
void fn_1_B214(omObjData *arg0)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
|
|
@ -456,8 +480,9 @@ void fn_1_B214(omObjData* arg0) {
|
|||
omDelObjEx(boardObjMan, arg0);
|
||||
}
|
||||
|
||||
void fn_1_B2B0(omObjData* arg0, u16* arg1, s16* arg2) {
|
||||
dataCopy2* temp_r31;
|
||||
void fn_1_B2B0(omObjData *arg0, u16 *arg1, s16 *arg2)
|
||||
{
|
||||
dataCopy2 *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
*arg1 = 0;
|
||||
|
|
@ -490,7 +515,8 @@ void fn_1_B2B0(omObjData* arg0, u16* arg1, s16* arg2) {
|
|||
*arg2 = 2;
|
||||
}
|
||||
|
||||
void fn_1_B3C4(omObjData* arg0) {
|
||||
void fn_1_B3C4(omObjData *arg0)
|
||||
{
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
|
|
@ -526,9 +552,10 @@ void fn_1_B3C4(omObjData* arg0) {
|
|||
if ((0.0f == BoardModelMotionTimeGet(lbl_1_bss_FE)) && (arg0->work[1] != 0)) {
|
||||
HuAudFXPlay(0x484);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
arg0->work[0] += 1;
|
||||
}
|
||||
BoardModelPosSetV(lbl_1_bss_FE, &sp20);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,16 @@
|
|||
#include "REL/w05Dll.h"
|
||||
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/audio.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/chrman.h"
|
||||
#include "game/pad.h"
|
||||
#include "game/frand.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/minigame_seq.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/pad.h"
|
||||
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/board/audio.h"
|
||||
|
||||
// data
|
||||
s32 lbl_1_data_310[2] = { 0x79, 0x7A };
|
||||
|
|
@ -24,22 +24,23 @@ s16 lbl_1_bss_A4[3];
|
|||
s16 lbl_1_bss_A2;
|
||||
s16 lbl_1_bss_9E[2];
|
||||
s16 lbl_1_bss_9C;
|
||||
Process* lbl_1_bss_98;
|
||||
omObjData* lbl_1_bss_94;
|
||||
omObjData* lbl_1_bss_90;
|
||||
omObjData* lbl_1_bss_8C;
|
||||
Process *lbl_1_bss_98;
|
||||
omObjData *lbl_1_bss_94;
|
||||
omObjData *lbl_1_bss_90;
|
||||
omObjData *lbl_1_bss_8C;
|
||||
s32 lbl_1_bss_88;
|
||||
s32 lbl_1_bss_7C[3];
|
||||
AnimData* lbl_1_bss_78;
|
||||
AnimData *lbl_1_bss_78;
|
||||
|
||||
|
||||
void fn_1_6B28(void) {
|
||||
void fn_1_6B28(void)
|
||||
{
|
||||
BoardModelAttrSet(*lbl_1_bss_14, 0x40000002U);
|
||||
lbl_1_bss_98 = NULL;
|
||||
lbl_1_bss_78 = NULL;
|
||||
}
|
||||
|
||||
void fn_1_6B7C(void) {
|
||||
void fn_1_6B7C(void)
|
||||
{
|
||||
Vec sp1C;
|
||||
Vec sp10;
|
||||
s32 spC;
|
||||
|
|
@ -51,7 +52,7 @@ void fn_1_6B7C(void) {
|
|||
for (var_r31 = 0; var_r31 < 2; var_r31++) {
|
||||
lbl_1_bss_9E[var_r31] = BoardPlayerMotionCreate(lbl_1_bss_B6, lbl_1_data_310[var_r31] | lbl_1_data_124[GWPlayer[lbl_1_bss_B6].character]);
|
||||
}
|
||||
lbl_1_bss_A2 = BoardModelCreate(0x790013, NULL, 0);
|
||||
lbl_1_bss_A2 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x13), NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_A2, 0);
|
||||
sp1C.x = sp1C.y = sp1C.z = 3.33333f;
|
||||
BoardModelScaleSetV(lbl_1_bss_A2, &sp1C);
|
||||
|
|
@ -63,11 +64,11 @@ void fn_1_6B7C(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardPlayerMotBlendSet(lbl_1_bss_B6, 0, 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(lbl_1_bss_B6) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
HuPrcSleep(0x3C);
|
||||
BoardAudSeqPause(0, 1, 0x3E8);
|
||||
HuAudFXPlay(0x30D);
|
||||
|
|
@ -94,14 +95,14 @@ void fn_1_6B7C(void) {
|
|||
BoardModelAttrReset(lbl_1_bss_14[0], 0x40000002);
|
||||
omVibrate(lbl_1_bss_B6, 0x7FFF, 6, 6);
|
||||
HuAudFXPlay(0x492);
|
||||
|
||||
|
||||
while (BoardModelMotionTimeGet(lbl_1_bss_14[0]) < 90.0f) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelMotionTimeSet(lbl_1_bss_14[0], 90.0f);
|
||||
HuPadRumbleStop(GWPlayer[lbl_1_bss_B6].port);
|
||||
BoardModelHookReset(lbl_1_bss_14[0]);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
BoardModelHookSet(lbl_1_bss_14[0], lbl_1_data_330[var_r31], lbl_1_bss_AA[var_r31]);
|
||||
}
|
||||
|
|
@ -111,15 +112,16 @@ void fn_1_6B7C(void) {
|
|||
lbl_1_bss_94 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_7284);
|
||||
lbl_1_bss_8C = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, fn_1_78A0);
|
||||
lbl_1_bss_90 = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, NULL);
|
||||
lbl_1_bss_90->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x14, 0x10000000U);
|
||||
lbl_1_bss_90->data = HuMemDirectMallocNum(HEAP_SYSTEM, 0x14, MEMORY_DEFAULT_NUM);
|
||||
if (lbl_1_bss_78 == NULL) {
|
||||
lbl_1_bss_78 = HuSprAnimRead(HuDataSelHeapReadNum(0x120000, 0x10000000, HEAP_DATA));
|
||||
lbl_1_bss_78 = HuSprAnimReadFile(DATA_MAKE_NUM(DATADIR_EFFECT, 0x00));
|
||||
HuSprAnimLock(lbl_1_bss_78);
|
||||
}
|
||||
lbl_1_bss_9C = 0;
|
||||
}
|
||||
|
||||
void fn_1_7284(omObjData* arg0) {
|
||||
void fn_1_7284(omObjData *arg0)
|
||||
{
|
||||
if ((lbl_1_bss_9C != 0) && (BoardMGDoneFlagGet() == 1)) {
|
||||
fn_1_77B0();
|
||||
fn_1_7314();
|
||||
|
|
@ -128,12 +130,14 @@ void fn_1_7284(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_72E4(void) {
|
||||
void fn_1_72E4(void)
|
||||
{
|
||||
lbl_1_bss_9C = 1;
|
||||
BoardMGExit();
|
||||
}
|
||||
|
||||
void fn_1_7314(void) {
|
||||
void fn_1_7314(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
BoardModelHookReset(lbl_1_bss_14[0]);
|
||||
|
|
@ -148,12 +152,14 @@ void fn_1_7314(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_73C0(void) {
|
||||
void fn_1_73C0(void)
|
||||
{
|
||||
omDelObjEx(boardObjMan, lbl_1_bss_90);
|
||||
BoardMGDoneFlagSet(0);
|
||||
}
|
||||
|
||||
void fn_1_7400(void) {
|
||||
void fn_1_7400(void)
|
||||
{
|
||||
|
||||
while (BoardModelMotionTimeGet(lbl_1_bss_14[0]) < 30.0f) {
|
||||
HuPrcVSleep();
|
||||
|
|
@ -162,42 +168,42 @@ void fn_1_7400(void) {
|
|||
BoardModelMotionTimeSet(lbl_1_bss_14[0], 30.0f);
|
||||
lbl_1_bss_98 = HuPrcCreate(fn_1_896C, 0x2004, 0x1000, 0);
|
||||
HuPrcDestructorSet2(lbl_1_bss_98, fn_1_91DC);
|
||||
lbl_1_bss_98->user_data = (void* )7;
|
||||
lbl_1_bss_98->user_data = (void *)7;
|
||||
HuPrcEnd();
|
||||
}
|
||||
|
||||
s32 lbl_1_data_350[14] = {
|
||||
0x0007006D, 0x0007006E, 0x0007006F, 0x00070070,
|
||||
0x00070071, 0x00070072, 0x00070073, 0x00070074,
|
||||
0x00070076, 0x00070077, 0x00070078, 0x00070079,
|
||||
0x0007007A, 0x0007007B
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x6D),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x6E),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x6F),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x70),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x71),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x72),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x73),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x74),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x76),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x77),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x78),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x79),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x7A),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x7B),
|
||||
};
|
||||
|
||||
s16 lbl_1_data_388[92] = {
|
||||
0, 1, -1, 2, 0, -1, 1, 2,
|
||||
0, -1, 2, 1, 0, 2, -1, 1,
|
||||
0, 2, 1, -1, 1, 2, -1, 0,
|
||||
1, 2, 0, -1, 1, -1, 0, 2,
|
||||
1, -1, 2, 0, 1, 0, 2, -1,
|
||||
1, 0, -1, 2, 2, -1, 0, 1,
|
||||
2, -1, 1, 0, 2, 0, 1, -1,
|
||||
2, 0, -1, 1, 2, 1, -1, 0,
|
||||
2, 1, 0, -1, -1, 0, 1, 2,
|
||||
-1, 0, 2, 1, -1, 1, 2, 0,
|
||||
-1, 1, 0, 2, -1, 2, 0, 1,
|
||||
-1, 2, 1, 0
|
||||
};
|
||||
s16 lbl_1_data_388[92] = { 0, 1, -1, 2, 0, -1, 1, 2, 0, -1, 2, 1, 0, 2, -1, 1, 0, 2, 1, -1, 1, 2, -1, 0, 1, 2, 0, -1, 1, -1, 0, 2, 1, -1, 2, 0, 1, 0,
|
||||
2, -1, 1, 0, -1, 2, 2, -1, 0, 1, 2, -1, 1, 0, 2, 0, 1, -1, 2, 0, -1, 1, 2, 1, -1, 0, 2, 1, 0, -1, -1, 0, 1, 2, -1, 0, 2, 1, -1, 1, 2, 0, -1, 1, 0,
|
||||
2, -1, 2, 0, 1, -1, 2, 1, 0 };
|
||||
|
||||
f32 lbl_1_data_440[3] = {-90.0f, 0.0f, 90.0f};
|
||||
f32 lbl_1_data_440[3] = { -90.0f, 0.0f, 90.0f };
|
||||
|
||||
void fn_1_74D0(s16 arg0[3]) {
|
||||
void fn_1_74D0(s16 arg0[3])
|
||||
{
|
||||
f32 temp_f31;
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_B0[var_r31] = arg0[var_r31];
|
||||
}
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_A4[var_r31] = BoardModelCreate(lbl_1_data_350[lbl_1_bss_B0[var_r31]], NULL, 0);
|
||||
if (lbl_1_bss_B0[var_r31] == 0xB) {
|
||||
|
|
@ -214,12 +220,12 @@ void fn_1_74D0(s16 arg0[3]) {
|
|||
}
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
lbl_1_bss_AA[var_r31] = BoardModelCreate(0x790012, NULL, 1);
|
||||
lbl_1_bss_AA[var_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x12), NULL, 1);
|
||||
BoardModelHookSet(lbl_1_bss_14[0], lbl_1_data_330[var_r31], lbl_1_bss_AA[var_r31]);
|
||||
BoardModelAttrSet(lbl_1_bss_AA[var_r31], 0x40000002);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_AA[var_r31], 10.0f);
|
||||
}
|
||||
|
||||
|
||||
HuAudFXPlay(0x488);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_14[0], 0.0f);
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_14[0], 0, 0x1E);
|
||||
|
|
@ -227,7 +233,8 @@ void fn_1_74D0(s16 arg0[3]) {
|
|||
HuPrcCreate(fn_1_7400, 0x2004, 0x1000, 0);
|
||||
}
|
||||
|
||||
void fn_1_77B0(void) {
|
||||
void fn_1_77B0(void)
|
||||
{
|
||||
HuAudFXPlay(0x489);
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_14[0], 0x5A, 0x78);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_14[0], 90.0f);
|
||||
|
|
@ -243,7 +250,8 @@ void fn_1_77B0(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_78A0(omObjData* arg0) {
|
||||
void fn_1_78A0(omObjData *arg0)
|
||||
{
|
||||
if (arg0->work[0] == 0) {
|
||||
arg0->work[0] = MGSeqCreate(3, 0);
|
||||
return;
|
||||
|
|
@ -254,7 +262,8 @@ void fn_1_78A0(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_7928(omObjData* arg0) {
|
||||
void fn_1_7928(omObjData *arg0)
|
||||
{
|
||||
Process *temp;
|
||||
if (((u32)lbl_1_bss_98->user_data & 0x10) != 0) {
|
||||
temp = HuPrcCreate(fn_1_799C, 0x2004, 0x1800, 0);
|
||||
|
|
@ -263,7 +272,8 @@ void fn_1_7928(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_799C(void) {
|
||||
void fn_1_799C(void)
|
||||
{
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
Vec sp14;
|
||||
|
|
@ -275,7 +285,7 @@ void fn_1_799C(void) {
|
|||
s32 temp_r31;
|
||||
s32 var_r28;
|
||||
s32 var_r29;
|
||||
omObjData* temp_r30;
|
||||
omObjData *temp_r30;
|
||||
|
||||
temp_r30 = HuPrcCurrentGet()->user_data;
|
||||
BoardPlayerPosGet(lbl_1_bss_B6, &sp2C);
|
||||
|
|
@ -285,7 +295,7 @@ void fn_1_799C(void) {
|
|||
PSVECSubtract(&sp2C, &sp20, &sp14);
|
||||
temp_f30 = PSVECMag(&sp14);
|
||||
PSVECScale(&sp14, &sp14, 0.016666668);
|
||||
|
||||
|
||||
for (var_r29 = 0; var_r29 < 0x3C; var_r29++) {
|
||||
BoardModelPosGet(lbl_1_bss_A4[temp_r31], &sp20);
|
||||
PSVECAdd(&sp20, &sp14, &sp20);
|
||||
|
|
@ -344,7 +354,7 @@ void fn_1_799C(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
HuPrcSleep(0x1E);
|
||||
|
||||
|
||||
while (HuAudSStreamStatGet(temp_r27) != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -356,13 +366,15 @@ void fn_1_799C(void) {
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
void fn_1_7E4C(omObjData* arg0) {
|
||||
void fn_1_7E4C(omObjData *arg0)
|
||||
{
|
||||
lbl_1_bss_9C = 1;
|
||||
BoardMGExit();
|
||||
omDelObjEx(boardObjMan, arg0);
|
||||
}
|
||||
|
||||
void fn_1_7E94(dataCopy* arg0) {
|
||||
void fn_1_7E94(dataCopy *arg0)
|
||||
{
|
||||
if (--arg0->unk_02 == 0) {
|
||||
arg0->unk_02 = 0x3C;
|
||||
if (--arg0->unk_00 >= 0) {
|
||||
|
|
@ -371,19 +383,20 @@ void fn_1_7E94(dataCopy* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_7F04(omObjData* arg0) {
|
||||
void fn_1_7F04(omObjData *arg0)
|
||||
{
|
||||
f32 sp8[2];
|
||||
s32 var_r30;
|
||||
s32 var_r28;
|
||||
dataCopy* temp_r31;
|
||||
dataCopy *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
temp_r31->unk_00 = 5;
|
||||
temp_r31->unk_02 = 0x3C;
|
||||
temp_r31->unk_04 = MGSeqCreate(1, temp_r31->unk_00, 0x120, 0x40);
|
||||
HuWinMesMaxSizeGet(1, sp8, 0x27000E);
|
||||
HuWinMesMaxSizeGet(1, sp8, MAKE_MESSID(0x27, 0x0E));
|
||||
temp_r31->unk_06 = HuWinCreate(-10000.0f, 344.0f, sp8[0], sp8[1], 0);
|
||||
HuWinMesSet(temp_r31->unk_06, 0x27000E);
|
||||
HuWinMesSet(temp_r31->unk_06, MAKE_MESSID(0x27, 0x0E));
|
||||
HuWinBGTPLvlSet(temp_r31->unk_06, 0.0f);
|
||||
HuWinMesSpeedSet(temp_r31->unk_06, 0);
|
||||
temp_r31->unk_08 = 1;
|
||||
|
|
@ -409,26 +422,28 @@ void fn_1_7F04(omObjData* arg0) {
|
|||
arg0->func = fn_1_80D8;
|
||||
}
|
||||
|
||||
void fn_1_80D8(omObjData* arg0) {
|
||||
void fn_1_80D8(omObjData *arg0)
|
||||
{
|
||||
s32 sp10;
|
||||
s32 spC;
|
||||
s32 sp8;
|
||||
f32 var_f31;
|
||||
s32 temp_r30;
|
||||
s32 var_r29;
|
||||
dataCopy* temp_r31;
|
||||
dataCopy *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
fn_1_7E94(temp_r31);
|
||||
temp_r30 = GWPlayer[lbl_1_bss_B6].port;
|
||||
if (GWPlayer[lbl_1_bss_B6].com != 0) {
|
||||
fn_1_8798(temp_r31, &sp10, &spC, &sp8);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
sp10 = HuPadStkX[temp_r30];
|
||||
spC = HuPadStkY[temp_r30];
|
||||
sp8 = HuPadBtnDown[temp_r30];
|
||||
}
|
||||
|
||||
|
||||
if (((sp8 & 0x100) != 0) || (temp_r31->unk_00 < 0)) {
|
||||
MGSeqParamSet(temp_r31->unk_04, 2, -1);
|
||||
HuWinKill(temp_r31->unk_06);
|
||||
|
|
@ -442,12 +457,14 @@ void fn_1_80D8(omObjData* arg0) {
|
|||
if (var_f31 < 0.0f) {
|
||||
var_f31 += 360.0f;
|
||||
}
|
||||
|
||||
|
||||
if ((var_f31 > 170.0f) && (var_f31 < 190.0f)) {
|
||||
var_r29 = 0;
|
||||
} else if ((var_f31 > 260.0f) && (var_f31 < 280.0f)) {
|
||||
}
|
||||
else if ((var_f31 > 260.0f) && (var_f31 < 280.0f)) {
|
||||
var_r29 = 1;
|
||||
} else if ((var_f31 < 10.0f) || (var_f31 > 350.0f)) {
|
||||
}
|
||||
else if ((var_f31 < 10.0f) || (var_f31 > 350.0f)) {
|
||||
var_r29 = 2;
|
||||
}
|
||||
if (var_r29 != -1) {
|
||||
|
|
@ -457,9 +474,10 @@ void fn_1_80D8(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_8410(omObjData* arg0) {
|
||||
void fn_1_8410(omObjData *arg0)
|
||||
{
|
||||
s32 temp_r30;
|
||||
dataCopy* temp_r31;
|
||||
dataCopy *temp_r31;
|
||||
|
||||
temp_r31 = arg0->data;
|
||||
if (BoardPlayerMotionTimeGet(lbl_1_bss_B6) >= 30.0f) {
|
||||
|
|
@ -470,13 +488,14 @@ void fn_1_8410(omObjData* arg0) {
|
|||
temp_r30 |= 0x1C0;
|
||||
lbl_1_bss_98 = HuPrcCreate(fn_1_896C, 0x2004, 0x4000, 0);
|
||||
HuPrcDestructorSet2(lbl_1_bss_98, fn_1_91DC);
|
||||
lbl_1_bss_98->user_data = (void*)temp_r30;
|
||||
lbl_1_bss_98->user_data = (void *)temp_r30;
|
||||
lbl_1_bss_8C->work[0] = temp_r31->unk_08;
|
||||
arg0->func = fn_1_850C;
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_850C(omObjData* arg0) {
|
||||
void fn_1_850C(omObjData *arg0)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
f32 temp_f31;
|
||||
|
|
@ -495,7 +514,8 @@ void fn_1_850C(omObjData* arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_8668(omObjData* arg0) {
|
||||
void fn_1_8668(omObjData *arg0)
|
||||
{
|
||||
s32 var_r30;
|
||||
|
||||
if (arg0->work[0] == 0) {
|
||||
|
|
@ -504,7 +524,7 @@ void fn_1_8668(omObjData* arg0) {
|
|||
arg0->func = NULL;
|
||||
lbl_1_bss_8C->func = fn_1_7928;
|
||||
BoardModelKill(lbl_1_bss_A2);
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 2; var_r30++) {
|
||||
BoardPlayerMotionKill(lbl_1_bss_B6, lbl_1_bss_9E[var_r30]);
|
||||
}
|
||||
|
|
@ -513,7 +533,8 @@ void fn_1_8668(omObjData* arg0) {
|
|||
arg0->work[0] -= 1;
|
||||
}
|
||||
|
||||
void fn_1_8798(dataCopy* arg0, s32* arg1, s32* arg2, s32* arg3) {
|
||||
void fn_1_8798(dataCopy *arg0, s32 *arg1, s32 *arg2, s32 *arg3)
|
||||
{
|
||||
*arg1 = *arg2 = *arg3 = 0;
|
||||
if (arg0->unk_10 != 0) {
|
||||
arg0->unk_10 -= 1;
|
||||
|
|
@ -532,17 +553,19 @@ void fn_1_8798(dataCopy* arg0, s32* arg1, s32* arg2, s32* arg3) {
|
|||
*arg2 = (frandBool() * 0x8C) - 0x46;
|
||||
}
|
||||
|
||||
void* fn_1_8884(void) {
|
||||
void *fn_1_8884(void)
|
||||
{
|
||||
if (lbl_1_bss_98 == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
return lbl_1_bss_98->user_data;
|
||||
}
|
||||
|
||||
void fn_1_88B8(void) {
|
||||
void fn_1_88B8(void)
|
||||
{
|
||||
s32 userData = (s32)lbl_1_bss_98->user_data;
|
||||
userData |= 8;
|
||||
lbl_1_bss_98->user_data = (void* ) (userData);
|
||||
lbl_1_bss_98->user_data = (void *)(userData);
|
||||
|
||||
while (((u32)fn_1_8884() & 0x20) == 0) {
|
||||
HuPrcVSleep();
|
||||
|
|
@ -551,7 +574,8 @@ void fn_1_88B8(void) {
|
|||
lbl_1_bss_98 = NULL;
|
||||
}
|
||||
|
||||
void fn_1_896C(void) {
|
||||
void fn_1_896C(void)
|
||||
{
|
||||
Vec sp18;
|
||||
Vec spC;
|
||||
f32 sp8;
|
||||
|
|
@ -565,7 +589,7 @@ void fn_1_896C(void) {
|
|||
ParticleData *var_r27;
|
||||
|
||||
temp_r30 = (u32)HuPrcCurrentGet()->user_data;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = (1 << var_r31);
|
||||
if ((temp_r30 & var_r29) != 0) {
|
||||
|
|
@ -573,7 +597,8 @@ void fn_1_896C(void) {
|
|||
if ((temp_r30 & 0x80) != 0) {
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_AA[var_r31], 0, 0x28);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_AA[var_r31], 0.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardModelMotionStartEndSet(lbl_1_bss_AA[var_r31], 0xA, 0x28);
|
||||
BoardModelMotionTimeSet(lbl_1_bss_AA[var_r31], 10.0f);
|
||||
}
|
||||
|
|
@ -581,11 +606,12 @@ void fn_1_896C(void) {
|
|||
}
|
||||
if ((temp_r30 & 0x80) != 0) {
|
||||
HuPrcSleep(0x19);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuPrcSleep(0xF);
|
||||
}
|
||||
spC.x = spC.y = spC.z = 0.0f;
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = (1 << var_r31);
|
||||
if ((temp_r30 & var_r29) != 0) {
|
||||
|
|
@ -606,7 +632,8 @@ void fn_1_896C(void) {
|
|||
if ((temp_r30 & 0x100) != 0) {
|
||||
lbl_1_bss_88 = HuAudFXPlay(0x35F);
|
||||
HuAudFXPlay(0x310);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
HuAudFXPlay(0x362);
|
||||
}
|
||||
}
|
||||
|
|
@ -614,7 +641,7 @@ void fn_1_896C(void) {
|
|||
temp_f29 = 150.0f + sp18.y;
|
||||
sp8 = 0.0f;
|
||||
var_f31 = 12.0f;
|
||||
|
||||
|
||||
while (1) {
|
||||
for (var_r28 = 0, var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = (1 << var_r31);
|
||||
|
|
@ -626,7 +653,7 @@ void fn_1_896C(void) {
|
|||
}
|
||||
|
||||
spC.x = spC.y = spC.z = sp8;
|
||||
BoardModelScaleSetV(lbl_1_bss_A4[var_r31], (Vec* ) &sp8); //!
|
||||
BoardModelScaleSetV(lbl_1_bss_A4[var_r31], (Vec *)&sp8); //!
|
||||
BoardModelPosGet(lbl_1_bss_A4[var_r31], &sp18);
|
||||
sp18.y += var_f31;
|
||||
if (sp18.y >= temp_f29) {
|
||||
|
|
@ -639,7 +666,8 @@ void fn_1_896C(void) {
|
|||
var_f31 *= 0.95f;
|
||||
if (var_r28 > 0) {
|
||||
HuPrcVSleep();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -650,12 +678,12 @@ void fn_1_896C(void) {
|
|||
BoardModelScaleSetV(lbl_1_bss_A4[var_r31], &spC);
|
||||
}
|
||||
}
|
||||
temp_r30 = (u32) HuPrcCurrentGet()->user_data | 0x10;
|
||||
HuPrcCurrentGet()->user_data = (void*)temp_r30;
|
||||
temp_r30 = (u32)HuPrcCurrentGet()->user_data | 0x10;
|
||||
HuPrcCurrentGet()->user_data = (void *)temp_r30;
|
||||
var_f30 = 0.0f;
|
||||
|
||||
while (1) {
|
||||
temp_r30 = (u32) HuPrcCurrentGet()->user_data;
|
||||
temp_r30 = (u32)HuPrcCurrentGet()->user_data;
|
||||
if ((temp_r30 & 8) == 0) {
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = (1 << var_r31);
|
||||
|
|
@ -670,7 +698,8 @@ void fn_1_896C(void) {
|
|||
var_f30 -= 360.0f;
|
||||
}
|
||||
HuPrcVSleep();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -689,7 +718,7 @@ void fn_1_896C(void) {
|
|||
sp8 = 0.0f;
|
||||
}
|
||||
spC.x = spC.y = spC.z = sp8;
|
||||
BoardModelScaleSetV(lbl_1_bss_A4[var_r31], (Vec* ) &sp8); //!
|
||||
BoardModelScaleSetV(lbl_1_bss_A4[var_r31], (Vec *)&sp8); //!
|
||||
BoardModelPosGet(lbl_1_bss_A4[var_r31], &sp18);
|
||||
sp18.y += var_f31;
|
||||
if (sp18.y <= (temp_f29 - 150.0f)) {
|
||||
|
|
@ -704,11 +733,12 @@ void fn_1_896C(void) {
|
|||
var_f31 *= 0.98f;
|
||||
if (var_r28 > 0) {
|
||||
HuPrcVSleep();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
var_r29 = (1 << var_r31);
|
||||
if ((temp_r30 & var_r29) != 0) {
|
||||
|
|
@ -719,13 +749,14 @@ void fn_1_896C(void) {
|
|||
}
|
||||
temp_r30 = (u32)HuPrcCurrentGet()->user_data;
|
||||
temp_r30 |= 0x20;
|
||||
HuPrcCurrentGet()->user_data = (void*)temp_r30;
|
||||
HuPrcCurrentGet()->user_data = (void *)temp_r30;
|
||||
while (1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
void fn_1_91DC(void) {
|
||||
void fn_1_91DC(void)
|
||||
{
|
||||
u32 temp_r30;
|
||||
s32 var_r29;
|
||||
s32 var_r31;
|
||||
|
|
@ -741,9 +772,10 @@ void fn_1_91DC(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void fn_1_9268(ModelData* model, ParticleData* particle, f32 (*matrix)[4]) {
|
||||
void fn_1_9268(ModelData *model, ParticleData *particle, f32 (*matrix)[4])
|
||||
{
|
||||
Vec sp8;
|
||||
HsfanimStruct01* var_r31;
|
||||
HsfanimStruct01 *var_r31;
|
||||
f32 temp_f30;
|
||||
f32 temp_f29;
|
||||
f32 temp_f31;
|
||||
|
|
@ -761,12 +793,13 @@ void fn_1_9268(ModelData* model, ParticleData* particle, f32 (*matrix)[4]) {
|
|||
BoardModelScaleGet(particle->unk_02, &sp8);
|
||||
temp_f31 = sp8.x;
|
||||
BoardModelPosGet(particle->unk_02, &sp8);
|
||||
|
||||
|
||||
for (var_r29 = 0; var_r29 < 0x16; var_r29++) {
|
||||
var_r31 = particle->unk_48;
|
||||
|
||||
for (var_r28 = 0; var_r28 < particle->unk_30; var_r28++, var_r31++) {
|
||||
if (var_r31->unk2C == 0.0f) break;
|
||||
if (var_r31->unk2C == 0.0f)
|
||||
break;
|
||||
}
|
||||
if (var_r28 != particle->unk_30) {
|
||||
temp_f30 = 360.0f * (0.003921569f * (s32)(frand() & 0xFF));
|
||||
|
|
@ -790,4 +823,4 @@ void fn_1_9268(ModelData* model, ParticleData* particle, f32 (*matrix)[4]) {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
#include "game/board/player.h"
|
||||
|
||||
// data
|
||||
s32 lbl_1_data_1A8[3] = { 0x0079001F, 0x00790020, 0xFFFFFFFF };
|
||||
s32 lbl_1_data_1A8[3] = { DATA_MAKE_NUM(DATADIR_W05, 0x1F), DATA_MAKE_NUM(DATADIR_W05, 0x20), DATA_NUM_LISTEND };
|
||||
char *lbl_1_data_1C4[2] = { "monkyA", "monkyB"};
|
||||
s32 lbl_1_data_1CC[3] = { 0x78, 0x6F, 0x70 };
|
||||
|
||||
|
|
@ -29,7 +29,7 @@ void fn_1_2B40(void) {
|
|||
BoardModelMotionTimeSet(lbl_1_bss_14[3], 0.0f);
|
||||
|
||||
for (var_r31 = 0; var_r31 < 2; var_r31++) {
|
||||
lbl_1_bss_4E[var_r31] = BoardModelCreate(0x79001E, lbl_1_data_1A8, 0);
|
||||
lbl_1_bss_4E[var_r31] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x1E), lbl_1_data_1A8, 0);
|
||||
BoardModelAttrSet(lbl_1_bss_4E[var_r31], 0x40000001);
|
||||
}
|
||||
BoardModelHookSet(lbl_1_bss_14[2], lbl_1_data_1C4[0], lbl_1_bss_4E[0]);
|
||||
|
|
@ -53,8 +53,8 @@ void fn_1_2C7C(s32 arg0) {
|
|||
BoardModelPosGet(lbl_1_bss_4A, &lbl_1_bss_38);
|
||||
lbl_1_bss_38.x -= 140.0f;
|
||||
}
|
||||
lbl_1_bss_44[0] = BoardModelCreate(0x79001C, NULL, 0);
|
||||
lbl_1_bss_44[1] = BoardModelCreate(0x79001D, NULL, 0);
|
||||
lbl_1_bss_44[0] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x1C), NULL, 0);
|
||||
lbl_1_bss_44[1] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W05, 0x1D), NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_44[0], 0);
|
||||
BoardModelVisibilitySet(lbl_1_bss_44[1], 0);
|
||||
BoardModelAttrSet(lbl_1_bss_44[0], 0x40000001);
|
||||
|
|
|
|||
|
|
@ -422,12 +422,12 @@ static void fn_1_9E5C(s32 arg0) {
|
|||
HuAudFXPlay(0x51);
|
||||
var_r30 = BoardPlayerCoinsGet(arg0);
|
||||
if (var_r30 != 0) {
|
||||
var_r29 = 0x300003;
|
||||
var_r29 = MAKE_MESSID(48, 3);
|
||||
var_r28 = -1;
|
||||
var_r30 = BoardPlayerCoinsGet(arg0) - (var_r30 >> 1);
|
||||
var_r25 = 8;
|
||||
} else {
|
||||
var_r29 = 0x300005;
|
||||
var_r29 = MAKE_MESSID(48, 5);
|
||||
var_r28 = 1;
|
||||
var_r30 = 50;
|
||||
var_r25 = 7;
|
||||
|
|
@ -466,9 +466,9 @@ static void fn_1_9E5C(s32 arg0) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
if (var_r28 == -1) {
|
||||
var_r29 = 0x300004;
|
||||
var_r29 = MAKE_MESSID(48, 4);
|
||||
} else {
|
||||
var_r29 = 0x300006;
|
||||
var_r29 = MAKE_MESSID(48, 6);
|
||||
}
|
||||
BoardModelMotionShiftSet(lbl_1_data_498, 3, 0.0f, 8.0f, 0);
|
||||
HuAudFXPlay(0x3A);
|
||||
|
|
@ -801,7 +801,7 @@ static void fn_1_B27C(s32 arg0) {
|
|||
BoardMusStart(1, 6, 0x7F, 0);
|
||||
BoardModelMotionShiftSet(lbl_1_data_498, 7, 0.0f, 8.0f, 0);
|
||||
HuPrcSleep(8);
|
||||
var_r29 = 0x300026;
|
||||
var_r29 = MAKE_MESSID(48, 38);
|
||||
var_r27 = 50;
|
||||
BoardWinCreate(2, var_r29, 5);
|
||||
BoardWinWait();
|
||||
|
|
@ -820,7 +820,7 @@ static void fn_1_B27C(s32 arg0) {
|
|||
while (!BoardModelMotionEndCheck(lbl_1_data_498)) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
var_r29 = 0x300027;
|
||||
var_r29 = MAKE_MESSID(48, 39);
|
||||
BoardModelMotionShiftSet(lbl_1_data_498, 3, 0.0f, 8.0f, 0);
|
||||
HuAudFXPlay(0x3A);
|
||||
BoardWinCreate(2, var_r29, 5);
|
||||
|
|
@ -1222,7 +1222,7 @@ void fn_1_CD0C(void) {
|
|||
while (!BoardViewMoveCheck()) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardWinCreate(3, 0x300001, -1);
|
||||
BoardWinCreate(3, MAKE_MESSID(48, 1), -1);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -134,9 +134,9 @@ void BoardCreate(void)
|
|||
BoardBooHouseHostSet(boardBooHouseHostMdl);
|
||||
BoardShopHostSet(boardShopHostMdl);
|
||||
BoardLotteryHostSet(boardLotteryHostMdl);
|
||||
HuWinMesMaxSizeGet(1, size, 0x2E003A);
|
||||
HuWinMesMaxSizeGet(1, size, MAKE_MESSID(0x2E, 0x3A));
|
||||
tutorialExitWin = HuWinCreate(-10000.0f, 390.0f, size[0], size[1], 1);
|
||||
HuWinMesSet(tutorialExitWin, 0x2E003A);
|
||||
HuWinMesSet(tutorialExitWin, MAKE_MESSID(0x2E, 0x3A));
|
||||
HuWinMesSpeedSet(tutorialExitWin, 0);
|
||||
HuWinPriSet(tutorialExitWin, 1);
|
||||
HuWinMesPalSet(tutorialExitWin, 7, 0, 0, 0);
|
||||
|
|
|
|||
|
|
@ -17,14 +17,14 @@ s16 lbl_1_data_6 = 0xFFFF;
|
|||
s16 lbl_1_data_8 = 0xFFFF;
|
||||
s16 lbl_1_data_A = 0xFFFF;
|
||||
s32 lbl_1_data_C[] = {
|
||||
0x005F0000,
|
||||
0x001A0000,
|
||||
0x006D0000,
|
||||
0x008A0000,
|
||||
0x00850000,
|
||||
0x00110000,
|
||||
0x000D0000,
|
||||
0x00810000,
|
||||
DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x00),
|
||||
};
|
||||
|
||||
s32 unkMotTbl[] = { DATA_MAKE_NUM(DATADIR_BGUEST, 42), -1 };
|
||||
|
|
@ -50,12 +50,12 @@ void BoardCreate(void)
|
|||
lbl_1_bss_0->unk_04 = 0;
|
||||
lbl_1_bss_0->unk_06 = 0;
|
||||
BoardSpaceInit(DATA_MAKE_NUM(DATADIR_W20, 0));
|
||||
lbl_1_data_0 = BoardModelCreate(0x7C0001, NULL, 0);
|
||||
lbl_1_data_0 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W20, 0x01), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_0, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_0, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_0, 0, 0x40000001);
|
||||
BoardModelMotionSpeedSet(lbl_1_data_0, 1.0f);
|
||||
lbl_1_data_2 = BoardModelCreate(0x7C0002, NULL, 0);
|
||||
lbl_1_data_2 = BoardModelCreate(DATA_MAKE_NUM(DATADIR_W20, 0x02), NULL, 0);
|
||||
fn_8006DDE8(lbl_1_data_2, -1.0f);
|
||||
BoardModelPosSet(lbl_1_data_2, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelMotionStart(lbl_1_data_2, 0, 0x40000001);
|
||||
|
|
|
|||
|
|
@ -3,17 +3,56 @@
|
|||
#include "REL/ztardll.h"
|
||||
|
||||
s32 lbl_1_data_B0[0xC6] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0x150000, 0x150001, 0x150002, 0x150003, 0x150004, 0x150005, 0x150006, 0x150007, 0x150008, 0x150009, 0x150000, 0x150000,
|
||||
0x150000, 0x15000A, 0x150000, 0x150000, 0x150000, 0x15000F, 0x150010, 0x150011, 0x150012, 0x150013, 0x150014, 0x150015, 0x150016, 0x150017,
|
||||
0x150018, 0x150019, 0x15001A, 0x15001B, 0x15001C, 0x15001D, 0x15001E, 0x15001F, 0x150020, 0x150021, 0x150022, 0x150023, 0x150024, 0x150025,
|
||||
0x150026, 0x150027, 0x150028, 0x15001D, 0x15000D, 0x15001D, 0x15001D, 0x15001D, 0x15001D, 0x150029, 0x15002A, 0x15002B, 0x15002C, 0x15002D,
|
||||
0x15002E, 0x15002F, 0x150030, 0x150031, 0x150032, 0x150033, 0x150034, 0x150035, 0x150036, 0x150037, 0x150038, 0x150039, 0x15003A, 0x15003B,
|
||||
0x15003C, 0x15003D, 0x15003E, 0x15003F, 0x150040, 0x150041, 0x150042, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000,
|
||||
0x150000, 0x150000, 0x15000A, 0x15000E, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000,
|
||||
0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000,
|
||||
0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000,
|
||||
0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000,
|
||||
0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x150000, 0x15000B, 0x15000C, 0x150000, 0x150000 };
|
||||
0, 0, 0, 0, 0, 0, 0, DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x01), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x02),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x03), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x04), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x05),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x06), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x07), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x08),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x09), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0A), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0F),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x10), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x11), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x12),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x13), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x14), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x15),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x16), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x17), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x18),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x19), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1A), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1B),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1C), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1E),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1F), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x20), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x21),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x22), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x23), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x25), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x26), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x28), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0D),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x1D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x29), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2A),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2B), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2C), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2D),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2E), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x2F), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x30),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x31), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x32), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x33),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x34), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x35), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x36),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x37), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x38), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x39),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3A), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3B), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3C),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3D), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3E), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x3F),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x40), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x41), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x42),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0A), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0E), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0B),
|
||||
DATA_MAKE_NUM(DATADIR_INSTFONT, 0x0C), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00), DATA_MAKE_NUM(DATADIR_INSTFONT, 0x00) };
|
||||
|
||||
s32 fn_1_7754(ZtarDllUnkStruct *arg0, u8 *arg1)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ void fn_1_424(void)
|
|||
var_r27 = 0;
|
||||
fn_1_7D6C(lbl_1_bss_68);
|
||||
HuPrcVSleep();
|
||||
HuDataDirClose(0x640000);
|
||||
HuDataDirClose(DATADIR_MPEX);
|
||||
lbl_1_bss_5A = 0;
|
||||
if (mgQuitExtraF != 0) {
|
||||
mgQuitExtraF = 0;
|
||||
|
|
@ -192,14 +192,14 @@ block_7:
|
|||
}
|
||||
loop_19:
|
||||
fn_1_11020();
|
||||
fn_1_11264(0x330024, 0, 0);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x24), 0, 0);
|
||||
if (lbl_1_bss_5A == 0) {
|
||||
fn_1_11264(0x330025, 0, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x25), 0, 1);
|
||||
}
|
||||
else {
|
||||
fn_1_11264(0x33002A, 0, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x2A), 0, 1);
|
||||
}
|
||||
fn_1_11708(0x33008D);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x8D));
|
||||
for (var_r31 = 0; var_r31 <= 0x0A; var_r31++) {
|
||||
var_f31 = var_r31 / 10.0;
|
||||
|
||||
|
|
@ -226,10 +226,10 @@ loop_19:
|
|||
HuPrcVSleep();
|
||||
}
|
||||
if (lbl_1_bss_5A == 0) {
|
||||
fn_1_11264(0x330025, 0, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x25), 0, 1);
|
||||
}
|
||||
else {
|
||||
fn_1_11264(0x33002A, 0, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x2A), 0, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -324,7 +324,7 @@ loop_19:
|
|||
HuPrcChildCreate(fn_1_7C00, 0x64, 0x2000, 0, lbl_1_bss_68);
|
||||
}
|
||||
fn_1_11020();
|
||||
fn_1_11264(0x33002C, 0, 0);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x2C), 0, 0);
|
||||
var_r30 = fn_1_11390(0);
|
||||
if (var_r30 != -1) {
|
||||
if (var_r30 != 1) {
|
||||
|
|
@ -392,7 +392,7 @@ void fn_1_1774(void)
|
|||
for (var_r30 = 0; var_r30 < 0x10; var_r30++) {
|
||||
sp8.unk_5A[var_r30] = sp8.unk_3A[var_r30] = -1;
|
||||
}
|
||||
var_r29 = MessData_MesPtrGet(messDataPtr, 0x170021);
|
||||
var_r29 = MessData_MesPtrGet(messDataPtr, MAKE_MESSID(0x17, 0x21));
|
||||
for (var_r26 = var_r29; *var_r29 != 0; var_r29++) {
|
||||
if (*var_r29 == 0xA) {
|
||||
*var_r29 = 0x10;
|
||||
|
|
@ -588,11 +588,11 @@ void fn_1_2350(void)
|
|||
fn_1_11020();
|
||||
fn_1_11338(GWPlayerCfg[spC[0]].character, 0);
|
||||
fn_1_11338(GWPlayerCfg[spC[1]].character, 1);
|
||||
fn_1_11264(0x3300A0, 0, 0);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0xA0), 0, 0);
|
||||
if (GWMGAvailGet(var_r31 + 0x191) == 0) {
|
||||
GWMGAvailSet(var_r31 + 0x191);
|
||||
GWGameStat.present[0x37] = 1;
|
||||
fn_1_11264(0x330029, 0, 0);
|
||||
fn_1_11264(MAKE_MESSID(0x33, 0x29), 0, 0);
|
||||
}
|
||||
fn_1_111E0();
|
||||
WipeCreate(2, 0, 0x1E);
|
||||
|
|
@ -671,7 +671,7 @@ void fn_1_2350(void)
|
|||
HuSprTPLvlSet(lbl_1_bss_50, 2, var_r31 / 20.0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
fn_1_114EC(0x33004F, 1);
|
||||
fn_1_114EC(MAKE_MESSID(0x33, 0x4F), 1);
|
||||
while (TRUE) {
|
||||
if ((*HuPadBtnDown & 0x100) != 0) {
|
||||
HuAudFXPlay(2);
|
||||
|
|
@ -827,12 +827,12 @@ void fn_1_33B0(void)
|
|||
if (var_r28 != 0xFF) {
|
||||
if (var_r28 < 8) {
|
||||
lbl_1_bss_36[var_r31] = CharModelCreate(var_r28, 2);
|
||||
lbl_1_bss_E[var_r31][0] = CharModelMotionCreate(var_r28, 0x5F0000);
|
||||
lbl_1_bss_E[var_r31][1] = CharModelMotionCreate(var_r28, 0x5F0003);
|
||||
lbl_1_bss_E[var_r31][0] = CharModelMotionCreate(var_r28, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00));
|
||||
lbl_1_bss_E[var_r31][1] = CharModelMotionCreate(var_r28, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x03));
|
||||
if (var_r31 < 2) {
|
||||
lbl_1_bss_E[var_r31][2] = CharModelMotionCreate(var_r28, 0x5F0048);
|
||||
lbl_1_bss_E[var_r31][3] = CharModelMotionCreate(var_r28, 0x5F0017);
|
||||
lbl_1_bss_E[var_r31][4] = CharModelMotionCreate(var_r28, 0x5F0018);
|
||||
lbl_1_bss_E[var_r31][2] = CharModelMotionCreate(var_r28, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x48));
|
||||
lbl_1_bss_E[var_r31][3] = CharModelMotionCreate(var_r28, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17));
|
||||
lbl_1_bss_E[var_r31][4] = CharModelMotionCreate(var_r28, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18));
|
||||
}
|
||||
CharModelVoiceEnableSet(GWPlayerCfg[spC[var_r31]].character, lbl_1_bss_E[var_r31][1], 0);
|
||||
Hu3DModelScaleSet(lbl_1_bss_36[var_r31], 0.8f, 0.8f, 0.8f);
|
||||
|
|
@ -966,7 +966,7 @@ void fn_1_4374(void)
|
|||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
fn_1_114EC(0x33004F, 1);
|
||||
fn_1_114EC(MAKE_MESSID(0x33, 0x4F), 1);
|
||||
while (TRUE) {
|
||||
if (HuPadBtnDown[0] & PAD_BUTTON_A) {
|
||||
HuAudFXPlay(2);
|
||||
|
|
@ -1058,9 +1058,9 @@ void fn_1_4948(void)
|
|||
var_r30 = GWPlayerCfg[spC[var_r31]].character;
|
||||
if (var_r30 < 8) {
|
||||
lbl_1_bss_36[var_r31] = CharModelCreate(var_r30, 2);
|
||||
lbl_1_bss_E[var_r31][0] = CharModelMotionCreate(var_r30, 0x5F0000);
|
||||
lbl_1_bss_E[var_r31][3] = CharModelMotionCreate(var_r30, 0x5F0017);
|
||||
lbl_1_bss_E[var_r31][4] = CharModelMotionCreate(var_r30, 0x5F0018);
|
||||
lbl_1_bss_E[var_r31][0] = CharModelMotionCreate(var_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x00));
|
||||
lbl_1_bss_E[var_r31][3] = CharModelMotionCreate(var_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x17));
|
||||
lbl_1_bss_E[var_r31][4] = CharModelMotionCreate(var_r30, DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x18));
|
||||
Hu3DModelScaleSet(lbl_1_bss_36[var_r31], 0.8f, 0.8f, 0.8f);
|
||||
}
|
||||
else {
|
||||
|
|
@ -1236,7 +1236,7 @@ s32 fn_1_524C(s32 arg0)
|
|||
var_r24 = HuWinCreate(0.0f, 0.0f, 0x1E0, 0x28, 0);
|
||||
HuWinMesSpeedSet(var_r24, 0);
|
||||
HuWinBGTPLvlSet(var_r24, 0.0f);
|
||||
HuWinMesSet(var_r24, 0x1A0020);
|
||||
HuWinMesSet(var_r24, MAKE_MESSID(0x1A, 0x20));
|
||||
var_r22 = &winData[var_r24];
|
||||
HuWinPriSet(var_r24, 5);
|
||||
HuWinPosSet(var_r24, (576.0f - var_r22->w) / 2, 300.0f);
|
||||
|
|
@ -1393,7 +1393,7 @@ void fn_1_66F8(void)
|
|||
while (WipeStatGet() != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuDataDirClose(0x160000);
|
||||
HuDataDirClose(DATADIR_INSTPIC);
|
||||
while (lbl_1_bss_4 != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -77,24 +77,24 @@ void fn_1_FD90(s32 arg0);
|
|||
extern s16 lbl_1_bss_4;
|
||||
|
||||
s32 lbl_1_data_3C8[8] = {
|
||||
0x5F0000,
|
||||
0x1A0000,
|
||||
0x6D0000,
|
||||
0x8A0000,
|
||||
0x850000,
|
||||
0x110000,
|
||||
0xD0000,
|
||||
0x810000,
|
||||
DATADIR_MARIOMOT,
|
||||
DATADIR_LUIGIMOT,
|
||||
DATADIR_PEACHMOT,
|
||||
DATADIR_YOSHIMOT,
|
||||
DATADIR_WARIOMOT,
|
||||
DATADIR_DONKEYMOT,
|
||||
DATADIR_DAISYMOT,
|
||||
DATADIR_WALUIGIMOT,
|
||||
};
|
||||
s32 lbl_1_data_3E8[8] = {
|
||||
0x5E0000,
|
||||
0x190000,
|
||||
0x6C0000,
|
||||
0x890000,
|
||||
0x840000,
|
||||
0x100000,
|
||||
0xC0000,
|
||||
0x800000,
|
||||
DATADIR_MARIOMDL1,
|
||||
DATADIR_LUIGIMDL1,
|
||||
DATADIR_PEACHMDL1,
|
||||
DATADIR_YOSHIMDL1,
|
||||
DATADIR_WARIOMDL1,
|
||||
DATADIR_DONKEYMDL1,
|
||||
DATADIR_DAISYMDL1,
|
||||
DATADIR_WALUIGIMDL1,
|
||||
};
|
||||
|
||||
s32 lbl_1_bss_26C[0x1B];
|
||||
|
|
@ -164,9 +164,9 @@ s32 fn_1_7E0C(s32 arg0)
|
|||
var_r29 = -1;
|
||||
fn_1_A610();
|
||||
fn_1_11020();
|
||||
fn_1_11264(0x1A0005, -1, -1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x05), -1, -1);
|
||||
fn_1_10FBC(1);
|
||||
fn_1_11708(0x330091);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x91));
|
||||
lbl_1_bss_20C.unk_04 = (ZtarUnkFunc)fn_1_AEE4;
|
||||
var_r29 = -1;
|
||||
while (TRUE) {
|
||||
|
|
@ -179,7 +179,7 @@ s32 fn_1_7E0C(s32 arg0)
|
|||
}
|
||||
if (var_r29 != var_r30) {
|
||||
var_r29 = var_r30;
|
||||
fn_1_11264(var_r30 + 0x1A001B, -1, 1);
|
||||
fn_1_11264(var_r30 + MAKE_MESSID(0x1A, 0x1B), -1, 1);
|
||||
}
|
||||
if (lbl_1_bss_20C.unk_28 == 0) {
|
||||
if (HuPadBtnDown[0] & PAD_BUTTON_A) {
|
||||
|
|
@ -253,12 +253,12 @@ s32 fn_1_8030(s32 arg0, s32 arg1)
|
|||
fn_1_11020();
|
||||
fn_1_10FBC(1);
|
||||
if (arg1 == 1) {
|
||||
fn_1_11264(0x1E005E, -1, -1);
|
||||
fn_1_11264(MAKE_MESSID(0x1E, 0x5E), -1, -1);
|
||||
}
|
||||
else {
|
||||
fn_1_11264(0x1A0009, -1, -1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x09), -1, -1);
|
||||
}
|
||||
fn_1_11708(0x330092);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x92));
|
||||
for (var_r31 = 0; var_r31 < var_r30; var_r31++) {
|
||||
if (lbl_1_bss_8C[var_r31].unk_50 == 0) {
|
||||
lbl_1_bss_8C[var_r31].unk_04 = (ZtarUnkFunc)fn_1_D280;
|
||||
|
|
@ -352,15 +352,15 @@ s32 fn_1_8338(s32 arg0, s32 arg1)
|
|||
}
|
||||
}
|
||||
if (var_r26 == -1) {
|
||||
fn_1_11338(var_r25 + 0x1A0023, 1);
|
||||
fn_1_11264(0x1A0028, -1, var_r26);
|
||||
fn_1_11338(var_r25 + MAKE_MESSID(0x1A, 0x23), 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x28), -1, var_r26);
|
||||
}
|
||||
else {
|
||||
fn_1_11338(var_r25 + 0x1A0023, 1);
|
||||
fn_1_11264(0x1A0028, -1, var_r26);
|
||||
fn_1_11338(var_r25 + MAKE_MESSID(0x1A, 0x23), 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x28), -1, var_r26);
|
||||
}
|
||||
var_r26 = 1;
|
||||
fn_1_11708(0x330092);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x92));
|
||||
for (var_r31 = 0; var_r31 < arg1; var_r31++) {
|
||||
if ((lbl_1_bss_8C[var_r31].unk_50 != 0) && (lbl_1_bss_8C[var_r31].unk_08 == 0)) {
|
||||
var_r30 = var_r31;
|
||||
|
|
@ -389,9 +389,9 @@ s32 fn_1_8338(s32 arg0, s32 arg1)
|
|||
}
|
||||
}
|
||||
lbl_1_bss_8C[var_r30].unk_04 = NULL;
|
||||
fn_1_11264(0x1A0022, -1, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x22), -1, 1);
|
||||
fn_1_10FBC(1);
|
||||
fn_1_11708(0x330093);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x93));
|
||||
var_r29 = fn_1_F214(&lbl_1_bss_8C[var_r30]);
|
||||
if (var_r29 == 1) {
|
||||
HuAudFXPlay(2);
|
||||
|
|
@ -470,9 +470,9 @@ s32 fn_1_88A4(void)
|
|||
var_r26 = -1;
|
||||
fn_1_A8E8();
|
||||
fn_1_11020();
|
||||
fn_1_11264(0x1A0005, -1, -1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x05), -1, -1);
|
||||
fn_1_10FBC(1);
|
||||
fn_1_11708(0x330091);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x91));
|
||||
lbl_1_bss_20C.unk_04 = (ZtarUnkFunc)fn_1_B468;
|
||||
while (TRUE) {
|
||||
fn_1_10FBC(1);
|
||||
|
|
@ -484,7 +484,7 @@ s32 fn_1_88A4(void)
|
|||
}
|
||||
if (var_r26 != var_r30) {
|
||||
var_r26 = var_r30;
|
||||
fn_1_11264(var_r30 + 0x330093, -1, 1);
|
||||
fn_1_11264(var_r30 + MAKE_MESSID(0x33, 0x93), -1, 1);
|
||||
}
|
||||
if (lbl_1_bss_20C.unk_28 != 0) {
|
||||
continue;
|
||||
|
|
@ -581,8 +581,8 @@ s32 fn_1_8B94(s32 arg0)
|
|||
}
|
||||
fn_1_11020();
|
||||
fn_1_10FBC(1);
|
||||
fn_1_11264(0x1A0009, -1, -1);
|
||||
fn_1_11708(0x330092);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x09), -1, -1);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x92));
|
||||
for (var_r31 = 0; var_r31 < var_r30; var_r31++) {
|
||||
if (lbl_1_bss_8C[var_r31].unk_50 == 0) {
|
||||
lbl_1_bss_8C[var_r31].unk_04 = (ZtarUnkFunc)fn_1_D280;
|
||||
|
|
@ -668,15 +668,15 @@ s32 fn_1_8E50(s32 arg0)
|
|||
}
|
||||
}
|
||||
if (var_r26 == -1) {
|
||||
fn_1_11338(var_r25 + 0x1A0023, 1);
|
||||
fn_1_11264(0x1A0028, -1, var_r26);
|
||||
fn_1_11338(var_r25 + MAKE_MESSID(0x1A, 0x23), 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x28), -1, var_r26);
|
||||
}
|
||||
else {
|
||||
fn_1_11338(var_r25 + 0x1A0023, 1);
|
||||
fn_1_11264(0x1A0028, -1, var_r26);
|
||||
fn_1_11338(var_r25 + MAKE_MESSID(0x1A, 0x23), 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x28), -1, var_r26);
|
||||
}
|
||||
var_r26 = 1;
|
||||
fn_1_11708(0x330092);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x92));
|
||||
for (var_r31 = 0; var_r31 < var_r28; var_r31++) {
|
||||
if ((lbl_1_bss_8C[var_r31].unk_50 != 0) && (lbl_1_bss_8C[var_r31].unk_08 == 0)) {
|
||||
var_r30 = var_r31;
|
||||
|
|
@ -705,9 +705,9 @@ s32 fn_1_8E50(s32 arg0)
|
|||
}
|
||||
}
|
||||
lbl_1_bss_8C[var_r30].unk_04 = NULL;
|
||||
fn_1_11264(0x1A0022, -1, 1);
|
||||
fn_1_11264(MAKE_MESSID(0x1A, 0x22), -1, 1);
|
||||
fn_1_10FBC(1);
|
||||
fn_1_11708(0x330093);
|
||||
fn_1_11708(MAKE_MESSID(0x33, 0x93));
|
||||
var_r29 = fn_1_F214(&lbl_1_bss_8C[var_r30]);
|
||||
if (var_r29 == 1) {
|
||||
HuAudFXPlay(2);
|
||||
|
|
@ -2947,7 +2947,7 @@ void fn_1_11020(void)
|
|||
void fn_1_111E0(void)
|
||||
{
|
||||
if (lbl_1_data_66C != -1) {
|
||||
HuWinMesSet(lbl_1_data_66C, 0x250004);
|
||||
HuWinMesSet(lbl_1_data_66C, MAKE_MESSID(0x25, 0x04));
|
||||
HuWinExAnimOut(lbl_1_data_66C);
|
||||
HuWinExCleanup(lbl_1_data_66C);
|
||||
lbl_1_data_66C = -1;
|
||||
|
|
@ -2993,7 +2993,7 @@ s32 fn_1_11390(s32 arg0)
|
|||
s32 var_r27;
|
||||
s32 var_r26;
|
||||
|
||||
HuWinMesMaxSizeGet(1, spC, 0x1E0035);
|
||||
HuWinMesMaxSizeGet(1, spC, MAKE_MESSID(0x1E, 0x35));
|
||||
var_r30 = spC[0];
|
||||
var_r29 = spC[1];
|
||||
var_r27 = 0x22C - var_r30;
|
||||
|
|
@ -3003,9 +3003,9 @@ s32 fn_1_11390(s32 arg0)
|
|||
HuWinMesPalSet(var_r31, 7, 0, 0, 0);
|
||||
HuWinExAnimIn(var_r31);
|
||||
HuWinMesSpeedSet(var_r31, 0);
|
||||
HuWinMesSet(var_r31, 0x1E0035);
|
||||
HuWinMesSet(var_r31, MAKE_MESSID(0x1E, 0x35));
|
||||
var_r28 = HuWinChoiceGet(var_r31, arg0);
|
||||
HuWinMesSet(var_r31, 0x250004);
|
||||
HuWinMesSet(var_r31, MAKE_MESSID(0x25, 0x04));
|
||||
HuWinExAnimOut(var_r31);
|
||||
HuWinExCleanup(var_r31);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
#include "game/board/main.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/star.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/flag.h"
|
||||
#include "game/objsub.h"
|
||||
#include "game/process.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/star.h"
|
||||
#include "game/board/window.h"
|
||||
#include "math.h"
|
||||
|
||||
#define BLOCK_SPAWN 0
|
||||
|
|
@ -21,7 +21,7 @@ typedef struct {
|
|||
u8 opened : 1;
|
||||
u8 unk00_field5 : 1;
|
||||
};
|
||||
|
||||
|
||||
s16 hit_y_velocity;
|
||||
s16 target_y_pos;
|
||||
} BlockWork;
|
||||
|
|
@ -30,7 +30,7 @@ typedef struct {
|
|||
struct {
|
||||
u8 kill : 1;
|
||||
};
|
||||
|
||||
|
||||
u8 lifetime;
|
||||
s8 model_index;
|
||||
s16 model;
|
||||
|
|
@ -38,19 +38,19 @@ typedef struct {
|
|||
|
||||
static void BlockProc(void);
|
||||
static void DestroyBlock(void);
|
||||
static void ExecBlockObj(omObjData* arg0);
|
||||
static void ExecBlockObj(omObjData *arg0);
|
||||
static void CreateBlockObj(s32 arg0);
|
||||
static void DestroyBlockObj(BlockWork* unused0, omObjData* unused1);
|
||||
static void SpawnBlock(BlockWork* arg0, omObjData* arg1);
|
||||
static void HitBlock(BlockWork* arg0, omObjData* arg1);
|
||||
static void OpenBlock(BlockWork* arg0, omObjData* arg1);
|
||||
static void DestroyBlockObj(BlockWork *unused0, omObjData *unused1);
|
||||
static void SpawnBlock(BlockWork *arg0, omObjData *arg1);
|
||||
static void HitBlock(BlockWork *arg0, omObjData *arg1);
|
||||
static void OpenBlock(BlockWork *arg0, omObjData *arg1);
|
||||
static void SetBlockOpen(void);
|
||||
static void SetBlockStop(void);
|
||||
static void WaitBlockHit(void);
|
||||
static void CreateCoinMdl(void);
|
||||
static void KillCoinMdl(void);
|
||||
static void PopupCoin(void);
|
||||
static void PopupCoinExec(omObjData* arg0);
|
||||
static void PopupCoinExec(omObjData *arg0);
|
||||
|
||||
extern s8 boardTutorialBlockF;
|
||||
extern s8 boardTutorialBlockItem;
|
||||
|
|
@ -62,37 +62,41 @@ static f32 rotMax;
|
|||
static f32 scaleAngle;
|
||||
static f32 rotY;
|
||||
|
||||
static omObjData* blockObj;
|
||||
static Process* blockProc;
|
||||
static omObjData *blockObj;
|
||||
static Process *blockProc;
|
||||
|
||||
static s16 coinMdl[10] = { -1, -1, -1, -1 };
|
||||
static s32 coinF[10];
|
||||
|
||||
s32 BoardBlockExec(s32 arg0) {
|
||||
s32 BoardBlockExec(s32 arg0)
|
||||
{
|
||||
if (BoardPlayerSizeGet(arg0) == 2) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
blockProc = HuPrcChildCreate(BlockProc, 0x2003, 0x3800U, 0, boardMainProc);
|
||||
HuPrcDestructorSet2(blockProc, DestroyBlock);
|
||||
|
||||
|
||||
while (blockProc != NULL) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void BlockProc(void) {
|
||||
s32 sp14[8] = {0x005F0060, 0x001A0060, 0x006D0060, 0x008A0060, 0x00850060, 0x00110060, 0x000D0060, 0x00810060};
|
||||
static void BlockProc(void)
|
||||
{
|
||||
s32 sp14[8] = { DATA_MAKE_NUM(DATADIR_MARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_LUIGIMOT, 0x60), DATA_MAKE_NUM(DATADIR_PEACHMOT, 0x60),
|
||||
DATA_MAKE_NUM(DATADIR_YOSHIMOT, 0x60), DATA_MAKE_NUM(DATADIR_WARIOMOT, 0x60), DATA_MAKE_NUM(DATADIR_DONKEYMOT, 0x60),
|
||||
DATA_MAKE_NUM(DATADIR_DAISYMOT, 0x60), DATA_MAKE_NUM(DATADIR_WALUIGIMOT, 0x60) };
|
||||
Point3d sp8;
|
||||
s32 var_r28;
|
||||
s32 i;
|
||||
s32 player;
|
||||
BlockWork* work;
|
||||
s32* temp_r4;
|
||||
BlockWork *work;
|
||||
s32 *temp_r4;
|
||||
s32 player_character;
|
||||
|
||||
|
||||
player = GWSystem.player_curr;
|
||||
|
||||
player_character = GWPlayer[player].character;
|
||||
|
|
@ -101,12 +105,12 @@ static void BlockProc(void) {
|
|||
BoardPlayerMotBlendSet(player, 0, 0xF);
|
||||
omVibrate(player, 12, 12, 0);
|
||||
CreateBlockObj(player);
|
||||
|
||||
|
||||
work = OM_GET_WORK_PTR(blockObj, BlockWork);
|
||||
while (work->state != BLOCK_HIT) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
BoardCameraViewSet(3);
|
||||
BoardCameraMotionWait();
|
||||
BoardWinCreate(0, 0x10000, -1);
|
||||
|
|
@ -123,7 +127,7 @@ static void BlockProc(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardPlayerIdleSet(player);
|
||||
|
||||
|
||||
if (work->contains_star != 0) {
|
||||
SetBlockStop();
|
||||
BoardModelPosGet(starMdl, &sp8);
|
||||
|
|
@ -134,10 +138,11 @@ static void BlockProc(void) {
|
|||
if (_CheckFlag(FLAG_ID_MAKE(1, 11)) == 0) {
|
||||
BoardAudSeqPause(0, 0, 1000);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (i = 0; i < 0x14; i++) {
|
||||
WaitBlockHit();
|
||||
BoardPlayerMotionStart(player, (s32) jumpMot, 0);
|
||||
BoardPlayerMotionStart(player, (s32)jumpMot, 0);
|
||||
BoardPlayerMotionSpeedSet(player, 2);
|
||||
while (BoardPlayerMotionTimeGet(player) < 4) {
|
||||
HuPrcVSleep();
|
||||
|
|
@ -152,29 +157,30 @@ static void BlockProc(void) {
|
|||
HuAudFXPlay(7);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
||||
|
||||
SetBlockStop();
|
||||
}
|
||||
|
||||
|
||||
BoardWinCreate(0, work->contains_star != 0 ? MAKE_MESSID(1, 1) : MAKE_MESSID(1, 2), -1);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
KillCoinMdl();
|
||||
work->kill = 1;
|
||||
|
||||
BoardPlayerIdleSet((s32) player);
|
||||
|
||||
BoardPlayerIdleSet((s32)player);
|
||||
HuPrcVSleep();
|
||||
|
||||
|
||||
if ((_CheckFlag(FLAG_ID_MAKE(1, 11)) != 0) && work->contains_star == 0) {
|
||||
BoardTutorialHookExec(0x16, 0);
|
||||
}
|
||||
|
||||
|
||||
BoardCameraViewSet(2);
|
||||
BoardCameraMotionWait();
|
||||
HuPrcEnd();
|
||||
}
|
||||
|
||||
static void DestroyBlock(void) {
|
||||
static void DestroyBlock(void)
|
||||
{
|
||||
if (jumpMot != -1) {
|
||||
BoardPlayerMotionKill(GWSystem.player_curr, jumpMot);
|
||||
jumpMot = -1;
|
||||
|
|
@ -183,71 +189,74 @@ static void DestroyBlock(void) {
|
|||
blockProc = 0;
|
||||
}
|
||||
|
||||
static void CreateBlockObj(s32 arg0) {
|
||||
static void CreateBlockObj(s32 arg0)
|
||||
{
|
||||
Point3d player_pos;
|
||||
BlockWork* work;
|
||||
BlockWork *work;
|
||||
s8 contains_star;
|
||||
|
||||
|
||||
BoardPlayerPosGet(arg0, &player_pos);
|
||||
starMdl = BoardModelCreate(0x70004, NULL, 0);
|
||||
starMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 4), NULL, 0);
|
||||
BoardModelVisibilitySet(starMdl, 0);
|
||||
BoardModelMotionSpeedSet(starMdl, 0);
|
||||
BoardModelLayerSet(starMdl, 2U);
|
||||
|
||||
|
||||
blockObj = omAddObjEx(boardObjMan, 0x101, 0U, 0U, -1, ExecBlockObj);
|
||||
|
||||
|
||||
work = OM_GET_WORK_PTR(blockObj, BlockWork);
|
||||
work->kill = 0;
|
||||
work->unk00_field2 = 0;
|
||||
work->opened = 0;
|
||||
work->unk00_field5 = 0;
|
||||
work->state = BLOCK_SPAWN;
|
||||
|
||||
|
||||
blockObj->trans.x = player_pos.x;
|
||||
blockObj->trans.y = 270 + player_pos.y;
|
||||
blockObj->trans.z = player_pos.z;
|
||||
|
||||
|
||||
blockObj->scale.x = blockObj->scale.y = blockObj->scale.z = 0.01;
|
||||
blockObj->rot.x = blockObj->rot.y = blockObj->rot.z = 0.0;
|
||||
|
||||
|
||||
scaleAngle = 0;
|
||||
rotY = 0;
|
||||
rotMax = 30;
|
||||
|
||||
|
||||
BoardModelVisibilitySet(starMdl, 1);
|
||||
|
||||
|
||||
if (BoardRandFloat() > 0.5f) {
|
||||
contains_star = 0;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
contains_star = 1;
|
||||
}
|
||||
|
||||
|
||||
work->contains_star = contains_star;
|
||||
|
||||
|
||||
if (boardTutorialBlockF != 0) {
|
||||
work->contains_star = boardTutorialBlockItem;
|
||||
boardTutorialBlockF = 0;
|
||||
}
|
||||
|
||||
|
||||
HuAudFXPlay(0x302);
|
||||
|
||||
|
||||
if (work->contains_star == 0) {
|
||||
CreateCoinMdl();
|
||||
}
|
||||
}
|
||||
|
||||
static void ExecBlockObj(omObjData* arg0) {
|
||||
BlockWork* work;
|
||||
static void ExecBlockObj(omObjData *arg0)
|
||||
{
|
||||
BlockWork *work;
|
||||
|
||||
work = OM_GET_WORK_PTR(arg0, BlockWork);
|
||||
|
||||
|
||||
if (work->kill != 0 || BoardIsKill() != 0) {
|
||||
DestroyBlockObj(work, arg0);
|
||||
blockObj = 0;
|
||||
omDelObjEx(HuPrcCurrentGet(), arg0);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
switch (work->state) {
|
||||
case BLOCK_SPAWN:
|
||||
SpawnBlock(work, arg0);
|
||||
|
|
@ -259,30 +268,33 @@ static void ExecBlockObj(omObjData* arg0) {
|
|||
OpenBlock(work, arg0);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if (work->unk00_field5 != 0) {
|
||||
BoardModelVisibilitySet(starMdl, 0);
|
||||
}
|
||||
|
||||
|
||||
BoardModelPosSet(starMdl, arg0->trans.x, arg0->trans.y, arg0->trans.z);
|
||||
BoardModelRotSet(starMdl, arg0->rot.x, arg0->rot.y, arg0->rot.z);
|
||||
BoardModelScaleSet(starMdl, arg0->scale.x, arg0->scale.y, arg0->scale.z);
|
||||
}
|
||||
|
||||
static void DestroyBlockObj(BlockWork* unused0, omObjData* unused1) {
|
||||
static void DestroyBlockObj(BlockWork *unused0, omObjData *unused1)
|
||||
{
|
||||
if (starMdl != -1) {
|
||||
BoardModelKill(starMdl);
|
||||
starMdl = -1;
|
||||
}
|
||||
}
|
||||
|
||||
static void SpawnBlock(BlockWork* arg0, omObjData* arg1) {
|
||||
static void SpawnBlock(BlockWork *arg0, omObjData *arg1)
|
||||
{
|
||||
if (scaleAngle < 90.0f) {
|
||||
scaleAngle += 3.75f;
|
||||
if (scaleAngle > 90.0f) {
|
||||
scaleAngle = 90.0f;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
rotMax *= 0.5f;
|
||||
if (rotMax < 0.8f) {
|
||||
rotY = 0.0f;
|
||||
|
|
@ -291,31 +303,33 @@ static void SpawnBlock(BlockWork* arg0, omObjData* arg1) {
|
|||
arg0->state = BLOCK_HIT;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (rotY < 360.0f) {
|
||||
rotY += rotMax;
|
||||
if (rotY > 360.0f) {
|
||||
rotY = 360.0f;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
arg1->rot.y = rotY;
|
||||
arg1->scale.x = arg1->scale.y = arg1->scale.z = sin(M_PI * scaleAngle / 180.0);
|
||||
}
|
||||
|
||||
static void HitBlock(BlockWork* arg0, omObjData* arg1) {
|
||||
static void HitBlock(BlockWork *arg0, omObjData *arg1)
|
||||
{
|
||||
float var_f30;
|
||||
|
||||
arg0->hit_y_velocity += 3;
|
||||
if (arg0->hit_y_velocity > 0x168) {
|
||||
arg0->hit_y_velocity -= 0x168;
|
||||
}
|
||||
|
||||
|
||||
OSs16tof32(&arg0->hit_y_velocity, &var_f30);
|
||||
arg1->trans.y += 0.2f * sin((M_PI * var_f30) / 180.0);
|
||||
}
|
||||
|
||||
static void OpenBlock(BlockWork* arg0, omObjData* arg1) {
|
||||
static void OpenBlock(BlockWork *arg0, omObjData *arg1)
|
||||
{
|
||||
f32 target_y_pos;
|
||||
|
||||
if (arg0->opened == 0) {
|
||||
|
|
@ -323,16 +337,17 @@ static void OpenBlock(BlockWork* arg0, omObjData* arg1) {
|
|||
HuAudFXPlay(0x33B);
|
||||
BoardModelMotionStart(starMdl, 0, 0);
|
||||
}
|
||||
|
||||
|
||||
if (arg0->unk00_field2 == 0) {
|
||||
OSf32tos16(&arg1->trans.y, &arg0->target_y_pos);
|
||||
|
||||
|
||||
arg1->trans.y += 80.0f;
|
||||
arg0->unk00_field2 = 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
OSs16tof32(&arg0->target_y_pos, &target_y_pos);
|
||||
arg1->trans.y += -8.0f;
|
||||
|
||||
|
||||
if (arg1->trans.y < target_y_pos) {
|
||||
arg1->trans.y = target_y_pos;
|
||||
arg0->state = BLOCK_HIT;
|
||||
|
|
@ -340,43 +355,48 @@ static void OpenBlock(BlockWork* arg0, omObjData* arg1) {
|
|||
}
|
||||
}
|
||||
|
||||
static void SetBlockOpen(void) {
|
||||
BlockWork* work;
|
||||
static void SetBlockOpen(void)
|
||||
{
|
||||
BlockWork *work;
|
||||
|
||||
work = OM_GET_WORK_PTR(blockObj, BlockWork);
|
||||
work->state = BLOCK_OPEN;
|
||||
}
|
||||
|
||||
static void SetBlockStop(void) {
|
||||
BlockWork* work;
|
||||
static void SetBlockStop(void)
|
||||
{
|
||||
BlockWork *work;
|
||||
|
||||
work = OM_GET_WORK_PTR(blockObj, BlockWork);
|
||||
work->unk00_field5 = 1;
|
||||
}
|
||||
|
||||
static void WaitBlockHit(void) {
|
||||
BlockWork* work;
|
||||
static void WaitBlockHit(void)
|
||||
{
|
||||
BlockWork *work;
|
||||
|
||||
work = OM_GET_WORK_PTR(blockObj, BlockWork);
|
||||
|
||||
|
||||
while (work->state != BLOCK_HIT) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
}
|
||||
|
||||
static void CreateCoinMdl(void) {
|
||||
static void CreateCoinMdl(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
|
||||
for (i = 0; i < 10; i += 1) {
|
||||
coinMdl[i] = BoardModelCreate(0x7000A, NULL, 1);
|
||||
coinMdl[i] = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BOARD, 10), NULL, 1);
|
||||
BoardModelVisibilitySet(coinMdl[i], 0);
|
||||
coinF[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
static void KillCoinMdl(void) {
|
||||
static void KillCoinMdl(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
|
||||
for (i = 0; i < 0xA; i += 1) {
|
||||
if (coinMdl[i] != -1) {
|
||||
BoardModelKill(coinMdl[i]);
|
||||
|
|
@ -386,77 +406,81 @@ static void KillCoinMdl(void) {
|
|||
}
|
||||
}
|
||||
|
||||
static inline s32 FindCoinModel(s16 *out_model) {
|
||||
static inline s32 FindCoinModel(s16 *out_model)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
|
||||
for (i = 0; i < 10; i++) {
|
||||
if (coinF[i] == 0) {
|
||||
*out_model = coinMdl[i];
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
static void PopupCoin(void) {
|
||||
static void PopupCoin(void)
|
||||
{
|
||||
Point3d star_pos;
|
||||
omObjData* coinObj;
|
||||
omObjData *coinObj;
|
||||
s32 model_index;
|
||||
s16 model;
|
||||
CoinWork* work;
|
||||
|
||||
CoinWork *work;
|
||||
|
||||
do {
|
||||
HuPrcVSleep();
|
||||
model_index = FindCoinModel(&model);
|
||||
} while (model_index == -1);
|
||||
|
||||
|
||||
coinObj = omAddObjEx(boardObjMan, 0x101, 0, 0, -1, PopupCoinExec);
|
||||
work = OM_GET_WORK_PTR(coinObj, CoinWork);
|
||||
|
||||
|
||||
work->kill = 0;
|
||||
work->lifetime = 10;
|
||||
work->model = model;
|
||||
work->model_index = model_index;
|
||||
|
||||
|
||||
coinObj->trans.x = 15.0f;
|
||||
coinObj->trans.y = 40.0f;
|
||||
|
||||
|
||||
BoardModelPosGet(starMdl, &star_pos);
|
||||
BoardModelPosSetV(work->model, &star_pos);
|
||||
BoardModelVisibilitySet(work->model, 1);
|
||||
}
|
||||
|
||||
static void PopupCoinExec(omObjData* obj) {
|
||||
static void PopupCoinExec(omObjData *obj)
|
||||
{
|
||||
Point3d coin_pos;
|
||||
Point3d coin_rot;
|
||||
CoinWork* work;
|
||||
CoinWork *work;
|
||||
|
||||
work = OM_GET_WORK_PTR(obj, CoinWork);
|
||||
|
||||
|
||||
if (work->kill != 0 || BoardIsKill() != 0) {
|
||||
BoardModelVisibilitySet(work->model, 0);
|
||||
coinF[work->model_index] = 0;
|
||||
omDelObjEx(HuPrcCurrentGet(), obj);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (work->lifetime != 0) {
|
||||
work->lifetime -= 1;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
work->kill = 1;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
BoardModelPosGet(work->model, &coin_pos);
|
||||
coin_pos.y += obj->trans.y;
|
||||
BoardModelPosSetV(work->model, &coin_pos);
|
||||
BoardModelRotGet(work->model, &coin_rot);
|
||||
coin_rot.y += obj->trans.x;
|
||||
|
||||
|
||||
if (coin_rot.y > 360.0f) {
|
||||
coin_rot.y -= 360.0f;
|
||||
}
|
||||
|
||||
|
||||
BoardModelRotSetV(work->model, &coin_rot);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,18 @@
|
|||
#include "game/board/boo_house.h"
|
||||
|
||||
#include "game/msm.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/com.h"
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/boo.h"
|
||||
#include "game/board/com.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/model.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/star.h"
|
||||
#include "game/board/ui.h"
|
||||
#include "game/board/view.h"
|
||||
#include "game/board/audio.h"
|
||||
#include "game/board/main.h"
|
||||
#include "game/board/star.h"
|
||||
#include "game/board/player.h"
|
||||
#include "game/board/window.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/hsfdraw.h"
|
||||
#include "game/msm.h"
|
||||
|
||||
#include "ext_math.h"
|
||||
|
||||
|
|
@ -22,34 +21,78 @@ static s16 houseMdl[6];
|
|||
|
||||
// data
|
||||
static s32 hostMesTbl[6][6] = {
|
||||
{ 0x7000C, 0x7000D, 0x7000E, 0x7000F, 0x70010, 0x70011 },
|
||||
{ 0x70012, 0x70013, 0x70014, 0x70015, 0x70016, 0x70017 },
|
||||
{ 0x70018, 0x70019, 0x7001A, 0x7001B, 0x7001C, 0x7001D },
|
||||
{ 0x7001E, 0x7001F, 0x70020, 0x70021, 0x70022, 0x70023 },
|
||||
{ 0x70024, 0x70025, 0x70026, 0x70027, 0x70028, 0x70029 },
|
||||
{ 0x7002A, 0x7002B, 0x7002C, 0x7002D, 0x7002E, 0x7002F },
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x0C),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x0D),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x0E),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x0F),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x10),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x11),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x12),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x13),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x14),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x15),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x16),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x17),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x18),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x19),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1A),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1B),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1C),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1D),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1E),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x1F),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x20),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x21),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x22),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x23),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x24),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x25),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x26),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x27),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x28),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x29),
|
||||
},
|
||||
{
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2A),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2B),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2C),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2D),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2E),
|
||||
DATA_MAKE_NUM(DATADIR_BOARD, 0x2F),
|
||||
},
|
||||
};
|
||||
static BoardModelParam houseMdlTbl[6] = {
|
||||
{ 0x90000, { 0, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ 0x90001, { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ 0x90003, { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ 0x90004, { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ 0x90004, { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ 0x90007, { 0, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x00), { 0, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x01), { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x03), { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x04), { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x04), { 1, 1, 0, 0, 0 }, 0xFFFF },
|
||||
{ DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x07), { 0, 1, 0, 0, 0 }, 0xFFFF },
|
||||
};
|
||||
static s32 booMotTbl[3] = {
|
||||
0x20013, 0x20016, 0xFFFFFFFF
|
||||
DATA_MAKE_NUM(DATADIR_BGUEST, 0x13),
|
||||
DATA_MAKE_NUM(DATADIR_BGUEST, 0x16),
|
||||
DATA_NUM_LISTEND,
|
||||
};
|
||||
static s32 houseMotTbl[9][3] = {
|
||||
{ 0x20001, 0x20003, 0x20004 },
|
||||
{ 0x20009, 0x2000B, 0x2000C },
|
||||
{ 0x2000E, 0x20010, 0x20011 },
|
||||
{ 0x20018, 0x2001A, 0x2001B },
|
||||
{ 0x2001D, 0x2001F, 0x20020 },
|
||||
{ 0x20022, 0x20024, 0x20025 },
|
||||
{ 0x20018, 0x2001A, 0x2001B },
|
||||
{ 0x20001, 0x20003, 0x20004 },
|
||||
{ 0x20001, 0x20003, 0x20004 }
|
||||
static s32 hostMotTbl[9][3] = {
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x01), DATA_MAKE_NUM(DATADIR_BGUEST, 0x03), DATA_MAKE_NUM(DATADIR_BGUEST, 0x04) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x09), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0B), DATA_MAKE_NUM(DATADIR_BGUEST, 0x0C) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x0E), DATA_MAKE_NUM(DATADIR_BGUEST, 0x10), DATA_MAKE_NUM(DATADIR_BGUEST, 0x11) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x18), DATA_MAKE_NUM(DATADIR_BGUEST, 0x1A), DATA_MAKE_NUM(DATADIR_BGUEST, 0x1B) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x1D), DATA_MAKE_NUM(DATADIR_BGUEST, 0x1F), DATA_MAKE_NUM(DATADIR_BGUEST, 0x20) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x22), DATA_MAKE_NUM(DATADIR_BGUEST, 0x24), DATA_MAKE_NUM(DATADIR_BGUEST, 0x25) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x18), DATA_MAKE_NUM(DATADIR_BGUEST, 0x1A), DATA_MAKE_NUM(DATADIR_BGUEST, 0x1B) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x01), DATA_MAKE_NUM(DATADIR_BGUEST, 0x03), DATA_MAKE_NUM(DATADIR_BGUEST, 0x04) },
|
||||
{ DATA_MAKE_NUM(DATADIR_BGUEST, 0x01), DATA_MAKE_NUM(DATADIR_BGUEST, 0x03), DATA_MAKE_NUM(DATADIR_BGUEST, 0x04) },
|
||||
};
|
||||
|
||||
// sbss
|
||||
|
|
@ -58,16 +101,16 @@ static s8 stealTarget;
|
|||
static s8 comStarStealTarget;
|
||||
static s32 comCoinStealTarget;
|
||||
static s8 stealAmountStr[8];
|
||||
static Process* houseProc;
|
||||
static Process *houseProc;
|
||||
|
||||
// sdata
|
||||
static s16 houseShowMot = 0xFFFF;
|
||||
static s16 houseHideMot = 0xFFFF;
|
||||
static s16 ballMdl = 0xFFFF;
|
||||
static s16 booMdl = 0xFFFF;
|
||||
static s16 lbl_801D37F8 = 0xFFFF;
|
||||
static s16 smokeMdl = 0xFFFF;
|
||||
static s16 hostMdl = 0xFFFF;
|
||||
static s16 houseMot[3] = { 0xFFFF, 0xFFFF, 0xFFFF };
|
||||
static s16 hostMot[3] = { 0xFFFF, 0xFFFF, 0xFFFF };
|
||||
|
||||
// determined functions
|
||||
static void ExecBooHouse(void);
|
||||
|
|
@ -87,15 +130,18 @@ static void ApplyBooLight(void);
|
|||
static void SetBooBallPos(void);
|
||||
|
||||
// FUNCTIONS //
|
||||
void BoardBooHouseHostSet(s16 arg0) {
|
||||
void BoardBooHouseHostSet(s16 arg0)
|
||||
{
|
||||
hostMdl = arg0;
|
||||
}
|
||||
|
||||
s16 BoardBooHouseHostGet(void) {
|
||||
s16 BoardBooHouseHostGet(void)
|
||||
{
|
||||
return hostMdl;
|
||||
}
|
||||
|
||||
void BoardBooHouseCreate(void) {
|
||||
void BoardBooHouseCreate(void)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
|
||||
|
|
@ -107,17 +153,19 @@ void BoardBooHouseCreate(void) {
|
|||
if (hostMdl != -1) {
|
||||
BoardModelVisibilitySet(hostMdl, 0);
|
||||
}
|
||||
HuDataDirClose(0x90000);
|
||||
HuDataDirClose(DATADIR_BYOKODORI);
|
||||
}
|
||||
|
||||
void BoardBooHouseKill(void) {
|
||||
void BoardBooHouseKill(void)
|
||||
{
|
||||
if (houseMdl[0] != -1) {
|
||||
BoardModelKill(houseMdl[0]);
|
||||
houseMdl[0] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
void BoardBooHouseExec(s32 arg0) {
|
||||
void BoardBooHouseExec(s32 arg0)
|
||||
{
|
||||
currPlayer = arg0;
|
||||
if (BoardPlayerSizeGet(currPlayer) != 2) {
|
||||
BoardRollDispSet(0);
|
||||
|
|
@ -130,7 +178,8 @@ void BoardBooHouseExec(s32 arg0) {
|
|||
}
|
||||
}
|
||||
|
||||
static void ExecBooHouse(void) {
|
||||
static void ExecBooHouse(void)
|
||||
{
|
||||
Vec sp38;
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
|
|
@ -145,7 +194,7 @@ static void ExecBooHouse(void) {
|
|||
s32 var_r26;
|
||||
|
||||
_SetFlag(0x10018);
|
||||
var_r28 = BoardDataDirReadAsync(0x90000);
|
||||
var_r28 = BoardDataDirReadAsync(DATADIR_BYOKODORI);
|
||||
var_r30 = GWPlayer[currPlayer].space_curr;
|
||||
BoardPlayerIdleSet(currPlayer);
|
||||
if (BoardPlayerCoinsGet(currPlayer) < 5) {
|
||||
|
|
@ -159,7 +208,8 @@ static void ExecBooHouse(void) {
|
|||
if (GWPlayer[currPlayer].com != 0) {
|
||||
if (BoardBooComUseCheck(currPlayer) != 0) {
|
||||
BoardComKeySetLeft();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardComKeySetRight();
|
||||
}
|
||||
}
|
||||
|
|
@ -168,13 +218,13 @@ static void ExecBooHouse(void) {
|
|||
BoardDataAsyncWait(var_r28);
|
||||
HuPrcEnd();
|
||||
}
|
||||
|
||||
|
||||
for (var_r26 = var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
if (currPlayer != var_r31) {
|
||||
var_r26 += GWStarsGet(var_r31);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for (var_r27 = var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
if (currPlayer != var_r31) {
|
||||
var_r27 += BoardPlayerCoinsGet(var_r31);
|
||||
|
|
@ -203,7 +253,7 @@ static void ExecBooHouse(void) {
|
|||
BoardPlayerMoveBetween(currPlayer, var_r30, temp_r29);
|
||||
BoardPlayerIdleSet(currPlayer);
|
||||
BoardMusStart(1, 1, 0x7F, 0);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), houseMot[0], 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), hostMot[0], 0.0f, 10.0f, 0x40000001);
|
||||
BoardWinCreate(2, hostMesTbl[GWBoardGet()][0], BoardWinPortraitGet());
|
||||
BoardWinWait();
|
||||
|
||||
|
|
@ -245,7 +295,7 @@ repeatWindowView:
|
|||
BoardStatusShowSet(currPlayer, 0);
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), houseMot[1], 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), hostMot[1], 0.0f, 10.0f, 0x40000001);
|
||||
CloseBooHouse();
|
||||
BoardCameraViewSet(1);
|
||||
BoardCameraRotSet(0.0f, 0.0f);
|
||||
|
|
@ -259,13 +309,14 @@ repeatWindowView:
|
|||
HuPrcEnd();
|
||||
}
|
||||
|
||||
static void DestroyBooHouse(void) {
|
||||
static void DestroyBooHouse(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 3; var_r31++) {
|
||||
if (houseMot[var_r31] != -1) {
|
||||
BoardModelMotionKill(BoardBooHouseHostGet(), houseMot[var_r31]);
|
||||
houseMot[var_r31] = -1;
|
||||
if (hostMot[var_r31] != -1) {
|
||||
BoardModelMotionKill(BoardBooHouseHostGet(), hostMot[var_r31]);
|
||||
hostMot[var_r31] = -1;
|
||||
}
|
||||
}
|
||||
if (houseShowMot != -1) {
|
||||
|
|
@ -278,12 +329,13 @@ static void DestroyBooHouse(void) {
|
|||
}
|
||||
BoardWinKill();
|
||||
KillBooHouseModel();
|
||||
HuDataDirClose(0x90000);
|
||||
HuDataDirClose(DATADIR_BYOKODORI);
|
||||
_ClearFlag(0x10018);
|
||||
houseProc = 0;
|
||||
}
|
||||
|
||||
static void PickComStealType(s32 arg0) {
|
||||
static void PickComStealType(s32 arg0)
|
||||
{
|
||||
s32 var_r31;
|
||||
s32 var_r30;
|
||||
s32 var_r28;
|
||||
|
|
@ -297,10 +349,11 @@ static void PickComStealType(s32 arg0) {
|
|||
}
|
||||
if (BoardPlayerCoinsGet(arg0) >= 0x32) {
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
if ((var_r31 != arg0) && (GWStarsGet(var_r31) != 0) && (((s32) GWSystem.team == 0) || (var_r31 != BoardPlayerSameTeamFind(arg0)))) {
|
||||
if ((var_r31 != arg0) && (GWStarsGet(var_r31) != 0) && (((s32)GWSystem.team == 0) || (var_r31 != BoardPlayerSameTeamFind(arg0)))) {
|
||||
if (var_r30 != 0) {
|
||||
BoardComKeySetDown();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardComKeySetUp();
|
||||
}
|
||||
return;
|
||||
|
|
@ -310,7 +363,8 @@ static void PickComStealType(s32 arg0) {
|
|||
BoardComKeySetUp();
|
||||
}
|
||||
|
||||
static void OpenBooHouse(void) {
|
||||
static void OpenBooHouse(void)
|
||||
{
|
||||
s16 temp_r31;
|
||||
s32 temp_r5;
|
||||
s32 var_r30;
|
||||
|
|
@ -318,11 +372,11 @@ static void OpenBooHouse(void) {
|
|||
ballMdl = BoardBooCreate(currPlayer, 0);
|
||||
temp_r31 = BoardBooHouseHostGet();
|
||||
BoardModelMotionStart(temp_r31, 1, 0x40000001);
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 3; var_r30++) {
|
||||
houseMot[var_r30] = BoardModelMotionCreate(temp_r31, houseMotTbl[GWBoardGet()][var_r30]);
|
||||
hostMot[var_r30] = BoardModelMotionCreate(temp_r31, hostMotTbl[GWBoardGet()][var_r30]);
|
||||
}
|
||||
BoardModelMotionStart(temp_r31, houseMot[0], 0x40000001);
|
||||
BoardModelMotionStart(temp_r31, hostMot[0], 0x40000001);
|
||||
BoardModelVisibilitySet(temp_r31, 1);
|
||||
HuAudFXPlay(0x337);
|
||||
HuAudFXPlay(0x344);
|
||||
|
|
@ -337,7 +391,8 @@ static void OpenBooHouse(void) {
|
|||
BoardModelHookSet(houseMdl[0], "yoko06", temp_r31);
|
||||
if (GWBoardGet() == BOARD_ID_MAIN6) {
|
||||
BoardModelPosSet(temp_r31, 0.0f, 0.0f, -25.0f);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
BoardModelPosSet(temp_r31, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
BoardModelMotionStart(houseMdl[3], 0, 0x40000001);
|
||||
|
|
@ -346,9 +401,9 @@ static void OpenBooHouse(void) {
|
|||
BoardModelMotionStart(booMdl, 1, 0x40000001);
|
||||
BoardModelVisibilitySet(booMdl, 1);
|
||||
BoardModelHookSet(houseMdl[0], "yoko8", booMdl);
|
||||
lbl_801D37F8 = BoardModelCreate(0x90008, NULL, 0);
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 0);
|
||||
BoardModelLayerSet(lbl_801D37F8, 2);
|
||||
smokeMdl = BoardModelCreate(DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x08), NULL, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 0);
|
||||
BoardModelLayerSet(smokeMdl, 2);
|
||||
BoardModelMotionStart(houseMdl[1], 0, 0x40000001);
|
||||
|
||||
while (BoardModelMotionTimeGet(houseMdl[0]) < 90.0f) {
|
||||
|
|
@ -358,16 +413,17 @@ static void OpenBooHouse(void) {
|
|||
BoardModelMotionShiftSet(houseMdl[1], houseHideMot, 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelHookObjReset(houseMdl[0], "yoko02");
|
||||
SetBooBallPos();
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), houseMot[2], 0.0f, 10.0f, 0);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), hostMot[2], 0.0f, 10.0f, 0);
|
||||
}
|
||||
|
||||
static void CloseBooHouse(void) {
|
||||
static void CloseBooHouse(void)
|
||||
{
|
||||
BoardModelPosSet(ballMdl, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelHookSet(houseMdl[0], "yoko02", ballMdl);
|
||||
BoardModelMotionShiftSet(houseMdl[1], 0, 90.0f, 10.0f, 0);
|
||||
BoardModelMotionShiftSet(houseMdl[0], 0, 90.0f, 10.0f, 0);
|
||||
HuPrcSleep(0xA);
|
||||
|
||||
|
||||
while (BoardModelMotionShiftIDGet(houseMdl[0]) != -1) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -376,7 +432,7 @@ static void CloseBooHouse(void) {
|
|||
}
|
||||
HuAudFXPlay(0x336);
|
||||
BoardAudSeqFadeOut(1, 0x3E8);
|
||||
|
||||
|
||||
while (BoardModelMotionEndCheck(houseMdl[0]) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -385,7 +441,8 @@ static void CloseBooHouse(void) {
|
|||
ballMdl = -1;
|
||||
}
|
||||
|
||||
static void CreateBooHouseModel(void) {
|
||||
static void CreateBooHouseModel(void)
|
||||
{
|
||||
s32 var_r31;
|
||||
|
||||
for (var_r31 = 0; var_r31 < 6; var_r31++) {
|
||||
|
|
@ -393,11 +450,12 @@ static void CreateBooHouseModel(void) {
|
|||
houseMdl[var_r31] = BoardModelCreateParam(&houseMdlTbl[var_r31], 0, 0);
|
||||
}
|
||||
}
|
||||
houseShowMot = BoardModelMotionCreate(houseMdl[0], 0x90009);
|
||||
houseHideMot = BoardModelMotionCreate(houseMdl[1], 0x9000A);
|
||||
houseShowMot = BoardModelMotionCreate(houseMdl[0], DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x09));
|
||||
houseHideMot = BoardModelMotionCreate(houseMdl[1], DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x0A));
|
||||
}
|
||||
|
||||
static void KillBooHouseModel(void) {
|
||||
static void KillBooHouseModel(void)
|
||||
{
|
||||
s32 temp_r4;
|
||||
s32 var_r31;
|
||||
|
||||
|
|
@ -411,28 +469,29 @@ static void KillBooHouseModel(void) {
|
|||
BoardModelKill(booMdl);
|
||||
booMdl = -1;
|
||||
}
|
||||
if (lbl_801D37F8 != -1) {
|
||||
BoardModelKill(lbl_801D37F8);
|
||||
lbl_801D37F8 = -1;
|
||||
if (smokeMdl != -1) {
|
||||
BoardModelKill(smokeMdl);
|
||||
smokeMdl = -1;
|
||||
}
|
||||
BoardModelVisibilitySet(BoardBooHouseHostGet(), 0);
|
||||
}
|
||||
|
||||
static void ExecNullSteal(void) {
|
||||
static void ExecNullSteal(void)
|
||||
{
|
||||
HuAudFXPlay(0x4C);
|
||||
BoardWinCreate(2, hostMesTbl[GWBoardGet()][5], BoardWinPortraitGet());
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
}
|
||||
|
||||
static void ExecStarSteal(void) {
|
||||
static void ExecStarSteal(void)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
s32 temp_r29;
|
||||
s32 var_r30;
|
||||
s32 var_r31;
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 0x32; var_r30++) {
|
||||
BoardPlayerCoinsAdd(currPlayer, -1);
|
||||
HuAudFXPlay(0xE);
|
||||
|
|
@ -444,16 +503,16 @@ static void ExecStarSteal(void) {
|
|||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
BoardStatusShowSetAll(0);
|
||||
|
||||
|
||||
while (BoardPickerDoneCheck() == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuAudFXPlay(0x4C);
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(houseMdl[0]), "yoko8", &sp14);
|
||||
sp14.y += 20.0f;
|
||||
BoardModelMotionStart(lbl_801D37F8, 0, 0);
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 1);
|
||||
BoardModelPosSetV(lbl_801D37F8, &sp14);
|
||||
BoardModelMotionStart(smokeMdl, 0, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 1);
|
||||
BoardModelPosSetV(smokeMdl, &sp14);
|
||||
HuPrcSleep(5);
|
||||
|
||||
for (var_r31 = 0xFF; var_r31 > 0; var_r31 -= 0x33) {
|
||||
|
|
@ -464,11 +523,11 @@ static void ExecStarSteal(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(booMdl, 0);
|
||||
|
||||
while (BoardModelMotionEndCheck(lbl_801D37F8) == 0) {
|
||||
|
||||
while (BoardModelMotionEndCheck(smokeMdl) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 0);
|
||||
BoardCameraMotionStartEx(ballMdl, NULL, NULL, 325.0f, -1.0f, 0x15);
|
||||
temp_r29 = BoardBooStealMain();
|
||||
sp8.x = 0.0f;
|
||||
|
|
@ -479,11 +538,11 @@ static void ExecStarSteal(void) {
|
|||
if (temp_r29 == 0) {
|
||||
BoardModelMotionStart(booMdl, 2, 0x40000001);
|
||||
}
|
||||
BoardModelMotionStart(lbl_801D37F8, 0, 0);
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 1);
|
||||
BoardModelMotionStart(smokeMdl, 0, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 1);
|
||||
HuPrcSleep(0xB);
|
||||
BoardModelVisibilitySet(booMdl, 1);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 0xFF; var_r31 += 0x33) {
|
||||
if (var_r31 > 0xFF) {
|
||||
var_r31 = 0xFF;
|
||||
|
|
@ -492,21 +551,21 @@ static void ExecStarSteal(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelAlphaSet(booMdl, -1);
|
||||
|
||||
while (BoardModelMotionEndCheck(lbl_801D37F8) == 0) {
|
||||
|
||||
while (BoardModelMotionEndCheck(smokeMdl) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 0);
|
||||
}
|
||||
|
||||
static void ExecCoinSteal(void) {
|
||||
static void ExecCoinSteal(void)
|
||||
{
|
||||
Vec sp14;
|
||||
Vec sp8;
|
||||
s32 temp_r29;
|
||||
s32 var_r30;
|
||||
s32 var_r31;
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < 5; var_r30++) {
|
||||
BoardPlayerCoinsAdd(currPlayer, -1);
|
||||
HuAudFXPlay(0xE);
|
||||
|
|
@ -518,16 +577,16 @@ static void ExecCoinSteal(void) {
|
|||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
BoardStatusShowSetAll(0);
|
||||
|
||||
|
||||
while (BoardPickerDoneCheck() == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
HuAudFXPlay(0x4C);
|
||||
Hu3DModelObjPosGet(BoardModelIDGet(houseMdl[0]), "yoko8", &sp14);
|
||||
sp14.y += 20.0f;
|
||||
BoardModelMotionStart(lbl_801D37F8, 0, 0);
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 1);
|
||||
BoardModelPosSetV(lbl_801D37F8, &sp14);
|
||||
BoardModelMotionStart(smokeMdl, 0, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 1);
|
||||
BoardModelPosSetV(smokeMdl, &sp14);
|
||||
HuPrcSleep(5);
|
||||
|
||||
for (var_r31 = 0xFF; var_r31 > 0; var_r31 -= 0x33) {
|
||||
|
|
@ -538,11 +597,11 @@ static void ExecCoinSteal(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(booMdl, 0);
|
||||
|
||||
while (BoardModelMotionEndCheck(lbl_801D37F8) == 0) {
|
||||
|
||||
while (BoardModelMotionEndCheck(smokeMdl) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 0);
|
||||
BoardCameraMotionStartEx(ballMdl, NULL, NULL, 325.0f, -1.0f, 0x15);
|
||||
temp_r29 = BoardBooStealMain();
|
||||
sp8.x = 0.0f;
|
||||
|
|
@ -553,11 +612,11 @@ static void ExecCoinSteal(void) {
|
|||
if (temp_r29 == 0) {
|
||||
BoardModelMotionStart(booMdl, 2, 0x40000001);
|
||||
}
|
||||
BoardModelMotionStart(lbl_801D37F8, 0, 0);
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 1);
|
||||
BoardModelMotionStart(smokeMdl, 0, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 1);
|
||||
HuPrcSleep(0xB);
|
||||
BoardModelVisibilitySet(booMdl, 1);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 0xFF; var_r31 += 0x33) {
|
||||
if (var_r31 > 0xFF) {
|
||||
var_r31 = 0xFF;
|
||||
|
|
@ -566,14 +625,15 @@ static void ExecCoinSteal(void) {
|
|||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelAlphaSet(booMdl, -1);
|
||||
|
||||
while (BoardModelMotionEndCheck(lbl_801D37F8) == 0) {
|
||||
|
||||
while (BoardModelMotionEndCheck(smokeMdl) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelVisibilitySet(lbl_801D37F8, 0);
|
||||
BoardModelVisibilitySet(smokeMdl, 0);
|
||||
}
|
||||
|
||||
void ApplySteal(void) {
|
||||
void ApplySteal(void)
|
||||
{
|
||||
s16 spA;
|
||||
s16 sp8;
|
||||
s32 temp_r30;
|
||||
|
|
@ -589,7 +649,7 @@ void ApplySteal(void) {
|
|||
BoardModelAlphaSet(booMdl, 0xFF);
|
||||
var_f31 = BoardDAngleCalc(180.0f + BoardPlayerRotYGet(currPlayer));
|
||||
BoardPlayerMotBlendSet(currPlayer, var_f31, 0xF);
|
||||
|
||||
|
||||
while (BoardPlayerMotBlendCheck(currPlayer) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -597,9 +657,11 @@ void ApplySteal(void) {
|
|||
var_r31 = BoardBooStealValueGet(&spA, &sp8);
|
||||
if (var_r31 == 0) {
|
||||
ApplyBooLight();
|
||||
} else if (stealTarget == 0) {
|
||||
}
|
||||
else if (stealTarget == 0) {
|
||||
ApplyCoinSteal(spA, sp8);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
ApplyStarSteal();
|
||||
}
|
||||
BoardWinCreate(2, hostMesTbl[GWBoardGet()][4], BoardWinPortraitGet());
|
||||
|
|
@ -607,31 +669,36 @@ void ApplySteal(void) {
|
|||
BoardWinKill();
|
||||
}
|
||||
|
||||
void ApplyCoinSteal(s16 arg0, s16 arg1) {
|
||||
void ApplyCoinSteal(s16 arg0, s16 arg1)
|
||||
{
|
||||
u32 var_r31;
|
||||
s32 var_r30;
|
||||
|
||||
if ((s16) arg1 == 0) {
|
||||
var_r31 = 0x70009;
|
||||
} else if ((s16) arg1 < 3) {
|
||||
var_r31 = 0x70008;
|
||||
} else if ((s16) arg1 < 6) {
|
||||
var_r31 = 0x70007;
|
||||
} else if ((s16) arg1 < 8) {
|
||||
var_r31 = 0x70006;
|
||||
} else {
|
||||
var_r31 = 0x70005;
|
||||
if ((s16)arg1 == 0) {
|
||||
var_r31 = MAKE_MESSID(7, 9);
|
||||
}
|
||||
else if ((s16)arg1 < 3) {
|
||||
var_r31 = MAKE_MESSID(7, 8);
|
||||
}
|
||||
else if ((s16)arg1 < 6) {
|
||||
var_r31 = MAKE_MESSID(7, 7);
|
||||
}
|
||||
else if ((s16)arg1 < 8) {
|
||||
var_r31 = MAKE_MESSID(7, 6);
|
||||
}
|
||||
else {
|
||||
var_r31 = MAKE_MESSID(7, 5);
|
||||
}
|
||||
sprintf(&stealAmountStr, "%d", arg0);
|
||||
HuAudFXPlay(0x4B);
|
||||
BoardWinCreate(2, var_r31, 3);
|
||||
BoardWinInsertMesSet((s32) &stealAmountStr, 0);
|
||||
BoardWinInsertMesSet((s32)&stealAmountStr, 0);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
BoardStatusShowSetForce(currPlayer);
|
||||
BoardStatusShowSet(currPlayer, 1);
|
||||
BoardPlayerMotionShiftSet(currPlayer, 7, 0.0f, 8.0f, 0);
|
||||
|
||||
|
||||
for (var_r30 = 0; var_r30 < arg0; var_r30++) {
|
||||
BoardPlayerCoinsAdd(currPlayer, 1);
|
||||
HuAudFXPlay(0xE);
|
||||
|
|
@ -641,7 +708,8 @@ void ApplyCoinSteal(s16 arg0, s16 arg1) {
|
|||
BoardPlayerMotionEndWait(currPlayer);
|
||||
}
|
||||
|
||||
void ApplyStarSteal(void) {
|
||||
void ApplyStarSteal(void)
|
||||
{
|
||||
s32 temp_r31;
|
||||
|
||||
HuAudFXPlay(0x4C);
|
||||
|
|
@ -660,7 +728,7 @@ void ApplyStarSteal(void) {
|
|||
HuPrcSleep(0xA);
|
||||
temp_r31 = HuAudSStreamPlay(6);
|
||||
BoardPlayerMotionEndWait(currPlayer);
|
||||
|
||||
|
||||
while (msmStreamGetStatus(temp_r31) != 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
|
|
@ -669,7 +737,8 @@ void ApplyStarSteal(void) {
|
|||
BoardPlayerVoiceEnableSet(currPlayer, 7, 1);
|
||||
}
|
||||
|
||||
void ApplyBooLight(void) {
|
||||
void ApplyBooLight(void)
|
||||
{
|
||||
BoardWinCreate(2, MAKE_MESSID(7, 11), 3);
|
||||
BoardWinWait();
|
||||
BoardWinKill();
|
||||
|
|
@ -679,7 +748,8 @@ void ApplyBooLight(void) {
|
|||
}
|
||||
}
|
||||
|
||||
void SetBooBallPos(void) {
|
||||
void SetBooBallPos(void)
|
||||
{
|
||||
Mtx sp14;
|
||||
Vec sp8;
|
||||
s16 var_r31;
|
||||
|
|
@ -690,7 +760,8 @@ void SetBooBallPos(void) {
|
|||
BoardModelPosSetV(ballMdl, &sp8);
|
||||
}
|
||||
|
||||
s32 BoardBooComUseCheck(s32 arg0) {
|
||||
s32 BoardBooComUseCheck(s32 arg0)
|
||||
{
|
||||
s32 var_r31;
|
||||
u32 var_r30;
|
||||
s32 var_r29;
|
||||
|
|
@ -703,23 +774,23 @@ s32 BoardBooComUseCheck(s32 arg0) {
|
|||
comStarStealTarget = comCoinStealTarget = -1;
|
||||
var_r26 = var_r27 = -1;
|
||||
switch (GWPlayer[arg0].diff) {
|
||||
case 0:
|
||||
var_r30 = 0x5F;
|
||||
break;
|
||||
case 1:
|
||||
var_r30 = 0x32;
|
||||
break;
|
||||
case 2:
|
||||
var_r30 = 5;
|
||||
break;
|
||||
case 3:
|
||||
var_r30 = 0;
|
||||
break;
|
||||
case 0:
|
||||
var_r30 = 0x5F;
|
||||
break;
|
||||
case 1:
|
||||
var_r30 = 0x32;
|
||||
break;
|
||||
case 2:
|
||||
var_r30 = 5;
|
||||
break;
|
||||
case 3:
|
||||
var_r30 = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 4; var_r31++) {
|
||||
if (var_r31 != arg0) {
|
||||
if ((s32) GWSystem.team == 0 || var_r31 != BoardPlayerSameTeamFind(arg0)) {
|
||||
if ((s32)GWSystem.team == 0 || var_r31 != BoardPlayerSameTeamFind(arg0)) {
|
||||
if (BoardPlayerItemFind(var_r31, 8) == -1 || BoardRandMod(0x64) < var_r30) {
|
||||
var_r29 = BoardPlayerCoinsGet(var_r31);
|
||||
var_r28 = GWStarsGet(var_r31);
|
||||
|
|
@ -731,7 +802,7 @@ s32 BoardBooComUseCheck(s32 arg0) {
|
|||
}
|
||||
if (var_r26 < var_r28) {
|
||||
var_r26 = var_r28;
|
||||
comStarStealTarget = (s8) var_r31;
|
||||
comStarStealTarget = (s8)var_r31;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -745,7 +816,8 @@ s32 BoardBooComUseCheck(s32 arg0) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
void BoardBooHouseTutorialExec(void) {
|
||||
void BoardBooHouseTutorialExec(void)
|
||||
{
|
||||
Vec sp38;
|
||||
Vec sp2C;
|
||||
Vec sp20;
|
||||
|
|
@ -759,7 +831,7 @@ void BoardBooHouseTutorialExec(void) {
|
|||
s32 var_r31;
|
||||
s32 var_r30;
|
||||
|
||||
temp_r27 = BoardDataDirReadAsync(0x90000);
|
||||
temp_r27 = BoardDataDirReadAsync(DATADIR_BYOKODORI);
|
||||
temp_r29 = BoardSpaceFlagSearch(0, 0x08000000);
|
||||
BoardDataAsyncWait(temp_r27);
|
||||
temp_r28 = BoardSpaceLinkFlagSearch(0, temp_r29, 0x02000000);
|
||||
|
|
@ -775,22 +847,22 @@ void BoardBooHouseTutorialExec(void) {
|
|||
sp8.y = 150.0f;
|
||||
sp8.z = 0.0f;
|
||||
BoardCameraMotionStartEx(houseMdl[0], &sp14, &sp8, 1370.0f, -1.0f, 0x15);
|
||||
|
||||
|
||||
for (var_r31 = 0; var_r31 < 6; var_r31++) {
|
||||
if (var_r31 != 0) {
|
||||
houseMdl[var_r31] = BoardModelCreateParam(&houseMdlTbl[var_r31], NULL, NULL);
|
||||
}
|
||||
}
|
||||
houseShowMot = BoardModelMotionCreate(houseMdl[0], 0x90009);
|
||||
houseHideMot = BoardModelMotionCreate(houseMdl[1], 0x9000A);
|
||||
houseShowMot = BoardModelMotionCreate(houseMdl[0], DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x09));
|
||||
houseHideMot = BoardModelMotionCreate(houseMdl[1], DATA_MAKE_NUM(DATADIR_BYOKODORI, 0x0A));
|
||||
OpenBooHouse();
|
||||
|
||||
|
||||
while (BoardModelMotionEndCheck(BoardBooHouseHostGet()) == 0) {
|
||||
HuPrcVSleep();
|
||||
}
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), houseMot[0], 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), hostMot[0], 0.0f, 10.0f, 0x40000001);
|
||||
BoardTutorialHookExec(0x1C, 0);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), houseMot[1], 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelMotionShiftSet(BoardBooHouseHostGet(), hostMot[1], 0.0f, 10.0f, 0x40000001);
|
||||
BoardModelPosSet(ballMdl, 0.0f, 0.0f, 0.0f);
|
||||
BoardModelHookSet(houseMdl[0], "yoko02", ballMdl);
|
||||
BoardModelMotionShiftSet(houseMdl[1], 0, 90.0f, 10.0f, 0);
|
||||
|
|
@ -810,7 +882,7 @@ void BoardBooHouseTutorialExec(void) {
|
|||
BoardModelHookReset(houseMdl[0]);
|
||||
BoardBooKill();
|
||||
ballMdl = -1;
|
||||
|
||||
|
||||
for (var_r30 = 1; var_r30 < 6; var_r30++) {
|
||||
if (houseMdl[var_r30] != -1) {
|
||||
BoardModelKill(houseMdl[var_r30]);
|
||||
|
|
@ -821,9 +893,9 @@ void BoardBooHouseTutorialExec(void) {
|
|||
BoardModelKill(booMdl);
|
||||
booMdl = -1;
|
||||
}
|
||||
if (lbl_801D37F8 != -1) {
|
||||
BoardModelKill(lbl_801D37F8);
|
||||
lbl_801D37F8 = -1;
|
||||
if (smokeMdl != -1) {
|
||||
BoardModelKill(smokeMdl);
|
||||
smokeMdl = -1;
|
||||
}
|
||||
BoardModelVisibilitySet(BoardBooHouseHostGet(), 0);
|
||||
}
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue