From e8c59385bc4652a2d51dc0f4cbea3f7078926eb3 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 17 Jun 2025 11:23:49 +0200 Subject: [PATCH 01/11] Rename `acDmgInfo.effect` -> `hitBacklash` (#2555) * CollisionCheckInfo.atHitEffect -> atHitBacklash * ColliderElementDamageInfoAC.effect -> hitBacklash * add HIT_BACKLASH_ enum * bss * bss * bss * bss * bss * Update comments --- include/collision_check.h | 9 +++++++-- src/code/z_camera.c | 2 +- src/code/z_collision_check.c | 6 +++--- src/code/z_kaleido_scope_call.c | 2 +- src/code/z_message.c | 4 ++-- src/code/z_play.c | 4 ++-- src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c | 2 +- src/overlays/actors/ovl_En_Bili/z_en_bili.c | 4 ++-- src/overlays/actors/ovl_En_Vali/z_en_vali.c | 4 ++-- src/overlays/actors/ovl_player_actor/z_player.c | 4 ++-- 10 files changed, 23 insertions(+), 18 deletions(-) diff --git a/include/collision_check.h b/include/collision_check.h index ddcafb24e9..f44b113eea 100644 --- a/include/collision_check.h +++ b/include/collision_check.h @@ -86,9 +86,14 @@ typedef struct ColliderElementDamageInfoAT { /* 0x05 */ u8 damage; // Damage } ColliderElementDamageInfoAT; // size = 0x08 +typedef enum HitBacklash { + HIT_BACKLASH_0, + HIT_BACKLASH_1 // Shock? +} HitBacklash; + typedef struct ColliderElementDamageInfoAC { /* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC. - /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) + /* 0x04 */ u8 hitBacklash; // The hit backlash type applied to any attacker hurting this AC collider. /* 0x05 */ u8 defense; // Damage Resistance /* 0x06 */ Vec3s hitPos; // Point of contact } ColliderElementDamageInfoAC; // size = 0x0C @@ -465,7 +470,7 @@ typedef struct CollisionCheckInfo { /* 0x17 */ u8 health; // Note: some actors may use their own health variable instead of this one /* 0x18 */ u8 damage; // Amount to decrement health by /* 0x19 */ u8 damageReaction; // Stores what reaction should occur after being hit - /* 0x1A */ u8 atHitEffect; // Stores what effect should occur when AT connects with an AC + /* 0x1A */ u8 atHitBacklash; // Stores the hit backlash type received from attacking an AC collider /* 0x1B */ u8 acHitEffect; // Stores what effect should occur when AC is touched by an AT } CollisionCheckInfo; // size = 0x1C diff --git a/src/code/z_camera.c b/src/code/z_camera.c index 0dbffa669d..dde42b7922 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -3661,7 +3661,7 @@ s32 Camera_KeepOn3(Camera* camera) { } #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \ - "ique-cn:128 ntsc-1.0:79 ntsc-1.1:79 ntsc-1.2:79 pal-1.0:79 pal-1.1:79" + "ique-cn:128 ntsc-1.0:76 ntsc-1.1:76 ntsc-1.2:76 pal-1.0:76 pal-1.1:76" s32 Camera_KeepOn4(Camera* camera) { static Vec3f sAtTarget; diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index a3b62a06e0..7f8c27634c 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -194,7 +194,7 @@ s32 Collider_DestroyElementDamageInfoAC(PlayState* play, ColliderElementDamageIn s32 Collider_SetElementDamageInfoAC(PlayState* play, ColliderElementDamageInfoAC* acDmgInfo, ColliderElementDamageInfoACInit* init) { acDmgInfo->dmgFlags = init->dmgFlags; - acDmgInfo->effect = init->effect; + acDmgInfo->hitBacklash = init->effect; acDmgInfo->defense = init->defense; return true; } @@ -1726,7 +1726,7 @@ s32 CollisionCheck_SetATvsAC(PlayState* play, Collider* atCol, ColliderElement* atElem->atHitElem = acElem; atElem->atElemFlags |= ATELEM_HIT; if (atCol->actor != NULL) { - atCol->actor->colChkInfo.atHitEffect = acElem->acDmgInfo.effect; + atCol->actor->colChkInfo.atHitBacklash = acElem->acDmgInfo.hitBacklash; } } acCol->acFlags |= AC_HIT; @@ -3015,7 +3015,7 @@ void CollisionCheck_InitInfo(CollisionCheckInfo* info) { void CollisionCheck_ResetDamage(CollisionCheckInfo* info) { info->damage = 0; info->damageReaction = 0; - info->atHitEffect = 0; + info->atHitBacklash = HIT_BACKLASH_0; info->acHitEffect = 0; info->displacement.x = info->displacement.y = info->displacement.z = 0.0f; } diff --git a/src/code/z_kaleido_scope_call.c b/src/code/z_kaleido_scope_call.c index 73d3b20dbf..ca7637214d 100644 --- a/src/code/z_kaleido_scope_call.c +++ b/src/code/z_kaleido_scope_call.c @@ -1,5 +1,5 @@ #pragma increment_block_number "gc-eu:80 gc-eu-mq:80 gc-jp:80 gc-jp-ce:80 gc-jp-mq:80 gc-us:80 gc-us-mq:80 ique-cn:64" \ - "ntsc-1.0:96 ntsc-1.1:96 ntsc-1.2:96 pal-1.0:96 pal-1.1:96" + "ntsc-1.0:80 ntsc-1.1:80 ntsc-1.2:80 pal-1.0:80 pal-1.1:80" #include "libu64/debug.h" #include "kaleido_manager.h" diff --git a/src/code/z_message.c b/src/code/z_message.c index eb9f0e8219..7ebe57ae76 100644 --- a/src/code/z_message.c +++ b/src/code/z_message.c @@ -26,8 +26,8 @@ #include "assets/textures/parameter_static/parameter_static.h" -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:32" \ - "ntsc-1.1:32 ntsc-1.2:32 pal-1.0:0 pal-1.1:0" +#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:16" \ + "ntsc-1.1:16 ntsc-1.2:16 pal-1.0:0 pal-1.1:0" #if !PLATFORM_IQUE #define MSG_BUF_DECODED (msgCtx->msgBufDecoded) diff --git a/src/code/z_play.c b/src/code/z_play.c index 222e130340..cff1d3970f 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -47,8 +47,8 @@ #include "save.h" #include "vis.h" -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:224" \ - "ntsc-1.0:240 ntsc-1.1:240 ntsc-1.2:240 pal-1.0:240 pal-1.1:240" +#pragma increment_block_number "gc-eu:224 gc-eu-mq:224 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \ + "ique-cn:224 ntsc-1.0:240 ntsc-1.1:240 ntsc-1.2:240 pal-1.0:240 pal-1.1:240" TransitionTile gTransitionTile; s32 gTransitionTileState; 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 9576ae3910..e592fd6be7 100644 --- a/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c +++ b/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c @@ -27,7 +27,7 @@ #include "assets/objects/object_tw/object_tw.h" #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \ - "ique-cn:128 ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" + "ique-cn:0 ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" #define FLAGS \ (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \ 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 4f7ef8cde7..804f5e59c1 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.effect = 1; // Shock? + this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_1; 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.effect = 0; + this->collider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_0; 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_Vali/z_en_vali.c b/src/overlays/actors/ovl_En_Vali/z_en_vali.c index e2b1d53054..f6f11e51e6 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.effect = 0; + this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_0; 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.effect = 1; // Shock? + this->bodyCollider.elem.acDmgInfo.hitBacklash = HIT_BACKLASH_1; 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 8d3cde9216..1ebf2bd7dc 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -369,7 +369,7 @@ static s32 D_80858AA0; // TODO: There's probably a way to match BSS ordering with less padding by spreading the variables out and moving // data around. It would be easier if we had more options for controlling BSS ordering in debug. -#pragma increment_block_number "gc-eu:224 gc-eu-mq:224 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \ +#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \ "ique-cn:192 ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192" static s32 sSavedCurrentMask; @@ -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.atHitEffect == 1) { + if (this->actor.colChkInfo.atHitBacklash == HIT_BACKLASH_1) { this->actor.colChkInfo.damage = 8; func_80837C0C(play, this, PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK, 0.0f, 0.0f, this->actor.shape.rot.y, 20); From bc5839a32cce3fd3b6100d56e1d8965b2b365ee2 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 17 Jun 2025 14:01:13 +0200 Subject: [PATCH 02/11] fixup rename hitBacklash (#2638) --- include/collision_check.h | 2 +- src/code/z_collision_check.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/collision_check.h b/include/collision_check.h index f44b113eea..c897da6863 100644 --- a/include/collision_check.h +++ b/include/collision_check.h @@ -100,7 +100,7 @@ typedef struct ColliderElementDamageInfoAC { typedef struct ColliderElementDamageInfoACInit { /* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC. - /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) + /* 0x04 */ u8 hitBacklash; // The hit backlash type applied to any attacker hurting this AC collider. /* 0x05 */ u8 defense; // Damage Resistance } ColliderElementDamageInfoACInit; // size = 0x08 diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index 7f8c27634c..771368e357 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -194,7 +194,7 @@ s32 Collider_DestroyElementDamageInfoAC(PlayState* play, ColliderElementDamageIn s32 Collider_SetElementDamageInfoAC(PlayState* play, ColliderElementDamageInfoAC* acDmgInfo, ColliderElementDamageInfoACInit* init) { acDmgInfo->dmgFlags = init->dmgFlags; - acDmgInfo->hitBacklash = init->effect; + acDmgInfo->hitBacklash = init->hitBacklash; acDmgInfo->defense = init->defense; return true; } From b11fdab792f1e7c4b71cfa7568963fad1c7d742d Mon Sep 17 00:00:00 2001 From: Leonid Kapitonov Date: Tue, 17 Jun 2025 15:54:52 +0200 Subject: [PATCH 03/11] Document `Save.cutsceneIndex` and adjacent data / code (#2286) * introduce `enum CutsceneIndex` as a first step * crudely rename `enum CutsceneIndex` entries * run `check_format.py ...` separetely so that it doesn't clutter previous commit. still, allowing `clangd LSP` to run format-on-save yields inconsistent results for me with the project's tooling, especially for header files * apply a draft PR suggestion Co-authored-by: mzxrules * rename `CS_INDEX_*` with PR suggestions and some additional observations reverified with > `check_format.py ...` > `make ...` additionally: - current clang-format lacks a rule for trailing commas - compiler says about them `cfe: Warning 624` * improve `CS_INDEX_*` naming, rem `ENTRANCE` suffix https://github.com/zeldaret/oot/pull/2286#discussion_r1829165205 reverified with > `check_format.py ...` > `make ...` * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/4/console hmm, i do need this automation locally to * apply a PR suggestion https://github.com/zeldaret/oot/pull/2286#discussion_r1829219841 * remove redundant comments, fix the header comment and add a comment chunk from https://github.com/zeldaret/oot/pull/2286#discussion_r1829108940 * rename the flag for freeing `nextCutsceneIndex` * rename the flag for automatic `sceneLayer` calc it gets assigned to the `nextCutsceneIndex`, so `CS_INDEX_NONE` name was misleading * use explicit scene layer names instead of numbers * ok, now the last two `CS_INDEX_*` are less unknown the purpose of `CS_INDEX_BARRIER` is not quite clear still * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/14/console * run `fix_bss` locally `ntsc-1.2` refused to comply though * revert all local to the branch bss shifts * ugh, use defines instead of an enum probably size of enum entries doesn't match well? originally these were just numbers. besides, not like it's a real enumeration from zero to a value or some bit flags * still, add a BSS pragma for `z_demo.c` * apply review changes * factor out a cutscene layer formula * give scene layers names throughout code * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/32/console * tweak `CS_INDEX` descriptions * apply PR review suggestions * rename "auto" -> "default" * apply PR review suggestions https://github.com/zeldaret/oot/pull/2286#discussion_r1868693980 essentially reverts 106cb1021be88f745ee303838c11c7d7cbf9c79d, except for 2 generic `z_scene.c` lines * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/77/console * Apply suggestions from code review Co-authored-by: Dragorn421 Co-authored-by: mzxrules * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/175/console * Move CS_INDEX_* macros to z64save.h, with the definition of gSaveContext.save.cutsceneIndex * `#define CS_INDEX_D 0xFFFD` and co. Co-authored-by: cadmic * add comment on CS_INDEX_D * review * CS_INDEX_NONE is back * bss * expand comment about 0xFFFD * fix comment about 0xFFFF usage * review --------- Co-authored-by: mzxrules Co-authored-by: Dragorn421 Co-authored-by: cadmic --- include/cutscene.h | 1 - include/save.h | 48 +++++ src/code/db_camera.c | 2 +- src/code/z_common_data.c | 2 +- src/code/z_demo.c | 174 +++++++++--------- src/code/z_horse.c | 20 +- src/code/z_kaleido_setup.c | 6 +- src/code/z_kankyo.c | 2 +- src/code/z_message.c | 2 +- src/code/z_parameter.c | 8 +- src/code/z_play.c | 16 +- src/code/z_scene.c | 14 +- src/code/z_sram.c | 4 +- .../actors/ovl_Bg_Ingate/z_bg_ingate.c | 2 +- .../ovl_Bg_Relay_Objects/z_bg_relay_objects.c | 2 +- .../z_bg_spot00_hanebasi.c | 2 +- .../actors/ovl_Boss_Ganon2/z_boss_ganon2.c | 2 +- .../actors/ovl_Door_Warp1/z_door_warp1.c | 38 ++-- src/overlays/actors/ovl_En_Du/z_en_du.c | 2 +- src/overlays/actors/ovl_En_Ge1/z_en_ge1.c | 2 +- src/overlays/actors/ovl_En_Horse/z_en_horse.c | 2 +- .../z_en_horse_game_check.c | 8 +- .../z_en_horse_link_child.c | 2 +- src/overlays/actors/ovl_En_In/z_en_in.c | 2 +- src/overlays/actors/ovl_En_Ma1/z_en_ma1.c | 2 +- src/overlays/actors/ovl_En_Ma3/z_en_ma3.c | 2 +- src/overlays/actors/ovl_En_Sa/z_en_sa.c | 2 +- src/overlays/actors/ovl_En_Zl4/z_en_zl4.c | 2 +- .../actors/ovl_Obj_Dekujr/z_obj_dekujr.c | 4 +- .../actors/ovl_player_actor/z_player.c | 4 +- .../ovl_file_choose/z_file_choose.c | 2 +- .../gamestates/ovl_opening/z_opening.c | 5 +- src/overlays/gamestates/ovl_select/z_select.c | 134 +++++++------- 33 files changed, 287 insertions(+), 233 deletions(-) diff --git a/include/cutscene.h b/include/cutscene.h index e3bf4a1c84..fb96ccbbf4 100644 --- a/include/cutscene.h +++ b/include/cutscene.h @@ -353,7 +353,6 @@ typedef union CsCmdCam { s32 _words[2]; } CsCmdCam; // size = 0x8 - typedef union CsCmdMisc { struct { /* 0x00 */ u16 type; diff --git a/include/save.h b/include/save.h index f3d3397dce..9687db287a 100644 --- a/include/save.h +++ b/include/save.h @@ -401,6 +401,7 @@ typedef enum SceneLayer { } SceneLayer; #define IS_CUTSCENE_LAYER (gSaveContext.sceneLayer >= SCENE_LAYER_CUTSCENE_FIRST) +#define GET_CUTSCENE_LAYER(index) (SCENE_LAYER_CUTSCENE_FIRST + (index & 0xF)) typedef enum LinkAge { /* 0 */ LINK_AGE_ADULT, @@ -408,6 +409,53 @@ typedef enum LinkAge { } LinkAge; +// Usage in Map Select suggests that `gSaveContext.save.cutsceneIndex` was, +// at one point in development, a variable related to the time. +// This is further supported by debug strings showing that its original name was "day_time". +// These macros exist for the rare cases in the codebase where `cutsceneIndex` is treated as a time value. +// In practice, both values do not lead to a cutscene being played. +// See `CS_INDEX_NONE` below for the more common usage of value 0x0000. +#define CS_INDEX_NIGHT 0x0000 +#define CS_INDEX_DAY 0x8000 + +// Indicates that no scripted cutscene is playing (or should be played). +// While this value overlaps with `CS_INDEX_NIGHT` defined above, it is not related to the time. +// This is the more common interpretation of this value, as much of the codebase uses 0x0000 to mean "no cutscene" +// except for Map Select. +#define CS_INDEX_NONE 0x0000 + +// Values 0xFFF0-0xFFFF indicate that a cutscene script should be played. +// If the value of `nextCutsceneIndex` is 0xFFF0-0xFFFF on scene load, +// `Play_Init` will copy the value to `gSaveContext.cutsceneIndex`, load a +// corresponding scene layer and start the scripted cutscene in the scene layer +// (except for the value 0xFFFD, which is special-cased to do nothing in `Play_Init`). +// It loads layer 4 for 0xFFF0, layer 5 for 0xFFF1, and so on. +// +// 0xFFFD is used by the cutscene system to indicate a scripted cutscene has been triggered. +// This is why `Play_Init` ignores that value, so that if the cutscene is interrupted +// by a new play state load (e.g. if the player falls out of bounds), it does not then +// try to wrongly load a cutscene layer. +#define CS_INDEX_0 0xFFF0 +#define CS_INDEX_1 0xFFF1 +#define CS_INDEX_2 0xFFF2 +#define CS_INDEX_3 0xFFF3 +#define CS_INDEX_4 0xFFF4 +#define CS_INDEX_5 0xFFF5 +#define CS_INDEX_6 0xFFF6 +#define CS_INDEX_7 0xFFF7 +#define CS_INDEX_8 0xFFF8 +#define CS_INDEX_9 0xFFF9 +#define CS_INDEX_A 0xFFFA +#define CS_INDEX_B 0xFFFB +#define CS_INDEX_C 0xFFFC +#define CS_INDEX_D 0xFFFD // does not load a cutscene scene layer (see above) +#define CS_INDEX_E 0xFFFE +#define CS_INDEX_F 0xFFFF + +// Sentinel value for `nextCutsceneIndex` to indicate that no cutscene should be played next. +#define NEXT_CS_INDEX_NONE 0xFFEF + + #define LINK_IS_ADULT (gSaveContext.save.linkAge == LINK_AGE_ADULT) #define LINK_IS_CHILD (gSaveContext.save.linkAge == LINK_AGE_CHILD) diff --git a/src/code/db_camera.c b/src/code/db_camera.c index 3e770316c2..02389cfe30 100644 --- a/src/code/db_camera.c +++ b/src/code/db_camera.c @@ -2167,7 +2167,7 @@ s32 DebugCamera_UpdateDemoControl(DebugCam* debugCam, Camera* cam) { if (CHECK_BTN_ALL(sPlay->state.input[1].press.button, BTN_CRIGHT)) { gUseCutsceneCam = false; - gSaveContext.save.cutsceneIndex = 0xFFFD; + gSaveContext.save.cutsceneIndex = CS_INDEX_D; gSaveContext.cutsceneTrigger = 1; sDebugCamAnim.curFrame = 0.0f; sDebugCamAnim.keyframe = 0; diff --git a/src/code/z_common_data.c b/src/code/z_common_data.c index 1dfd4d2419..eeb620e842 100644 --- a/src/code/z_common_data.c +++ b/src/code/z_common_data.c @@ -25,7 +25,7 @@ void SaveContext_Init(void) { gSaveContext.seqId = (u8)NA_BGM_DISABLED; gSaveContext.natureAmbienceId = NATURE_ID_DISABLED; gSaveContext.forcedSeqId = NA_BGM_GENERAL_SFX; - gSaveContext.nextCutsceneIndex = 0xFFEF; + gSaveContext.nextCutsceneIndex = NEXT_CS_INDEX_NONE; gSaveContext.cutsceneTrigger = 0; gSaveContext.chamberCutsceneNum = CHAMBER_CS_FOREST; gSaveContext.nextDayTime = NEXT_TIME_NONE; diff --git a/src/code/z_demo.c b/src/code/z_demo.c index d6b34d54c8..358edd32e6 100644 --- a/src/code/z_demo.c +++ b/src/code/z_demo.c @@ -202,7 +202,7 @@ void Cutscene_StopManual(PlayState* play, CutsceneContext* csCtx) { } void Cutscene_UpdateManual(PlayState* play, CutsceneContext* csCtx) { - if (gSaveContext.save.cutsceneIndex < 0xFFF0) { + if (gSaveContext.save.cutsceneIndex < CS_INDEX_0) { sManualCutsceneHandlers[csCtx->state](play, csCtx); } } @@ -214,14 +214,14 @@ void Cutscene_UpdateScripted(PlayState* play, CutsceneContext* csCtx) { if (CHECK_BTN_ALL(input->press.button, BTN_DLEFT) && (csCtx->state == CS_STATE_IDLE) && IS_CUTSCENE_LAYER) { gUseCutsceneCam = false; - gSaveContext.save.cutsceneIndex = 0xFFFD; + gSaveContext.save.cutsceneIndex = CS_INDEX_D; gSaveContext.cutsceneTrigger = 1; } if (CHECK_BTN_ALL(input->press.button, BTN_DUP) && (csCtx->state == CS_STATE_IDLE) && IS_CUTSCENE_LAYER && !gDebugCamEnabled) { gUseCutsceneCam = true; - gSaveContext.save.cutsceneIndex = 0xFFFD; + gSaveContext.save.cutsceneIndex = CS_INDEX_D; gSaveContext.cutsceneTrigger = 1; } } @@ -233,11 +233,11 @@ void Cutscene_UpdateScripted(PlayState* play, CutsceneContext* csCtx) { if ((gSaveContext.cutsceneTrigger != 0) && (csCtx->state == CS_STATE_IDLE)) { PRINTF(T("\nデモ開始要求 発令!", "\nDemo start request issued!")); - gSaveContext.save.cutsceneIndex = 0xFFFD; + gSaveContext.save.cutsceneIndex = CS_INDEX_D; gSaveContext.cutsceneTrigger = 1; } - if (gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { Cutscene_SetupScripted(play, csCtx); sScriptedCutsceneHandlers[csCtx->state](play, csCtx); } @@ -616,54 +616,54 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti gSaveContext.forceRisingButtonAlphas = true; } - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; switch (cmd->destination) { case CS_DEST_CUTSCENE_MAP_GANON_HORSE: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_CUTSCENE_MAP_THREE_GODDESSES: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_WHITE; break; case CS_DEST_GERUDO_VALLEY_DIN_PART_1: play->nextEntranceIndex = ENTR_GERUDO_VALLEY_0; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_WHITE; break; case CS_DEST_DEATH_MOUNTAIN_TRAIL_NAYRU: play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_WHITE; break; case CS_DEST_KOKIRI_FOREST_FARORE: play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_WHITE; break; case CS_DEST_CUTSCENE_MAP_TRIFORCE_CREATION: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_WHITE; break; case CS_DEST_KOKIRI_FOREST_RECEIVE_KOKIRI_EMERALD: play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_INSTANT; break; @@ -676,7 +676,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti SET_EVENTCHKINF(EVENTCHKINF_45); play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionType = TRANS_TYPE_INSTANT; } else { if (!IS_CUTSCENE_LAYER) { @@ -696,21 +696,21 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_GERUDO_VALLEY_DIN_PART_2: play->nextEntranceIndex = ENTR_GERUDO_VALLEY_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FILL_BROWN; break; case CS_DEST_LINKS_HOUSE_INTRO: play->nextEntranceIndex = ENTR_LINKS_HOUSE_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_KOKIRI_FOREST_INTRO: play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -737,21 +737,21 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_TEMPLE_OF_TIME_KOKIRI_EMERALD_RESTORED: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_TEMPLE_OF_TIME_GORON_RUBY_RESTORED: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF5; + gSaveContext.save.cutsceneIndex = CS_INDEX_5; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_TEMPLE_OF_TIME_ZORAS_SAPPHIRE_RESTORED: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF6; + gSaveContext.save.cutsceneIndex = CS_INDEX_6; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -769,13 +769,13 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; - gSaveContext.save.cutsceneIndex = 0x8000; + gSaveContext.save.cutsceneIndex = CS_INDEX_DAY; break; case CS_DEST_LAKE_HYLIA_WATER_RESTORED: play->nextEntranceIndex = ENTR_LAKE_HYLIA_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -783,14 +783,14 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti Item_Give(play, ITEM_SONG_REQUIEM); play->nextEntranceIndex = ENTR_DESERT_COLOSSUS_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_CUTSCENE_MAP_GANONDORF_DEFEATED_CREDITS: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF8; + gSaveContext.save.cutsceneIndex = CS_INDEX_8; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -804,28 +804,28 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_ADULT; play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_TEMPLE_OF_TIME_KOKIRI_EMERALD_RESTORED_2: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_TEMPLE_OF_TIME_GORON_RUBY_RESTORED_2: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF5; + gSaveContext.save.cutsceneIndex = CS_INDEX_5; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_TEMPLE_OF_TIME_ZORAS_SAPPHIRE_RESTORED_2: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF6; + gSaveContext.save.cutsceneIndex = CS_INDEX_6; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -855,7 +855,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionType = TRANS_TYPE_INSTANT; break; @@ -868,28 +868,28 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_CUTSCENE_MAP_GANONDORF_FROM_MASTER_SWORD: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionType = TRANS_TYPE_FADE_WHITE; break; case CS_DEST_HYRULE_FIELD_INTRO_DREAM: play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; case CS_DEST_CUTSCENE_MAP_SHEIKAH_LEGEND: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; case CS_DEST_TEMPLE_OF_TIME_ZELDA_REVEAL: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF9; + gSaveContext.save.cutsceneIndex = CS_INDEX_9; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; @@ -897,7 +897,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_ADULT; play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFFA; + gSaveContext.save.cutsceneIndex = CS_INDEX_A; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; @@ -910,7 +910,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_KAKARIKO_VILLAGE_DRAIN_WELL: play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; @@ -940,7 +940,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti SET_EVENTCHKINF(EVENTCHKINF_54); play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; break; @@ -965,14 +965,14 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_HYRULE_FIELD_FROM_ZELDAS_COURTYARD: play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; - gSaveContext.save.cutsceneIndex = 0xFFF8; + gSaveContext.save.cutsceneIndex = CS_INDEX_8; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_CIRCLE(TCA_NORMAL, TCC_WHITE, TCS_SLOW); break; case CS_DEST_TEMPLE_OF_TIME_SONG_OF_TIME: play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; - gSaveContext.save.cutsceneIndex = 0xFFF7; + gSaveContext.save.cutsceneIndex = CS_INDEX_7; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_INSTANT; break; @@ -990,56 +990,56 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti #endif play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_GERUDO_VALLEY_0; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_GERUDO_FORTRESS_CREDITS: play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_0; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_KAKARIKO_VILLAGE_CREDITS: play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_DEATH_MOUNTAIN_TRAIL_CREDITS_PART_1: play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_GORON_CITY_CREDITS: play->nextEntranceIndex = ENTR_GORON_CITY_0; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_LAKE_HYLIA_CREDITS: play->nextEntranceIndex = ENTR_LAKE_HYLIA_0; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_ZORAS_FOUNTAIN_CREDITS: play->nextEntranceIndex = ENTR_ZORAS_FOUNTAIN_0; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_ZORAS_DOMAIN_CREDITS: play->nextEntranceIndex = ENTR_ZORAS_DOMAIN_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1047,21 +1047,21 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_KOKIRI_FOREST_CREDITS_PART_1: play->linkAgeOnLoad = LINK_AGE_ADULT; play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF6; + gSaveContext.save.cutsceneIndex = CS_INDEX_6; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_KOKIRI_FOREST_CREDITS_PART_2: play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF7; + gSaveContext.save.cutsceneIndex = CS_INDEX_7; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_HYRULE_FIELD_CREDITS: play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; - gSaveContext.save.cutsceneIndex = 0xFFF5; + gSaveContext.save.cutsceneIndex = CS_INDEX_5; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1069,7 +1069,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_LON_LON_RANCH_CREDITS_PART_1_ALT: play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1089,7 +1089,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_CUTSCENE_MAP_DEKU_SPROUT_PART_2: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF5; + gSaveContext.save.cutsceneIndex = CS_INDEX_5; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1102,7 +1102,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_DEATH_MOUNTAIN_TRAIL_CREDITS_PART_2: play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionType = TRANS_TYPE_FADE_BLACK; gSaveContext.nextTransitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1115,14 +1115,14 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_ZELDAS_COURTYARD_CREDITS: play->nextEntranceIndex = ENTR_CASTLE_COURTYARD_ZELDA_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_BLACK; gSaveContext.nextTransitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1131,14 +1131,14 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_LON_LON_RANCH_CREDITS_PART_2: play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionType = TRANS_TYPE_FADE_WHITE; gSaveContext.nextTransitionType = TRANS_TYPE_FADE_WHITE; break; @@ -1147,7 +1147,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF4; + gSaveContext.save.cutsceneIndex = CS_INDEX_4; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1155,7 +1155,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_ADULT; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF5; + gSaveContext.save.cutsceneIndex = CS_INDEX_5; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1163,14 +1163,14 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->linkAgeOnLoad = LINK_AGE_CHILD; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF6; + gSaveContext.save.cutsceneIndex = CS_INDEX_6; play->transitionType = TRANS_TYPE_FADE_BLACK; break; case CS_DEST_LON_LON_RANCH_CREDITS_PART_5: play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF7; + gSaveContext.save.cutsceneIndex = CS_INDEX_7; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1210,7 +1210,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti GET_EVENTCHKINF(EVENTCHKINF_4A)) { play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionType = TRANS_TYPE_FADE_BLACK; } else { switch (gSaveContext.sceneLayer) { @@ -1229,7 +1229,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case 10: play->nextEntranceIndex = ENTR_LAKE_HYLIA_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_FADE_WHITE; break; } @@ -1240,7 +1240,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti if (CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) { play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_WHITE_FAST; } else { SET_EVENTCHKINF(EVENTCHKINF_C8); @@ -1255,7 +1255,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti if (CHECK_QUEST_ITEM(QUEST_MEDALLION_SPIRIT)) { play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_WHITE_FAST; } else { play->nextEntranceIndex = ENTR_GRAVEYARD_8; @@ -1281,7 +1281,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_KOKIRI_FOREST_FROM_CHAMBER_OF_SAGES: play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.save.cutsceneIndex = 0xFFF8; + gSaveContext.save.cutsceneIndex = CS_INDEX_8; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; gSaveContext.nextTransitionType = TRANS_TYPE_FADE_WHITE; @@ -1302,7 +1302,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_HYRULE_FIELD_TITLE_SCREEN: play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF3; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1311,7 +1311,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case TITLE_DEMO_SPIRIT_TEMPLE: play->nextEntranceIndex = ENTR_SPIRIT_TEMPLE_BOSS_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF2; + gSaveContext.save.cutsceneIndex = CS_INDEX_2; play->transitionType = TRANS_TYPE_FADE_BLACK; sTitleDemoDestination++; break; @@ -1319,7 +1319,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case TITLE_DEMO_DEATH_MOUNTAIN_CRATER: play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_CRATER_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_BLACK; sTitleDemoDestination++; break; @@ -1327,7 +1327,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case TITLE_DEMO_GANONDORF_HORSE: play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF6; + gSaveContext.save.cutsceneIndex = CS_INDEX_6; play->transitionType = TRANS_TYPE_FADE_BLACK; sTitleDemoDestination = TITLE_DEMO_SPIRIT_TEMPLE; break; @@ -1337,7 +1337,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti case CS_DEST_GRAVEYARD_SUNS_SONG_PART_2: play->nextEntranceIndex = ENTR_GRAVEYARD_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_FADE_BLACK; break; @@ -1390,10 +1390,16 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti play->csCtx.script = SEGMENTED_TO_VIRTUAL(gTowerBarrierCs); play->csCtx.curFrame = 0; gSaveContext.cutsceneTrigger = 1; - gSaveContext.save.cutsceneIndex = 0xFFFF; + // Force cutsceneIndex to CS_INDEX_F so that CS_STATE_STOP is handled by the "scripted" system's + // CutsceneHandler_StopScript. + // Otherwise, because cutsceneIndex is set to 0 above, CS_STATE_STOP would be handled by the + // "manual" cutscene system's CutsceneHandler_StopManual, which does not terminate the cutscene + // camera, resulting in a softlock. + gSaveContext.save.cutsceneIndex = CS_INDEX_F; csCtx->state = CS_STATE_STOP; } else { - gSaveContext.save.cutsceneIndex = 0xFFFF; + // Same as above + gSaveContext.save.cutsceneIndex = CS_INDEX_F; csCtx->state = CS_STATE_STOP; } break; @@ -1430,7 +1436,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti Audio_SetSfxBanksMute(0x6F); play->linkAgeOnLoad = LINK_AGE_ADULT; play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; - gSaveContext.save.cutsceneIndex = 0xFFF7; + gSaveContext.save.cutsceneIndex = CS_INDEX_7; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; break; @@ -2237,7 +2243,7 @@ void Cutscene_ProcessScript(PlayState* play, CutsceneContext* csCtx, u8* script) } void CutsceneHandler_RunScript(PlayState* play, CutsceneContext* csCtx) { - if (gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { #if DEBUG_FEATURES if (BREG(0) != 0) { Gfx* displayList; @@ -2290,7 +2296,7 @@ void CutsceneHandler_StopScript(PlayState* play, CutsceneContext* csCtx) { PRINTF(T("\n\n\n\n\nやっぱりここかいな", "\n\n\n\n\nThis is it after all")); - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; gSaveContext.gameMode = GAMEMODE_NORMAL; if (gUseCutsceneCam) { @@ -2316,10 +2322,10 @@ void Cutscene_SetupScripted(PlayState* play, CutsceneContext* csCtx) { u8 i; if ((gSaveContext.cutsceneTrigger != 0) && (csCtx->state == CS_STATE_IDLE) && !Player_InCsMode(play)) { - gSaveContext.save.cutsceneIndex = 0xFFFD; + gSaveContext.save.cutsceneIndex = CS_INDEX_D; } - if ((gSaveContext.save.cutsceneIndex >= 0xFFF0) && (csCtx->state == CS_STATE_IDLE)) { + if ((gSaveContext.save.cutsceneIndex >= CS_INDEX_0) && (csCtx->state == CS_STATE_IDLE)) { CutsceneFlags_Unset(play, 0); sCurTextId = 0; @@ -2401,7 +2407,7 @@ void Cutscene_HandleEntranceTriggers(PlayState* play) { if ((gSaveContext.save.entranceIndex == entranceCutscene->entrance) && (!Flags_GetEventChkInf(entranceCutscene->flag) || (entranceCutscene->flag == EVENTCHKINF_EPONA_OBTAINED)) && - (gSaveContext.save.cutsceneIndex < 0xFFF0) && ((u8)gSaveContext.save.linkAge == requiredAge) && + (gSaveContext.save.cutsceneIndex < CS_INDEX_0) && ((u8)gSaveContext.save.linkAge == requiredAge) && (gSaveContext.respawnFlag <= 0)) { Flags_SetEventChkInf(entranceCutscene->flag); Cutscene_SetScript(play, entranceCutscene->script); @@ -2416,32 +2422,32 @@ void Cutscene_HandleConditionalTriggers(PlayState* play) { PRINTF("\ngame_info.mode=[%d] restart_flag", ((void)0, gSaveContext.respawnFlag)); if ((gSaveContext.gameMode == GAMEMODE_NORMAL) && (gSaveContext.respawnFlag <= 0) && - (gSaveContext.save.cutsceneIndex < 0xFFF0)) { + (gSaveContext.save.cutsceneIndex < CS_INDEX_0)) { if ((gSaveContext.save.entranceIndex == ENTR_DESERT_COLOSSUS_1) && !Flags_GetEventChkInf(EVENTCHKINF_AC)) { Flags_SetEventChkInf(EVENTCHKINF_AC); gSaveContext.save.entranceIndex = ENTR_DESERT_COLOSSUS_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; } else if ((gSaveContext.save.entranceIndex == ENTR_KAKARIKO_VILLAGE_0) && LINK_IS_ADULT && GET_EVENTCHKINF(EVENTCHKINF_48) && GET_EVENTCHKINF(EVENTCHKINF_49) && GET_EVENTCHKINF(EVENTCHKINF_4A) && !Flags_GetEventChkInf(EVENTCHKINF_AA)) { Flags_SetEventChkInf(EVENTCHKINF_AA); - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; } else if ((gSaveContext.save.entranceIndex == ENTR_LOST_WOODS_9) && !Flags_GetEventChkInf(EVENTCHKINF_C1)) { Flags_SetEventChkInf(EVENTCHKINF_C1); Item_Give(play, ITEM_OCARINA_FAIRY); gSaveContext.save.entranceIndex = ENTR_LOST_WOODS_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; } else if (CHECK_QUEST_ITEM(QUEST_MEDALLION_SPIRIT) && CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW) && LINK_IS_ADULT && !Flags_GetEventChkInf(EVENTCHKINF_C4) && (gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_TEMPLE_OF_TIME)) { Flags_SetEventChkInf(EVENTCHKINF_C4); gSaveContext.save.entranceIndex = ENTR_TEMPLE_OF_TIME_0; - gSaveContext.save.cutsceneIndex = 0xFFF8; + gSaveContext.save.cutsceneIndex = CS_INDEX_8; } else if (!Flags_GetEventChkInf(EVENTCHKINF_C7) && (gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_GANON_BOSS)) { Flags_SetEventChkInf(EVENTCHKINF_C7); gSaveContext.save.entranceIndex = ENTR_GANON_BOSS_0; - gSaveContext.save.cutsceneIndex = 0xFFF0; + gSaveContext.save.cutsceneIndex = CS_INDEX_0; } } } diff --git a/src/code/z_horse.c b/src/code/z_horse.c index ab556c3d13..93eec4bd31 100644 --- a/src/code/z_horse.c +++ b/src/code/z_horse.c @@ -164,15 +164,15 @@ typedef struct HorseCutsceneSpawn { void Horse_SetupInCutscene(PlayState* play, Player* player) { static HorseCutsceneSpawn horseSpawns[] = { - { SCENE_GERUDOS_FORTRESS, 0xFFF0, { 3600, 1413, 360 }, 0x8001, HORSE_PTYPE_HORSEBACK_ARCHERY }, - { SCENE_LON_LON_RANCH, 0xFFF0, { -250, 1, -1580 }, 0x4000, HORSE_PTYPE_6 }, // Horse Race - { SCENE_LON_LON_RANCH, 0xFFF1, { 0, 0, 0 }, 0x0000, HORSE_PTYPE_5 }, // Learned Epona's Song - { SCENE_LON_LON_RANCH, 0xFFF5, { 0, 0, 0 }, 0x0000, HORSE_PTYPE_7 }, // Credits - { SCENE_HYRULE_FIELD, 0xFFF3, { -2961, 313, 7700 }, 0x0000, HORSE_PTYPE_7 }, // Title Screen - { SCENE_HYRULE_FIELD, 0xFFF4, { -1900, 313, 7015 }, 0x0000, HORSE_PTYPE_7 }, - { SCENE_HYRULE_FIELD, 0xFFF5, { -4043, 313, 6933 }, 0x0000, HORSE_PTYPE_7 }, // Credits - { SCENE_HYRULE_FIELD, 0xFFF6, { -4043, 313, 6933 }, 0x0000, HORSE_PTYPE_7 }, // Unused. Hopping Lon Lon - // Ranch North Gate + { SCENE_GERUDOS_FORTRESS, CS_INDEX_0, { 3600, 1413, 360 }, 0x8001, HORSE_PTYPE_HORSEBACK_ARCHERY }, + { SCENE_LON_LON_RANCH, CS_INDEX_0, { -250, 1, -1580 }, 0x4000, HORSE_PTYPE_6 }, // Horse Race + { SCENE_LON_LON_RANCH, CS_INDEX_1, { 0, 0, 0 }, 0x0000, HORSE_PTYPE_5 }, // Learned Epona's Song + { SCENE_LON_LON_RANCH, CS_INDEX_5, { 0, 0, 0 }, 0x0000, HORSE_PTYPE_7 }, // Credits + { SCENE_HYRULE_FIELD, CS_INDEX_3, { -2961, 313, 7700 }, 0x0000, HORSE_PTYPE_7 }, // Title Screen + { SCENE_HYRULE_FIELD, CS_INDEX_4, { -1900, 313, 7015 }, 0x0000, HORSE_PTYPE_7 }, + { SCENE_HYRULE_FIELD, CS_INDEX_5, { -4043, 313, 6933 }, 0x0000, HORSE_PTYPE_7 }, // Credits + { SCENE_HYRULE_FIELD, CS_INDEX_6, { -4043, 313, 6933 }, 0x0000, HORSE_PTYPE_7 }, // Unused. Hopping Lon Lon + // Ranch North Gate }; s32 pad; s32 i; @@ -235,7 +235,7 @@ void Horse_SetupInCutscene(PlayState* play, Player* player) { (((void)0, gSaveContext.save.cutsceneIndex) == horseSpawns[i].cutsceneIndex)) { if (horseSpawns[i].type == HORSE_PTYPE_7) { if ((play->sceneId == SCENE_LON_LON_RANCH) && - (((void)0, gSaveContext.save.cutsceneIndex) == 0xFFF1)) { + (((void)0, gSaveContext.save.cutsceneIndex) == CS_INDEX_1)) { horseSpawns[i].pos.x = player->actor.world.pos.x; horseSpawns[i].pos.y = player->actor.world.pos.y; horseSpawns[i].pos.z = player->actor.world.pos.z; diff --git a/src/code/z_kaleido_setup.c b/src/code/z_kaleido_setup.c index b3ef531649..6b865df453 100644 --- a/src/code/z_kaleido_setup.c +++ b/src/code/z_kaleido_setup.c @@ -72,9 +72,9 @@ void KaleidoSetup_Update(PlayState* play) { if (!IS_PAUSED(pauseCtx) && play->gameOverCtx.state == GAMEOVER_INACTIVE && play->transitionTrigger == TRANS_TRIGGER_OFF && play->transitionMode == TRANS_MODE_OFF && - gSaveContext.save.cutsceneIndex < 0xFFF0 && gSaveContext.nextCutsceneIndex < 0xFFF0 && !Play_InCsMode(play) && - play->shootingGalleryStatus <= 1 && gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY && - gSaveContext.magicState != MAGIC_STATE_FILL && + gSaveContext.save.cutsceneIndex < CS_INDEX_0 && gSaveContext.nextCutsceneIndex < CS_INDEX_0 && + !Play_InCsMode(play) && play->shootingGalleryStatus <= 1 && + gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY && gSaveContext.magicState != MAGIC_STATE_FILL && (play->sceneId != SCENE_BOMBCHU_BOWLING_ALLEY || !Flags_GetSwitch(play, 0x38))) { if (CHECK_BTN_ALL(input->cur.button, BTN_L) && CHECK_BTN_ALL(input->press.button, BTN_CUP)) { diff --git a/src/code/z_kankyo.c b/src/code/z_kankyo.c index 83699c82f3..5da43b4c22 100644 --- a/src/code/z_kankyo.c +++ b/src/code/z_kankyo.c @@ -2642,7 +2642,7 @@ void Environment_StopStormNatureAmbience(PlayState* play) { void Environment_WarpSongLeave(PlayState* play) { gWeatherMode = WEATHER_MODE_CLEAR; - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; gSaveContext.respawnFlag = -3; play->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_RETURN].entranceIndex; play->transitionTrigger = TRANS_TRIGGER_START; diff --git a/src/code/z_message.c b/src/code/z_message.c index 7ebe57ae76..09647912cb 100644 --- a/src/code/z_message.c +++ b/src/code/z_message.c @@ -4379,7 +4379,7 @@ void Message_Update(PlayState* play) { if (msgCtx->textId != 0x2061 && msgCtx->textId != 0x2025 && msgCtx->textId != 0x208C && ((msgCtx->textId < 0x88D || msgCtx->textId >= 0x893) || msgCtx->choiceIndex != 0) && - (msgCtx->textId != 0x3055 && gSaveContext.save.cutsceneIndex < 0xFFF0)) { + (msgCtx->textId != 0x3055 && gSaveContext.save.cutsceneIndex < CS_INDEX_0)) { PRINTF("=== day_time=%x ", ((void)0, gSaveContext.save.cutsceneIndex)); if (play->activeCamId == CAM_ID_MAIN) { if (gSaveContext.prevHudVisibilityMode == HUD_VISIBILITY_NO_CHANGE || diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index fa8ec09c55..1709031cfe 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -670,8 +670,8 @@ void func_80083108(PlayState* play) { s16 i; s16 sp28 = false; - if ((gSaveContext.save.cutsceneIndex < 0xFFF0) || - ((play->sceneId == SCENE_LON_LON_RANCH) && (gSaveContext.save.cutsceneIndex == 0xFFF0))) { + if ((gSaveContext.save.cutsceneIndex < CS_INDEX_0) || + ((play->sceneId == SCENE_LON_LON_RANCH) && (gSaveContext.save.cutsceneIndex == CS_INDEX_0))) { gSaveContext.forceRisingButtonAlphas = false; if ((player->stateFlags1 & PLAYER_STATE1_23) || (play->shootingGalleryStatus > 1) || @@ -3554,7 +3554,7 @@ void Interface_Draw(PlayState* play) { (Message_GetState(&play->msgCtx) == TEXT_STATE_EVENT)) { // Trade quest timer reached 0 sSubTimerStateTimer = 40; - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; gSaveContext.subTimerState = SUBTIMER_STATE_OFF; @@ -3884,7 +3884,7 @@ void Interface_Draw(PlayState* play) { (play->sceneId != SCENE_INSIDE_GANONS_CASTLE_COLLAPSE))) { sSubTimerStateTimer = 40; gSaveContext.subTimerState = SUBTIMER_STATE_RESPAWN; - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; Message_StartTextbox(play, 0x71B0, NULL); Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_8); } else { diff --git a/src/code/z_play.c b/src/code/z_play.c index cff1d3970f..8d73e9e565 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -93,7 +93,7 @@ void Play_SetViewpoint(PlayState* this, s16 viewpoint) { this->viewpoint = viewpoint; - if ((R_SCENE_CAM_TYPE != SCENE_CAM_TYPE_FIXED_SHOP_VIEWPOINT) && (gSaveContext.save.cutsceneIndex < 0xFFF0)) { + if ((R_SCENE_CAM_TYPE != SCENE_CAM_TYPE_FIXED_SHOP_VIEWPOINT) && (gSaveContext.save.cutsceneIndex < CS_INDEX_0)) { // Play a sfx when the player toggles the camera SFX_PLAY_CENTERED((viewpoint == VIEWPOINT_LOCKED) ? NA_SE_SY_CAMERA_ZOOM_DOWN : NA_SE_SY_CAMERA_ZOOM_UP); } @@ -350,13 +350,13 @@ void Play_Init(GameState* thisx) { AnimTaskQueue_Reset(&this->animTaskQueue); Cutscene_InitContext(this, &this->csCtx); - if (gSaveContext.nextCutsceneIndex != 0xFFEF) { + if (gSaveContext.nextCutsceneIndex != NEXT_CS_INDEX_NONE) { gSaveContext.save.cutsceneIndex = gSaveContext.nextCutsceneIndex; - gSaveContext.nextCutsceneIndex = 0xFFEF; + gSaveContext.nextCutsceneIndex = NEXT_CS_INDEX_NONE; } - if (gSaveContext.save.cutsceneIndex == 0xFFFD) { - gSaveContext.save.cutsceneIndex = 0; + if (gSaveContext.save.cutsceneIndex == CS_INDEX_D) { + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; } if (gSaveContext.nextDayTime != NEXT_TIME_NONE) { @@ -372,10 +372,10 @@ void Play_Init(GameState* thisx) { Cutscene_HandleConditionalTriggers(this); - if (gSaveContext.gameMode != GAMEMODE_NORMAL || gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.gameMode != GAMEMODE_NORMAL || gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { gSaveContext.nayrusLoveTimer = 0; Magic_Reset(this); - gSaveContext.sceneLayer = SCENE_LAYER_CUTSCENE_FIRST + (gSaveContext.save.cutsceneIndex & 0xF); + gSaveContext.sceneLayer = GET_CUTSCENE_LAYER(gSaveContext.save.cutsceneIndex); } else if (!LINK_IS_ADULT && IS_DAY) { gSaveContext.sceneLayer = SCENE_LAYER_CHILD_DAY; } else if (!LINK_IS_ADULT && !IS_DAY) { @@ -625,7 +625,7 @@ void Play_Update(PlayState* this) { Interface_ChangeHudVisibilityMode(HUD_VISIBILITY_NOTHING); - if (gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { sceneLayer = SCENE_LAYER_CUTSCENE_FIRST + (gSaveContext.save.cutsceneIndex & 0xF); } diff --git a/src/code/z_scene.c b/src/code/z_scene.c index 65503d0ccb..a3182a2f88 100644 --- a/src/code/z_scene.c +++ b/src/code/z_scene.c @@ -396,7 +396,7 @@ BAD_RETURN(s32) Scene_CommandTimeSettings(PlayState* play, SceneCmd* cmd) { play->envCtx.sunPos.y = (Math_CosS(((void)0, gSaveContext.save.dayTime) - CLOCK_TIME(12, 0)) * 120.0f) * 25.0f; play->envCtx.sunPos.z = (Math_CosS(((void)0, gSaveContext.save.dayTime) - CLOCK_TIME(12, 0)) * 20.0f) * 25.0f; - if (((play->envCtx.sceneTimeSpeed == 0) && (gSaveContext.save.cutsceneIndex < 0xFFF0)) || + if (((play->envCtx.sceneTimeSpeed == 0) && (gSaveContext.save.cutsceneIndex < CS_INDEX_0)) || (gSaveContext.save.entranceIndex == ENTR_LAKE_HYLIA_8)) { #if OOT_VERSION >= PAL_1_0 gSaveContext.skyboxTime = ((void)0, gSaveContext.save.dayTime); @@ -459,7 +459,7 @@ BAD_RETURN(s32) Scene_CommandAlternateHeaderList(PlayState* play, SceneCmd* cmd) PRINTF("\n[ZU]sceneset time =[%X]", ((void)0, gSaveContext.save.cutsceneIndex)); PRINTF("\n[ZU]sceneset counter=[%X]", ((void)0, gSaveContext.sceneLayer)); - if (gSaveContext.sceneLayer != 0) { + if (gSaveContext.sceneLayer != SCENE_LAYER_CHILD_DAY) { SceneCmd* altHeader = ((SceneCmd**)SEGMENTED_TO_VIRTUAL(cmd->altHeaders.data))[gSaveContext.sceneLayer - 1]; if (altHeader != NULL) { @@ -502,7 +502,7 @@ BAD_RETURN(s32) Scene_CommandMiscSettings(PlayState* play, SceneCmd* cmd) { if (((play->sceneId >= SCENE_HYRULE_FIELD) && (play->sceneId <= SCENE_OUTSIDE_GANONS_CASTLE)) || ((play->sceneId >= SCENE_MARKET_ENTRANCE_DAY) && (play->sceneId <= SCENE_TEMPLE_OF_TIME_EXTERIOR_RUINS))) { - if (gSaveContext.save.cutsceneIndex < 0xFFF0) { + if (gSaveContext.save.cutsceneIndex < CS_INDEX_0) { gSaveContext.save.info.worldMapAreaData |= gBitFlags[((void)0, gSaveContext.worldMapArea)]; PRINTF("000 area_arrival=%x (%d)\n", gSaveContext.save.info.worldMapAreaData, ((void)0, gSaveContext.worldMapArea)); @@ -515,15 +515,15 @@ void Scene_SetTransitionForNextEntrance(PlayState* play) { if (!IS_DAY) { if (!LINK_IS_ADULT) { - entranceIndex = play->nextEntranceIndex + 1; + entranceIndex = play->nextEntranceIndex + SCENE_LAYER_CHILD_NIGHT; } else { - entranceIndex = play->nextEntranceIndex + 3; + entranceIndex = play->nextEntranceIndex + SCENE_LAYER_ADULT_NIGHT; } } else { if (!LINK_IS_ADULT) { - entranceIndex = play->nextEntranceIndex; + entranceIndex = play->nextEntranceIndex + SCENE_LAYER_CHILD_DAY; } else { - entranceIndex = play->nextEntranceIndex + 2; + entranceIndex = play->nextEntranceIndex + SCENE_LAYER_ADULT_DAY; } } diff --git a/src/code/z_sram.c b/src/code/z_sram.c index 17bfb5baa4..c1a514a94b 100644 --- a/src/code/z_sram.c +++ b/src/code/z_sram.c @@ -859,11 +859,11 @@ void Sram_InitSave(FileSelectState* fileSelect, SramContext* sramCtx) { gSaveContext.save.entranceIndex = ENTR_LINKS_HOUSE_0; gSaveContext.save.linkAge = LINK_AGE_CHILD; gSaveContext.save.dayTime = CLOCK_TIME(10, 0); - gSaveContext.save.cutsceneIndex = 0xFFF1; + gSaveContext.save.cutsceneIndex = CS_INDEX_1; #if DEBUG_FEATURES if (fileSelect->buttonIndex == 0) { - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; } #endif 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 61ea3e0e4c..1b45e42254 100644 --- a/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c +++ b/src/overlays/actors/ovl_Bg_Ingate/z_bg_ingate.c @@ -53,7 +53,7 @@ void BgInGate_Init(Actor* thisx, PlayState* play) { this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, &this->dyna.actor, colHeader); if ((play->sceneId != SCENE_LON_LON_RANCH || !LINK_IS_ADULT) || - (GET_EVENTCHKINF(EVENTCHKINF_EPONA_OBTAINED) && (gSaveContext.save.cutsceneIndex != 0xFFF0))) { + (GET_EVENTCHKINF(EVENTCHKINF_EPONA_OBTAINED) && (gSaveContext.save.cutsceneIndex != CS_INDEX_0))) { Actor_Kill(&this->dyna.actor); return; } diff --git a/src/overlays/actors/ovl_Bg_Relay_Objects/z_bg_relay_objects.c b/src/overlays/actors/ovl_Bg_Relay_Objects/z_bg_relay_objects.c index 52f858a343..5058440e47 100644 --- a/src/overlays/actors/ovl_Bg_Relay_Objects/z_bg_relay_objects.c +++ b/src/overlays/actors/ovl_Bg_Relay_Objects/z_bg_relay_objects.c @@ -119,7 +119,7 @@ void BgRelayObjects_Destroy(Actor* thisx, PlayState* play) { BgRelayObjects* this = (BgRelayObjects*)thisx; DynaPoly_DeleteBgActor(play, &play->colCtx.dyna, this->dyna.bgId); - if ((this->dyna.actor.params == WINDMILL_ROTATING_GEAR) && (gSaveContext.save.cutsceneIndex < 0xFFF0)) { + if ((this->dyna.actor.params == WINDMILL_ROTATING_GEAR) && (gSaveContext.save.cutsceneIndex < CS_INDEX_0)) { CLEAR_EVENTCHKINF(EVENTCHKINF_65); } } diff --git a/src/overlays/actors/ovl_Bg_Spot00_Hanebasi/z_bg_spot00_hanebasi.c b/src/overlays/actors/ovl_Bg_Spot00_Hanebasi/z_bg_spot00_hanebasi.c index 8b6ab5ac96..6bb72a6921 100644 --- a/src/overlays/actors/ovl_Bg_Spot00_Hanebasi/z_bg_spot00_hanebasi.c +++ b/src/overlays/actors/ovl_Bg_Spot00_Hanebasi/z_bg_spot00_hanebasi.c @@ -231,7 +231,7 @@ void BgSpot00Hanebasi_Update(Actor* thisx, PlayState* play) { this->actionFunc = BgSpot00Hanebasi_DoNothing; Player_SetCsActionWithHaltedActors(play, &player->actor, PLAYER_CSACTION_8); play->nextEntranceIndex = ENTR_HYRULE_FIELD_0; - gSaveContext.nextCutsceneIndex = 0xFFF1; + gSaveContext.nextCutsceneIndex = CS_INDEX_1; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_BLACK_FAST; } else if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 3000.0f, 0x7530)) { diff --git a/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c b/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c index cafa822410..631faf93b8 100644 --- a/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c +++ b/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c @@ -2144,7 +2144,7 @@ void func_8090120C(BossGanon2* this, PlayState* play) { FALLTHROUGH; case 20: play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; - gSaveContext.nextCutsceneIndex = 0xFFF2; + gSaveContext.nextCutsceneIndex = CS_INDEX_2; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; play->linkAgeOnLoad = LINK_AGE_CHILD; diff --git a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c index 93d7c0d9cc..f7c9e270c6 100644 --- a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c +++ b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c @@ -508,7 +508,7 @@ void DoorWarp1_ChildWarpOut(DoorWarp1* this, PlayState* play) { Math_SmoothStepToF(&this->lightRayAlpha, 0.0f, 0.2f, 6.0f, 0.01f); this->warpTimer++; - if (sWarpTimerTarget < this->warpTimer && gSaveContext.nextCutsceneIndex == 0xFFEF) { + if (sWarpTimerTarget < this->warpTimer && gSaveContext.nextCutsceneIndex == NEXT_CS_INDEX_NONE) { PRINTF(T("\n\n\nじかんがきたからおーしまい fade_direction=[%d]", "\n\n\nThe time has come, so it's over. fade_direction=[%d]"), play->transitionTrigger, TRANS_TRIGGER_START); @@ -518,10 +518,10 @@ void DoorWarp1_ChildWarpOut(DoorWarp1* this, PlayState* play) { Flags_SetEventChkInf(EVENTCHKINF_25); Item_Give(play, ITEM_GORON_RUBY); play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0; - gSaveContext.nextCutsceneIndex = 0xFFF1; + gSaveContext.nextCutsceneIndex = CS_INDEX_1; } else { play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_5; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_DEKU_TREE_BOSS) { if (!Flags_GetEventChkInf(EVENTCHKINF_07)) { @@ -529,14 +529,14 @@ void DoorWarp1_ChildWarpOut(DoorWarp1* this, PlayState* play) { Flags_SetEventChkInf(EVENTCHKINF_09); Item_Give(play, ITEM_KOKIRI_EMERALD); play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0; - gSaveContext.nextCutsceneIndex = 0xFFF1; + gSaveContext.nextCutsceneIndex = CS_INDEX_1; } else { play->nextEntranceIndex = ENTR_KOKIRI_FOREST_11; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_JABU_JABU_BOSS) { play->nextEntranceIndex = ENTR_ZORAS_FOUNTAIN_0; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } PRINTF(T("\n\n\nおわりおわり", "\n\n\nThe end The end")); play->transitionTrigger = TRANS_TRIGGER_START; @@ -620,11 +620,11 @@ void DoorWarp1_RutoWarpOut(DoorWarp1* this, PlayState* play) { Math_SmoothStepToF(&this->lightRayAlpha, 0.0f, 0.2f, 6.0f, 0.01f); this->warpTimer++; - if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == 0xFFEF) { + if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == NEXT_CS_INDEX_NONE) { SET_EVENTCHKINF(EVENTCHKINF_37); Item_Give(play, ITEM_ZORA_SAPPHIRE); play->nextEntranceIndex = ENTR_ZORAS_FOUNTAIN_0; - gSaveContext.nextCutsceneIndex = 0xFFF0; + gSaveContext.nextCutsceneIndex = CS_INDEX_0; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE_SLOW; } @@ -719,13 +719,13 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) { } this->warpTimer++; - if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == 0xFFEF) { + if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == NEXT_CS_INDEX_NONE) { if (play->sceneId == SCENE_FOREST_TEMPLE_BOSS) { if (!GET_EVENTCHKINF(EVENTCHKINF_48)) { SET_EVENTCHKINF(EVENTCHKINF_48); Item_Give(play, ITEM_MEDALLION_FOREST); play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; gSaveContext.chamberCutsceneNum = CHAMBER_CS_FOREST; } else { if (!LINK_IS_ADULT) { @@ -733,28 +733,28 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) { } else { play->nextEntranceIndex = ENTR_SACRED_FOREST_MEADOW_3; } - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_FIRE_TEMPLE_BOSS) { if (!GET_EVENTCHKINF(EVENTCHKINF_49)) { SET_EVENTCHKINF(EVENTCHKINF_49); Item_Give(play, ITEM_MEDALLION_FIRE); play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0; - gSaveContext.nextCutsceneIndex = 0xFFF3; + gSaveContext.nextCutsceneIndex = CS_INDEX_3; } else { if (!LINK_IS_ADULT) { play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_CRATER_4; } else { play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_CRATER_5; } - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_WATER_TEMPLE_BOSS) { if (!GET_EVENTCHKINF(EVENTCHKINF_4A)) { SET_EVENTCHKINF(EVENTCHKINF_4A); Item_Give(play, ITEM_MEDALLION_WATER); play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; gSaveContext.chamberCutsceneNum = CHAMBER_CS_WATER; } else { if (!LINK_IS_ADULT) { @@ -762,13 +762,13 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) { } else { play->nextEntranceIndex = ENTR_LAKE_HYLIA_9; } - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_SPIRIT_TEMPLE_BOSS) { if (!CHECK_QUEST_ITEM(QUEST_MEDALLION_SPIRIT)) { Item_Give(play, ITEM_MEDALLION_SPIRIT); play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; gSaveContext.chamberCutsceneNum = CHAMBER_CS_SPIRIT; } else { if (!LINK_IS_ADULT) { @@ -776,13 +776,13 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) { } else { play->nextEntranceIndex = ENTR_DESERT_COLOSSUS_8; } - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } else if (play->sceneId == SCENE_SHADOW_TEMPLE_BOSS) { if (!CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) { Item_Give(play, ITEM_MEDALLION_SHADOW); play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0; - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; gSaveContext.chamberCutsceneNum = CHAMBER_CS_SHADOW; } else { if (!LINK_IS_ADULT) { @@ -790,7 +790,7 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) { } else { play->nextEntranceIndex = ENTR_GRAVEYARD_8; } - gSaveContext.nextCutsceneIndex = 0; + gSaveContext.nextCutsceneIndex = CS_INDEX_NONE; } } play->transitionTrigger = TRANS_TRIGGER_START; diff --git a/src/overlays/actors/ovl_En_Du/z_en_du.c b/src/overlays/actors/ovl_En_Du/z_en_du.c index 6a22304ca7..b3ef9d7520 100644 --- a/src/overlays/actors/ovl_En_Du/z_en_du.c +++ b/src/overlays/actors/ovl_En_Du/z_en_du.c @@ -307,7 +307,7 @@ void EnDu_Init(Actor* thisx, PlayState* play) { this->actor.attentionRangeType = ATTENTION_RANGE_1; this->interactInfo.talkState = NPC_TALK_STATE_IDLE; - if (gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { play->csCtx.script = SEGMENTED_TO_VIRTUAL(gGoronCityDaruniaDancingCs); gSaveContext.cutsceneTrigger = 1; EnDu_SetupAction(this, func_809FE890); diff --git a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c index 01ebeccfc3..cd5253402e 100644 --- a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c +++ b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c @@ -593,7 +593,7 @@ void EnGe1_BeginGame_Archery(EnGe1* this, PlayState* play) { } else { Rupees_ChangeBy(-20); play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_0; - gSaveContext.nextCutsceneIndex = 0xFFF0; + gSaveContext.nextCutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_BLACK, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; SET_EVENTINF(EVENTINF_HORSES_08); diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c index 5a2bf1506e..b3b1110afd 100644 --- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c +++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c @@ -2535,7 +2535,7 @@ void EnHorse_UpdateHorsebackArchery(EnHorse* this, PlayState* play) { EnHorse_UpdateHbaRaceInfo(this, play, &sHbaInfo); if ((this->hbaFlags & 1) || (this->hbaTimer >= 46)) { if ((isFanfarePlaying != true) && (gSaveContext.minigameState != 3)) { - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_16; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_CIRCLE(TCA_NORMAL, TCC_BLACK, TCS_FAST); diff --git a/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c b/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c index db12829566..f8b128a894 100644 --- a/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c +++ b/src/overlays/actors/ovl_En_Horse_Game_Check/z_en_horse_game_check.c @@ -121,7 +121,7 @@ s32 EnHorseGameCheck_DestroyIngoRace(EnHorseGameCheckBase* base, PlayState* play } void EnHorseGameCheck_FinishIngoRace(EnHorseGameCheckIngoRace* this, PlayState* play) { - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; if (this->result == INGO_RACE_PLAYER_WIN) { play->nextEntranceIndex = ENTR_LON_LON_RANCH_7; if (GET_EVENTINF(EVENTINF_INGO_RACE_SECOND_RACE)) { @@ -305,20 +305,20 @@ s32 EnHorseGameCheck_DestroyMalonRace(EnHorseGameCheckBase* base, PlayState* pla void EnHorseGameCheck_FinishMalonRace(EnHorseGameCheckMalonRace* this, PlayState* play) { if ((this->result == MALONRACE_SUCCESS) || (this->result == MALONRACE_TIME_UP)) { - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; play->nextEntranceIndex = ENTR_LON_LON_RANCH_7; play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_WHITE, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; } else if (this->result == MALONRACE_FAILURE) { gSaveContext.timerSeconds = 240; gSaveContext.timerState = TIMER_STATE_UP_FREEZE; - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; play->nextEntranceIndex = ENTR_LON_LON_RANCH_7; play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_WHITE, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; } else { PRINTF(T("En_HGC_Spot20_Ta_end():対応せず\n", "En_HGC_Spot20_Ta_end(): not supported\n")); - gSaveContext.save.cutsceneIndex = 0; + gSaveContext.save.cutsceneIndex = CS_INDEX_NONE; play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_WHITE, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; diff --git a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c index 09d7ad03bc..7f15c2facb 100644 --- a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c +++ b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c @@ -370,7 +370,7 @@ void func_80A6A068(EnHorseLinkChild* this, PlayState* play) { } if ((GET_EVENTCHKINF(EVENTCHKINF_CAN_LEARN_EPONAS_SONG) && R_EPONAS_SONG_PLAYED) || - ((play->sceneId == SCENE_LON_LON_RANCH) && (gSaveContext.save.cutsceneIndex == 0xFFF1))) { + ((play->sceneId == SCENE_LON_LON_RANCH) && (gSaveContext.save.cutsceneIndex == CS_INDEX_1))) { func_80A6A4DC(this); } else { this->unk_2A0 = GET_EVENTCHKINF(EVENTCHKINF_CAN_LEARN_EPONAS_SONG); diff --git a/src/overlays/actors/ovl_En_In/z_en_in.c b/src/overlays/actors/ovl_En_In/z_en_in.c index d12f92ec13..1c5bdbf739 100644 --- a/src/overlays/actors/ovl_En_In/z_en_in.c +++ b/src/overlays/actors/ovl_En_In/z_en_in.c @@ -457,7 +457,7 @@ void func_80A79BAC(EnIn* this, PlayState* play, s32 index, u32 transitionType) { play->nextEntranceIndex = entrances[index]; if (index == 2) { - gSaveContext.nextCutsceneIndex = 0xFFF0; + gSaveContext.nextCutsceneIndex = CS_INDEX_0; } play->transitionType = transitionType; play->transitionTrigger = TRANS_TRIGGER_START; diff --git a/src/overlays/actors/ovl_En_Ma1/z_en_ma1.c b/src/overlays/actors/ovl_En_Ma1/z_en_ma1.c index 1709fb037c..cacb968ebe 100644 --- a/src/overlays/actors/ovl_En_Ma1/z_en_ma1.c +++ b/src/overlays/actors/ovl_En_Ma1/z_en_ma1.c @@ -394,7 +394,7 @@ void EnMa1_WaitForPlayback(EnMa1* this, PlayState* play) { GET_PLAYER(play)->stateFlags2 |= PLAYER_STATE2_23; if (play->msgCtx.ocarinaMode == OCARINA_MODE_03) { play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; - gSaveContext.nextCutsceneIndex = 0xFFF1; + gSaveContext.nextCutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_CIRCLE(TCA_WAVE, TCC_WHITE, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; this->actionFunc = EnMa1_DoNothing; diff --git a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c index a685945a2a..2a23f0d175 100644 --- a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c +++ b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c @@ -133,7 +133,7 @@ s16 EnMa3_UpdateTalkState(PlayState* play, Actor* thisx) { case TEXT_STATE_EVENT: if (Message_ShouldAdvance(play)) { play->nextEntranceIndex = ENTR_LON_LON_RANCH_0; - gSaveContext.nextCutsceneIndex = 0xFFF0; + gSaveContext.nextCutsceneIndex = CS_INDEX_0; play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_BLACK, TCS_FAST); play->transitionTrigger = TRANS_TRIGGER_START; SET_EVENTINF(EVENTINF_HORSES_0A); diff --git a/src/overlays/actors/ovl_En_Sa/z_en_sa.c b/src/overlays/actors/ovl_En_Sa/z_en_sa.c index 2cf677d007..e0ada94990 100644 --- a/src/overlays/actors/ovl_En_Sa/z_en_sa.c +++ b/src/overlays/actors/ovl_En_Sa/z_en_sa.c @@ -393,7 +393,7 @@ void EnSa_ChangeAnim(EnSa* this, s32 index) { } s32 func_80AF5DFC(EnSa* this, PlayState* play) { - if (gSaveContext.save.cutsceneIndex >= 0xFFF0 && gSaveContext.save.cutsceneIndex != 0xFFFD) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0 && gSaveContext.save.cutsceneIndex != CS_INDEX_D) { if (play->sceneId == SCENE_KOKIRI_FOREST) { return 4; } diff --git a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c index be729698f4..1820626285 100644 --- a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c +++ b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c @@ -796,7 +796,7 @@ s32 EnZl4_CsAskName(EnZl4* this, PlayState* play) { if (this->talkTimer2 == 130) { play->msgCtx.msgMode = MSGMODE_PAUSED; play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0; - gSaveContext.nextCutsceneIndex = 0xFFF7; + gSaveContext.nextCutsceneIndex = CS_INDEX_7; play->transitionTrigger = TRANS_TRIGGER_START; play->transitionType = TRANS_TYPE_FADE_WHITE; } diff --git a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c index 3484ffcefa..4b14301498 100644 --- a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c +++ b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c @@ -52,7 +52,7 @@ void ObjDekujr_Init(Actor* thisx, PlayState* play) { ObjDekujr* this = (ObjDekujr*)thisx; s32 pad; - if (gSaveContext.save.cutsceneIndex < 0xFFF0) { + if (gSaveContext.save.cutsceneIndex < CS_INDEX_0) { if (!LINK_IS_ADULT) { Actor_Kill(thisx); return; @@ -148,7 +148,7 @@ void ObjDekujr_Update(Actor* thisx, PlayState* play) { Collider_UpdateCylinder(&this->actor, &this->collider); CollisionCheck_SetOC(play, &play->colChkCtx, &this->collider.base); - if ((gSaveContext.save.cutsceneIndex >= 0xFFF0) && (this->unk_19B == 0)) { + if ((gSaveContext.save.cutsceneIndex >= CS_INDEX_0) && (this->unk_19B == 0)) { this->unk_19C = 0; this->unk_19B = 1; } diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index 1ebf2bd7dc..5ca29489ce 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -10799,7 +10799,7 @@ void Player_Init(Actor* thisx, PlayState* play2) { startMode = PLAYER_GET_START_MODE(thisx); if ((startMode == PLAYER_START_MODE_WARP_SONG) || (startMode == PLAYER_START_MODE_FARORES_WIND)) { - if (gSaveContext.save.cutsceneIndex >= 0xFFF0) { + if (gSaveContext.save.cutsceneIndex >= CS_INDEX_0) { startMode = PLAYER_START_MODE_IDLE; } } @@ -13722,7 +13722,7 @@ s32 func_8084DFF4(PlayState* play, Player* this) { if (this->getItemId == GI_SILVER_GAUNTLETS) { play->nextEntranceIndex = ENTR_DESERT_COLOSSUS_0; play->transitionTrigger = TRANS_TRIGGER_START; - gSaveContext.nextCutsceneIndex = 0xFFF1; + gSaveContext.nextCutsceneIndex = CS_INDEX_1; play->transitionType = TRANS_TYPE_SANDSTORM_END; this->stateFlags1 &= ~PLAYER_STATE1_29; Player_TryCsAction(play, NULL, PLAYER_CSACTION_8); diff --git a/src/overlays/gamestates/ovl_file_choose/z_file_choose.c b/src/overlays/gamestates/ovl_file_choose/z_file_choose.c index 534c498178..2e6dc9afde 100644 --- a/src/overlays/gamestates/ovl_file_choose/z_file_choose.c +++ b/src/overlays/gamestates/ovl_file_choose/z_file_choose.c @@ -1905,7 +1905,7 @@ void FileSelect_LoadGame(GameState* thisx) { gSaveContext.forcedSeqId = NA_BGM_GENERAL_SFX; gSaveContext.skyboxTime = CLOCK_TIME(0, 0); gSaveContext.nextTransitionType = TRANS_NEXT_TYPE_DEFAULT; - gSaveContext.nextCutsceneIndex = 0xFFEF; + gSaveContext.nextCutsceneIndex = NEXT_CS_INDEX_NONE; gSaveContext.cutsceneTrigger = 0; gSaveContext.chamberCutsceneNum = CHAMBER_CS_FOREST; gSaveContext.nextDayTime = NEXT_TIME_NONE; diff --git a/src/overlays/gamestates/ovl_opening/z_opening.c b/src/overlays/gamestates/ovl_opening/z_opening.c index f300c1ea7b..5ecef658d6 100644 --- a/src/overlays/gamestates/ovl_opening/z_opening.c +++ b/src/overlays/gamestates/ovl_opening/z_opening.c @@ -19,8 +19,9 @@ void TitleSetup_SetupTitleScreen(TitleSetupState* this) { this->state.running = false; gSaveContext.save.linkAge = LINK_AGE_ADULT; Sram_InitDebugSave(); - gSaveContext.save.cutsceneIndex = 0xFFF3; - gSaveContext.sceneLayer = 7; + gSaveContext.save.cutsceneIndex = CS_INDEX_3; + // assigning scene layer here is redundant, as Play_Init sets it right away + gSaveContext.sceneLayer = GET_CUTSCENE_LAYER(CS_INDEX_3); SET_NEXT_GAMESTATE(&this->state, Play_Init, PlayState); } diff --git a/src/overlays/gamestates/ovl_select/z_select.c b/src/overlays/gamestates/ovl_select/z_select.c index cb751c32ed..a8d5f1ecc7 100644 --- a/src/overlays/gamestates/ovl_select/z_select.c +++ b/src/overlays/gamestates/ovl_select/z_select.c @@ -310,65 +310,65 @@ void MapSelect_UpdateMenu(MapSelectState* this) { } if (CHECK_BTN_ALL(input->press.button, BTN_Z)) { - if (gSaveContext.save.cutsceneIndex == 0x8000) { - gSaveContext.save.cutsceneIndex = 0; - } else if (gSaveContext.save.cutsceneIndex == 0) { - gSaveContext.save.cutsceneIndex = 0xFFF0; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF0) { - gSaveContext.save.cutsceneIndex = 0xFFF1; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF1) { - gSaveContext.save.cutsceneIndex = 0xFFF2; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF2) { - gSaveContext.save.cutsceneIndex = 0xFFF3; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF3) { - gSaveContext.save.cutsceneIndex = 0xFFF4; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF4) { - gSaveContext.save.cutsceneIndex = 0xFFF5; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF5) { - gSaveContext.save.cutsceneIndex = 0xFFF6; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF6) { - gSaveContext.save.cutsceneIndex = 0xFFF7; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF7) { - gSaveContext.save.cutsceneIndex = 0xFFF8; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF8) { - gSaveContext.save.cutsceneIndex = 0xFFF9; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF9) { - gSaveContext.save.cutsceneIndex = 0xFFFA; - } else if (gSaveContext.save.cutsceneIndex == 0xFFFA) { - gSaveContext.save.cutsceneIndex = 0x8000; + if (gSaveContext.save.cutsceneIndex == CS_INDEX_DAY) { + gSaveContext.save.cutsceneIndex = CS_INDEX_NIGHT; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_NIGHT) { + gSaveContext.save.cutsceneIndex = CS_INDEX_0; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_0) { + gSaveContext.save.cutsceneIndex = CS_INDEX_1; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_1) { + gSaveContext.save.cutsceneIndex = CS_INDEX_2; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_2) { + gSaveContext.save.cutsceneIndex = CS_INDEX_3; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_3) { + gSaveContext.save.cutsceneIndex = CS_INDEX_4; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_4) { + gSaveContext.save.cutsceneIndex = CS_INDEX_5; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_5) { + gSaveContext.save.cutsceneIndex = CS_INDEX_6; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_6) { + gSaveContext.save.cutsceneIndex = CS_INDEX_7; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_7) { + gSaveContext.save.cutsceneIndex = CS_INDEX_8; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_8) { + gSaveContext.save.cutsceneIndex = CS_INDEX_9; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_9) { + gSaveContext.save.cutsceneIndex = CS_INDEX_A; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_A) { + gSaveContext.save.cutsceneIndex = CS_INDEX_DAY; } } else if (CHECK_BTN_ALL(input->press.button, BTN_R)) { - if (gSaveContext.save.cutsceneIndex == 0x8000) { - gSaveContext.save.cutsceneIndex = 0xFFFA; - } else if (gSaveContext.save.cutsceneIndex == 0) { - gSaveContext.save.cutsceneIndex = 0x8000; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF0) { - gSaveContext.save.cutsceneIndex = 0; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF1) { - gSaveContext.save.cutsceneIndex = 0xFFF0; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF2) { - gSaveContext.save.cutsceneIndex = 0xFFF1; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF3) { - gSaveContext.save.cutsceneIndex = 0xFFF2; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF4) { - gSaveContext.save.cutsceneIndex = 0xFFF3; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF5) { - gSaveContext.save.cutsceneIndex = 0xFFF4; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF6) { - gSaveContext.save.cutsceneIndex = 0xFFF5; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF7) { - gSaveContext.save.cutsceneIndex = 0xFFF6; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF8) { - gSaveContext.save.cutsceneIndex = 0xFFF7; - } else if (gSaveContext.save.cutsceneIndex == 0xFFF9) { - gSaveContext.save.cutsceneIndex = 0xFFF8; - } else if (gSaveContext.save.cutsceneIndex == 0xFFFA) { - gSaveContext.save.cutsceneIndex = 0xFFF9; + if (gSaveContext.save.cutsceneIndex == CS_INDEX_DAY) { + gSaveContext.save.cutsceneIndex = CS_INDEX_A; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_NIGHT) { + gSaveContext.save.cutsceneIndex = CS_INDEX_DAY; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_0) { + gSaveContext.save.cutsceneIndex = CS_INDEX_NIGHT; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_1) { + gSaveContext.save.cutsceneIndex = CS_INDEX_0; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_2) { + gSaveContext.save.cutsceneIndex = CS_INDEX_1; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_3) { + gSaveContext.save.cutsceneIndex = CS_INDEX_2; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_4) { + gSaveContext.save.cutsceneIndex = CS_INDEX_3; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_5) { + gSaveContext.save.cutsceneIndex = CS_INDEX_4; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_6) { + gSaveContext.save.cutsceneIndex = CS_INDEX_5; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_7) { + gSaveContext.save.cutsceneIndex = CS_INDEX_6; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_8) { + gSaveContext.save.cutsceneIndex = CS_INDEX_7; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_9) { + gSaveContext.save.cutsceneIndex = CS_INDEX_8; + } else if (gSaveContext.save.cutsceneIndex == CS_INDEX_A) { + gSaveContext.save.cutsceneIndex = CS_INDEX_9; } } gSaveContext.save.nightFlag = 0; - if (gSaveContext.save.cutsceneIndex == 0) { + if (gSaveContext.save.cutsceneIndex == CS_INDEX_NIGHT) { gSaveContext.save.nightFlag = 1; } @@ -565,48 +565,48 @@ void MapSelect_PrintCutsceneSetting(MapSelectState* this, GfxPrint* printer, u16 GfxPrint_SetColor(printer, 255, 255, 55, 255); switch (csIndex) { - case 0: + case CS_INDEX_NIGHT: label = T(GFXP_HIRAGANA " ヨル " GFXP_KATAKANA "ゴロン", "Night"); gSaveContext.save.dayTime = CLOCK_TIME(0, 0); break; - case 0x8000: + case CS_INDEX_DAY: // clang-format off gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = T(GFXP_HIRAGANA "オヒル " GFXP_KATAKANA "ジャラ", "Day"); // clang-format on break; - case 0xFFF0: + case CS_INDEX_0: // clang-format off gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = T("デモ00", "Demo 00"); // clang-format on break; - case 0xFFF1: + case CS_INDEX_1: label = T("デモ01", "Demo 01"); break; - case 0xFFF2: + case CS_INDEX_2: label = T("デモ02", "Demo 02"); break; - case 0xFFF3: + case CS_INDEX_3: label = T("デモ03", "Demo 03"); break; - case 0xFFF4: + case CS_INDEX_4: label = T("デモ04", "Demo 04"); break; - case 0xFFF5: + case CS_INDEX_5: label = T("デモ05", "Demo 05"); break; - case 0xFFF6: + case CS_INDEX_6: label = T("デモ06", "Demo 06"); break; - case 0xFFF7: + case CS_INDEX_7: label = T("デモ07", "Demo 07"); break; - case 0xFFF8: + case CS_INDEX_8: label = T("デモ08", "Demo 08"); break; - case 0xFFF9: + case CS_INDEX_9: label = T("デモ09", "Demo 09"); break; - case 0xFFFA: + case CS_INDEX_A: label = T("デモ0A", "Demo 0A"); break; }; @@ -736,6 +736,6 @@ void MapSelect_Init(GameState* thisx) { DMA_REQUEST_SYNC(this->staticSegment, (uintptr_t)_z_select_staticSegmentRomStart, size, "../z_select.c", 1115); } - gSaveContext.save.cutsceneIndex = 0x8000; + gSaveContext.save.cutsceneIndex = CS_INDEX_DAY; gSaveContext.save.linkAge = LINK_AGE_CHILD; } From 04a92708cf6d78e0f2dc72c50948eaa2872d7d5e Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Fri, 20 Jun 2025 10:12:45 +0200 Subject: [PATCH 04/11] Rename AT `effect` to `hitSpecialEffect` (#2637) * Rename AT `effect` to `hitSpecialEffect` * bss --- include/collision_check.h | 12 ++++++++++-- src/code/z_actor.c | 4 ++-- src/code/z_bgcheck.c | 2 +- src/code/z_camera.c | 2 +- src/code/z_collision_check.c | 6 +++--- src/code/z_message.c | 2 +- src/code/z_parameter.c | 3 ++- src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c | 2 +- src/overlays/actors/ovl_Boss_Mo/z_boss_mo.c | 2 +- src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c | 2 +- src/overlays/actors/ovl_En_Bb/z_en_bb.c | 2 +- src/overlays/actors/ovl_En_Bubble/z_en_bubble.c | 2 +- src/overlays/actors/ovl_En_Bw/z_en_bw.c | 4 ++-- src/overlays/actors/ovl_En_Firefly/z_en_firefly.c | 8 ++++---- src/overlays/actors/ovl_En_Reeba/z_en_reeba.c | 2 +- src/overlays/actors/ovl_En_Torch2/z_en_torch2.c | 2 ++ src/overlays/actors/ovl_Fishing/z_fishing.c | 4 ++-- src/overlays/actors/ovl_player_actor/z_player.c | 10 +++++----- 18 files changed, 41 insertions(+), 30 deletions(-) diff --git a/include/collision_check.h b/include/collision_check.h index c897da6863..0d2a621039 100644 --- a/include/collision_check.h +++ b/include/collision_check.h @@ -80,9 +80,17 @@ typedef struct ColliderInitToActor { /* 0x07 */ u8 shape; } 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 +} HitSpecialEffect; + typedef struct ColliderElementDamageInfoAT { /* 0x00 */ u32 dmgFlags; // Damage types dealt by this collider element as AT. - /* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.) + /* 0x04 */ u8 hitSpecialEffect; // The hit special effect applied to any actor attacked by this AT collider. /* 0x05 */ u8 damage; // Damage } ColliderElementDamageInfoAT; // size = 0x08 @@ -471,7 +479,7 @@ typedef struct CollisionCheckInfo { /* 0x18 */ u8 damage; // Amount to decrement health by /* 0x19 */ u8 damageReaction; // Stores what reaction should occur after being hit /* 0x1A */ u8 atHitBacklash; // Stores the hit backlash type received from attacking an AC collider - /* 0x1B */ u8 acHitEffect; // Stores what effect should occur when AC is touched by an AT + /* 0x1B */ u8 acHitSpecialEffect; // Stores the hit special effect received from being attacked by an AT collider } CollisionCheckInfo; // size = 0x1C DamageTable* DamageTable_Get(s32 index); diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 1e02acdc8c..7501925080 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -35,8 +35,8 @@ #include "assets/objects/gameplay_dangeon_keep/gameplay_dangeon_keep.h" #include "assets/objects/object_bdoor/object_bdoor.h" -#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:0" \ - "ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0" +#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \ + "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0" CollisionPoly* sCurCeilingPoly; s32 sCurCeilingBgId; diff --git a/src/code/z_bgcheck.c b/src/code/z_bgcheck.c index 9e71fa6287..656bb04b5b 100644 --- a/src/code/z_bgcheck.c +++ b/src/code/z_bgcheck.c @@ -14,7 +14,7 @@ #include "player.h" #include "skin_matrix.h" -#pragma increment_block_number "ntsc-1.0:144 ntsc-1.1:144 ntsc-1.2:144" +#pragma increment_block_number "ntsc-1.0:136 ntsc-1.1:136 ntsc-1.2:136" u16 DynaSSNodeList_GetNextNodeIdx(DynaSSNodeList* nodeList); void BgCheck_GetStaticLookupIndicesFromPos(CollisionContext* colCtx, Vec3f* pos, Vec3i* sector); diff --git a/src/code/z_camera.c b/src/code/z_camera.c index dde42b7922..00d2735f1e 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -3661,7 +3661,7 @@ s32 Camera_KeepOn3(Camera* camera) { } #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \ - "ique-cn:128 ntsc-1.0:76 ntsc-1.1:76 ntsc-1.2:76 pal-1.0:76 pal-1.1:76" + "ique-cn:128 ntsc-1.0:73 ntsc-1.1:73 ntsc-1.2:73 pal-1.0:73 pal-1.1:73" s32 Camera_KeepOn4(Camera* camera) { static Vec3f sAtTarget; diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index 771368e357..98ea5c09a9 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -172,7 +172,7 @@ s32 Collider_DestroyElementDamageInfoAT(PlayState* play, ColliderElementDamageIn s32 Collider_SetElementDamageInfoAT(PlayState* play, ColliderElementDamageInfoAT* dest, ColliderElementDamageInfoAT* src) { dest->dmgFlags = src->dmgFlags; - dest->effect = src->effect; + dest->hitSpecialEffect = src->hitSpecialEffect; dest->damage = src->damage; return true; } @@ -1735,7 +1735,7 @@ s32 CollisionCheck_SetATvsAC(PlayState* play, Collider* atCol, ColliderElement* acElem->acHitElem = atElem; acElem->acElemFlags |= ACELEM_HIT; if (acCol->actor != NULL) { - acCol->actor->colChkInfo.acHitEffect = atElem->atDmgInfo.effect; + acCol->actor->colChkInfo.acHitSpecialEffect = atElem->atDmgInfo.hitSpecialEffect; } acElem->acDmgInfo.hitPos.x = hitPos->x; acElem->acDmgInfo.hitPos.y = hitPos->y; @@ -3016,7 +3016,7 @@ void CollisionCheck_ResetDamage(CollisionCheckInfo* info) { info->damage = 0; info->damageReaction = 0; info->atHitBacklash = HIT_BACKLASH_0; - info->acHitEffect = 0; + info->acHitSpecialEffect = HIT_SPECIAL_EFFECT_0; info->displacement.x = info->displacement.y = info->displacement.z = 0.0f; } diff --git a/src/code/z_message.c b/src/code/z_message.c index 09647912cb..08d4c7181d 100644 --- a/src/code/z_message.c +++ b/src/code/z_message.c @@ -26,7 +26,7 @@ #include "assets/textures/parameter_static/parameter_static.h" -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:16" \ +#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:16" \ "ntsc-1.1:16 ntsc-1.2:16 pal-1.0:0 pal-1.1:0" #if !PLATFORM_IQUE diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index 1709031cfe..1eb2b08ab6 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -29,7 +29,8 @@ #include "assets/textures/do_action_static/do_action_static.h" #include "assets/textures/icon_item_static/icon_item_static.h" -#pragma increment_block_number "gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" +#pragma increment_block_number "gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128 ntsc-1.0:128 ntsc-1.1:128" \ + "ntsc-1.2:128" typedef struct RestrictionFlags { /* 0x00 */ u8 sceneId; diff --git a/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c b/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c index 631faf93b8..186f93ee10 100644 --- a/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c +++ b/src/overlays/actors/ovl_Boss_Ganon2/z_boss_ganon2.c @@ -31,7 +31,7 @@ #include "assets/objects/object_geff/object_geff.h" #include "assets/objects/gameplay_keep/gameplay_keep.h" -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:128" \ +#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:128" \ "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" #define FLAGS \ diff --git a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo.c b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo.c index 4a992ea49c..ec5ee705bf 100644 --- a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo.c +++ b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo.c @@ -39,7 +39,7 @@ #include "assets/objects/object_mo/object_mo.h" #pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \ - "pal-1.0:128 pal-1.1:128" + "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" #define FLAGS \ (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \ 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 e592fd6be7..964f9edc66 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.effect = 1; + this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; } 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 0c055c9be9..f792e59002 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.effect = 1; + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; EnBb_SetupRed(play, this); break; case ENBB_WHITE: 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 30de9c5bbb..7cb0eece74 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.effect = 0; + elem->atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; 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 7f6b4ae99e..2aa76f7e57 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.effect = 0; + this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; 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.effect = 1; + this->collider1.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; } 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 e3df3a19f1..486e5af3a3 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.effect = 0; // None + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; 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.effect = 1; // Fire + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_1; 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.effect = 2; // Ice + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_2; this->actor.naviEnemyId = NAVI_ENEMY_ICE_KEESE; } else { - this->collider.elements[0].base.atDmgInfo.effect = 0; // Nothing + this->collider.elements[0].base.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_0; 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 1cb43e2481..258e270949 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.effect = 4; + this->collider.elem.atDmgInfo.hitSpecialEffect = HIT_SPECIAL_EFFECT_4; this->collider.elem.atDmgInfo.damage = 16; Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_ENEMY); } diff --git a/src/overlays/actors/ovl_En_Torch2/z_en_torch2.c b/src/overlays/actors/ovl_En_Torch2/z_en_torch2.c index 3f10462ead..9d54250bcd 100644 --- a/src/overlays/actors/ovl_En_Torch2/z_en_torch2.c +++ b/src/overlays/actors/ovl_En_Torch2/z_en_torch2.c @@ -25,6 +25,8 @@ #include "assets/objects/object_torch2/object_torch2.h" +#pragma increment_block_number "ique-cn:128" + #define FLAGS \ (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \ ACTOR_FLAG_DRAW_CULLING_DISABLED) diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index 9f94310a35..ce05c2858e 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -37,8 +37,8 @@ #include "cic6105.h" #endif -#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:128" \ - "ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" +#pragma increment_block_number "gc-eu:224 gc-eu-mq:224 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \ + "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128" #define FLAGS ACTOR_FLAG_UPDATE_CULLING_DISABLED diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index 5ca29489ce..6ddb51cdca 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.acHitEffect == 1) { + if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_1) { 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.effect == 1)) { + if (sp64 && (this->shieldQuad.elem.acHitElem->atDmgInfo.hitSpecialEffect == HIT_SPECIAL_EFFECT_1)) { 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.acHitEffect == 2) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_2) { sp4C = PLAYER_HIT_RESPONSE_ICE_TRAP; - } else if (this->actor.colChkInfo.acHitEffect == 3) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_3) { sp4C = PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK; - } else if (this->actor.colChkInfo.acHitEffect == 4) { + } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_4) { sp4C = PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE; } else { func_80838280(this); From ad7ef14b5d8efb00ee5a422c7f0d713569c36715 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Sun, 22 Jun 2025 16:36:09 +0100 Subject: [PATCH 05/11] Name `HIT_BACKLASH_` and `HIT_SPECIAL_EFFECT_` values (#2639) * Name HIT_BACKLASH_ and HIT_SPECIAL_EFFECT_ values * SHOCK -> ELECTRIC --- include/collision_check.h | 14 +++++++------- src/code/z_collision_check.c | 4 ++-- src/overlays/actors/ovl_Boss_Tw/z_boss_tw.c | 2 +- src/overlays/actors/ovl_En_Bb/z_en_bb.c | 2 +- src/overlays/actors/ovl_En_Bili/z_en_bili.c | 4 ++-- src/overlays/actors/ovl_En_Bubble/z_en_bubble.c | 2 +- src/overlays/actors/ovl_En_Bw/z_en_bw.c | 4 ++-- src/overlays/actors/ovl_En_Firefly/z_en_firefly.c | 8 ++++---- src/overlays/actors/ovl_En_Reeba/z_en_reeba.c | 2 +- src/overlays/actors/ovl_En_Vali/z_en_vali.c | 4 ++-- src/overlays/actors/ovl_player_actor/z_player.c | 12 ++++++------ 11 files changed, 29 insertions(+), 29 deletions(-) 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); From d52ba1ed26879428f869f2d46c0f8c08158d5bf6 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 24 Jun 2025 16:53:55 +0100 Subject: [PATCH 06/11] Cleanup extracted colliders 1 (#2641) --- .../ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c | 2 +- .../actors/ovl_Bg_Bombwall/z_bg_bombwall.c | 2 +- .../ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c | 2 +- .../actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c | 2 +- .../ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c | 2 +- .../z_bg_hidan_firewall.c | 2 +- .../ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c | 2 +- .../ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c | 2 +- .../z_bg_hidan_kowarerukabe.c | 2 +- .../z_bg_hidan_rsekizou.c | 2 +- .../ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c | 2 +- .../ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c | 2 +- .../z_bg_jya_bombchuiwa.c | 2 +- .../ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c | 2 +- .../ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c | 2 +- .../ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c | 6 ++--- .../ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c | 2 +- .../actors/ovl_Bg_Po_Event/z_bg_po_event.c | 2 +- .../z_bg_spot06_objects.c | 2 +- .../ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c | 2 +- .../actors/ovl_Bg_Toki_Swd/z_bg_toki_swd.c | 2 +- .../ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c | 2 +- .../actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c | 2 +- .../z_boss_dodongo_data.inc.c | 2 +- .../actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c | 2 +- .../ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c | 2 +- .../actors/ovl_Boss_Goma/z_boss_goma.c | 2 +- .../actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c | 2 +- .../ovl_Boss_Sst/z_boss_sst_colchk.inc.c | 4 ++-- src/overlays/actors/ovl_Boss_Va/z_boss_va.c | 4 ++-- src/overlays/actors/ovl_Demo_Im/z_demo_im.c | 9 +++++++- src/overlays/actors/ovl_Door_Ana/z_door_ana.c | 2 +- .../actors/ovl_Door_Killer/z_door_killer.c | 2 +- src/overlays/actors/ovl_En_Ani/z_en_ani.c | 2 +- src/overlays/actors/ovl_En_Ba/z_en_ba.c | 2 +- src/overlays/actors/ovl_En_Bb/z_en_bb.c | 2 +- .../actors/ovl_En_Bigokuta/z_en_bigokuta.c | 2 +- src/overlays/actors/ovl_En_Bom/z_en_bom.c | 2 +- src/overlays/actors/ovl_En_Bombf/z_en_bombf.c | 2 +- .../actors/ovl_En_Bubble/z_en_bubble.c | 2 +- src/overlays/actors/ovl_En_Butte/z_en_butte.c | 20 +++++++++-------- src/overlays/actors/ovl_En_Crow/z_en_crow.c | 2 +- .../actors/ovl_En_Dekubaba/z_en_dekubaba.c | 2 +- src/overlays/actors/ovl_En_Dh/z_en_dh.c | 2 +- .../ovl_En_Diving_Game/z_en_diving_game.c | 2 +- .../actors/ovl_En_Dodongo/z_en_dodongo.c | 4 ++-- src/overlays/actors/ovl_En_Dog/z_en_dog.c | 2 +- src/overlays/actors/ovl_En_Fd/z_en_fd.c | 2 +- .../actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c | 2 +- .../actors/ovl_En_Firefly/z_en_firefly.c | 2 +- src/overlays/actors/ovl_En_Fish/z_en_fish.c | 2 +- src/overlays/actors/ovl_En_Fw/z_en_fw.c | 2 +- src/overlays/actors/ovl_En_GeldB/z_en_geldb.c | 2 +- src/overlays/actors/ovl_En_Guest/z_en_guest.c | 9 +++++++- src/overlays/actors/ovl_En_Hata/z_en_hata.c | 2 +- .../actors/ovl_En_Honotrap/z_en_honotrap.c | 2 +- src/overlays/actors/ovl_En_Horse/z_en_horse.c | 2 +- .../z_en_horse_link_child.c | 2 +- .../ovl_En_Horse_Zelda/z_en_horse_zelda.c | 2 +- src/overlays/actors/ovl_En_Ik/z_en_ik.c | 2 +- .../actors/ovl_En_Insect/z_en_insect.c | 2 +- src/overlays/actors/ovl_En_It/z_en_it.c | 2 +- .../actors/ovl_En_M_Fire1/z_en_m_fire1.c | 2 +- src/overlays/actors/ovl_En_Mb/z_en_mb.c | 2 +- src/overlays/actors/ovl_En_Ms/z_en_ms.c | 11 ++++++++-- .../actors/ovl_En_Nutsball/z_en_nutsball.c | 2 +- src/overlays/actors/ovl_En_Ny/z_en_ny.c | 2 +- src/overlays/actors/ovl_En_Ossan/z_en_ossan.c | 2 +- .../actors/ovl_En_Peehat/z_en_peehat.c | 2 +- src/overlays/actors/ovl_En_Poh/z_en_poh.c | 2 +- src/overlays/actors/ovl_En_Ru1/z_en_ru1.c | 22 +++++++++++++++---- src/overlays/actors/ovl_En_Ru2/z_en_ru2.c | 11 ++++++++-- src/overlays/actors/ovl_En_Sb/z_en_sb.c | 9 +++++++- src/overlays/actors/ovl_En_Skb/z_en_skb.c | 2 +- src/overlays/actors/ovl_En_Skj/z_en_skj.c | 4 ++-- src/overlays/actors/ovl_En_Ssh/z_en_ssh.c | 2 +- src/overlays/actors/ovl_En_St/z_en_st.c | 2 +- src/overlays/actors/ovl_En_Sw/z_en_sw.c | 20 ++++++++++++++--- src/overlays/actors/ovl_En_Tite/z_en_tite.c | 2 +- src/overlays/actors/ovl_En_Tp/z_en_tp.c | 2 +- src/overlays/actors/ovl_En_Trap/z_en_trap.c | 9 +++++++- .../actors/ovl_En_Tubo_Trap/z_en_tubo_trap.c | 2 +- .../actors/ovl_En_Wallmas/z_en_wallmas.c | 2 +- src/overlays/actors/ovl_En_Wf/z_en_wf.c | 2 +- .../ovl_En_Yabusame_Mark/z_en_yabusame_mark.c | 2 +- src/overlays/actors/ovl_Fishing/z_fishing.c | 4 ++-- src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c | 2 +- .../actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c | 2 +- src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c | 2 +- .../actors/ovl_Obj_Dekujr/z_obj_dekujr.c | 15 +++++++++---- .../actors/ovl_Obj_Switch/z_obj_switch.c | 6 ++--- 91 files changed, 197 insertions(+), 118 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c b/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c index 047ad13ba0..da3991dace 100644 --- a/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c +++ b/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c @@ -86,7 +86,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_NONE, OCELEM_NONE, }, - { 0x00BB, 0x0050, 0x0000, { 0 } }, + { 187, 80, 0, { 0, 0, 0 } }, }; static InitChainEntry sInitChain[] = { diff --git a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c index 15a2ffb841..f7aa185dec 100644 --- a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c @@ -28,7 +28,7 @@ void func_8086EDFC(BgBombwall* this, PlayState* play); void func_8086EE40(BgBombwall* this, PlayState* play); void func_8086EE94(BgBombwall* this, PlayState* play); -static ColliderTrisElementInit sTrisElementsInit[3] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c b/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c index cf90fc6a68..31d78254b0 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c +++ b/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c @@ -46,7 +46,7 @@ ActorProfile Bg_Haka_Sgami_Profile = { /**/ NULL, }; -static ColliderTrisElementInit sTrisElementsInit[4] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK2, diff --git a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c index 250f4ce32a..920aa7af16 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c +++ b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c @@ -72,7 +72,7 @@ static ColliderCylinderInit sCylinderInit = { { 30, 90, 0, { 0, 0, 0 } }, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c b/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c index 412b2a5426..eb23e5a0b5 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c @@ -39,7 +39,7 @@ ActorProfile Bg_Hidan_Dalm_Profile = { /**/ BgHidanDalm_Draw, }; -static ColliderTrisElementInit sTrisElementInit[4] = { +static ColliderTrisElementInit sTrisElementInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Firewall/z_bg_hidan_firewall.c b/src/overlays/actors/ovl_Bg_Hidan_Firewall/z_bg_hidan_firewall.c index 9ca446025c..af66735b5b 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Firewall/z_bg_hidan_firewall.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Firewall/z_bg_hidan_firewall.c @@ -60,7 +60,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_NONE, OCELEM_ON, }, - { 30, 83, 0, { 0 } }, + { 30, 83, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit sColChkInfoInit = { 1, 80, 100, MASS_IMMOVABLE }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c index 3f2e87ed3f..e1b58c46b5 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c @@ -41,7 +41,7 @@ static f32 sYPosOffsets[] = { -20.0f, -120.0f, -220.0f, -320.0f, -420.0f, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c b/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c index 64159da59a..7bb7fb3a7f 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c @@ -37,7 +37,7 @@ ActorProfile Bg_Hidan_Hrock_Profile = { /**/ BgHidanHrock_Draw, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c b/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c index 4f1be80a62..aae18ec0d2 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c @@ -53,7 +53,7 @@ static Gfx* sBreakableWallDLists[] = { gFireTempleLargeBombableWallDL, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c b/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c index df5936d41e..e6da33b056 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c @@ -37,7 +37,7 @@ ActorProfile Bg_Hidan_Rsekizou_Profile = { /**/ BgHidanRsekizou_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[6] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c b/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c index bb7cf7edf5..1d9ae39f09 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c @@ -41,7 +41,7 @@ ActorProfile Bg_Hidan_Sekizou_Profile = { /**/ BgHidanSekizou_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[6] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c b/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c index a44cfa3491..f19ab4f077 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c @@ -46,7 +46,7 @@ ActorProfile Bg_Hidan_Sima_Profile = { /**/ BgHidanSima_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c index e19f90863a..b8fd7768d5 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c @@ -40,7 +40,7 @@ ActorProfile Bg_Jya_Bombchuiwa_Profile = { /**/ BgJyaBombchuiwa_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c b/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c index dd514e850b..67a08ca24f 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c +++ b/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c @@ -43,7 +43,7 @@ ActorProfile Bg_Jya_Haheniron_Profile = { /**/ BgJyaHaheniron_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c b/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c index b130738664..797b618d83 100644 --- a/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c +++ b/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c @@ -37,7 +37,7 @@ ActorProfile Bg_Menkuri_Eye_Profile = { static s32 sNumEyesShot; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK4, diff --git a/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c b/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c index 70c09d9dba..53fdd5a0e8 100644 --- a/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c +++ b/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c @@ -44,7 +44,7 @@ ActorProfile Bg_Mizu_Bwall_Profile = { /**/ BgMizuBwall_Draw, }; -static ColliderTrisElementInit sTrisElementsInitFloor[2] = { +static ColliderTrisElementInit sTrisElementsInitFloor[] = { { { ELEM_MATERIAL_UNK0, @@ -82,7 +82,7 @@ static ColliderTrisInit sTrisInitFloor = { sTrisElementsInitFloor, }; -static ColliderTrisElementInit sTrisElementsInitRutoWall[1] = { +static ColliderTrisElementInit sTrisElementsInitRutoWall[] = { { { ELEM_MATERIAL_UNK0, @@ -109,7 +109,7 @@ static ColliderTrisInit sTrisInitRutoWall = { sTrisElementsInitRutoWall, }; -static ColliderTrisElementInit sTrisElementsInitWall[2] = { +static ColliderTrisElementInit sTrisElementsInitWall[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c index ad41dfc212..b0400169bf 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c @@ -47,7 +47,7 @@ ActorProfile Bg_Mori_Hashigo_Profile = { /**/ NULL, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK4, diff --git a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c index 30f2044980..c4e0b0370e 100644 --- a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c +++ b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c @@ -55,7 +55,7 @@ ActorProfile Bg_Po_Event_Profile = { /**/ BgPoEvent_Draw, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK4, diff --git a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c index f7d198cfae..995afd2042 100644 --- a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c +++ b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c @@ -70,7 +70,7 @@ ActorProfile Bg_Spot06_Objects_Profile = { /**/ BgSpot06Objects_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c index 5e4c7896f7..905d5220da 100644 --- a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c +++ b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c @@ -49,7 +49,7 @@ ActorProfile Bg_Spot18_Basket_Profile = { /**/ BgSpot18Basket_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Toki_Swd/z_bg_toki_swd.c b/src/overlays/actors/ovl_Bg_Toki_Swd/z_bg_toki_swd.c index 144388d38e..cc73cfb110 100644 --- a/src/overlays/actors/ovl_Bg_Toki_Swd/z_bg_toki_swd.c +++ b/src/overlays/actors/ovl_Bg_Toki_Swd/z_bg_toki_swd.c @@ -64,7 +64,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_NONE, OCELEM_ON, }, - { 10, 70, 0, { 0 } }, + { 10, 70, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit sColChkInfoInit = { 10, 35, 100, MASS_IMMOVABLE }; diff --git a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c index 8d683a9422..51929f9f68 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c @@ -39,7 +39,7 @@ ActorProfile Bg_Ydan_Maruta_Profile = { /**/ BgYdanMaruta_Draw, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c index 723852f33b..82053be2b0 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c @@ -51,7 +51,7 @@ ActorProfile Bg_Ydan_Sp_Profile = { /**/ BgYdanSp_Draw, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c b/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c index ce2d694b11..b48fd8e735 100644 --- a/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c +++ b/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c @@ -10,7 +10,7 @@ static u8 D_808C7000[] = { 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, }; -static ColliderJntSphElementInit sJntSphElementsInit[19] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK3, diff --git a/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c b/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c index edd02bd7d9..47303b1d48 100644 --- a/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c @@ -1,6 +1,6 @@ #include "collision_check.h" -static ColliderJntSphElementInit sJntSphElementsInit[19] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK3, diff --git a/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c b/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c index 2323528180..9a65994771 100644 --- a/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c @@ -1,6 +1,6 @@ #include "collision_check.h" -static ColliderJntSphElementInit sJntSphElementsInit[9] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK3, diff --git a/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c b/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c index 0d83b2b4a3..5f701f9184 100644 --- a/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c +++ b/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c @@ -92,7 +92,7 @@ ActorProfile Boss_Goma_Profile = { /**/ BossGoma_Draw, }; -static ColliderJntSphElementInit sColliderJntSphElementsInit[13] = { +static ColliderJntSphElementInit sColliderJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK3, diff --git a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c index 8063245fa3..25da97ebe4 100644 --- a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c @@ -1,6 +1,6 @@ #include "collision_check.h" -static ColliderJntSphElementInit sJntSphElementsInit[19] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK4, diff --git a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c index cb0e5012c1..d23f72b9e3 100644 --- a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c @@ -1,6 +1,6 @@ #include "collision_check.h" -static ColliderJntSphElementInit sJntSphElementsInitHand[11] = { +static ColliderJntSphElementInit sJntSphElementsInitHand[] = { { { ELEM_MATERIAL_UNK1, @@ -137,7 +137,7 @@ static ColliderJntSphInit sJntSphInitHand = { sJntSphElementsInitHand, }; -static ColliderJntSphElementInit sJntSphElementsInitHead[11] = { +static ColliderJntSphElementInit sJntSphElementsInitHead[] = { { { ELEM_MATERIAL_UNK1, diff --git a/src/overlays/actors/ovl_Boss_Va/z_boss_va.c b/src/overlays/actors/ovl_Boss_Va/z_boss_va.c index 54f735392a..5fc7b7cd67 100644 --- a/src/overlays/actors/ovl_Boss_Va/z_boss_va.c +++ b/src/overlays/actors/ovl_Boss_Va/z_boss_va.c @@ -245,7 +245,7 @@ static ColliderCylinderInit sCylinderInit = { { 85, 120, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInitSupport[1] = { +static ColliderJntSphElementInit sJntSphElementsInitSupport[] = { { { ELEM_MATERIAL_UNK0, @@ -272,7 +272,7 @@ static ColliderJntSphInit sJntSphInitSupport = { sJntSphElementsInitSupport, }; -static ColliderJntSphElementInit sJntSphElementsInitBari[1] = { +static ColliderJntSphElementInit sJntSphElementsInitBari[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Demo_Im/z_demo_im.c b/src/overlays/actors/ovl_Demo_Im/z_demo_im.c index 29f88da2a1..095abe07c8 100644 --- a/src/overlays/actors/ovl_Demo_Im/z_demo_im.c +++ b/src/overlays/actors/ovl_Demo_Im/z_demo_im.c @@ -84,7 +84,14 @@ static ColliderCylinderInitType1 sCylinderInit = { OC1_ON | OC1_TYPE_PLAYER, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0x00000000, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_NONE, + OCELEM_ON, + }, { 25, 80, 0, { 0, 0, 0 } }, }; diff --git a/src/overlays/actors/ovl_Door_Ana/z_door_ana.c b/src/overlays/actors/ovl_Door_Ana/z_door_ana.c index 8e04441f68..580f580165 100644 --- a/src/overlays/actors/ovl_Door_Ana/z_door_ana.c +++ b/src/overlays/actors/ovl_Door_Ana/z_door_ana.c @@ -58,7 +58,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_NONE, }, - { 50, 10, 0, { 0 } }, + { 50, 10, 0, { 0, 0, 0 } }, }; static s16 sGrottoEntrances[] = { diff --git a/src/overlays/actors/ovl_Door_Killer/z_door_killer.c b/src/overlays/actors/ovl_Door_Killer/z_door_killer.c index dc016d34b6..211c80a0ed 100644 --- a/src/overlays/actors/ovl_Door_Killer/z_door_killer.c +++ b/src/overlays/actors/ovl_Door_Killer/z_door_killer.c @@ -73,7 +73,7 @@ static ColliderCylinderInit sCylinderInit = { { 20, 100, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Ani/z_en_ani.c b/src/overlays/actors/ovl_En_Ani/z_en_ani.c index 17d4eb62f2..50ce8e4123 100644 --- a/src/overlays/actors/ovl_En_Ani/z_en_ani.c +++ b/src/overlays/actors/ovl_En_Ani/z_en_ani.c @@ -67,7 +67,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_ON, }, - { 30, 40, 0, { 0 } }, + { 30, 40, 0, { 0, 0, 0 } }, }; void EnAni_SetupAction(EnAni* this, EnAniActionFunc actionFunc) { diff --git a/src/overlays/actors/ovl_En_Ba/z_en_ba.c b/src/overlays/actors/ovl_En_Ba/z_en_ba.c index 462e8a5f1d..96e6b07877 100644 --- a/src/overlays/actors/ovl_En_Ba/z_en_ba.c +++ b/src/overlays/actors/ovl_En_Ba/z_en_ba.c @@ -51,7 +51,7 @@ ActorProfile En_Ba_Profile = { static Vec3f D_809B8080 = { 0.0f, 0.0f, 32.0f }; -static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, 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 4f80a28b8f..8aec60d8ae 100644 --- a/src/overlays/actors/ovl_En_Bb/z_en_bb.c +++ b/src/overlays/actors/ovl_En_Bb/z_en_bb.c @@ -225,7 +225,7 @@ ActorProfile En_Bb_Profile = { /**/ EnBb_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c index 1ab5979a3c..0ed240091f 100644 --- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c +++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c @@ -62,7 +62,7 @@ ActorProfile En_Bigokuta_Profile = { /**/ EnBigokuta_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK1, diff --git a/src/overlays/actors/ovl_En_Bom/z_en_bom.c b/src/overlays/actors/ovl_En_Bom/z_en_bom.c index bf1c9ee479..a9a7deba18 100644 --- a/src/overlays/actors/ovl_En_Bom/z_en_bom.c +++ b/src/overlays/actors/ovl_En_Bom/z_en_bom.c @@ -62,7 +62,7 @@ static ColliderCylinderInit sCylinderInit = { { 6, 11, 14, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c index 117343703e..ba0de76d96 100644 --- a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c +++ b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c @@ -66,7 +66,7 @@ static ColliderCylinderInit sCylinderInit = { { 9, 18, 10, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, 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 c45b53ddfe..275c23d4e2 100644 --- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c +++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c @@ -36,7 +36,7 @@ ActorProfile En_Bubble_Profile = { /**/ EnBubble_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Butte/z_en_butte.c b/src/overlays/actors/ovl_En_Butte/z_en_butte.c index 888ef865e1..c50f6a269e 100644 --- a/src/overlays/actors/ovl_En_Butte/z_en_butte.c +++ b/src/overlays/actors/ovl_En_Butte/z_en_butte.c @@ -41,15 +41,17 @@ void EnButte_SetupWaitToDie(EnButte* this); void EnButte_WaitToDie(EnButte* this, PlayState* play); static ColliderJntSphElementInit sJntSphElementsInit[] = { - { { - ELEM_MATERIAL_UNK0, - { 0x00000000, 0x00, 0x00 }, - { 0xFFCFFFFF, 0x000, 0x00 }, - ATELEM_NONE, - ACELEM_NONE, - OCELEM_ON, - }, - { 0, { { 0, 0, 0 }, 5 }, 100 } }, + { + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0xFFCFFFFF, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_NONE, + OCELEM_ON, + }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, }; static ColliderJntSphInit sColliderJntSphInit = { { diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.c b/src/overlays/actors/ovl_En_Crow/z_en_crow.c index 0182ad038f..76d852c668 100644 --- a/src/overlays/actors/ovl_En_Crow/z_en_crow.c +++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.c @@ -43,7 +43,7 @@ ActorProfile En_Crow_Profile = { /**/ EnCrow_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c index d30784b4c1..a40c88e41b 100644 --- a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c +++ b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c @@ -55,7 +55,7 @@ ActorProfile En_Dekubaba_Profile = { /**/ EnDekubaba_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[7] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Dh/z_en_dh.c b/src/overlays/actors/ovl_En_Dh/z_en_dh.c index 7870669259..f4ea155489 100644 --- a/src/overlays/actors/ovl_En_Dh/z_en_dh.c +++ b/src/overlays/actors/ovl_En_Dh/z_en_dh.c @@ -90,7 +90,7 @@ static ColliderCylinderInit sCylinderInit = { { 35, 70, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Diving_Game/z_en_diving_game.c b/src/overlays/actors/ovl_En_Diving_Game/z_en_diving_game.c index bcb49b9250..cbca97dfbb 100644 --- a/src/overlays/actors/ovl_En_Diving_Game/z_en_diving_game.c +++ b/src/overlays/actors/ovl_En_Diving_Game/z_en_diving_game.c @@ -80,7 +80,7 @@ static ColliderCylinderInit sCylinderInit = { ELEM_MATERIAL_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, - ATELEM_NONE | ATELEM_SFX_NORMAL, + ATELEM_NONE, ACELEM_NONE, OCELEM_ON, }, diff --git a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c index c7446c4f19..dbe060993c 100644 --- a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c +++ b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c @@ -63,7 +63,7 @@ ActorProfile En_Dodongo_Profile = { /**/ EnDodongo_Draw, }; -static ColliderJntSphElementInit sBodyElementsInit[6] = { +static ColliderJntSphElementInit sBodyElementsInit[] = { { { ELEM_MATERIAL_UNK0, @@ -145,7 +145,7 @@ static ColliderJntSphInit sBodyJntSphInit = { sBodyElementsInit, }; -static ColliderTrisElementInit sHardElementsInit[3] = { +static ColliderTrisElementInit sHardElementsInit[] = { { { ELEM_MATERIAL_UNK2, diff --git a/src/overlays/actors/ovl_En_Dog/z_en_dog.c b/src/overlays/actors/ovl_En_Dog/z_en_dog.c index 4f25c38d08..c8f0452f84 100644 --- a/src/overlays/actors/ovl_En_Dog/z_en_dog.c +++ b/src/overlays/actors/ovl_En_Dog/z_en_dog.c @@ -58,7 +58,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_ON, }, - { 16, 20, 0, { 0 } }, + { 16, 20, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, 50 }; diff --git a/src/overlays/actors/ovl_En_Fd/z_en_fd.c b/src/overlays/actors/ovl_En_Fd/z_en_fd.c index 8050aef560..d2e72b034c 100644 --- a/src/overlays/actors/ovl_En_Fd/z_en_fd.c +++ b/src/overlays/actors/ovl_En_Fd/z_en_fd.c @@ -62,7 +62,7 @@ ActorProfile En_Fd_Profile = { #define FLARE_DANCER_BODY_DMG 0x04 #endif -static ColliderJntSphElementInit sJntSphElementsInit[12] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c index db514cb807..108dbbe352 100644 --- a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c +++ b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c @@ -87,7 +87,7 @@ static ColliderCylinderInit sCylinderInit = { ELEM_MATERIAL_UNK6, { 0x00100700, 0x03, 0x20 }, { 0x0D900700, 0x00, 0x00 }, - ATELEM_ON, + ATELEM_ON | ATELEM_SFX_NORMAL, ACELEM_ON, OCELEM_ON, }, 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 5666de0818..bb785f8fbf 100644 --- a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c +++ b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c @@ -62,7 +62,7 @@ ActorProfile En_Firefly_Profile = { /**/ EnFirefly_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, 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 ce2cb23937..28b759a3e8 100644 --- a/src/overlays/actors/ovl_En_Fish/z_en_fish.c +++ b/src/overlays/actors/ovl_En_Fish/z_en_fish.c @@ -50,7 +50,7 @@ static Actor* D_80A17010 = NULL; static f32 D_80A17014 = 0.0f; static f32 D_80A17018 = 0.0f; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Fw/z_en_fw.c b/src/overlays/actors/ovl_En_Fw/z_en_fw.c index 9d8b9e5aa3..a2c2949bfe 100644 --- a/src/overlays/actors/ovl_En_Fw/z_en_fw.c +++ b/src/overlays/actors/ovl_En_Fw/z_en_fw.c @@ -51,7 +51,7 @@ ActorProfile En_Fw_Profile = { /**/ EnFw_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c index a3884acc9f..44b1ab4e5a 100644 --- a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c +++ b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c @@ -119,7 +119,7 @@ static ColliderCylinderInit sBodyCylinderInit = { { 20, 50, 0, { 0, 0, 0 } }, }; -static ColliderTrisElementInit sBlockTrisElementsInit[2] = { +static ColliderTrisElementInit sBlockTrisElementsInit[] = { { { ELEM_MATERIAL_UNK2, diff --git a/src/overlays/actors/ovl_En_Guest/z_en_guest.c b/src/overlays/actors/ovl_En_Guest/z_en_guest.c index 9dd16fe237..29b1423035 100644 --- a/src/overlays/actors/ovl_En_Guest/z_en_guest.c +++ b/src/overlays/actors/ovl_En_Guest/z_en_guest.c @@ -54,7 +54,14 @@ static ColliderCylinderInitType1 sCylinderInit = { OC1_ON | OC1_TYPE_ALL, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0x00000000, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_NONE, + OCELEM_ON, + }, { 10, 60, 0, { 0, 0, 0 } }, }; diff --git a/src/overlays/actors/ovl_En_Hata/z_en_hata.c b/src/overlays/actors/ovl_En_Hata/z_en_hata.c index 2b4133c39f..f1ae9acbdd 100644 --- a/src/overlays/actors/ovl_En_Hata/z_en_hata.c +++ b/src/overlays/actors/ovl_En_Hata/z_en_hata.c @@ -49,7 +49,7 @@ static ColliderCylinderInit sCylinderInit = { ELEM_MATERIAL_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000080, 0x00, 0x00 }, - ATELEM_NONE | ATELEM_SFX_NORMAL, + ATELEM_NONE, ACELEM_ON | ACELEM_HOOKABLE, OCELEM_ON, }, diff --git a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c index 2fa5d13382..988982f263 100644 --- a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c +++ b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c @@ -76,7 +76,7 @@ ActorProfile En_Honotrap_Profile = { /**/ EnHonotrap_Draw, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK4, diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c index b3b1110afd..6352756b5e 100644 --- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c +++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c @@ -143,7 +143,7 @@ static ColliderCylinderInit sCylinderInit2 = { { 20, 70, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c index 7f15c2facb..8bb783da10 100644 --- a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c +++ b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c @@ -73,7 +73,7 @@ static ColliderCylinderInitType1 sCylinderInit = { { 20, 100, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c index 72dc359f10..4382cabf11 100644 --- a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c +++ b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c @@ -65,7 +65,7 @@ static ColliderCylinderInitType1 sCylinderInit = { { 40, 100, 0, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Ik/z_en_ik.c b/src/overlays/actors/ovl_En_Ik/z_en_ik.c index 53f9c938cd..9b315a1951 100644 --- a/src/overlays/actors/ovl_En_Ik/z_en_ik.c +++ b/src/overlays/actors/ovl_En_Ik/z_en_ik.c @@ -107,7 +107,7 @@ static ColliderCylinderInit sCylinderInit = { { 25, 80, 0, { 0, 0, 0 } }, }; -static ColliderTrisElementInit sTrisElementsInit[2] = { +static ColliderTrisElementInit sTrisElementsInit[] = { { { ELEM_MATERIAL_UNK2, diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c index dd215680c9..c114965204 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c @@ -70,7 +70,7 @@ ActorProfile En_Insect_Profile = { /**/ EnInsect_Draw, }; -static ColliderJntSphElementInit sColliderElementsInit[1] = { +static ColliderJntSphElementInit sColliderElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_It/z_en_it.c b/src/overlays/actors/ovl_En_It/z_en_it.c index 2faea7fb6e..b8df8d467f 100644 --- a/src/overlays/actors/ovl_En_It/z_en_it.c +++ b/src/overlays/actors/ovl_En_It/z_en_it.c @@ -31,7 +31,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_NONE, OCELEM_ON, }, - { 40, 10, 0, { 0 } }, + { 40, 10, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, MASS_IMMOVABLE }; diff --git a/src/overlays/actors/ovl_En_M_Fire1/z_en_m_fire1.c b/src/overlays/actors/ovl_En_M_Fire1/z_en_m_fire1.c index eef5e1c0b9..a1dec3b49b 100644 --- a/src/overlays/actors/ovl_En_M_Fire1/z_en_m_fire1.c +++ b/src/overlays/actors/ovl_En_M_Fire1/z_en_m_fire1.c @@ -44,7 +44,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_NONE, OCELEM_NONE, }, - { 200, 200, 0, { 0 } }, + { 200, 200, 0, { 0, 0, 0 } }, }; void EnMFire1_Init(Actor* thisx, PlayState* play) { diff --git a/src/overlays/actors/ovl_En_Mb/z_en_mb.c b/src/overlays/actors/ovl_En_Mb/z_en_mb.c index 56e96bf293..1cd9a16363 100644 --- a/src/overlays/actors/ovl_En_Mb/z_en_mb.c +++ b/src/overlays/actors/ovl_En_Mb/z_en_mb.c @@ -126,7 +126,7 @@ static ColliderCylinderInit sBodyColliderInit = { { 20, 70, 0, { 0, 0, 0 } }, }; -static ColliderTrisElementInit sFrontShieldingTrisElementsInit[2] = { +static ColliderTrisElementInit sFrontShieldingTrisElementsInit[] = { { { ELEM_MATERIAL_UNK2, diff --git a/src/overlays/actors/ovl_En_Ms/z_en_ms.c b/src/overlays/actors/ovl_En_Ms/z_en_ms.c index e9012fb1e4..bff50062b7 100644 --- a/src/overlays/actors/ovl_En_Ms/z_en_ms.c +++ b/src/overlays/actors/ovl_En_Ms/z_en_ms.c @@ -49,8 +49,15 @@ static ColliderCylinderInitType1 sCylinderInit = { OC1_ON | OC1_TYPE_ALL, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000000, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x01, 0x01 }, - { 22, 37, 0, { 0 } }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0xFFCFFFFF, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_ON, + OCELEM_ON, + }, + { 22, 37, 0, { 0, 0, 0 } }, }; static s16 sPrices[] = { diff --git a/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c b/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c index 9417316e4c..0799a31a4b 100644 --- a/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c +++ b/src/overlays/actors/ovl_En_Nutsball/z_en_nutsball.c @@ -61,7 +61,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_ON, }, - { 13, 13, 0, { 0 } }, + { 13, 13, 0, { 0, 0, 0 } }, }; static s16 sObjectIds[] = { diff --git a/src/overlays/actors/ovl_En_Ny/z_en_ny.c b/src/overlays/actors/ovl_En_Ny/z_en_ny.c index 38167bef26..877ba4b09f 100644 --- a/src/overlays/actors/ovl_En_Ny/z_en_ny.c +++ b/src/overlays/actors/ovl_En_Ny/z_en_ny.c @@ -51,7 +51,7 @@ ActorProfile En_Ny_Profile = { /**/ EnNy_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c b/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c index 33b5886a26..0cad597f84 100644 --- a/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c +++ b/src/overlays/actors/ovl_En_Ossan/z_en_ossan.c @@ -155,7 +155,7 @@ static ColliderCylinderInitType1 sCylinderInit = { ELEM_MATERIAL_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, - ATELEM_NONE | ATELEM_SFX_NORMAL, + ATELEM_NONE, ACELEM_NONE, OCELEM_ON, }, diff --git a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c index a4225d0ff4..cff29ca1e5 100644 --- a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c +++ b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c @@ -90,7 +90,7 @@ static ColliderCylinderInit sCylinderInit = { { 50, 160, -70, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c index b6e7232852..482d1bfcf5 100644 --- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c +++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c @@ -90,7 +90,7 @@ static ColliderCylinderInit sCylinderInit = { { 20, 40, 20, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c b/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c index b0b2dc7f8a..43f1414308 100644 --- a/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c +++ b/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c @@ -98,8 +98,15 @@ static ColliderCylinderInitType1 sStandingCylinderInit = { OC1_ON | OC1_TYPE_PLAYER, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, - { 25, 80, 0, { 0 } }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0x00000000, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_NONE, + OCELEM_ON, + }, + { 25, 80, 0, { 0, 0, 0 } }, }; static ColliderCylinderInitType1 sSittingCylinderInit = { @@ -110,8 +117,15 @@ static ColliderCylinderInitType1 sSittingCylinderInit = { OC1_ON | OC1_TYPE_PLAYER, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000101, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, 0x01, 0x00, 0x01 }, - { 20, 30, 0, { 0 } }, + { + ELEM_MATERIAL_UNK0, + { 0x00000101, 0x00, 0x00 }, + { 0x00000000, 0x00, 0x00 }, + ATELEM_ON | ATELEM_SFX_NORMAL, + ACELEM_NONE, + OCELEM_ON, + }, + { 20, 30, 0, { 0, 0, 0 } }, }; static void* sEyeTextures[] = { diff --git a/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c b/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c index 6e35bd842f..23b211cfa8 100644 --- a/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c +++ b/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c @@ -97,8 +97,15 @@ static ColliderCylinderInitType1 sCylinderInit = { OC1_NONE, COLSHAPE_CYLINDER, }, - { 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000080, 0x00, 0x00 }, 0x00, 0x01, 0x00 }, - { 30, 100, 0, { 0 } }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0x00000080, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_ON, + OCELEM_NONE, + }, + { 30, 100, 0, { 0, 0, 0 } }, }; static void* sEyeTextures[] = { diff --git a/src/overlays/actors/ovl_En_Sb/z_en_sb.c b/src/overlays/actors/ovl_En_Sb/z_en_sb.c index 6ece8b50b5..a777eee0d5 100644 --- a/src/overlays/actors/ovl_En_Sb/z_en_sb.c +++ b/src/overlays/actors/ovl_En_Sb/z_en_sb.c @@ -57,7 +57,14 @@ static ColliderCylinderInitType1 sCylinderInit = { OC1_ON | OC1_TYPE_ALL, COLSHAPE_CYLINDER, }, - { 0x00, { 0xFFCFFFFF, 0x04, 0x08 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x01, 0x01, 0x01 }, + { + ELEM_MATERIAL_UNK0, + { 0xFFCFFFFF, 0x04, 0x08 }, + { 0xFFCFFFFF, 0x00, 0x00 }, + ATELEM_ON | ATELEM_SFX_NORMAL, + ACELEM_ON, + OCELEM_ON, + }, { 30, 40, 0, { 0, 0, 0 } }, }; diff --git a/src/overlays/actors/ovl_En_Skb/z_en_skb.c b/src/overlays/actors/ovl_En_Skb/z_en_skb.c index 5d21c25fb4..f4bf896838 100644 --- a/src/overlays/actors/ovl_En_Skb/z_en_skb.c +++ b/src/overlays/actors/ovl_En_Skb/z_en_skb.c @@ -55,7 +55,7 @@ void EnSkb_TakeDamage(EnSkb* this, PlayState* play); void EnSkb_SetupDeath(EnSkb* this, PlayState* play); void EnSkb_Death(EnSkb* this, PlayState* play); -static ColliderJntSphElementInit sJntSphElementsInit[2] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Skj/z_en_skj.c b/src/overlays/actors/ovl_En_Skj/z_en_skj.c index 492b973735..cd1c8e1d2f 100644 --- a/src/overlays/actors/ovl_En_Skj/z_en_skj.c +++ b/src/overlays/actors/ovl_En_Skj/z_en_skj.c @@ -204,8 +204,8 @@ static ColliderCylinderInitType1 D_80B01678 = { }, { ELEM_MATERIAL_UNK0, - { 0xFFCFFFFF, 0x0, 0x08 }, - { 0xFFCFFFFF, 0x0, 0x0 }, + { 0xFFCFFFFF, 0x00, 0x08 }, + { 0xFFCFFFFF, 0x00, 0x00 }, ATELEM_ON | ATELEM_SFX_NORMAL, ACELEM_ON, OCELEM_ON, diff --git a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c index f3649fa697..0326e57cc3 100644 --- a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c +++ b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c @@ -99,7 +99,7 @@ static ColliderCylinderInit sCylinderInit2 = { { 20, 60, -30, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_St/z_en_st.c b/src/overlays/actors/ovl_En_St/z_en_st.c index f32ce0ba67..2a9c323ba8 100644 --- a/src/overlays/actors/ovl_En_St/z_en_st.c +++ b/src/overlays/actors/ovl_En_St/z_en_st.c @@ -98,7 +98,7 @@ static ColliderCylinderInit sCylinderInit2 = { { 20, 60, -30, { 0, 0, 0 } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Sw/z_en_sw.c b/src/overlays/actors/ovl_En_Sw/z_en_sw.c index 628d69d197..a9aa435612 100644 --- a/src/overlays/actors/ovl_En_Sw/z_en_sw.c +++ b/src/overlays/actors/ovl_En_Sw/z_en_sw.c @@ -48,15 +48,29 @@ ActorProfile En_Sw_Profile = { /**/ EnSw_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { - { ELEM_MATERIAL_UNK0, { 0xFFCFFFFF, 0x00, 0x08 }, { 0xFFC3FFFE, 0x00, 0x00 }, 0x01, 0x05, 0x01 }, + { + ELEM_MATERIAL_UNK0, + { 0xFFCFFFFF, 0x00, 0x08 }, + { 0xFFC3FFFE, 0x00, 0x00 }, + ATELEM_ON | ATELEM_SFX_NORMAL, + ACELEM_ON | ACELEM_HOOKABLE, + OCELEM_ON, + }, { 2, { { 0, -300, 0 }, 21 }, 100 }, }, }; static ColliderJntSphInit sJntSphInit = { - { COL_MATERIAL_HIT6, 0x11, 0x09, 0x39, 0x10, COLSHAPE_JNTSPH }, + { + COL_MATERIAL_HIT6, + AT_ON | AT_TYPE_ENEMY, + AC_ON | AC_TYPE_PLAYER, + OC1_ON | OC1_TYPE_ALL, + OC2_TYPE_1, + COLSHAPE_JNTSPH, + }, 1, sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Tite/z_en_tite.c b/src/overlays/actors/ovl_En_Tite/z_en_tite.c index 1f45f2541b..9cbe4e7ac8 100644 --- a/src/overlays/actors/ovl_En_Tite/z_en_tite.c +++ b/src/overlays/actors/ovl_En_Tite/z_en_tite.c @@ -102,7 +102,7 @@ ActorProfile En_Tite_Profile = { /**/ EnTite_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Tp/z_en_tp.c b/src/overlays/actors/ovl_En_Tp/z_en_tp.c index 59519acfd0..b0a31fbe59 100644 --- a/src/overlays/actors/ovl_En_Tp/z_en_tp.c +++ b/src/overlays/actors/ovl_En_Tp/z_en_tp.c @@ -68,7 +68,7 @@ ActorProfile En_Tp_Profile = { /**/ EnTp_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Trap/z_en_trap.c b/src/overlays/actors/ovl_En_Trap/z_en_trap.c index 22b44abdfc..4a8cee9fda 100644 --- a/src/overlays/actors/ovl_En_Trap/z_en_trap.c +++ b/src/overlays/actors/ovl_En_Trap/z_en_trap.c @@ -61,7 +61,14 @@ static ColliderCylinderInit sCylinderInit = { OC2_TYPE_1, COLSHAPE_CYLINDER, }, - { ELEM_MATERIAL_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x00001000, 0x00, 0x00 }, ATELEM_NONE, ACELEM_ON, OCELEM_ON }, + { + ELEM_MATERIAL_UNK0, + { 0x00000000, 0x00, 0x00 }, + { 0x00001000, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_ON, + OCELEM_ON, + }, { 30, 20, 0, { 0, 0, 0 } }, }; diff --git a/src/overlays/actors/ovl_En_Tubo_Trap/z_en_tubo_trap.c b/src/overlays/actors/ovl_En_Tubo_Trap/z_en_tubo_trap.c index b7afe53f41..26ddde0720 100644 --- a/src/overlays/actors/ovl_En_Tubo_Trap/z_en_tubo_trap.c +++ b/src/overlays/actors/ovl_En_Tubo_Trap/z_en_tubo_trap.c @@ -50,7 +50,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_NONE, }, - { 9, 23, 0, { 0 } }, + { 9, 23, 0, { 0, 0, 0 } }, }; ActorProfile En_Tubo_Trap_Profile = { diff --git a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c index 7373f441a6..37d6d31ece 100644 --- a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c +++ b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c @@ -77,7 +77,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_ON, }, - { 30, 40, 0, { 0 } }, + { 30, 40, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit sColChkInfoInit = { 4, 30, 40, 150 }; diff --git a/src/overlays/actors/ovl_En_Wf/z_en_wf.c b/src/overlays/actors/ovl_En_Wf/z_en_wf.c index c651e4ff4a..344539bf5f 100644 --- a/src/overlays/actors/ovl_En_Wf/z_en_wf.c +++ b/src/overlays/actors/ovl_En_Wf/z_en_wf.c @@ -63,7 +63,7 @@ void EnWf_SetupDie(EnWf* this); void EnWf_Die(EnWf* this, PlayState* play); s32 EnWf_DodgeRanged(PlayState* play, EnWf* this); -static ColliderJntSphElementInit sJntSphElementsInit[4] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_En_Yabusame_Mark/z_en_yabusame_mark.c b/src/overlays/actors/ovl_En_Yabusame_Mark/z_en_yabusame_mark.c index ee1d8b8161..5e2cbc8c93 100644 --- a/src/overlays/actors/ovl_En_Yabusame_Mark/z_en_yabusame_mark.c +++ b/src/overlays/actors/ovl_En_Yabusame_Mark/z_en_yabusame_mark.c @@ -39,7 +39,7 @@ static ColliderQuadInit sQuadInit = { ELEM_MATERIAL_UNK0, { 0x00000000, 0x00, 0x00 }, { 0x0001F824, 0x00, 0x00 }, - ATELEM_NONE | ATELEM_SFX_NORMAL, + ATELEM_NONE, ACELEM_ON, OCELEM_NONE, }, diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index ce05c2858e..a9e5f0a464 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -224,7 +224,7 @@ static u8 sFishingPlayerCinematicState = 0; static u8 sFishingCinematicTimer = 0; static u8 sSinkingLureFound = false; -static ColliderJntSphElementInit sJntSphElementsInit[12] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, @@ -363,7 +363,7 @@ static ColliderJntSphInit sJntSphInit = { { COL_MATERIAL_NONE, AT_TYPE_ENEMY, - AC_TYPE_PLAYER, + AC_NONE | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, diff --git a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c index 06254d6ca6..01a617a92b 100644 --- a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c +++ b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c @@ -79,7 +79,7 @@ static ColliderQuadInit sQuadInit = { { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c b/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c index 1ebc95cff8..d1d5b69497 100644 --- a/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c +++ b/src/overlays/actors/ovl_Obj_Bombiwa/z_obj_bombiwa.c @@ -57,7 +57,7 @@ static ColliderCylinderInit sCylinderInit = { ACELEM_ON, OCELEM_ON, }, - { 55, 70, 0, { 0 } }, + { 55, 70, 0, { 0, 0, 0 } }, }; static CollisionCheckInfoInit sColChkInfoInit = { 0, 12, 60, MASS_IMMOVABLE }; diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c index 9430414f3e..ccbf175863 100644 --- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c +++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c @@ -43,7 +43,7 @@ ActorProfile Obj_Comb_Profile = { /**/ ObjComb_Draw, }; -static ColliderJntSphElementInit sJntSphElementsInit[1] = { +static ColliderJntSphElementInit sJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, diff --git a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c index 4b14301498..48ac3219fd 100644 --- a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c +++ b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c @@ -39,12 +39,19 @@ ActorProfile Obj_Dekujr_Profile = { static ColliderCylinderInitToActor sCylinderInit = { { NULL, - 0x00, - 0x00, - 0x39, + AT_NONE, + AC_NONE, + OC1_ON | OC1_TYPE_ALL, COLSHAPE_CYLINDER, }, - { 0x02, { 0x00000000, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, + { + ELEM_MATERIAL_UNK2, + { 0x00000000, 0x00, 0x00 }, + { 0xFFCFFFFF, 0x00, 0x00 }, + ATELEM_NONE, + ACELEM_NONE, + OCELEM_ON, + }, { 60, 80, 0, { 0, 0, 0 } }, }; diff --git a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c index f8cc6397f8..a327267d23 100644 --- a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c +++ b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c @@ -87,7 +87,7 @@ static f32 sFocusHeights[] = { 30, // OBJSWITCH_TYPE_CRYSTAL_TARGETABLE }; -static ColliderTrisElementInit sRustyFloorTrisElementsInit[2] = { +static ColliderTrisElementInit sRustyFloorTrisElementsInit[] = { { { ELEM_MATERIAL_UNK0, @@ -125,7 +125,7 @@ static ColliderTrisInit sRustyFloorTrisInit = { sRustyFloorTrisElementsInit, }; -static ColliderTrisElementInit sEyeTrisElementsInit[2] = { +static ColliderTrisElementInit sEyeTrisElementsInit[] = { { { ELEM_MATERIAL_UNK4, @@ -163,7 +163,7 @@ static ColliderTrisInit sEyeTrisInit = { sEyeTrisElementsInit, }; -static ColliderJntSphElementInit sCrystalJntSphElementsInit[1] = { +static ColliderJntSphElementInit sCrystalJntSphElementsInit[] = { { { ELEM_MATERIAL_UNK0, From affb39624f503921cc57439e735e9ba4e72f9cb6 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 24 Jun 2025 23:08:26 +0100 Subject: [PATCH 07/11] Pause docs: "uiOverlay" quads (renamed from "InfoPanel") (#2635) * Pause docs: "InfoPanel" quads * bss * rename infoPanelVtx to decorVtx * rename to uiOverlayVtx / UI_OVERLAY_QUAD_ * fixup --- .../icon_item_static/icon_item_static.c | 20 +- .../icon_item_static/icon_item_static.h | 2 +- assets/xml/textures/icon_item_static.xml | 6 +- assets/xml/textures/icon_item_static_pal.xml | 6 +- include/pause.h | 2 +- .../misc/ovl_kaleido_scope/z_kaleido_scope.c | 272 ++++++++++-------- .../misc/ovl_kaleido_scope/z_kaleido_scope.h | 11 + 7 files changed, 181 insertions(+), 138 deletions(-) diff --git a/assets/textures/icon_item_static/icon_item_static.c b/assets/textures/icon_item_static/icon_item_static.c index 2adb277ebd..1eaccace0b 100644 --- a/assets/textures/icon_item_static/icon_item_static.c +++ b/assets/textures/icon_item_static/icon_item_static.c @@ -710,16 +710,16 @@ u64 gCBtnSymbolsTex[TEX_LEN(u64, gCBtnSymbolsTex_WIDTH, gCBtnSymbolsTex_HEIGHT, #include "assets/textures/icon_item_static/gCBtnSymbolsTex.ia8.inc.c" }; -#define gNamePanelLeftTex_WIDTH 72 -#define gNamePanelLeftTex_HEIGHT 24 -u64 gNamePanelLeftTex[TEX_LEN(u64, gNamePanelLeftTex_WIDTH, gNamePanelLeftTex_HEIGHT, 8)] = { -#include "assets/textures/icon_item_static/gNamePanelLeftTex.ia8.inc.c" +#define gInfoPanelBgLeftTex_WIDTH 72 +#define gInfoPanelBgLeftTex_HEIGHT 24 +u64 gInfoPanelBgLeftTex[TEX_LEN(u64, gInfoPanelBgLeftTex_WIDTH, gInfoPanelBgLeftTex_HEIGHT, 8)] = { +#include "assets/textures/icon_item_static/gInfoPanelBgLeftTex.ia8.inc.c" }; -#define gNamePanelRightTex_WIDTH 72 -#define gNamePanelRightTex_HEIGHT 24 -u64 gNamePanelRightTex[TEX_LEN(u64, gNamePanelRightTex_WIDTH, gNamePanelRightTex_HEIGHT, 8)] = { -#include "assets/textures/icon_item_static/gNamePanelRightTex.ia8.inc.c" +#define gInfoPanelBgRightTex_WIDTH 72 +#define gInfoPanelBgRightTex_HEIGHT 24 +u64 gInfoPanelBgRightTex[TEX_LEN(u64, gInfoPanelBgRightTex_WIDTH, gInfoPanelBgRightTex_HEIGHT, 8)] = { +#include "assets/textures/icon_item_static/gInfoPanelBgRightTex.ia8.inc.c" }; #define gLButtonTex_WIDTH 24 @@ -748,8 +748,8 @@ u64 gMagicArrowEquipEffectTex[TEX_LEN(u64, gMagicArrowEquipEffectTex_WIDTH, gMag #include "assets/textures/icon_item_static/gMagicArrowEquipEffectTex.ia8.inc.c" }; -Gfx gItemNamePanelDL[18] = { -#include "assets/textures/icon_item_static/gItemNamePanelDL.inc.c" +Gfx gInfoPanelBgDL[18] = { +#include "assets/textures/icon_item_static/gInfoPanelBgDL.inc.c" }; Gfx gLButtonIconDL[10] = { diff --git a/assets/textures/icon_item_static/icon_item_static.h b/assets/textures/icon_item_static/icon_item_static.h index e8aff38236..8e0a51e1e8 100644 --- a/assets/textures/icon_item_static/icon_item_static.h +++ b/assets/textures/icon_item_static/icon_item_static.h @@ -193,7 +193,7 @@ extern u64 gSongNoteTex[TEX_LEN(u64, gSongNoteTex_WIDTH, gSongNoteTex_HEIGHT, 8) #define gMagicArrowEquipEffectTex_HEIGHT gMagicArrowEquipEffectTex_SIZE extern u64 gMagicArrowEquipEffectTex[TEX_LEN(u64, gMagicArrowEquipEffectTex_WIDTH, gMagicArrowEquipEffectTex_HEIGHT, 8)]; -extern Gfx gItemNamePanelDL[18]; +extern Gfx gInfoPanelBgDL[18]; extern Gfx gLButtonIconDL[10]; extern Gfx gRButtonIconDL[10]; extern Gfx gCButtonIconsDL[11]; diff --git a/assets/xml/textures/icon_item_static.xml b/assets/xml/textures/icon_item_static.xml index 2d67bfa108..4454a3316f 100644 --- a/assets/xml/textures/icon_item_static.xml +++ b/assets/xml/textures/icon_item_static.xml @@ -169,14 +169,14 @@ - - + + - + diff --git a/assets/xml/textures/icon_item_static_pal.xml b/assets/xml/textures/icon_item_static_pal.xml index 161d4039a0..1869bb2ff1 100644 --- a/assets/xml/textures/icon_item_static_pal.xml +++ b/assets/xml/textures/icon_item_static_pal.xml @@ -171,14 +171,14 @@ - - + + - + diff --git a/include/pause.h b/include/pause.h index f8a54fc5dd..d5f348a03c 100644 --- a/include/pause.h +++ b/include/pause.h @@ -168,7 +168,7 @@ typedef struct PauseContext { /* 0x0148 */ Vtx* equipPageVtx; /* 0x014C */ Vtx* mapPageVtx; /* 0x0150 */ Vtx* questPageVtx; - /* 0x0154 */ Vtx* infoPanelVtx; + /* 0x0154 */ Vtx* uiOverlayVtx; /* 0x0158 */ Vtx* itemVtx; /* 0x015C */ Vtx* equipVtx; /* 0x0160 */ char unk_160[0x04]; 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 97fd16e709..d07457d690 100644 --- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c +++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c @@ -1649,7 +1649,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[] = @@ -1744,90 +1747,94 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { } temp = pauseCtx->infoPanelOffsetY - 76; - for (j = 0, i = 0; i < 7; i++, j += 4) { - pauseCtx->infoPanelVtx[j + 0].v.ob[0] = pauseCtx->infoPanelVtx[j + 2].v.ob[0] = -72; + for (j = 0, i = 0; i < UI_OVERLAY_QUAD_MAX; i++, j += 4) { + pauseCtx->uiOverlayVtx[j + 0].v.ob[0] = pauseCtx->uiOverlayVtx[j + 2].v.ob[0] = -72; - pauseCtx->infoPanelVtx[j + 1].v.ob[0] = pauseCtx->infoPanelVtx[j + 3].v.ob[0] = 0; + pauseCtx->uiOverlayVtx[j + 1].v.ob[0] = pauseCtx->uiOverlayVtx[j + 3].v.ob[0] = 0; - pauseCtx->infoPanelVtx[j + 0].v.ob[1] = pauseCtx->infoPanelVtx[j + 1].v.ob[1] = temp; + pauseCtx->uiOverlayVtx[j + 0].v.ob[1] = pauseCtx->uiOverlayVtx[j + 1].v.ob[1] = temp; - pauseCtx->infoPanelVtx[j + 2].v.ob[1] = pauseCtx->infoPanelVtx[j + 3].v.ob[1] = temp - 24; + pauseCtx->uiOverlayVtx[j + 2].v.ob[1] = pauseCtx->uiOverlayVtx[j + 3].v.ob[1] = temp - 24; - pauseCtx->infoPanelVtx[j + 0].v.ob[2] = pauseCtx->infoPanelVtx[j + 1].v.ob[2] = - pauseCtx->infoPanelVtx[j + 2].v.ob[2] = pauseCtx->infoPanelVtx[j + 3].v.ob[2] = 0; + pauseCtx->uiOverlayVtx[j + 0].v.ob[2] = pauseCtx->uiOverlayVtx[j + 1].v.ob[2] = + pauseCtx->uiOverlayVtx[j + 2].v.ob[2] = pauseCtx->uiOverlayVtx[j + 3].v.ob[2] = 0; - pauseCtx->infoPanelVtx[j + 0].v.flag = pauseCtx->infoPanelVtx[j + 1].v.flag = - pauseCtx->infoPanelVtx[j + 2].v.flag = pauseCtx->infoPanelVtx[j + 3].v.flag = 0; + pauseCtx->uiOverlayVtx[j + 0].v.flag = pauseCtx->uiOverlayVtx[j + 1].v.flag = + pauseCtx->uiOverlayVtx[j + 2].v.flag = pauseCtx->uiOverlayVtx[j + 3].v.flag = 0; - pauseCtx->infoPanelVtx[j + 0].v.tc[0] = pauseCtx->infoPanelVtx[j + 0].v.tc[1] = - pauseCtx->infoPanelVtx[j + 1].v.tc[1] = pauseCtx->infoPanelVtx[j + 2].v.tc[0] = 0; + pauseCtx->uiOverlayVtx[j + 0].v.tc[0] = pauseCtx->uiOverlayVtx[j + 0].v.tc[1] = + pauseCtx->uiOverlayVtx[j + 1].v.tc[1] = pauseCtx->uiOverlayVtx[j + 2].v.tc[0] = 0; - pauseCtx->infoPanelVtx[j + 1].v.tc[0] = pauseCtx->infoPanelVtx[j + 3].v.tc[0] = 0x900; + pauseCtx->uiOverlayVtx[j + 1].v.tc[0] = pauseCtx->uiOverlayVtx[j + 3].v.tc[0] = 0x900; - pauseCtx->infoPanelVtx[j + 2].v.tc[1] = pauseCtx->infoPanelVtx[j + 3].v.tc[1] = 0x300; + pauseCtx->uiOverlayVtx[j + 2].v.tc[1] = pauseCtx->uiOverlayVtx[j + 3].v.tc[1] = 0x300; - pauseCtx->infoPanelVtx[j + 0].v.cn[0] = pauseCtx->infoPanelVtx[j + 2].v.cn[0] = - pauseCtx->infoPanelVtx[j + 0].v.cn[1] = pauseCtx->infoPanelVtx[j + 2].v.cn[1] = - pauseCtx->infoPanelVtx[j + 0].v.cn[2] = pauseCtx->infoPanelVtx[j + 2].v.cn[2] = - pauseCtx->infoPanelVtx[j + 1].v.cn[0] = pauseCtx->infoPanelVtx[j + 3].v.cn[0] = - pauseCtx->infoPanelVtx[j + 1].v.cn[1] = pauseCtx->infoPanelVtx[j + 3].v.cn[1] = - pauseCtx->infoPanelVtx[j + 1].v.cn[2] = pauseCtx->infoPanelVtx[j + 3].v.cn[2] = 200; + pauseCtx->uiOverlayVtx[j + 0].v.cn[0] = pauseCtx->uiOverlayVtx[j + 2].v.cn[0] = + pauseCtx->uiOverlayVtx[j + 0].v.cn[1] = pauseCtx->uiOverlayVtx[j + 2].v.cn[1] = + pauseCtx->uiOverlayVtx[j + 0].v.cn[2] = pauseCtx->uiOverlayVtx[j + 2].v.cn[2] = + pauseCtx->uiOverlayVtx[j + 1].v.cn[0] = pauseCtx->uiOverlayVtx[j + 3].v.cn[0] = + pauseCtx->uiOverlayVtx[j + 1].v.cn[1] = pauseCtx->uiOverlayVtx[j + 3].v.cn[1] = + pauseCtx->uiOverlayVtx[j + 1].v.cn[2] = pauseCtx->uiOverlayVtx[j + 3].v.cn[2] = 200; - pauseCtx->infoPanelVtx[j + 0].v.cn[3] = pauseCtx->infoPanelVtx[j + 2].v.cn[3] = - pauseCtx->infoPanelVtx[j + 1].v.cn[3] = pauseCtx->infoPanelVtx[j + 3].v.cn[3] = pauseCtx->alpha; + pauseCtx->uiOverlayVtx[j + 0].v.cn[3] = pauseCtx->uiOverlayVtx[j + 2].v.cn[3] = + pauseCtx->uiOverlayVtx[j + 1].v.cn[3] = pauseCtx->uiOverlayVtx[j + 3].v.cn[3] = pauseCtx->alpha; } - pauseCtx->infoPanelVtx[4].v.ob[0] = pauseCtx->infoPanelVtx[6].v.ob[0] = pauseCtx->infoPanelVtx[0].v.ob[0] + 72; + // 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->infoPanelVtx[5].v.ob[0] = pauseCtx->infoPanelVtx[7].v.ob[0] = pauseCtx->infoPanelVtx[4].v.ob[0] + 72; + pauseCtx->uiOverlayVtx[5].v.ob[0] = pauseCtx->uiOverlayVtx[7].v.ob[0] = pauseCtx->uiOverlayVtx[4].v.ob[0] + 72; + // UI_OVERLAY_QUAD_BUTTON_LEFT if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) && (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE)) { - pauseCtx->infoPanelVtx[8].v.ob[0] = pauseCtx->infoPanelVtx[10].v.ob[0] = WREG(16); + pauseCtx->uiOverlayVtx[8].v.ob[0] = pauseCtx->uiOverlayVtx[10].v.ob[0] = WREG(16); - pauseCtx->infoPanelVtx[9].v.ob[0] = pauseCtx->infoPanelVtx[11].v.ob[0] = pauseCtx->infoPanelVtx[8].v.ob[0] + 24; + pauseCtx->uiOverlayVtx[9].v.ob[0] = pauseCtx->uiOverlayVtx[11].v.ob[0] = pauseCtx->uiOverlayVtx[8].v.ob[0] + 24; - pauseCtx->infoPanelVtx[8].v.ob[1] = pauseCtx->infoPanelVtx[9].v.ob[1] = WREG(18); + pauseCtx->uiOverlayVtx[8].v.ob[1] = pauseCtx->uiOverlayVtx[9].v.ob[1] = WREG(18); - pauseCtx->infoPanelVtx[10].v.ob[1] = pauseCtx->infoPanelVtx[11].v.ob[1] = - pauseCtx->infoPanelVtx[8].v.ob[1] - 32; + pauseCtx->uiOverlayVtx[10].v.ob[1] = pauseCtx->uiOverlayVtx[11].v.ob[1] = + pauseCtx->uiOverlayVtx[8].v.ob[1] - 32; } else { - pauseCtx->infoPanelVtx[8].v.ob[0] = pauseCtx->infoPanelVtx[10].v.ob[0] = WREG(16) + 3; + pauseCtx->uiOverlayVtx[8].v.ob[0] = pauseCtx->uiOverlayVtx[10].v.ob[0] = WREG(16) + 3; - pauseCtx->infoPanelVtx[9].v.ob[0] = pauseCtx->infoPanelVtx[11].v.ob[0] = pauseCtx->infoPanelVtx[8].v.ob[0] + 18; + pauseCtx->uiOverlayVtx[9].v.ob[0] = pauseCtx->uiOverlayVtx[11].v.ob[0] = pauseCtx->uiOverlayVtx[8].v.ob[0] + 18; - pauseCtx->infoPanelVtx[8].v.ob[1] = pauseCtx->infoPanelVtx[9].v.ob[1] = WREG(18) - 3; + pauseCtx->uiOverlayVtx[8].v.ob[1] = pauseCtx->uiOverlayVtx[9].v.ob[1] = WREG(18) - 3; - pauseCtx->infoPanelVtx[10].v.ob[1] = pauseCtx->infoPanelVtx[11].v.ob[1] = - pauseCtx->infoPanelVtx[8].v.ob[1] - 26; + pauseCtx->uiOverlayVtx[10].v.ob[1] = pauseCtx->uiOverlayVtx[11].v.ob[1] = + pauseCtx->uiOverlayVtx[8].v.ob[1] - 26; } + // UI_OVERLAY_QUAD_BUTTON_RIGHT if ((pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_RIGHT) && (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE)) { - pauseCtx->infoPanelVtx[12].v.ob[0] = pauseCtx->infoPanelVtx[14].v.ob[0] = WREG(17); + pauseCtx->uiOverlayVtx[12].v.ob[0] = pauseCtx->uiOverlayVtx[14].v.ob[0] = WREG(17); - pauseCtx->infoPanelVtx[13].v.ob[0] = pauseCtx->infoPanelVtx[15].v.ob[0] = - pauseCtx->infoPanelVtx[12].v.ob[0] + 24; + pauseCtx->uiOverlayVtx[13].v.ob[0] = pauseCtx->uiOverlayVtx[15].v.ob[0] = + pauseCtx->uiOverlayVtx[12].v.ob[0] + 24; - pauseCtx->infoPanelVtx[12].v.ob[1] = pauseCtx->infoPanelVtx[13].v.ob[1] = WREG(18); + pauseCtx->uiOverlayVtx[12].v.ob[1] = pauseCtx->uiOverlayVtx[13].v.ob[1] = WREG(18); - pauseCtx->infoPanelVtx[14].v.ob[1] = pauseCtx->infoPanelVtx[15].v.ob[1] = - pauseCtx->infoPanelVtx[12].v.ob[1] - 32; + pauseCtx->uiOverlayVtx[14].v.ob[1] = pauseCtx->uiOverlayVtx[15].v.ob[1] = + pauseCtx->uiOverlayVtx[12].v.ob[1] - 32; } else { - pauseCtx->infoPanelVtx[12].v.ob[0] = pauseCtx->infoPanelVtx[14].v.ob[0] = WREG(17) + 3; + pauseCtx->uiOverlayVtx[12].v.ob[0] = pauseCtx->uiOverlayVtx[14].v.ob[0] = WREG(17) + 3; - pauseCtx->infoPanelVtx[13].v.ob[0] = pauseCtx->infoPanelVtx[15].v.ob[0] = - pauseCtx->infoPanelVtx[12].v.ob[0] + 18; + pauseCtx->uiOverlayVtx[13].v.ob[0] = pauseCtx->uiOverlayVtx[15].v.ob[0] = + pauseCtx->uiOverlayVtx[12].v.ob[0] + 18; - pauseCtx->infoPanelVtx[12].v.ob[1] = pauseCtx->infoPanelVtx[13].v.ob[1] = WREG(18) - 3; + pauseCtx->uiOverlayVtx[12].v.ob[1] = pauseCtx->uiOverlayVtx[13].v.ob[1] = WREG(18) - 3; - pauseCtx->infoPanelVtx[14].v.ob[1] = pauseCtx->infoPanelVtx[15].v.ob[1] = - pauseCtx->infoPanelVtx[12].v.ob[1] - 26; + pauseCtx->uiOverlayVtx[14].v.ob[1] = pauseCtx->uiOverlayVtx[15].v.ob[1] = + pauseCtx->uiOverlayVtx[12].v.ob[1] - 26; } - pauseCtx->infoPanelVtx[9].v.tc[0] = pauseCtx->infoPanelVtx[11].v.tc[0] = pauseCtx->infoPanelVtx[13].v.tc[0] = - pauseCtx->infoPanelVtx[15].v.tc[0] = 0x300; + // UI_OVERLAY_QUAD_BUTTON_LEFT, UI_OVERLAY_QUAD_BUTTON_RIGHT + pauseCtx->uiOverlayVtx[9].v.tc[0] = pauseCtx->uiOverlayVtx[11].v.tc[0] = pauseCtx->uiOverlayVtx[13].v.tc[0] = + pauseCtx->uiOverlayVtx[15].v.tc[0] = 0x300; - pauseCtx->infoPanelVtx[10].v.tc[1] = pauseCtx->infoPanelVtx[11].v.tc[1] = pauseCtx->infoPanelVtx[14].v.tc[1] = - pauseCtx->infoPanelVtx[15].v.tc[1] = 0x400; + pauseCtx->uiOverlayVtx[10].v.tc[1] = pauseCtx->uiOverlayVtx[11].v.tc[1] = pauseCtx->uiOverlayVtx[14].v.tc[1] = + pauseCtx->uiOverlayVtx[15].v.tc[1] = 0x400; gDPSetCombineMode(POLY_OPA_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM); @@ -1837,14 +1844,16 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { MATRIX_FINALIZE_AND_LOAD(POLY_OPA_DISP++, play->state.gfxCtx, "../z_kaleido_scope_PAL.c", 1755); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 90, 100, 130, 255); - gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[0], 16, 0); + gSPVertex(POLY_OPA_DISP++, &pauseCtx->uiOverlayVtx[0], 16, 0); - gSPDisplayList(POLY_OPA_DISP++, gItemNamePanelDL); + // 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)) { gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6); } + // Draw UI_OVERLAY_QUAD_BUTTON_LEFT gSPDisplayList(POLY_OPA_DISP++, gLButtonIconDL); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 180, 210, 255, 220); @@ -1853,21 +1862,23 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, D_808321A0, D_808321A2, D_808321A4, D_808321A6); } + // Draw UI_OVERLAY_QUAD_BUTTON_RIGHT gSPDisplayList(POLY_OPA_DISP++, gRButtonIconDL); if (pauseCtx->cursorSpecialPos != 0) { j = (pauseCtx->cursorSpecialPos - 8) * 4; - pauseCtx->cursorVtx[0].v.ob[0] = pauseCtx->infoPanelVtx[j].v.ob[0]; - pauseCtx->cursorVtx[0].v.ob[1] = pauseCtx->infoPanelVtx[j].v.ob[1]; + pauseCtx->cursorVtx[0].v.ob[0] = pauseCtx->uiOverlayVtx[j].v.ob[0]; + pauseCtx->cursorVtx[0].v.ob[1] = pauseCtx->uiOverlayVtx[j].v.ob[1]; KaleidoScope_DrawCursor(play, pauseCtx->pageIndex); } + // UI_OVERLAY_QUAD_INFO_ICON temp = pauseCtx->infoPanelOffsetY - 80; - pauseCtx->infoPanelVtx[16].v.ob[1] = pauseCtx->infoPanelVtx[17].v.ob[1] = temp; + pauseCtx->uiOverlayVtx[16].v.ob[1] = pauseCtx->uiOverlayVtx[17].v.ob[1] = temp; - pauseCtx->infoPanelVtx[18].v.ob[1] = pauseCtx->infoPanelVtx[19].v.ob[1] = pauseCtx->infoPanelVtx[16].v.ob[1] - 16; + pauseCtx->uiOverlayVtx[18].v.ob[1] = pauseCtx->uiOverlayVtx[19].v.ob[1] = pauseCtx->uiOverlayVtx[16].v.ob[1] - 16; - pauseCtx->infoPanelVtx[18].v.tc[1] = pauseCtx->infoPanelVtx[19].v.tc[1] = 0x200; + pauseCtx->uiOverlayVtx[18].v.tc[1] = pauseCtx->uiOverlayVtx[19].v.tc[1] = 0x200; gDPPipeSync(POLY_OPA_DISP++); gDPSetCombineLERP(POLY_OPA_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, @@ -1887,14 +1898,16 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { ((pauseCtx->mainState >= PAUSE_MAIN_STATE_SONG_PROMPT_INIT) && (pauseCtx->mainState <= PAUSE_MAIN_STATE_EQUIP_CHANGED)) || (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE_CURSOR_ON_SONG)) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63; - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 128; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = -63; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x1000; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 128; - gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[16], 4, 0); + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x1000; + + gSPVertex(POLY_OPA_DISP++, &pauseCtx->uiOverlayVtx[16], 4, 0); if (pauseCtx->nameColorSet == 1) { gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 70, 70, 70, 255); @@ -1928,21 +1941,22 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { if (GET_GS_FLAGS(D_8082AE30[pauseCtx->cursorPoint[PAUSE_WORLD_MAP]]) == gAreaGsFlags[D_8082AE30[pauseCtx->cursorPoint[PAUSE_WORLD_MAP]]]) { - pauseCtx->infoPanelVtx[24].v.ob[0] = pauseCtx->infoPanelVtx[26].v.ob[0] = -74; + // UI_OVERLAY_QUAD_HAVE_ALL_GS + pauseCtx->uiOverlayVtx[24].v.ob[0] = pauseCtx->uiOverlayVtx[26].v.ob[0] = -74; - pauseCtx->infoPanelVtx[25].v.ob[0] = pauseCtx->infoPanelVtx[27].v.ob[0] = - pauseCtx->infoPanelVtx[24].v.ob[0] + 19; + pauseCtx->uiOverlayVtx[25].v.ob[0] = pauseCtx->uiOverlayVtx[27].v.ob[0] = + pauseCtx->uiOverlayVtx[24].v.ob[0] + 19; - pauseCtx->infoPanelVtx[24].v.ob[1] = pauseCtx->infoPanelVtx[25].v.ob[1] = - pauseCtx->infoPanelVtx[24].v.ob[1] - 2; + pauseCtx->uiOverlayVtx[24].v.ob[1] = pauseCtx->uiOverlayVtx[25].v.ob[1] = + pauseCtx->uiOverlayVtx[24].v.ob[1] - 2; - pauseCtx->infoPanelVtx[26].v.ob[1] = pauseCtx->infoPanelVtx[27].v.ob[1] = - pauseCtx->infoPanelVtx[24].v.ob[1] - 19; + pauseCtx->uiOverlayVtx[26].v.ob[1] = pauseCtx->uiOverlayVtx[27].v.ob[1] = + pauseCtx->uiOverlayVtx[24].v.ob[1] - 19; - pauseCtx->infoPanelVtx[25].v.tc[0] = pauseCtx->infoPanelVtx[27].v.tc[0] = 0x300; + pauseCtx->uiOverlayVtx[25].v.tc[0] = pauseCtx->uiOverlayVtx[27].v.tc[0] = 0x300; gDPPipeSync(POLY_OPA_DISP++); - gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[24], 4, 0); + gSPVertex(POLY_OPA_DISP++, &pauseCtx->uiOverlayVtx[24], 4, 0); gDPSetCombineLERP(POLY_OPA_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); @@ -1955,31 +1969,36 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { } } else if ((pauseCtx->mainState < PAUSE_MAIN_STATE_3) || (pauseCtx->mainState == PAUSE_MAIN_STATE_EQUIP_CHANGED) || (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE_CURSOR_ON_SONG)) { - pauseCtx->infoPanelVtx[20].v.ob[1] = pauseCtx->infoPanelVtx[21].v.ob[1] = temp; + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[20].v.ob[1] = pauseCtx->uiOverlayVtx[21].v.ob[1] = temp; - pauseCtx->infoPanelVtx[22].v.ob[1] = pauseCtx->infoPanelVtx[23].v.ob[1] = - pauseCtx->infoPanelVtx[20].v.ob[1] - 16; + pauseCtx->uiOverlayVtx[22].v.ob[1] = pauseCtx->uiOverlayVtx[23].v.ob[1] = + pauseCtx->uiOverlayVtx[20].v.ob[1] - 16; - pauseCtx->infoPanelVtx[22].v.tc[1] = pauseCtx->infoPanelVtx[23].v.tc[1] = 0x200; + pauseCtx->uiOverlayVtx[22].v.tc[1] = pauseCtx->uiOverlayVtx[23].v.tc[1] = 0x200; - gSPVertex(POLY_OPA_DISP++, &pauseCtx->infoPanelVtx[16], 8, 0); + gSPVertex(POLY_OPA_DISP++, &pauseCtx->uiOverlayVtx[16], 8, 0); if (pauseCtx->state == PAUSE_STATE_SAVE_PROMPT) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = R_KALEIDO_UNK5(gSaveContext.language); - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 24; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 24; - pauseCtx->infoPanelVtx[20].v.ob[0] = pauseCtx->infoPanelVtx[22].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[20].v.ob[0] = pauseCtx->uiOverlayVtx[22].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); - pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] = - pauseCtx->infoPanelVtx[20].v.ob[0] + sToDecideTextWidths[gSaveContext.language]; + pauseCtx->uiOverlayVtx[21].v.ob[0] = pauseCtx->uiOverlayVtx[23].v.ob[0] = + pauseCtx->uiOverlayVtx[20].v.ob[0] + sToDecideTextWidths[gSaveContext.language]; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x300; - pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] = + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[21].v.tc[0] = pauseCtx->uiOverlayVtx[23].v.tc[0] = sToDecideTextWidths[gSaveContext.language] << 5; gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL); @@ -1991,12 +2010,13 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { sToDecideTextWidths[gSaveContext.language], 16, 4); } else if (pauseCtx->cursorSpecialPos != 0) { if ((pauseCtx->state == PAUSE_STATE_MAIN) && (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE)) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = -63; - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 128; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 128; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x1000; + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x1000; gDPPipeSync(POLY_OPA_DISP++); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 200, 0, 255); @@ -2013,21 +2033,25 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { } } else { if ((u32)pauseCtx->pageIndex == PAUSE_ITEM) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = R_KALEIDO_UNK1(gSaveContext.language); - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 48; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 48; - pauseCtx->infoPanelVtx[20].v.ob[0] = pauseCtx->infoPanelVtx[22].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK4(gSaveContext.language); + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[20].v.ob[0] = pauseCtx->uiOverlayVtx[22].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + R_KALEIDO_UNK4(gSaveContext.language); - pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] = - pauseCtx->infoPanelVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language]; + pauseCtx->uiOverlayVtx[21].v.ob[0] = pauseCtx->uiOverlayVtx[23].v.ob[0] = + pauseCtx->uiOverlayVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language]; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x600; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x600; - pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] = + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[21].v.tc[0] = pauseCtx->uiOverlayVtx[23].v.tc[0] = sToEquipTextWidths[gSaveContext.language] << 5; gSPDisplayList(POLY_OPA_DISP++, gCButtonIconsDL); @@ -2042,28 +2066,32 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { } else if ((pauseCtx->pageIndex == PAUSE_QUEST) && ((pauseCtx->cursorSlot[PAUSE_QUEST] >= 6) && (pauseCtx->cursorSlot[PAUSE_QUEST] <= 0x11))) { if (pauseCtx->namedItem != PAUSE_ITEM_NONE) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = R_KALEIDO_UNK3(gSaveContext.language); - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 24; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 24; - pauseCtx->infoPanelVtx[20].v.ob[0] = pauseCtx->infoPanelVtx[22].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[20].v.ob[0] = pauseCtx->uiOverlayVtx[22].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); #if OOT_PAL if (gSaveContext.language == LANGUAGE_GER) { - pauseCtx->infoPanelVtx[20].v.ob[0] = pauseCtx->infoPanelVtx[22].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] - 99; + pauseCtx->uiOverlayVtx[20].v.ob[0] = pauseCtx->uiOverlayVtx[22].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] - 99; } #endif - pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] = - pauseCtx->infoPanelVtx[20].v.ob[0] + sToPlayMelodyTextWidths[gSaveContext.language]; + pauseCtx->uiOverlayVtx[21].v.ob[0] = pauseCtx->uiOverlayVtx[23].v.ob[0] = + pauseCtx->uiOverlayVtx[20].v.ob[0] + sToPlayMelodyTextWidths[gSaveContext.language]; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x300; - pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] = + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[21].v.tc[0] = pauseCtx->uiOverlayVtx[23].v.tc[0] = sToPlayMelodyTextWidths[gSaveContext.language] << 5; gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL); @@ -2076,21 +2104,25 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) { sToPlayMelodyTextWidths[gSaveContext.language], 16, 4); } } else if (pauseCtx->pageIndex == PAUSE_EQUIP) { - pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[16].v.ob[0] = pauseCtx->uiOverlayVtx[18].v.ob[0] = R_KALEIDO_UNK6(gSaveContext.language); - pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + 24; + pauseCtx->uiOverlayVtx[17].v.ob[0] = pauseCtx->uiOverlayVtx[19].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + 24; - pauseCtx->infoPanelVtx[20].v.ob[0] = pauseCtx->infoPanelVtx[22].v.ob[0] = - pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[20].v.ob[0] = pauseCtx->uiOverlayVtx[22].v.ob[0] = + pauseCtx->uiOverlayVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language); - pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] = - pauseCtx->infoPanelVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language]; + pauseCtx->uiOverlayVtx[21].v.ob[0] = pauseCtx->uiOverlayVtx[23].v.ob[0] = + pauseCtx->uiOverlayVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language]; - pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300; + // UI_OVERLAY_QUAD_INFO_ICON + pauseCtx->uiOverlayVtx[17].v.tc[0] = pauseCtx->uiOverlayVtx[19].v.tc[0] = 0x300; - pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] = + // UI_OVERLAY_QUAD_INFO_TEXT + pauseCtx->uiOverlayVtx[21].v.tc[0] = pauseCtx->uiOverlayVtx[23].v.tc[0] = sToEquipTextWidths[gSaveContext.language] << 5; gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL); @@ -3328,7 +3360,7 @@ void KaleidoScope_SetVertices(PlayState* play, GraphicsContext* gfxCtx) { pauseCtx->questVtx[k + 3].v.cn[3] = pauseCtx->alpha; } - pauseCtx->infoPanelVtx = GRAPH_ALLOC(gfxCtx, 28 * sizeof(Vtx)); + pauseCtx->uiOverlayVtx = GRAPH_ALLOC(gfxCtx, (UI_OVERLAY_QUAD_MAX * 4) * sizeof(Vtx)); pauseCtx->promptPageVtx = GRAPH_ALLOC(gfxCtx, ((PAGE_BG_QUADS + VTX_PAGE_PROMPT_QUADS) * 4) * sizeof(Vtx)); KaleidoScope_SetPageVertices(play, pauseCtx->promptPageVtx, VTX_PAGE_PROMPT, VTX_PAGE_PROMPT_QUADS); @@ -3411,7 +3443,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 566b087e68..3e0b112ae2 100644 --- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h +++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h @@ -221,6 +221,17 @@ typedef enum ItemQuad { #define TO_PAGE_LABEL_TEX_WIDTH 128 #define TO_PAGE_LABEL_TEX_HEIGHT 16 +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 +} UIOverlayQuad; + void KaleidoScope_DrawQuestStatus(struct PlayState* play, GraphicsContext* gfxCtx); s32 KaleidoScope_UpdateQuestStatusPoint(PauseContext* pauseCtx, s32 point); void KaleidoScope_DrawInventoryEditor(struct PlayState* play); From 6234d7f2aa28fe7f073cbbbb4b36588e35a7d482 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Wed, 25 Jun 2025 12:09:14 +0100 Subject: [PATCH 08/11] Commit objects 1: `tp`, `triforce_spot`, `umajump`, `vase`, `yukabyun`, `zg` (#2634) * commit object_zg * commit object_yukabyun * commit object_vase * commit object_umajump * commit object_triforce_spot * commit object_tp * fixup1 * format --- assets/objects/object_tp/object_tp.c | 52 +++++++++++++++++++ assets/objects/object_tp/object_tp.h | 34 ++++++++++++ .../object_triforce_spot.c | 30 +++++++++++ .../object_triforce_spot.h | 24 +++++++++ .../object_umajump/gJumpableHorseFenceCol.c | 24 +++++++++ .../object_umajump/gJumpableHorseFenceDL.c | 25 +++++++++ .../objects/object_umajump/object_umajump.h | 10 ++++ assets/objects/object_vase/gUnusedVaseDL.c | 18 +++++++ assets/objects/object_vase/object_vase.h | 19 +++++++ .../object_yukabyun/gFloorTileEnemyDL.c | 14 +++++ .../gFloorTileEnemyFragmentDL.c | 19 +++++++ .../objects/object_yukabyun/object_yukabyun.h | 23 ++++++++ .../objects/object_zg/gTowerCollapseBarsCol.c | 24 +++++++++ .../objects/object_zg/gTowerCollapseBarsDL.c | 23 ++++++++ assets/objects/object_zg/object_zg.h | 11 ++++ spec/spec | 11 ++-- tools/assets/extract/write_source.txt | 6 --- 17 files changed, 357 insertions(+), 10 deletions(-) create mode 100644 assets/objects/object_tp/object_tp.c create mode 100644 assets/objects/object_tp/object_tp.h create mode 100644 assets/objects/object_triforce_spot/object_triforce_spot.c create mode 100644 assets/objects/object_triforce_spot/object_triforce_spot.h create mode 100644 assets/objects/object_umajump/gJumpableHorseFenceCol.c create mode 100644 assets/objects/object_umajump/gJumpableHorseFenceDL.c create mode 100644 assets/objects/object_umajump/object_umajump.h create mode 100644 assets/objects/object_vase/gUnusedVaseDL.c create mode 100644 assets/objects/object_vase/object_vase.h create mode 100644 assets/objects/object_yukabyun/gFloorTileEnemyDL.c create mode 100644 assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.c create mode 100644 assets/objects/object_yukabyun/object_yukabyun.h create mode 100644 assets/objects/object_zg/gTowerCollapseBarsCol.c create mode 100644 assets/objects/object_zg/gTowerCollapseBarsDL.c create mode 100644 assets/objects/object_zg/object_zg.h diff --git a/assets/objects/object_tp/object_tp.c b/assets/objects/object_tp/object_tp.c new file mode 100644 index 0000000000..b79b3b4cdf --- /dev/null +++ b/assets/objects/object_tp/object_tp.c @@ -0,0 +1,52 @@ +#include "object_tp.h" +#include "gfx.h" + +Gfx gTailpasaranTailSegmentDL[14] = { +#include "assets/objects/object_tp/gTailpasaranTailSegmentDL.inc.c" +}; + +Vtx gTailpasaranTailSegmentVtx[] = { +#include "assets/objects/object_tp/gTailpasaranTailSegmentVtx.inc.c" +}; + +Vtx gTailpasaranHeadClawVtx[] = { +#include "assets/objects/object_tp/gTailpasaranHeadClawVtx.inc.c" +}; + +Vtx gTailpasaranHeadMouthpartsVtx[] = { +#include "assets/objects/object_tp/gTailpasaranHeadMouthpartsVtx.inc.c" +}; + +Gfx gTailpasaranHeadClawDL[54] = { +#include "assets/objects/object_tp/gTailpasaranHeadClawDL.inc.c" +}; + +Gfx gTailpasaranHeadMouthpartsDL[18] = { +#include "assets/objects/object_tp/gTailpasaranHeadMouthpartsDL.inc.c" +}; + +Gfx gTailpasaranHeadDL[3] = { +#include "assets/objects/object_tp/gTailpasaranHeadDL.inc.c" +}; + +u64 gTailpasaranHeadRearTex[TEX_LEN(u64, gTailpasaranHeadRearTex_WIDTH, gTailpasaranHeadRearTex_HEIGHT, 16)] = { +#include "assets/objects/object_tp/gTailpasaranHeadRearTex.rgba16.inc.c" +}; + +u64 gTailpasaranHeadClawBaseTex[TEX_LEN(u64, gTailpasaranHeadClawBaseTex_WIDTH, gTailpasaranHeadClawBaseTex_HEIGHT, + 16)] = { +#include "assets/objects/object_tp/gTailpasaranHeadClawBaseTex.rgba16.inc.c" +}; + +u64 gTailpasaranHeadClawTex[TEX_LEN(u64, gTailpasaranHeadClawTex_WIDTH, gTailpasaranHeadClawTex_HEIGHT, 16)] = { +#include "assets/objects/object_tp/gTailpasaranHeadClawTex.rgba16.inc.c" +}; + +u64 gTailpasaranTailSegmentTex[TEX_LEN(u64, gTailpasaranTailSegmentTex_WIDTH, gTailpasaranTailSegmentTex_HEIGHT, 8)] = { +#include "assets/objects/object_tp/gTailpasaranTailSegmentTex.ia8.inc.c" +}; + +u64 gTailpasaranHeadMouthpartsTex[TEX_LEN(u64, gTailpasaranHeadMouthpartsTex_WIDTH, + gTailpasaranHeadMouthpartsTex_HEIGHT, 16)] = { +#include "assets/objects/object_tp/gTailpasaranHeadMouthpartsTex.rgba16.inc.c" +}; diff --git a/assets/objects/object_tp/object_tp.h b/assets/objects/object_tp/object_tp.h new file mode 100644 index 0000000000..004facfb58 --- /dev/null +++ b/assets/objects/object_tp/object_tp.h @@ -0,0 +1,34 @@ +#ifndef OBJECT_TP_H +#define OBJECT_TP_H + +#include "ultra64.h" +#include "tex_len.h" + +extern Gfx gTailpasaranTailSegmentDL[14]; +extern Vtx gTailpasaranTailSegmentVtx[]; + +extern Gfx gTailpasaranHeadClawDL[54]; +extern Gfx gTailpasaranHeadMouthpartsDL[18]; +extern Gfx gTailpasaranHeadDL[3]; + +#define gTailpasaranHeadRearTex_WIDTH 8 +#define gTailpasaranHeadRearTex_HEIGHT 16 +extern u64 gTailpasaranHeadRearTex[TEX_LEN(u64, gTailpasaranHeadRearTex_WIDTH, gTailpasaranHeadRearTex_HEIGHT, 16)]; + +#define gTailpasaranHeadClawBaseTex_WIDTH 8 +#define gTailpasaranHeadClawBaseTex_HEIGHT 8 +extern u64 gTailpasaranHeadClawBaseTex[TEX_LEN(u64, gTailpasaranHeadClawBaseTex_WIDTH, gTailpasaranHeadClawBaseTex_HEIGHT, 16)]; + +#define gTailpasaranHeadClawTex_WIDTH 16 +#define gTailpasaranHeadClawTex_HEIGHT 16 +extern u64 gTailpasaranHeadClawTex[TEX_LEN(u64, gTailpasaranHeadClawTex_WIDTH, gTailpasaranHeadClawTex_HEIGHT, 16)]; + +#define gTailpasaranTailSegmentTex_WIDTH 64 +#define gTailpasaranTailSegmentTex_HEIGHT 64 +extern u64 gTailpasaranTailSegmentTex[TEX_LEN(u64, gTailpasaranTailSegmentTex_WIDTH, gTailpasaranTailSegmentTex_HEIGHT, 8)]; + +#define gTailpasaranHeadMouthpartsTex_WIDTH 8 +#define gTailpasaranHeadMouthpartsTex_HEIGHT 8 +extern u64 gTailpasaranHeadMouthpartsTex[TEX_LEN(u64, gTailpasaranHeadMouthpartsTex_WIDTH, gTailpasaranHeadMouthpartsTex_HEIGHT, 16)]; + +#endif diff --git a/assets/objects/object_triforce_spot/object_triforce_spot.c b/assets/objects/object_triforce_spot/object_triforce_spot.c new file mode 100644 index 0000000000..49729e7253 --- /dev/null +++ b/assets/objects/object_triforce_spot/object_triforce_spot.c @@ -0,0 +1,30 @@ +#include "object_triforce_spot.h" +#include "gfx.h" + +Vtx gTriforceVtx[] = { +#include "assets/objects/object_triforce_spot/gTriforceVtx.inc.c" +}; + +Vtx gTriforceLightColumnVtx[] = { +#include "assets/objects/object_triforce_spot/gTriforceLightColumnVtx.inc.c" +}; + +Gfx gTriforceDL[72] = { +#include "assets/objects/object_triforce_spot/gTriforceDL.inc.c" +}; + +Gfx gTriforceLightColumnDL[26] = { +#include "assets/objects/object_triforce_spot/gTriforceLightColumnDL.inc.c" +}; + +u64 gTriforceTex[TEX_LEN(u64, gTriforceTex_WIDTH, gTriforceTex_HEIGHT, 8)] = { +#include "assets/objects/object_triforce_spot/gTriforceTex.i8.inc.c" +}; + +u64 gTriforceColumnSide1Tex[TEX_LEN(u64, gTriforceColumnSide1Tex_WIDTH, gTriforceColumnSide1Tex_HEIGHT, 8)] = { +#include "assets/objects/object_triforce_spot/gTriforceColumnSide1Tex.i8.inc.c" +}; + +u64 gTriforceColumnSide2Tex[TEX_LEN(u64, gTriforceColumnSide2Tex_WIDTH, gTriforceColumnSide2Tex_HEIGHT, 8)] = { +#include "assets/objects/object_triforce_spot/gTriforceColumnSide2Tex.i8.inc.c" +}; diff --git a/assets/objects/object_triforce_spot/object_triforce_spot.h b/assets/objects/object_triforce_spot/object_triforce_spot.h new file mode 100644 index 0000000000..7db44851fc --- /dev/null +++ b/assets/objects/object_triforce_spot/object_triforce_spot.h @@ -0,0 +1,24 @@ +#ifndef OBJECT_TRIFORCE_SPOT_H +#define OBJECT_TRIFORCE_SPOT_H + +#include "ultra64.h" +#include "tex_len.h" + +extern Vtx gTriforceVtx[]; +extern Gfx gTriforceDL[72]; + +extern Gfx gTriforceLightColumnDL[26]; + +#define gTriforceTex_WIDTH 64 +#define gTriforceTex_HEIGHT 64 +extern u64 gTriforceTex[TEX_LEN(u64, gTriforceTex_WIDTH, gTriforceTex_HEIGHT, 8)]; + +#define gTriforceColumnSide1Tex_WIDTH 64 +#define gTriforceColumnSide1Tex_HEIGHT 32 +extern u64 gTriforceColumnSide1Tex[TEX_LEN(u64, gTriforceColumnSide1Tex_WIDTH, gTriforceColumnSide1Tex_HEIGHT, 8)]; + +#define gTriforceColumnSide2Tex_WIDTH 64 +#define gTriforceColumnSide2Tex_HEIGHT 32 +extern u64 gTriforceColumnSide2Tex[TEX_LEN(u64, gTriforceColumnSide2Tex_WIDTH, gTriforceColumnSide2Tex_HEIGHT, 8)]; + +#endif diff --git a/assets/objects/object_umajump/gJumpableHorseFenceCol.c b/assets/objects/object_umajump/gJumpableHorseFenceCol.c new file mode 100644 index 0000000000..728b6f1b3d --- /dev/null +++ b/assets/objects/object_umajump/gJumpableHorseFenceCol.c @@ -0,0 +1,24 @@ +#include "object_umajump.h" +#include "array_count.h" +#include "camera.h" +#include "z_math.h" + +BgCamInfo gJumpableHorseFenceBgCamList[] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceBgCamList.inc.c" +}; + +SurfaceType gJumpableHorseFenceSurfaceTypes[] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceSurfaceTypes.inc.c" +}; + +CollisionPoly gJumpableHorseFencePolyList[] = { +#include "assets/objects/object_umajump/gJumpableHorseFencePolyList.inc.c" +}; + +Vec3s gJumpableHorseFenceVtxList[] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceVtxList.inc.c" +}; + +CollisionHeader gJumpableHorseFenceCol = { +#include "assets/objects/object_umajump/gJumpableHorseFenceCol.inc.c" +}; diff --git a/assets/objects/object_umajump/gJumpableHorseFenceDL.c b/assets/objects/object_umajump/gJumpableHorseFenceDL.c new file mode 100644 index 0000000000..bcebc3a972 --- /dev/null +++ b/assets/objects/object_umajump/gJumpableHorseFenceDL.c @@ -0,0 +1,25 @@ +#include "object_umajump.h" +#include "gfx.h" +#include "tex_len.h" + +#define gJumpableHorseFenceBrickTex_WIDTH 16 +#define gJumpableHorseFenceBrickTex_HEIGHT 64 +u64 gJumpableHorseFenceBrickTex[TEX_LEN(u64, gJumpableHorseFenceBrickTex_WIDTH, gJumpableHorseFenceBrickTex_HEIGHT, + 16)] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceBrickTex.rgba16.inc.c" +}; + +#define gJumpableHorseFenceMetalBarTex_WIDTH 16 +#define gJumpableHorseFenceMetalBarTex_HEIGHT 64 +u64 gJumpableHorseFenceMetalBarTex[TEX_LEN(u64, gJumpableHorseFenceMetalBarTex_WIDTH, + gJumpableHorseFenceMetalBarTex_HEIGHT, 16)] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceMetalBarTex.rgba16.inc.c" +}; + +Vtx gJumpableHorseFenceVtx[] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceVtx.inc.c" +}; + +Gfx gJumpableHorseFenceDL[37] = { +#include "assets/objects/object_umajump/gJumpableHorseFenceDL.inc.c" +}; diff --git a/assets/objects/object_umajump/object_umajump.h b/assets/objects/object_umajump/object_umajump.h new file mode 100644 index 0000000000..bb0a847620 --- /dev/null +++ b/assets/objects/object_umajump/object_umajump.h @@ -0,0 +1,10 @@ +#ifndef OBJECT_UMAJUMP_H +#define OBJECT_UMAJUMP_H + +#include "ultra64.h" +#include "bgcheck.h" + +extern Gfx gJumpableHorseFenceDL[37]; +extern CollisionHeader gJumpableHorseFenceCol; + +#endif diff --git a/assets/objects/object_vase/gUnusedVaseDL.c b/assets/objects/object_vase/gUnusedVaseDL.c new file mode 100644 index 0000000000..0619074953 --- /dev/null +++ b/assets/objects/object_vase/gUnusedVaseDL.c @@ -0,0 +1,18 @@ +#include "object_vase.h" +#include "gfx.h" + +Gfx gUnusedVaseDL[52] = { +#include "assets/objects/object_vase/gUnusedVaseDL.inc.c" +}; + +Vtx gUnusedVaseVtx[] = { +#include "assets/objects/object_vase/gUnusedVaseVtx.inc.c" +}; + +u64 gUnusedVaseBodyTex[TEX_LEN(u64, gUnusedVaseBodyTex_WIDTH, gUnusedVaseBodyTex_HEIGHT, 16)] = { +#include "assets/objects/object_vase/gUnusedVaseBodyTex.rgba16.inc.c" +}; + +u64 gUnusedVaseTopTex[TEX_LEN(u64, gUnusedVaseTopTex_WIDTH, gUnusedVaseTopTex_HEIGHT, 16)] = { +#include "assets/objects/object_vase/gUnusedVaseTopTex.rgba16.inc.c" +}; diff --git a/assets/objects/object_vase/object_vase.h b/assets/objects/object_vase/object_vase.h new file mode 100644 index 0000000000..4048f41e48 --- /dev/null +++ b/assets/objects/object_vase/object_vase.h @@ -0,0 +1,19 @@ +#ifndef OBJECT_VASE_H +#define OBJECT_VASE_H + +#include "ultra64.h" +#include "tex_len.h" + +extern Gfx gUnusedVaseDL[52]; + +extern Vtx gUnusedVaseVtx[]; + +#define gUnusedVaseBodyTex_WIDTH 32 +#define gUnusedVaseBodyTex_HEIGHT 32 +extern u64 gUnusedVaseBodyTex[TEX_LEN(u64, gUnusedVaseBodyTex_WIDTH, gUnusedVaseBodyTex_HEIGHT, 16)]; + +#define gUnusedVaseTopTex_WIDTH 32 +#define gUnusedVaseTopTex_HEIGHT 32 +extern u64 gUnusedVaseTopTex[TEX_LEN(u64, gUnusedVaseTopTex_WIDTH, gUnusedVaseTopTex_HEIGHT, 16)]; + +#endif diff --git a/assets/objects/object_yukabyun/gFloorTileEnemyDL.c b/assets/objects/object_yukabyun/gFloorTileEnemyDL.c new file mode 100644 index 0000000000..0092f4bc58 --- /dev/null +++ b/assets/objects/object_yukabyun/gFloorTileEnemyDL.c @@ -0,0 +1,14 @@ +#include "object_yukabyun.h" +#include "gfx.h" + +u64 gFloorTileEnemyBottomTex[TEX_LEN(u64, gFloorTileEnemyBottomTex_WIDTH, gFloorTileEnemyBottomTex_HEIGHT, 16)] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyBottomTex.rgba16.inc.c" +}; + +Vtx gFloorTileEnemyVtx[] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyVtx.inc.c" +}; + +Gfx gFloorTileEnemyDL[23] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyDL.inc.c" +}; diff --git a/assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.c b/assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.c new file mode 100644 index 0000000000..1e5aea6e21 --- /dev/null +++ b/assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.c @@ -0,0 +1,19 @@ +#include "object_yukabyun.h" +#include "gfx.h" + +Vtx gFloorTileEnemyFragmentVtx[] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyFragmentVtx.inc.c" +}; + +Gfx gFloorTileEnemyFragmentDL[18] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.inc.c" +}; + +u64 gFloorTileEnemyTopTex[TEX_LEN(u64, gFloorTileEnemyTopTex_WIDTH, gFloorTileEnemyTopTex_HEIGHT, 16)] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyTopTex.rgba16.inc.c" +}; + +u64 gFloorTileEnemyFragmentTex[TEX_LEN(u64, gFloorTileEnemyFragmentTex_WIDTH, gFloorTileEnemyFragmentTex_HEIGHT, + 16)] = { +#include "assets/objects/object_yukabyun/gFloorTileEnemyFragmentTex.rgba16.inc.c" +}; diff --git a/assets/objects/object_yukabyun/object_yukabyun.h b/assets/objects/object_yukabyun/object_yukabyun.h new file mode 100644 index 0000000000..d568240d67 --- /dev/null +++ b/assets/objects/object_yukabyun/object_yukabyun.h @@ -0,0 +1,23 @@ +#ifndef OBJECT_YUKABYUN_H +#define OBJECT_YUKABYUN_H + +#include "ultra64.h" +#include "tex_len.h" + +#define gFloorTileEnemyBottomTex_WIDTH 32 +#define gFloorTileEnemyBottomTex_HEIGHT 32 +extern u64 gFloorTileEnemyBottomTex[TEX_LEN(u64, gFloorTileEnemyBottomTex_WIDTH, gFloorTileEnemyBottomTex_HEIGHT, 16)]; + +extern Gfx gFloorTileEnemyDL[23]; + +extern Gfx gFloorTileEnemyFragmentDL[18]; + +#define gFloorTileEnemyTopTex_WIDTH 32 +#define gFloorTileEnemyTopTex_HEIGHT 32 +extern u64 gFloorTileEnemyTopTex[TEX_LEN(u64, gFloorTileEnemyTopTex_WIDTH, gFloorTileEnemyTopTex_HEIGHT, 16)]; + +#define gFloorTileEnemyFragmentTex_WIDTH 16 +#define gFloorTileEnemyFragmentTex_HEIGHT 16 +extern u64 gFloorTileEnemyFragmentTex[TEX_LEN(u64, gFloorTileEnemyFragmentTex_WIDTH, gFloorTileEnemyFragmentTex_HEIGHT, 16)]; + +#endif diff --git a/assets/objects/object_zg/gTowerCollapseBarsCol.c b/assets/objects/object_zg/gTowerCollapseBarsCol.c new file mode 100644 index 0000000000..855b517657 --- /dev/null +++ b/assets/objects/object_zg/gTowerCollapseBarsCol.c @@ -0,0 +1,24 @@ +#include "object_zg.h" +#include "array_count.h" +#include "camera.h" +#include "z_math.h" + +BgCamInfo gTowerCollapseBarsBgCamList[] = { +#include "assets/objects/object_zg/gTowerCollapseBarsBgCamList.inc.c" +}; + +SurfaceType gTowerCollapseBarsSurfaceTypes[] = { +#include "assets/objects/object_zg/gTowerCollapseBarsSurfaceTypes.inc.c" +}; + +CollisionPoly gTowerCollapseBarsPolyList[] = { +#include "assets/objects/object_zg/gTowerCollapseBarsPolyList.inc.c" +}; + +Vec3s gTowerCollapseBarsVtxList[] = { +#include "assets/objects/object_zg/gTowerCollapseBarsVtxList.inc.c" +}; + +CollisionHeader gTowerCollapseBarsCol = { +#include "assets/objects/object_zg/gTowerCollapseBarsCol.inc.c" +}; diff --git a/assets/objects/object_zg/gTowerCollapseBarsDL.c b/assets/objects/object_zg/gTowerCollapseBarsDL.c new file mode 100644 index 0000000000..216708a119 --- /dev/null +++ b/assets/objects/object_zg/gTowerCollapseBarsDL.c @@ -0,0 +1,23 @@ +#include "object_zg.h" +#include "gfx.h" +#include "tex_len.h" + +#define gTowerCollapseBarMetalTex_WIDTH 32 +#define gTowerCollapseBarMetalTex_HEIGHT 32 +u64 gTowerCollapseBarMetalTex[TEX_LEN(u64, gTowerCollapseBarMetalTex_WIDTH, gTowerCollapseBarMetalTex_HEIGHT, 16)] = { +#include "assets/objects/object_zg/gTowerCollapseBarMetalTex.rgba16.inc.c" +}; + +#define gTowerCollapseBarFlameTex_WIDTH 32 +#define gTowerCollapseBarFlameTex_HEIGHT 32 +u64 gTowerCollapseBarFlameTex[TEX_LEN(u64, gTowerCollapseBarFlameTex_WIDTH, gTowerCollapseBarFlameTex_HEIGHT, 16)] = { +#include "assets/objects/object_zg/gTowerCollapseBarFlameTex.rgba16.inc.c" +}; + +Vtx gTowerCollapseBarsVtx[] = { +#include "assets/objects/object_zg/gTowerCollapseBarsVtx.inc.c" +}; + +Gfx gTowerCollapseBarsDL[28] = { +#include "assets/objects/object_zg/gTowerCollapseBarsDL.inc.c" +}; diff --git a/assets/objects/object_zg/object_zg.h b/assets/objects/object_zg/object_zg.h new file mode 100644 index 0000000000..622160f3ce --- /dev/null +++ b/assets/objects/object_zg/object_zg.h @@ -0,0 +1,11 @@ +#ifndef OBJECT_ZG_H +#define OBJECT_ZG_H + +#include "ultra64.h" +#include "bgcheck.h" + +extern Gfx gTowerCollapseBarsDL[28]; + +extern CollisionHeader gTowerCollapseBarsCol; + +#endif diff --git a/spec/spec b/spec/spec index ea8bd6058b..fafd378adc 100644 --- a/spec/spec +++ b/spec/spec @@ -1707,7 +1707,8 @@ beginseg name "object_yukabyun" compress romalign 0x1000 - include "$(BUILD_DIR)/assets/objects/object_yukabyun/object_yukabyun.o" + include "$(BUILD_DIR)/assets/objects/object_yukabyun/gFloorTileEnemyDL.o" + include "$(BUILD_DIR)/assets/objects/object_yukabyun/gFloorTileEnemyFragmentDL.o" number 6 endseg @@ -1923,7 +1924,7 @@ beginseg name "object_vase" compress romalign 0x1000 - include "$(BUILD_DIR)/assets/objects/object_vase/object_vase.o" + include "$(BUILD_DIR)/assets/objects/object_vase/gUnusedVaseDL.o" number 6 endseg @@ -2883,7 +2884,8 @@ beginseg name "object_umajump" compress romalign 0x1000 - include "$(BUILD_DIR)/assets/objects/object_umajump/object_umajump.o" + include "$(BUILD_DIR)/assets/objects/object_umajump/gJumpableHorseFenceDL.o" + include "$(BUILD_DIR)/assets/objects/object_umajump/gJumpableHorseFenceCol.o" number 6 endseg @@ -3555,7 +3557,8 @@ beginseg name "object_zg" compress romalign 0x1000 - include "$(BUILD_DIR)/assets/objects/object_zg/object_zg.o" + include "$(BUILD_DIR)/assets/objects/object_zg/gTowerCollapseBarsDL.o" + include "$(BUILD_DIR)/assets/objects/object_zg/gTowerCollapseBarsCol.o" number 6 endseg diff --git a/tools/assets/extract/write_source.txt b/tools/assets/extract/write_source.txt index 35b876ee4b..e4171fb6a1 100644 --- a/tools/assets/extract/write_source.txt +++ b/tools/assets/extract/write_source.txt @@ -353,16 +353,12 @@ assets/objects/object_tk/object_tk.c assets/objects/object_toki_objects/object_toki_objects.c assets/objects/object_torch2/object_torch2.c assets/objects/object_toryo/object_toryo.c -assets/objects/object_tp/object_tp.c assets/objects/object_trap/object_trap.c -assets/objects/object_triforce_spot/object_triforce_spot.c assets/objects/object_tr/object_tr.c assets/objects/object_ts/object_ts.c assets/objects/object_tsubo/object_tsubo.c assets/objects/object_tw/object_tw.c -assets/objects/object_umajump/object_umajump.c assets/objects/object_vali/object_vali.c -assets/objects/object_vase/object_vase.c assets/objects/object_vm/object_vm.c assets/objects/object_wallmaster/object_wallmaster.c assets/objects/object_warp1/object_warp1.c @@ -372,9 +368,7 @@ assets/objects/object_wood02/object_wood02.c assets/objects/object_xc/object_xc.c assets/objects/object_yabusame_point/object_yabusame_point.c assets/objects/object_ydan_objects/object_ydan_objects.c -assets/objects/object_yukabyun/object_yukabyun.c assets/objects/object_zf/object_zf.c -assets/objects/object_zg/object_zg.c assets/objects/object_zl1/object_zl1.c assets/objects/object_zl2_anime1/object_zl2_anime1.c assets/objects/object_zl2_anime2/object_zl2_anime2.c From b7935dad12c881c265c4f0e2d52c600a7c8a5ed4 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Wed, 25 Jun 2025 13:20:55 +0100 Subject: [PATCH 09/11] Cleanup extracted colliders 2: `ARRAY_COUNT` (#2643) --- src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c | 3 ++- src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c | 3 ++- src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c | 3 ++- src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c | 3 ++- src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c | 3 ++- .../actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c | 2 +- src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c | 3 ++- .../ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c | 3 ++- .../actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c | 2 +- .../actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c | 2 +- .../actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c | 3 ++- src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c | 3 ++- src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c | 3 ++- .../actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c | 2 +- src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c | 2 +- src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c | 3 ++- src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c | 8 ++++---- .../actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c | 2 +- src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c | 3 ++- .../actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c | 3 ++- .../ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c | 2 +- .../ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c | 2 +- .../actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c | 2 +- src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c | 3 ++- src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c | 3 ++- .../actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c | 3 ++- src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c | 2 +- src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c | 2 +- src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c | 2 +- src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c | 2 +- src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c | 5 +++-- src/overlays/actors/ovl_Door_Killer/z_door_killer.c | 3 ++- src/overlays/actors/ovl_En_Ba/z_en_ba.c | 3 ++- src/overlays/actors/ovl_En_Bb/z_en_bb.c | 3 ++- src/overlays/actors/ovl_En_Bom/z_en_bom.c | 3 ++- src/overlays/actors/ovl_En_Bombf/z_en_bombf.c | 3 ++- src/overlays/actors/ovl_En_Bubble/z_en_bubble.c | 3 ++- src/overlays/actors/ovl_En_Butte/z_en_butte.c | 3 ++- src/overlays/actors/ovl_En_Crow/z_en_crow.c | 3 ++- src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c | 2 +- src/overlays/actors/ovl_En_Dh/z_en_dh.c | 3 ++- src/overlays/actors/ovl_En_Dha/z_en_dha.c | 3 ++- src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c | 5 +++-- src/overlays/actors/ovl_En_Fd/z_en_fd.c | 3 ++- src/overlays/actors/ovl_En_Firefly/z_en_firefly.c | 3 ++- src/overlays/actors/ovl_En_Fish/z_en_fish.c | 3 ++- src/overlays/actors/ovl_En_Fw/z_en_fw.c | 3 ++- src/overlays/actors/ovl_En_GeldB/z_en_geldb.c | 3 ++- src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c | 3 ++- src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c | 3 ++- src/overlays/actors/ovl_En_Horse/z_en_horse.c | 2 +- src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c | 3 ++- .../ovl_En_Horse_Link_Child/z_en_horse_link_child.c | 2 +- src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c | 2 +- src/overlays/actors/ovl_En_Ik/z_en_ik.c | 2 +- src/overlays/actors/ovl_En_Insect/z_en_insect.c | 3 ++- src/overlays/actors/ovl_En_Mb/z_en_mb.c | 3 ++- src/overlays/actors/ovl_En_Ny/z_en_ny.c | 3 ++- src/overlays/actors/ovl_En_Peehat/z_en_peehat.c | 3 ++- src/overlays/actors/ovl_En_Poh/z_en_poh.c | 3 ++- src/overlays/actors/ovl_En_Skb/z_en_skb.c | 3 ++- src/overlays/actors/ovl_En_St/z_en_st.c | 2 +- src/overlays/actors/ovl_En_Sw/z_en_sw.c | 3 ++- src/overlays/actors/ovl_En_Tite/z_en_tite.c | 3 ++- src/overlays/actors/ovl_En_Tp/z_en_tp.c | 3 ++- src/overlays/actors/ovl_Fishing/z_fishing.c | 3 ++- src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c | 3 ++- src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c | 3 ++- .../actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c | 3 ++- 69 files changed, 123 insertions(+), 74 deletions(-) diff --git a/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c b/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c index 280730bcda..212fcaf52e 100644 --- a/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c +++ b/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c @@ -6,6 +6,7 @@ #include "z_bg_bdan_switch.h" +#include "array_count.h" #include "ichain.h" #include "one_point_cutscene.h" #include "printf.h" @@ -89,7 +90,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c index f7aa185dec..8b8b26f5e9 100644 --- a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c @@ -6,6 +6,7 @@ #include "z_bg_bombwall.h" #include "libc64/qrand.h" +#include "array_count.h" #include "ichain.h" #include "printf.h" #include "sfx.h" @@ -73,7 +74,7 @@ static ColliderTrisInit sTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 3, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c b/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c index 31d78254b0..616ceb1e6a 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c +++ b/src/overlays/actors/ovl_Bg_Haka_Sgami/z_bg_haka_sgami.c @@ -6,6 +6,7 @@ #include "z_bg_haka_sgami.h" +#include "array_count.h" #include "ichain.h" #include "sfx.h" #include "z_lib.h" @@ -102,7 +103,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 4, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c index 920aa7af16..071fa3de53 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c +++ b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c @@ -6,6 +6,7 @@ #include "z_bg_haka_trap.h" +#include "array_count.h" #include "ichain.h" #include "rand.h" #include "sfx.h" @@ -106,7 +107,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c b/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c index eb23e5a0b5..fba20e422c 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Dalm/z_bg_hidan_dalm.c @@ -7,6 +7,7 @@ #include "z_bg_hidan_dalm.h" #include "libc64/qrand.h" +#include "array_count.h" #include "ichain.h" #include "sfx.h" #include "sys_matrix.h" @@ -95,7 +96,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 4, + ARRAY_COUNT(sTrisElementInit), sTrisElementInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c index e1b58c46b5..36f0d1d5d6 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c @@ -75,7 +75,7 @@ static ColliderTrisInit sTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c b/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c index 7bb7fb3a7f..0198087724 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Hrock/z_bg_hidan_hrock.c @@ -6,6 +6,7 @@ #include "z_bg_hidan_hrock.h" +#include "array_count.h" #include "ichain.h" #include "rumble.h" #include "sfx.h" @@ -71,7 +72,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c b/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c index aae18ec0d2..baf9318209 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Kowarerukabe/z_bg_hidan_kowarerukabe.c @@ -8,6 +8,7 @@ #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -76,7 +77,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c b/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c index e6da33b056..9dbce70dd1 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Rsekizou/z_bg_hidan_rsekizou.c @@ -115,7 +115,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 6, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c b/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c index 1d9ae39f09..01bf9de8c7 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Sekizou/z_bg_hidan_sekizou.c @@ -119,7 +119,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 6, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c index b8fd7768d5..50c2e0fdf4 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c @@ -2,6 +2,7 @@ #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -63,7 +64,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c index 87a1aa3a78..e3bcd757a9 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c @@ -8,6 +8,7 @@ #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "libc64/qrand.h" +#include "array_count.h" #include "ichain.h" #include "printf.h" #include "sfx.h" @@ -60,7 +61,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c b/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c index fb25354ccd..0a7e119025 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c @@ -7,6 +7,7 @@ #include "z_bg_jya_goroiwa.h" +#include "array_count.h" #include "ichain.h" #include "sfx.h" #include "z_lib.h" @@ -65,7 +66,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c b/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c index 67a08ca24f..8d7fe66c86 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c +++ b/src/overlays/actors/ovl_Bg_Jya_Haheniron/z_bg_jya_haheniron.c @@ -66,7 +66,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c index da22420786..a2587692ac 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c +++ b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c @@ -69,7 +69,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c b/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c index 797b618d83..5a7b579279 100644 --- a/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c +++ b/src/overlays/actors/ovl_Bg_Menkuri_Eye/z_bg_menkuri_eye.c @@ -6,6 +6,7 @@ #include "z_bg_menkuri_eye.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -60,7 +61,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c b/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c index 53fdd5a0e8..fa429d0e49 100644 --- a/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c +++ b/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.c @@ -78,7 +78,7 @@ static ColliderTrisInit sTrisInitFloor = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInitFloor), sTrisElementsInitFloor, }; @@ -105,7 +105,7 @@ static ColliderTrisInit sTrisInitRutoWall = { OC2_NONE, COLSHAPE_TRIS, }, - 1, + ARRAY_COUNT(sTrisElementsInitRutoWall), sTrisElementsInitRutoWall, }; @@ -143,7 +143,7 @@ static ColliderTrisInit sTrisInitUnusedWall = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInitWall), sTrisElementsInitWall, }; @@ -156,7 +156,7 @@ static ColliderTrisInit sTrisInitStingerWall = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInitWall), sTrisElementsInitWall, }; diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c index b0400169bf..c3db5cea85 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c @@ -70,7 +70,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c index c4e0b0370e..17374e5a1f 100644 --- a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c +++ b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c @@ -7,6 +7,7 @@ #include "z_bg_po_event.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -89,7 +90,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c index 995afd2042..9134960449 100644 --- a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c +++ b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c @@ -6,6 +6,7 @@ #include "z_bg_spot06_objects.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -93,7 +94,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c index ce59f55d04..aedf3921a3 100644 --- a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c +++ b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c @@ -85,7 +85,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 3, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c b/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c index d3b44d8aeb..fc1c8b76b4 100644 --- a/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c +++ b/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c @@ -75,7 +75,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c index 905d5220da..5131deafc1 100644 --- a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c +++ b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c @@ -83,7 +83,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 2, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c index 51929f9f68..1e435b914d 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c @@ -6,6 +6,7 @@ #include "z_bg_ydan_maruta.h" +#include "array_count.h" #include "ichain.h" #include "one_point_cutscene.h" #include "sfx.h" @@ -73,7 +74,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c index 82053be2b0..cf04ed2953 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c @@ -7,6 +7,7 @@ #include "z_bg_ydan_sp.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -85,7 +86,7 @@ static ColliderTrisInit sTrisInit = { OC2_TYPE_2, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c b/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c index b48fd8e735..29bdc03592 100644 --- a/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c +++ b/src/overlays/actors/ovl_Boss_Dodongo/z_boss_dodongo_data.inc.c @@ -1,3 +1,4 @@ +#include "array_count.h" #include "collision_check.h" static u8 D_808C7000[] = { @@ -231,7 +232,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 19, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c b/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c index 47303b1d48..f553945558 100644 --- a/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Fd/z_boss_fd_colchk.inc.c @@ -221,6 +221,6 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 19, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c b/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c index 9a65994771..db62cb0849 100644 --- a/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Fd2/z_boss_fd2_colchk.inc.c @@ -111,6 +111,6 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 9, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c b/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c index 5f701f9184..cfb868c20b 100644 --- a/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c +++ b/src/overlays/actors/ovl_Boss_Goma/z_boss_goma.c @@ -247,7 +247,7 @@ static ColliderJntSphInit sColliderJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 13, + ARRAY_COUNT(sColliderJntSphElementsInit), sColliderJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c index 25da97ebe4..fe560d7e37 100644 --- a/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Mo/z_boss_mo_colchk.inc.c @@ -221,7 +221,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 19, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c index d23f72b9e3..13261ff349 100644 --- a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c +++ b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst_colchk.inc.c @@ -1,3 +1,4 @@ +#include "array_count.h" #include "collision_check.h" static ColliderJntSphElementInit sJntSphElementsInitHand[] = { @@ -133,7 +134,7 @@ static ColliderJntSphInit sJntSphInitHand = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 11, + ARRAY_COUNT(sJntSphElementsInitHand), sJntSphElementsInitHand, }; @@ -270,7 +271,7 @@ static ColliderJntSphInit sJntSphInitHead = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 11, + ARRAY_COUNT(sJntSphElementsInitHead), sJntSphElementsInitHead, }; diff --git a/src/overlays/actors/ovl_Door_Killer/z_door_killer.c b/src/overlays/actors/ovl_Door_Killer/z_door_killer.c index 211c80a0ed..2c20ce03f1 100644 --- a/src/overlays/actors/ovl_Door_Killer/z_door_killer.c +++ b/src/overlays/actors/ovl_Door_Killer/z_door_killer.c @@ -6,6 +6,7 @@ #include "z_door_killer.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "printf.h" @@ -96,7 +97,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Ba/z_en_ba.c b/src/overlays/actors/ovl_En_Ba/z_en_ba.c index 96e6b07877..75dd460a60 100644 --- a/src/overlays/actors/ovl_En_Ba/z_en_ba.c +++ b/src/overlays/actors/ovl_En_Ba/z_en_ba.c @@ -6,6 +6,7 @@ #include "z_en_ba.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -85,7 +86,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 2, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; 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 8aec60d8ae..fe4dd22b07 100644 --- a/src/overlays/actors/ovl_En_Bb/z_en_bb.c +++ b/src/overlays/actors/ovl_En_Bb/z_en_bb.c @@ -7,6 +7,7 @@ #include "z_en_bb.h" #include "libc64/qrand.h" +#include "array_count.h" #include "attributes.h" #include "gfx.h" #include "gfx_setupdl.h" @@ -248,7 +249,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Bom/z_en_bom.c b/src/overlays/actors/ovl_En_Bom/z_en_bom.c index a9a7deba18..c2eeb243df 100644 --- a/src/overlays/actors/ovl_En_Bom/z_en_bom.c +++ b/src/overlays/actors/ovl_En_Bom/z_en_bom.c @@ -7,6 +7,7 @@ #include "z_en_bom.h" #include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -85,7 +86,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c index ba0de76d96..5fe014e7be 100644 --- a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c +++ b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c @@ -7,6 +7,7 @@ #include "z_en_bombf.h" #include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "regs.h" @@ -89,7 +90,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; 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 275c23d4e2..ee31df6fb1 100644 --- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c +++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c @@ -1,6 +1,7 @@ #include "z_en_bubble.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "sfx.h" @@ -70,7 +71,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 2, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Butte/z_en_butte.c b/src/overlays/actors/ovl_En_Butte/z_en_butte.c index c50f6a269e..43cc1e659c 100644 --- a/src/overlays/actors/ovl_En_Butte/z_en_butte.c +++ b/src/overlays/actors/ovl_En_Butte/z_en_butte.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_En_Elf/z_en_elf.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -62,7 +63,7 @@ static ColliderJntSphInit sColliderJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.c b/src/overlays/actors/ovl_En_Crow/z_en_crow.c index 76d852c668..22ba1873e1 100644 --- a/src/overlays/actors/ovl_En_Crow/z_en_crow.c +++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.c @@ -1,5 +1,6 @@ #include "z_en_crow.h" +#include "array_count.h" #include "gfx_setupdl.h" #include "ichain.h" #include "rand.h" @@ -66,7 +67,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c index a40c88e41b..7acef7bc6f 100644 --- a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c +++ b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c @@ -144,7 +144,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 7, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Dh/z_en_dh.c b/src/overlays/actors/ovl_En_Dh/z_en_dh.c index f4ea155489..e9b252092e 100644 --- a/src/overlays/actors/ovl_En_Dh/z_en_dh.c +++ b/src/overlays/actors/ovl_En_Dh/z_en_dh.c @@ -7,6 +7,7 @@ #include "z_en_dh.h" #include "libc64/qrand.h" +#include "array_count.h" #include "attributes.h" #include "gfx.h" #include "gfx_setupdl.h" @@ -113,7 +114,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Dha/z_en_dha.c b/src/overlays/actors/ovl_En_Dha/z_en_dha.c index 559e4a7213..d3fa1346ff 100644 --- a/src/overlays/actors/ovl_En_Dha/z_en_dha.c +++ b/src/overlays/actors/ovl_En_Dha/z_en_dha.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_En_Dh/z_en_dh.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -151,7 +152,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 5, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c index dbe060993c..70205edb27 100644 --- a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c +++ b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c @@ -3,6 +3,7 @@ #include "overlays/actors/ovl_En_Bombf/z_en_bombf.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -141,7 +142,7 @@ static ColliderJntSphInit sBodyJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 6, + ARRAY_COUNT(sBodyElementsInit), sBodyElementsInit, }; @@ -190,7 +191,7 @@ static ColliderTrisInit sHardTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 3, + ARRAY_COUNT(sHardElementsInit), sHardElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Fd/z_en_fd.c b/src/overlays/actors/ovl_En_Fd/z_en_fd.c index d2e72b034c..aeebc1a610 100644 --- a/src/overlays/actors/ovl_En_Fd/z_en_fd.c +++ b/src/overlays/actors/ovl_En_Fd/z_en_fd.c @@ -8,6 +8,7 @@ #include "libc64/math64.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "segmented_address.h" @@ -206,7 +207,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 12, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; 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 bb785f8fbf..62cf293e0f 100644 --- a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c +++ b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -85,7 +86,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; 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 28b759a3e8..dff0a70aa2 100644 --- a/src/overlays/actors/ovl_En_Fish/z_en_fish.c +++ b/src/overlays/actors/ovl_En_Fish/z_en_fish.c @@ -7,6 +7,7 @@ #include "z_en_fish.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -73,7 +74,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Fw/z_en_fw.c b/src/overlays/actors/ovl_En_Fw/z_en_fw.c index a2c2949bfe..1f1d6b99e5 100644 --- a/src/overlays/actors/ovl_En_Fw/z_en_fw.c +++ b/src/overlays/actors/ovl_En_Fw/z_en_fw.c @@ -9,6 +9,7 @@ #include "libc64/math64.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "segmented_address.h" @@ -74,7 +75,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c index 44b1ab4e5a..83aba60ddc 100644 --- a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c +++ b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c @@ -7,6 +7,7 @@ #include "z_en_geldb.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -153,7 +154,7 @@ static ColliderTrisInit sBlockTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sBlockTrisElementsInit), sBlockTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c index 06e1dae817..b4d0fbd54c 100644 --- a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c +++ b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c @@ -8,6 +8,7 @@ #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "libc64/qrand.h" +#include "array_count.h" #include "ichain.h" #include "printf.h" #include "quake.h" @@ -93,7 +94,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c index 988982f263..118c54dd29 100644 --- a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c +++ b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c @@ -7,6 +7,7 @@ #include "z_en_honotrap.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -110,7 +111,7 @@ static ColliderTrisInit sTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c index 6352756b5e..e97d9b9f9f 100644 --- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c +++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c @@ -166,7 +166,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c b/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c index 1301d1fde8..c7a6ccf92f 100644 --- a/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c +++ b/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c @@ -7,6 +7,7 @@ #include "z_en_horse_ganon.h" #include "libc64/math64.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -97,7 +98,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c index 8bb783da10..5241d38d90 100644 --- a/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c +++ b/src/overlays/actors/ovl_En_Horse_Link_Child/z_en_horse_link_child.c @@ -96,7 +96,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c index 4382cabf11..3458916790 100644 --- a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c +++ b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c @@ -88,7 +88,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1 | OC2_UNK1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Ik/z_en_ik.c b/src/overlays/actors/ovl_En_Ik/z_en_ik.c index 9b315a1951..0c3db73889 100644 --- a/src/overlays/actors/ovl_En_Ik/z_en_ik.c +++ b/src/overlays/actors/ovl_En_Ik/z_en_ik.c @@ -141,7 +141,7 @@ static ColliderTrisInit sTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sTrisElementsInit), sTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c index c114965204..c147ded68e 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -93,7 +94,7 @@ static ColliderJntSphInit sColliderJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sColliderElementsInit), sColliderElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Mb/z_en_mb.c b/src/overlays/actors/ovl_En_Mb/z_en_mb.c index 1cd9a16363..90ed9f3a68 100644 --- a/src/overlays/actors/ovl_En_Mb/z_en_mb.c +++ b/src/overlays/actors/ovl_En_Mb/z_en_mb.c @@ -7,6 +7,7 @@ #include "z_en_mb.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -160,7 +161,7 @@ static ColliderTrisInit sFrontShieldingTrisInit = { OC2_NONE, COLSHAPE_TRIS, }, - 2, + ARRAY_COUNT(sFrontShieldingTrisElementsInit), sFrontShieldingTrisElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Ny/z_en_ny.c b/src/overlays/actors/ovl_En_Ny/z_en_ny.c index 877ba4b09f..6d80cc8bb6 100644 --- a/src/overlays/actors/ovl_En_Ny/z_en_ny.c +++ b/src/overlays/actors/ovl_En_Ny/z_en_ny.c @@ -1,6 +1,7 @@ #include "z_en_ny.h" #include "libc64/math64.h" +#include "array_count.h" #include "attributes.h" #include "gfx.h" #include "gfx_setupdl.h" @@ -74,7 +75,7 @@ static ColliderJntSphInit sColliderJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c index cff29ca1e5..1cece3d894 100644 --- a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c +++ b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c @@ -3,6 +3,7 @@ #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -113,7 +114,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c index 482d1bfcf5..b5fdc43217 100644 --- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c +++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c @@ -7,6 +7,7 @@ #include "z_en_poh.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -113,7 +114,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Skb/z_en_skb.c b/src/overlays/actors/ovl_En_Skb/z_en_skb.c index f4bf896838..8bd797a19d 100644 --- a/src/overlays/actors/ovl_En_Skb/z_en_skb.c +++ b/src/overlays/actors/ovl_En_Skb/z_en_skb.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_En_Encount1/z_en_encount1.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -89,7 +90,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 2, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_St/z_en_st.c b/src/overlays/actors/ovl_En_St/z_en_st.c index 2a9c323ba8..da4e493a7a 100644 --- a/src/overlays/actors/ovl_En_St/z_en_st.c +++ b/src/overlays/actors/ovl_En_St/z_en_st.c @@ -121,7 +121,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Sw/z_en_sw.c b/src/overlays/actors/ovl_En_Sw/z_en_sw.c index a9aa435612..2ba9693458 100644 --- a/src/overlays/actors/ovl_En_Sw/z_en_sw.c +++ b/src/overlays/actors/ovl_En_Sw/z_en_sw.c @@ -2,6 +2,7 @@ #include "libc64/math64.h" #include "libc64/qrand.h" +#include "array_count.h" #include "attributes.h" #include "gfx.h" #include "gfx_setupdl.h" @@ -71,7 +72,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Tite/z_en_tite.c b/src/overlays/actors/ovl_En_Tite/z_en_tite.c index 9cbe4e7ac8..008028366f 100644 --- a/src/overlays/actors/ovl_En_Tite/z_en_tite.c +++ b/src/overlays/actors/ovl_En_Tite/z_en_tite.c @@ -9,6 +9,7 @@ #include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -125,7 +126,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_En_Tp/z_en_tp.c b/src/overlays/actors/ovl_En_Tp/z_en_tp.c index b0a31fbe59..6182e0aab8 100644 --- a/src/overlays/actors/ovl_En_Tp/z_en_tp.c +++ b/src/overlays/actors/ovl_En_Tp/z_en_tp.c @@ -7,6 +7,7 @@ #include "z_en_tp.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -91,7 +92,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index a9e5f0a464..a5af30c5bf 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -9,6 +9,7 @@ #include "overlays/actors/ovl_En_Kanban/z_en_kanban.h" #include "assets/objects/object_fish/object_fish.h" #include "libc64/math64.h" +#include "array_count.h" #include "attributes.h" #include "controller.h" #include "gfx.h" @@ -368,7 +369,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_1, COLSHAPE_JNTSPH, }, - 12, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c index 01a617a92b..b021c6314e 100644 --- a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c +++ b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c @@ -7,6 +7,7 @@ #include "z_mir_ray.h" #include "libu64/debug.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -102,7 +103,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_NONE, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c index ccbf175863..402e4c1583 100644 --- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c +++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c @@ -8,6 +8,7 @@ #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -66,7 +67,7 @@ static ColliderJntSphInit sJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sJntSphElementsInit), sJntSphElementsInit, }; diff --git a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c index 3a99282723..ec7abf312a 100644 --- a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c +++ b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c @@ -8,6 +8,7 @@ #include "overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h" #include "libc64/qrand.h" +#include "array_count.h" #include "gfx.h" #include "gfx_setupdl.h" #include "ichain.h" @@ -84,7 +85,7 @@ static ColliderJntSphInit sColliderJntSphInit = { OC2_TYPE_2, COLSHAPE_JNTSPH, }, - 1, + ARRAY_COUNT(sColliderJntSphElementsInit), sColliderJntSphElementsInit, }; From d44c341c2d1d5b82cf35d73aeb66e77a8f62bbdb Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Thu, 26 Jun 2025 20:11:38 +0100 Subject: [PATCH 10/11] `Camera_KeepOn4` docs 2: RO and RW data (#2632) * `Camera_KeepOn4` docs 2: RO and RW data * fix unk_14 rename * CAM_DATA_UNK_22 -> CAM_DATA_INIT_TIMER --- include/camera.h | 46 ++++----- src/code/z_camera.c | 178 +++++++++++++++++------------------ src/code/z_camera_data.inc.c | 2 +- 3 files changed, 113 insertions(+), 113 deletions(-) diff --git a/include/camera.h b/include/camera.h index ec33d47807..c56e2b8f8f 100644 --- a/include/camera.h +++ b/include/camera.h @@ -334,7 +334,7 @@ typedef enum CameraDataType { /* 0x13 */ CAM_DATA_AT_OFFSET_X, /* 0x14 */ CAM_DATA_AT_OFFSET_Y, /* 0x15 */ CAM_DATA_AT_OFFSET_Z, - /* 0x16 */ CAM_DATA_UNK_22, + /* 0x16 */ CAM_DATA_INIT_TIMER, /* 0x17 */ CAM_DATA_UNK_23, /* 0x18 */ CAM_DATA_FOV_SCALE, /* 0x19 */ CAM_DATA_YAW_SCALE, @@ -846,15 +846,15 @@ typedef struct KeepOn3 { { interfaceField, CAM_DATA_INTERFACE_FIELD } typedef struct KeepOn4ReadOnlyData { - /* 0x00 */ f32 unk_00; - /* 0x04 */ f32 unk_04; - /* 0x08 */ f32 unk_08; - /* 0x0C */ f32 unk_0C; - /* 0x10 */ f32 unk_10; - /* 0x14 */ f32 unk_14; - /* 0x18 */ f32 unk_18; + /* 0x00 */ f32 yOffset; + /* 0x04 */ f32 eyeDist; + /* 0x08 */ f32 pitchTarget; // degrees + /* 0x0C */ f32 yawTarget; // degrees + /* 0x10 */ f32 atOffsetPlayerForwards; // distance to offset `at` by, in the player's forwards direction + /* 0x14 */ f32 unk_14; // scale for stepping yaw and pitch of "at to eye" to target + /* 0x18 */ f32 fovTarget; /* 0x1C */ s16 interfaceField; - /* 0x1E */ s16 unk_1E; + /* 0x1E */ s16 initTimer; } KeepOn4ReadOnlyData; // size = 0x20 typedef enum CameraItemType { @@ -874,14 +874,14 @@ typedef enum CameraItemType { } CameraItemType; typedef struct KeepOn4ReadWriteData { - /* 0x00 */ f32 unk_00; - /* 0x04 */ f32 unk_04; - /* 0x08 */ f32 unk_08; - /* 0x0C */ s16 unk_0C; - /* 0x0E */ s16 unk_0E; - /* 0x10 */ s16 unk_10; - /* 0x12 */ s16 unk_12; - /* 0x14 */ s16 unk_14; + /* 0x00 */ f32 atToEyeTargetStepYaw; // binang + /* 0x04 */ f32 atToEyeTargetStepPitch; // binang + /* 0x08 */ f32 unk_08; // set but unused + /* 0x0C */ s16 atToEyeTargetYaw; + /* 0x0E */ s16 atToEyeTargetPitch; + /* 0x10 */ s16 animTimer; + /* 0x12 */ s16 unk_12; // set but unused + /* 0x14 */ s16 itemType; } KeepOn4ReadWriteData; // size = 0x18 typedef struct KeepOn4 { @@ -898,16 +898,16 @@ typedef struct KeepOn4 { #define KEEPON4_FLAG_6 (1 << 6) #define KEEPON4_FLAG_7 (1 << 7) -#define CAM_FUNCDATA_KEEP4(yOffset, eyeDist, pitchTarget, yawTarget, atOffsetZ, fov, interfaceField, yawUpdateRateTarget, unk_22) \ +#define CAM_FUNCDATA_KEEP4(yOffset, eyeDist, pitchTarget, yawTarget, atOffsetPlayerForwards, fov, interfaceField, unk_14, initTimer) \ { yOffset, CAM_DATA_Y_OFFSET }, \ { eyeDist, CAM_DATA_EYE_DIST }, \ { pitchTarget, CAM_DATA_PITCH_TARGET }, \ { yawTarget, CAM_DATA_YAW_TARGET }, \ - { atOffsetZ, CAM_DATA_AT_OFFSET_Z }, \ + { atOffsetPlayerForwards, CAM_DATA_AT_OFFSET_Z }, \ { fov, CAM_DATA_FOV }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD }, \ - { yawUpdateRateTarget, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ - { unk_22, CAM_DATA_UNK_22 } + { unk_14, CAM_DATA_YAW_UPDATE_RATE_TARGET }, \ + { initTimer, CAM_DATA_INIT_TIMER } typedef struct KeepOn0ReadOnlyData { /* 0x00 */ f32 fovScale; @@ -1463,7 +1463,7 @@ typedef struct Special5 { { yOffset, CAM_DATA_Y_OFFSET }, \ { eyeDist, CAM_DATA_EYE_DIST }, \ { eyeDistNext, CAM_DATA_EYE_DIST_NEXT }, \ - { unk_22, CAM_DATA_UNK_22 }, \ + { unk_22, CAM_DATA_INIT_TIMER }, \ { pitchTarget, CAM_DATA_PITCH_TARGET }, \ { fov, CAM_DATA_FOV }, \ { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ @@ -1477,7 +1477,7 @@ typedef struct Special5 { { pitchTarget, CAM_DATA_PITCH_TARGET }, \ { fov, CAM_DATA_FOV }, \ { atLerpStepScale, CAM_DATA_AT_LERP_STEP_SCALE }, \ - { unk_22, CAM_DATA_UNK_22 }, \ + { unk_22, CAM_DATA_INIT_TIMER }, \ { interfaceField, CAM_DATA_INTERFACE_FIELD } typedef struct Special7ReadWriteData { diff --git a/src/code/z_camera.c b/src/code/z_camera.c index 00d2735f1e..803a89400f 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -3698,12 +3698,12 @@ s32 Camera_KeepOn4(Camera* camera) { camera->play->view.unk_124 = camera->camId | 0x50; return 1; } - rwData->unk_14 = *itemType; + rwData->itemType = *itemType; camera->stateFlags &= ~CAM_STATE_LOCK_MODE; } - if (rwData->unk_14 != *itemType) { - PRINTF(VT_COL(YELLOW, BLACK) "camera: item: item type changed %d -> %d\n" VT_RST, rwData->unk_14, *itemType); + if (rwData->itemType != *itemType) { + PRINTF(VT_COL(YELLOW, BLACK) "camera: item: item type changed %d -> %d\n" VT_RST, rwData->itemType, *itemType); camera->animState = 20; camera->stateFlags |= CAM_STATE_LOCK_MODE; camera->stateFlags &= ~(CAM_STATE_CHECK_WATER | CAM_STATE_CHECK_BG); @@ -3717,115 +3717,115 @@ s32 Camera_KeepOn4(Camera* camera) { CameraModeValue* values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; f32 yNormal = 1.0f + t - (68.0f / playerHeight * t); - roData->unk_00 = GET_NEXT_SCALED_RO_DATA(values) * playerHeight * yNormal; - roData->unk_04 = GET_NEXT_SCALED_RO_DATA(values) * playerHeight * yNormal; - roData->unk_08 = GET_NEXT_RO_DATA(values); - roData->unk_0C = GET_NEXT_RO_DATA(values); - roData->unk_10 = GET_NEXT_RO_DATA(values); - roData->unk_18 = GET_NEXT_RO_DATA(values); + roData->yOffset = GET_NEXT_SCALED_RO_DATA(values) * playerHeight * yNormal; + roData->eyeDist = GET_NEXT_SCALED_RO_DATA(values) * playerHeight * yNormal; + roData->pitchTarget = GET_NEXT_RO_DATA(values); + roData->yawTarget = GET_NEXT_RO_DATA(values); + roData->atOffsetPlayerForwards = GET_NEXT_RO_DATA(values); + roData->fovTarget = GET_NEXT_RO_DATA(values); roData->interfaceField = GET_NEXT_RO_DATA(values); roData->unk_14 = GET_NEXT_SCALED_RO_DATA(values); - roData->unk_1E = GET_NEXT_RO_DATA(values); + roData->initTimer = GET_NEXT_RO_DATA(values); PRINTF("camera: item: type %d\n", *itemType); switch (*itemType) { case CAM_ITEM_TYPE_1: - roData->unk_00 = playerHeight * -0.6f * yNormal; - roData->unk_04 = playerHeight * 2.0f * yNormal; - roData->unk_08 = 10.0f; + roData->yOffset = playerHeight * -0.6f * yNormal; + roData->eyeDist = playerHeight * 2.0f * yNormal; + roData->pitchTarget = 10.0f; break; case CAM_ITEM_TYPE_2: case CAM_ITEM_TYPE_3: - roData->unk_08 = -20.0f; - roData->unk_18 = 80.0f; + roData->pitchTarget = -20.0f; + roData->fovTarget = 80.0f; break; case CAM_ITEM_TYPE_4: - roData->unk_00 = playerHeight * -0.2f * yNormal; - roData->unk_08 = 25.0f; + roData->yOffset = playerHeight * -0.2f * yNormal; + roData->pitchTarget = 25.0f; break; case CAM_ITEM_TYPE_8: - roData->unk_00 = playerHeight * -0.2f * yNormal; - roData->unk_04 = playerHeight * 0.8f * yNormal; - roData->unk_08 = 50.0f; - roData->unk_18 = 70.0f; + roData->yOffset = playerHeight * -0.2f * yNormal; + roData->eyeDist = playerHeight * 0.8f * yNormal; + roData->pitchTarget = 50.0f; + roData->fovTarget = 70.0f; break; case CAM_ITEM_TYPE_9: - roData->unk_00 = playerHeight * 0.1f * yNormal; - roData->unk_04 = playerHeight * 0.5f * yNormal; - roData->unk_08 = -20.0f; - roData->unk_0C = 0.0f; + roData->yOffset = playerHeight * 0.1f * yNormal; + roData->eyeDist = playerHeight * 0.5f * yNormal; + roData->pitchTarget = -20.0f; + roData->yawTarget = 0.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_A_HEARTS_MAGIC_FORCE, KEEPON4_FLAG_6); break; case CAM_ITEM_TYPE_5: - roData->unk_00 = playerHeight * -0.4f * yNormal; - roData->unk_08 = -10.0f; - roData->unk_0C = 45.0f; + roData->yOffset = playerHeight * -0.4f * yNormal; + roData->pitchTarget = -10.0f; + roData->yawTarget = 45.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_ALL, KEEPON4_FLAG_1); break; case CAM_ITEM_TYPE_10: - roData->unk_00 = playerHeight * -0.5f * yNormal; - roData->unk_04 = playerHeight * 1.5f * yNormal; - roData->unk_08 = -15.0f; - roData->unk_0C = 175.0f; - roData->unk_18 = 70.0f; + roData->yOffset = playerHeight * -0.5f * yNormal; + roData->eyeDist = playerHeight * 1.5f * yNormal; + roData->pitchTarget = -15.0f; + roData->yawTarget = 175.0f; + roData->fovTarget = 70.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_NOTHING_ALT, KEEPON4_FLAG_1); - roData->unk_1E = 0x3C; + roData->initTimer = 0x3C; break; case CAM_ITEM_TYPE_12: - roData->unk_00 = playerHeight * -0.6f * yNormal; - roData->unk_04 = playerHeight * 1.6f * yNormal; - roData->unk_08 = -2.0f; - roData->unk_0C = 120.0f; - roData->unk_10 = player->stateFlags1 & PLAYER_STATE1_27 ? 0.0f : 20.0f; + roData->yOffset = playerHeight * -0.6f * yNormal; + roData->eyeDist = playerHeight * 1.6f * yNormal; + roData->pitchTarget = -2.0f; + roData->yawTarget = 120.0f; + roData->atOffsetPlayerForwards = player->stateFlags1 & PLAYER_STATE1_27 ? 0.0f : 20.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_LARGE, CAM_HUD_VISIBILITY_NOTHING_ALT, KEEPON4_FLAG_4 | KEEPON4_FLAG_1); - roData->unk_1E = 0x1E; - roData->unk_18 = 50.0f; + roData->initTimer = 0x1E; + roData->fovTarget = 50.0f; break; case CAM_ITEM_TYPE_90: - roData->unk_00 = playerHeight * -0.3f * yNormal; - roData->unk_18 = 45.0f; + roData->yOffset = playerHeight * -0.3f * yNormal; + roData->fovTarget = 45.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_IGNORE, KEEPON4_FLAG_1); break; case CAM_ITEM_TYPE_91: - roData->unk_00 = playerHeight * -0.1f * yNormal; - roData->unk_04 = playerHeight * 1.5f * yNormal; - roData->unk_08 = -3.0f; - roData->unk_0C = 10.0f; - roData->unk_18 = 55.0f; + roData->yOffset = playerHeight * -0.1f * yNormal; + roData->eyeDist = playerHeight * 1.5f * yNormal; + roData->pitchTarget = -3.0f; + roData->yawTarget = 10.0f; + roData->fovTarget = 55.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_IGNORE, KEEPON4_FLAG_3); break; case CAM_ITEM_TYPE_81: - roData->unk_00 = playerHeight * -0.3f * yNormal; - roData->unk_04 = playerHeight * 1.5f * yNormal; - roData->unk_08 = 2.0f; - roData->unk_18 = 45.0f; - roData->unk_0C = 20.0f; - roData->unk_10 = 20.0f; + roData->yOffset = playerHeight * -0.3f * yNormal; + roData->eyeDist = playerHeight * 1.5f * yNormal; + roData->pitchTarget = 2.0f; + roData->fovTarget = 45.0f; + roData->yawTarget = 20.0f; + roData->atOffsetPlayerForwards = 20.0f; roData->interfaceField = CAM_INTERFACE_FIELD(CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_NOTHING_ALT, KEEPON4_FLAG_7); - roData->unk_1E = 0x1E; + roData->initTimer = 0x1E; break; case CAM_ITEM_TYPE_11: - roData->unk_00 = playerHeight * -0.19f * yNormal; - roData->unk_04 = playerHeight * 0.7f * yNormal; - roData->unk_0C = 130.0f; - roData->unk_10 = 10.0f; + roData->yOffset = playerHeight * -0.19f * yNormal; + roData->eyeDist = playerHeight * 0.7f * yNormal; + roData->yawTarget = 130.0f; + roData->atOffsetPlayerForwards = 10.0f; roData->interfaceField = CAM_INTERFACE_FIELD( CAM_LETTERBOX_MEDIUM, CAM_HUD_VISIBILITY_A_HEARTS_MAGIC_FORCE, KEEPON4_FLAG_5 | KEEPON4_FLAG_1); break; @@ -3844,10 +3844,10 @@ s32 Camera_KeepOn4(Camera* camera) { sAtTarget = playerPosRot->pos; sAtTarget.y += playerHeight; temp_f0_2 = BgCheck_CameraRaycastDown2(&camera->play->colCtx, &spC0, &i, &sAtTarget); - if (temp_f0_2 > (roData->unk_00 + sAtTarget.y)) { + if (temp_f0_2 > (roData->yOffset + sAtTarget.y)) { sAtTarget.y = temp_f0_2 + 10.0f; } else { - sAtTarget.y += roData->unk_00; + sAtTarget.y += roData->yOffset; } lineOCCheckNumExclusions = 0; @@ -3858,38 +3858,38 @@ s32 Camera_KeepOn4(Camera* camera) { lineOCCheckNumExclusions++; func_80043ABC(camera); camera->stateFlags &= ~(CAM_STATE_CHECK_WATER | CAM_STATE_CHECK_BG); - rwData->unk_10 = roData->unk_1E; + rwData->animTimer = roData->initTimer; rwData->unk_08 = playerPosRot->pos.y - camera->playerPosDelta.y; if (roData->interfaceField & KEEPON4_FLAG_1) { - atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08); + atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->pitchTarget); atToEyeBaseYaw = (s16)((s16)(playerPosRot->rot.y - 0x7FFF) - atToEyeNextDir.yaw) > 0 - ? (s16)(playerPosRot->rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C) - : (s16)(playerPosRot->rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C); + ? (s16)(playerPosRot->rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->yawTarget) + : (s16)(playerPosRot->rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->yawTarget); } else if (roData->interfaceField & KEEPON4_FLAG_2) { - atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08); - atToEyeBaseYaw = CAM_DEG_TO_BINANG(roData->unk_0C); + atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->pitchTarget); + atToEyeBaseYaw = CAM_DEG_TO_BINANG(roData->yawTarget); } else if ((roData->interfaceField & KEEPON4_FLAG_3) && camera->target != NULL) { PosRot sp60; sp60 = Actor_GetWorldPosShapeRot(camera->target); - atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08) - sp60.rot.x; + atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->pitchTarget) - sp60.rot.x; atToEyeBaseYaw = (s16)((s16)(sp60.rot.y - 0x7FFF) - atToEyeNextDir.yaw) > 0 - ? (s16)(sp60.rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C) - : (s16)(sp60.rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C); + ? (s16)(sp60.rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->yawTarget) + : (s16)(sp60.rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->yawTarget); lineOCCheckExclusions[1] = camera->target; lineOCCheckNumExclusions++; } else if ((roData->interfaceField & KEEPON4_FLAG_7) && camera->target != NULL) { PosRot sp4C; sp4C = Actor_GetWorld(camera->target); - atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08); + atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->pitchTarget); sp9E = Camera_XZAngle(&sp4C.pos, &playerPosRot->pos); - atToEyeBaseYaw = ((s16)(sp9E - atToEyeNextDir.yaw) > 0) ? sp9E + CAM_DEG_TO_BINANG(roData->unk_0C) - : sp9E - CAM_DEG_TO_BINANG(roData->unk_0C); + atToEyeBaseYaw = ((s16)(sp9E - atToEyeNextDir.yaw) > 0) ? sp9E + CAM_DEG_TO_BINANG(roData->yawTarget) + : sp9E - CAM_DEG_TO_BINANG(roData->yawTarget); lineOCCheckExclusions[1] = camera->target; lineOCCheckNumExclusions++; } else if (roData->interfaceField & KEEPON4_FLAG_6) { - atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08); + atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->pitchTarget); atToEyeBaseYaw = atToEyeNextDir.yaw; } else { atToEyeBasePitch = atToEyeNextDir.pitch; @@ -3898,7 +3898,7 @@ s32 Camera_KeepOn4(Camera* camera) { vecGeo.pitch = atToEyeBasePitch; vecGeo.yaw = atToEyeBaseYaw; - vecGeo.r = roData->unk_04; + vecGeo.r = roData->eyeDist; sEyeCandidate = Camera_AddVecGeoToVec3f(&sAtTarget, &vecGeo); if (!(roData->interfaceField & KEEPON4_FLAG_0)) { angleCnt = ARRAY_COUNT(sCamCheckAroundOffsetsYaw); @@ -3916,10 +3916,10 @@ s32 Camera_KeepOn4(Camera* camera) { PRINTF("camera: item: BG&collision check %d time(s)\n", i); #endif } - rwData->unk_04 = (s16)(vecGeo.pitch - atToEyeNextDir.pitch) / (f32)rwData->unk_10; - rwData->unk_00 = (s16)(vecGeo.yaw - atToEyeNextDir.yaw) / (f32)rwData->unk_10; - rwData->unk_0C = atToEyeNextDir.yaw; - rwData->unk_0E = atToEyeNextDir.pitch; + rwData->atToEyeTargetStepPitch = (s16)(vecGeo.pitch - atToEyeNextDir.pitch) / (f32)rwData->animTimer; + rwData->atToEyeTargetStepYaw = (s16)(vecGeo.yaw - atToEyeNextDir.yaw) / (f32)rwData->animTimer; + rwData->atToEyeTargetYaw = atToEyeNextDir.yaw; + rwData->atToEyeTargetPitch = atToEyeNextDir.pitch; camera->animState++; rwData->unk_12 = 1; break; @@ -3932,20 +3932,20 @@ s32 Camera_KeepOn4(Camera* camera) { camera->yOffsetUpdateRate = 0.25f; camera->atLERPStepScale = 0.75f; Camera_LERPCeilVec3f(&sAtTarget, at, 0.5f, 0.5f, 0.2f); - if (roData->unk_10 != 0.0f) { - vecGeo.r = roData->unk_10; + if (roData->atOffsetPlayerForwards != 0.0f) { + vecGeo.r = roData->atOffsetPlayerForwards; vecGeo.pitch = 0; vecGeo.yaw = playerPosRot->rot.y; *at = Camera_AddVecGeoToVec3f(at, &vecGeo); } camera->atLERPStepScale = 0.0f; - camera->dist = Camera_LERPCeilF(roData->unk_04, camera->dist, 0.25f, 2.0f); + camera->dist = Camera_LERPCeilF(roData->eyeDist, camera->dist, 0.25f, 2.0f); vecGeo.r = camera->dist; - if (rwData->unk_10 != 0) { + if (rwData->animTimer != 0) { camera->stateFlags |= CAM_STATE_LOCK_MODE; - rwData->unk_0C += (s16)rwData->unk_00; - rwData->unk_0E += (s16)rwData->unk_04; - rwData->unk_10--; + rwData->atToEyeTargetYaw += (s16)rwData->atToEyeTargetStepYaw; + rwData->atToEyeTargetPitch += (s16)rwData->atToEyeTargetStepPitch; + rwData->animTimer--; } else if (roData->interfaceField & KEEPON4_FLAG_4) { camera->stateFlags |= (CAM_STATE_CAM_FUNC_FINISH | CAM_STATE_BLOCK_BG); camera->stateFlags |= (CAM_STATE_CHECK_WATER | CAM_STATE_CHECK_BG); @@ -3967,12 +3967,12 @@ s32 Camera_KeepOn4(Camera* camera) { } } } - vecGeo.yaw = Camera_LERPCeilS(rwData->unk_0C, atToEyeNextDir.yaw, roData->unk_14, 4); - vecGeo.pitch = Camera_LERPCeilS(rwData->unk_0E, atToEyeNextDir.pitch, roData->unk_14, 4); + vecGeo.yaw = Camera_LERPCeilS(rwData->atToEyeTargetYaw, atToEyeNextDir.yaw, roData->unk_14, 4); + vecGeo.pitch = Camera_LERPCeilS(rwData->atToEyeTargetPitch, atToEyeNextDir.pitch, roData->unk_14, 4); *eyeNext = Camera_AddVecGeoToVec3f(at, &vecGeo); *eye = *eyeNext; Camera_BGCheck(camera, at, eye); - camera->fov = Camera_LERPCeilF(roData->unk_18, camera->fov, camera->fovUpdateRate, 1.0f); + camera->fov = Camera_LERPCeilF(roData->fovTarget, camera->fov, camera->fovUpdateRate, 1.0f); camera->roll = Camera_LERPCeilS(0, camera->roll, 0.5f, 0xA); //! @bug Missing return, but the return value is not used. } diff --git a/src/code/z_camera_data.inc.c b/src/code/z_camera_data.inc.c index 9f724ec084..82d1dd619a 100644 --- a/src/code/z_camera_data.inc.c +++ b/src/code/z_camera_data.inc.c @@ -110,7 +110,7 @@ s16 sCamDataRegsInit[CAM_DATA_MAX] = { 0, // CAM_DATA_AT_OFFSET_X 0, // CAM_DATA_AT_OFFSET_Y 0, // CAM_DATA_AT_OFFSET_Z - 6, // CAM_DATA_UNK_22 + 6, // CAM_DATA_INIT_TIMER 60, // CAM_DATA_UNK_23 30, // CAM_DATA_FOV_SCALE 0, // CAM_DATA_YAW_SCALE From 88f452af10b517e71c6c10e2ed424bdcb6a77490 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Thu, 26 Jun 2025 20:45:44 +0100 Subject: [PATCH 11/11] Reevaluate player hit response names (#2640) * PlayerHitResponseType * PLAYER_HIT_RESPONSE_ICE_TRAP -> FROZEN * PLAYER_KNOCKBACK_LARGE_SHOCK, PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK -> PLAYER_KNOCKBACK_LARGE_ELECTRIFIED, PLAYER_HIT_RESPONSE_ELECTRIFIED * damageResponseType -> hitResponseType --- include/player.h | 10 ++++---- .../actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c | 2 +- .../actors/ovl_player_actor/z_player.c | 23 +++++++++---------- 3 files changed, 17 insertions(+), 18 deletions(-) diff --git a/include/player.h b/include/player.h index 10fcd490b7..63c9d25b65 100644 --- a/include/player.h +++ b/include/player.h @@ -647,16 +647,16 @@ typedef enum PlayerKnockbackType { /* 0 */ PLAYER_KNOCKBACK_NONE, // No knockback /* 1 */ PLAYER_KNOCKBACK_SMALL, // A small hop, remains standing up /* 2 */ PLAYER_KNOCKBACK_LARGE, // Sent flying in the air and lands laying down on the floor - /* 3 */ PLAYER_KNOCKBACK_LARGE_SHOCK // Same as`PLAYER_KNOCKBACK_LARGE` with a shock effect + /* 3 */ PLAYER_KNOCKBACK_LARGE_ELECTRIFIED // Same as`PLAYER_KNOCKBACK_LARGE` with a shock effect } PlayerKnockbackType; -typedef enum PlayerDamageResponseType { +typedef enum PlayerHitResponseType { /* 0 */ PLAYER_HIT_RESPONSE_NONE, /* 1 */ PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE, /* 2 */ PLAYER_HIT_RESPONSE_KNOCKBACK_SMALL, - /* 3 */ PLAYER_HIT_RESPONSE_ICE_TRAP, - /* 4 */ PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK -} PlayerDamageResponseType; + /* 3 */ PLAYER_HIT_RESPONSE_FROZEN, + /* 4 */ PLAYER_HIT_RESPONSE_ELECTRIFIED +} PlayerHitResponseType; typedef struct PlayerAgeProperties { /* 0x00 */ f32 ceilingCheckHeight; diff --git a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c index 108dbbe352..e594e42291 100644 --- a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c +++ b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c @@ -550,7 +550,7 @@ void EnFhgFire_EnergyBall(EnFhgFire* this, PlayState* play) { Actor_PlaySfx(&this->actor, NA_SE_EN_FANTOM_LAUGH); } Actor_SetPlayerKnockback(play, &this->actor, 3.0f, this->actor.world.rot.y, 0.0f, - PLAYER_KNOCKBACK_LARGE_SHOCK, 0x10); + PLAYER_KNOCKBACK_LARGE_ELECTRIFIED, 0x10); } break; case FHGFIRE_LIGHT_BLUE: diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index 10fd868cb2..ff7fbb1b3e 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -4619,7 +4619,7 @@ static LinkAnimationHeader* D_808544B0[] = { &gPlayerAnim_link_normal_back_hit, &gPlayerAnim_link_anchor_back_hitR, }; -void func_80837C0C(PlayState* play, Player* this, s32 damageResponseType, f32 speed, f32 yVelocity, s16 yRot, +void func_80837C0C(PlayState* play, Player* this, s32 hitResponseType, f32 speed, f32 yVelocity, s16 yRot, s32 invincibilityTimer) { LinkAnimationHeader* anim = NULL; LinkAnimationHeader** sp28; @@ -4642,7 +4642,7 @@ void func_80837C0C(PlayState* play, Player* this, s32 damageResponseType, f32 sp Player_SetIntangibility(this, invincibilityTimer); - if (damageResponseType == PLAYER_HIT_RESPONSE_ICE_TRAP) { + if (hitResponseType == PLAYER_HIT_RESPONSE_FROZEN) { Player_SetupAction(play, this, Player_Action_8084FB10, 0); anim = &gPlayerAnim_link_normal_ice_down; @@ -4652,7 +4652,7 @@ void func_80837C0C(PlayState* play, Player* this, s32 damageResponseType, f32 sp Player_PlaySfx(this, NA_SE_PL_FREEZE_S); Player_PlayVoiceSfx(this, NA_SE_VO_LI_FREEZE); - } else if (damageResponseType == PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK) { + } else if (hitResponseType == PLAYER_HIT_RESPONSE_ELECTRIFIED) { Player_SetupAction(play, this, Player_Action_8084FBF4, 0); Player_RequestRumble(this, 255, 80, 150, 0); @@ -4673,8 +4673,8 @@ void func_80837C0C(PlayState* play, Player* this, s32 damageResponseType, f32 sp anim = &gPlayerAnim_link_swimer_swim_hit; Player_PlayVoiceSfx(this, NA_SE_VO_LI_DAMAGE_S); - } else if ((damageResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE) || - (damageResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_SMALL) || + } else if ((hitResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE) || + (hitResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_SMALL) || !(this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) || (this->stateFlags1 & (PLAYER_STATE1_13 | PLAYER_STATE1_14 | PLAYER_STATE1_21))) { Player_SetupAction(play, this, Player_Action_8084377C, 0); @@ -4684,7 +4684,7 @@ void func_80837C0C(PlayState* play, Player* this, s32 damageResponseType, f32 sp Player_RequestRumble(this, 255, 20, 150, 0); func_80832224(this); - if (damageResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_SMALL) { + if (hitResponseType == PLAYER_HIT_RESPONSE_KNOCKBACK_SMALL) { this->av2.actionVar2 = 4; this->actor.speed = 3.0f; @@ -4867,7 +4867,7 @@ s32 func_808382DC(Player* this, PlayState* play) { func_80838280(this); - if (this->knockbackType == PLAYER_KNOCKBACK_LARGE_SHOCK) { + if (this->knockbackType == PLAYER_KNOCKBACK_LARGE_ELECTRIFIED) { this->bodyShockTimer = 40; } @@ -4939,9 +4939,9 @@ 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_ICE) { - sp4C = PLAYER_HIT_RESPONSE_ICE_TRAP; + sp4C = PLAYER_HIT_RESPONSE_FROZEN; } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_ELECTRIC) { - sp4C = PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK; + sp4C = PLAYER_HIT_RESPONSE_ELECTRIFIED; } else if (this->actor.colChkInfo.acHitSpecialEffect == HIT_SPECIAL_EFFECT_KNOCKBACK) { sp4C = PLAYER_HIT_RESPONSE_KNOCKBACK_LARGE; } else { @@ -9147,8 +9147,7 @@ s32 func_80842DF4(PlayState* play, Player* this) { 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); + func_80837C0C(play, this, PLAYER_HIT_RESPONSE_ELECTRIFIED, 0.0f, 0.0f, this->actor.shape.rot.y, 20); return 1; } } @@ -13905,7 +13904,7 @@ void Player_Action_8084E6D4(Player* this, PlayState* play) { func_8083C0E8(this, play); } else { this->actor.colChkInfo.damage = 0; - func_80837C0C(play, this, PLAYER_HIT_RESPONSE_ICE_TRAP, 0.0f, 0.0f, 0, 20); + func_80837C0C(play, this, PLAYER_HIT_RESPONSE_FROZEN, 0.0f, 0.0f, 0, 20); } return; }