summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA Green Spoon <121978037+A-Green-Spoon@users.noreply.github.com>2026-08-12 07:42:16 -0400
committerGitHub <noreply@github.com>2026-08-12 11:42:16 +0000
commit08cb0dcf705e515e735854d280bb3b90266b6a56 (patch)
treec0b08826619396ee7835f95953d8b90b76b363b8
parent253e672473d11a36e567ef0030055df4225b3a4c (diff)
Fix graveyard sign checks at night (#7057)
-rw-r--r--soh/soh/Enhancements/randomizer/ShuffleSigns.cpp24
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;
}
}