diff options
| author | A Green Spoon <121978037+A-Green-Spoon@users.noreply.github.com> | 2026-08-12 07:42:16 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-12 11:42:16 +0000 |
| commit | 08cb0dcf705e515e735854d280bb3b90266b6a56 (patch) | |
| tree | c0b08826619396ee7835f95953d8b90b76b363b8 | |
| parent | 253e672473d11a36e567ef0030055df4225b3a4c (diff) | |
Fix graveyard sign checks at night (#7057)
| -rw-r--r-- | soh/soh/Enhancements/randomizer/ShuffleSigns.cpp | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/soh/soh/Enhancements/randomizer/ShuffleSigns.cpp b/soh/soh/Enhancements/randomizer/ShuffleSigns.cpp index 4abcc9681..09b6c43f5 100644 --- a/soh/soh/Enhancements/randomizer/ShuffleSigns.cpp +++ b/soh/soh/Enhancements/randomizer/ShuffleSigns.cpp @@ -94,20 +94,34 @@ static CheckIdentity IdentifySign(s32 sceneNum, s32 posX, s32 posZ, s32 id) { uint32_t signSceneNum = sceneNum; Rando::Location* location = nullptr; - // align child/adult signs + // align child/adult and day/night signs if (sceneNum == SCENE_KAKARIKO_VILLAGE && LINK_IS_ADULT && posX == 1165 && posZ == 1545) { posZ = 1550; } else if (sceneNum == SCENE_GRAVEYARD && LINK_IS_ADULT) { - if (id == ACTOR_EN_WONDER_TALK2 && posX == -807 && posZ == 266) { + if (id == ACTOR_EN_WONDER_TALK2 && ((posX == -807 && posZ == 266) || (posX == -806 && posZ == 266))) { posX = -805; } else if (id == ACTOR_EN_WONDER_TALK) { - if (posX == 634 && posZ == 260) { + if ((posX == 634 && posZ == 260) || (posX == 638 && posZ == 260)) { posX = 654; posZ = 258; - } else if (posX == 634 && posZ == -100) { + } else if ((posX == 634 && posZ == -100) || (posX == 638 && posZ == -100)) { posX = 654; posZ = -102; - } else if (posX == 753 && posZ == 85) { + } else if ((posX == 753 && posZ == 85) || (posX == 758 && posZ == 85)) { + posX = 752; + } + } + } else if (sceneNum == SCENE_GRAVEYARD && LINK_IS_CHILD) { + if (id == ACTOR_EN_WONDER_TALK2 && posX == -805 && posZ == 264) { + posZ = 266; + } else if (id == ACTOR_EN_WONDER_TALK) { + if (posX == 630 && posZ == 260) { + posX = 654; + posZ = 258; + } else if (posX == 630 && posZ == -100) { + posX = 654; + posZ = -102; + } else if (posX == 758 && posZ == 85) { posX = 752; } } |
