diff options
| author | robojumper <robojumper@gmail.com> | 2026-04-30 20:44:33 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2026-05-10 20:05:46 +0200 |
| commit | dfb2e9048b3e1a6eeeebda7252dab98664d58576 (patch) | |
| tree | 9f5c70b364c3f0df1fce642aef5d948187f92b27 /include | |
| parent | b80ede8f48197b69ecfe3e3945f45e09a4342792 (diff) | |
item_mdl_rupee OK
Diffstat (limited to 'include')
| -rw-r--r-- | include/toBeSorted/item_mdl.h | 3 | ||||
| -rw-r--r-- | include/toBeSorted/item_mdl_misc.h | 13 | ||||
| -rw-r--r-- | include/toBeSorted/item_mdl_rupee.h | 36 |
3 files changed, 43 insertions, 9 deletions
diff --git a/include/toBeSorted/item_mdl.h b/include/toBeSorted/item_mdl.h index 5ed940d0..107f9980 100644 --- a/include/toBeSorted/item_mdl.h +++ b/include/toBeSorted/item_mdl.h @@ -1,7 +1,6 @@ #ifndef TOBESORTED_ITEM_MDL_H #define TOBESORTED_ITEM_MDL_H -#include "m/m3d/m_mdl.h" #include "m/m_allocator.h" #include "m/m_mtx.h" #include "m/m_vec.h" @@ -21,7 +20,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) = 0; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) = 0; /* 0x1C */ virtual void draw() = 0; - /* 0x20 */ virtual void vt_0x20() = 0; + /* 0x20 */ virtual void vt_0x20(u16 itemId) = 0; /* 0x24 */ virtual void setPriorityDraw() = 0; /* 0x28 */ virtual void unsetPriorityDraw() = 0; /* 0x2C */ virtual m3d::smdl_c *getMdl() { diff --git a/include/toBeSorted/item_mdl_misc.h b/include/toBeSorted/item_mdl_misc.h index e5178dab..0e0bc9dd 100644 --- a/include/toBeSorted/item_mdl_misc.h +++ b/include/toBeSorted/item_mdl_misc.h @@ -6,7 +6,6 @@ #include "m/m3d/m_anmmdl.h" #include "m/m3d/m_anmtexpat.h" #include "m/m3d/m_anmtexsrt.h" -#include "m/m3d/m_mdl.h" #include "m/m3d/m_smdl.h" #include "m/types_m.h" #include "toBeSorted/item_mdl.h" @@ -19,7 +18,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; @@ -61,7 +60,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; @@ -103,7 +102,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; /* 0x2C */ virtual m3d::smdl_c *getMdl() override { @@ -145,7 +144,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; @@ -174,7 +173,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; /* 0x2C */ virtual m3d::smdl_c *getMdl() override; @@ -195,7 +194,7 @@ public: /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; /* 0x1C */ virtual void draw() override; - /* 0x20 */ virtual void vt_0x20() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; /* 0x24 */ virtual void setPriorityDraw() override; /* 0x28 */ virtual void unsetPriorityDraw() override; /* 0x2C */ virtual m3d::smdl_c *getMdl() override; diff --git a/include/toBeSorted/item_mdl_rupee.h b/include/toBeSorted/item_mdl_rupee.h new file mode 100644 index 00000000..41757072 --- /dev/null +++ b/include/toBeSorted/item_mdl_rupee.h @@ -0,0 +1,36 @@ +#ifndef TOBESORTED_ITEM_MDL_RUPEE_H +#define TOBESORTED_ITEM_MDL_RUPEE_H + +#include "m/m3d/m_anmtexpat.h" +#include "m/m3d/m_smdl.h" +#include "toBeSorted/item_mdl.h" + + +class dItemMdlRupee_c : public dItemMdl_c { +public: + /* 0x08 */ virtual ~dItemMdlRupee_c() {} + /* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override; + /* 0x10 */ virtual void vt_0x10(u8) override; + /* 0x14 */ virtual void setScale(const mVec3_c &scale) override; + /* 0x18 */ virtual void setLocalMtx(const mMtx_c &mtx) override; + /* 0x1C */ virtual void draw() override; + /* 0x20 */ virtual void vt_0x20(u16 itemId) override; + /* 0x24 */ virtual void setPriorityDraw() override; + /* 0x28 */ virtual void unsetPriorityDraw() override; + + static bool isMdlForItemId(u16 itemId); + +private: + struct MdlConfig { + u16 itemId; + f32 texPatFrame; + }; + static const MdlConfig sMdlConfig[]; + + /* 0x18 */ m3d::smdl_c mMdl1; + /* 0x34 */ m3d::smdl_c mMdl2; + /* 0x50 */ m3d::anmTexPat_c mAnmTexPat1; + /* 0x7C */ m3d::anmTexPat_c mAnmTexPat2; +}; + +#endif |
