From 6e5fb93dde6368a6557fdd09ce9ae9309296670b Mon Sep 17 00:00:00 2001 From: Derek Hensley Date: Fri, 9 Oct 2026 04:47:01 -0700 Subject: [PATCH] Another small misc Cleanup (#1906) * Scene_CommandAltHeaderList * Scene_CommandWindSettings * Scene_CommandCollisionHeader * EnMkk_Draw float * func_8012F73C * Object_UpdateEntries * GET_PLAYER_ANIM * KaleidoSetup_Update combine ifs * KaleidoManager_GetRamAddr * func_800F4A10 OWL_WARP_CLOCK_TOWN * Rand_Next modulus instead of and * Rand_Next s16 casts back to & 0xFFFF * Player_InitItemActionWithAnim review suggestion * KaleidoSetup_Update review * func_8012F73C review * Revert "GET_PLAYER_ANIM" This reverts commit 3c6fb061ebe19338c9ce984906853b9d962ccf89. --- include/z64scene.h | 8 +-- src/code/z_kaleido_manager.c | 23 +++---- src/code/z_kaleido_setup.c | 65 ++++++++++--------- src/code/z_scene.c | 54 +++++++-------- .../z_bg_hakugin_bombwall.c | 2 +- .../ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c | 22 +++---- .../z_bg_ikana_bombwall.c | 2 +- src/overlays/actors/ovl_En_Bal/z_en_bal.c | 4 +- src/overlays/actors/ovl_En_Fish/z_en_fish.c | 4 +- .../actors/ovl_En_Fu_Mato/z_en_fu_mato.c | 6 +- .../actors/ovl_En_Maruta/z_en_maruta.c | 4 +- src/overlays/actors/ovl_En_Mkk/z_en_mkk.c | 2 +- .../actors/ovl_En_Mushi2/z_en_mushi2.c | 4 +- .../actors/ovl_En_Rail_Skb/z_en_rail_skb.c | 2 +- .../actors/ovl_En_Railgibud/z_en_railgibud.c | 2 +- 15 files changed, 99 insertions(+), 105 deletions(-) diff --git a/include/z64scene.h b/include/z64scene.h index 89dc8ad4e7..bd5e48d493 100644 --- a/include/z64scene.h +++ b/include/z64scene.h @@ -58,10 +58,10 @@ typedef struct { /* 0x0 */ u8 code; /* 0x1 */ u8 data1; /* 0x2 */ UNK_TYPE1 pad2[2]; - /* 0x4 */ s8 west; - /* 0x5 */ s8 vertical; - /* 0x6 */ s8 south; - /* 0x7 */ u8 clothIntensity; + /* 0x4 */ s8 x; + /* 0x5 */ s8 y; + /* 0x6 */ s8 z; + /* 0x7 */ u8 speed; } SCmdWindSettings; // size = 0x8 typedef struct { diff --git a/src/code/z_kaleido_manager.c b/src/code/z_kaleido_manager.c index 072c460ab3..053a0322ea 100644 --- a/src/code/z_kaleido_manager.c +++ b/src/code/z_kaleido_manager.c @@ -83,23 +83,24 @@ void KaleidoManager_Destroy(void) { } void* KaleidoManager_GetRamAddr(void* vram) { - if (gKaleidoMgrCurOvl == NULL) { - s32 pad[2]; - KaleidoMgrOverlay* ovl = &gKaleidoMgrOverlayTable[0]; + KaleidoMgrOverlay* ovl = gKaleidoMgrCurOvl; - do { + if (ovl == NULL) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(gKaleidoMgrOverlayTable); i++) { + ovl = &gKaleidoMgrOverlayTable[i]; if (((uintptr_t)vram >= (uintptr_t)ovl->vramStart) && ((uintptr_t)ovl->vramEnd >= (uintptr_t)vram)) { KaleidoManager_LoadOvl(ovl); return (void*)((uintptr_t)vram + ovl->offset); } - ovl++; - } while (ovl != (KaleidoMgrOverlay*)&sKaleidoAreaPtr); - - return NULL; - } else if (((uintptr_t)vram < (uintptr_t)gKaleidoMgrCurOvl->vramStart) || - ((uintptr_t)vram >= (uintptr_t)gKaleidoMgrCurOvl->vramEnd)) { + } return NULL; } - return (void*)((uintptr_t)vram + gKaleidoMgrCurOvl->offset); + if (((uintptr_t)vram < (uintptr_t)ovl->vramStart) || ((uintptr_t)vram >= (uintptr_t)ovl->vramEnd)) { + return NULL; + } + + return (void*)((uintptr_t)vram + ovl->offset); } diff --git a/src/code/z_kaleido_setup.c b/src/code/z_kaleido_setup.c index 44bed418d9..493a33e296 100644 --- a/src/code/z_kaleido_setup.c +++ b/src/code/z_kaleido_setup.c @@ -60,8 +60,8 @@ void func_800F4A10(PlayState* play) { } } - if ((gSaveContext.save.saveInfo.playerData.owlActivationFlags >> 4) & 1) { - pauseCtx->cursorPoint[PAUSE_WORLD_MAP] = 4; + if ((gSaveContext.save.saveInfo.playerData.owlActivationFlags >> OWL_WARP_CLOCK_TOWN) & 1) { + pauseCtx->cursorPoint[PAUSE_WORLD_MAP] = OWL_WARP_CLOCK_TOWN; } } @@ -105,41 +105,44 @@ void KaleidoSetup_Update(PlayState* play) { return; } - if (!Play_InCsMode(play) || ((msgCtx->msgMode != MSGMODE_NONE) && (msgCtx->currentTextId == 0xFF))) { - if (play->bButtonAmmoPlusOne >= 2) { - return; - } + if (Play_InCsMode(play) && ((msgCtx->msgMode == MSGMODE_NONE) || (msgCtx->currentTextId != 0xFF))) { + return; + } - if ((gSaveContext.magicState == MAGIC_STATE_STEP_CAPACITY) || (gSaveContext.magicState == MAGIC_STATE_FILL)) { - return; - } + if (1) {} - if (CHECK_EVENTINF(EVENTINF_17) || (player->stateFlags1 & PLAYER_STATE1_20)) { - return; - } + if (play->bButtonAmmoPlusOne >= 2) { + return; + } - if ((play->actorCtx.flags & ACTORCTX_FLAG_TELESCOPE_ON) || - (play->actorCtx.flags & ACTORCTX_FLAG_PICTO_BOX_ON)) { - return; - } + if ((gSaveContext.magicState == MAGIC_STATE_STEP_CAPACITY) || (gSaveContext.magicState == MAGIC_STATE_FILL)) { + return; + } - if (!play->actorCtx.isOverrideInputOn && CHECK_BTN_ALL(input->press.button, BTN_START)) { - gSaveContext.prevHudVisibility = gSaveContext.hudVisibility; - pauseCtx->itemDescriptionOn = false; - pauseCtx->state = PAUSE_STATE_OPENING_0; - func_800F4A10(play); - // Set next page mode to scroll left - pauseCtx->nextPageMode = pauseCtx->pageIndex * 2 + 1; - Audio_SetPauseState(true); - } + if (CHECK_EVENTINF(EVENTINF_17) || (player->stateFlags1 & PLAYER_STATE1_20)) { + return; + } - if (pauseCtx->state == PAUSE_STATE_OPENING_0) { - GameState_SetFramerateDivisor(&play->state, 2); - if (ShrinkWindow_Letterbox_GetSizeTarget() != 0) { - ShrinkWindow_Letterbox_SetSizeTarget(0); - } - Audio_PlaySfx_PauseMenuOpenOrClose(SFX_PAUSE_MENU_OPEN); + if ((play->actorCtx.flags & ACTORCTX_FLAG_TELESCOPE_ON) || (play->actorCtx.flags & ACTORCTX_FLAG_PICTO_BOX_ON)) { + return; + } + + if (!play->actorCtx.isOverrideInputOn && CHECK_BTN_ALL(input->press.button, BTN_START)) { + gSaveContext.prevHudVisibility = gSaveContext.hudVisibility; + pauseCtx->itemDescriptionOn = false; + pauseCtx->state = PAUSE_STATE_OPENING_0; + func_800F4A10(play); + // Set next page mode to scroll left + pauseCtx->nextPageMode = pauseCtx->pageIndex * 2 + 1; + Audio_SetPauseState(true); + } + + if (pauseCtx->state == PAUSE_STATE_OPENING_0) { + GameState_SetFramerateDivisor(&play->state, 2); + if (ShrinkWindow_Letterbox_GetSizeTarget() != 0) { + ShrinkWindow_Letterbox_SetSizeTarget(0); } + Audio_PlaySfx_PauseMenuOpenOrClose(SFX_PAUSE_MENU_OPEN); } } diff --git a/src/code/z_scene.c b/src/code/z_scene.c index 1d568720ac..b39b326550 100644 --- a/src/code/z_scene.c +++ b/src/code/z_scene.c @@ -90,7 +90,7 @@ void Object_UpdateEntries(ObjectContext* objectCtx) { DmaMgr_RequestAsync(&entry->dmaReq, entry->segment, objectFile->vromStart, size, 0, &entry->loadQueue, NULL); } - } else if (!osRecvMesg(&entry->loadQueue, NULL, OS_MESG_NOBLOCK)) { + } else if (osRecvMesg(&entry->loadQueue, NULL, OS_MESG_NOBLOCK) == 0) { entry->id = id; } } @@ -137,21 +137,17 @@ void Object_LoadAll(ObjectContext* objectCtx) { } void* func_8012F73C(ObjectContext* objectCtx, s32 slot, s16 id) { - u32 addr; - uintptr_t vromSize; - RomFile* fileTableEntry; + ObjectEntry* entry = &objectCtx->slots[slot]; + RomFile* objectFile = &gObjectTable[id]; + size_t size; + void* nextPtr; - objectCtx->slots[slot].id = -id; - objectCtx->slots[slot].dmaReq.vromAddr = 0; + entry->id = -id; + entry->dmaReq.vromAddr = 0; + size = objectFile->vromEnd - objectFile->vromStart; + nextPtr = (void*)ALIGN16((uintptr_t)entry->segment + size); - fileTableEntry = &gObjectTable[id]; - vromSize = fileTableEntry->vromEnd - fileTableEntry->vromStart; - - // TODO: UB to cast void to u32 - addr = ((u32)objectCtx->slots[slot].segment) + vromSize; - addr = ALIGN16(addr); - - return (void*)addr; + return nextPtr; } // SceneTableEntry Header Command 0x00: Spawn List @@ -195,12 +191,9 @@ void Scene_CommandActorCutsceneCamList(PlayState* play, SceneCmd* cmd) { // SceneTableEntry Header Command 0x03: Collision Header void Scene_CommandCollisionHeader(PlayState* play, SceneCmd* cmd) { - CollisionHeader* colHeaderTemp; - CollisionHeader* colHeader; + CollisionHeader* colHeader = Lib_SegmentedToVirtual(cmd->colHeader.segment); - colHeaderTemp = Lib_SegmentedToVirtual(cmd->colHeader.segment); - colHeader = colHeaderTemp; - colHeader->vtxList = Lib_SegmentedToVirtual(colHeaderTemp->vtxList); + colHeader->vtxList = Lib_SegmentedToVirtual(colHeader->vtxList); colHeader->polyList = Lib_SegmentedToVirtual(colHeader->polyList); if (colHeader->surfaceTypeList != NULL) { @@ -433,14 +426,14 @@ void Scene_CommandTimeSettings(PlayState* play, SceneCmd* cmd) { // SceneTableEntry Header Command 0x05: Wind Settings void Scene_CommandWindSettings(PlayState* play, SceneCmd* cmd) { - s8 temp1 = cmd->windSettings.west; - s8 temp2 = cmd->windSettings.vertical; - s8 temp3 = cmd->windSettings.south; + s8 x = cmd->windSettings.x; + s8 y = cmd->windSettings.y; + s8 z = cmd->windSettings.z; - play->envCtx.windDirection.x = temp1; - play->envCtx.windDirection.y = temp2; - play->envCtx.windDirection.z = temp3; - play->envCtx.windSpeed = cmd->windSettings.clothIntensity; + play->envCtx.windDirection.x = x; + play->envCtx.windDirection.y = y; + play->envCtx.windDirection.z = z; + play->envCtx.windSpeed = cmd->windSettings.speed; } // SceneTableEntry Header Command 0x13: Exit List @@ -470,16 +463,13 @@ void Scene_CommandEchoSetting(PlayState* play, SceneCmd* cmd) { // SceneTableEntry Header Command 0x18: Alternate Header List void Scene_CommandAltHeaderList(PlayState* play, SceneCmd* cmd) { - SceneCmd** altHeaderList; - SceneCmd* altHeader; - if (gSaveContext.sceneLayer != 0) { - altHeaderList = Lib_SegmentedToVirtual(cmd->altHeaders.segment); - altHeader = altHeaderList[gSaveContext.sceneLayer - 1]; + SceneCmd* altHeader = + ((SceneCmd**)Lib_SegmentedToVirtual(cmd->altHeaders.segment))[gSaveContext.sceneLayer - 1]; if (altHeader != NULL) { Scene_ExecuteCommands(play, Lib_SegmentedToVirtual(altHeader)); - (cmd + 1)->base.code = 0x14; + (cmd + 1)->base.code = SCENE_CMD_ID_END; } } } diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c b/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c index 370bd28fae..bc2c713df2 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Bombwall/z_bg_hakugin_bombwall.c @@ -199,7 +199,7 @@ void func_80ABC2E0(BgHakuginBombwall* this, PlayState* play) { spBC.y = (Rand_ZeroOne() * 17.0f) + 7.0f; spBC.z = ((Rand_ZeroOne() - 0.5f) * 10.0f) + (temp_f24 * 0.13333334f); - temp_s1 = (Rand_Next() & 3) + (i >> 2) + 4; + temp_s1 = (Rand_Next() % 4) + (i >> 2) + 4; if ((Rand_Next() % 4) == 0) { phi_v0 = 32; diff --git a/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c b/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c index 8507a45a73..7553a9828b 100644 --- a/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c +++ b/src/overlays/actors/ovl_Bg_Hakugin_Post/z_bg_hakugin_post.c @@ -344,10 +344,10 @@ void func_80A9B554(BgHakuginPost* this, PlayState* play, BgHakuginPostUnkStruct* unkStruct2->unk_20.x = (s32)Rand_Next() >> 0x10; unkStruct2->unk_20.y = (s32)Rand_Next() >> 0x10; unkStruct2->unk_20.z = (s32)Rand_Next() >> 0x10; - unkStruct2->unk_26 = (Rand_Next() & 0x3FFF) - 0x1FFF; - unkStruct2->unk_28 = (Rand_Next() & 0x1FFF) - 0xFFF; - unkStruct2->unk_2A = (Rand_Next() & 0x1FFF) - 0xFFF; - unkStruct2->unk_2C = (Rand_Next() & 0x1F) + 0x4B; + unkStruct2->unk_26 = (Rand_Next() % 0x4000) - 0x1FFF; + unkStruct2->unk_28 = (Rand_Next() % 0x2000) - 0xFFF; + unkStruct2->unk_2A = (Rand_Next() % 0x2000) - 0xFFF; + unkStruct2->unk_2C = (Rand_Next() % 0x20) + 0x4B; unkStruct2->unk_2D = 2; } @@ -370,7 +370,7 @@ void func_80A9B554(BgHakuginPost* this, PlayState* play, BgHakuginPostUnkStruct* for (i = 65, val = 0; i < ARRAY_COUNT(unkStruct->unk_02A4); i++, val += 0x4A7) { unkStruct2 = &unkStruct->unk_02A4[i]; unkStruct2->unk_00 = Rand_ZeroOne() * 0.007f + 0.002f; - temp_s1_3 = (Rand_Next() & 0x7FF) + val; + temp_s1_3 = (Rand_Next() % 0x800) + val; temp_f24 = Math_SinS(temp_s1_3); temp_f28 = Math_CosS(temp_s1_3); unkStruct2->unk_04.x = temp_f24 * 225.5f + spB8.x; @@ -387,10 +387,10 @@ void func_80A9B554(BgHakuginPost* this, PlayState* play, BgHakuginPostUnkStruct* unkStruct2->unk_20.x = (s32)Rand_Next() >> 0x10; unkStruct2->unk_20.y = (s32)Rand_Next() >> 0x10; unkStruct2->unk_20.z = (s32)Rand_Next() >> 0x10; - unkStruct2->unk_26 = (Rand_Next() & 0x1FFF) - 0xFFF; - unkStruct2->unk_28 = (Rand_Next() & 0x1FFF) - 0xFFF; - unkStruct2->unk_2A = (Rand_Next() & 0x1FFF) - 0xFFF; - unkStruct2->unk_2C = (Rand_Next() & 0x1F) + 0x41; + unkStruct2->unk_26 = (Rand_Next() % 0x2000) - 0xFFF; + unkStruct2->unk_28 = (Rand_Next() % 0x2000) - 0xFFF; + unkStruct2->unk_2A = (Rand_Next() % 0x2000) - 0xFFF; + unkStruct2->unk_2C = (Rand_Next() % 0x20) + 0x41; unkStruct2->unk_2D = 0; } } @@ -569,7 +569,7 @@ void func_80A9C228(BgHakuginPost* this, PlayState* play, BgHakuginPostUnkStruct* if (unkStruct->unk_0000[i].unk_34 == 2) { for (j = 0, val = 0; j < 3; j++, val += 0x5555) { temp_f20 = Rand_ZeroOne() * 264.0f; - temp_s0 = (Rand_Next() & 0xFFF) + val; + temp_s0 = (Rand_Next() % 0x1000) + val; spB8.x = Math_SinS(temp_s0) * temp_f20 + spC8->unk_14.x; spB8.z = Math_CosS(temp_s0) * temp_f20 + spC8->unk_14.z; @@ -595,7 +595,7 @@ void func_80A9C228(BgHakuginPost* this, PlayState* play, BgHakuginPostUnkStruct* if ((unkStruct->unk_0000[i].unk_2F & 2) && (spC4 != NULL) && ((spC4->unk_34 == 3) || (spC4->unk_34 == 4))) { for (j = 0, val = 0; j < 18; j++, val += 0xE38) { temp_f20 = (Rand_ZeroOne() * 0.3f + 1.0f) * 220.0f; - temp_s0 = (Rand_Next() & 0xFFF) + val; + temp_s0 = (Rand_Next() % 0x1000) + val; spB8.x = Math_SinS(temp_s0) * temp_f20; spB8.z = Math_CosS(temp_s0) * temp_f20; diff --git a/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c b/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c index 91ac742c37..45ee9a5dd1 100644 --- a/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Ikana_Bombwall/z_bg_ikana_bombwall.c @@ -202,7 +202,7 @@ void func_80BD4A14(BgIkanaBombwall* this, PlayState* play) { velocity.y = (Rand_ZeroOne() * 18.0f) + 4.0f; velocity.z = ((Rand_ZeroOne() - 0.5f) * 3.0f * temp_fs1) + ((temp_fs1 * temp_fs3) * (1.0f / 30.0f)); - scale = (Rand_Next() & 3) + (i >> 1) + 6; + scale = (Rand_Next() % 4) + (i >> 1) + 6; if ((i & 3) == 0) { phi_v0 = 32; diff --git a/src/overlays/actors/ovl_En_Bal/z_en_bal.c b/src/overlays/actors/ovl_En_Bal/z_en_bal.c index 53be5f72c1..54a68d446f 100644 --- a/src/overlays/actors/ovl_En_Bal/z_en_bal.c +++ b/src/overlays/actors/ovl_En_Bal/z_en_bal.c @@ -465,7 +465,7 @@ void EnBal_SetupGroundIdle(EnBal* this) { this->eyeTexIndex = TINGLE_EYETEX_OPEN; this->idleAnimStage = TINGLE_IDLESTAGE_WAIT; Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, TINGLE_ANIM_IDLE); - } else if (Rand_Next() & 1) { + } else if ((Rand_Next() % 2) != 0) { this->idleAnimStage = TINGLE_IDLESTAGE_ACTIVITY; Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, TINGLE_ANIM_TALK); } else { @@ -559,7 +559,7 @@ void EnBal_GroundIdle(EnBal* this, PlayState* play) { Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, TINGLE_ANIM_IDLE); this->idleAnimStage++; } else if (this->idleAnimStage == TINGLE_IDLESTAGE_WAIT) { - if (Rand_Next() & 1) { + if ((Rand_Next() % 2) != 0) { this->forceEyesShut = false; this->eyeTexIndex = TINGLE_EYETEX_OPEN; Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, TINGLE_ANIM_TALK); diff --git a/src/overlays/actors/ovl_En_Fish/z_en_fish.c b/src/overlays/actors/ovl_En_Fish/z_en_fish.c index 1f21c254b3..740a702833 100644 --- a/src/overlays/actors/ovl_En_Fish/z_en_fish.c +++ b/src/overlays/actors/ovl_En_Fish/z_en_fish.c @@ -301,8 +301,8 @@ void func_8091E070(EnFish* this) { this->actor.gravity = 0.0f; this->actor.terminalVelocity = 0.0f; - if ((Rand_Next() & 3) == 0) { - if (((Rand_Next() & 7) == 0) && (this->unk_278 != 0)) { + if ((Rand_Next() % 4) == 0) { + if (((Rand_Next() % 8) == 0) && (this->unk_278 != 0)) { phi_a1 = 80; } else { phi_a1 = 45; diff --git a/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c b/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c index 5631a6ab1f..0d01bf462f 100644 --- a/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c +++ b/src/overlays/actors/ovl_En_Fu_Mato/z_en_fu_mato.c @@ -168,9 +168,9 @@ void func_80ACE680(EnFuMato* this) { this->dyna.actor.velocity.y = 1.0f; this->dyna.actor.velocity.x = 2.0f * Rand_Centered(); this->dyna.actor.velocity.z = 2.0f * Rand_Centered(); - this->unk_2FC.x = Rand_Next() & 0xFFF; - this->unk_2FC.y = Rand_Next() & 0xFFF; - this->unk_2FC.z = Rand_Next() & 0xFFF; + this->unk_2FC.x = Rand_Next() % 0x1000; + this->unk_2FC.y = Rand_Next() % 0x1000; + this->unk_2FC.z = Rand_Next() % 0x1000; this->unk_302 = 3; Actor_PlaySfx(&this->dyna.actor, NA_SE_EV_WOODPLATE_BOUND); this->actionFunc = func_80ACE718; diff --git a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c index 84372addb3..77441c012b 100644 --- a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c +++ b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.c @@ -440,8 +440,8 @@ void EnMaruta_SetupRecoilAfterCut(EnMaruta* this, PlayState* play) { spinAxis = sRecoilSpinAxesForShapes[this->shape]; - EnMaruta_RotateVector(&spinAxis, &this->recoilSpinAxis, Rand_Next() & 0xFFF, Rand_Next() & 0xFFF, 0); - this->recoilSpinRate = Rand_Next() & 0x7FF; + EnMaruta_RotateVector(&spinAxis, &this->recoilSpinAxis, Rand_Next() % 0x1000, Rand_Next() % 0x1000, 0); + this->recoilSpinRate = Rand_Next() % 0x800; if (this->shape == ENMARUTA_SHAPE_HORIZONTAL_CUT_BOTTOM_HALF) { this->recoilSpinRate |= 0x3F; diff --git a/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c b/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c index 21c1e62f0f..e97bb89916 100644 --- a/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c +++ b/src/overlays/actors/ovl_En_Mkk/z_en_mkk.c @@ -549,7 +549,7 @@ void EnMkk_Draw(Actor* thisx, PlayState* play) { gSPDisplayList(&gfx[6], modelInfo->modelDL); matrix->mf[3][0] = this->unk_160.x; - matrix->mf[3][1] = this->unk_160.y + 7.2250004f; + matrix->mf[3][1] = this->unk_160.y + 7225.0f * 0.001f; matrix->mf[3][2] = this->unk_160.z; Matrix_Scale(0.85f, 0.85f, 0.85f, MTXMODE_APPLY); diff --git a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c index 5464c5beaa..78bb0a28e6 100644 --- a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c +++ b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c @@ -919,7 +919,7 @@ void func_80A6A824(EnMushi2* this, PlayState* play) { } void func_80A6A984(EnMushi2* this) { - if (Rand_Next() & 1) { + if ((Rand_Next() % 2) != 0) { this->unk_370 = 0x800; } else { this->unk_370 = -0x800; @@ -1035,7 +1035,7 @@ void func_80A6AE7C(EnMushi2* this, PlayState* play) { temp_f2 = this->actor.scale.x - (1.0f / 20000.0f); Actor_SetScale(&this->actor, CLAMP_MIN(temp_f2, 0.001f)); if ((this->actor.flags & ACTOR_FLAG_INSIDE_CULLING_VOLUME) && (this->actor.depthInWater > 5.0f) && - (this->actor.depthInWater < 30.0f) && ((s32)(Rand_Next() & 0x1FF) < this->unk_368)) { + (this->actor.depthInWater < 30.0f) && ((s32)(Rand_Next() % 0x200) < this->unk_368)) { EffectSsBubble_Spawn(play, &this->actor.world.pos, -5.0f, 5.0f, 5.0f, ((Rand_ZeroOne() * 4.0f) + 2.0f) * this->actor.scale.x); } diff --git a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c index e21100fb61..25831ba303 100644 --- a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c +++ b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c @@ -871,7 +871,7 @@ void func_80B72430(EnRailSkb* this, PlayState* play, s32 arg2) { sp50.y += Rand_Centered() * 4.0f; - EffectSsHahen_Spawn(play, &sp5C, &sp50, &sp44, 0, (Rand_Next() & 7) + 10, HAHEN_OBJECT_DEFAULT, 10, NULL); + EffectSsHahen_Spawn(play, &sp5C, &sp50, &sp44, 0, (Rand_Next() % 8) + 10, HAHEN_OBJECT_DEFAULT, 10, NULL); func_800BBFB0(play, &sp5C, 10.0f, 1, 150, 0, 1); } } diff --git a/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c b/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c index 52776d5ca0..20514198ea 100644 --- a/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c +++ b/src/overlays/actors/ovl_En_Railgibud/z_en_railgibud.c @@ -675,7 +675,7 @@ void EnRailgibud_SpawnEffectsForSinkingIntoTheGround(EnRailgibud* this, PlayStat rockFragmentAccel.z = Rand_Centered(); rockFragmentVelocity.y += Rand_Centered() * 4.0f; EffectSsHahen_Spawn(play, &rockFragmentPos, &rockFragmentVelocity, &rockFragmentAccel, 0, - (Rand_Next() & 7) + 10, HAHEN_OBJECT_DEFAULT, 10, NULL); + (Rand_Next() % 8) + 10, HAHEN_OBJECT_DEFAULT, 10, NULL); EnRailgibud_SpawnDust(play, &rockFragmentPos, 10.0f, 10, 150, 0); } }