This commit is contained in:
robojumper
2026-05-03 21:26:44 +02:00
parent 9843fc6922
commit 02bab6f41f
33 changed files with 262 additions and 265 deletions
+22 -22
View File
@@ -9459,57 +9459,57 @@ getMax__18ExtraWalletCounterCFv = .text:0x8016E280; // type:function size:0x8 sc
__sinit_\extra_wallet_counter_cpp = .text:0x8016E290; // type:function size:0x8 scope:local
isMdlForItemId__13dItemMdlPut_cFUs = .text:0x8016E2A0; // type:function size:0x6C
init__13dItemMdlPut_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016E310; // type:function size:0x194
vt_0x10__13dItemMdlPut_cFUc = .text:0x8016E4B0; // type:function size:0x1C
setDrawMode__13dItemMdlPut_cFUc = .text:0x8016E4B0; // type:function size:0x1C
setScale__13dItemMdlPut_cFRC7mVec3_c = .text:0x8016E4D0; // type:function size:0x48
setLocalMtx__13dItemMdlPut_cFRC6mMtx_c = .text:0x8016E520; // type:function size:0x48
draw__13dItemMdlPut_cFv = .text:0x8016E570; // type:function size:0x40
vt_0x20__13dItemMdlPut_cFv = .text:0x8016E5B0; // type:function size:0x4
changeItemId__13dItemMdlPut_cFUs = .text:0x8016E5B0; // type:function size:0x4
setPriorityDraw__13dItemMdlPut_cFv = .text:0x8016E5C0; // type:function size:0x48
unsetPriorityDraw__13dItemMdlPut_cFv = .text:0x8016E610; // type:function size:0x48
isMdlForItemId__16dItemMdlShield_cFUs = .text:0x8016E660; // type:function size:0x6C
init__16dItemMdlShield_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016E6D0; // type:function size:0x15C
vt_0x10__16dItemMdlShield_cFUc = .text:0x8016E830; // type:function size:0x8
setDrawMode__16dItemMdlShield_cFUc = .text:0x8016E830; // type:function size:0x8
setScale__16dItemMdlShield_cFRC7mVec3_c = .text:0x8016E840; // type:function size:0x8
setLocalMtx__16dItemMdlShield_cFRC6mMtx_c = .text:0x8016E850; // type:function size:0x8
draw__16dItemMdlShield_cFv = .text:0x8016E860; // type:function size:0x30
vt_0x20__16dItemMdlShield_cFv = .text:0x8016E890; // type:function size:0x4
changeItemId__16dItemMdlShield_cFUs = .text:0x8016E890; // type:function size:0x4
setPriorityDraw__16dItemMdlShield_cFv = .text:0x8016E8A0; // type:function size:0x10
unsetPriorityDraw__16dItemMdlShield_cFv = .text:0x8016E8B0; // type:function size:0x10
isMdlForItemId__16dItemMdlBottle_cFUs = .text:0x8016E8C0; // type:function size:0x6C
init__16dItemMdlBottle_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016E930; // type:function size:0x104
vt_0x10__16dItemMdlBottle_cFUc = .text:0x8016EA40; // type:function size:0x8
setDrawMode__16dItemMdlBottle_cFUc = .text:0x8016EA40; // type:function size:0x8
setScale__16dItemMdlBottle_cFRC7mVec3_c = .text:0x8016EA50; // type:function size:0x8
setLocalMtx__16dItemMdlBottle_cFRC6mMtx_c = .text:0x8016EA60; // type:function size:0x8
draw__16dItemMdlBottle_cFv = .text:0x8016EA70; // type:function size:0x8C
vt_0x20__16dItemMdlBottle_cFv = .text:0x8016EB00; // type:function size:0x4
changeItemId__16dItemMdlBottle_cFUs = .text:0x8016EB00; // type:function size:0x4
setPriorityDraw__16dItemMdlBottle_cFv = .text:0x8016EB10; // type:function size:0x10
unsetPriorityDraw__16dItemMdlBottle_cFv = .text:0x8016EB20; // type:function size:0x10
isMdlForItemId__14dItemMdlTear_cFUs = .text:0x8016EB30; // type:function size:0x4
init__14dItemMdlTear_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016EB40; // type:function size:0x360
vt_0x10__14dItemMdlTear_cFUc = .text:0x8016EEA0; // type:function size:0x1C
setDrawMode__14dItemMdlTear_cFUc = .text:0x8016EEA0; // type:function size:0x1C
setScale__14dItemMdlTear_cFRC7mVec3_c = .text:0x8016EEC0; // type:function size:0x48
setLocalMtx__14dItemMdlTear_cFRC6mMtx_c = .text:0x8016EF10; // type:function size:0x48
draw__14dItemMdlTear_cFv = .text:0x8016EF60; // type:function size:0x84
vt_0x20__14dItemMdlTear_cFv = .text:0x8016EFF0; // type:function size:0x4
changeItemId__14dItemMdlTear_cFUs = .text:0x8016EFF0; // type:function size:0x4
setPriorityDraw__14dItemMdlTear_cFv = .text:0x8016F000; // type:function size:0x48
unsetPriorityDraw__14dItemMdlTear_cFv = .text:0x8016F050; // type:function size:0x48
isMdlForItemId__17dItemMdlFirefly_cFUs = .text:0x8016F0A0; // type:function size:0x4
init__17dItemMdlFirefly_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016F0B0; // type:function size:0x13C
vt_0x10__17dItemMdlFirefly_cFUc = .text:0x8016F1F0; // type:function size:0x8
setDrawMode__17dItemMdlFirefly_cFUc = .text:0x8016F1F0; // type:function size:0x8
setScale__17dItemMdlFirefly_cFRC7mVec3_c = .text:0x8016F200; // type:function size:0x8
setLocalMtx__17dItemMdlFirefly_cFRC6mMtx_c = .text:0x8016F210; // type:function size:0x8
draw__17dItemMdlFirefly_cFv = .text:0x8016F220; // type:function size:0x78
vt_0x20__17dItemMdlFirefly_cFv = .text:0x8016F2A0; // type:function size:0x4
changeItemId__17dItemMdlFirefly_cFUs = .text:0x8016F2A0; // type:function size:0x4
setPriorityDraw__17dItemMdlFirefly_cFv = .text:0x8016F2B0; // type:function size:0x10
unsetPriorityDraw__17dItemMdlFirefly_cFv = .text:0x8016F2C0; // type:function size:0x10
getMdl__17dItemMdlFirefly_cFv = .text:0x8016F2D0; // type:function size:0x8
isMdlForItemId__16dItemMdlPotion_cFUs = .text:0x8016F2E0; // type:function size:0x6C
init__16dItemMdlPotion_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016F350; // type:function size:0x1D4
vt_0x10__16dItemMdlPotion_cFUc = .text:0x8016F530; // type:function size:0x8
setDrawMode__16dItemMdlPotion_cFUc = .text:0x8016F530; // type:function size:0x8
setScale__16dItemMdlPotion_cFRC7mVec3_c = .text:0x8016F540; // type:function size:0x8
setLocalMtx__16dItemMdlPotion_cFRC6mMtx_c = .text:0x8016F550; // type:function size:0x8
draw__16dItemMdlPotion_cFv = .text:0x8016F560; // type:function size:0x8C
vt_0x20__16dItemMdlPotion_cFv = .text:0x8016F5F0; // type:function size:0x4
changeItemId__16dItemMdlPotion_cFUs = .text:0x8016F5F0; // type:function size:0x4
setPriorityDraw__16dItemMdlPotion_cFv = .text:0x8016F600; // type:function size:0x10
unsetPriorityDraw__16dItemMdlPotion_cFv = .text:0x8016F610; // type:function size:0x10
getMdl__16dItemMdlPotion_cFv = .text:0x8016F620; // type:function size:0x8
@@ -9524,42 +9524,42 @@ __dt__16dItemMdlShield_cFv = .text:0x8016F8E0; // type:function size:0x7C scope:
__dt__13dItemMdlPut_cFv = .text:0x8016F960; // type:function size:0x7C scope:weak
isMdlForItemId__14dItemMdlItem_cFUs = .text:0x8016F9E0; // type:function size:0x6C
init__14dItemMdlItem_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016FA50; // type:function size:0x2C0
vt_0x10__14dItemMdlItem_cFUc = .text:0x8016FD10; // type:function size:0x8
setDrawMode__14dItemMdlItem_cFUc = .text:0x8016FD10; // type:function size:0x8
setScale__14dItemMdlItem_cFRC7mVec3_c = .text:0x8016FD20; // type:function size:0x8
setLocalMtx__14dItemMdlItem_cFRC6mMtx_c = .text:0x8016FD30; // type:function size:0x8
draw__14dItemMdlItem_cFv = .text:0x8016FD40; // type:function size:0x30
vt_0x20__14dItemMdlItem_cFUs = .text:0x8016FD70; // type:function size:0x4
changeItemId__14dItemMdlItem_cFUs = .text:0x8016FD70; // type:function size:0x4
setPriorityDraw__14dItemMdlItem_cFv = .text:0x8016FD80; // type:function size:0x10
unsetPriorityDraw__14dItemMdlItem_cFv = .text:0x8016FD90; // type:function size:0x10
getMdl__14dItemMdlItem_cFv = .text:0x8016FDA0; // type:function size:0x8
__dt__14dItemMdlItem_cFv = .text:0x8016FDB0; // type:function size:0x70
isMdlForItemId__15dItemMdlRupee_cFUs = .text:0x8016FE20; // type:function size:0x4C
init__15dItemMdlRupee_cFUsP9dAcItem_cP12mAllocator_c = .text:0x8016FE70; // type:function size:0x2C0
vt_0x10__15dItemMdlRupee_cFUc = .text:0x80170130; // type:function size:0x1C
setDrawMode__15dItemMdlRupee_cFUc = .text:0x80170130; // type:function size:0x1C
setScale__15dItemMdlRupee_cFRC7mVec3_c = .text:0x80170150; // type:function size:0x48
setLocalMtx__15dItemMdlRupee_cFRC6mMtx_c = .text:0x801701A0; // type:function size:0x48
draw__15dItemMdlRupee_cFv = .text:0x801701F0; // type:function size:0x40
vt_0x20__15dItemMdlRupee_cFUs = .text:0x80170230; // type:function size:0xAC
changeItemId__15dItemMdlRupee_cFUs = .text:0x80170230; // type:function size:0xAC
setPriorityDraw__15dItemMdlRupee_cFv = .text:0x801702E0; // type:function size:0x48
unsetPriorityDraw__15dItemMdlRupee_cFv = .text:0x80170330; // type:function size:0x48
__dt__15dItemMdlRupee_cFv = .text:0x80170380; // type:function size:0x94
isMdlForItemId__20dItemMdlLightFruit_cFUs = .text:0x80170420; // type:function size:0x10
init__20dItemMdlLightFruit_cFUsP9dAcItem_cP12mAllocator_c = .text:0x80170430; // type:function size:0x214
vt_0x10__20dItemMdlLightFruit_cFUc = .text:0x80170650; // type:function size:0x1C
setDrawMode__20dItemMdlLightFruit_cFUc = .text:0x80170650; // type:function size:0x1C
setScale__20dItemMdlLightFruit_cFRC7mVec3_c = .text:0x80170670; // type:function size:0x48
setLocalMtx__20dItemMdlLightFruit_cFRC6mMtx_c = .text:0x801706C0; // type:function size:0x48
draw__20dItemMdlLightFruit_cFv = .text:0x80170710; // type:function size:0x84
vt_0x20__20dItemMdlLightFruit_cFUs = .text:0x801707A0; // type:function size:0x4
changeItemId__20dItemMdlLightFruit_cFUs = .text:0x801707A0; // type:function size:0x4
setPriorityDraw__20dItemMdlLightFruit_cFv = .text:0x801707B0; // type:function size:0x48
unsetPriorityDraw__20dItemMdlLightFruit_cFv = .text:0x80170800; // type:function size:0x48
__dt__20dItemMdlLightFruit_cFv = .text:0x80170850; // type:function size:0x94
isMdlForItemId__22dItemMdlStaminaFruit_cFUs = .text:0x801708F0; // type:function size:0x10
init__22dItemMdlStaminaFruit_cFUsP9dAcItem_cP12mAllocator_c = .text:0x80170900; // type:function size:0x204
vt_0x10__22dItemMdlStaminaFruit_cFUc = .text:0x80170B10; // type:function size:0x1C
setDrawMode__22dItemMdlStaminaFruit_cFUc = .text:0x80170B10; // type:function size:0x1C
setScale__22dItemMdlStaminaFruit_cFRC7mVec3_c = .text:0x80170B30; // type:function size:0x48
setLocalMtx__22dItemMdlStaminaFruit_cFRC6mMtx_c = .text:0x80170B80; // type:function size:0x48
draw__22dItemMdlStaminaFruit_cFv = .text:0x80170BD0; // type:function size:0x84
vt_0x20__22dItemMdlStaminaFruit_cFUs = .text:0x80170C60; // type:function size:0x4
changeItemId__22dItemMdlStaminaFruit_cFUs = .text:0x80170C60; // type:function size:0x4
setPriorityDraw__22dItemMdlStaminaFruit_cFv = .text:0x80170C70; // type:function size:0x48
unsetPriorityDraw__22dItemMdlStaminaFruit_cFv = .text:0x80170CC0; // type:function size:0x48
__dt__22dItemMdlStaminaFruit_cFv = .text:0x80170D10; // type:function size:0x94
@@ -13905,8 +13905,8 @@ isInsect__9dAcItem_cCFv = .text:0x80256C90; // type:function size:0x8
isUnkTreasureGroup1__9dAcItem_cCFv = .text:0x80256CA0; // type:function size:0x8
isTreasure3__9dAcItem_cCFv = .text:0x80256CB0; // type:function size:0x8
isKeyPieceV__9dAcItem_cCFv = .text:0x80256CC0; // type:function size:0x34
is5GratitudeCrystals__9dAcItem_cCFv = .text:0x80256D00; // type:function size:0x34
isGratitudeCrystal__9dAcItem_cCFv = .text:0x80256D40; // type:function size:0x34
is5GratitudeCrystalsV__9dAcItem_cCFv = .text:0x80256D00; // type:function size:0x34
isGratitudeCrystalV__9dAcItem_cCFv = .text:0x80256D40; // type:function size:0x34
isFairyV__9dAcItem_cCFv = .text:0x80256D80; // type:function size:0x34
isBottleFairyV__9dAcItem_cCFv = .text:0x80256DC0; // type:function size:0x34
isStarryFireflyV__9dAcItem_cCFv = .text:0x80256E00; // type:function size:0x34
+4 -4
View File
@@ -241,10 +241,10 @@ public:
static Trial_e getCurrentTrial();
enum Tear_e {
TEAR_0,
TEAR_1,
TEAR_2,
TEAR_3,
TEAR_FARON,
TEAR_ELDIN,
TEAR_LANAYRU,
TEAR_GODDESS,
TEAR_MAX
};
+2 -2
View File
@@ -351,7 +351,7 @@ enum dCcD_ObjAtType {
/* 0x 0001 0000 */ AT_TYPE_BELLOWS = (1 << 16),
/* 0x 0002 0000 */ AT_TYPE_0x20000 = (1 << 17),
/* 0x 0004 0000 */ AT_TYPE_0x40000 = (1 << 18),
/* 0x 0008 0000 */ AT_TYPE_0x80000 = (1 << 19),
/* 0x 0008 0000 */ AT_TYPE_GLITTERING_SPORES = (1 << 19),
/* 0x 0010 0000 */ AT_TYPE_BUBBLE = (1 << 20),
/* 0x 0020 0000 */ AT_TYPE_0x200000 = (1 << 21),
/* 0x 0040 0000 */ AT_TYPE_BEETLE = (1 << 22),
@@ -361,7 +361,7 @@ enum dCcD_ObjAtType {
/* 0x 0400 0000 */ AT_TYPE_KOLOKTOS_SWORD = (1 << 26),
/* 0x 0800 0000 */ AT_TYPE_0x8000000 = (1 << 27),
/* 0x 0148 8200 */ AT_TYPE_COMMON0 =
AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND,
AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND,
};
enum cCcD_AtModifiers_e {
+9 -9
View File
@@ -14,30 +14,30 @@ class dAcItem_c;
// vtable at 80533eb0
class dItemMdl_c : public dMdl_c {
public:
dItemMdl_c() : field_0x14(ITEM_MDL_UNK0x14_0) {}
dItemMdl_c() : mDrawMode(DrawMode_None) {}
/* 0x08 */ virtual ~dItemMdl_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) = 0;
/* 0x10 */ virtual void vt_0x10(u8) = 0;
/* 0x10 */ virtual void setDrawMode(u8) = 0;
/* 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(u16 itemId) = 0;
/* 0x20 */ virtual void changeItemId(u16 itemId) = 0;
/* 0x24 */ virtual void setPriorityDraw() = 0;
/* 0x28 */ virtual void unsetPriorityDraw() = 0;
/* 0x2C */ virtual m3d::smdl_c *getMdl() {
return nullptr;
}
enum ItemMdl0x14_e {
ITEM_MDL_UNK0x14_0,
ITEM_MDL_UNK0x14_1,
ITEM_MDL_UNK0x14_2,
ITEM_MDL_UNK0x14_3,
enum DrawMode_e {
DrawMode_None,
DrawMode_Put,
DrawMode_Get,
DrawMode_Max,
};
protected:
/* 0x10 */ dAcItem_c *mpItem;
/* 0x14 */ u8 field_0x14;
/* 0x14 */ u8 mDrawMode;
};
#endif
+2 -2
View File
@@ -9,11 +9,11 @@ class dItemMdlItem_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlItem_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
/* 0x2C */ virtual m3d::smdl_c *getMdl() override;
+6 -6
View File
@@ -10,21 +10,21 @@ class dItemMdlLightFruit_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlLightFruit_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
static bool isMdlForItemId(u16 itemId);
private:
/* 0x18 */ m3d::smdl_c mMdl1;
/* 0x34 */ m3d::smdl_c mMdl2;
/* 0x50 */ m3d::anmTexSrt_c mAnmTexSrt1;
/* 0x7C */ m3d::anmTexSrt_c mAnmTexSrt2;
/* 0x18 */ m3d::smdl_c mPutMdl;
/* 0x34 */ m3d::smdl_c mGetMdl;
/* 0x50 */ m3d::anmTexSrt_c mPutAnmTexSrt;
/* 0x7C */ m3d::anmTexSrt_c mGetAnmTexSrt;
};
#endif
+20 -20
View File
@@ -14,11 +14,11 @@ class dItemMdlPut_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlPut_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
@@ -34,19 +34,19 @@ private:
static const MdlConfig sMdlConfig[];
static const u8 sMdlIdx[];
/* 0x18 */ m3d::smdl_c mGetMdl;
/* 0x34 */ m3d::smdl_c mPutMdl;
/* 0x18 */ m3d::smdl_c mPutMdl;
/* 0x34 */ m3d::smdl_c mGetMdl;
};
class dItemMdlShield_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlShield_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
@@ -72,11 +72,11 @@ public:
dItemMdlBottle_c() : mFlags(0) {}
/* 0x08 */ virtual ~dItemMdlBottle_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
/* 0x2C */ virtual m3d::smdl_c *getMdl() override {
@@ -102,11 +102,11 @@ class dItemMdlTear_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlTear_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
@@ -119,23 +119,23 @@ private:
static const MdlConfig sMdlConfig[];
static const u8 sMdlIdx[];
/* 0x18 */ m3d::smdl_c mMdl1;
/* 0x34 */ m3d::smdl_c mMdl2;
/* 0x50 */ m3d::anmTexPat_c mAnmTexPat1;
/* 0x7C */ m3d::anmTexPat_c mAnmTexPat2;
/* 0xA8 */ m3d::anmTexSrt_c mAnmTexSrt1;
/* 0xD4 */ m3d::anmTexSrt_c mAnmTexSrt2;
/* 0x18 */ m3d::smdl_c mPutMdl;
/* 0x34 */ m3d::smdl_c mGetMdl;
/* 0x50 */ m3d::anmTexPat_c mPutAnmTexPat;
/* 0x7C */ m3d::anmTexPat_c mGetAnmTexPat;
/* 0xA8 */ m3d::anmTexSrt_c mPutAnmTexSrt;
/* 0xD4 */ m3d::anmTexSrt_c mGetAnmTexSrt;
};
class dItemMdlFirefly_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlFirefly_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
/* 0x2C */ virtual m3d::smdl_c *getMdl() override;
@@ -152,11 +152,11 @@ class dItemMdlPotion_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlPotion_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
/* 0x2C */ virtual m3d::smdl_c *getMdl() override;
+6 -6
View File
@@ -10,11 +10,11 @@ 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;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
@@ -27,10 +27,10 @@ private:
};
static const MdlConfig sMdlConfig[];
/* 0x18 */ m3d::smdl_c mMdl1;
/* 0x34 */ m3d::smdl_c mMdl2;
/* 0x50 */ m3d::anmTexPat_c mAnmTexPat1;
/* 0x7C */ m3d::anmTexPat_c mAnmTexPat2;
/* 0x18 */ m3d::smdl_c mPutMdl;
/* 0x34 */ m3d::smdl_c mGetMdl;
/* 0x50 */ m3d::anmTexPat_c mPutAnmTexPat;
/* 0x7C */ m3d::anmTexPat_c mGetAnmTexPat;
};
#endif
+6 -6
View File
@@ -10,21 +10,21 @@ class dItemMdlStaminaFruit_c : public dItemMdl_c {
public:
/* 0x08 */ virtual ~dItemMdlStaminaFruit_c() {}
/* 0x0C */ virtual bool init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) override;
/* 0x10 */ virtual void vt_0x10(u8) override;
/* 0x10 */ virtual void setDrawMode(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;
/* 0x20 */ virtual void changeItemId(u16 itemId) override;
/* 0x24 */ virtual void setPriorityDraw() override;
/* 0x28 */ virtual void unsetPriorityDraw() override;
static bool isMdlForItemId(u16 itemId);
private:
/* 0x18 */ m3d::smdl_c mMdl1;
/* 0x34 */ m3d::smdl_c mMdl2;
/* 0x50 */ m3d::anmTexSrt_c mAnmTexSrt1;
/* 0x7C */ m3d::anmTexSrt_c mAnmTexSrt2;
/* 0x18 */ m3d::smdl_c mPutMdl;
/* 0x34 */ m3d::smdl_c mGetMdl;
/* 0x50 */ m3d::anmTexSrt_c mPutAnmTexSrt;
/* 0x7C */ m3d::anmTexSrt_c mGetAnmTexSrt;
};
#endif
+1 -1
View File
@@ -60,7 +60,7 @@ static dCcD_SrcCyl sSrcCyl1 = {
/* mObjInf */
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_0x80000 | AT_TYPE_BELLOWS | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000),
{~(AT_TYPE_BUGNET | AT_TYPE_GLITTERING_SPORES | AT_TYPE_BELLOWS | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000),
0x4103,
{0, 0x4, 0x407},
0x0,
+1 -1
View File
@@ -357,7 +357,7 @@ int dAcEremly_c::actorExecute() {
} break;
case 12: {
if (!isState(StateID_Fly) && mAnimation != ANM_Swim && mAnimation != ANM_SwimDamage) {
if (mSph.ChkTgHit() && mSph.ChkTgAtHitType(AT_TYPE_0x80000 | AT_TYPE_SLINGSHOT)) {
if (mSph.ChkTgHit() && mSph.ChkTgAtHitType(AT_TYPE_GLITTERING_SPORES | AT_TYPE_SLINGSHOT)) {
mAngle.y = getXZAngleToPlayer();
mSpeed = -15.f;
changeState(StateID_Stun);
+2 -2
View File
@@ -91,7 +91,7 @@ static dCcD_SrcCyl sSrcCyl = {
{
/* mObjAt */ {AT_TYPE_PHYSICS, 0x10013, {0, 0, 0}, 4, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000), 0x2000111, {0, 0xF, 0x407}, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000), 0x2000111, {0, 0xF, 0x407}, 0, 0},
/* mObjCo*/ {0xE9},
},
{
@@ -102,7 +102,7 @@ static dCcD_SrcSph sSrcSph = {
{
/* mObjAt */ {AT_TYPE_PHYSICS, 0x10003, {0, 0, 0}, 4, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND),
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND),
0x2000111,
{0, 0xF, 0x407},
0,
+1 -1
View File
@@ -12,7 +12,7 @@ dCcD_SrcSph dAcObjBirdSp_c::sCcSrc = {
/* mObjInf */ {
/* mObjAt */ {0, 2, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
// AT_TYPE_COMMON0 - AT_TYPE_WIND
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000), 0x00000105, {0, 00, 0x407}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000), 0x00000105, {0, 00, 0x407}, 0, 0},
/* mObjCo */ {0x00004029}},
/* mSphInf */ {1000.0f}
};
+1 -1
View File
@@ -35,7 +35,7 @@ static dCcD_SrcCyl sChairColData = {
/* mObjInf */
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_0x80000 | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000),
{~(AT_TYPE_BUGNET | AT_TYPE_GLITTERING_SPORES | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000),
0x111,
{0, 0x7, 0x407},
0x0,
+1 -1
View File
@@ -31,7 +31,7 @@ dCcD_SrcCps dAcODungeonShip_c::sCcSrc = {
{
{0, 0x1003E, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND),
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND),
0x111,
{0, 0, 0x407},
0,
@@ -40,7 +40,7 @@ bool dAcOFlyingClawshotTarget_c::createHeap() {
// clang-format off
const cCcD_SrcGObj dAcOFlyingClawshotTarget_c::sColSrc = {
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1080111, {0, 6, 0x407}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1080111, {0, 6, 0x407}, 0, 0},
/* mObjCo */ {0x0}
};
// clang-format on
+1 -1
View File
@@ -29,7 +29,7 @@ STATE_DEFINE(dAcOGrave_c, Move);
dCcD_SrcUnk dAcOGrave_c::sUnkSrc = {
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 6, 0x407}, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 6, 0x407}, 0, 0},
/* mObjCo */ {0}},
{-65.0f, 0.0f, -25.0f, 65.0f, 156.0f, 25.0f},
};
+1 -1
View File
@@ -23,7 +23,7 @@ dCcD_SrcSph dAcOpinwheel_c::sSphSrc = {
/* mObjInf */
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 6, 0x8}, 8, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 6, 0x8}, 8, 0},
/* mObjCo */ {0xE9}},
/* mSphInf */
{50.f},
+1 -1
View File
@@ -38,7 +38,7 @@ dCcD_SrcSph dAcOropeIgaiga_c::sSphSrc = {
/* mObjInf */
{/* mObjAt */ {AT_TYPE_DAMAGE, 0x1F, {0, 0, 0}, 1, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_WIND | AT_TYPE_0x8000 | AT_TYPE_0x80000 | AT_TYPE_BEETLE | AT_TYPE_BUGNET), 0x311, {0, 0, 0x407}, 0, 0},
{~(AT_TYPE_WIND | AT_TYPE_0x8000 | AT_TYPE_GLITTERING_SPORES | AT_TYPE_BEETLE | AT_TYPE_BUGNET), 0x311, {0, 0, 0x407}, 0, 0},
/* mObjCo */ {0xA9}},
/* mSphInf */
{20.f},
+1 -1
View File
@@ -8,7 +8,7 @@ SPECIAL_ACTOR_PROFILE(OBJ_SPIKE, dAcOspike_c, fProfile::OBJ_SPIKE, 0x1D9, 0, 2);
// clang-format off
dCcD_SrcUnk dAcOspike_c::sCcSrc = {
{{AT_TYPE_DAMAGE, 0x2003F, {0, 0, 0}, 1, 0, 0, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, 0x0, 0x06, 0x407, 0, },
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, 0x0, 0x06, 0x407, 0, },
{0}},
{-1.0f, -246.0f, -472.0f, 73.0f, 255.0f, 482.0f}};
// clang-format on
@@ -19,7 +19,7 @@ f32 dAcOtoD3StoneFigure_c::sHeight = 290.0f;
dCcD_SrcCyl dAcOtoD3StoneFigure_c::sCcSrc = {
{{0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND),
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND),
0x1000111,
{0, 0x06, 0x407},
0,
+1 -1
View File
@@ -11,7 +11,7 @@ SPECIAL_ACTOR_PROFILE(OBJ_TRIFORCE, dAcOtriforce_c, fProfile::OBJ_TRIFORCE, 0x15
// clang-format off
dCcD_SrcSph dAcOtriforce_c::sCcSrc = {
{{0, 0, 0, 0, 0, 0, 0, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, 0x0, 0x06, 0x407, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, 0x0, 0x06, 0x407, 0, 0},
{0xE9}},
{150.0f}};
// clang-format on
+1 -1
View File
@@ -52,7 +52,7 @@ STATE_DEFINE(dAcOtubo_c, Rebirth);
dCcD_SrcSph dAcOtubo_c::sSphSrc = {
/* mObjInf */
{/* mObjAt */ {AT_TYPE_PHYSICS, 0x12, {0, 0, 0}, 2, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_0x80000 | AT_TYPE_0x8000), 0x801111, {0, 0xA, 0x40F}, 8, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000), 0x801111, {0, 0xA, 0x40F}, 8, 0},
/* mObjCo */ {0x1E9}},
/* mSphInf */
{30.f},
+1 -1
View File
@@ -34,7 +34,7 @@ STATE_DEFINE(dAcOTumbleWeed_c, Slope);
dCcD_SrcSph dAcOTumbleWeed_c::sSphSrc = {
/* mObjInf */
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000), 0x111, {0, 8, 0x40F}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000), 0x111, {0, 8, 0x40F}, 0, 0},
/* mObjCo */ {0xE9}},
/* mSphInf */
{60.f},
+1 -1
View File
@@ -15,7 +15,7 @@ dCcD_SrcCyl dAcOwarpHole_c::sCylSrc = {
/* mObjInf */
{/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */
{~(AT_TYPE_BUGNET | AT_TYPE_0x80000 | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000), 0x111, {0, 0, 0x407}, 0, 0},
{~(AT_TYPE_BUGNET | AT_TYPE_GLITTERING_SPORES | AT_TYPE_BEETLE | AT_TYPE_WIND | AT_TYPE_0x8000), 0x111, {0, 0, 0x407}, 0, 0},
/* mObjCo */ {0x29}},
/* mCylInf */
{320.f, 300.f}
+15 -17
View File
@@ -260,7 +260,7 @@ static const GlitteringSporeRupeeChance sSporeRupeeChances[] = {
static const dCcD_SrcCyl sSrcCyl = {
{{0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
{~(AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 0x08, 0x407}, 0, 0},
{~(AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 0x08, 0x407}, 0, 0},
{0xE9}},
{40.0f, 60.0f}
};
@@ -988,7 +988,7 @@ int dAcItem_c::create() {
if (isAnyTear()) {
s32 type = getTearSubtype((ITEM_ID)mId);
if (type == TEAR_MAX) {
type = TEAR_0;
type = TEAR_FARON;
}
dAcObjBase_c *forceSign =
dAcObjBase_c::create(this, fProfile::OBJ_FORCE_SIGN, type & 0xFF, nullptr, nullptr, nullptr, nullptr, 0x3F);
@@ -1299,7 +1299,7 @@ void dAcItem_c::initializeState_Wait() {
mSpeed = 0.0f;
mVelocity.y = 0.0f;
}
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
field_0xD5B = 0;
field_0xD38 = field_0xD3A = field_0xD3C = 0;
fn_80253E20();
@@ -1415,8 +1415,7 @@ void dAcItem_c::executeState_Wait() {
return;
}
// Glittering Spores?
if (mCyl.ChkTgAtHitType(AT_TYPE_0x80000)) {
if (mCyl.ChkTgAtHitType(AT_TYPE_GLITTERING_SPORES)) {
if (isHeart()) {
if (fn_8024A230()) {
mVec3_c spawnPos(mPosition.x, mPosition.y + 30.0f, mPosition.z);
@@ -1451,7 +1450,7 @@ void dAcItem_c::executeState_Wait() {
}
}
setItemId(sSporeRupeeChances[i].itemId);
mpMdl->vt_0x20(sSporeRupeeChances[i].itemId);
mpMdl->changeItemId(sSporeRupeeChances[i].itemId);
unsetHaveNoGravity();
mVelocity.y = 10.0f;
fn_80252A80();
@@ -1653,10 +1652,9 @@ void dAcItem_c::executeState_Wait() {
}
}
dir *= -40.0f;
// TODO - for some reason the argument vector is at an entirely wrong stack position...
// Fixing this wil probably fix the rest of the stack position issues in this function.
mVec3_c efPos = offsetPos + dir;
mEff_0x928.holdEffect(
PARTICLE_RESOURCE_ID_MAPPING_821_, offsetPos + dir, nullptr, &scale, nullptr, nullptr
PARTICLE_RESOURCE_ID_MAPPING_821_, efPos, nullptr, &scale, nullptr, nullptr
);
}
makeLinkLookTowardItem();
@@ -1678,7 +1676,7 @@ void dAcItem_c::finalizeState_Wait() {
}
void dAcItem_c::initializeState_Carry() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
mSpeed = 0.0f;
mVelocity.y = 0.0f;
unsetHaveNoGravity();
@@ -1738,7 +1736,7 @@ void dAcItem_c::finalizeState_Carry() {
}
void dAcItem_c::initializeState_GetBeetle() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
field_0xD0C = 0.0f;
@@ -1821,7 +1819,7 @@ void dAcItem_c::finalizeState_WaitGet() {
}
void dAcItem_c::initializeState_Get() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
performCollection();
if (isAnyTear()) {
mVec3_c tmp;
@@ -1856,7 +1854,7 @@ void dAcItem_c::finalizeState_Get() {
}
void dAcItem_c::initializeState_WaitGetDemo() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setObjectProperty(OBJ_PROP_0x200);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
@@ -1892,7 +1890,7 @@ void dAcItem_c::executeState_WaitGetDemo() {
void dAcItem_c::finalizeState_WaitGetDemo() {}
void dAcItem_c::initializeState_WaitForcedGetDemo() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setObjectProperty(OBJ_PROP_0x200);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
@@ -1913,7 +1911,7 @@ void dAcItem_c::executeState_WaitForcedGetDemo() {
void dAcItem_c::finalizeState_WaitForcedGetDemo() {}
void dAcItem_c::initializeState_GetDemo() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
switch (getItemId()) {
case ITEM_FARON_GRASSHOPPER: sCollectionCurrentCount = getFaronGrasshooperCounter(); break;
case ITEM_WOODLAND_RHINO_BEETLE: sCollectionCurrentCount = getWoodlandRhinoBeetleCounter(); break;
@@ -2034,7 +2032,7 @@ void dAcItem_c::finalizeState_GetDemo() {
}
void dAcItem_c::initializeState_WaitTBoxGetDemo() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
setObjectProperty(OBJ_PROP_0x200);
@@ -2052,7 +2050,7 @@ void dAcItem_c::executeState_WaitTBoxGetDemo() {
void dAcItem_c::finalizeState_WaitTBoxGetDemo() {}
void dAcItem_c::initializeState_ResurgeWait() {
mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
// TODO FPR swap
mPosition = mPositionCopy;
mRotation = mRotationCopy;
+1 -1
View File
@@ -17,7 +17,7 @@ STATE_DEFINE(dAcArrow_c, Bound);
cCcD_SrcGObj dAcArrow_c::sCcSrcInf = {
{AT_TYPE_ARROW, 0x8BB, {0x15,0, 0}, 0, 0, 0, 0, 0, 0},
{
~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_ARROW | AT_TYPE_0x100 | AT_TYPE_WIND | AT_TYPE_SLINGSHOT),
~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_ARROW | AT_TYPE_0x100 | AT_TYPE_WIND | AT_TYPE_SLINGSHOT),
0x210, {0, 0, 0x407}, 0, 0
},
{0},
+3 -3
View File
@@ -92,7 +92,7 @@ static char *const sOpenEventNames[] = {
// TODO just copied from somewhere
const cCcD_SrcGObj dAcTbox_c::sColSrc = {
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0, {0, 0, 0x407}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0, {0, 0, 0x407}, 0, 0},
/* mObjCo */ {0xE9}
};
// clang-format on
@@ -1079,7 +1079,7 @@ int dAcTbox_c::create() {
// clang-format off
static const dCcD_SrcUnk s3 = {{
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {7, 0x407}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {7, 0x407}, 0, 0},
/* mObjCo */ {0x0}},
{0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f},
};
@@ -1090,7 +1090,7 @@ int dAcTbox_c::create() {
// clang-format off
static const dCcD_SrcUnk s4 = {{
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {6, 0x407}, 0, 0},
/* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {6, 0x407}, 0, 0},
/* mObjCo */ {0x0}},
{0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f},
};
+4 -5
View File
@@ -445,8 +445,8 @@ bool dItemMdlItem_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
return true;
}
void dItemMdlItem_c::vt_0x10(u8 arg) {
field_0x14 = arg;
void dItemMdlItem_c::setDrawMode(u8 arg) {
mDrawMode = arg;
}
void dItemMdlItem_c::setScale(const mVec3_c &scale) {
@@ -458,15 +458,14 @@ void dItemMdlItem_c::setLocalMtx(const mMtx_c &mtx) {
}
void dItemMdlItem_c::draw() {
if (field_0x14 == ITEM_MDL_UNK0x14_2) {
if (mDrawMode == DrawMode_Get) {
mpItem->fn_8002ECD0(&mMdl, 6);
} else {
ITEM_MDL_UNK0x14_1:
mpItem->fn_8002ECD0(&mMdl, 7);
}
}
void dItemMdlItem_c::vt_0x20(u16 itemId) {
void dItemMdlItem_c::changeItemId(u16 itemId) {
// no-op
}
+26 -26
View File
@@ -29,7 +29,7 @@ bool dItemMdlLightFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *alloc
if (!mdl1.IsValid()) {
return false;
}
if (!mMdl1.create(mdl1, allocator, 0x324)) {
if (!mPutMdl.create(mdl1, allocator, 0x324)) {
return false;
}
@@ -37,8 +37,8 @@ bool dItemMdlLightFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *alloc
if (!anmTexSrt1.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt1.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
mMdl1.setAnm(mAnmTexSrt1);
TRY_CREATE(mPutAnmTexSrt.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
mPutMdl.setAnm(mPutAnmTexSrt);
}
{
@@ -55,7 +55,7 @@ bool dItemMdlLightFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *alloc
if (!mdl2.IsValid()) {
return false;
}
if (!mMdl2.create(mdl2, allocator, 0x324)) {
if (!mGetMdl.create(mdl2, allocator, 0x324)) {
return false;
}
@@ -63,55 +63,55 @@ bool dItemMdlLightFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *alloc
if (!anmTexSrt2.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt2.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
mMdl2.setAnm(mAnmTexSrt2);
TRY_CREATE(mGetAnmTexSrt.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
mGetMdl.setAnm(mGetAnmTexSrt);
}
mpItem = item;
return true;
}
void dItemMdlLightFruit_c::vt_0x10(u8 arg) {
if (arg == ITEM_MDL_UNK0x14_3) {
field_0x14 = ITEM_MDL_UNK0x14_1;
void dItemMdlLightFruit_c::setDrawMode(u8 arg) {
if (arg == DrawMode_Max) {
mDrawMode = DrawMode_Put;
} else {
field_0x14 = arg;
mDrawMode = arg;
}
}
void dItemMdlLightFruit_c::setScale(const mVec3_c &scale) {
mMdl1.setScale(scale);
mMdl2.setScale(scale);
mPutMdl.setScale(scale);
mGetMdl.setScale(scale);
}
void dItemMdlLightFruit_c::setLocalMtx(const mMtx_c &mtx) {
mMdl1.setLocalMtx(mtx);
mMdl2.setLocalMtx(mtx);
mPutMdl.setLocalMtx(mtx);
mGetMdl.setLocalMtx(mtx);
}
void dItemMdlLightFruit_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1:
mAnmTexSrt1.play();
mpItem->fn_8002ECD0(&mMdl1, 7);
switch (mDrawMode) {
case DrawMode_Put:
mPutAnmTexSrt.play();
mpItem->fn_8002ECD0(&mPutMdl, 7);
break;
case ITEM_MDL_UNK0x14_2:
mAnmTexSrt2.play();
mpItem->fn_8002ECD0(&mMdl2, 6);
case DrawMode_Get:
mGetAnmTexSrt.play();
mpItem->fn_8002ECD0(&mGetMdl, 6);
break;
}
}
void dItemMdlLightFruit_c::vt_0x20(u16 itemId) {
void dItemMdlLightFruit_c::changeItemId(u16 itemId) {
// no-op
}
void dItemMdlLightFruit_c::setPriorityDraw() {
mMdl1.setPriorityDraw(0x82, 0x7F);
mMdl2.setPriorityDraw(0x82, 0x7F);
mPutMdl.setPriorityDraw(0x82, 0x7F);
mGetMdl.setPriorityDraw(0x82, 0x7F);
}
void dItemMdlLightFruit_c::unsetPriorityDraw() {
mMdl1.setPriorityDraw(0x7F, 0x7F);
mMdl2.setPriorityDraw(0x7F, 0x7F);
mPutMdl.setPriorityDraw(0x7F, 0x7F);
mGetMdl.setPriorityDraw(0x7F, 0x7F);
}
+67 -67
View File
@@ -237,7 +237,7 @@ bool dItemMdlPut_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) {
return false;
}
if (!mGetMdl.create(mdl0, allocator, 0x120)) {
if (!mPutMdl.create(mdl0, allocator, 0x120)) {
return false;
}
@@ -256,7 +256,7 @@ bool dItemMdlPut_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) {
return false;
}
if (!mPutMdl.create(mdl1, allocator, 0x120)) {
if (!mGetMdl.create(mdl1, allocator, 0x120)) {
return false;
}
@@ -264,43 +264,43 @@ bool dItemMdlPut_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) {
return true;
}
void dItemMdlPut_c::vt_0x10(u8 arg) {
if (arg == ITEM_MDL_UNK0x14_3) {
field_0x14 = ITEM_MDL_UNK0x14_1;
void dItemMdlPut_c::setDrawMode(u8 arg) {
if (arg == DrawMode_Max) {
mDrawMode = DrawMode_Put;
} else {
field_0x14 = arg;
mDrawMode = arg;
}
}
void dItemMdlPut_c::setScale(const mVec3_c &scale) {
mGetMdl.setScale(scale);
mPutMdl.setScale(scale);
mGetMdl.setScale(scale);
}
void dItemMdlPut_c::setLocalMtx(const mMtx_c &mtx) {
mGetMdl.setLocalMtx(mtx);
mPutMdl.setLocalMtx(mtx);
mGetMdl.setLocalMtx(mtx);
}
void dItemMdlPut_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1: mpItem->fn_8002ECD0(&mGetMdl, 7); break;
case ITEM_MDL_UNK0x14_2: mpItem->fn_8002ECD0(&mPutMdl, 6); break;
switch (mDrawMode) {
case DrawMode_Put: mpItem->fn_8002ECD0(&mPutMdl, 7); break;
case DrawMode_Get: mpItem->fn_8002ECD0(&mGetMdl, 6); break;
}
}
void dItemMdlPut_c::vt_0x20(u16 itemId) {
void dItemMdlPut_c::changeItemId(u16 itemId) {
// no-op
}
void dItemMdlPut_c::setPriorityDraw() {
mGetMdl.setPriorityDraw(0x82, 0x7F);
mPutMdl.setPriorityDraw(0x82, 0x7F);
mGetMdl.setPriorityDraw(0x82, 0x7F);
}
void dItemMdlPut_c::unsetPriorityDraw() {
mGetMdl.setPriorityDraw(0x7F, 0x7F);
mPutMdl.setPriorityDraw(0x7F, 0x7F);
mGetMdl.setPriorityDraw(0x7F, 0x7F);
}
enum ShieldIdx {
@@ -546,8 +546,8 @@ bool dItemMdlShield_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator
return true;
}
void dItemMdlShield_c::vt_0x10(u8 arg) {
field_0x14 = arg;
void dItemMdlShield_c::setDrawMode(u8 arg) {
mDrawMode = arg;
}
void dItemMdlShield_c::setScale(const mVec3_c &scale) {
@@ -559,14 +559,14 @@ void dItemMdlShield_c::setLocalMtx(const mMtx_c &mtx) {
}
void dItemMdlShield_c::draw() {
if (field_0x14 == ITEM_MDL_UNK0x14_2) {
if (mDrawMode == DrawMode_Get) {
mpItem->fn_8002ECD0(&mMdl, 6);
} else {
mpItem->fn_8002ECD0(&mMdl, 7);
}
}
void dItemMdlShield_c::vt_0x20(u16 itemId) {
void dItemMdlShield_c::changeItemId(u16 itemId) {
// no-op
}
@@ -806,8 +806,8 @@ bool dItemMdlBottle_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator
return true;
}
void dItemMdlBottle_c::vt_0x10(u8 arg) {
field_0x14 = arg;
void dItemMdlBottle_c::setDrawMode(u8 arg) {
mDrawMode = arg;
}
void dItemMdlBottle_c::setScale(const mVec3_c &scale) {
@@ -823,18 +823,18 @@ void dItemMdlBottle_c::draw() {
return;
}
if (field_0x14 != ITEM_MDL_UNK0x14_1 || (mFlags & 0x1) == 0) {
if (mDrawMode != DrawMode_Put || (mFlags & 0x1) == 0) {
mMdl.play();
}
if (field_0x14 == ITEM_MDL_UNK0x14_2) {
if (mDrawMode == DrawMode_Get) {
mpItem->fn_8002ECD0(&mMdl.getModel(), 6);
} else {
mpItem->fn_8002ECD0(&mMdl.getModel(), 7);
}
}
void dItemMdlBottle_c::vt_0x20(u16 itemId) {
void dItemMdlBottle_c::changeItemId(u16 itemId) {
// no-op
}
@@ -882,7 +882,7 @@ bool dItemMdlTear_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!mdl1.IsValid()) {
return false;
}
if (!mMdl1.create(mdl1, allocator, 0x327)) {
if (!mPutMdl.create(mdl1, allocator, 0x327)) {
return false;
}
@@ -890,18 +890,18 @@ bool dItemMdlTear_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!anmTexSrt1.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt1.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
TRY_CREATE(mMdl1.setAnm(mAnmTexSrt1));
TRY_CREATE(mPutAnmTexSrt.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
TRY_CREATE(mPutMdl.setAnm(mPutAnmTexSrt));
nw4r::g3d::ResAnmTexPat anmTexPat1 = res1.GetResAnmTexPat("Shizuku");
if (!anmTexPat1.IsValid()) {
return false;
}
if (!mAnmTexPat1.create(mdl1, anmTexPat1, allocator, nullptr, 1)) {
if (!mPutAnmTexPat.create(mdl1, anmTexPat1, allocator, nullptr, 1)) {
return false;
}
TRY_CREATE(mMdl1.setAnm(mAnmTexPat1));
mAnmTexPat1.setFrame(frame, 0);
TRY_CREATE(mPutMdl.setAnm(mPutAnmTexPat));
mPutAnmTexPat.setFrame(frame, 0);
}
{
@@ -918,7 +918,7 @@ bool dItemMdlTear_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!mdl2.IsValid()) {
return false;
}
if (!mMdl2.create(mdl2, allocator, 0x327)) {
if (!mGetMdl.create(mdl2, allocator, 0x327)) {
return false;
}
@@ -926,18 +926,18 @@ bool dItemMdlTear_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!anmTexSrt2.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt2.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
TRY_CREATE(mMdl2.setAnm(mAnmTexSrt2));
TRY_CREATE(mGetAnmTexSrt.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
TRY_CREATE(mGetMdl.setAnm(mGetAnmTexSrt));
nw4r::g3d::ResAnmTexPat anmTexPat2 = res2.GetResAnmTexPat("Shizuku");
if (!anmTexPat2.IsValid()) {
return false;
}
if (!mAnmTexPat2.create(mdl2, anmTexPat2, allocator, nullptr, 1)) {
if (!mGetAnmTexPat.create(mdl2, anmTexPat2, allocator, nullptr, 1)) {
return false;
}
TRY_CREATE(mMdl2.setAnm(mAnmTexPat2));
mAnmTexPat2.setFrame(frame, 0);
TRY_CREATE(mGetMdl.setAnm(mGetAnmTexPat));
mGetAnmTexPat.setFrame(frame, 0);
}
mpItem = item;
@@ -945,49 +945,49 @@ bool dItemMdlTear_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
return true;
}
void dItemMdlTear_c::vt_0x10(u8 arg) {
if (arg == ITEM_MDL_UNK0x14_3) {
field_0x14 = ITEM_MDL_UNK0x14_1;
void dItemMdlTear_c::setDrawMode(u8 arg) {
if (arg == DrawMode_Max) {
mDrawMode = DrawMode_Put;
} else {
field_0x14 = arg;
mDrawMode = arg;
}
}
void dItemMdlTear_c::setScale(const mVec3_c &scale) {
mMdl1.setScale(scale);
mMdl2.setScale(scale);
mPutMdl.setScale(scale);
mGetMdl.setScale(scale);
}
void dItemMdlTear_c::setLocalMtx(const mMtx_c &mtx) {
mMdl1.setLocalMtx(mtx);
mMdl2.setLocalMtx(mtx);
mPutMdl.setLocalMtx(mtx);
mGetMdl.setLocalMtx(mtx);
}
void dItemMdlTear_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1:
mAnmTexSrt1.play();
mpItem->fn_8002ECD0(&mMdl1, 7);
switch (mDrawMode) {
case DrawMode_Put:
mPutAnmTexSrt.play();
mpItem->fn_8002ECD0(&mPutMdl, 7);
break;
case ITEM_MDL_UNK0x14_2:
mAnmTexSrt2.play();
mpItem->fn_8002ECD0(&mMdl2, 6);
case DrawMode_Get:
mGetAnmTexSrt.play();
mpItem->fn_8002ECD0(&mGetMdl, 6);
break;
}
}
void dItemMdlTear_c::vt_0x20(u16 itemId) {
void dItemMdlTear_c::changeItemId(u16 itemId) {
// no-op
}
void dItemMdlTear_c::setPriorityDraw() {
mMdl1.setPriorityDraw(0x82, 0x7F);
mMdl2.setPriorityDraw(0x82, 0x7F);
mPutMdl.setPriorityDraw(0x82, 0x7F);
mGetMdl.setPriorityDraw(0x82, 0x7F);
}
void dItemMdlTear_c::unsetPriorityDraw() {
mMdl1.setPriorityDraw(0x7F, 0x7F);
mMdl2.setPriorityDraw(0x7F, 0x7F);
mPutMdl.setPriorityDraw(0x7F, 0x7F);
mGetMdl.setPriorityDraw(0x7F, 0x7F);
}
bool dItemMdlFirefly_c::isMdlForItemId(u16 itemId) {
@@ -1024,8 +1024,8 @@ bool dItemMdlFirefly_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocato
return true;
}
void dItemMdlFirefly_c::vt_0x10(u8 arg) {
field_0x14 = arg;
void dItemMdlFirefly_c::setDrawMode(u8 arg) {
mDrawMode = arg;
}
void dItemMdlFirefly_c::setScale(const mVec3_c &scale) {
@@ -1037,14 +1037,14 @@ void dItemMdlFirefly_c::setLocalMtx(const mMtx_c &mtx) {
}
void dItemMdlFirefly_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1: mpItem->fn_8002ECD0(&mMdl, 7); break;
case ITEM_MDL_UNK0x14_2: mpItem->fn_8002ECD0(&mMdl, 6); break;
switch (mDrawMode) {
case DrawMode_Put: mpItem->fn_8002ECD0(&mMdl, 7); break;
case DrawMode_Get: mpItem->fn_8002ECD0(&mMdl, 6); break;
}
mAnmMatClr.play();
}
void dItemMdlFirefly_c::vt_0x20(u16 itemId) {
void dItemMdlFirefly_c::changeItemId(u16 itemId) {
// no-op
}
@@ -1298,8 +1298,8 @@ bool dItemMdlPotion_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator
return true;
}
void dItemMdlPotion_c::vt_0x10(u8 arg) {
field_0x14 = arg;
void dItemMdlPotion_c::setDrawMode(u8 arg) {
mDrawMode = arg;
}
void dItemMdlPotion_c::setScale(const mVec3_c &scale) {
@@ -1313,13 +1313,13 @@ void dItemMdlPotion_c::setLocalMtx(const mMtx_c &mtx) {
void dItemMdlPotion_c::draw() {
mAnmChr.play();
mAnmTexSrt.play();
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1: mpItem->fn_8002ECD0(&mMdl, 7); break;
case ITEM_MDL_UNK0x14_2: mpItem->fn_8002ECD0(&mMdl, 6); break;
switch (mDrawMode) {
case DrawMode_Put: mpItem->fn_8002ECD0(&mMdl, 7); break;
case DrawMode_Get: mpItem->fn_8002ECD0(&mMdl, 6); break;
}
}
void dItemMdlPotion_c::vt_0x20(u16 itemId) {
void dItemMdlPotion_c::changeItemId(u16 itemId) {
// no-op
}
+26 -26
View File
@@ -55,7 +55,7 @@ bool dItemMdlRupee_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!mdl1.IsValid()) {
return false;
}
if (!mMdl1.create(mdl1, allocator, 0x123)) {
if (!mPutMdl.create(mdl1, allocator, 0x123)) {
return false;
}
@@ -63,11 +63,11 @@ bool dItemMdlRupee_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!anmTexPat1.IsValid()) {
return false;
}
if (!mAnmTexPat1.create(mdl1, anmTexPat1, allocator, nullptr, 1)) {
if (!mPutAnmTexPat.create(mdl1, anmTexPat1, allocator, nullptr, 1)) {
return false;
}
mMdl1.setAnm(mAnmTexPat1);
mAnmTexPat1.setFrame(sMdlConfig[i].texPatFrame, 0);
mPutMdl.setAnm(mPutAnmTexPat);
mPutAnmTexPat.setFrame(sMdlConfig[i].texPatFrame, 0);
}
{
@@ -84,7 +84,7 @@ bool dItemMdlRupee_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
if (!mdl2.IsValid()) {
return false;
}
if (!mMdl2.create(mdl2, allocator, 0x123)) {
if (!mGetMdl.create(mdl2, allocator, 0x123)) {
return false;
}
@@ -93,11 +93,11 @@ bool dItemMdlRupee_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
return false;
}
anmTexPat2.Bind(res2);
if (!mAnmTexPat2.create(mdl2, anmTexPat2, allocator, nullptr, 1)) {
if (!mGetAnmTexPat.create(mdl2, anmTexPat2, allocator, nullptr, 1)) {
return false;
}
mMdl2.setAnm(mAnmTexPat2);
mAnmTexPat2.setFrame(sMdlConfig[i].texPatFrame, 0);
mGetMdl.setAnm(mGetAnmTexPat);
mGetAnmTexPat.setFrame(sMdlConfig[i].texPatFrame, 0);
}
@@ -105,32 +105,32 @@ bool dItemMdlRupee_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator)
return true;
}
void dItemMdlRupee_c::vt_0x10(u8 arg) {
if (arg == ITEM_MDL_UNK0x14_3) {
field_0x14 = ITEM_MDL_UNK0x14_1;
void dItemMdlRupee_c::setDrawMode(u8 arg) {
if (arg == DrawMode_Max) {
mDrawMode = DrawMode_Put;
} else {
field_0x14 = arg;
mDrawMode = arg;
}
}
void dItemMdlRupee_c::setScale(const mVec3_c &scale) {
mMdl1.setScale(scale);
mMdl2.setScale(scale);
mPutMdl.setScale(scale);
mGetMdl.setScale(scale);
}
void dItemMdlRupee_c::setLocalMtx(const mMtx_c &mtx) {
mMdl1.setLocalMtx(mtx);
mMdl2.setLocalMtx(mtx);
mPutMdl.setLocalMtx(mtx);
mGetMdl.setLocalMtx(mtx);
}
void dItemMdlRupee_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1: mpItem->fn_8002ECD0(&mMdl1, 7); break;
case ITEM_MDL_UNK0x14_2: mpItem->fn_8002ECD0(&mMdl2, 6); break;
switch (mDrawMode) {
case DrawMode_Put: mpItem->fn_8002ECD0(&mPutMdl, 7); break;
case DrawMode_Get: mpItem->fn_8002ECD0(&mGetMdl, 6); break;
}
}
void dItemMdlRupee_c::vt_0x20(u16 itemId) {
void dItemMdlRupee_c::changeItemId(u16 itemId) {
int i = 0;
bool found = false;
while (!found && i < ARRAY_LENGTH(sMdlConfig)) {
@@ -142,17 +142,17 @@ void dItemMdlRupee_c::vt_0x20(u16 itemId) {
}
if (found) {
mAnmTexPat1.setFrame(sMdlConfig[i].texPatFrame, 0);
mAnmTexPat2.setFrame(sMdlConfig[i].texPatFrame, 0);
mPutAnmTexPat.setFrame(sMdlConfig[i].texPatFrame, 0);
mGetAnmTexPat.setFrame(sMdlConfig[i].texPatFrame, 0);
}
}
void dItemMdlRupee_c::setPriorityDraw() {
mMdl1.setPriorityDraw(0x82, 0x7F);
mMdl2.setPriorityDraw(0x82, 0x7F);
mPutMdl.setPriorityDraw(0x82, 0x7F);
mGetMdl.setPriorityDraw(0x82, 0x7F);
}
void dItemMdlRupee_c::unsetPriorityDraw() {
mMdl1.setPriorityDraw(0x7F, 0x7F);
mMdl2.setPriorityDraw(0x7F, 0x7F);
mPutMdl.setPriorityDraw(0x7F, 0x7F);
mGetMdl.setPriorityDraw(0x7F, 0x7F);
}
+26 -26
View File
@@ -23,7 +23,7 @@ bool dItemMdlStaminaFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *all
if (!mdl1.IsValid()) {
return false;
}
if (!mMdl1.create(mdl1, allocator, 0x324)) {
if (!mPutMdl.create(mdl1, allocator, 0x324)) {
return false;
}
@@ -40,7 +40,7 @@ bool dItemMdlStaminaFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *all
if (!mdl2.IsValid()) {
return false;
}
if (!mMdl2.create(mdl2, allocator, 0x324)) {
if (!mGetMdl.create(mdl2, allocator, 0x324)) {
return false;
}
@@ -48,62 +48,62 @@ bool dItemMdlStaminaFruit_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *all
if (!anmTexSrt1.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt1.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
mMdl1.setAnm(mAnmTexSrt1);
TRY_CREATE(mPutAnmTexSrt.create(mdl1, anmTexSrt1, allocator, nullptr, 1));
mPutMdl.setAnm(mPutAnmTexSrt);
nw4r::g3d::ResAnmTexSrt anmTexSrt2 = res2.GetResAnmTexSrt("GutsLight");
if (!anmTexSrt2.IsValid()) {
return false;
}
TRY_CREATE(mAnmTexSrt2.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
mMdl2.setAnm(mAnmTexSrt2);
TRY_CREATE(mGetAnmTexSrt.create(mdl2, anmTexSrt2, allocator, nullptr, 1));
mGetMdl.setAnm(mGetAnmTexSrt);
mpItem = item;
return true;
}
void dItemMdlStaminaFruit_c::vt_0x10(u8 arg) {
if (arg == ITEM_MDL_UNK0x14_3) {
field_0x14 = ITEM_MDL_UNK0x14_1;
void dItemMdlStaminaFruit_c::setDrawMode(u8 arg) {
if (arg == DrawMode_Max) {
mDrawMode = DrawMode_Put;
} else {
field_0x14 = arg;
mDrawMode = arg;
}
}
void dItemMdlStaminaFruit_c::setScale(const mVec3_c &scale) {
mMdl1.setScale(scale);
mMdl2.setScale(scale);
mPutMdl.setScale(scale);
mGetMdl.setScale(scale);
}
void dItemMdlStaminaFruit_c::setLocalMtx(const mMtx_c &mtx) {
mMdl1.setLocalMtx(mtx);
mMdl2.setLocalMtx(mtx);
mPutMdl.setLocalMtx(mtx);
mGetMdl.setLocalMtx(mtx);
}
void dItemMdlStaminaFruit_c::draw() {
switch (field_0x14) {
case ITEM_MDL_UNK0x14_1:
mAnmTexSrt1.play();
mpItem->fn_8002ECD0(&mMdl1, 7);
switch (mDrawMode) {
case DrawMode_Put:
mPutAnmTexSrt.play();
mpItem->fn_8002ECD0(&mPutMdl, 7);
break;
case ITEM_MDL_UNK0x14_2:
mAnmTexSrt2.play();
mpItem->fn_8002ECD0(&mMdl2, 6);
case DrawMode_Get:
mGetAnmTexSrt.play();
mpItem->fn_8002ECD0(&mGetMdl, 6);
break;
}
}
void dItemMdlStaminaFruit_c::vt_0x20(u16 itemId) {
void dItemMdlStaminaFruit_c::changeItemId(u16 itemId) {
// no-op
}
void dItemMdlStaminaFruit_c::setPriorityDraw() {
mMdl1.setPriorityDraw(0x82, 0x7F);
mMdl2.setPriorityDraw(0x82, 0x7F);
mPutMdl.setPriorityDraw(0x82, 0x7F);
mGetMdl.setPriorityDraw(0x82, 0x7F);
}
void dItemMdlStaminaFruit_c::unsetPriorityDraw() {
mMdl1.setPriorityDraw(0x7F, 0x7F);
mMdl2.setPriorityDraw(0x7F, 0x7F);
mPutMdl.setPriorityDraw(0x7F, 0x7F);
mGetMdl.setPriorityDraw(0x7F, 0x7F);
}