From 409f443ed0797239ebce6f185b417cc8becc2b5a Mon Sep 17 00:00:00 2001 From: Caladius Date: Tue, 31 Oct 2023 18:35:02 -0400 Subject: [PATCH] Removal of Kakariko Center Tree, Bushes, and NPC's for both ages. --- soh/src/overlays/actors/ovl_En_Hs2/z_en_hs2.c | 2 ++ soh/src/overlays/actors/ovl_En_Hy/z_en_hy.c | 2 +- soh/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c | 7 ++++++- soh/src/overlays/actors/ovl_En_Toryo/z_en_toryo.c | 2 +- soh/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c | 4 ++++ 5 files changed, 14 insertions(+), 3 deletions(-) diff --git a/soh/src/overlays/actors/ovl_En_Hs2/z_en_hs2.c b/soh/src/overlays/actors/ovl_En_Hs2/z_en_hs2.c index 3f8e61481a..e2f16a6112 100644 --- a/soh/src/overlays/actors/ovl_En_Hs2/z_en_hs2.c +++ b/soh/src/overlays/actors/ovl_En_Hs2/z_en_hs2.c @@ -65,6 +65,8 @@ void EnHs2_Init(Actor* thisx, PlayState* play) { this->actionFunc = func_80A6F1A4; this->unk_2A8 = 0; this->actor.targetMode = 6; + + Actor_Kill(this); } void EnHs2_Destroy(Actor* thisx, PlayState* play) { diff --git a/soh/src/overlays/actors/ovl_En_Hy/z_en_hy.c b/soh/src/overlays/actors/ovl_En_Hy/z_en_hy.c index e0ff7470d1..b790351e49 100644 --- a/soh/src/overlays/actors/ovl_En_Hy/z_en_hy.c +++ b/soh/src/overlays/actors/ovl_En_Hy/z_en_hy.c @@ -829,7 +829,7 @@ s32 EnHy_ShouldSpawn(EnHy* this, PlayState* play) { } else if ((this->actor.params & 0x7F) != ENHY_TYPE_BOJ_12 && IS_NIGHT) { return false; } else { - return true; + return false; } case SCENE_IMPAS_HOUSE: if ((this->actor.params & 0x7F) != ENHY_TYPE_BOJ_10) { diff --git a/soh/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c b/soh/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c index 75e54c140a..86e1f77652 100644 --- a/soh/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c +++ b/soh/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c @@ -266,7 +266,12 @@ void EnKusa_Init(Actor* thisx, PlayState* play) { return; } - EnKusa_SetupWaitObject(this); + if (gPlayState->sceneNum == SCENE_KAKARIKO_VILLAGE) { + Actor_Kill(this); + } else { + EnKusa_SetupWaitObject(this); + } + } void EnKusa_Destroy(Actor* thisx, PlayState* play2) { diff --git a/soh/src/overlays/actors/ovl_En_Toryo/z_en_toryo.c b/soh/src/overlays/actors/ovl_En_Toryo/z_en_toryo.c index d52b82d8df..929028fddb 100644 --- a/soh/src/overlays/actors/ovl_En_Toryo/z_en_toryo.c +++ b/soh/src/overlays/actors/ovl_En_Toryo/z_en_toryo.c @@ -105,7 +105,7 @@ void EnToryo_Init(Actor* thisx, PlayState* play) { break; case SCENE_KAKARIKO_VILLAGE: if ((LINK_AGE_IN_YEARS == YEARS_CHILD) && IS_DAY) { - this->stateFlags |= 2; + Actor_Kill(this); } break; case SCENE_KAKARIKO_CENTER_GUEST_HOUSE: diff --git a/soh/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c b/soh/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c index 4adb7afe76..e41c0f1fd9 100644 --- a/soh/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c +++ b/soh/src/overlays/actors/ovl_En_Wood02/z_en_wood02.c @@ -173,6 +173,10 @@ void EnWood02_Init(Actor* thisx, PlayState* play2) { f32 floorY; s16 extraRot; + if (gPlayState->sceneNum == SCENE_KAKARIKO_VILLAGE && this->actor.params >= 0 || this->actor.params <= WOOD_TREE_KAKARIKO_ADULT) { + Actor_Kill(this); + } + // The tree in Kakariko's day scene does not have the same params to spawn the GS // as the night scene, For the always spawn GS enhancement we apply the needed // params to have the GS drop when bonking