diff --git a/include/collision_check.h b/include/collision_check.h index 0d2a621039..194ae1e699 100644 --- a/include/collision_check.h +++ b/include/collision_check.h @@ -81,11 +81,11 @@ typedef struct ColliderInitToActor { } ColliderInitToActor; // size = 0x08 typedef enum HitSpecialEffect { - HIT_SPECIAL_EFFECT_0, // None - HIT_SPECIAL_EFFECT_1, // Fire - HIT_SPECIAL_EFFECT_2, // Ice - HIT_SPECIAL_EFFECT_3, - HIT_SPECIAL_EFFECT_4 + HIT_SPECIAL_EFFECT_NONE, + HIT_SPECIAL_EFFECT_FIRE, + HIT_SPECIAL_EFFECT_ICE, + HIT_SPECIAL_EFFECT_ELECTRIC, + HIT_SPECIAL_EFFECT_KNOCKBACK } HitSpecialEffect; typedef struct ColliderElementDamageInfoAT { @@ -95,8 +95,8 @@ typedef struct ColliderElementDamageInfoAT { } ColliderElementDamageInfoAT; // size = 0x08 typedef enum HitBacklash { - HIT_BACKLASH_0, - HIT_BACKLASH_1 // Shock? + HIT_BACKLASH_NONE, + HIT_BACKLASH_ELECTRIC } HitBacklash; typedef struct ColliderElementDamageInfoAC { diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index 98ea5c09a9..2b7ed05de0 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -3015,8 +3015,8 @@ void CollisionCheck_InitInfo(CollisionCheckInfo* info) { void CollisionCheck_ResetDamage(CollisionCheckInfo* info) { info->damage = 0; info->damageReaction = 0; - info->atHitBacklash = HIT_BACKLASH_0; - info->acHitSpecialEffect = HIT_SPECIAL_EFFECT_0; + info->atHitBacklash = HIT_BACKLASH_NONE; + info->acHitSpecialEffect = HIT_SPECIAL_EFFECT_NONE; info->displacement.x = info->displacement.y = info->displacement.z = 0.0f; } diff --git a/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c b/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c index 964f9edc66..9c75e35f23 100644 --- a/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c +++ b/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c @@ -492,7 +492,7 @@ void BossTw_Init(Actor* thisx, PlayState* play2) { if (this->actor.params == TW_FIRE_BLAST || this->actor.params == TW_FIRE_BLAST_GROUND) { this->actionFunc = BossTw_BlastFire; - this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; + this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_FIRE; } else if (this->actor.params == TW_ICE_BLAST || this->actor.params == TW_ICE_BLAST_GROUND) { this->actionFunc = BossTw_BlastIce; } else if (this->actor.params >= TW_DEATHBALL_KOTAKE) { diff --git a/src/overlays/actors/ovl_En_Bb/z_en_bb.c b/src/overlays/actors/ovl_En_Bb/z_en_bb.c index f792e59002..4f80a28b8f 100644 --- a/src/overlays/actors/ovl_En_Bb/z_en_bb.c +++ b/src/overlays/actors/ovl_En_Bb/z_en_bb.c @@ -369,7 +369,7 @@ void EnBb_Init(Actor* thisx, PlayState* play) { thisx->naviEnemyId = NAVI_ENEMY_RED_BUBBLE; thisx->colChkInfo.damageTable = &sDamageTableRed; this->flameEnvColor.r = 255; - this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_FIRE; EnBb_SetupRed(play, this); break; case ENBB_WHITE: diff --git a/src/overlays/actors/ovl_En_Bili/z_en_bili.c b/src/overlays/actors/ovl_En_Bili/z_en_bili.c index 804f5e59c1..9c219eb8ee 100644 --- a/src/overlays/actors/ovl_En_Bili/z_en_bili.c +++ b/src/overlays/actors/ovl_En_Bili/z_en_bili.c @@ -157,7 +157,7 @@ void EnBili_Destroy(Actor* thisx, PlayState* play) { void EnBili_SetupFloatIdle(EnBili* this) { this->actor.speed = 0.7f; - this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_1; + this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_ELECTRIC; this->timer = 32; this->actor.home.pos.y = this->actor.world.pos.y; this->actor.gravity = 0.0f; @@ -253,7 +253,7 @@ void EnBili_SetupDie(EnBili* this) { */ void EnBili_SetupStunned(EnBili* this) { this->timer = 80; - this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_0; + this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_NONE; this->actor.gravity = -1.0f; this->actor.speed = 0.0f; Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 150, COLORFILTER_BUFFLAG_XLU, 80); diff --git a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c index 7cb0eece74..c45b53ddfe 100644 --- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c +++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c @@ -110,7 +110,7 @@ u32 func_809CBCBC(EnBubble* this) { ColliderElement* elem = &this->colliderJntSph.elements[0].base; elem->atDmgInfo.dmgFlags = DMG_EXPLOSIVE; - elem->atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; + elem->atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_NONE; elem->atDmgInfo.damage = 4; elem->atElemFlags = ATELEM_ON; this->actor.velocity.y = 0.0f; diff --git a/src/overlays/actors/ovl_En_Bw/z_en_bw.c b/src/overlays/actors/ovl_En_Bw/z_en_bw.c index 2aa76f7e57..8e7e20e8a5 100644 --- a/src/overlays/actors/ovl_En_Bw/z_en_bw.c +++ b/src/overlays/actors/ovl_En_Bw/z_en_bw.c @@ -786,7 +786,7 @@ void EnBw_Update(Actor* thisx, PlayState* play2) { func_8002836C(play, &thisx->world.pos, &velocity, &accel, &sp50, &sp4C, 0x3C, 0, 0x14); } if (this->unk_248 <= 0.4f) { - this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; + this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_NONE; if (((play->gameplayFrames & 1) == 0) && (this->unk_220 < 5) && (this->unk_23C == 0)) { accel.y = -0.1f; velocity.x = Rand_CenteredFloat(4.0f); @@ -806,7 +806,7 @@ void EnBw_Update(Actor* thisx, PlayState* play2) { 20.0f - (this->unk_248 * 40.0f)); } } else { - this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; + this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_FIRE; } this->unk_234 = Actor_TestFloorInDirection(thisx, play, 50.0f, thisx->world.rot.y); diff --git a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c index 486e5af3a3..5666de0818 100644 --- a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c +++ b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c @@ -134,7 +134,7 @@ static InitChainEntry sInitChain[] = { void EnFirefly_Extinguish(EnFirefly* this) { this->actor.params += 2; - this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_NONE; this->auraType = KEESE_AURA_NONE; this->onFire = false; this->actor.naviEnemyId = NAVI_ENEMY_KEESE; @@ -146,7 +146,7 @@ void EnFirefly_Ignite(EnFirefly* this) { } else { this->actor.params -= 2; } - this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_FIRE; this->auraType = KEESE_AURA_FIRE; this->onFire = true; this->actor.naviEnemyId = NAVI_ENEMY_FIRE_KEESE; @@ -190,10 +190,10 @@ void EnFirefly_Init(Actor* thisx, PlayState* play) { } if (this->actor.params == KEESE_ICE_FLY) { - this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_2; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_ICE; this->actor.naviEnemyId = NAVI_ENEMY_ICE_KEESE; } else { - this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_NONE; this->actor.naviEnemyId = NAVI_ENEMY_KEESE; } diff --git a/src/overlays/actors/ovl_En_Reeba/z_en_reeba.c b/src/overlays/actors/ovl_En_Reeba/z_en_reeba.c index 258e270949..e535d66edd 100644 --- a/src/overlays/actors/ovl_En_Reeba/z_en_reeba.c +++ b/src/overlays/actors/ovl_En_Reeba/z_en_reeba.c @@ -151,7 +151,7 @@ void EnReeba_Init(Actor* thisx, PlayState* play) { PRINTF(VT_FGCOL(YELLOW) T("☆☆☆☆☆ リーバぼす登場 ☆☆☆☆☆ %f\n", "☆☆☆☆☆ Reeba boss appears ☆☆☆☆☆ %f\n") VT_RST, this->scale); this->actor.colChkInfo.health = 20; - this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_4; + this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_KNOCKBACK; this->collider.elem.atDmgInfo.damage = 16; Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY); } diff --git a/src/overlays/actors/ovl_En_Vali/z_en_vali.c b/src/overlays/actors/ovl_En_Vali/z_en_vali.c index f6f11e51e6..bf9262099b 100644 --- a/src/overlays/actors/ovl_En_Vali/z_en_vali.c +++ b/src/overlays/actors/ovl_En_Vali/z_en_vali.c @@ -272,7 +272,7 @@ void EnVali_SetupStunned(EnVali* this) { this->timer = 80; this->actor.velocity.y = 0.0f; Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_XLU, 80); - this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_0; + this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_NONE; Actor_PlaySfx(&this->actor, NA_SE_EN_GOMA_JR_FREEZE); this->actor.velocity.y = 1.0f; this->actionFunc = EnVali_Stunned; @@ -462,7 +462,7 @@ void EnVali_Stunned(EnVali* this, PlayState* play) { } if (this->timer == 0) { - this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_1; + this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_ELECTRIC; EnVali_SetupFloatIdle(this); } } diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index 6ddb51cdca..10fd868cb2 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -4798,7 +4798,7 @@ void func_8083821C(Player* this) { } void func_80838280(Player* this) { - if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_1) { + if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_FIRE) { func_8083821C(this); } Player_PlayVoiceSfx(this, NA_SE_VO_LI_FALL_L); @@ -4915,7 +4915,7 @@ s32 func_808382DC(Player* this, PlayState* play) { } } - if (sp64 && (this->shieldQuad.elem.acHitElem->atDmgInfo.hitSpecialEffect == HIT_SPECIAL_EFFECT_1)) { + if (sp64 && (this->shieldQuad.elem.acHitElem->atDmgInfo.hitSpecialEffect == HIT_SPECIAL_EFFECT_FIRE)) { func_8083819C(this, play); } @@ -4938,11 +4938,11 @@ s32 func_808382DC(Player* this, PlayState* play) { if (this->stateFlags1 & PLAYER_STATE1_27) { sp4C = PLAYER_HIT_RESPONSE_NONE; - } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_2) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_ICE) { sp4C = PLAYER_HIT_RESPONSE_ICE_TRAP; - } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_3) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_ELECTRIC) { sp4C = PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK; - } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_4) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_KNOCKBACK) { sp4C = PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE; } else { func_80838280(this); @@ -9145,7 +9145,7 @@ s32 func_80842DF4(PlayState* play, Player* this) { if ((func_80842AC4(play, this) == 0) && (this->heldItemAction != PLAYER_IA_HAMMER)) { func_80842B7C(play, this); - if (this->actor.colChkInfo.atHitBacklash == HIT_BACKLASH_1) { + if (this->actor.colChkInfo.atHitBacklash == HIT_BACKLASH_ELECTRIC) { this->actor.colChkInfo.damage = 8; func_80837C0C(play, this, PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK, 0.0f, 0.0f, this->actor.shape.rot.y, 20); diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c index e3f7bc391b..a21b9d0924 100644 --- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c +++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c @@ -1653,7 +1653,10 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) { CLOSE_DISPS(gfxCtx, "../z_kaleido_scope_PAL.c", 1577); } -void KaleidoScope_DrawInfoPanel(PlayState* play) { +/** + * Draws the buttons for scrolling left/right, and the info plate. + */ +void KaleidoScope_DrawUIOverlay(PlayState* play) { static void* sToEquipTextTextures[] = LANGUAGE_ARRAY(gPauseToEquipJPNTex, gPauseToEquipENGTex, gPauseToEquipGERTex, gPauseToEquipFRATex); static void* sToDecideTextTextures[] = @@ -1794,7 +1797,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { pauseCtx->uiOverlayVtx[j + 1].v.cn[3] = pauseCtx->uiOverlayVtx[j + 3].v.cn[3] = pauseCtx->alpha; } - // UI_OVERLAY_QUAD_BG_RIGHT + // UI_OVERLAY_QUAD_INFO_BG_RIGHT pauseCtx->uiOverlayVtx[4].v.ob[0] = pauseCtx->uiOverlayVtx[6].v.ob[0] = pauseCtx->uiOverlayVtx[0].v.ob[0] + 72; pauseCtx->uiOverlayVtx[5].v.ob[0] = pauseCtx->uiOverlayVtx[7].v.ob[0] = pauseCtx->uiOverlayVtx[4].v.ob[0] + 72; @@ -1862,7 +1865,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 90, 100, 130, 255); gSPVertex(POLY_OPA_DISP++, &pauseCtx->uiOverlayVtx[0], 16, 0); - // Draw UI_OVERLAY_QUAD_BG_LEFT, UI_OVERLAY_QUAD_BG_RIGHT + // Draw UI_OVERLAY_QUAD_INFO_BG_LEFT, UI_OVERLAY_QUAD_INFO_BG_RIGHT gSPDisplayList(POLY_OPA_DISP++, gInfoPanelBgDL); if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE)) { @@ -3472,7 +3475,7 @@ void KaleidoScope_Draw(PlayState* play) { KaleidoScope_SetView(pauseCtx, 0.0f, 0.0f, 64.0f); if (!IS_PAUSE_STATE_GAMEOVER(pauseCtx)) { - KaleidoScope_DrawInfoPanel(play); + KaleidoScope_DrawUIOverlay(play); } } diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h index 12dffa9a2f..d19b5757a4 100644 --- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h +++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h @@ -232,16 +232,16 @@ typedef enum ItemQuad { #define UI_OVERLAY_QUAD_INFO_TEXT_HEIGHT 16 #define UI_OVERLAY_QUAD_INFO_TEXT_TEX_HEIGHT 16 -typedef enum InfoPanelQuad { - /* 0 */ UI_OVERLAY_QUAD_BG_LEFT, - /* 1 */ UI_OVERLAY_QUAD_BG_RIGHT, - /* 2 */ UI_OVERLAY_QUAD_BUTTON_LEFT, - /* 3 */ UI_OVERLAY_QUAD_BUTTON_RIGHT, - /* 4 */ UI_OVERLAY_QUAD_INFO_ICON, - /* 5 */ UI_OVERLAY_QUAD_INFO_TEXT, - /* 6 */ UI_OVERLAY_QUAD_HAVE_ALL_GS, +typedef enum UIOverlayQuad { + /* 0 */ UI_OVERLAY_QUAD_INFO_BG_LEFT, // The left half of the info plate background + /* 1 */ UI_OVERLAY_QUAD_INFO_BG_RIGHT, // The right half of the info plate background + /* 2 */ UI_OVERLAY_QUAD_BUTTON_LEFT, // The button for scrolling to the left page + /* 3 */ UI_OVERLAY_QUAD_BUTTON_RIGHT, // The button for scrolling to the right page + /* 4 */ UI_OVERLAY_QUAD_INFO_ICON, // The icon in the info plate + /* 5 */ UI_OVERLAY_QUAD_INFO_TEXT, // The text in the info plate + /* 6 */ UI_OVERLAY_QUAD_HAVE_ALL_GS, // On the overworld map page, the indicator that the selected area has been cleared of gold skulltulas /* 7 */ UI_OVERLAY_QUAD_MAX -} InfoPanelQuad; +} UIOverlayQuad; void KaleidoScope_DrawQuestStatus(struct PlayState* play, GraphicsContext* gfxCtx); s32 KaleidoScope_UpdateQuestStatusPoint(PauseContext* pauseCtx, s32 point);