#include "REL/mgmodedll.h" #include "game/gamework.h" #include "game/gamework_data.h" #include "game/esprite.h" #include "game/audio.h" #include "game/wipe.h" #include "game/saveload.h" #include "ext_math.h" s16 lbl_1_bss_352[2][7]; s16 lbl_1_bss_34A[4]; s16 lbl_1_bss_348; s16 lbl_1_bss_340[4]; s16 lbl_1_bss_318[10][2]; s16 lbl_1_bss_316; s16 lbl_1_bss_30E[4]; s16 lbl_1_bss_30C; Vec lbl_1_bss_2F4[2]; s16 lbl_1_bss_2F0; s16 lbl_1_bss_2EE; s16 lbl_1_bss_2EC; float lbl_1_bss_2E8; s16 lbl_1_bss_2E6; s16 lbl_1_bss_2E4; s16 lbl_1_bss_2E2; static s16 pad_05_000002E0_bss; s16 lbl_1_data_A0 = -1; s16 lbl_1_data_A2[7] = { 0, 1, 2, 4, 3, 6, 9 }; float lbl_1_data_B0[4] = { 370, 412, 488, 530 }; s32 lbl_1_data_C0[4] = { 0x00620037, 0x0062003D, 0x0062003A, 0x00620040 }; void fn_1_9E44(void); void fn_1_9F64(s16 arg0, s16 arg1, s16 arg2); void fn_1_A364(s16 arg0, float arg1, float arg2, s16 arg3); void fn_1_A624(void); void fn_1_A6A8(void); void fn_1_ACAC(s16 arg0, s16 arg1); void fn_1_ADA0(s32 arg0); void fn_1_AE20(s16 arg0, s16 arg1, s16 arg2, s16 arg3); s16 fn_1_B5A8(s16 *arg0, s16 *arg1); void fn_1_B770(void); void fn_1_B9B8(void); s32 fn_1_BB24(void); void fn_1_BFA0(s16 arg0); s32 fn_1_C0C8(s32 arg0); s32 fn_1_6D28(void) { s16 temp_r31; s16 temp_r30; s16 temp_r29; s16 temp_r28; s16 temp_r27; s32 temp_r26; s32 temp_r25; s32 temp_r24; s16 temp_r23; s16 spC[6]; s16 spA; s16 sp8; float temp_f31; temp_r25 = 1; fn_1_279FC(0); fn_1_A6A8(); fn_1_9E44(); spA = sp8 = 0; mgInstExitEnableF = 1; mgTypeCurr = 0; _SetFlag(11); fn_1_B770(); if(lbl_1_bss_2A6 != 2) { temp_r28 = lbl_1_bss_2C2C[1]; } else { temp_r28 = lbl_1_bss_2C2C[2]; } if(lbl_1_bss_4 == 1 || lbl_1_bss_4 == 2) { mgTypeCurr = fn_1_B5A8(&spA, &sp8); espAttrReset(lbl_1_bss_2C2C[3], HUSPR_ATTR_DISPOFF); espTPLvlSet(lbl_1_bss_2C2C[3], 1.0f); espAttrReset(temp_r28, HUSPR_ATTR_DISPOFF); espPosSet(temp_r28, 288, 70); espAttrReset(lbl_1_bss_2C2C[13], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[13], 450, 216); if(lbl_1_bss_2A6 == 0) { espAttrReset(lbl_1_bss_2C2C[4], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[4], 450, 404); if(lbl_1_bss_4 == 1) { fn_1_BFA0(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8]); espAttrReset(lbl_1_bss_2C2C[14], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[14], 450, 348); for(temp_r30=0; temp_r30<4; temp_r30++) { HuSprAttrReset(lbl_1_bss_34A[temp_r30], 0, HUSPR_ATTR_DISPOFF); HuSprAttrReset(lbl_1_bss_34A[temp_r30], 1, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(lbl_1_bss_34A[temp_r30], (temp_r30*50)+375, 348); } } else { espAttrReset(lbl_1_bss_2C2C[15], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[15], 450, 348); espAttrReset(lbl_1_bss_2C2C[16], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[16], 450, 348); for(temp_r30=0; temp_r30<4; temp_r30++) { HuSprAttrReset(lbl_1_bss_34A[temp_r30], 0, HUSPR_ATTR_DISPOFF); HuSprAttrReset(lbl_1_bss_34A[temp_r30], 1, HUSPR_ATTR_DISPOFF); HuSprGrpPosSet(lbl_1_bss_34A[temp_r30], lbl_1_data_B0[temp_r30], 348); } } } else if(lbl_1_bss_2A6 == 1) { espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[20], 450, 414); } else if(lbl_1_bss_2A6 == 2) { espAttrReset(lbl_1_bss_2C2C[21], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[21], 450, 400); } for(temp_r30=0; temp_r30= ((lbl_1_bss_316-temp_r30)-1)*10 && temp_r31 <= (((lbl_1_bss_316-temp_r30)-1)*10)+10) { temp_f31 = (temp_r31-(((lbl_1_bss_316-temp_r30)-1)*10))/10.0; if(0.0 == temp_f31) { temp_r26++; fn_1_9F64(temp_r26 & 0x1, lbl_1_bss_318[temp_r30][0], 0); } espAttrReset(lbl_1_bss_2C2C[lbl_1_bss_318[temp_r30][1]], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[lbl_1_bss_318[temp_r30][1]], 180, 800+(-530*sind(temp_f31*90.0f))); espPriSet(lbl_1_bss_2C2C[lbl_1_bss_318[temp_r30][1]], (temp_r30*10)+10); fn_1_A364(temp_r26 & 0x1, 180, 800+(-530*sind(temp_f31*90.0f)), (temp_r30*10)+8); } } HuPrcVSleep(); } fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][0], 10, 450, 216); } espAttrReset(lbl_1_bss_2C2C[19], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[19], 204, (sp8*38)+154); espPriSet(lbl_1_bss_2C2C[19], 7); espTPLvlSet(lbl_1_bss_2C2C[19], 0.7); espAttrSet(lbl_1_bss_2C2C[17], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[17], 204, 126); espPriSet(lbl_1_bss_2C2C[17], 8); espAttrSet(lbl_1_bss_2C2C[18], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[18], 204, 410); espPriSet(lbl_1_bss_2C2C[18], 8); espBankSet(lbl_1_bss_2C2C[18], 1); fn_1_A364(0, 180, 270, 7); fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); fn_1_A364(1, 180, 270, 100); fn_1_ACAC(lbl_1_bss_20AC[lbl_1_bss_318[mgTypeCurr][0]], lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]]); fn_1_ADA0(1); HuPrcSleep(10); while(WipeStatGet()) { HuPrcVSleep(); } while(1) { HuPrcVSleep(); if(spA != 0) { espAttrReset(lbl_1_bss_2C2C[17], HUSPR_ATTR_DISPOFF); } else { espAttrSet(lbl_1_bss_2C2C[17], HUSPR_ATTR_DISPOFF); } if(spA+7 < lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]]) { espAttrReset(lbl_1_bss_2C2C[18], HUSPR_ATTR_DISPOFF); } else { espAttrSet(lbl_1_bss_2C2C[18], HUSPR_ATTR_DISPOFF); } temp_r27 = temp_r29 = 0; if(HuPadDStkRep[0] & PAD_BUTTON_UP) { temp_r29 = -1; } else if(HuPadDStkRep[0] & PAD_BUTTON_DOWN) { temp_r29 = 1; } else if((HuPadDStkRep[0] & PAD_BUTTON_LEFT) || (HuPadBtnRep[0] & PAD_BUTTON_TRIGGER_L)) { temp_r27 = -1; } else if((HuPadDStkRep[0] & PAD_BUTTON_RIGHT) || (HuPadBtnRep[0] & PAD_BUTTON_TRIGGER_R)) { temp_r27 = 1; } if(temp_r29 != 0) { if(sp8+temp_r29 < 0 && spA != 0) { spA--; fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8], 5, 450, 216); for(temp_r31=0; temp_r31<=4; temp_r31++) { espPosSet(lbl_1_bss_2C2C[17], 204, 126-(8.0*sind(temp_r31*45.0))); if(temp_r31 == 2){ HuAudFXPlay(772); fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); } HuPrcVSleep(); } } else if(sp8+temp_r29 >= 7 && spA+7 < lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]]) { spA++; fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8], 5, 450, 216); for(temp_r31=0; temp_r31<=4; temp_r31++) { espPosSet(lbl_1_bss_2C2C[18], 204, 410+(8.0*sind(temp_r31*45.0))); if(temp_r31 == 2){ HuAudFXPlay(772); fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); } HuPrcVSleep(); } } else if(sp8+temp_r29 >= 0 && (spA+sp8+temp_r29) < lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]]) { fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8+temp_r29], 5, 450, 216); for(temp_r31=0; temp_r31<=4; temp_r31++) { espPosSet(lbl_1_bss_2C2C[19], 204, ((sp8*38)+154)+(temp_r29*(38.0*sind(22.5*temp_r31)))); HuPrcVSleep(); if(temp_r31 == 2){ HuAudFXPlay(772); } } sp8 += temp_r29; } if(lbl_1_bss_2A4 == 0) { fn_1_BFA0(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8]); } } if(temp_r27 && lbl_1_bss_316 > 1) { HuAudFXPlay(2172); fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); temp_r30 = mgTypeCurr; if(mgTypeCurr+temp_r27 < 0) { mgTypeCurr = lbl_1_bss_316-1; } else { if(mgTypeCurr+temp_r27 >= lbl_1_bss_316) { mgTypeCurr = 0; } else { mgTypeCurr += temp_r27; } } espAttrSet(lbl_1_bss_2C2C[19], HUSPR_ATTR_DISPOFF); espAttrSet(lbl_1_bss_2C2C[17], HUSPR_ATTR_DISPOFF); espAttrSet(lbl_1_bss_2C2C[18], HUSPR_ATTR_DISPOFF); fn_1_ADA0(0); for(temp_r31=0; temp_r31= 10) { temp_r24 = 7; } else { temp_r24 = 20; } fn_1_A364(0, (300.0*sind(temp_r31*9.0))+180.0, 270, temp_r24); HuPrcVSleep(); } fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], 0); espPriSet(lbl_1_bss_2C2C[lbl_1_bss_318[mgTypeCurr][1]], 10); fn_1_A364(0, 180.0, 270, 7); espAttrReset(lbl_1_bss_2C2C[19], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[19], 204, 154); fn_1_ACAC(lbl_1_bss_20AC[lbl_1_bss_318[mgTypeCurr][0]], lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]]); if(lbl_1_bss_318[mgTypeCurr][0] != 9) { fn_1_ADA0(1); } sp8 = spA = 0; if(lbl_1_bss_2A4 == 0) { fn_1_BFA0(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8]); } } if((HuPadBtnDown[0] & PAD_BUTTON_A) && lbl_1_bss_2A6 == 2) { temp_r31 = lbl_1_bss_318[mgTypeCurr][0]; if(!GWMGAvailGet(lbl_1_bss_264C[temp_r31][spA+sp8]+401)) { HuAudFXPlay(4); continue; } else { if(lbl_1_bss_318[mgTypeCurr][0] != 9) { HuAudFXPlay(2); temp_r31 = lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8]+401; if(!GWMGCustomGet(temp_r31)) { GWMGCustomSet(temp_r31); } else { GWMGCustomReset(temp_r31); } fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8], 0, 450, 216); fn_1_B9B8(); } else { if(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8] >= 0) { HuAudFXPlay(2); temp_r31 = lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8]+401; GWMGCustomReset(temp_r31); fn_1_B9B8(); if(lbl_1_bss_2638[lbl_1_bss_318[mgTypeCurr][0]] <= spA+sp8) { if(--sp8 < 0) { sp8 = 0; spA--; } espPosSet(lbl_1_bss_2C2C[19], 204, (sp8*38)+154); } fn_1_9F64(0, lbl_1_bss_318[mgTypeCurr][0], spA); fn_1_AE20(lbl_1_bss_264C[lbl_1_bss_318[mgTypeCurr][0]][spA+sp8], 0, 450, 216); } } } } if(HuPadBtnDown[0] & PAD_BUTTON_B) { HuAudFXPlay(3); if(lbl_1_bss_2A6 == 2 && !fn_1_BB24()) { continue; } temp_r25 = 0; break; } if(!(HuPadBtnDown[0] & PAD_BUTTON_A)) { continue; } if(lbl_1_bss_2A6) { continue; } temp_r31 = lbl_1_bss_318[mgTypeCurr][0]; if(!GWMGAvailGet(lbl_1_bss_264C[temp_r31][spA+sp8]+401)) { HuAudFXPlay(4); continue; } HuAudFXPlay(773); GWSystem.mg_next = lbl_1_bss_264C[temp_r31][spA+sp8]; if(lbl_1_bss_2A4 == 0) { GWPlayerCfg[0].group = 0; GWPlayerCfg[1].group = 1; GWPlayerCfg[2].group = 2; GWPlayerCfg[3].group = 3; if((temp_r31 == 1 || temp_r31 == 2) && !fn_1_C0C8(0)) { continue; } fn_1_2783C(1); } else if(lbl_1_bss_2A4 == 1) { fn_1_2783C(2); } while(1) { HuPrcVSleep(); } } espAttrSet(lbl_1_bss_2C2C[19], HUSPR_ATTR_DISPOFF); espAttrSet(lbl_1_bss_2C2C[17], HUSPR_ATTR_DISPOFF); espAttrSet(lbl_1_bss_2C2C[18], HUSPR_ATTR_DISPOFF); if(lbl_1_bss_2A6 == 2) { for(temp_r31=0; temp_r31<7; temp_r31++) { HuSprAttrSet(lbl_1_bss_2E2, temp_r31, HUSPR_ATTR_DISPOFF); } } fn_1_ADA0(0); fn_1_AE20(-1, 5, 450, 216); for(temp_r31=0; temp_r31<=20; temp_r31++) { if(temp_r31 <= 20) { temp_f31 = temp_r31/20.0; espAttrReset(temp_r28, HUSPR_ATTR_DISPOFF); espPosSet(temp_r28, 288, -100.0+(170*cosd(temp_f31*90.0f))); } if(temp_r31 <= 10) { temp_f31 = temp_r31/10.0; espAttrReset(lbl_1_bss_2C2C[13], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[13], (-350*cosd(temp_f31*90.0f))+800, 216); if(lbl_1_bss_2A6 == 0) { espPosSet(lbl_1_bss_2C2C[4], (-350*cosd(temp_f31*90.0f))+800, 404); if(lbl_1_bss_2A4 != 1) { espPosSet(lbl_1_bss_2C2C[14], (-350*cosd(temp_f31*90.0f))+800, 348); for(temp_r30=0; temp_r30<4; temp_r30++) { HuSprGrpPosSet(lbl_1_bss_34A[temp_r30], (temp_r30*50)+(((-350*cosd(temp_f31*90.0f))+800)-75), 348); } } else { espPosSet(lbl_1_bss_2C2C[15], (-350*cosd(temp_f31*90.0f))+800, 348); espPosSet(lbl_1_bss_2C2C[16], (-350*cosd(temp_f31*90.0f))+800, 348); for(temp_r30=0; temp_r30<4; temp_r30++) { HuSprGrpPosSet(lbl_1_bss_34A[temp_r30], (800*(1-cosd(temp_f31*90.0f)))+lbl_1_data_B0[temp_r30], 348); } } } else { if(lbl_1_bss_2A6 == 1) { espAttrReset(lbl_1_bss_2C2C[20], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[20], (-350*cosd(temp_f31*90.0f))+800, 414); } else if(lbl_1_bss_2A6 == 2) { espAttrReset(lbl_1_bss_2C2C[21], HUSPR_ATTR_DISPOFF); espPosSet(lbl_1_bss_2C2C[21], (-350*cosd(temp_f31*90.0f))+800, 400); } } } temp_f31 = temp_r31/20.0; for(temp_r30=0; temp_r30spacing_x = 0; HuWinBGTPLvlSet(window, 0); HuWinMesSpeedSet(window, 0); HuWinDispOff(window); (void)i; } } } void fn_1_9F64(s16 arg0, s16 arg1, s16 arg2) { s16 i; s16 no; s16 window; if(lbl_1_bss_2A6 == 2 && lbl_1_bss_30C == arg0) { for(i=0; i<4; i++) { HuSprAttrSet(lbl_1_bss_2E2, i+14, HUSPR_ATTR_DISPOFF); } } if(arg1 == 9) { for(i=0; i<7; i++) { HuSprAttrSet(lbl_1_bss_2E2, i+(arg0*7), HUSPR_ATTR_DISPOFF); window = lbl_1_bss_352[arg0][i]; if(i+arg2 >= lbl_1_bss_2638[9]) { HuWinDispOff(window); } else { no = lbl_1_bss_264C[9][i+arg2]; if(no < 0) { lbl_1_bss_30C = arg0; no = -no-1; lbl_1_bss_30E[no] = i; HuSprAttrReset(lbl_1_bss_2E2, no+14, HUSPR_ATTR_DISPOFF); HuSprPosSet(lbl_1_bss_2E2, no+14, 24+lbl_1_bss_2F4[arg0].x, (lbl_1_bss_2F4[arg0].y+(i*38))-116); HuWinDispOff(window); } else { HuWinMesSet(window, mgInfoTbl[no].name_mess); HuWinDispOn(window); } } } } else { for(i=0; i<7; i++) { window = lbl_1_bss_352[arg0][i]; if(i+arg2 >= lbl_1_bss_2638[arg1]) { HuWinDispOff(window); if(lbl_1_bss_2A6 == 2) { HuSprAttrSet(lbl_1_bss_2E2, i+(arg0*7), HUSPR_ATTR_DISPOFF); } } else { no = lbl_1_bss_264C[arg1][i+arg2]; if(GWMGAvailGet(no+401)) { HuWinMesSet(window, mgInfoTbl[no].name_mess); } else { HuWinMesSet(window, 0x230000); } HuWinDispOn(window); if(lbl_1_bss_2A6 == 2) { if(GWMGCustomGet(no+401)) { HuSprAttrReset(lbl_1_bss_2E2, i+(arg0*7), HUSPR_ATTR_DISPOFF); } else { HuSprAttrSet(lbl_1_bss_2E2, i+(arg0*7), HUSPR_ATTR_DISPOFF); } } } } } } void fn_1_A364(s16 arg0, float arg1, float arg2, s16 arg3) { s16 i; lbl_1_bss_2F4[arg0].x = arg1; lbl_1_bss_2F4[arg0].y = arg2; for(i=0; i<7; i++) { s16 window = lbl_1_bss_352[arg0][i]; HuWinPosSet(window, arg1-105, (arg2-136)+(i*38)); HuWinPriSet(window, arg3); if(lbl_1_bss_2A6 == 2) { HuSprPosSet(lbl_1_bss_2E2, i+(arg0*7), arg1+24, arg2+(i*38)-116); HuSprPriSet(lbl_1_bss_2E2, i+(arg0*7), arg3); } } if(lbl_1_bss_2A6 == 2 && lbl_1_bss_30C == arg0) { for(i=0; i<4; i++) { HuSprPosSet(lbl_1_bss_2E2, i+14, arg1+24, arg2+(lbl_1_bss_30E[i]*38)-116); HuSprPriSet(lbl_1_bss_2E2, i+14, arg3+1); } } } void fn_1_A624(void) { s16 j; s16 i; for(i=0; i<2; i++) { for(j=0; j<7; j++) { HuWinKill(lbl_1_bss_352[i][j]); } } } void fn_1_A6A8(void) { s16 spA[2]; s16 i; AnimData *anim; s16 sprite; s16 group; s16 player; s16 bank; s16 iscom; if(lbl_1_bss_2A4 == 1) { spA[0] = 0; spA[1] = 2; for(i=0; i<4; i++) { if(GWPlayerCfg[i].group >= 2) { lbl_1_bss_340[i] = 0; } else { lbl_1_bss_340[spA[GWPlayerCfg[i].group]] = i; spA[GWPlayerCfg[i].group]++; } } } else { for(i=0; i<4; i++) { lbl_1_bss_340[i] = i; } } for(i=0; i<4; i++) { if(lbl_1_bss_34A[i]) { HuSprGrpKill(lbl_1_bss_34A[i]); } player = lbl_1_bss_340[i]; group = HuSprGrpCreate(2); lbl_1_bss_34A[i] = group; anim = HuSprAnimRead(HuDataReadNum(0x620010+GWPlayerCfg[player].character, MEMORY_DEFAULT_NUM)); sprite = HuSprCreate(anim, 200, 0); HuSprGrpMemberSet(group, 0, sprite); if(iscom = GWPlayerCfg[player].iscom) { anim = HuSprAnimRead(HuDataReadNum(0x620027, MEMORY_DEFAULT_NUM)); bank = GWPlayerCfg[player].diff; } else { anim = HuSprAnimRead(HuDataReadNum(0x620026, MEMORY_DEFAULT_NUM)); bank = lbl_1_bss_340[i]; } sprite = HuSprCreate(anim, 200, bank); HuSprGrpMemberSet(group, 1, sprite); HuSprPosSet(group, 1, 0, 20); HuSprAttrSet(lbl_1_bss_34A[i], 0, HUSPR_ATTR_DISPOFF); HuSprAttrSet(lbl_1_bss_34A[i], 1, HUSPR_ATTR_DISPOFF); } if(lbl_1_bss_2E6) { HuSprGrpKill(lbl_1_bss_2E6); } group = HuSprGrpCreate(5); lbl_1_bss_2E6 = group; anim = HuSprAnimRead(HuDataReadNum(0x62002D, MEMORY_DEFAULT_NUM)); for(i=0; i<5; i++) { sprite = HuSprCreate(anim, 5, 0); HuSprGrpMemberSet(group, i, sprite); HuSprPosSet(group, i, (i*16)-32, 0); } HuSprBankSet(group, 2, 10); HuSprGrpPosSet(group, 284, 410); fn_1_ADA0(0); if(lbl_1_bss_2A6 == 2 && lbl_1_bss_2E2 == 0) { anim = HuSprAnimRead(HuDataReadNum(0x62002B, MEMORY_DEFAULT_NUM)); lbl_1_bss_2E2 = HuSprGrpCreate(18); for(i=0; i<14; i++) { sprite = HuSprCreate(anim, 8, 0); HuSprGrpMemberSet(lbl_1_bss_2E2, i, sprite); HuSprColorSet(lbl_1_bss_2E2, i, 255, 0, 0); HuSprAttrSet(lbl_1_bss_2E2, i, HUSPR_ATTR_ADDCOL|HUSPR_ATTR_DISPOFF); HuSprTPLvlSet(lbl_1_bss_2E2, i, 0.8f); } for(i=0; i<4; i++) { anim = HuSprAnimRead(HuDataReadNum(lbl_1_data_C0[i], MEMORY_DEFAULT_NUM)); sprite = HuSprCreate(anim, 8, 0); HuSprGrpMemberSet(lbl_1_bss_2E2, i+14, sprite); HuSprAttrSet(lbl_1_bss_2E2, i+14, HUSPR_ATTR_DISPOFF); } HuSprGrpPosSet(lbl_1_bss_2E2, 0, 0); } lbl_1_data_A0 = -1; (void)sprite; } void fn_1_ACAC(s16 arg0, s16 arg1) { s16 digit; digit = arg0/10; HuSprBankSet(lbl_1_bss_2E6, 0, digit); arg0 -= digit*10; HuSprBankSet(lbl_1_bss_2E6, 1, arg0); digit = arg1/10; HuSprBankSet(lbl_1_bss_2E6, 3, digit); arg1 -= digit*10; HuSprBankSet(lbl_1_bss_2E6, 4, arg1); } void fn_1_ADA0(s32 arg0) { s16 i; for(i=0; i<5; i++) { if(arg0) { HuSprAttrReset(lbl_1_bss_2E6, i, HUSPR_ATTR_DISPOFF); } else { HuSprAttrSet(lbl_1_bss_2E6, i, HUSPR_ATTR_DISPOFF); } } } void fn_1_AED0(void); void fn_1_AE20(s16 arg0, s16 arg1, s16 arg2, s16 arg3) { lbl_1_bss_2F0 = arg0; lbl_1_bss_2E8 = arg1; lbl_1_bss_2EE = arg2; lbl_1_bss_2EC = arg3; HuPrcChildCreate(fn_1_AED0, 100, 12288, 0, HuPrcCurrentGet()); } void fn_1_AED0(void) { s16 temp_r31; s16 temp_r30; AnimData *temp_r29; s16 temp_r28; s16 temp_r27; s32 temp_r26; temp_r27 = lbl_1_data_A0; if(lbl_1_bss_2F0 < 0) { for(temp_r30=1; temp_r30<=lbl_1_bss_2E8; temp_r30++) { HuSprGrpTPLvlSet(temp_r27, 1.0-(temp_r30/lbl_1_bss_2E8)); HuPrcVSleep(); } if(temp_r27 != -1) { HuSprGrpKill(temp_r27); } lbl_1_data_A0 = -1; HuPrcEnd(); while(1) { HuPrcVSleep(); } } lbl_1_data_A0 = HuSprGrpCreate(4); temp_r26 = mgInfoTbl[lbl_1_bss_2F0].mg_pic[0]; if(GWMGAvailGet(lbl_1_bss_2F0+401)) { temp_r29 = HuSprAnimRead(HuDataReadNumHeapShortForce(temp_r26, MEMORY_DEFAULT_NUM, HEAP_DATA)); } else { temp_r29 = HuSprAnimReadFile(0x62002C); } temp_r28 = HuSprCreate(temp_r29, 200, 0); HuSprGrpMemberSet(lbl_1_data_A0, 0, temp_r28); HuSprGrpPosSet(lbl_1_data_A0, lbl_1_bss_2EE, lbl_1_bss_2EC); HuSprGrpScaleSet(lbl_1_data_A0, 0.6f, 0.6f); temp_r31 = 0; if(mgInfoTbl[lbl_1_bss_2F0].flag & 0x1) { temp_r29 = HuSprAnimReadFile(0x620024); temp_r28 = HuSprCreate(temp_r29, 190, 0); HuSprGrpMemberSet(lbl_1_data_A0, temp_r31+1, temp_r28); HuSprPosSet(lbl_1_data_A0, temp_r31+1, (355.0/3.0)-((temp_r31*50)*(100.0/60.0)), (355.0f/3.0f)); HuSprScaleSet(lbl_1_data_A0, temp_r31+1, 100.0f/60.0f, 100.0f/60.0f); temp_r31++; } if(mgInfoTbl[lbl_1_bss_2F0].flag & 0x2) { temp_r29 = HuSprAnimReadFile(0x620023); temp_r28 = HuSprCreate(temp_r29, 190, 0); HuSprGrpMemberSet(lbl_1_data_A0, temp_r31+1, temp_r28); HuSprPosSet(lbl_1_data_A0, temp_r31+1, (355.0/3.0)-((temp_r31*50)*(100.0/60.0)), (355.0f/3.0f)); HuSprScaleSet(lbl_1_data_A0, temp_r31+1, 100.0f/60.0f, 100.0f/60.0f); temp_r31++; } if(GWMGCustomGet(lbl_1_bss_2F0+401)) { temp_r29 = HuSprAnimReadFile(0x620022); temp_r28 = HuSprCreate(temp_r29, 190, 0); HuSprGrpMemberSet(lbl_1_data_A0, temp_r31+1, temp_r28); HuSprPosSet(lbl_1_data_A0, temp_r31+1, (355.0/3.0)-((temp_r31*50)*(100.0/60.0)), (355.0f/3.0f)); HuSprScaleSet(lbl_1_data_A0, temp_r31+1, 100.0f/60.0f, 100.0f/60.0f); temp_r31++; } for(temp_r30=1; temp_r30<=lbl_1_bss_2E8; temp_r30++) { if(temp_r27 != -1) { HuSprGrpTPLvlSet(temp_r27, 1.0-(temp_r30/lbl_1_bss_2E8)); } HuSprGrpTPLvlSet(lbl_1_data_A0, temp_r30/lbl_1_bss_2E8); HuPrcVSleep(); } if(temp_r27 != -1) { HuSprGrpKill(temp_r27); } lbl_1_bss_348 = lbl_1_bss_2F0; HuPrcEnd(); while(1) { HuPrcVSleep(); } } s16 fn_1_B5A8(s16 *arg0, s16 *arg1) { s16 mgNo = GWSystem.mg_next; s16 mgType = mgInfoTbl[mgNo].type; s16 ret; s16 i; for(i=ret=0; i= 7 && i+7 >= lbl_1_bss_2638[mgType]) { i = lbl_1_bss_2638[mgType]-7; } *arg0 = i; if(lbl_1_bss_2638[mgType] < 7) { *arg0 = 0; } *arg1 = *arg1-*arg0; return ret; } void fn_1_B770(void) { if(lbl_1_bss_2A6 == 2) { lbl_1_bss_316 = 5; lbl_1_bss_318[0][0] = 0; lbl_1_bss_318[0][1] = 5; lbl_1_bss_318[1][0] = 1; lbl_1_bss_318[1][1] = 6; lbl_1_bss_318[2][0] = 2; lbl_1_bss_318[2][1] = 7; lbl_1_bss_318[3][0] = 4; lbl_1_bss_318[3][1] = 8; lbl_1_bss_318[4][0] = 9; lbl_1_bss_318[4][1] = 11; fn_1_B9B8(); } else if(lbl_1_bss_2A4 == 0 || lbl_1_bss_2A6 == 1) { lbl_1_bss_316 = 7; lbl_1_bss_318[0][0] = 0; lbl_1_bss_318[0][1] = 5; lbl_1_bss_318[1][0] = 1; lbl_1_bss_318[1][1] = 6; lbl_1_bss_318[2][0] = 2; lbl_1_bss_318[2][1] = 7; lbl_1_bss_318[3][0] = 4; lbl_1_bss_318[3][1] = 8; lbl_1_bss_318[4][0] = 3; lbl_1_bss_318[4][1] = 9; lbl_1_bss_318[5][0] = 6; lbl_1_bss_318[5][1] = 10; lbl_1_bss_318[6][0] = 8; lbl_1_bss_318[6][1] = 12; } else if(lbl_1_bss_2A4 == 1) { lbl_1_bss_316 = 1; lbl_1_bss_318[0][0] = 2; lbl_1_bss_318[0][1] = 7; } } void fn_1_B9B8(void) { s16 customNum; s16 i; for(i=customNum=0; i<4; i++) { s16 j; lbl_1_bss_264C[9][customNum++] = -i-1; for(j=0; j= 4 && customNum[1] >= 3 && customNum[2] >= 3 && customNum[3] >= 2) { HuWinMesMaxSizeGet(1, winSize, 0x280030); window = HuWinExCreateStyled(-10000, -10000, winSize[0], winSize[1], -1, 1); windowP = &winData[window]; windowP->active_pad = 1; HuWinMesPalSet(window, 7, 0, 0, 0); HuWinPriSet(window, 3); HuWinExAnimIn(window); HuWinMesSet(window, 0x280030); HuWinMesWait(window); HuWinExAnimOut(window); HuWinExCleanup(window); return 1; } else { HuWinInsertMesSizeGet(MAKE_MESSID_PTR(messInsertBase), 0); HuWinInsertMesSizeGet(MAKE_MESSID_PTR(messInsertBase), 1); HuWinInsertMesSizeGet(MAKE_MESSID_PTR(messInsertBase), 2); HuWinInsertMesSizeGet(MAKE_MESSID_PTR(messInsertBase), 3); HuWinMesMaxSizeGet(3, winSize, 0x28002B, 0x28002C, 0x28002D); window = HuWinExCreateStyled(-10000, -10000, winSize[0], winSize[1], -1, 1); windowP = &winData[window]; windowP->active_pad = 1; HuWinMesPalSet(window, 7, 0, 0, 0); HuWinPriSet(window, 3); HuWinExAnimIn(window); for(j=0; j<4; j++) { strcpy(&messInsert[j][0], messInsertBase); } for(j=0; j<4; j++) { if(customNum[j] >= customMinNum[j]) { messInsert[j][1] = 5; } else { messInsert[j][2] = (customMinNum[j]+'0'-customNum[j]); } HuWinInsertMesSet(window, MAKE_MESSID_PTR(&messInsert[j][0]), (s16)j); } HuWinMesSet(window, 0x28002C); HuWinMesWait(window); HuWinMesSet(window, 0x28002B); HuWinMesWait(window); HuWinMesSet(window, 0x28002D); HuWinMesWait(window); choice = HuWinChoiceGet(window, 0); HuWinExAnimOut(window); HuWinExCleanup(window); if(choice == 0) { return 0; } else { return 1; } } } void fn_1_BFA0(s16 arg0) { s16 i; for(i=0; i<4; i++) { HuSprGrpTPLvlSet(lbl_1_bss_34A[i], 1.0f); } if(mgInfoTbl[arg0].ovl == OVL_M450) { HuSprGrpTPLvlSet(lbl_1_bss_34A[1], 0.0f); } if(mgInfoTbl[arg0].type == 6 || mgInfoTbl[arg0].type == 8) { HuSprGrpTPLvlSet(lbl_1_bss_34A[2], 0.0f); HuSprGrpTPLvlSet(lbl_1_bss_34A[3], 0.0f); return; } } float lbl_1_data_E0[2][4] = { -132, -12, 60, 132, -132, -60, 60, 132 }; u8 lbl_1_data_100[16] = { 0, 1, 2, 3, 1, 0, 2, 3, 2, 0, 1, 3, 3, 0, 1, 2 }; u8 lbl_1_data_110[12] = { 0, 1, 2, 3, 0, 2, 1, 3, 0, 3, 1, 2, }; s32 fn_1_C0C8(s32 arg0) { s16 temp_r31; s16 temp_r30; float *temp_r29; s16 temp_r28; AnimData *temp_r27; s16 temp_r26; s16 temp_r25; s16 temp_r24; s16 temp_r23; WindowData *temp_r22; AnimData *temp_r21; float temp_f31; float temp_f30; float temp_f29; if(mgTypeCurr == 1) { temp_r29 = &lbl_1_data_E0[0][0]; temp_f29 = 216; } else { temp_r29 = &lbl_1_data_E0[1][0]; temp_f29 = 288; } temp_r28 = HuSprGrpCreate(16); for(temp_r31=0; temp_r31<4; temp_r31++) { temp_r27 = HuSprAnimReadFile(lbl_1_bss_8.unk24[temp_r31].unk68+0x620067); temp_r26 = HuSprCreate(temp_r27, 4, 0); HuSprGrpMemberSet(temp_r28, 4*temp_r31, temp_r26); HuSprPosSet(temp_r28, 4*temp_r31, temp_r29[temp_r31], 0); if(mgTypeCurr == 1) { if(temp_r31 == 0) { temp_r27 = HuSprAnimReadFile(0x620075); } else { temp_r27 = HuSprAnimReadFile(0x620076); } } else { if(temp_r31 < 2) { temp_r27 = HuSprAnimReadFile(0x620075); } else { temp_r27 = HuSprAnimReadFile(0x620076); } } temp_r26 = HuSprCreate(temp_r27, 3, 0); HuSprGrpMemberSet(temp_r28, (4*temp_r31)+1, temp_r26); HuSprPosSet(temp_r28, (4*temp_r31)+1, temp_r29[temp_r31], 0); if(GWPlayerCfg[temp_r31].iscom) { temp_r27 = HuSprAnimReadFile(0x620074); } else { temp_r27 = HuSprAnimReadFile(0x620070+GWPlayerCfg[temp_r31].pad_idx); } temp_r26 = HuSprCreate(temp_r27, 2, 1); HuSprGrpMemberSet(temp_r28, (4*temp_r31)+2, temp_r26); HuSprPosSet(temp_r28, (4*temp_r31)+2, temp_r29[temp_r31], 0); temp_r27 = HuSprAnimReadFile(0x62007B); temp_r26 = HuSprCreate(temp_r27, 2, GWPlayerCfg[temp_r31].diff); HuSprGrpMemberSet(temp_r28, (4*temp_r31)+3, temp_r26); HuSprPosSet(temp_r28, (4*temp_r31)+3, temp_r29[temp_r31], 38); if(!GWPlayerCfg[temp_r31].iscom) { HuSprAttrSet(temp_r28, (4*temp_r31)+3, HUSPR_ATTR_DISPOFF); } } temp_r25 = HuSprGrpCreate(8); temp_r27 = HuSprAnimRead(HuDataReadNum(0x620065, MEMORY_DEFAULT_NUM)); temp_r21 = HuSprAnimRead(HuDataReadNum(0x620066, MEMORY_DEFAULT_NUM)); for(temp_r31=0; temp_r31<4; temp_r31++) { temp_r26 = HuSprCreate(temp_r27, 3, temp_r31); HuSprGrpMemberSet(temp_r25, (temp_r31*2), temp_r26); HuSprPosSet(temp_r25, (temp_r31*2), ((temp_r31%2)*380)-190, ((temp_r31/2)*156)-68); temp_r26 = HuSprCreate(temp_r21, 4, temp_r31); HuSprGrpMemberSet(temp_r25, (temp_r31*2)+1, temp_r26); HuSprTPLvlSet(temp_r25, (temp_r31*2)+1, 0.5f); HuSprPosSet(temp_r25, (temp_r31*2)+1, ((temp_r31%2)*380)-190, ((temp_r31/2)*156)-60); } espTPLvlSet(lbl_1_bss_2C2C[22], 0.9f); espAttrReset(lbl_1_bss_2C2C[22], HUSPR_ATTR_DISPOFF); espAttrReset(lbl_1_bss_2C2C[24], HUSPR_ATTR_DISPOFF); espAttrReset(lbl_1_bss_2C2C[23], HUSPR_ATTR_DISPOFF); espAttrReset(lbl_1_bss_2C2C[25], HUSPR_ATTR_DISPOFF); espAttrReset(lbl_1_bss_2C2C[26], HUSPR_ATTR_DISPOFF); espBankSet(lbl_1_bss_2C2C[25], 1); espPosSet(lbl_1_bss_2C2C[22], 288, 240); for(temp_r31=0; temp_r31<=30; temp_r31++) { if(temp_r31 <= 20) { temp_f30 = temp_r31/20.0; temp_f31 = -300+(560*sind(temp_f30*90.0f)); espPosSet(lbl_1_bss_2C2C[22], 288, temp_f31); espPosSet(lbl_1_bss_2C2C[24], 288, temp_f31-50); espPosSet(lbl_1_bss_2C2C[23], temp_f29, temp_f31+20); espPosSet(lbl_1_bss_2C2C[26], 108, temp_f31+20); espPosSet(lbl_1_bss_2C2C[25], 468, temp_f31+20); HuSprGrpPosSet(temp_r28, 288, temp_f31+20); HuSprGrpPosSet(temp_r25, 288, temp_f31); } else { temp_f30 = (temp_r31-20)/10.0; temp_f31 = 240+(20*cosd(temp_f30*90.0f)); espPosSet(lbl_1_bss_2C2C[22], 288, temp_f31); espPosSet(lbl_1_bss_2C2C[24], 288, temp_f31-50); espPosSet(lbl_1_bss_2C2C[23], temp_f29, temp_f31+20); espPosSet(lbl_1_bss_2C2C[26], 108, temp_f31+20); espPosSet(lbl_1_bss_2C2C[25], 468, temp_f31+20); HuSprGrpPosSet(temp_r28, 288, temp_f31+20); HuSprGrpPosSet(temp_r25, 288, temp_f31); } HuPrcVSleep(); } temp_r24 = fn_1_25CA8(0x1A0020); temp_r22 = &winData[temp_r24]; HuWinPriSet(temp_r24, 5); HuWinPosSet(temp_r24, (576.0f-temp_r22->w)/2.0f, 310.0f); temp_r30 = 0; temp_r23 = 0; while(1) { s16 spC; HuPrcVSleep(); if(HuPadBtnDown[0] & PAD_BUTTON_B) { HuAudFXPlay(3); goto loop_end; } spC = 0; if(HuPadDStkRep[0] & PAD_BUTTON_LEFT) { HuAudFXPlay(772); for(temp_r31=0; temp_r31<=5; temp_r31++) { temp_f30 = temp_r31/5.0; espPosSet(lbl_1_bss_2C2C[26], 108-(10*sind(temp_f30*90.0f)), 20+temp_f31); HuPrcVSleep(); } temp_r30--; if(mgTypeCurr == 1) { if(temp_r30 < 0) { temp_r30 = 3; } if(temp_r30 >= 4) { temp_r30 = 0; } for(temp_r31=0; temp_r31<4; temp_r31++) { HuSprPosSet(temp_r28, lbl_1_data_100[(temp_r30*4)+temp_r31]*4, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_100[(temp_r30*4)+temp_r31]*4)+2, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_100[(temp_r30*4)+temp_r31]*4)+3, temp_r29[temp_r31], 38); } } else { if(temp_r30 < 0) { temp_r30 = 2; } if(temp_r30 >= 3) { temp_r30 = 0; } for(temp_r31=0; temp_r31<4; temp_r31++) { HuSprPosSet(temp_r28, lbl_1_data_110[(temp_r30*4)+temp_r31]*4, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_110[(temp_r30*4)+temp_r31]*4)+2, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_110[(temp_r30*4)+temp_r31]*4)+3, temp_r29[temp_r31], 38); } } for(temp_r31=0; temp_r31<=5; temp_r31++) { temp_f30 = temp_r31/5.0; espPosSet(lbl_1_bss_2C2C[26], 108-(10*cosd(temp_f30*90.0f)), 20+temp_f31); HuPrcVSleep(); } } else if(HuPadDStkRep[0] & PAD_BUTTON_RIGHT) { HuAudFXPlay(772); for(temp_r31=0; temp_r31<=5; temp_r31++) { temp_f30 = temp_r31/5.0; espPosSet(lbl_1_bss_2C2C[25], 468+(10*sind(temp_f30*90.0f)), 20+temp_f31); HuPrcVSleep(); } temp_r30++; if(mgTypeCurr == 1) { if(temp_r30 < 0) { temp_r30 = 3; } if(temp_r30 >= 4) { temp_r30 = 0; } for(temp_r31=0; temp_r31<4; temp_r31++) { HuSprPosSet(temp_r28, lbl_1_data_100[(temp_r30*4)+temp_r31]*4, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_100[(temp_r30*4)+temp_r31]*4)+2, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_100[(temp_r30*4)+temp_r31]*4)+3, temp_r29[temp_r31], 38); } } else { if(temp_r30 < 0) { temp_r30 = 2; } if(temp_r30 >= 3) { temp_r30 = 0; } for(temp_r31=0; temp_r31<4; temp_r31++) { HuSprPosSet(temp_r28, lbl_1_data_110[(temp_r30*4)+temp_r31]*4, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_110[(temp_r30*4)+temp_r31]*4)+2, temp_r29[temp_r31], 0); HuSprPosSet(temp_r28, (lbl_1_data_110[(temp_r30*4)+temp_r31]*4)+3, temp_r29[temp_r31], 38); } } for(temp_r31=0; temp_r31<=5; temp_r31++) { temp_f30 = temp_r31/5.0; espPosSet(lbl_1_bss_2C2C[25], 468+(10*cosd(temp_f30*90.0f)), 20+temp_f31); HuPrcVSleep(); } } if(HuPadBtnDown[0] & (PAD_BUTTON_A|PAD_BUTTON_START)) { break; } } HuAudFXPlay(773); if(mgTypeCurr == 1) { GWPlayerCfg[lbl_1_data_100[temp_r30*4]].group = 0; for(temp_r31=1; temp_r31<4; temp_r31++) { GWPlayerCfg[lbl_1_data_100[(temp_r30*4)+temp_r31]].group = 1; } } else { for(temp_r31=0; temp_r31<2; temp_r31++) { GWPlayerCfg[lbl_1_data_110[(temp_r30*4)+temp_r31]].group = 0; } for(temp_r31=2; temp_r31<4; temp_r31++) { GWPlayerCfg[lbl_1_data_110[(temp_r30*4)+temp_r31]].group = 1; } } if(arg0 != 0) { temp_r23 = 1; } else { return 1; } loop_end: fn_1_25E74(temp_r24); for(temp_r31=0; temp_r31<=30; temp_r31++) { if(temp_r31 <= 10) { temp_f30 = temp_r31/10.0; temp_f31 = 240+(20*sind(temp_f30*90.0f)); espPosSet(lbl_1_bss_2C2C[22], 288, temp_f31); espPosSet(lbl_1_bss_2C2C[24], 288, temp_f31-50); espPosSet(lbl_1_bss_2C2C[23], temp_f29, temp_f31+20); espPosSet(lbl_1_bss_2C2C[26], 108, temp_f31+20); espPosSet(lbl_1_bss_2C2C[25], 468, temp_f31+20); HuSprGrpPosSet(temp_r28, 288, temp_f31+20); HuSprGrpPosSet(temp_r25, 288, temp_f31); } else { temp_f30 = (temp_r31-10)/20.0; temp_f31 = -300+(560*cosd(temp_f30*90.0f)); espPosSet(lbl_1_bss_2C2C[22], 288, temp_f31); espPosSet(lbl_1_bss_2C2C[24], 288, temp_f31-50); espPosSet(lbl_1_bss_2C2C[23], temp_f29, temp_f31+20); espPosSet(lbl_1_bss_2C2C[26], 108, temp_f31+20); espPosSet(lbl_1_bss_2C2C[25], 468, temp_f31+20); HuSprGrpPosSet(temp_r28, 288, temp_f31+20); HuSprGrpPosSet(temp_r25, 288, temp_f31); } HuPrcVSleep(); } HuSprGrpKill(temp_r28); HuSprGrpKill(temp_r25); return temp_r23; }