From 148a3d23ebe02b151547fb7654704b1b439522e0 Mon Sep 17 00:00:00 2001 From: gymnast86 Date: Tue, 21 Apr 2026 22:05:38 -0700 Subject: [PATCH] sera shop slingshot check --- src/d/d_shop_system.cpp | 11 +++++++++++ src/dusk/randomizer/generator/data/locations.yaml | 5 ++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/d/d_shop_system.cpp b/src/d/d_shop_system.cpp index f6e8584a9c..091eec3435 100644 --- a/src/d/d_shop_system.cpp +++ b/src/d/d_shop_system.cpp @@ -911,6 +911,7 @@ int dShopSystem_c::seq_start(fopAc_ac_c* actor, dMsgFlow_c* i_flow) { switch (itemNo) { case dItemNo_Randomizer_HALF_MILK_BOTTLE_e: itemNo = randomizer_getItemAtLocation("Ordon Cat Rescue"); + break; } } #endif @@ -1204,6 +1205,16 @@ int dShopSystem_c::seq_decide_yes(fopAc_ac_c* actor, dMsgFlow_c* i_flow) { if (mFlow.getEventId(&itemNo) == 1) { if (i_flow->doFlow(actor, NULL, 0)) { if (mItemPartnerId == fpcM_ERROR_PROCESS_ID_e) { +#if TARGET_PC + // In rando, override the item if it's one of our unique shop checks + if (randomizer_IsActive()) { + switch (itemNo) { + case dItemNo_Randomizer_PACHINKO_e: + itemNo = randomizer_getItemAtLocation("Sera Shop Slingshot"); + break; + } + } +#endif mItemPartnerId = fopAcM_createItemForPresentDemo(¤t.pos, itemNo, 0, -1, -1, NULL, NULL); } diff --git a/src/dusk/randomizer/generator/data/locations.yaml b/src/dusk/randomizer/generator/data/locations.yaml index 2ecc43d0a0..b3a6fdc8f7 100644 --- a/src/dusk/randomizer/generator/data/locations.yaml +++ b/src/dusk/randomizer/generator/data/locations.yaml @@ -45,9 +45,8 @@ - Overworld - Shop - Ordona Province - - ARC - Metadata: - - None + - Location Name Lookup + Metadata: Sera Shop Slingshot - Name: Ordon Shield Original Item: Ordon Shield