From cb6876792e99f8420ca0626ac55a9b57c638bc13 Mon Sep 17 00:00:00 2001
From: briaguya <70942617+briaguya-ai@users.noreply.github.com>
Date: Wed, 13 Jul 2022 22:04:48 -0400
Subject: [PATCH] don't spawn blocking mido after we've already shown him the
 sword/shield (#675)

Co-authored-by: briaguya <briaguya@alice>
---
 soh/src/overlays/actors/ovl_En_Md/z_en_md.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/soh/src/overlays/actors/ovl_En_Md/z_en_md.c b/soh/src/overlays/actors/ovl_En_Md/z_en_md.c
index 86f07884a..3bf4fcbb0 100644
--- a/soh/src/overlays/actors/ovl_En_Md/z_en_md.c
+++ b/soh/src/overlays/actors/ovl_En_Md/z_en_md.c
@@ -485,7 +485,10 @@ u8 EnMd_ShouldSpawn(EnMd* this, GlobalContext* globalCtx) {
     if (globalCtx->sceneNum == SCENE_SPOT04) {
         if (gSaveContext.n64ddFlag) {
             // if we have beaten deku tree or have open forest turned on
-            if (gSaveContext.dungeonsDone[1] || GetRandoSettingValue(RSK_FOREST) == 1) {
+            // or have already shown mido we have an equipped sword/shield
+            if (gSaveContext.dungeonsDone[1] ||
+                GetRandoSettingValue(RSK_FOREST) == 1 ||
+                gSaveContext.eventChkInf[0] & 0x10) {
                 return 0;
             }
             return 1;