diff options
| author | elijah-thomas774 <elijahthomas774@gmail.com> | 2026-04-11 14:05:39 -0400 |
|---|---|---|
| committer | elijah-thomas774 <elijahthomas774@gmail.com> | 2026-04-18 09:05:49 -0400 |
| commit | 387b69e96e6a4bb09eb398bb134c446593545b2d (patch) | |
| tree | 724870c9e965d0e1fab2d2d49f98bf6f0156cecd /include/d | |
| parent | 7156493229f2a0ac36ba98e7271f147bdd18b47a (diff) | |
dAcODormitoryGate_c Start
Diffstat (limited to 'include/d')
| -rw-r--r-- | include/d/a/obj/d_a_obj_dormitory_gate.h | 44 | ||||
| -rw-r--r-- | include/d/flag/storyflag_map.h | 2 |
2 files changed, 43 insertions, 3 deletions
diff --git a/include/d/a/obj/d_a_obj_dormitory_gate.h b/include/d/a/obj/d_a_obj_dormitory_gate.h index 3e0ab410..9f1e81c1 100644 --- a/include/d/a/obj/d_a_obj_dormitory_gate.h +++ b/include/d/a/obj/d_a_obj_dormitory_gate.h @@ -2,18 +2,58 @@ #define D_A_OBJ_DORMITORY_GATE_H #include "d/a/obj/d_a_obj_base.h" +#include "d/col/bg/d_bg_w.h" +#include "m/m3d/m_anmmatclr.h" +#include "m/m3d/m_smdl.h" +#include "m/m_mtx.h" +#include "nw4r/g3d/res/g3d_resfile.h" #include "s/s_State.hpp" +#include "toBeSorted/stage_render_stuff.h" class dAcODormitoryGate_c : public dAcObjBase_c { public: - dAcODormitoryGate_c() : mStateMgr(*this) {} + enum Type_e { + TYPE_GATE = 0, + TYPE_GODDOOR = 1, + TYPE_SHUTTER = 2, + TYPE_GATE_F400 = 3, + }; + dAcODormitoryGate_c() : mStateMgr(*this), mScnCallback(this) {} virtual ~dAcODormitoryGate_c() {} + virtual int create() override; + virtual int doDelete() override; + virtual int draw() override; + virtual bool createHeap() override; + virtual int actorExecute() override; + STATE_FUNC_DECLARE(dAcODormitoryGate_c, Wait); STATE_FUNC_DECLARE(dAcODormitoryGate_c, End); private: - /* 0x??? */ STATE_MGR_DECLARE(dAcODormitoryGate_c); + /** Sets the parameter for Door to be open/closed physically */ + void fn_534_C80(); + + /** Sets the Door open/closed physically */ + void fn_534_D40(); + + bool checkOpenFlag(); + + /* 0x330 */ nw4r::g3d::ResFile mResFile; + /* 0x334 */ m3d::smdl_c mMdls[2]; + /* 0x36C */ m3d::anmMatClr_c mAnmMatClr; + /* 0x398 */ dBgW mCollision[2]; + /* 0x7B8 */ STATE_MGR_DECLARE(dAcODormitoryGate_c); + /* 0x7F4 */ mMtx_c mDoorMtx[2]; + /* 0x854 */ Type_e mSubtype; + /* 0x858 */ u8 mNumDoors; + /* 0x85C */ f32 mShutterHeight; + /* 0x860 */ mAng mGateAngle; + /* 0x862 */ bool mIsOpen; + /* 0x863 */ u8 _0x863[0x865 - 0x863]; + /* 0x865 */ u8 mGodDoorSomething; + /* 0x868 */ dScnCallback_c mScnCallback; + /* 0x874 */ u16 mStoryflag; }; #endif diff --git a/include/d/flag/storyflag_map.h b/include/d/flag/storyflag_map.h index 4feeed1f..a8c617a8 100644 --- a/include/d/flag/storyflag_map.h +++ b/include/d/flag/storyflag_map.h @@ -3383,7 +3383,7 @@ enum StoryFlags_e { /** [Goddess Statue Opened] * Story Flag #672 (0x02A0) - JP 805ACDA0 0x02 / US 805A9B20 0x02 */ - STORYFLAG_672, + STORYFLAG_GODDESS_STATUE_ACCESS, /** [Set when Scrapper picks up Oolo] * Story Flag #673 (0x02A1) - JP 805ACDA0 0x04 / US 805A9B20 0x04 |
