diff options
| author | robojumper <robojumper@gmail.com> | 2025-08-03 12:35:45 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2025-09-13 10:12:38 +0200 |
| commit | b4200519b168b970b3afdccf357d1ef42001b52a (patch) | |
| tree | a8c6420bd02d662d4c69402779d91a810fa07965 /include | |
| parent | e97f2d6a4ad0c75a3f1c5eced7656b89b81633ae (diff) | |
d_lyt_pause_back OK
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/d_stage_mgr.h | 10 | ||||
| -rw-r--r-- | include/d/lyt/d_lyt_pause.h | 31 | ||||
| -rw-r--r-- | include/d/lyt/d_lyt_pause_back.h | 41 |
3 files changed, 81 insertions, 1 deletions
diff --git a/include/d/d_stage_mgr.h b/include/d/d_stage_mgr.h index 49e97c78..57aad744 100644 --- a/include/d/d_stage_mgr.h +++ b/include/d/d_stage_mgr.h @@ -7,6 +7,7 @@ #include "d/d_bzs_types.h" #include "d/d_dylink.h" #include "d/d_fader.h" +#include "egg/gfx/eggCpuTexture.h" #include "egg/gfx/eggScreen.h" #include "m/m_allocator.h" #include "m/m_dvd.h" @@ -78,6 +79,10 @@ public: return sInstance; } + EGG::CpuTexture *getField_0x8898() { + return field_0x8898; + } + bool checkFlag0x88A0(u32 flag) const { return (field_0x88A0 & flag) != 0; } @@ -190,7 +195,10 @@ private: /* 0x8694 */ dTimeAreaMgr_c mTimeAreaMgr; // ... - u8 ___[446]; + u8 ___[438]; + /* 0x8898 */ EGG::CpuTexture *field_0x8898; + + u8 _0x889C[4]; /* 0x88A0 */ u32 field_0x88A0; /* 0x88A4 */ SizedString<16> mDemoName; diff --git a/include/d/lyt/d_lyt_pause.h b/include/d/lyt/d_lyt_pause.h new file mode 100644 index 00000000..ca02dcc1 --- /dev/null +++ b/include/d/lyt/d_lyt_pause.h @@ -0,0 +1,31 @@ +#ifndef D_LYT_PAUSE_H +#define D_LYT_PAUSE_H + +#include "d/lyt/d2d.h" +#include "egg/gfx/eggCpuTexture.h" + +class dLytPauseMgr_c { +public: + static dLytPauseMgr_c *GetInstance() { + return sInstance; + } + + d2d::ResAccIf_c *getResAcc1() { + return &mResAcc1; + } + + EGG::CpuTexture *getBgTexture() { + return mpBgTexture; + } + +private: + static dLytPauseMgr_c *sInstance; + + /* 0x0000 */ u8 _0x0000[0x00C8 - 0x0000]; + /* 0x00C8 */ d2d::ResAccIf_c mResAcc1; + /* 0x0438 */ u8 _0x0438[0x0814 - 0x0438]; + + /* 0x0814 */ EGG::CpuTexture *mpBgTexture; +}; + +#endif diff --git a/include/d/lyt/d_lyt_pause_back.h b/include/d/lyt/d_lyt_pause_back.h new file mode 100644 index 00000000..9085f6f0 --- /dev/null +++ b/include/d/lyt/d_lyt_pause_back.h @@ -0,0 +1,41 @@ +#ifndef D_LYT_PAUSE_BACK_H +#define D_LYT_PAUSE_BACK_H + +#include "d/lyt/d2d.h" +#include "s/s_State.hpp" + +class dLytPauseBack_c { +public: + dLytPauseBack_c(); + virtual ~dLytPauseBack_c() {} + + bool build(); + bool remove(); + bool execute(); + bool draw(); + + void loadBgTexture(); + void requestIn(); + void requestOut(); + +private: + void startAnim(int idx); + void stopAnim(int idx); + + STATE_FUNC_DECLARE(dLytPauseBack_c, None); + STATE_FUNC_DECLARE(dLytPauseBack_c, In); + STATE_FUNC_DECLARE(dLytPauseBack_c, Wait); + STATE_FUNC_DECLARE(dLytPauseBack_c, Out); + + /* 0x004 */ UI_STATE_MGR_DECLARE(dLytPauseBack_c); + /* 0x040 */ d2d::LytBase_c mLyt; + /* 0x0D0 */ d2d::AnmGroup_c mAnm[2]; + + /* 0x150 */ s32 mOutStep; + /* 0x154 */ bool mInRequest; + /* 0x155 */ bool mOutRequest; + /* 0x156 */ bool field_0x156; + /* 0x157 */ bool mVisible; +}; + +#endif |
