mirror of
https://github.com/zeldaret/ss
synced 2026-06-19 07:37:01 -04:00
item_mdl_item OK
This commit is contained in:
+16
-15
@@ -9522,16 +9522,17 @@ getMdl__16dItemMdlBottle_cFv = .text:0x8016F860; // type:function size:0x8 scope
|
||||
__dt__16dItemMdlBottle_cFv = .text:0x8016F870; // type:function size:0x70 scope:weak
|
||||
__dt__16dItemMdlShield_cFv = .text:0x8016F8E0; // type:function size:0x7C scope:weak
|
||||
__dt__13dItemMdlPut_cFv = .text:0x8016F960; // type:function size:0x7C scope:weak
|
||||
hasItemModel = .text:0x8016F9E0; // type:function size:0x6C
|
||||
getItemModelForItem = .text:0x8016FA50; // type:function size:0x2C0
|
||||
fn_8016FD10 = .text:0x8016FD10; // type:function size:0x8
|
||||
fn_8016FD20 = .text:0x8016FD20; // type:function size:0x8
|
||||
fn_8016FD30 = .text:0x8016FD30; // type:function size:0x8
|
||||
fn_8016FD40 = .text:0x8016FD40; // type:function size:0x34
|
||||
fn_8016FD80 = .text:0x8016FD80; // type:function size:0x10
|
||||
fn_8016FD90 = .text:0x8016FD90; // type:function size:0x10
|
||||
fn_8016FDA0 = .text:0x8016FDA0; // type:function size:0x8
|
||||
fn_8016FDB0 = .text:0x8016FDB0; // type:function size:0x70
|
||||
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
|
||||
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
|
||||
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
|
||||
@@ -13469,7 +13470,7 @@ AcItem__isNaryruTear = .text:0x80250A20; // type:function size:0x10
|
||||
AcItem__isSacredTear = .text:0x80250A30; // type:function size:0x10
|
||||
isItemLightFruit = .text:0x80250A40; // type:function size:0x10
|
||||
isSingleGratitudeCrystal = .text:0x80250A50; // type:function size:0x10
|
||||
isItemSligshot = .text:0x80250A60; // type:function size:0x10
|
||||
isSlingshot__9dAcItem_cF7ITEM_ID = .text:0x80250A60; // type:function size:0x10
|
||||
is10DekuSeeds = .text:0x80250A70; // type:function size:0x10
|
||||
AcItem__isHeartPiece = .text:0x80250A80; // type:function size:0x10
|
||||
AcItem__isDekuHornet = .text:0x80250A90; // type:function size:0x10
|
||||
@@ -13646,7 +13647,7 @@ ActorLink__hasLifeTreeSeeding = .text:0x80252730; // type:function size:0x38
|
||||
AcItem__giveLifeTreeSeedling = .text:0x80252770; // type:function size:0x94
|
||||
getExtraWalletCount__9dAcItem_cFv = .text:0x80252810; // type:function size:0x8
|
||||
increaseExtraWalletCounter = .text:0x80252820; // type:function size:0xC
|
||||
getTotalRequiredKeyPieceCount = .text:0x80252830; // type:function size:0x8
|
||||
getTotalRequiredKeyPieceCount__9dAcItem_cFv = .text:0x80252830; // type:function size:0x8
|
||||
hasAllKeyPieces = .text:0x80252840; // type:function size:0x44
|
||||
AcItem__getDefaultOffset = .text:0x80252890; // type:function size:0xC
|
||||
is4 = .text:0x802528A0; // type:function size:0x8
|
||||
@@ -28363,8 +28364,8 @@ sMdlConfig__16dItemMdlBottle_c = .rodata:0x804E94F8; // type:object size:0x60
|
||||
sMdlConfig__14dItemMdlTear_c = .rodata:0x804E9558; // type:object size:0x10
|
||||
sMdlIdx__16dItemMdlPotion_c = .rodata:0x804E9568; // type:object size:0xA7
|
||||
sMdlConfig__16dItemMdlPotion_c = .rodata:0x804E9610; // type:object size:0x40
|
||||
ITEM_MODEL_INDEX = .rodata:0x804E9650; // type:object size:0xA8
|
||||
ITEM_MODEL_DEFS = .rodata:0x804E96F8; // type:object size:0x350
|
||||
sMdlIdx__14dItemMdlItem_c = .rodata:0x804E9650; // type:object size:0xA8
|
||||
sMdlConfig__14dItemMdlItem_c = .rodata:0x804E96F8; // type:object size:0x350
|
||||
RUPEE_ITEM_TO_TEX_FRAME = .rodata:0x804E9A48; // type:object size:0x38 data:2byte
|
||||
sEffectResourceIds = .rodata:0x804E9A80; // type:object size:0x18 data:2byte
|
||||
lbl_804E9A98 = .rodata:0x804E9A98; // type:object size:0xF data:string
|
||||
@@ -35240,7 +35241,7 @@ lbl_805289FC = .data:0x805289FC; // type:object size:0xA data:string
|
||||
lbl_80528A08 = .data:0x80528A08; // type:object size:0xE data:string
|
||||
lbl_80528A18 = .data:0x80528A18; // type:object size:0xE data:string
|
||||
lbl_80528A28 = .data:0x80528A28; // type:object size:0xE data:string
|
||||
ItemModel_vtable = .data:0x80528A38; // type:object size:0x30
|
||||
__vt__14dItemMdlItem_c = .data:0x80528A38; // type:object size:0x30
|
||||
lbl_80528A68 = .data:0x80528A68; // type:object size:0x9 data:string
|
||||
lbl_80528A74 = .data:0x80528A74; // type:object size:0x9 data:string
|
||||
__vt__15dItemMdlRupee_c = .data:0x80528A80; // type:object size:0x30
|
||||
|
||||
+1
-1
@@ -594,7 +594,7 @@ config.libs = [
|
||||
Object(Matching, "toBeSorted/counters/key_piece_counter.cpp"),
|
||||
Object(Matching, "toBeSorted/counters/extra_wallet_counter.cpp"),
|
||||
Object(Matching, "toBeSorted/item_mdl_misc.cpp"),
|
||||
Object(NonMatching, "toBeSorted/item_mdl_item.cpp"),
|
||||
Object(Matching, "toBeSorted/item_mdl_item.cpp"),
|
||||
Object(Matching, "toBeSorted/item_mdl_rupee.cpp"),
|
||||
Object(NonMatching, "toBeSorted/item_mdl_light_fruit.cpp"),
|
||||
Object(NonMatching, "toBeSorted/item_mdl_stamina_fruit.cpp"),
|
||||
|
||||
@@ -75,12 +75,13 @@ public:
|
||||
static u32 getHeartContainerHealthCount();
|
||||
static u32 getGratitudeCrystalCount();
|
||||
|
||||
static u32 getTotalRequiredKeyPieceCount();
|
||||
static u32 getKeyPieceCount();
|
||||
static u32 getSmallKeyCount();
|
||||
|
||||
static bool isJellyBlob(ITEM_ID item);
|
||||
static bool isStarryFirefly(ITEM_ID item);
|
||||
|
||||
static bool isSlingshot(ITEM_ID item);
|
||||
static bool isRupee(ITEM_ID item);
|
||||
static bool isKeyPiece(ITEM_ID item);
|
||||
static bool isTreasure(ITEM_ID item);
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
#ifndef TOBESORTED_ITEM_MDL_ITEM_H
|
||||
#define TOBESORTED_ITEM_MDL_ITEM_H
|
||||
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "toBeSorted/item_mdl.h"
|
||||
|
||||
|
||||
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;
|
||||
/* 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;
|
||||
/* 0x2C */ virtual m3d::smdl_c *getMdl() override;
|
||||
|
||||
static bool isMdlForItemId(u16 itemId);
|
||||
|
||||
private:
|
||||
struct MdlConfig {
|
||||
const char *resFile;
|
||||
const char *mdlName;
|
||||
};
|
||||
static const MdlConfig sMdlConfig[];
|
||||
static const u8 sMdlIdx[];
|
||||
|
||||
/* 0x18 */ m3d::smdl_c mMdl;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -25,20 +25,6 @@ public:
|
||||
static bool isMdlForItemId(u16 itemId);
|
||||
|
||||
private:
|
||||
enum MdlIdx {
|
||||
MDL_PUT_ARROW,
|
||||
MDL_PUT_ARROW_BUNDLE,
|
||||
MDL_PUT_HEART,
|
||||
MDL_PUT_KEY_SMALL,
|
||||
MDL_PUT_BOMB_SET,
|
||||
MDL_PUT_SEED,
|
||||
MDL_PUT_HEART_UTUWA,
|
||||
MDL_PUT_HEART_KAKERA,
|
||||
MDL_PUT_TRI_FORCE,
|
||||
MDL_PUT_GARAGARA,
|
||||
MDL_PUT_MAX,
|
||||
};
|
||||
|
||||
struct MdlConfig {
|
||||
const char *putResFile;
|
||||
const char *putResMdl;
|
||||
@@ -67,19 +53,6 @@ public:
|
||||
static bool isMdlForItemId(u16 itemId);
|
||||
|
||||
private:
|
||||
enum ShieldIdx {
|
||||
MDL_SHIELD_WOOD_0,
|
||||
MDL_SHIELD_WOOD_1,
|
||||
MDL_SHIELD_WOOD_2,
|
||||
MDL_SHIELD_IRON_0,
|
||||
MDL_SHIELD_IRON_1,
|
||||
MDL_SHIELD_IRON_2,
|
||||
MDL_SHIELD_HOLY_0,
|
||||
MDL_SHIELD_HOLY_1,
|
||||
MDL_SHIELD_HOLY_2,
|
||||
MDL_SHIELD_MAX
|
||||
};
|
||||
|
||||
struct MdlConfig {
|
||||
f32 frame;
|
||||
const char *resFile;
|
||||
@@ -112,18 +85,6 @@ public:
|
||||
static bool isMdlForItemId(u16 itemId);
|
||||
|
||||
private:
|
||||
enum BottleIdx {
|
||||
MDL_BOTTLE_WATER,
|
||||
MDL_BOTTLE_FAIRY,
|
||||
MDL_BOTTLE_HOLY,
|
||||
MDL_BOTTLE_KUSURI,
|
||||
MDL_BOTTLE_KUSURI_S,
|
||||
MDL_BOTTLE_B_FAIRY,
|
||||
MDL_BOTTLE_SOZAI_I,
|
||||
MDL_BOTTLE_PUMPKIN,
|
||||
MDL_BOTTLE_MAX
|
||||
};
|
||||
|
||||
struct MdlConfig {
|
||||
const char *resFile;
|
||||
const char *mdlName;
|
||||
@@ -202,14 +163,6 @@ public:
|
||||
static bool isMdlForItemId(u16 itemId);
|
||||
|
||||
private:
|
||||
enum PotionIdx {
|
||||
MDL_POTION_MUTEKI,
|
||||
MDL_POTION_GUTS,
|
||||
MDL_POTION_AIR,
|
||||
MDL_POTION_GENKI,
|
||||
MDL_POTION_MAX,
|
||||
};
|
||||
|
||||
struct MdlConfig {
|
||||
const char *resFile;
|
||||
const char *mdlName;
|
||||
|
||||
@@ -25,7 +25,7 @@ enum ItemMdlIdx {
|
||||
ITEMMDL_GODDESS_HARP,
|
||||
ITEMMDL_SPIRIT_VESSEL,
|
||||
ITEMMDL_BOW,
|
||||
ITEMMDL_CLAWSHOWS,
|
||||
ITEMMDL_CLAWSHOTS,
|
||||
ITEMMDL_BIRD_STATUETTE,
|
||||
ITEMMDL_AC_BK,
|
||||
ITEMMDL_FS_BK,
|
||||
|
||||
@@ -0,0 +1,483 @@
|
||||
#include "toBeSorted/item_mdl_item.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_item.h"
|
||||
#include "d/a/d_a_itembase.h"
|
||||
#include "sized_string.h"
|
||||
#include "toBeSorted/arc_managers/oarc_manager.h"
|
||||
#include "toBeSorted/item_mdl_name.h"
|
||||
|
||||
enum ItemIdx {
|
||||
MDL_ITEM_COMPLETE_TRIFORCE,
|
||||
MDL_ITEM_GODDESS_WHITESWORD,
|
||||
MDL_ITEM_PRACTICE_SWORD,
|
||||
MDL_ITEM_GODDESS_SWORD,
|
||||
MDL_ITEM_GODDESS_LONGSWORD,
|
||||
MDL_ITEM_MASTER_SWORD,
|
||||
MDL_ITEM_TRUE_MASTER_SWORD,
|
||||
MDL_ITEM_SAILCLOTH,
|
||||
MDL_ITEM_GODDESS_HARP,
|
||||
MDL_ITEM_SPIRIT_VESSEL,
|
||||
MDL_ITEM_BOW,
|
||||
MDL_ITEM_CLAWSHOTS,
|
||||
MDL_ITEM_BIRD_STATUETTE,
|
||||
MDL_ITEM_AC_BK,
|
||||
MDL_ITEM_FS_BK,
|
||||
MDL_ITEM_SSH_BK,
|
||||
MDL_ITEM_KEY_PIECE,
|
||||
MDL_ITEM_SV_BK,
|
||||
MDL_ITEM_ET_BK,
|
||||
MDL_ITEM_LMF_BK,
|
||||
MDL_ITEM_GLITTERING_SPORES,
|
||||
MDL_ITEM_5_BOMBS,
|
||||
MDL_ITEM_GUST_BELLOWS,
|
||||
MDL_ITEM_DUNGEON_MAP,
|
||||
MDL_ITEM_SLINGSHOT,
|
||||
MDL_ITEM_BEETLE,
|
||||
MDL_ITEM_MUSHROOM_SPORES,
|
||||
MDL_ITEM_DIGGING_MITTS,
|
||||
MDL_ITEM_28, // unused
|
||||
MDL_ITEM_10_DEKU_SEEDS,
|
||||
MDL_ITEM_WATER_SCALE,
|
||||
MDL_ITEM_BUG_MEDAL,
|
||||
MDL_ITEM_BUG_NET,
|
||||
MDL_ITEM_HOOK_BEETLE,
|
||||
MDL_ITEM_QUICK_BEETLE,
|
||||
MDL_ITEM_TOUGH_BEETLE,
|
||||
MDL_ITEM_IRON_BOW,
|
||||
MDL_ITEM_SACRED_BOW,
|
||||
MDL_ITEM_BOMB_BAG,
|
||||
MDL_ITEM_SEA_CHART,
|
||||
MDL_ITEM_MOGMA_MITTS,
|
||||
MDL_ITEM_HEART_MEDAL,
|
||||
MDL_ITEM_RUPEE_MEDAL,
|
||||
MDL_ITEM_TREASURE_MEDAL,
|
||||
MDL_ITEM_POTION_MEDAL,
|
||||
MDL_ITEM_CURSED_MEDAL,
|
||||
MDL_ITEM_MIGHTY_SCATTERSHOT,
|
||||
MDL_ITEM_47,
|
||||
MDL_ITEM_MEDIUM_WALLET,
|
||||
MDL_ITEM_BIG_WALLET,
|
||||
MDL_ITEM_GIANT_WALLET,
|
||||
MDL_ITEM_TYCOON_WALLET,
|
||||
MDL_ITEM_ADVENTURE_POUCH,
|
||||
MDL_ITEM_POUCH_EXPANSION,
|
||||
MDL_ITEM_LIFE_MEDAL,
|
||||
MDL_ITEM_HYLIAN_SHIELD,
|
||||
MDL_ITEM_REVITALIZING_POTION,
|
||||
MDL_ITEM_SMALL_SEED_SATCHEL,
|
||||
MDL_ITEM_MEDIUM_SEED_SATCHEL,
|
||||
MDL_ITEM_LARGE_SEED_SATCHEL,
|
||||
MDL_ITEM_SMALL_QUIVER,
|
||||
MDL_ITEM_MEDIUM_QUIVER,
|
||||
MDL_ITEM_LARGE_QUIVER,
|
||||
MDL_ITEM_SMALL_BOMB_BAG,
|
||||
MDL_ITEM_MEDIUM_BOMB_BAG,
|
||||
MDL_ITEM_LARGE_BOMB_BAG,
|
||||
MDL_ITEM_WHIP,
|
||||
MDL_ITEM_FIRESHIELD_EARRINGS,
|
||||
MDL_ITEM_BIG_BUG_NET,
|
||||
MDL_ITEM_FARON_GRASSHOPPER,
|
||||
MDL_ITEM_WOODLAND_RHINO_BEETLE,
|
||||
MDL_ITEM_DEKU_HORNET,
|
||||
MDL_ITEM_SKYLOFT_MANTIS,
|
||||
MDL_ITEM_VOLCANIC_LADYBUG,
|
||||
MDL_ITEM_BLESSED_BUTTERFLY,
|
||||
MDL_ITEM_LANAYRU_ANT,
|
||||
MDL_ITEM_SAND_CICADA,
|
||||
MDL_ITEM_GERUDO_DRAGONFLY,
|
||||
MDL_ITEM_ELDIN_ROLLER,
|
||||
MDL_ITEM_SKY_STAG_BEETLE,
|
||||
MDL_ITEM_BOTTLE,
|
||||
MDL_ITEM_CAWLIN_LETTER,
|
||||
MDL_ITEM_BEEDLE_INSECT_CAGE,
|
||||
MDL_ITEM_HORNET_LARVAE,
|
||||
MDL_ITEM_BIRD_FEATHER,
|
||||
MDL_ITEM_TUMBLE_WEED,
|
||||
MDL_ITEM_LIZARD_TAIL,
|
||||
MDL_ITEM_ELDIN_ORE,
|
||||
MDL_ITEM_ANCIENT_FLOWER,
|
||||
MDL_ITEM_AMBER_RELIC,
|
||||
MDL_ITEM_DUSK_RELIC,
|
||||
MDL_ITEM_MONSTER_CLAW,
|
||||
MDL_ITEM_MONSTER_HORN,
|
||||
MDL_ITEM_ORNAMENTAL_SKULL,
|
||||
MDL_ITEM_EVIL_CRYSTAL,
|
||||
MDL_ITEM_BLUE_BIRD_FEATHER,
|
||||
MDL_ITEM_GOLDEN_SKULL,
|
||||
MDL_ITEM_GODDESS_PLUME,
|
||||
MDL_ITEM_EMERALD_TABLET,
|
||||
MDL_ITEM_RUBY_TABLET,
|
||||
MDL_ITEM_AMBER_TABLET,
|
||||
MDL_ITEM_STONE_OF_TRIALS,
|
||||
MDL_ITEM_REVITALIZING_POTION_PLUS_PLUS,
|
||||
MDL_ITEM_LIFE_TREE_SEED,
|
||||
MDL_ITEM_LIFE_TREE_FRUIT,
|
||||
MDL_ITEM_EXTRA_WALLET,
|
||||
MDL_ITEM_MAX = 106,
|
||||
};
|
||||
|
||||
const u8 dItemMdlItem_c::sMdlIdx[] = {
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SMALL_KEY */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_GREEN_RUPEE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_BLUE_RUPEE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_RED_RUPEE */
|
||||
MDL_ITEM_COMPLETE_TRIFORCE, /* ITEMMDL_COMPLETE_TRIFORCE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SINGLE_ARROW */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_BUNDLE_ARROWS */
|
||||
MDL_ITEM_GODDESS_WHITESWORD, /* ITEMMDL_GODDESS_WHITESWORD */
|
||||
MDL_ITEM_PRACTICE_SWORD, /* ITEMMDL_PRACTICE_SWORD */
|
||||
MDL_ITEM_GODDESS_SWORD, /* ITEMMDL_GODDESS_SWORD */
|
||||
MDL_ITEM_GODDESS_LONGSWORD, /* ITEMMDL_GODDESS_LONGSWORD */
|
||||
MDL_ITEM_MASTER_SWORD, /* ITEMMDL_MASTER_SWORD */
|
||||
MDL_ITEM_TRUE_MASTER_SWORD, /* ITEMMDL_TRUE_MASTER_SWORD */
|
||||
MDL_ITEM_SAILCLOTH, /* ITEMMDL_SAILCLOTH */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_GODDESS_HARP */
|
||||
MDL_ITEM_SPIRIT_VESSEL, /* ITEMMDL_SPIRIT_VESSEL */
|
||||
MDL_ITEM_BOW, /* ITEMMDL_BOW */
|
||||
MDL_ITEM_CLAWSHOTS, /* ITEMMDL_CLAWSHOTS */
|
||||
MDL_ITEM_BIRD_STATUETTE, /* ITEMMDL_BIRD_STATUETTE */
|
||||
MDL_ITEM_AC_BK, /* ITEMMDL_AC_BK */
|
||||
MDL_ITEM_FS_BK, /* ITEMMDL_FS_BK */
|
||||
MDL_ITEM_SSH_BK, /* ITEMMDL_SSH_BK */
|
||||
MDL_ITEM_KEY_PIECE, /* ITEMMDL_KEY_PIECE */
|
||||
MDL_ITEM_SV_BK, /* ITEMMDL_SV_BK */
|
||||
MDL_ITEM_ET_BK, /* ITEMMDL_ET_BK */
|
||||
MDL_ITEM_LMF_BK, /* ITEMMDL_LMF_BK */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SILVER_RUPEE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_GOLD_RUPEE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_RUPOOR */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_5_CRYSTALS */
|
||||
MDL_ITEM_GLITTERING_SPORES, /* ITEMMDL_GLITTERING_SPORES */
|
||||
MDL_ITEM_5_BOMBS, /* ITEMMDL_5_BOMBS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_10_BOMBS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_STAMINA_FRUIT */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_FARORE_TEAR */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_DIN_TEAR */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_NAYRU_TEAR */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SACRED_TEAR */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_LIGHT_FRUIT */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_1_CRYSTAL */
|
||||
MDL_ITEM_GUST_BELLOWS, /* ITEMMDL_GUST_BELLOWS */
|
||||
MDL_ITEM_DUNGEON_MAP, /* ITEMMDL_DUNGEON_MAP_FI */
|
||||
MDL_ITEM_DUNGEON_MAP, /* ITEMMDL_DUNGEON_MAP */
|
||||
MDL_ITEM_SLINGSHOT, /* ITEMMDL_SLINGSHOT */
|
||||
MDL_ITEM_BEETLE, /* ITEMMDL_BEETLE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_WATER */
|
||||
MDL_ITEM_MUSHROOM_SPORES, /* ITEMMDL_MUSHROOM_SPORES */
|
||||
MDL_ITEM_DIGGING_MITTS, /* ITEMMDL_DIGGING_MITTS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_5_DEKU_SEEDS */
|
||||
MDL_ITEM_10_DEKU_SEEDS, /* ITEMMDL_10_DEKU_SEEDS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_GUARDIAN_POTION */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_GUARDIAN_POTION_PLUS */
|
||||
MDL_ITEM_WATER_SCALE, /* ITEMMDL_WATER_SCALE */
|
||||
MDL_ITEM_BUG_MEDAL, /* ITEMMDL_BUG_MEDAL */
|
||||
MDL_ITEM_BUG_NET, /* ITEMMDL_BUG_NET */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_FAIRY */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SACRED_WATER */
|
||||
MDL_ITEM_HOOK_BEETLE, /* ITEMMDL_HOOK_BEETLE */
|
||||
MDL_ITEM_QUICK_BEETLE, /* ITEMMDL_QUICK_BEETLE */
|
||||
MDL_ITEM_TOUGH_BEETLE, /* ITEMMDL_TOUGH_BEETLE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART_POTION */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART_POTION_PLUS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART_POTION_ALSO_PLUS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_STAMINA_POTION */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_STAMINA_POTION_PLUS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_AIR_POTION */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_AIR_POTION_PLUS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_BOTTLED_FAIRY */
|
||||
MDL_ITEM_IRON_BOW, /* ITEMMDL_IRON_BOW */
|
||||
MDL_ITEM_SACRED_BOW, /* ITEMMDL_SACRED_BOW */
|
||||
MDL_ITEM_BOMB_BAG, /* ITEMMDL_BOMB_BAG */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART_CONTAINER */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HEART_PIECE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_TRI_COURAGE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_TRI_POWER */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_TRI_WISDOWM */
|
||||
MDL_ITEM_SEA_CHART, /* ITEMMDL_SEA_CHART */
|
||||
MDL_ITEM_MOGMA_MITTS, /* ITEMMDL_MOGMA_MITTS */
|
||||
MDL_ITEM_HEART_MEDAL, /* ITEMMDL_HEART_MEDAL */
|
||||
MDL_ITEM_RUPEE_MEDAL, /* ITEMMDL_RUPEE_MEDAL */
|
||||
MDL_ITEM_TREASURE_MEDAL, /* ITEMMDL_TREASURE_MEDAL */
|
||||
MDL_ITEM_POTION_MEDAL, /* ITEMMDL_POTION_MEDAL */
|
||||
MDL_ITEM_CURSED_MEDAL, /* ITEMMDL_CURSED_MEDAL */
|
||||
MDL_ITEM_MIGHTY_SCATTERSHOT, /* ITEMMDL_MIGHTY_SCATTERSHOT */
|
||||
MDL_ITEM_47, /* ITEMMDL_85 */
|
||||
MDL_ITEM_MEDIUM_WALLET, /* ITEMMDL_MEDIUM_WALLET */
|
||||
MDL_ITEM_BIG_WALLET, /* ITEMMDL_BIG_WALLET */
|
||||
MDL_ITEM_GIANT_WALLET, /* ITEMMDL_GIANT_WALLET */
|
||||
MDL_ITEM_TYCOON_WALLET, /* ITEMMDL_TYCOON_WALLET */
|
||||
MDL_ITEM_ADVENTURE_POUCH, /* ITEMMDL_ADVENTURE_POUCH */
|
||||
MDL_ITEM_POUCH_EXPANSION, /* ITEMMDL_POUCH_EXPANSION */
|
||||
MDL_ITEM_LIFE_MEDAL, /* ITEMMDL_LIFE_MEDAL */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_WOODEN_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_BANDED_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_BRACED_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_IRON_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_REINFORCED_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_FORTIFIED_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_SACRED_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_DIVINE_SHIELD */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_GODDESS_SHIELD */
|
||||
MDL_ITEM_HYLIAN_SHIELD, /* ITEMMDL_HYLIAN_SHIELD */
|
||||
MDL_ITEM_REVITALIZING_POTION, /* ITEMMDL_REVITALIZING_POTION */
|
||||
MDL_ITEM_REVITALIZING_POTION, /* ITEMMDL_REVITALIZING_POTION_PLUS */
|
||||
MDL_ITEM_SMALL_SEED_SATCHEL, /* ITEMMDL_SMALL_SEED_SATCHEL */
|
||||
MDL_ITEM_MEDIUM_SEED_SATCHEL, /* ITEMMDL_MEDIUM_SEED_SATCHEL */
|
||||
MDL_ITEM_LARGE_SEED_SATCHEL, /* ITEMMDL_LARGE_SEED_SATCHEL */
|
||||
MDL_ITEM_SMALL_QUIVER, /* ITEMMDL_SMALL_QUIVER */
|
||||
MDL_ITEM_MEDIUM_QUIVER, /* ITEMMDL_MEDIUM_QUIVER */
|
||||
MDL_ITEM_LARGE_QUIVER, /* ITEMMDL_LARGE_QUIVER */
|
||||
MDL_ITEM_SMALL_BOMB_BAG, /* ITEMMDL_SMALL_BOMB_BAG */
|
||||
MDL_ITEM_MEDIUM_BOMB_BAG, /* ITEMMDL_MEDIUM_BOMB_BAG */
|
||||
MDL_ITEM_LARGE_BOMB_BAG, /* ITEMMDL_LARGE_BOMB_BAG */
|
||||
MDL_ITEM_WHIP, /* ITEMMDL_WHIP */
|
||||
MDL_ITEM_FIRESHIELD_EARRINGS, /* ITEMMDL_FIRESHIELD_EARRINGS */
|
||||
MDL_ITEM_BIG_BUG_NET, /* ITEMMDL_BIG_BUG_NET */
|
||||
MDL_ITEM_FARON_GRASSHOPPER, /* ITEMMDL_FARON_GRASSHOPPER */
|
||||
MDL_ITEM_WOODLAND_RHINO_BEETLE, /* ITEMMDL_WOODLAND_RHINO_BEETLE */
|
||||
MDL_ITEM_DEKU_HORNET, /* ITEMMDL_DEKU_HORNET */
|
||||
MDL_ITEM_SKYLOFT_MANTIS, /* ITEMMDL_SKYLOFT_MANTIS */
|
||||
MDL_ITEM_VOLCANIC_LADYBUG, /* ITEMMDL_VOLCANIC_LADYBUG */
|
||||
MDL_ITEM_BLESSED_BUTTERFLY, /* ITEMMDL_BLESSED_BUTTERFLY */
|
||||
MDL_ITEM_LANAYRU_ANT, /* ITEMMDL_LANAYRU_ANT */
|
||||
MDL_ITEM_SAND_CICADA, /* ITEMMDL_SAND_CICADA */
|
||||
MDL_ITEM_GERUDO_DRAGONFLY, /* ITEMMDL_GERUDO_DRAGONFLY */
|
||||
MDL_ITEM_ELDIN_ROLLER, /* ITEMMDL_ELDIN_ROLLER */
|
||||
MDL_ITEM_SKY_STAG_BEETLE, /* ITEMMDL_SKY_STAG_BEETLE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_STARRY_FIREFLY */
|
||||
MDL_ITEM_BOTTLE, /* ITEMMDL_BOTTLE */
|
||||
MDL_ITEM_CAWLIN_LETTER, /* ITEMMDL_CAWLIN_LETTER */
|
||||
MDL_ITEM_BEEDLE_INSECT_CAGE, /* ITEMMDL_BEEDLE_INSECT_CAGE */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_RATTLE */
|
||||
MDL_ITEM_HORNET_LARVAE, /* ITEMMDL_HORNET_LARVAE */
|
||||
MDL_ITEM_BIRD_FEATHER, /* ITEMMDL_BIRD_FEATHER */
|
||||
MDL_ITEM_TUMBLE_WEED, /* ITEMMDL_TUMBLE_WEED */
|
||||
MDL_ITEM_LIZARD_TAIL, /* ITEMMDL_LIZARD_TAIL */
|
||||
MDL_ITEM_ELDIN_ORE, /* ITEMMDL_ELDIN_ORE */
|
||||
MDL_ITEM_ANCIENT_FLOWER, /* ITEMMDL_ANCIENT_FLOWER */
|
||||
MDL_ITEM_AMBER_RELIC, /* ITEMMDL_AMBER_RELIC */
|
||||
MDL_ITEM_DUSK_RELIC, /* ITEMMDL_DUSK_RELIC */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_JELLY_BLOB */
|
||||
MDL_ITEM_MONSTER_CLAW, /* ITEMMDL_MONSTER_CLAW */
|
||||
MDL_ITEM_MONSTER_HORN, /* ITEMMDL_MONSTER_HORN */
|
||||
MDL_ITEM_ORNAMENTAL_SKULL, /* ITEMMDL_ORNAMENTAL_SKULL */
|
||||
MDL_ITEM_EVIL_CRYSTAL, /* ITEMMDL_EVIL_CRYSTAL */
|
||||
MDL_ITEM_BLUE_BIRD_FEATHER, /* ITEMMDL_BLUE_BIRD_FEATHER */
|
||||
MDL_ITEM_GOLDEN_SKULL, /* ITEMMDL_GOLDEN_SKULL */
|
||||
MDL_ITEM_GODDESS_PLUME, /* ITEMMDL_GODDESS_PLUME */
|
||||
MDL_ITEM_EMERALD_TABLET, /* ITEMMDL_EMERALD_TABLET */
|
||||
MDL_ITEM_RUBY_TABLET, /* ITEMMDL_RUBY_TABLET */
|
||||
MDL_ITEM_AMBER_TABLET, /* ITEMMDL_AMBER_TABLET */
|
||||
MDL_ITEM_STONE_OF_TRIALS, /* ITEMMDL_STONE_OF_TRIALS */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_BALLAD_OF_THE_GODDESS */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_FARORES_COURAGE */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_NAYRUS_WISDOM */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_DINS_POWER */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_FARON_SOTH */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_ELDIN_SOTH */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_LANAYRU_SOTH */
|
||||
MDL_ITEM_GODDESS_HARP, /* ITEMMDL_ITEM_SOTH */
|
||||
MDL_ITEM_REVITALIZING_POTION_PLUS_PLUS, /* ITEMMDL_REVITALIZING_POTION_PLUS_PLUS */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_HOT_SOUP */
|
||||
MDL_ITEM_MAX, /* ITEMMDL_COLD_SOUP */
|
||||
MDL_ITEM_LIFE_TREE_SEED, /* ITEMMDL_LIFE_TREE_SEED */
|
||||
MDL_ITEM_LIFE_TREE_FRUIT, /* ITEMMDL_LIFE_TREE_FRUIT */
|
||||
MDL_ITEM_EXTRA_WALLET, /* ITEMMDL_EXTRA_WALLET */
|
||||
};
|
||||
|
||||
const dItemMdlItem_c::MdlConfig dItemMdlItem_c::sMdlConfig[] = {
|
||||
{ "GetTriForce", "GetTriForce"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetSwordA", "GetSwordA"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetHarp", "GetHarp"},
|
||||
{ "GetSirenFlower", "GetSirenFlower"},
|
||||
{ "GetBowA", "GetBowA"},
|
||||
{ "GetHookShot", "GetHookShot"},
|
||||
{ "GetBirdStatue", "GetBirdStatue"},
|
||||
{ "GetKeyBoss2A", "GetKeyBoss2A"},
|
||||
{ "GetKeyBoss2B", "GetKeyBoss2B"},
|
||||
{ "GetKeyBoss2C", "GetKeyBoss2C"},
|
||||
{ "GetKeyKakera", nullptr},
|
||||
{ "GetKeyBossA", "GetKeyBossA"},
|
||||
{ "GetKeyBossB", "GetKeyBossB"},
|
||||
{ "GetKeyBossC", "GetKeyBossC"},
|
||||
{ "GetBottleKinokoA", "GetBottleKinokoA"},
|
||||
{ "GetBomb", "GetBomb"},
|
||||
{ "GetVacuum", "GetVacuum"},
|
||||
{ "GetMap", "GetMap"},
|
||||
{ "GetPachinkoA", "GetPachinkoA"},
|
||||
{ "GetBeetleA", "GetBeetleA"},
|
||||
{ "GetBottleKinokoB", "GetBottleKinokoB"},
|
||||
{ "GetMoleGloveA", "GetMoleGloveA"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetSeedSet", "GetSeedSet"},
|
||||
{ "GetUroko", "GetUroko"},
|
||||
{ "GetMedal", "GetMedalReturn"},
|
||||
{ "GetNetA", "GetNetA"},
|
||||
{ "GetBeetleB", "GetBeetleB"},
|
||||
{ "GetBeetleC", "GetBeetleC"},
|
||||
{ "GetBeetleD", "GetBeetleD"},
|
||||
{ "GetBowB", "GetBowB"},
|
||||
{ "GetBowC", "GetBowC"},
|
||||
{ "GetBombBag", "GetBombBag"},
|
||||
{ "GetMapSea", "GetMapSea"},
|
||||
{ "GetMoleGloveB", "GetMoleGloveB"},
|
||||
{ "GetMedal", "GetMedalHeart"},
|
||||
{ "GetMedal", "GetMedalLucky"},
|
||||
{ "GetMedal", "GetMedalHunter"},
|
||||
{ "GetMedal", "GetMedalDurable"},
|
||||
{ "GetMedal", "GetMedalDemon"},
|
||||
{ "GetPachinkoB", "GetPachinkoB"},
|
||||
{ "GetRupee", "GetRupee"},
|
||||
{ "GetPurseB", "GetPurseB"},
|
||||
{ "GetPurseC", "GetPurseC"},
|
||||
{ "GetPurseD", "GetPurseD"},
|
||||
{ "GetPurseE", "GetPurseE"},
|
||||
{ "GetPouchA", "GetPorchA"},
|
||||
{ "GetPouchB", "GetPorchB"},
|
||||
{ "GetMedal", "GetMedalLife"},
|
||||
{ "GetShieldHylia", "GetShieldHylia"},
|
||||
{ "GetBottleRepair", "GetBottleRepair"},
|
||||
{ "GetSpareSeedA", "GetSpareSeedA"},
|
||||
{ "GetSpareSeedB", "GetSpareSeedB"},
|
||||
{ "GetSpareSeedC", "GetSpareSeedC"},
|
||||
{ "GetSpareQuiverA", "GetSpareQuiverA"},
|
||||
{ "GetSpareQuiverB", "GetSpareQuiverB"},
|
||||
{ "GetSpareQuiverC", "GetSpareQuiverC"},
|
||||
{ "GetSpareBombBagA", "GetSpareBombBagA"},
|
||||
{ "GetSpareBombBagB", "GetSpareBombBagB"},
|
||||
{ "GetSpareBombBagC", "GetSpareBombBagC"},
|
||||
{ "GetWhip", "GetWhip"},
|
||||
{ "GetEarring", "GetEarring"},
|
||||
{ "GetNetB", "GetNetB"},
|
||||
{"GetInsectGrasshopper", "GetInsectGrasshopper"},
|
||||
{ "GetInsectBeetle", "GetInsectBeetle"},
|
||||
{ "GetInsectBee", "GetInsectBee"},
|
||||
{ "GetInsectKamakiri", "GetInsectKamakiri"},
|
||||
{ "GetInsectLadybug", "GetInsectLadybug"},
|
||||
{ "GetInsectButterfly", "GetInsectButterfly"},
|
||||
{ "GetInsectAnt", "GetInsectAnt"},
|
||||
{ "GetInsectCicada", "GetInsectCicada"},
|
||||
{ "GetInsectDragonfly", "GetInsectDragonfly"},
|
||||
{ "GetInsectScarab", "GetInsectScarab"},
|
||||
{ "GetInsectKuwagata", "GetInsectKuwagata"},
|
||||
{ "GetBottleEmpty", "GetBottleEmpty"},
|
||||
{ "GetKobunALetter", "GetKobunALetter"},
|
||||
{ "GetTerryCage", "GetTerryCage"},
|
||||
{ "GetSozaiA", "GetSozaiA"},
|
||||
{ "GetSozaiB", "GetSozaiB"},
|
||||
{ "GetSozaiC", "GetSozaiC"},
|
||||
{ "GetSozaiD", "GetSozaiD"},
|
||||
{ "GetSozaiE", "GetSozaiE"},
|
||||
{ "GetSozaiF", "GetSozaiF"},
|
||||
{ "GetSozaiG", "GetSozaiG"},
|
||||
{ "GetSozaiH", "GetSozaiH"},
|
||||
{ "GetSozaiJ", "GetSozaiJ"},
|
||||
{ "GetSozaiL", "GetSozaiL"},
|
||||
{ "GetSozaiK", "GetSozaiK"},
|
||||
{ "GetSozaiM", "GetSozaiM"},
|
||||
{ "GetSozaiN", "GetSozaiN"},
|
||||
{ "GetSozaiO", "GetSozaiO"},
|
||||
{ "GetSozaiP", "GetSozaiP"},
|
||||
{ "GetSekibanMapA", "SekibanMapA"},
|
||||
{ "GetSekibanMapB", "SekibanMapB"},
|
||||
{ "GetSekibanMapC", "SekibanMapC"},
|
||||
{ "GetSirenKey", "GetSirenKey"},
|
||||
{ "GetBottleRepairS", "GetBottleRepairS"},
|
||||
{ "GetSeedLife", "GetSeedLife"},
|
||||
{ "GetFruitB", "GetFruitB"},
|
||||
{ "GetSparePurse", "GetSparePurse"},
|
||||
};
|
||||
|
||||
bool dItemMdlItem_c::isMdlForItemId(u16 itemId) {
|
||||
if (hasItemMdl(itemId) == false) {
|
||||
return false;
|
||||
} else {
|
||||
return sMdlIdx[getItemMdlIdx(itemId)] <= MDL_ITEM_MAX - 1;
|
||||
}
|
||||
}
|
||||
|
||||
bool dItemMdlItem_c::init(u16 itemId, dAcItem_c *item, mAllocator_c *allocator) {
|
||||
const MdlConfig *mdlConfig;
|
||||
bool scattershotOverride = dAcItem_c::isSlingshot((ITEM_ID)itemId) && dAcItem_c::checkFlag(ITEM_MIGHTY_SCATTERSHOT);
|
||||
if (scattershotOverride) {
|
||||
mdlConfig = &sMdlConfig[sMdlIdx[getItemMdlIdx(ITEM_MIGHTY_SCATTERSHOT)]];
|
||||
} else {
|
||||
mdlConfig = &sMdlConfig[sMdlIdx[getItemMdlIdx(itemId)]];
|
||||
}
|
||||
|
||||
void *resData = OarcManager::GetInstance()->getMdlFromArc2(mdlConfig->resFile);
|
||||
if (resData == nullptr) {
|
||||
return false;
|
||||
}
|
||||
nw4r::g3d::ResFile res(resData);
|
||||
if (!res.IsValid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
SizedString<0x20> str;
|
||||
if (dAcItem_c::isKeyPiece((ITEM_ID)itemId)) {
|
||||
if (dAcItem_c::getKeyPieceCount() < dAcItem_c::getTotalRequiredKeyPieceCount() - 1) {
|
||||
str = "GetKeyKakeraA";
|
||||
} else {
|
||||
str = "GetKeyKakeraB";
|
||||
}
|
||||
} else {
|
||||
str = mdlConfig->mdlName;
|
||||
}
|
||||
|
||||
nw4r::g3d::ResMdl mdl = res.GetResMdl(str);
|
||||
if (!mdl.IsValid()) {
|
||||
return false;
|
||||
}
|
||||
if (!mMdl.create(mdl, allocator, 0x120)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
mpItem = item;
|
||||
return true;
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::vt_0x10(u8 arg) {
|
||||
field_0x14 = arg;
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::setScale(const mVec3_c &scale) {
|
||||
mMdl.setScale(scale);
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::setLocalMtx(const mMtx_c &mtx) {
|
||||
mMdl.setLocalMtx(mtx);
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::draw() {
|
||||
if (field_0x14 == ITEM_MDL_UNK0x14_2) {
|
||||
mpItem->fn_8002ECD0(&mMdl, 6);
|
||||
} else {
|
||||
ITEM_MDL_UNK0x14_1:
|
||||
mpItem->fn_8002ECD0(&mMdl, 7);
|
||||
}
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::vt_0x20(u16 itemId) {
|
||||
// no-op
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::setPriorityDraw() {
|
||||
mMdl.setPriorityDraw(0x82, 0x7F);
|
||||
}
|
||||
|
||||
void dItemMdlItem_c::unsetPriorityDraw() {
|
||||
mMdl.setPriorityDraw(0x7F, 0x7F);
|
||||
}
|
||||
|
||||
m3d::smdl_c *dItemMdlItem_c::getMdl() {
|
||||
return &mMdl;
|
||||
}
|
||||
@@ -12,6 +12,20 @@
|
||||
#include "toBeSorted/arc_managers/oarc_manager.h"
|
||||
#include "toBeSorted/item_mdl_name.h"
|
||||
|
||||
enum MdlIdx {
|
||||
MDL_PUT_ARROW,
|
||||
MDL_PUT_ARROW_BUNDLE,
|
||||
MDL_PUT_HEART,
|
||||
MDL_PUT_KEY_SMALL,
|
||||
MDL_PUT_BOMB_SET,
|
||||
MDL_PUT_SEED,
|
||||
MDL_PUT_HEART_UTUWA,
|
||||
MDL_PUT_HEART_KAKERA,
|
||||
MDL_PUT_TRI_FORCE,
|
||||
MDL_PUT_GARAGARA,
|
||||
MDL_PUT_MAX,
|
||||
};
|
||||
|
||||
const u8 dItemMdlPut_c::sMdlIdx[] = {
|
||||
MDL_PUT_KEY_SMALL, /* ITEMMDL_SMALL_KEY */
|
||||
MDL_PUT_MAX, /* ITEMMDL_GREEN_RUPEE */
|
||||
@@ -31,7 +45,7 @@ const u8 dItemMdlPut_c::sMdlIdx[] = {
|
||||
MDL_PUT_MAX, /* ITEMMDL_GODDESS_HARP */
|
||||
MDL_PUT_MAX, /* ITEMMDL_SPIRIT_VESSEL */
|
||||
MDL_PUT_MAX, /* ITEMMDL_BOW */
|
||||
MDL_PUT_MAX, /* ITEMMDL_CLAWSHOWS */
|
||||
MDL_PUT_MAX, /* ITEMMDL_CLAWSHOTS */
|
||||
MDL_PUT_MAX, /* ITEMMDL_BIRD_STATUETTE */
|
||||
MDL_PUT_MAX, /* ITEMMDL_AC_BK */
|
||||
MDL_PUT_MAX, /* ITEMMDL_FS_BK */
|
||||
@@ -289,6 +303,19 @@ void dItemMdlPut_c::unsetPriorityDraw() {
|
||||
mPutMdl.setPriorityDraw(0x7F, 0x7F);
|
||||
}
|
||||
|
||||
enum ShieldIdx {
|
||||
MDL_SHIELD_WOOD_0,
|
||||
MDL_SHIELD_WOOD_1,
|
||||
MDL_SHIELD_WOOD_2,
|
||||
MDL_SHIELD_IRON_0,
|
||||
MDL_SHIELD_IRON_1,
|
||||
MDL_SHIELD_IRON_2,
|
||||
MDL_SHIELD_HOLY_0,
|
||||
MDL_SHIELD_HOLY_1,
|
||||
MDL_SHIELD_HOLY_2,
|
||||
MDL_SHIELD_MAX
|
||||
};
|
||||
|
||||
const u8 dItemMdlShield_c::sMdlIdx[] = {
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_SMALL_KEY */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_GREEN_RUPEE */
|
||||
@@ -308,7 +335,7 @@ const u8 dItemMdlShield_c::sMdlIdx[] = {
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_GODDESS_HARP */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_SPIRIT_VESSEL */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_BOW */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_CLAWSHOWS */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_CLAWSHOTS */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_BIRD_STATUETTE */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_AC_BK */
|
||||
MDL_SHIELD_MAX, /* ITEMMDL_FS_BK */
|
||||
@@ -551,6 +578,18 @@ void dItemMdlShield_c::unsetPriorityDraw() {
|
||||
mMdl.setPriorityDraw(0x7F, 0x7F);
|
||||
}
|
||||
|
||||
enum BottleIdx {
|
||||
MDL_BOTTLE_WATER,
|
||||
MDL_BOTTLE_FAIRY,
|
||||
MDL_BOTTLE_HOLY,
|
||||
MDL_BOTTLE_KUSURI,
|
||||
MDL_BOTTLE_KUSURI_S,
|
||||
MDL_BOTTLE_B_FAIRY,
|
||||
MDL_BOTTLE_SOZAI_I,
|
||||
MDL_BOTTLE_PUMPKIN,
|
||||
MDL_BOTTLE_MAX
|
||||
};
|
||||
|
||||
const u8 dItemMdlBottle_c::sMdlIdx[] = {
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_SMALL_KEY */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_GREEN_RUPEE */
|
||||
@@ -570,7 +609,7 @@ const u8 dItemMdlBottle_c::sMdlIdx[] = {
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_GODDESS_HARP */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_SPIRIT_VESSEL */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_BOW */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_CLAWSHOWS */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_CLAWSHOTS */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_BIRD_STATUETTE */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_AC_BK */
|
||||
MDL_BOTTLE_MAX, /* ITEMMDL_FS_BK */
|
||||
@@ -1021,6 +1060,14 @@ m3d::smdl_c *dItemMdlFirefly_c::getMdl() {
|
||||
return &mMdl;
|
||||
}
|
||||
|
||||
enum PotionIdx {
|
||||
MDL_POTION_MUTEKI,
|
||||
MDL_POTION_GUTS,
|
||||
MDL_POTION_AIR,
|
||||
MDL_POTION_GENKI,
|
||||
MDL_POTION_MAX,
|
||||
};
|
||||
|
||||
const u8 dItemMdlPotion_c::sMdlIdx[] = {
|
||||
MDL_POTION_MAX, /* ITEMMDL_SMALL_KEY */
|
||||
MDL_POTION_MAX, /* ITEMMDL_GREEN_RUPEE */
|
||||
@@ -1040,7 +1087,7 @@ const u8 dItemMdlPotion_c::sMdlIdx[] = {
|
||||
MDL_POTION_MAX, /* ITEMMDL_GODDESS_HARP */
|
||||
MDL_POTION_MAX, /* ITEMMDL_SPIRIT_VESSEL */
|
||||
MDL_POTION_MAX, /* ITEMMDL_BOW */
|
||||
MDL_POTION_MAX, /* ITEMMDL_CLAWSHOWS */
|
||||
MDL_POTION_MAX, /* ITEMMDL_CLAWSHOTS */
|
||||
MDL_POTION_MAX, /* ITEMMDL_BIRD_STATUETTE */
|
||||
MDL_POTION_MAX, /* ITEMMDL_AC_BK */
|
||||
MDL_POTION_MAX, /* ITEMMDL_FS_BK */
|
||||
|
||||
@@ -22,7 +22,7 @@ static const u16 ITEM_TO_MODEL_INDEX[512] = {
|
||||
ITEMMDL_SPIRIT_VESSEL, /* ITEM_SPIRIT_VESSEL */
|
||||
ITEMMDL_MAX, /* ITEM_UNK_18 */
|
||||
ITEMMDL_BOW, /* ITEM_BOW */
|
||||
ITEMMDL_CLAWSHOWS, /* ITEM_CLAWSHOTS */
|
||||
ITEMMDL_CLAWSHOTS, /* ITEM_CLAWSHOTS */
|
||||
ITEMMDL_BIRD_STATUETTE, /* ITEM_BIRD_STATUETTE */
|
||||
ITEMMDL_MAX, /* ITEM_COMMON_BUG */
|
||||
ITEMMDL_MAX, /* ITEM_UNCOMMON_BUG */
|
||||
|
||||
Reference in New Issue
Block a user