From 40949474a159ab109feb095b35ef607260701eaa Mon Sep 17 00:00:00 2001 From: gymnast86 Date: Mon, 4 May 2026 22:23:30 -0700 Subject: [PATCH] wooden statue check --- src/d/actor/d_a_obj_wood_statue.cpp | 10 ++++++++++ src/d/d_item_data.cpp | 2 +- src/dusk/randomizer/generator/data/locations.yaml | 5 ++--- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/d/actor/d_a_obj_wood_statue.cpp b/src/d/actor/d_a_obj_wood_statue.cpp index 208ccd2729..145f647a43 100644 --- a/src/d/actor/d_a_obj_wood_statue.cpp +++ b/src/d/actor/d_a_obj_wood_statue.cpp @@ -11,6 +11,10 @@ #include "d/d_com_inf_game.h" #include "d/d_item_data.h" #include "d/d_s_play.h" +#if TARGET_PC +#include "dusk/randomizer/game/flags.h" +#include "dusk/randomizer/game/verify_item_functions.h" +#endif const static dCcD_SrcCyl l_cyl_src = { { @@ -255,6 +259,12 @@ int daObjWStatue_c::initActionOrderGetDemo() { s16 eventIdx = dComIfGp_getEventManager().getEventIdx(this, "DEFAULT_GETITEM", 0xff); dComIfGp_getEvent()->reset(this); fopAcM_orderChangeEventId(this, eventIdx, 1, 0xffff); +#if TARGET_PC + // Set the item before the demo again incase the player collected something else and then came back + if (randomizer_IsActive()) { + m_itemNo = verifyProgressiveItem(randomizer_getItemAtLocation("Wooden Statue")); + } +#endif mItemId = fopAcM_createItemForTrBoxDemo(¤t.pos, m_itemNo, 0xffffffff, fopAcM_GetRoomNo(this), 0, 0); JUT_ASSERT(544, mItemId != fpcM_ERROR_PROCESS_ID_e); diff --git a/src/d/d_item_data.cpp b/src/d/d_item_data.cpp index ba53f0e669..cc53784c8c 100644 --- a/src/d/d_item_data.cpp +++ b/src/d/d_item_data.cpp @@ -965,7 +965,7 @@ dItem_fieldItemResource dItem_data::field_item_res_randomizer[] = { /* 0x7F */ {"F_gD_rupy", 0x0004,-0x0001,-0x0001, 0xFF, 0x1000}, /* 0x80 */ {"O_gD_lttr", 0x0003,-0x0001,-0x0001, 0xFF, 0x1000}, /* 0x81 */ {"O_gD_bill", 0x0003,-0x0001,-0x0001, 0xFF, 0x1000}, - /* 0x82 */ {"O_gD_wood", 0x0004,-0x0001,-0x0001, 0xFF, 0x1000}, + /* 0x82 */ {"O_wood", 0x0004,-0x0001,-0x0001, 0xFF, 0x1000}, /* 0x83 */ {"O_gD_pend", 0x0003,-0x0001,-0x0001, 0xFF, 0x1000}, /* 0x84 */ {"O_gD_pend", 0x0003,-0x0001,-0x0001, 0xFF, 0x1000}, /* 0x85 */ {"T_gD_key", 0x0003,-0x0001,-0x0001, 0xFF, 0x1000}, diff --git a/src/dusk/randomizer/generator/data/locations.yaml b/src/dusk/randomizer/generator/data/locations.yaml index 5f37554f52..82484e526c 100644 --- a/src/dusk/randomizer/generator/data/locations.yaml +++ b/src/dusk/randomizer/generator/data/locations.yaml @@ -2723,7 +2723,6 @@ - Stage: 57 Flag: 0x83 -# TODO - Name: Wooden Statue Original Item: Wooden Statue Categories: @@ -2731,8 +2730,8 @@ - Npc - Hyrule Field - Lanayru Province - REL - Metadata: - - None + - Location Name Lookup + Metadata: Wooden Statue - Name: Lake Hylia Bridge Owl Statue Chest Original Item: Orange Rupee