diff options
| author | petrie911 <69443847+petrie911@users.noreply.github.com> | 2024-04-11 11:55:32 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-11 13:55:32 -0300 |
| commit | c532f31e2490d345d3c497bf93c5779485a79930 (patch) | |
| tree | a7e72d05b57137fd384ed23a55a39401ad43fbbf /src/engine | |
| parent | 4362338efb414bd2b98d09809c1bf65b90cd8355 (diff) | |
Script and hitbox docs, update torch (#210)
* script2
* more docs and such
* torch update
Diffstat (limited to 'src/engine')
| -rw-r--r-- | src/engine/fox_beam.c | 27 | ||||
| -rw-r--r-- | src/engine/fox_bg.c | 29 | ||||
| -rw-r--r-- | src/engine/fox_context.c | 8 | ||||
| -rw-r--r-- | src/engine/fox_demo.c | 2 | ||||
| -rw-r--r-- | src/engine/fox_display.c | 49 | ||||
| -rw-r--r-- | src/engine/fox_edisplay.c | 4 | ||||
| -rw-r--r-- | src/engine/fox_effect.c | 8 | ||||
| -rw-r--r-- | src/engine/fox_enmy.c | 16 | ||||
| -rw-r--r-- | src/engine/fox_enmy2.c | 13 | ||||
| -rw-r--r-- | src/engine/fox_game.c | 68 | ||||
| -rw-r--r-- | src/engine/fox_hud.c | 62 | ||||
| -rw-r--r-- | src/engine/fox_play.c | 182 | ||||
| -rw-r--r-- | src/engine/fox_radio.c | 12 | ||||
| -rw-r--r-- | src/engine/fox_reset.c | 38 | ||||
| -rw-r--r-- | src/engine/fox_std_lib.c | 102 | ||||
| -rw-r--r-- | src/engine/fox_tank.c | 18 | ||||
| -rw-r--r-- | src/engine/fox_versus.c | 2 |
17 files changed, 330 insertions, 310 deletions
diff --git a/src/engine/fox_beam.c b/src/engine/fox_beam.c index b81d1fd2..62cc5f77 100644 --- a/src/engine/fox_beam.c +++ b/src/engine/fox_beam.c @@ -266,10 +266,10 @@ s32 func_beam_80036874(PlayerShot* shot, f32* hitboxData, Object* obj) { boxRotZ = 0.0f; boxRotY = 0.0f; boxRotX = 0.0f; - if (hitboxData[0] >= HITBOX_TYPE_3) { + if (hitboxData[0] >= HITBOX_SHADOW) { return 0; } - if (hitboxData[0] == HITBOX_TYPE_2) { + if (hitboxData[0] == HITBOX_ROTATED) { rotateBox = 1.0f; boxRotX = hitboxData[1]; boxRotY = hitboxData[2]; @@ -378,7 +378,7 @@ s32 func_beam_80036F88(PlayerShot* shot, Actor* actor) { shotPy = shot->obj.pos.y; shotPz = shot->obj.pos.z; } else { - if (hitboxData[0] == HITBOX_TYPE_2) { + if (hitboxData[0] == HITBOX_ROTATED) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -665,7 +665,8 @@ void func_beam_80037CF4(PlayerShot* shot, Actor* actor, s32 hitIndex) { break; } } else if ((shot->playerNum >= 100) && (gCurrentLevel == LEVEL_SECTOR_X)) { - if ((gActors[shot->playerNum - 100].obj.id == 200) && (gActors[shot->playerNum - 100].iwork[12] == 5)) { + if ((gActors[shot->playerNum - 100].obj.id == OBJ_ACTOR_EVENT) && + (gActors[shot->playerNum - 100].iwork[12] == TEAM_ID_BILL)) { actor->damage = 30; } } @@ -685,9 +686,9 @@ void func_beam_80037CF4(PlayerShot* shot, Actor* actor, s32 hitIndex) { actor->unk_0D8.y = shot->obj.pos.y; actor->unk_0D8.z = shot->obj.pos.z; if (((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0D2 == 0) && - ((actor->unk_0B4 == 48) || (actor->unk_0B4 == 49) || (actor->unk_0B4 == 50))) || + ((actor->unk_0B4 == EINFO_48) || (actor->unk_0B4 == EINFO_49) || (actor->unk_0B4 == EINFO_50))) || ((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->fwork[23] > 1.0f)) || - ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0D2 == 0) && (actor->unk_0B4 == 67)) || + ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0D2 == 0) && (actor->unk_0B4 == EINFO_67)) || ((actor->obj.id == OBJ_ACTOR_261) && (shot->obj.id != PLAYERSHOT_8) && ((actor->state < 3) || (actor->state >= 5))) || ((actor->obj.id == OBJ_ACTOR_260) && (shot->obj.id != PLAYERSHOT_8) && (actor->timer_0BC != 0))) { @@ -764,13 +765,13 @@ void func_beam_80038140(PlayerShot* shot) { } break; case OBJ_ACTOR_EVENT: - if (actor->unk_0B4 == 42) { + if (actor->unk_0B4 == EINFO_42) { if (func_beam_8003774C(shot, ACTOR_EVENT_ID, &actor->obj)) { actor->unk_0D0 = 1; actor->unk_0D2 = shot->playerNum; return; } - } else if (actor->unk_0B4 == 63) { + } else if (actor->unk_0B4 == EINFO_63) { test.x = fabsf(actor->obj.pos.x - shot->obj.pos.x); test.y = fabsf(actor->obj.pos.y - shot->obj.pos.y); test.z = fabsf(actor->obj.pos.z - shot->obj.pos.z); @@ -1109,9 +1110,9 @@ void func_beam_80039210(PlayerShot* shot) { } else { var_a1 = 0; if ((gCurrentLevel != LEVEL_KATINA) && (shot->playerNum >= 104) && (shot->playerNum != 108)) { - if (gActors[shot->playerNum - 100].obj.id != 200) { + if (gActors[shot->playerNum - 100].obj.id != OBJ_ACTOR_EVENT) { var_a1 = 1; - } else if (gActors[shot->playerNum - 100].iwork[12] == 5) { + } else if (gActors[shot->playerNum - 100].iwork[12] == TEAM_ID_BILL) { var_a1 = 2; } } else if (gCurrentLevel == LEVEL_KATINA) { @@ -1771,7 +1772,7 @@ void func_beam_8003C008(PlayerShot* shot) { count = *hitboxData++; if (count != 0) { for (j = 0; j < count; j++, hitboxData += 6) { - if (hitboxData[0] == HITBOX_TYPE_2) { + if (hitboxData[0] == HITBOX_ROTATED) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -1888,8 +1889,8 @@ void func_beam_8003C4D0(PlayerShot* shot, s32 damage) { if ((actor->obj.id == OBJ_ACTOR_193) || (actor->obj.id == OBJ_ACTOR_186) || (actor->obj.id == OBJ_ACTOR_190) || (actor->obj.id == OBJ_ACTOR_202) || (actor->obj.id == OBJ_ACTOR_201) || (actor->obj.id == OBJ_ACTOR_187) || - ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 78)) || - ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 38)) || + ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == EINFO_78)) || + ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == EINFO_38)) || (actor->obj.id == OBJ_ACTOR_196)) { actor->unk_0D0 = 2; actor->unk_0D2 = 0; diff --git a/src/engine/fox_bg.c b/src/engine/fox_bg.c index 03e7f34b..e40fcb1b 100644 --- a/src/engine/fox_bg.c +++ b/src/engine/fox_bg.c @@ -117,17 +117,17 @@ void func_bg_8003DAF0(void) { gDPSetRenderMode(gMasterDisp++, G_RM_OPA_SURF, G_RM_OPA_SURF2); var_s2 = D_ctx_80178410; if (var_s2 != 0) { - if (D_ctx_80178420 >= 480.0f) { - D_ctx_80178420 -= 480.0f; + if (D_ctx_80178420 >= 1.5f * SCREEN_WIDTH) { + D_ctx_80178420 -= 1.5f * SCREEN_WIDTH; } - if (D_ctx_80178424 >= 360.0f) { - D_ctx_80178424 -= 360.0f; + if (D_ctx_80178424 >= 1.5f * SCREEN_HEIGHT) { + D_ctx_80178424 -= 1.5f * SCREEN_HEIGHT; } if (D_ctx_80178420 < 0.0f) { - D_ctx_80178420 += 480.0f; + D_ctx_80178420 += 1.5f * SCREEN_WIDTH; } if (D_ctx_80178424 < 0.0f) { - D_ctx_80178424 += 360.0f; + D_ctx_80178424 += 1.5f * SCREEN_HEIGHT; } spf68 = D_ctx_80178420; spf64 = D_ctx_80178424; @@ -144,17 +144,18 @@ void func_bg_8003DAF0(void) { for (i = 0; i < var_s2; i++, sp5C++, sp60++, sp58++) { var_fv1 = *sp60 + spf68; var_fa0 = *sp5C + spf64; - if (var_fv1 >= 400.0f) { - var_fv1 -= 480.0f; + if (var_fv1 >= 1.25f * SCREEN_WIDTH) { + var_fv1 -= 1.5f * SCREEN_WIDTH; } - var_fv1 -= 160.0f; - if (var_fa0 >= 300.0f) { - var_fa0 -= 360.0f; + var_fv1 -= SCREEN_WIDTH / 2.0f; + + if (var_fa0 >= 1.25f * SCREEN_HEIGHT) { + var_fa0 -= 1.5f * SCREEN_HEIGHT; } - var_fa0 -= 120.0f; + var_fa0 -= SCREEN_HEIGHT / 2.0f; - temp_ft2 = (sp70 * var_fv1) + (spf6C * var_fa0) + 160.0f; - temp_ft0 = (-spf6C * var_fv1) + (sp70 * var_fa0) + 120.0f; + temp_ft2 = (sp70 * var_fv1) + (spf6C * var_fa0) + SCREEN_WIDTH / 2.0f; + temp_ft0 = (-spf6C * var_fv1) + (sp70 * var_fa0) + SCREEN_HEIGHT / 2.0f; if ((temp_ft2 >= 0) && (temp_ft2 < SCREEN_WIDTH) && (temp_ft0 > 0) && (temp_ft0 < SCREEN_HEIGHT)) { gDPPipeSync(gMasterDisp++); gDPSetFillColor(gMasterDisp++, *sp58); diff --git a/src/engine/fox_context.c b/src/engine/fox_context.c index 939f3ff5..06f607d1 100644 --- a/src/engine/fox_context.c +++ b/src/engine/fox_context.c @@ -10,7 +10,7 @@ s32 D_ctx_80177824; // some sort of flag s32 D_ctx_8017782C; // some sort of flag. all range related? GameState gGameState; s32 gNextGameStateTimer; // next game state timer? -s32 D_ctx_80177844; // timer for vs item spawn +s32 gVsItemSpawnTimer; // timer for vs item spawn OptionState gOptionMenuStatus; s32 gPlayState; // pause-related state s32 D_ctx_80177868; // some sort of state. pause-related? @@ -73,7 +73,7 @@ UNK_TYPE F_80177D80; UNK_TYPE F_80177DE8; s32 gGameFrameCount; s32 D_ctx_80177DC8; -s32 D_ctx_80177E70; +s32 gPrevEventActorIndex; s32 D_ctx_80177E78; s32 gRingPassCount; Vec3f D_ctx_80177E88; @@ -286,7 +286,7 @@ f32 D_ctx_80177958[4]; s32 D_ctx_8017796C; OSContPad* gInputHold; OSContPad* gInputPress; -u8* D_ctx_80177984; +u8* gControllerRumble; s32 D_ctx_80177990[4]; f32 D_ctx_801779A8[4]; u8 gPauseEnabled; @@ -307,7 +307,7 @@ u8 D_ctx_80177B4C; u8 D_ctx_80177B6C; u8 gGreatFoxIntact; u8 D_ctx_80177BAC; -u16 D_Timer_80177BD0[4]; +u16 gControllerRumbleTimers[4]; u16 D_ctx_80177C30[4]; s32 D_ctx_80177C50; s32 D_ctx_80177C70; diff --git a/src/engine/fox_demo.c b/src/engine/fox_demo.c index 2314c5c2..fcd01d5e 100644 --- a/src/engine/fox_demo.c +++ b/src/engine/fox_demo.c @@ -1894,7 +1894,7 @@ void func_demo_8004E3D8(Player* player) { player->unk_280 = 0; if ((gGameFrameCount % 2) != 0) { - D_80137E84[gPlayerNum] = 1; + gControllerRumbleFlags[gPlayerNum] = 1; } switch (player->form) { diff --git a/src/engine/fox_display.c b/src/engine/fox_display.c index 81981513..576b22fa 100644 --- a/src/engine/fox_display.c +++ b/src/engine/fox_display.c @@ -16,9 +16,9 @@ f32 D_display_801615A8[4]; f32 D_display_801615B8[4]; s32 D_display_800CA220 = 0; -u8 D_display_800CA224[] = { 0, 0, 0, 0 }; // -s32 D_display_800CA228 = 0; // -s32 D_display_800CA22C = 0; // +u8 sPlayersVisible[] = { 0, 0, 0, 0 }; // +s32 D_display_800CA228 = 0; // +s32 D_display_800CA22C = 0; // f32 D_display_800CA230 = 0.0f; Actor* D_display_800CA234 = NULL; s32 D_display_Timer_800CA238 = 0; @@ -318,8 +318,8 @@ Gfx* D_display_800CA27C[] = { D_arwing_3001C90, D_arwing_3016CC0, D_arwing_3005A f32 D_display_800CA28C = 2.0f; f32 D_display_800CA290 = 13.0f; f32 D_display_800CA294 = -10.0f; -f32 D_display_800CA298[] = { 0.0f, 0.0f, 0.0f, 0.0f }; -f32 D_display_800CA2A8 = 0.0f; +f32 sCrosshairScales[] = { 0.0f, 0.0f, 0.0f, 0.0f }; +f32 sPlayerShadowing = 0.0f; void func_display_80052B80(Player* player) { Matrix_Push(&gGfxMatrix); @@ -652,22 +652,22 @@ void func_display_80053C38(Player* player, s32 arg1) { } void func_display_80053F7C(Player* player) { - Vec3f* pad; + Vec3f* translate; s32 i; if ((gPlayerNum == player->num) && ((player->form == FORM_ARWING) || (player->form == FORM_LANDMASTER)) && (player->unk_234 != 0) && (((gGameState == GSTATE_PLAY) && (player->state_1C8 == PLAYERSTATE_1C8_3)) || (gGameState == GSTATE_MENU))) { for (i = 0; i < 2; i++) { - pad = &D_display_801613E0[i]; + translate = &D_display_801613E0[i]; Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, pad->x, pad->y, pad->z, 1); + Matrix_Translate(gGfxMatrix, translate->x, translate->y, translate->z, 1); if (gChargeTimers[player->num] >= 20) { RCP_SetupDL(&gMasterDisp, 0x3F); if (i == 1) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 255, 0, 0, 255); - Math_SmoothStepToF(&D_display_800CA298[player->num], 2.0f, 1.0f, 0.4f, 0.0f); + Math_SmoothStepToF(&sCrosshairScales[player->num], 2.0f, 1.0f, 0.4f, 0.0f); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); gDPSetEnvColor(gMasterDisp++, 255, 255, 0, 255); @@ -676,8 +676,8 @@ void func_display_80053F7C(Player* player) { RCP_SetupDL_36(); } if (i == 1) { - Matrix_Scale(gGfxMatrix, D_display_800CA298[player->num], D_display_800CA298[player->num], 1.0f, 1); - Math_SmoothStepToF(&D_display_800CA298[player->num], 1.0f, 1.0f, 0.2f, 0.0f); + Matrix_Scale(gGfxMatrix, sCrosshairScales[player->num], sCrosshairScales[player->num], 1.0f, 1); + Math_SmoothStepToF(&sCrosshairScales[player->num], 1.0f, 1.0f, 0.2f, 0.0f); } Matrix_Scale(gGfxMatrix, 4.0f, 4.0f, 4.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); @@ -705,16 +705,16 @@ void func_display_80054280(Player* player, s32 arg1) { } void func_display_80054300(Player* player) { - Math_SmoothStepToF(&D_display_800CA2A8, player->unk_23C, 1.0f, 10.0f, 0.0f); + Math_SmoothStepToF(&sPlayerShadowing, player->shadowing, 1.0f, 10.0f, 0.0f); RCP_SetupDL(&gMasterDisp, 0x42); - gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, (s32) D_display_800CA2A8); + gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, (s32) sPlayerShadowing); if (player->unk_068 > 30.0f) { gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); } if ((gGroundType == GROUNDTYPE_WATER) && (player->unk_068 < 10.0f)) { - player->unk_23C = 90; + player->shadowing = 90; } else { - player->unk_23C = 180; + player->shadowing = 180; } switch (player->form) { case FORM_ARWING: @@ -1166,14 +1166,14 @@ bool func_display_800563B4(s32 index, s32 arg1) { if (fabsf(sp20.x) < (fabsf(sp20.z * 0.5f) + 500.0f)) { if (fabsf(sp20.y) < (fabsf(sp20.z * 0.5f) + 500.0f)) { if (arg1 == 0) { - D_display_800CA224[index] = 1; + sPlayersVisible[index] = 1; } return true; } } } if (arg1 == 0) { - D_display_800CA224[index] = 0; + sPlayersVisible[index] = 0; } return false; } @@ -1303,12 +1303,7 @@ Gfx* D_display_800CA354[] = { f32 D_display_800CA380 = 0.0f; f32 D_display_800CA384 = 0.0f; f32 D_display_800CA388 = -300.0f; -f32 D_display_800CA38C[] = { - 0.0f, - -300.0f, - -150.0f, - -50.0f, -}; +f32 D_display_800CA38C[] = { 0.0f, -300.0f, -150.0f, -50.0f }; void func_display_80056E2C(Player* player) { f32 sp34; @@ -1648,7 +1643,7 @@ void Play_Draw(void) { Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1); for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { - if (D_display_800CA224[i] != 0) { + if (sPlayersVisible[i] != 0) { func_display_80055B58(opponent); func_display_80056230(opponent); } @@ -1670,7 +1665,7 @@ void Play_Draw(void) { } gReflectY = 1; for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { - if (D_display_800CA224[i] != 0) { + if (sPlayersVisible[i] != 0) { func_display_80056E2C(opponent); func_display_80055B58(opponent); func_display_80056230(opponent); @@ -1691,7 +1686,7 @@ void Play_Draw(void) { func_display_80053B18(); } for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { - if (D_display_800CA224[i] != 0) { + if (sPlayersVisible[i] != 0) { if (gShowCrosshairs[i]) { func_display_80053F7C(opponent); } @@ -1712,6 +1707,6 @@ void Play_Draw(void) { } Matrix_Pop(&gGfxMatrix); func_display_80051B30(); - D_display_800CA224[gPlayerNum] = 0; + sPlayersVisible[gPlayerNum] = 0; Matrix_Pop(&gGfxMatrix); } diff --git a/src/engine/fox_edisplay.c b/src/engine/fox_edisplay.c index 9a60f9f9..29d1506b 100644 --- a/src/engine/fox_edisplay.c +++ b/src/engine/fox_edisplay.c @@ -638,13 +638,13 @@ void func_edisplay_8005BAB4(ObjectId objId, s32 index) { case OBJ_ACTOR_TEAM_BOSS: case OBJ_ACTOR_EVENT: switch (gActors[index].unk_0B4) { - case 3: + case EINFO_3: Matrix_Scale(gGfxMatrix, 2.3f, 0.0f, 2.3f, 1); Matrix_RotateX(gGfxMatrix, M_PI / 2, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_102A010); break; - case 81: + case EINFO_81: RCP_SetupDL(&gMasterDisp, 0x30); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 255); diff --git a/src/engine/fox_effect.c b/src/engine/fox_effect.c index 6aca85e3..5be131bd 100644 --- a/src/engine/fox_effect.c +++ b/src/engine/fox_effect.c @@ -2817,10 +2817,10 @@ bool func_effect_8007FD84(Effect* effect) { s32 i; Actor* actor; - for (i = 1; i < ARRAY_COUNT(D_enmy2_800CFF80); i++) { - actor = &gActors[D_enmy2_800CFF80[i]]; + for (i = 1; i < ARRAY_COUNT(gTeamEventActorIndex); i++) { + actor = &gActors[gTeamEventActorIndex[i]]; if (actor->obj.status == OBJ_ACTIVE) { - if ((actor->iwork[12] > 0) && (actor->iwork[12] < 6) && + if ((actor->iwork[12] >= TEAM_ID_FALCO) && (actor->iwork[12] <= TEAM_ID_BILL) && (fabsf(actor->obj.pos.z - effect->obj.pos.z) < 100.0f) && (fabsf(actor->obj.pos.x - effect->obj.pos.x) < 100.0f) && (fabsf(actor->obj.pos.y - effect->obj.pos.y) < 100.0f)) { @@ -3394,7 +3394,7 @@ void func_effect_8008165C(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal effect->obj.pos.z = zPos; AUDIO_PLAY_SFX(0x2940F026, effect->sfxSource, 4); - D_Timer_80177BD0[0] = 60; + gControllerRumbleTimers[0] = 60; break; } } diff --git a/src/engine/fox_enmy.c b/src/engine/fox_enmy.c index d5d7a43a..3f31b401 100644 --- a/src/engine/fox_enmy.c +++ b/src/engine/fox_enmy.c @@ -384,14 +384,14 @@ void func_enmy_80061F0C(Actor* actor, ObjectInit* objInit, s32 index) { actor->unk_0F4.z = objInit->rot.z; actor->obj.id = OBJ_ACTOR_EVENT; actor->timer_0C2 = 10; - actor->unk_0B4 = 4095; + actor->unk_0B4 = EINFO_FFF; actor->aiType = objInit->id - ACTOR_EVENT_ID; Object_SetInfo(&actor->info, actor->obj.id); actor->info.unk_10 = 3000.0f; actor->fwork[25] = 20000.0f; - actor->iwork[1] = D_ctx_80177E70; - actor->iwork[10] = gActors[D_ctx_80177E70].aiType; + actor->iwork[1] = gPrevEventActorIndex; + actor->iwork[10] = gActors[gPrevEventActorIndex].aiType; actor->fwork[22] = D_play_80161A54; Matrix_RotateZ(gCalcMatrix, -D_ctx_80177E88.z * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -D_ctx_80177E88.x * M_DTOR, 1); @@ -401,7 +401,7 @@ void func_enmy_80061F0C(Actor* actor, ObjectInit* objInit, s32 index) { sp24.z = actor->obj.pos.z - D_ctx_80177F10.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp24, &actor->vwork[28]); actor->iwork[9] = D_ctx_80177E78; - D_ctx_80177E70 = index; + gPrevEventActorIndex = index; Actor_Update(actor); } @@ -666,10 +666,10 @@ bool func_enmy_80062DBC(Vec3f* pos, f32* hitboxData, Object* obj, f32 xRot, f32 for (i = 0; i < count; i++, hitboxData += 6) { rotate = 0.0f; hitRot.x = hitRot.y = hitRot.z = 0.0f; - if (*hitboxData >= HITBOX_TYPE_3) { + if (*hitboxData >= HITBOX_SHADOW) { return false; } - if (*hitboxData == HITBOX_TYPE_2) { + if (*hitboxData == HITBOX_ROTATED) { rotate = 1.0f; hitRot.x = hitboxData[1]; hitRot.y = hitboxData[2]; @@ -2493,7 +2493,7 @@ void Actor_Move(Actor* actor) { f32 var_fv0 = 4000.0f; if ((actor->obj.id == OBJ_ACTOR_236) || (gCurrentLevel == LEVEL_MACBETH) || - ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 56))) { + ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == EINFO_56))) { var_fv0 = 8000.0f; } else if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_8) { var_fv0 = 100000.0f; @@ -2515,7 +2515,7 @@ void Actor_Move(Actor* actor) { D_ctx_80176550[actor->unk_046] = 0; break; case OBJ_ACTOR_EVENT: - if ((actor->unk_0B4 >= 200) && (actor->unk_0B4 < 300)) { + if ((actor->unk_0B4 >= EINFO_200) && (actor->unk_0B4 < EINFO_300)) { D_ctx_80176550[actor->unk_046] = 0; } else if ((actor->unk_0B4 == EINFO_38) && (actor->unk_046 != 2)) { gRingPassCount = -1; diff --git a/src/engine/fox_enmy2.c b/src/engine/fox_enmy2.c index 793e9e87..c47ceaca 100644 --- a/src/engine/fox_enmy2.c +++ b/src/engine/fox_enmy2.c @@ -21,7 +21,7 @@ #include "assets/ast_ve1_boss.h" #include "assets/ast_zoness.h" -s32 D_enmy2_800CFF80[4] = { 0, 0, 0, 0 }; +s32 gTeamEventActorIndex[4] = { 0, 0, 0, 0 }; s32 gCallVoiceParam = 0; s32 gCallTimer; @@ -1186,7 +1186,7 @@ void ActorEvent_ProcessScript(ActorEvent* this) { this->iwork[12] = actorScript[this->aiIndex + 1]; if (this->iwork[12] <= TEAM_ID_PEPPY) { - D_enmy2_800CFF80[this->iwork[12]] = this->index; + gTeamEventActorIndex[this->iwork[12]] = this->index; } this->aiIndex += 2; @@ -1373,7 +1373,7 @@ void ActorEvent_ProcessScript(ActorEvent* this) { case EV_OPC(EVOP_SET_TARGET): this->state = EVSTATE_WAIT; - this->iwork[1] = D_enmy2_800CFF80[actorScript[this->aiIndex] & 0x1FF]; + this->iwork[1] = gTeamEventActorIndex[actorScript[this->aiIndex] & 0x1FF]; this->fwork[17] = actorScript[this->aiIndex + 1]; this->timer_0BC = 0; this->aiIndex += 2; @@ -1646,7 +1646,8 @@ void func_enmy2_8006ECBC(PlayerShotId objId, PlayerShot* shot, s32 unk0E4, f32 x } else { AUDIO_PLAY_SFX(0x29002002, shot->sfxSource, 4); } - } else if ((unk0E4 < 60) && (gActors[unk0E4].obj.id == OBJ_ACTOR_EVENT) && (gActors[unk0E4].iwork[12] > 0)) { + } else if ((unk0E4 < 60) && (gActors[unk0E4].obj.id == OBJ_ACTOR_EVENT) && + (gActors[unk0E4].iwork[12] >= TEAM_ID_FALCO)) { AUDIO_PLAY_SFX(0x2900000D, shot->sfxSource, 4); } else if (unk0E4 + 100 == 200) { shot->playerNum = 100; @@ -2281,8 +2282,8 @@ void ActorEvent_ProcessTriggers(ActorEvent* this) { } } - if (this->iwork[2] >= 100) { - if (fabsf(this->obj.pos.z - gPlayer[0].unk_138) <= ((this->iwork[2] - 100) * 100.0f)) { + if (this->iwork[2] >= EVC_CLOSE_Z) { + if (fabsf(this->obj.pos.z - gPlayer[0].unk_138) <= ((this->iwork[2] - EVC_CLOSE_Z) * 100.0f)) { ActorEvent_80070CEC(this); } return; diff --git a/src/engine/fox_game.c b/src/engine/fox_game.c index 815d567f..0346696a 100644 --- a/src/engine/fox_game.c +++ b/src/engine/fox_game.c @@ -141,28 +141,31 @@ bool func_game_800A1B6C(void) { return false; } -void func_game_800A1C14(Gfx** arg0) { - gSPDisplayList((*arg0)++, gRcpInitDL); - gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT - 8); - gDPSetDepthImage((*arg0)++, &gZBuffer); - gDPSetColorImage((*arg0)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, &gZBuffer); - gDPSetFillColor((*arg0)++, FILL_COLOR(GPACK_ZDZ(G_MAXFBZ, 0))); - gDPFillRectangle((*arg0)++, 8, 8, SCREEN_WIDTH - 8 - 1, SCREEN_HEIGHT - 8 - 1); - gDPSetColorImage((*arg0)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, gFrameBuffer); +void func_game_800A1C14(Gfx** dList) { + gSPDisplayList((*dList)++, gRcpInitDL); + gDPSetScissor((*dList)++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT - SCREEN_MARGIN); + gDPSetDepthImage((*dList)++, &gZBuffer); + gDPSetColorImage((*dList)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, &gZBuffer); + gDPSetFillColor((*dList)++, FILL_COLOR(GPACK_ZDZ(G_MAXFBZ, 0))); + gDPFillRectangle((*dList)++, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN - 1, + SCREEN_HEIGHT - SCREEN_MARGIN - 1); + gDPSetColorImage((*dList)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, gFrameBuffer); if (gBlurAlpha < 255) { - gDPPipeSync((*arg0)++); - gDPSetCycleType((*arg0)++, G_CYC_1CYCLE); - gDPSetCombineMode((*arg0)++, G_CC_PRIMITIVE, G_CC_PRIMITIVE); - gDPSetRenderMode((*arg0)++, G_RM_XLU_SURF, G_RM_XLU_SURF2); - gDPSetPrimColor((*arg0)++, 0x00, 0x00, RGBA16_RED(gBgColor) * 8, RGBA16_GRN(gBgColor) * 8, + gDPPipeSync((*dList)++); + gDPSetCycleType((*dList)++, G_CYC_1CYCLE); + gDPSetCombineMode((*dList)++, G_CC_PRIMITIVE, G_CC_PRIMITIVE); + gDPSetRenderMode((*dList)++, G_RM_XLU_SURF, G_RM_XLU_SURF2); + gDPSetPrimColor((*dList)++, 0x00, 0x00, RGBA16_RED(gBgColor) * 8, RGBA16_GRN(gBgColor) * 8, RGBA16_BLU(gBgColor) * 8, gBlurAlpha); } else { - gDPSetFillColor((*arg0)++, FILL_COLOR(gBgColor | 1)); + gDPSetFillColor((*dList)++, FILL_COLOR(gBgColor | 1)); } - gDPFillRectangle((*arg0)++, 8, 8, SCREEN_WIDTH - 8 - 1, SCREEN_HEIGHT - 8); - gDPPipeSync((*arg0)++); - gDPSetColorDither((*arg0)++, G_CD_MAGICSQ); + gDPFillRectangle((*dList)++, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN - 1, + SCREEN_HEIGHT - SCREEN_MARGIN); + gDPPipeSync((*dList)++); + gDPSetColorDither((*dList)++, G_CD_MAGICSQ); } void func_game_800A1E68(Gfx** arg0) { @@ -194,7 +197,8 @@ void func_game_800A1FB0(Gfx** arg0, u8 arg1, u8 arg2) { gViewport->vp.vtrans[1] = SCREEN_HEIGHT * (2.0f - D_game_80161A14) * 2; gViewport->vp.vtrans[2] = G_MAXZ / 2; gViewport->vp.vtrans[3] = 0; - gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH / 2, SCREEN_HEIGHT / 2); + gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH / 2, + SCREEN_HEIGHT / 2); break; case 1: gViewport->vp.vscale[0] = SCREEN_WIDTH * (D_game_80161A14 - 1.0f) * 2; @@ -205,7 +209,8 @@ void func_game_800A1FB0(Gfx** arg0, u8 arg1, u8 arg2) { gViewport->vp.vtrans[1] = SCREEN_HEIGHT * (2.0f - D_game_80161A14) * 2; gViewport->vp.vtrans[2] = G_MAXZ / 2; gViewport->vp.vtrans[3] = 0; - gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_WIDTH / 2, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT / 2); + gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_WIDTH / 2, SCREEN_MARGIN, + SCREEN_WIDTH - SCREEN_MARGIN, SCREEN_HEIGHT / 2); break; case 2: gViewport->vp.vscale[0] = SCREEN_WIDTH * (D_game_80161A14 - 1.0f) * 2; @@ -216,7 +221,8 @@ void func_game_800A1FB0(Gfx** arg0, u8 arg1, u8 arg2) { gViewport->vp.vtrans[1] = SCREEN_HEIGHT * D_game_80161A14 * 2; gViewport->vp.vtrans[2] = G_MAXZ / 2; gViewport->vp.vtrans[3] = 0; - gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, 8, SCREEN_HEIGHT / 2, SCREEN_WIDTH / 2, SCREEN_HEIGHT - 8); + gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_HEIGHT / 2, SCREEN_WIDTH / 2, + SCREEN_HEIGHT - SCREEN_MARGIN); break; case 3: gViewport->vp.vscale[0] = SCREEN_WIDTH * (D_game_80161A14 - 1.0f) * 2; @@ -227,8 +233,8 @@ void func_game_800A1FB0(Gfx** arg0, u8 arg1, u8 arg2) { gViewport->vp.vtrans[1] = SCREEN_HEIGHT * D_game_80161A14 * 2; gViewport->vp.vtrans[2] = G_MAXZ / 2; gViewport->vp.vtrans[3] = 0; - gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_WIDTH / 2, SCREEN_HEIGHT / 2, SCREEN_WIDTH - 8, - SCREEN_HEIGHT - 8); + gDPSetScissor((*arg0)++, G_SC_NON_INTERLACE, SCREEN_WIDTH / 2, SCREEN_HEIGHT / 2, + SCREEN_WIDTH - SCREEN_MARGIN, SCREEN_HEIGHT - SCREEN_MARGIN); break; default: func_game_800A1F44(); @@ -473,7 +479,8 @@ void Game_Update(void) { func_game_800A1FB0(&gMasterDisp, gCamCount, 1); Game_Draw(1); gDPPipeSync(gMasterDisp++); - gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT - 8); + gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT - SCREEN_MARGIN); } else if ((gCamCount == 4) && (gDrawMode != DRAW_NONE)) { func_game_800A1FB0(&gMasterDisp, gCamCount, 3); Game_Draw(3); @@ -482,23 +489,28 @@ void Game_Update(void) { func_game_800A1FB0(&gMasterDisp, gCamCount, 1); Game_Draw(1); gDPPipeSync(gMasterDisp++); - gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT - 8); + gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT - SCREEN_MARGIN); gDPSetColorDither(gMasterDisp++, G_CD_NOISE); gDPSetAlphaDither(gMasterDisp++, G_AD_NOISE); gDPSetCycleType(gMasterDisp++, G_CYC_1CYCLE); gDPSetCombineMode(gMasterDisp++, G_CC_PRIMITIVE, G_CC_PRIMITIVE); gDPSetRenderMode(gMasterDisp++, G_RM_XLU_SURF, G_RM_XLU_SURF2); gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 0, 0, 0, 0); - gDPFillRectangle(gMasterDisp++, SCREEN_WIDTH / 2 - 3, 8, SCREEN_WIDTH / 2 + 2, SCREEN_HEIGHT - 8); - gDPFillRectangle(gMasterDisp++, 8, SCREEN_HEIGHT / 2 - 3, SCREEN_WIDTH - 8, SCREEN_HEIGHT / 2 + 2); + gDPFillRectangle(gMasterDisp++, SCREEN_WIDTH / 2 - 2 - 1, SCREEN_MARGIN, SCREEN_WIDTH / 2 + 2, + SCREEN_HEIGHT - SCREEN_MARGIN); + gDPFillRectangle(gMasterDisp++, SCREEN_MARGIN, SCREEN_HEIGHT / 2 - 2 - 1, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT / 2 + 2); if (gLevelType == LEVELTYPE_PLANET) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 0, 0, 0, 255); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 100, 100, 255, 255); } - gDPFillRectangle(gMasterDisp++, SCREEN_WIDTH / 2 - 2, 8, SCREEN_WIDTH / 2 + 1, SCREEN_HEIGHT - 8); - gDPFillRectangle(gMasterDisp++, 8, SCREEN_HEIGHT / 2 - 2, SCREEN_WIDTH - 8, SCREEN_HEIGHT / 2 + 1); + gDPFillRectangle(gMasterDisp++, SCREEN_WIDTH / 2 - 1 - 1, SCREEN_MARGIN, SCREEN_WIDTH / 2 + 1, + SCREEN_HEIGHT - SCREEN_MARGIN); + gDPFillRectangle(gMasterDisp++, SCREEN_MARGIN, SCREEN_HEIGHT / 2 - 1 - 1, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT / 2 + 1); func_hud_8008CB8C(); } diff --git a/src/engine/fox_hud.c b/src/engine/fox_hud.c index d4bc0b31..69c10c92 100644 --- a/src/engine/fox_hud.c +++ b/src/engine/fox_hud.c @@ -1028,7 +1028,8 @@ void func_hud_80087788(void) { TextureRect_16bRGBA(&gMasterDisp, D_800D1D18[j + 1] + (44 * 20 * i), 44, 20, x[j][0], y[j][0] + (f32) (20 * i), 1.0f, 1.0f); } - TextureRect_16bRGBA(&gMasterDisp, D_800D1D18[j + 1] + (44 * 40), 44, 4, x[j][0], y[j][0] + 40.0f, 1.0f, 1.0f); + TextureRect_16bRGBA(&gMasterDisp, D_800D1D18[j + 1] + (44 * 20 * 2), 44, 4, x[j][0], y[j][0] + 40.0f, 1.0f, + 1.0f); func_hud_80086110(x[j][2], y[j][2], shield); } @@ -1477,7 +1478,7 @@ void func_hud_80088970(void) { D_80161838[0] = 0; case 3: - Graphics_FillRectangle(&gMasterDisp, 0, 0, 319, 239, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, 0, 0, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1, 0, 0, 0, 255); gFillScreenAlphaTarget = 0; @@ -1526,7 +1527,7 @@ void func_hud_80088970(void) { break; case 4: - Graphics_FillRectangle(&gMasterDisp, 0, 0, 319, 239, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, 0, 0, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1, 0, 0, 0, 255); if (D_80161838[0] < 140) { break; } @@ -1544,7 +1545,7 @@ void func_hud_80088970(void) { } case 5: - Graphics_FillRectangle(&gMasterDisp, 0, 0, 319, 239, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, 0, 0, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1, 0, 0, 0, 255); for (i = 0; i < 6; i++) { if (gPrevPlanetTeamShields[i] == -1) { @@ -2646,51 +2647,52 @@ void func_hud_8008BD00(u8* texturePtr, s32 xPos, s32 yPos, u8 arg3) { } } -void func_hud_8008C104(u16* texture, u16* arg1) { - u16 *temp, *dst; - u16 src[1024]; - f32 temp1; +void func_hud_8008C104(u16* srcTexture, u16* dstTexture) { + u16 *src, *dst; + u16 buffer[1024]; + f32 rowPhase; f32 angle; s32 j; s32 i; s32 width = 32; s32 height = 32; - s32 temp3; - s32 temp2; + s32 halfHeight; + s32 offset; - temp = SEGMENTED_TO_VIRTUAL(texture); - dst = SEGMENTED_TO_VIRTUAL(arg1); + src = SEGMENTED_TO_VIRTUAL(srcTexture); + dst = SEGMENTED_TO_VIRTUAL(dstTexture); - Texture_Scroll(texture, width, height, 1); + Texture_Scroll(srcTexture, width, height, 1); - temp3 = height / 2; + halfHeight = height / 2; - temp1 = 0.0f; + rowPhase = 0.0f; - i = temp3 - 1; + i = halfHeight - 1; while (1) { - if ((temp1 += 90.0f / temp3) > 90.0f) { + if ((rowPhase += 90.0f / halfHeight) > 90.0f) { break; } - angle = (height / 2) * COS_DEG(temp1); - temp2 = angle; + angle = (height / 2) * COS_DEG(rowPhase); + offset = angle; - if (temp2 >= height) { - temp2 = 0; + if (offset >= height) { + offset = 0; } for (j = 0; j < width; j++) { - src[(i * width) + j] = temp[(temp2 * width) + j]; + buffer[(i * width) + j] = src[(offset * width) + j]; } for (j = 0; j < width; j++) { - src[(((temp3 - i) + (temp3 - 1)) * width) + j] = temp[(((temp3 - temp2) + (temp3 - 1)) * width) + j]; + buffer[(((halfHeight - i) + (halfHeight - 1)) * width) + j] = + src[(((halfHeight - offset) + (halfHeight - 1)) * width) + j]; } i--; } - Texture_Mottle(dst, src, 2); + Texture_Mottle(dst, buffer, 2); } void func_hud_8008C390(f32 xPos, f32 yPos, f32 scale, s32 number) { @@ -2722,10 +2724,10 @@ void func_hud_8008C5C8(f32 arg0, f32 arg1, f32 arg2, s32 arg3) { s32 i; for (i = 0; i < 2; i++) { - TextureRect_16bRGBA(&gMasterDisp, D_800D1EE8[arg3] + (880 * i), 44, 20, arg0, (20 * i * arg2) + arg1, arg2, + TextureRect_16bRGBA(&gMasterDisp, D_800D1EE8[arg3] + (44 * 20 * i), 44, 20, arg0, (20 * i * arg2) + arg1, arg2, arg2); } - TextureRect_16bRGBA(&gMasterDisp, D_800D1EE8[arg3] + 1760, 44, 4, arg0, (40.0f * arg2) + arg1, arg2, arg2); + TextureRect_16bRGBA(&gMasterDisp, D_800D1EE8[arg3] + 44 * 20 * 2, 44, 4, arg0, (40.0f * arg2) + arg1, arg2, arg2); } void func_hud_8008C6F4(s32 idx, s32 arg1) { @@ -2874,10 +2876,10 @@ void func_hud_8008CFB8(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { s32 i; for (i = 0; i < 3; i++) { - TextureRect_8bIA(&gMasterDisp, D_versus_3000BC0 + 2 * ((640 * i) / 2), 80, 8, arg0, (8 * i * arg3) + arg1, arg2, - arg3); + TextureRect_8bIA(&gMasterDisp, D_versus_3000BC0 + 2 * ((80 * 8 * i) / 2), 80, 8, arg0, (8 * i * arg3) + arg1, + arg2, arg3); } - TextureRect_8bIA(&gMasterDisp, D_versus_3000BC0 + 2 * ((640 * i) / 2), 80, 2, arg0, (8 * i * arg3) + arg1, arg2, + TextureRect_8bIA(&gMasterDisp, D_versus_3000BC0 + 2 * ((80 * 8 * i) / 2), 80, 2, arg0, (8 * i * arg3) + arg1, arg2, arg3); } @@ -6067,7 +6069,7 @@ void func_hud_80096A74(Player* player) { func_play_800B2574(player); - D_80137E84[0] = 0; + gControllerRumbleFlags[0] = 0; gControllerHold[player->num].button = button; gCsCamEyeX = player->pos.x; diff --git a/src/engine/fox_play.c b/src/engine/fox_play.c index 57a59e0f..a46b0a58 100644 --- a/src/engine/fox_play.c +++ b/src/engine/fox_play.c @@ -497,7 +497,7 @@ void func_play_800A594C(void) { } if (D_ctx_8017782C == 0) { if (gCurrentLevel == LEVEL_SOLAR) { - func_8001D1C8(0xFF, 1); + func_8001D1C8(255, 1); AUDIO_PLAY_SFX(0x4100C023, gDefaultSfxSource, 4); Audio_KillSfxBySourceAndId(gPlayer[0].sfxSource, 0x3140807E); } @@ -655,7 +655,7 @@ void func_play_800A6148(void) { PlayerShot_Initialize(&gPlayerShots[i]); } D_ctx_801782B8 = D_ctx_801782BC = D_ctx_801782C0 = D_ctx_801782D0 = gBossActive = D_ctx_8017828C = D_ctx_8017812C = - D_ctx_80177E70 = D_ctx_80177E78 = gRingPassCount = 0; + gPrevEventActorIndex = D_ctx_80177E78 = gRingPassCount = 0; D_ctx_80177F10.x = D_ctx_80177F10.y = D_ctx_80177F10.z = D_ctx_80177E88.x = D_ctx_80177E88.y = D_ctx_80177E88.z = 0.0f; for (i = 0; i < ARRAY_COUNT(gTeamArrowsViewPos); i++) { @@ -1085,7 +1085,7 @@ s32 func_play_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 hitboxData++; for (i = 0; i < count; i++, hitboxData += 6) { spA0 = 0; - if (*hitboxData == HITBOX_TYPE_2) { + if (*hitboxData == HITBOX_ROTATED) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -1095,7 +1095,7 @@ s32 func_play_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 hitboxData += 4; spA0 = 1; } else { - if (*hitboxData >= HITBOX_TYPE_3) { + if (*hitboxData >= HITBOX_SHADOW) { hitboxData++; } Matrix_RotateZ(gCalcMatrix, -zRot * M_DTOR, 0); @@ -1122,15 +1122,15 @@ s32 func_play_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 } if (func_play_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; - if (hitboxData[-1] == HITBOX_TYPE_3) { + if (hitboxData[-1] == HITBOX_SHADOW) { return -1; } - if (hitboxData[-1] == HITBOX_TYPE_4) { + if (hitboxData[-1] == HITBOX_WHOOSH) { return -2; } return 3; } - if (hitboxData[-1] < HITBOX_TYPE_3) { + if (hitboxData[-1] < HITBOX_SHADOW) { if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { var_fv0 = player->hit4.x; var_fv1 = player->hit4.y; @@ -1658,12 +1658,12 @@ void func_play_800A8BA4(Player* player) { obj58->obj.pos.y, obj58->obj.pos.z, obj58->obj.rot.x, obj58->obj.rot.y, obj58->obj.rot.z, 0.0f, 0.0f, 0.0f); if ((temp_v0 != 0) && (temp_v0 < 0)) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { func_effect_8007A6F0(&obj58->obj.pos, 0x19000001); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } } @@ -1673,12 +1673,12 @@ void func_play_800A8BA4(Player* player) { obj58->obj.rot.y, obj58->obj.rot.z, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { if (temp_v0 < 0) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { func_effect_8007A6F0(&obj58->obj.pos, 0x19000001); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else if ((player->form == FORM_LANDMASTER) || (player->form == FORM_ON_FOOT)) { func_play_800A729C(player, temp_v0, obj58->obj.pos.x, obj58->obj.pos.z); @@ -1764,22 +1764,22 @@ void func_play_800A8BA4(Player* player) { D_ctx_80178570 = 20; D_ctx_80178574 = 20; D_ctx_80178578 = 20; - player->unk_23C = 80; + player->shadowing = 80; } - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19000001, obj80->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else if (obj80->obj.id == OBJ_80_54) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19832019, obj80->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else { Player_ApplyDamage(player, temp_v0, obj80->info.damage); @@ -1870,12 +1870,12 @@ void func_play_800A8BA4(Player* player) { 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { if (temp_v0 < 0) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19000001, boss->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else { if ((boss->obj.id == OBJ_BOSS_320) && (boss->timer_056 != 0) && (sp98 == 5)) { @@ -1905,7 +1905,7 @@ void func_play_800A8BA4(Player* player) { Player_ApplyDamage(player, temp_v0, actor->info.damage); } } else if (actor->obj.id == OBJ_ACTOR_EVENT) { - if (actor->unk_0B4 == 42) { + if (actor->unk_0B4 == EINFO_42) { temp_v0 = func_play_800A8304(player, ACTOR_EVENT_ID, actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, actor->obj.rot.x, actor->obj.rot.y, actor->obj.rot.z); @@ -1938,12 +1938,12 @@ void func_play_800A8BA4(Player* player) { AUDIO_PLAY_SFX(0x49008025, gDefaultSfxSource, 4); } } else if (temp_v0 < 0) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19000001, actor->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else { Player_ApplyDamage(player, temp_v0, actor->info.damage); @@ -1971,12 +1971,12 @@ void func_play_800A8BA4(Player* player) { 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { if (temp_v0 < 0) { - if (player->unk_22C == 0) { + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19000001, actor->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else { actor->unk_0D0 = 3; @@ -2297,11 +2297,11 @@ void func_play_800AA800(Player* player) { } hitboxData++; for (i = 0; i < count; i++, hitboxData += 6) { - if (*hitboxData >= HITBOX_TYPE_3) { + if (*hitboxData >= HITBOX_SHADOW) { break; } - if (*hitboxData == HITBOX_TYPE_2) { + if (*hitboxData == HITBOX_ROTATED) { sp100 = hitboxData[1]; spFC = hitboxData[2]; spF8 = hitboxData[3]; @@ -2412,7 +2412,7 @@ void func_play_800AB334(void) { 0.0f; break; case LEVEL_AQUAS: - D_80137E78 = 3; + gVIsPerFrame = 3; D_bg_8015F970 = 1600.0f; D_AQ_801C4188 = 128.0f; Aquas_801A9824(); @@ -2534,7 +2534,7 @@ void Play_Init(void) { D_play_80161A54 = 40.0f; for (i = 0; i < 4; i++) { - gControllerRumble[i] = 0; + gControllerRumbleEnabled[i] = 0; } if (gExpertMode) { @@ -2543,7 +2543,7 @@ void Play_Init(void) { gEnemyShotSpeed = 100; } gPauseEnabled = 0; - D_80137E78 = 2; + gVIsPerFrame = 2; D_ctx_80177C70 = 0; D_display_800CA234 = NULL; D_display_Timer_800CA238 = 0; @@ -2635,7 +2635,7 @@ void Play_Init(void) { for (i = 0; i < gCamCount; i++) { gPlayer[i].state_1C8 = PLAYERSTATE_1C8_1; gPlayerFillScreenAlphas[i] = D_ctx_801783C0[i] = 0; - D_Timer_80177BD0[i] = 0; + gControllerRumbleTimers[i] = 0; D_ctx_80177C30[i] = 0; } if (gLevelMode == LEVELMODE_ALL_RANGE) { @@ -3013,7 +3013,7 @@ bool func_play_800AD1F4(Player* player) { func_play_800AC650(player, &gPlayerShots[14 - player->num], PLAYERSHOT_8, 70.0f); } func_enmy_80060F30(player->sfxSource, 0x09007029, player->num); - D_Timer_80177BD0[player->num] = 5; + gControllerRumbleTimers[player->num] = 5; return true; } break; @@ -3031,7 +3031,7 @@ bool func_play_800AD1F4(Player* player) { } func_enmy_80060F30(player->sfxSource, 0x09007029, player->num); gChargeTimers[player->num] = 0; - D_Timer_80177BD0[player->num] = 5; + gControllerRumbleTimers[player->num] = 5; return true; } } @@ -4996,7 +4996,7 @@ void func_play_800B39E0(Player* player) { } if (player->unk_1F4 > 0) { if (player->unk_1F4 > 3) { - *D_ctx_80177984 = 1; + *gControllerRumble = 1; } player->unk_1F4--; if (player->form == FORM_ARWING) { @@ -5287,23 +5287,23 @@ void Player_Update1(Player* player) { if (gVersusMode) { gInputHold = &gControllerHold[player->num]; gInputPress = &gControllerPress[player->num]; - D_ctx_80177984 = &D_80137E84[player->num]; + gControllerRumble = &gControllerRumbleFlags[player->num]; } else { gInputHold = &gControllerHold[gMainController]; gInputPress = &gControllerPress[gMainController]; - D_ctx_80177984 = &D_80137E84[gMainController]; + gControllerRumble = &gControllerRumbleFlags[gMainController]; } D_ctx_80177990[player->num] += (s32) D_ctx_801779A8[player->num]; Math_SmoothStepToF(&D_ctx_801779A8[player->num], 0.0f, 1.0f, 1.5f, 0.0f); if (D_ctx_80177990[player->num] >= 100) { D_ctx_80177990[player->num] -= 100; - *D_ctx_80177984 = 1; + *gControllerRumble = 1; } - if (D_Timer_80177BD0[player->num] != 0) { - D_Timer_80177BD0[player->num]--; + if (gControllerRumbleTimers[player->num] != 0) { + gControllerRumbleTimers[player->num]--; if (((gGameFrameCount % 2) == 0)) { - *D_ctx_80177984 = 1; + *gControllerRumble = 1; } } if (player->state_1C8 >= PLAYERSTATE_1C8_2) { @@ -5325,9 +5325,9 @@ void Player_Update1(Player* player) { Math_SmoothStepToVec3fArray(sp58, player->jointTable, 1, sp1C4, 0.1f, 1.3f, 0.0f); } player->sfx.bank = player->sfx.roll = 0; - sp1C4 = player->unk_22C; + sp1C4 = player->whooshTimer; if (sp1C4 != 0) { - player->unk_22C--; + player->whooshTimer--; } switch (player->state_1C8) { case PLAYERSTATE_1C8_0: @@ -5396,7 +5396,7 @@ void Player_Update1(Player* player) { } } else { gInputPress->stick_x = gInputPress->stick_y = 0; - D_ctx_80177844 = 0; + gVsItemSpawnTimer = 0; gPauseEnabled = 0; } break; @@ -6122,11 +6122,11 @@ void func_play_800B73E0(Player* player) { } void Play_UpdateLevel(void) { - s32 var_v0_2; + s32 cycleMask; s32 sp40; f32 sp3C; - u8 var_a0; - u8 sp3A; + u8 shields; + u8 heightParam; switch (gCurrentLevel) { case LEVEL_TRAINING: @@ -6136,18 +6136,18 @@ void Play_UpdateLevel(void) { break; case LEVEL_VERSUS: func_versus_800C26C8(); - D_ctx_80177844++; - if ((D_ctx_80177844 == 200) && (gLaserStrength[0] == LASERS_SINGLE) && + gVsItemSpawnTimer++; + if ((gVsItemSpawnTimer == 200) && (gLaserStrength[0] == LASERS_SINGLE) && (gLaserStrength[1] == LASERS_SINGLE) && (gLaserStrength[2] == LASERS_SINGLE) && (gLaserStrength[3] == LASERS_SINGLE)) { - func_play_800B852C(OBJ_ITEM_LASERS, &gItems[0]); + Play_SpawnVsItem(OBJ_ITEM_LASERS, &gItems[0]); } - if ((D_ctx_80177844 == 400) && (gBombCount[0] == 0) && (gBombCount[1] == 0) && (gBombCount[2] == 0) && + if ((gVsItemSpawnTimer == 400) && (gBombCount[0] == 0) && (gBombCount[1] == 0) && (gBombCount[2] == 0) && (gBombCount[3] == 0)) { - func_play_800B852C(OBJ_ITEM_BOMB, &gItems[1]); + Play_SpawnVsItem(OBJ_ITEM_BOMB, &gItems[1]); } - if (D_ctx_80177844 == 500) { - D_ctx_80177844 = 0; + if (gVsItemSpawnTimer == 500) { + gVsItemSpawnTimer = 0; } break; case LEVEL_VENOM_2: @@ -6219,31 +6219,31 @@ void Play_UpdateLevel(void) { Texture_Mottle(D_SO_601E1E8, D_SO_6020F60, 3); if (gPlayer[0].pos.y > 600.0f) { - var_v0_2 = 8 - 1; - sp3A = 5; + cycleMask = 8 - 1; + heightParam = 5; } else if (gPlayer[0].pos.y > 500.0f) { - var_v0_2 = 8 - 1; - sp3A = 4; + cycleMask = 8 - 1; + heightParam = 4; } else if (gPlayer[0].pos.y > 400.0f) { - var_v0_2 = 4 - 1; - sp3A = 3; + cycleMask = 4 - 1; + heightParam = 3; } else if (gPlayer[0].pos.y > 300.0f) { - var_v0_2 = 4 - 1; - sp3A = 2; + cycleMask = 4 - 1; + heightParam = 2; } else if (gPlayer[0].pos.y > 200.0f) { - var_v0_2 = 2 - 1; - sp3A = 1; + cycleMask = 2 - 1; + heightParam = 1; } else if (gPlayer[0].pos.y > 100.0f) { - var_v0_2 = 1 - 1; - sp3A = 0; + cycleMask = 1 - 1; + heightParam = 0; } else { - var_v0_2 = 1 - 1; + cycleMask = 1 - 1; #ifdef AVOID_UB - sp3A = 0; + heightParam = 0; #endif } - if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && !(gGameFrameCount & var_v0_2)) { + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && ((gGameFrameCount & cycleMask) == 0)) { gPlayer[0].shields--; if (gPlayer[0].shields <= 0) { gPlayer[0].shields = 0; @@ -6256,8 +6256,8 @@ void Play_UpdateLevel(void) { } } } - var_a0 = MIN(gPlayer[0].shields, 255); - func_8001D1C8(var_a0, sp3A); + shields = MIN(gPlayer[0].shields, 255); + func_8001D1C8(shields, heightParam); if (((gGameFrameCount % 8) == 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7)) { Solar_8019E8B8(RAND_FLOAT_CENTERED(6000.0f), -80.0f, gPlayer[0].unk_138 + (RAND_FLOAT(2000.0f) + -6000.0f), @@ -6339,21 +6339,21 @@ void Play_Update(void) { Play_UpdateLevel(); } -u8 D_800D317C = 255; +u8 sVsItemSpawnIndex = -1; -void func_play_800B852C(ObjectId objId, Item* item) { - u8 sp1F = (u8) RAND_FLOAT(5.0f); +void Play_SpawnVsItem(ObjectId objId, Item* item) { + u8 spawnIndex = (u8) RAND_FLOAT(5.0f); - if (D_800D317C == sp1F) { - D_ctx_80177844 -= 1; + if (sVsItemSpawnIndex == spawnIndex) { + gVsItemSpawnTimer -= 1; } else { - D_800D317C = sp1F; + sVsItemSpawnIndex = spawnIndex; if (item->obj.status == OBJ_FREE) { Item_Initialize(item); item->obj.status = OBJ_INIT; - item->obj.pos.x = gObjects58[sp1F].obj.pos.x; - item->obj.pos.y = gObjects58[sp1F].obj.pos.y; - item->obj.pos.z = gObjects58[sp1F].obj.pos.z; + item->obj.pos.x = gObjects58[spawnIndex].obj.pos.x; + item->obj.pos.y = gObjects58[spawnIndex].obj.pos.y; + item->obj.pos.z = gObjects58[spawnIndex].obj.pos.z; item->obj.id = objId; Object_SetInfo(&item->info, item->obj.id); } diff --git a/src/engine/fox_radio.c b/src/engine/fox_radio.c index 841e97ae..bd2d8ee9 100644 --- a/src/engine/fox_radio.c +++ b/src/engine/fox_radio.c @@ -426,20 +426,20 @@ void func_radio_800BAAE8(void) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255); if (mirror) { - for (i = 0, j = 0; i < 2; i++, j += 880) { + for (i = 0, j = 0; i < 2; i++, j += 44 * 20) { TextureRect_16bRGBA_MirX(&gMasterDisp, &sp44[j], 44, 20, D_radio_8017873C, D_radio_80178740 + 20.0f + sp38 + (i * 20.0f * D_ctx_80177D38), 1.0f, D_ctx_80177D38); } - TextureRect_16bRGBA_MirX(&gMasterDisp, &sp44[2 * 880], 44, 4, D_radio_8017873C, + TextureRect_16bRGBA_MirX(&gMasterDisp, &sp44[44 * 20 * 2], 44, 4, D_radio_8017873C, D_radio_80178740 + 20.0f + sp38 + (40.0f * D_ctx_80177D38), 1.0f, D_ctx_80177D38); } else { - for (i = 0, j = 0; i < 2; i++, j += 880) { + for (i = 0, j = 0; i < 2; i++, j += 44 * 20) { TextureRect_16bRGBA(&gMasterDisp, &sp44[j], 44, 20, D_radio_8017873C, D_radio_80178740 + 20.0f + sp38 + (i * 20.0f * D_ctx_80177D38), 1.0f, D_ctx_80177D38); } - TextureRect_16bRGBA(&gMasterDisp, &sp44[2 * 880], 44, 4, D_radio_8017873C, + TextureRect_16bRGBA(&gMasterDisp, &sp44[44 * 20 * 2], 44, 4, D_radio_8017873C, D_radio_80178740 + 20.0f + sp38 + (40.0f * D_ctx_80177D38), 1.0f, D_ctx_80177D38); } } @@ -550,7 +550,7 @@ void func_radio_800BB5D0(void) { if (D_Timer_801782AC == 0) { gRadioState++; temp_v0 = Message_GetWidth(D_ctx_80178308); - if (D_80137E78 == 3) { + if (gVIsPerFrame == 3) { D_Timer_801782AC = temp_v0 + 16; } else { D_Timer_801782AC = (2 * temp_v0) + 16; @@ -595,7 +595,7 @@ void func_radio_800BB5D0(void) { D_ctx_801782A4 = (s32) D_ctx_80177D68 + 1; } - if (!D_80137E78) {} + if (!gVIsPerFrame) {} if (1) { fakeTemp = 0; diff --git a/src/engine/fox_reset.c b/src/engine/fox_reset.c index b7224c5d..f5a9ab35 100644 --- a/src/engine/fox_reset.c +++ b/src/engine/fox_reset.c @@ -1,7 +1,7 @@ #include "global.h" void Graphics_NMIWipe(void) { - static s16 D_800D4A80 = 0; + static s16 sWipeBarLength = 0; s32 i; gViewport->vp.vscale[0] = SCREEN_WIDTH * 2; @@ -14,24 +14,32 @@ void Graphics_NMIWipe(void) { gViewport->vp.vtrans[3] = 0; gSPViewport(gMasterDisp++, gViewport); gDPPipeSync(gMasterDisp++); - gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT - 8); + gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, SCREEN_MARGIN, SCREEN_MARGIN, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT - SCREEN_MARGIN); - Graphics_FillRectangle(&gMasterDisp, 8, 8, MIN(304, D_800D4A80) + 8, 64, 0, 0, 0, 255); - Graphics_FillRectangle(&gMasterDisp, SCREEN_WIDTH - 8 - MIN(304, D_800D4A80), 64, SCREEN_WIDTH - 8, 120, 0, 0, 0, - 255); - Graphics_FillRectangle(&gMasterDisp, 8, 120, MIN(304, D_800D4A80) + 8, 176, 0, 0, 0, 255); - Graphics_FillRectangle(&gMasterDisp, SCREEN_WIDTH - 8 - MIN(304, D_800D4A80), 176, SCREEN_WIDTH - 8, 232, 0, 0, 0, - 255); - if (D_800D4A80 == 0) { + Graphics_FillRectangle(&gMasterDisp, SCREEN_MARGIN, SCREEN_MARGIN, + MIN(SCREEN_WIDTH - 2 * SCREEN_MARGIN, sWipeBarLength) + SCREEN_MARGIN, + SCREEN_HEIGHT / 4 + SCREEN_MARGIN / 2, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, + SCREEN_WIDTH - SCREEN_MARGIN - MIN(SCREEN_WIDTH - 2 * SCREEN_MARGIN, sWipeBarLength), + SCREEN_HEIGHT / 4 + SCREEN_MARGIN / 2, SCREEN_WIDTH - 8, SCREEN_HEIGHT / 2, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, SCREEN_MARGIN, SCREEN_HEIGHT / 2, + MIN(SCREEN_WIDTH - 2 * SCREEN_MARGIN, sWipeBarLength) + SCREEN_MARGIN, + 3 * SCREEN_HEIGHT / 4 - SCREEN_MARGIN / 2, 0, 0, 0, 255); + Graphics_FillRectangle(&gMasterDisp, + SCREEN_WIDTH - SCREEN_MARGIN - MIN(SCREEN_WIDTH - 2 * SCREEN_MARGIN, sWipeBarLength), + 3 * SCREEN_HEIGHT / 4 - SCREEN_MARGIN / 2, SCREEN_WIDTH - SCREEN_MARGIN, + SCREEN_HEIGHT - SCREEN_MARGIN, 0, 0, 0, 255); + if (sWipeBarLength == 0) { AudioThread_PreNMIReset(); } - D_800D4A80 += 45; - if (D_800D4A80 >= 485) { - osViBlack(1); - gStopTasks = 1; + sWipeBarLength += SCREEN_WIDTH / 7; + if (sWipeBarLength >= SCREEN_WIDTH * 85 / 8 / 7) { // Why 85 / 8 == 3400 / 320 == 10.625? Has to do with NMI timing? + osViBlack(true); + gStopTasks = true; } for (i = 0; i < MAXCONTROLLERS; i++) { - gControllerRumble[i] = 0; - D_80137E84[i] = 0; + gControllerRumbleEnabled[i] = 0; + gControllerRumbleFlags[i] = 0; } } diff --git a/src/engine/fox_std_lib.c b/src/engine/fox_std_lib.c index 1cc1d824..262d6138 100644 --- a/src/engine/fox_std_lib.c +++ b/src/engine/fox_std_lib.c @@ -26,100 +26,100 @@ s32 Graphics_Printf(const char* fmt, ...) { } void Texture_Scroll(u16* texture, s32 width, s32 height, u8 mode) { - u16* temp_t0 = SEGMENTED_TO_VIRTUAL(texture); - u16 temp_a3; - s32 var_a0; - s32 var_t4; + u16* pixel = SEGMENTED_TO_VIRTUAL(texture); + u16 tempPxl; + s32 u; + s32 v; switch (mode) { case 0: - for (var_a0 = 0; var_a0 < width; var_a0++) { - temp_a3 = temp_t0[var_a0]; - for (var_t4 = 1; var_t4 < height; var_t4++) { - temp_t0[(var_t4 - 1) * width + var_a0] = temp_t0[(var_t4) *width + var_a0]; + for (u = 0; u < width; u++) { + tempPxl = pixel[u]; + for (v = 1; v < height; v++) { + pixel[(v - 1) * width + u] = pixel[(v) *width + u]; } - temp_t0[(height - 1) * width + var_a0] = temp_a3; + pixel[(height - 1) * width + u] = tempPxl; } break; case 1: - for (var_a0 = 0; var_a0 < width; var_a0++) { - temp_a3 = temp_t0[(height - 1) * width + var_a0]; - for (var_t4 = height - 2; var_t4 >= 0; var_t4--) { - temp_t0[(var_t4 + 1) * width + var_a0] = temp_t0[(var_t4) *width + var_a0]; + for (u = 0; u < width; u++) { + tempPxl = pixel[(height - 1) * width + u]; + for (v = height - 2; v >= 0; v--) { + pixel[(v + 1) * width + u] = pixel[(v) *width + u]; } - temp_t0[var_a0] = temp_a3; + pixel[u] = tempPxl; } break; case 2: - for (var_t4 = 0; var_t4 < height; var_t4++) { - temp_a3 = temp_t0[var_t4 * width + width - 1]; - for (var_a0 = width - 2; var_a0 >= 0; var_a0--) { - temp_t0[var_t4 * width + var_a0 + 1] = temp_t0[var_t4 * width + var_a0]; + for (v = 0; v < height; v++) { + tempPxl = pixel[v * width + width - 1]; + for (u = width - 2; u >= 0; u--) { + pixel[v * width + u + 1] = pixel[v * width + u]; } - temp_t0[var_t4 * width] = temp_a3; + pixel[v * width] = tempPxl; } break; case 3: - for (var_t4 = 0; var_t4 < height; var_t4++) { - temp_a3 = temp_t0[var_t4 * width]; - for (var_a0 = 1; var_a0 < width; var_a0++) { - temp_t0[var_t4 * width + var_a0 - 1] = temp_t0[var_t4 * width + var_a0]; + for (v = 0; v < height; v++) { + tempPxl = pixel[v * width]; + for (u = 1; u < width; u++) { + pixel[v * width + u - 1] = pixel[v * width + u]; } - temp_t0[var_t4 * width + width - 1] = temp_a3; + pixel[v * width + width - 1] = tempPxl; } break; } } void Texture_Mottle(u16* dst, u16* src, u8 mode) { - s32 var_v1; - s32 var_s3; - u8* var_s0_2; - u8* var_s4_2; - s32 temp_ft3; + s32 u; + s32 v; + u8* dst8; + u8* src8; + s32 offset; dst = SEGMENTED_TO_VIRTUAL(dst); src = SEGMENTED_TO_VIRTUAL(src); switch (mode) { case 2: - for (var_s3 = 0; var_s3 < 32 * 32; var_s3 += 32) { - temp_ft3 = 3.0f * __sinf((s32) (((var_s3 / 32) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 32)); - for (var_v1 = 0; var_v1 < 32; var_v1++) { - dst[var_s3 + (temp_ft3 + var_v1) % 32U] = src[var_s3 + var_v1]; + for (v = 0; v < 32 * 32; v += 32) { + offset = 3.0f * __sinf((s32) (((v / 32) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 32)); + for (u = 0; u < 32; u++) { + dst[v + (offset + u) % 32U] = src[v + u]; } } break; case 3: - for (var_s3 = 0; var_s3 < 22 * 64; var_s3 += 64) { - temp_ft3 = __sinf((s32) (((var_s3 / 64) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 8)); - for (var_v1 = 0; var_v1 < 64; var_v1++) { - dst[var_s3 + (temp_ft3 + var_v1) % 64U] = src[var_s3 + var_v1]; + for (v = 0; v < 22 * 64; v += 64) { // should be 32 * 64? + offset = __sinf((s32) (((v / 64) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 8)); + for (u = 0; u < 64; u++) { + dst[v + (offset + u) % 64U] = src[v + u]; } } break; case 1: - for (var_s3 = 0; var_s3 < 16 * 16; var_s3 += 16) { - temp_ft3 = 2.0f * __sinf((s32) (((var_s3 / 16) + (gGameFrameCount / 2)) % 16U) * (2 * M_PI / 16)); - for (var_v1 = 0; var_v1 < 16; var_v1++) { - dst[var_s3 + (temp_ft3 + var_v1) % 16U] = src[var_s3 + var_v1]; + for (v = 0; v < 16 * 16; v += 16) { + offset = 2.0f * __sinf((s32) (((v / 16) + (gGameFrameCount / 2)) % 16U) * (2 * M_PI / 16)); + for (u = 0; u < 16; u++) { + dst[v + (offset + u) % 16U] = src[v + u]; } } break; case 0: - for (var_s3 = 0; var_s3 < 32 * 32; var_s3 += 32) { - temp_ft3 = 2.0f * __sinf((s32) (((var_s3 / 32) + (gGameFrameCount / 2)) % 32U) * (2 * M_PI / 32)); - for (var_v1 = 0; var_v1 < 32; var_v1++) { - dst[var_s3 + (temp_ft3 + var_v1) % 32U] = src[var_s3 + var_v1]; + for (v = 0; v < 32 * 32; v += 32) { + offset = 2.0f * __sinf((s32) (((v / 32) + (gGameFrameCount / 2)) % 32U) * (2 * M_PI / 32)); + for (u = 0; u < 32; u++) { + dst[v + (offset + u) % 32U] = src[v + u]; } } break; case 5: - var_s0_2 = (u8*) dst; - var_s4_2 = (u8*) src; - for (var_s3 = 0; var_s3 < 64 * 64; var_s3 += 64) { - temp_ft3 = 4.0f * __sinf((s32) (((var_s3 / 64) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 32)); - for (var_v1 = 0; var_v1 < 64; var_v1++) { - var_s0_2[var_s3 + (temp_ft3 + var_v1) % 64U] = var_s4_2[var_s3 + var_v1]; + dst8 = (u8*) dst; + src8 = (u8*) src; + for (v = 0; v < 64 * 64; v += 64) { + offset = 4.0f * __sinf((s32) (((v / 64) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 32)); + for (u = 0; u < 64; u++) { + dst8[v + (offset + u) % 64U] = src8[v + u]; } } } diff --git a/src/engine/fox_tank.c b/src/engine/fox_tank.c index b5c9cfbc..73872a9d 100644 --- a/src/engine/fox_tank.c +++ b/src/engine/fox_tank.c @@ -996,7 +996,7 @@ s32 func_tank_80046E40(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 if (spB4 != 0) { for (i = 0; i < spB4; i++, hitboxData += 6) { spA0 = 0; - if (hitboxData[0] == HITBOX_TYPE_2) { + if (hitboxData[0] == HITBOX_ROTATED) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -1006,7 +1006,7 @@ s32 func_tank_80046E40(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 hitboxData += 4; spA0 = 1.0f; } else { - if (hitboxData[0] == HITBOX_TYPE_3) { + if (hitboxData[0] == HITBOX_SHADOW) { hitboxData++; } Matrix_RotateZ(gCalcMatrix, -zRot * M_DTOR, 0); @@ -1067,13 +1067,13 @@ s32 func_tank_80046E40(Player* player, f32* hitboxData, s32* index, f32 xPos, f3 } if (func_play_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; - if (hitboxData[-1] == HITBOX_TYPE_3) { + if (hitboxData[-1] == HITBOX_SHADOW) { return -1; } else { return 3; } } - if (hitboxData[-1] == HITBOX_TYPE_3) { + if (hitboxData[-1] == HITBOX_SHADOW) { return 0; } if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { @@ -1358,13 +1358,13 @@ void func_tank_800481F4(Player* player) { D_ctx_80178570 = 20; D_ctx_80178574 = 20; D_ctx_80178578 = 20; - player->unk_23C = 80; - if (player->unk_22C == 0) { + player->shadowing = 80; + if (player->whooshTimer == 0) { AUDIO_PLAY_SFX(0x19000001, player->sfxSource, 0); } - player->unk_22C += 2; - if (player->unk_22C >= 4) { - player->unk_22C = 4; + player->whooshTimer += 2; + if (player->whooshTimer >= 4) { + player->whooshTimer = 4; } } else if (temp_v0 == -2) { AUDIO_PLAY_SFX(0x19000001, player->sfxSource, 0); diff --git a/src/engine/fox_versus.c b/src/engine/fox_versus.c index 7ebdc3d6..4c13e2e3 100644 --- a/src/engine/fox_versus.c +++ b/src/engine/fox_versus.c @@ -88,7 +88,7 @@ void func_versus_800BC8D8(f32 xPos, f32 yPos, f32 scale) { s32 i; for (i = 0; i < 2; i++) { - TextureRect_8bCI(&gMasterDisp, D_versus_300A470 + (i * 152 * 8), D_versus_300B218, 152, 8, xPos, + TextureRect_8bCI(&gMasterDisp, D_versus_300A470 + (152 * 8 * i), D_versus_300B218, 152, 8, xPos, yPos + (8 * i * scale), scale, scale); } |
