From c0b227ff1765e987bac07e6184d66e74f0b5ab2e Mon Sep 17 00:00:00 2001 From: engineer124 Date: Sat, 1 Oct 2022 15:29:45 -0400 Subject: [PATCH] more docs --- include/functions.h | 2 +- include/z64.h | 2 +- src/code/z_kaleido_setup.c | 2 +- src/code/z_parameter.c | 50 ++++++++++--------- src/code/z_player_lib.c | 4 +- .../actors/ovl_Bg_Ingate/z_bg_ingate.c | 4 +- .../ovl_En_Syateki_Man/z_en_syateki_man.c | 8 +-- src/overlays/actors/ovl_Obj_Um/z_obj_um.c | 4 +- tools/disasm/functions.txt | 2 +- tools/sizes/code_functions.csv | 2 +- 10 files changed, 41 insertions(+), 39 deletions(-) diff --git a/include/functions.h b/include/functions.h index bee8e6a5c..57bfbb4a7 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1897,7 +1897,7 @@ void func_80123D50(PlayState* play, Player* player, s32 itemId, s32 actionParam) void func_80123DA4(Player* player); void func_80123DC0(Player* player); void func_80123E90(PlayState* play, Actor* actor); -s32 func_80123F2C(PlayState* play, s32 ammo); +s32 Player_SetBButtonAmmo(PlayState* play, s32 ammo); s32 Player_IsBurningStickInRange(PlayState* play, Vec3f* pos, f32 xzRange, f32 yRange); u8 Player_GetStrength(void); u8 Player_GetMask(PlayState* play); diff --git a/include/z64.h b/include/z64.h index 6c8d26de7..d5e1207e7 100644 --- a/include/z64.h +++ b/include/z64.h @@ -994,7 +994,7 @@ struct PlayState { /* 0x18876 */ s16 unk_18876; /* 0x18878 */ s16 bgCoverAlpha; /* 0x1887A */ u16 nextEntrance; - /* 0x1887C */ s8 unk_1887C; // shootingGalleryStatus? + /* 0x1887C */ s8 bButtonAmmoPlusOne; /* 0x1887D */ s8 unk_1887D; /* 0x1887E */ s8 unk_1887E; /* 0x1887F */ u8 transitionType; // fadeTransition diff --git a/src/code/z_kaleido_setup.c b/src/code/z_kaleido_setup.c index d1f4d0ca2..ad24321c7 100644 --- a/src/code/z_kaleido_setup.c +++ b/src/code/z_kaleido_setup.c @@ -75,7 +75,7 @@ void KaleidoSetup_Update(PlayState* play) { if ((play->transitionTrigger == TRANS_TRIGGER_OFF) && (play->transitionMode == TRANS_MODE_OFF)) { if ((gSaveContext.save.cutscene < 0xFFF0) && (gSaveContext.nextCutsceneIndex < 0xFFF0)) { if (!Play_InCsMode(play) || ((msgCtx->msgMode != 0) && (msgCtx->currentTextId == 0xFF))) { - if ((play->unk_1887C < 2) && (gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY) && + if ((play->bButtonAmmoPlusOne < 2) && (gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY) && (gSaveContext.magicState != MAGIC_STATE_FILL)) { if (!(gSaveContext.eventInf[1] & 0x80) && !(player->stateFlags1 & 0x20)) { if (!(play->actorCtx.flags & ACTORCTX_FLAG_1) && diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index 3cf84e917..1bab6ebdc 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -2075,7 +2075,7 @@ void Interface_UpdateButtonsPart1(PlayState* play) { if (gSaveContext.save.cutscene < 0xFFF0) { gSaveContext.hudVisibilityForceButtonAlphasByStatus = false; if ((player->stateFlags1 & PLAYER_STATE1_800000) || (gSaveContext.save.weekEventReg[8] & 1) || - (!(gSaveContext.eventInf[4] & 2) && (play->unk_1887C >= 2))) { + (!(gSaveContext.eventInf[4] & 2) && (play->bButtonAmmoPlusOne >= 2))) { // Riding Epona OR Honey & Darling minigame OR Horseback balloon minigame OR related to swamp boat // (non-minigame?) if ((player->stateFlags1 & PLAYER_STATE1_800000) && (player->currentMask == PLAYER_MASK_BLAST) && @@ -2127,7 +2127,7 @@ void Interface_UpdateButtonsPart1(PlayState* play) { } else { BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) = ITEM_BOW; - if (play->unk_1887C >= 2) { + if (play->bButtonAmmoPlusOne >= 2) { Interface_LoadItemIconImpl(play, EQUIP_SLOT_B); } else if (gSaveContext.save.inventory.items[SLOT_BOW] == ITEM_NONE) { BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) = ITEM_NONE; @@ -2154,7 +2154,7 @@ void Interface_UpdateButtonsPart1(PlayState* play) { } else if (!(gSaveContext.save.weekEventReg[0x52] & 8) && (gSaveContext.minigameStatus == MINIGAME_STATUS_ACTIVE)) { Interface_SetHudVisibility(HUD_VISIBILITY_B); - } else if (play->unk_1887C >= 2) { + } else if (play->bButtonAmmoPlusOne >= 2) { Interface_SetHudVisibility(HUD_VISIBILITY_B); } else if (gSaveContext.save.weekEventReg[8] & 1) { gSaveContext.buttonStatus[EQUIP_SLOT_C_LEFT] = BTN_DISABLED; @@ -2185,7 +2185,7 @@ void Interface_UpdateButtonsPart1(PlayState* play) { BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) = ITEM_BOW; } - if (play->unk_1887C >= 2) { + if (play->bButtonAmmoPlusOne >= 2) { Interface_LoadItemIconImpl(play, EQUIP_SLOT_B); } else if (gSaveContext.save.inventory.items[SLOT_BOW] == ITEM_NONE) { BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) = ITEM_NONE; @@ -2211,7 +2211,7 @@ void Interface_UpdateButtonsPart1(PlayState* play) { Interface_SetHudVisibility(HUD_VISIBILITY_A_B_MINIMAP); } else if (gSaveContext.minigameStatus == MINIGAME_STATUS_ACTIVE) { Interface_SetHudVisibility(HUD_VISIBILITY_B); - } else if (play->unk_1887C >= 2) { + } else if (play->bButtonAmmoPlusOne >= 2) { Interface_SetHudVisibility(HUD_VISIBILITY_B); } else if (gSaveContext.save.weekEventReg[8] & 1) { gSaveContext.buttonStatus[EQUIP_SLOT_C_LEFT] = BTN_DISABLED; @@ -2336,7 +2336,7 @@ void Interface_SetSceneRestrictions(PlayState* play) { interfaceCtx->restrictions.unk_317 = (sRestrictionFlags[i].flags3 & 0x30) >> 4; interfaceCtx->restrictions.pictographBox = (sRestrictionFlags[i].flags3 & 0x0C) >> 2; interfaceCtx->restrictions.all = (sRestrictionFlags[i].flags3 & 0x03) >> 0; - return; + break; } i++; } while (sRestrictionFlags[i].scene != 0xFF); @@ -3945,11 +3945,11 @@ void Interface_DrawItemButtons(PlayState* play) { // Empty C Button Arrows for (temp = EQUIP_SLOT_C_LEFT; temp <= EQUIP_SLOT_C_RIGHT; temp++) { if (GET_CUR_FORM_BTN_ITEM(temp) > 0xF0) { - if (temp == 1) { + if (temp == EQUIP_SLOT_C_LEFT) { gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 240, 0, interfaceCtx->cLeftAlpha); - } else if (temp == 2) { + } else if (temp == EQUIP_SLOT_C_DOWN) { gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 240, 0, interfaceCtx->cDownAlpha); - } else { + } else { // EQUIP_SLOT_C_RIGHT gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 240, 0, interfaceCtx->cRightAlpha); } OVERLAY_DISP = Gfx_DrawRectTextureIA8(OVERLAY_DISP, ((u8*)gButtonBackgroundTex + ((32 * 32) * (temp + 1))), @@ -4007,10 +4007,10 @@ void Interface_DrawAmmoCount(PlayState* play, s16 button, s16 alpha) { gDPPipeSync(OVERLAY_DISP++); - if ((button == 0) && (gSaveContext.minigameStatus == MINIGAME_STATUS_ACTIVE)) { + if ((button == EQUIP_SLOT_B) && (gSaveContext.minigameStatus == MINIGAME_STATUS_ACTIVE)) { ammo = play->interfaceCtx.minigameAmmo; - } else if ((button == 0) && (play->unk_1887C > 1)) { - ammo = play->unk_1887C - 1; + } else if ((button == EQUIP_SLOT_B) && (play->bButtonAmmoPlusOne > 1)) { + ammo = play->bButtonAmmoPlusOne - 1; } else if (((i == ITEM_BOW) && (AMMO(i) == CUR_CAPACITY(UPG_QUIVER))) || ((i == ITEM_BOMB) && (AMMO(i) == CUR_CAPACITY(UPG_BOMB_BAG))) || ((i == ITEM_STICK) && (AMMO(i) == CUR_CAPACITY(UPG_STICKS))) || @@ -4029,11 +4029,13 @@ void Interface_DrawAmmoCount(PlayState* play, s16 button, s16 alpha) { ammo -= 10; } + // Draw upper digit (tens) if (i) { OVERLAY_DISP = Gfx_DrawRectTextureIA8(OVERLAY_DISP, ((u8*)gAmmoDigit0Tex + ((8 * 8) * i)), 8, 8, D_801BFB04[button], D_801BFB0C[button], 8, 8, 1 << 10, 1 << 10); } + // Draw lower digit (ones) OVERLAY_DISP = Gfx_DrawRectTextureIA8(OVERLAY_DISP, ((u8*)gAmmoDigit0Tex + ((8 * 8) * ammo)), 8, 8, D_801BFB04[button] + 6, D_801BFB0C[button], 8, 8, 1 << 10, 1 << 10); } @@ -4053,12 +4055,12 @@ void func_80118084(PlayState* play) { if ((interfaceCtx->unk_222 == 0) && (player->stateFlags3 & PLAYER_STATE3_1000000)) { if (gSaveContext.buttonStatus[EQUIP_SLOT_B] != BTN_DISABLED) { - Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment, 0); + Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment, EQUIP_SLOT_B); gDPPipeSync(OVERLAY_DISP++); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); - Interface_DrawAmmoCount(play, 0, interfaceCtx->bAlpha); + Interface_DrawAmmoCount(play, EQUIP_SLOT_B, interfaceCtx->bAlpha); } } else if ((!interfaceCtx->bButtonDoActionActive && (interfaceCtx->unk_222 == 0)) || ((interfaceCtx->bButtonDoActionActive && @@ -4068,9 +4070,9 @@ void func_80118084(PlayState* play) { (BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) != ITEM_NUT))) { if ((player->transformation == PLAYER_FORM_FIERCE_DEITY) || (player->transformation == PLAYER_FORM_HUMAN)) { if (BUTTON_ITEM_EQUIP(CUR_FORM, EQUIP_SLOT_B) != ITEM_NONE) { - Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment, 0); + Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment, EQUIP_SLOT_B); if ((player->stateFlags1 & PLAYER_STATE1_800000) || (gSaveContext.save.weekEventReg[8] & 1) || - (play->unk_1887C >= 2)) { + (play->bButtonAmmoPlusOne >= 2)) { gDPPipeSync(OVERLAY_DISP++); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); @@ -4081,8 +4083,8 @@ void func_80118084(PlayState* play) { (gSaveContext.save.entrance != ENTRANCE(ROMANI_RANCH, 0))) && ((gSaveContext.minigameStatus != MINIGAME_STATUS_ACTIVE) || !(gSaveContext.eventInf[3] & 0x20)) && - (!(gSaveContext.save.weekEventReg[31] & 0x80) || (play->unk_1887C != 0x64))) { - Interface_DrawAmmoCount(play, 0, interfaceCtx->bAlpha); + (!(gSaveContext.save.weekEventReg[31] & 0x80) || (play->bButtonAmmoPlusOne != 100))) { + Interface_DrawAmmoCount(play, EQUIP_SLOT_B, interfaceCtx->bAlpha); } } } @@ -4133,11 +4135,11 @@ void func_80118890(PlayState* play) { if (BUTTON_ITEM_EQUIP(0, EQUIP_SLOT_C_LEFT) < 0xF0) { gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cLeftAlpha); gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); - Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x1000, 1); + Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x1000, EQUIP_SLOT_C_LEFT); gDPPipeSync(OVERLAY_DISP++); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); - Interface_DrawAmmoCount(play, 1, interfaceCtx->cLeftAlpha); + Interface_DrawAmmoCount(play, EQUIP_SLOT_C_LEFT, interfaceCtx->cLeftAlpha); } gDPPipeSync(OVERLAY_DISP++); @@ -4146,11 +4148,11 @@ void func_80118890(PlayState* play) { if (BUTTON_ITEM_EQUIP(0, EQUIP_SLOT_C_DOWN) < 0xF0) { gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cDownAlpha); gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); - Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x2000, 2); + Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x2000, EQUIP_SLOT_C_DOWN); gDPPipeSync(OVERLAY_DISP++); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); - Interface_DrawAmmoCount(play, 2, interfaceCtx->cDownAlpha); + Interface_DrawAmmoCount(play, EQUIP_SLOT_C_DOWN, interfaceCtx->cDownAlpha); } gDPPipeSync(OVERLAY_DISP++); @@ -4159,11 +4161,11 @@ void func_80118890(PlayState* play) { if (BUTTON_ITEM_EQUIP(0, EQUIP_SLOT_C_RIGHT) < 0xF0) { gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 255, 255, 255, interfaceCtx->cRightAlpha); gDPSetCombineMode(OVERLAY_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); - Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x3000, 3); + Interface_DrawItemIconTexture(play, interfaceCtx->iconItemSegment + 0x3000, EQUIP_SLOT_C_RIGHT); gDPPipeSync(OVERLAY_DISP++); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); - Interface_DrawAmmoCount(play, 3, interfaceCtx->cRightAlpha); + Interface_DrawAmmoCount(play, EQUIP_SLOT_C_RIGHT, interfaceCtx->cRightAlpha); } CLOSE_DISPS(play->state.gfxCtx); diff --git a/src/code/z_player_lib.c b/src/code/z_player_lib.c index e0a73cafb..fb39b0fe9 100644 --- a/src/code/z_player_lib.c +++ b/src/code/z_player_lib.c @@ -719,8 +719,8 @@ s32 func_80123F14(PlayState* play) { return player->stateFlags1 & PLAYER_STATE1_800000; } -s32 func_80123F2C(PlayState* play, s32 ammo) { - play->unk_1887C = ammo + 1; +s32 Player_SetBButtonAmmo(PlayState* play, s32 ammo) { + play->bButtonAmmoPlusOne = ammo + 1; return 1; } diff --git a/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c b/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c index 0efed2253..daddd5e93 100644 --- a/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c +++ b/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c @@ -131,7 +131,7 @@ s32 func_80953DA8(BgIngate* this, PlayState* play) { gSaveContext.eventInf[4] |= 2; } Camera_ChangeSetting(mainCam, CAM_SET_BOAT_CRUISE); - play->unk_1887C = 0x63; + play->bButtonAmmoPlusOne = 99; return false; } @@ -143,7 +143,7 @@ void func_80953E38(PlayState* play) { gSaveContext.eventInf[4] &= (u8)~2; } - play->unk_1887C = -1; + play->bButtonAmmoPlusOne = -1; } void func_80953EA4(BgIngate* this, PlayState* play) { diff --git a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c index d671ca4e6..64b754b1f 100644 --- a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c +++ b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c @@ -401,7 +401,7 @@ void EnSyatekiMan_Swamp_HandleNormalMessage(EnSyatekiMan* this, PlayState* play) player->actor.freezeTimer = 0; Interface_InitMinigame(play); play->interfaceCtx.minigameAmmo = 80; - func_80123F2C(play, 80); + Player_SetBButtonAmmo(play, 80); this->shootingGameState = SG_GAME_STATE_RUNNING; this->actionFunc = EnSyatekiMan_Swamp_StartGame; func_801A2BB8(NA_BGM_TIMED_MINI_GAME); @@ -760,7 +760,7 @@ void EnSyatekiMan_Town_HandleNormalMessage(EnSyatekiMan* this, PlayState* play) player->actor.freezeTimer = 0; this->flagsIndex = 0; Interface_InitMinigame(play); - func_80123F2C(play, 99); + Player_SetBButtonAmmo(play, 99); this->shootingGameState = SG_GAME_STATE_RUNNING; func_801A2BB8(NA_BGM_TIMED_MINI_GAME); this->actionFunc = EnSyatekiMan_Town_StartGame; @@ -1147,7 +1147,7 @@ void EnSyatekiMan_Swamp_EndGame(EnSyatekiMan* this, PlayState* play) { } if (this->talkWaitTimer < 5) { - play->unk_1887C = -10; + play->bButtonAmmoPlusOne = -10; } } @@ -1415,7 +1415,7 @@ void EnSyatekiMan_Town_EndGame(EnSyatekiMan* this, PlayState* play) { } if (this->talkWaitTimer < 5) { - play->unk_1887C = -10; + play->bButtonAmmoPlusOne = -10; } } diff --git a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c index 36a284188..25a5eb86c 100644 --- a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c +++ b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c @@ -1722,10 +1722,10 @@ void ObjUm_Update(Actor* thisx, PlayState* play) { } if (this->flags & OBJ_UM_FLAG_0010) { - func_80123F2C(play, 99); + Player_SetBButtonAmmo(play, 99); this->flags &= ~OBJ_UM_FLAG_0010; } else if (this->flags & OBJ_UM_FLAG_0004) { - func_80123F2C(play, -3); + Player_SetBButtonAmmo(play, -3); this->flags &= ~OBJ_UM_FLAG_0004; } diff --git a/tools/disasm/functions.txt b/tools/disasm/functions.txt index 76441bc78..cdf43ad3f 100644 --- a/tools/disasm/functions.txt +++ b/tools/disasm/functions.txt @@ -2212,7 +2212,7 @@ 0x80123DC0:("func_80123DC0",), 0x80123E90:("func_80123E90",), 0x80123F14:("func_80123F14",), - 0x80123F2C:("func_80123F2C",), + 0x80123F2C:("Player_SetBButtonAmmo",), 0x80123F48:("Player_IsBurningStickInRange",), 0x80124020:("Player_GetStrength",), 0x8012403C:("Player_GetMask",), diff --git a/tools/sizes/code_functions.csv b/tools/sizes/code_functions.csv index 2f11d532e..62ab2c9ec 100644 --- a/tools/sizes/code_functions.csv +++ b/tools/sizes/code_functions.csv @@ -1726,7 +1726,7 @@ asm/non_matchings/code/z_player_lib/func_80123DA4.s,func_80123DA4,0x80123DA4,0x7 asm/non_matchings/code/z_player_lib/func_80123DC0.s,func_80123DC0,0x80123DC0,0x34 asm/non_matchings/code/z_player_lib/func_80123E90.s,func_80123E90,0x80123E90,0x21 asm/non_matchings/code/z_player_lib/func_80123F14.s,func_80123F14,0x80123F14,0x6 -asm/non_matchings/code/z_player_lib/func_80123F2C.s,func_80123F2C,0x80123F2C,0x7 +asm/non_matchings/code/z_player_lib/Player_SetBButtonAmmo.s,Player_SetBButtonAmmo,0x80123F2C,0x7 asm/non_matchings/code/z_player_lib/Player_IsBurningStickInRange.s,Player_IsBurningStickInRange,0x80123F48,0x36 asm/non_matchings/code/z_player_lib/Player_GetStrength.s,Player_GetStrength,0x80124020,0x7 asm/non_matchings/code/z_player_lib/Player_GetMask.s,Player_GetMask,0x8012403C,0x4