diff --git a/include/d/a/obj/d_a_obj_girahim_foot.h b/include/d/a/obj/d_a_obj_girahim_foot.h index 658b4b2c..fe9e6ed6 100644 --- a/include/d/a/obj/d_a_obj_girahim_foot.h +++ b/include/d/a/obj/d_a_obj_girahim_foot.h @@ -3,6 +3,7 @@ #include "d/a/obj/d_a_obj_base.h" #include "d/col/bg/d_bg_s_acch.h" +#include "d/d_shadow.h" #include "m/m3d/m_smdl.h" #include "nw4r/g3d/res/g3d_resfile.h" #include "s/s_State.hpp" @@ -24,7 +25,7 @@ public: private: /* 0x330 */ nw4r::g3d::ResFile mRes; /* 0x334 */ m3d::smdl_c mMdl; - /* 0x350 */ m3d::mShadowCircle_c mShadow; + /* 0x350 */ dShadowCircle_c mShadow; /* 0x358 */ STATE_MGR_DECLARE(dAcOgirahimFoot_c); bool field_0x394; }; diff --git a/src/REL/d/a/obj/d_a_obj_girahim_foot.cpp b/src/REL/d/a/obj/d_a_obj_girahim_foot.cpp index 9a88dcfc..cab38aae 100644 --- a/src/REL/d/a/obj/d_a_obj_girahim_foot.cpp +++ b/src/REL/d/a/obj/d_a_obj_girahim_foot.cpp @@ -14,6 +14,16 @@ SPECIAL_ACTOR_PROFILE(OBJ_GIRAHIM_FOOT, dAcOgirahimFoot_c, fProfile::OBJ_GIRAHIM STATE_DEFINE(dAcOgirahimFoot_c, Wait); STATE_DEFINE(dAcOgirahimFoot_c, Appear); +bool dAcOgirahimFoot_c::createHeap() { + mRes = nw4r::g3d::ResFile(getOarcResFile("Girahim_Foot")); + + nw4r::g3d::ResMdl resMdl = mRes.GetResMdl("Girahim_Foot"); + + TRY_CREATE(mMdl.create(resMdl, &heap_allocator, 0x120, 1, nullptr)); + + return true; +} + int dAcOgirahimFoot_c::create() { CREATE_ALLOCATOR(dAcOgirahimFoot_c); @@ -47,16 +57,6 @@ int dAcOgirahimFoot_c::draw() { return SUCCEEDED; } -bool dAcOgirahimFoot_c::createHeap() { - mRes = nw4r::g3d::ResFile(getOarcResFile("Girahim_Foot")); - - nw4r::g3d::ResMdl resMdl = mRes.GetResMdl("Girahim_Foot"); - - TRY_CREATE(mMdl.create(resMdl, &heap_allocator, 0x120, 1, nullptr)); - - return true; -} - int dAcOgirahimFoot_c::actorExecute() { mStateMgr.executeState(); return SUCCEEDED; @@ -80,14 +80,15 @@ void dAcOgirahimFoot_c::initializeState_Appear() { } void dAcOgirahimFoot_c::executeState_Appear() { - if (!field_0x394) { - dJEffManager_c::spawnEffect( - PARTICLE_RESOURCE_ID_MAPPING_77_, position, (mAng3_c *)0x0, &mScale, nullptr, nullptr, 0, 0 - ); - fBase_c::deleteRequest(); + if (field_0x394) { + return; } - return; + dJEffManager_c::spawnEffect( + PARTICLE_RESOURCE_ID_MAPPING_77_, position, (mAng3_c *)0x0, &mScale, nullptr, nullptr, 0, 0 + ); + + deleteRequest(); } void dAcOgirahimFoot_c::finalizeState_Appear() {}