diff --git a/soh/soh/SohGui/SohMenuEnhancements.cpp b/soh/soh/SohGui/SohMenuEnhancements.cpp index 786183882..8a892e924 100644 --- a/soh/soh/SohGui/SohMenuEnhancements.cpp +++ b/soh/soh/SohGui/SohMenuEnhancements.cpp @@ -791,6 +791,11 @@ void SohMenu::AddMenuEnhancements() { .CVar(CVAR_ENHANCEMENT("FastFarores")) .Options(CheckboxOptions().Tooltip("Greatly decreases cast time of Farore's Wind magic spell.")); + AddWidget(path, "Bottles", WIDGET_SEPARATOR_TEXT); + AddWidget(path, "Rebottle Blue Fire", WIDGET_CVAR_CHECKBOX) + .CVar(CVAR_ENHANCEMENT("RebottleBlueFire")) + .Options(CheckboxOptions().Tooltip("Blue Fire dropped from bottle can be bottled.")); + // Fixes path.sidebarName = "Fixes"; AddSidebarEntry("Enhancements", path.sidebarName, 3); diff --git a/soh/src/overlays/actors/ovl_En_Ice_Hono/z_en_ice_hono.c b/soh/src/overlays/actors/ovl_En_Ice_Hono/z_en_ice_hono.c index f0e9cf64b..7e000e1ed 100644 --- a/soh/src/overlays/actors/ovl_En_Ice_Hono/z_en_ice_hono.c +++ b/soh/src/overlays/actors/ovl_En_Ice_Hono/z_en_ice_hono.c @@ -7,6 +7,8 @@ #include "z_en_ice_hono.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include + #define FLAGS 0 void EnIceHono_Init(Actor* thisx, PlayState* play); @@ -296,6 +298,10 @@ void EnIceHono_SpreadFlames(EnIceHono* this, PlayState* play) { } } + if (CVarGetInteger(CVAR_ENHANCEMENT("RebottleBlueFire"), 0)) { + EnIceHono_CapturableFlame(this, play); + } + if (this->timer <= 0) { Actor_Kill(&this->actor); } @@ -331,6 +337,11 @@ void EnIceHono_SmallFlameMove(EnIceHono* this, PlayState* play) { this->alpha -= 10; this->alpha = CLAMP(this->alpha, 0, 255); } + + if (CVarGetInteger(CVAR_ENHANCEMENT("RebottleBlueFire"), 0)) { + EnIceHono_CapturableFlame(this, play); + } + if (this->timer <= 0) { Actor_Kill(&this->actor); }