diff --git a/configure.py b/configure.py index 98dd063d0..7bc9629fb 100644 --- a/configure.py +++ b/configure.py @@ -272,7 +272,7 @@ config.libs = [ Object(Matching, "f_op/f_op_actor_iter.cpp"), Object(Matching, "f_op/f_op_actor_tag.cpp"), Object(NonMatching, "f_op/f_op_actor_mng.cpp"), - Object(NonMatching, "f_op/f_op_camera.cpp"), + Object(Matching, "f_op/f_op_camera.cpp"), Object(Matching, "f_op/f_op_camera_mng.cpp"), Object(Matching, "f_op/f_op_overlap.cpp"), Object(Matching, "f_op/f_op_overlap_mng.cpp"), @@ -394,7 +394,7 @@ config.libs = [ Object(NonMatching, "d/d_ev_camera.cpp"), Object(NonMatching, "d/d_wood.cpp"), Object(NonMatching, "d/d_flower.cpp"), - Object(NonMatching, "d/d_item_data.cpp"), + Object(Matching, "d/d_item_data.cpp"), Object(Matching, "d/d_seafightgame.cpp"), Object(NonMatching, "d/d_spline_path.cpp"), Object(NonMatching, "d/d_s_actor_data_mng.cpp"), @@ -404,7 +404,7 @@ config.libs = [ Object(NonMatching, "d/d_a_npc_mk_static.cpp"), Object(NonMatching, "d/d_salvage.cpp"), Object(NonMatching, "d/d_snap.cpp"), - Object(NonMatching, "d/d_point_wind.cpp"), + Object(Matching, "d/d_point_wind.cpp"), Object(NonMatching, "d/actor/d_a_agb.cpp"), Object(NonMatching, "d/actor/d_a_arrow.cpp"), Object(NonMatching, "d/actor/d_a_bg.cpp"), @@ -420,7 +420,7 @@ config.libs = [ Object(NonMatching, "d/actor/d_a_hookshot.cpp"), Object(NonMatching, "d/actor/d_a_ib.cpp"), Object(NonMatching, "d/actor/d_a_item.cpp"), - Object(NonMatching, "d/actor/d_a_itembase.cpp"), + Object(Matching, "d/actor/d_a_itembase.cpp"), Object(NonMatching, "d/actor/d_a_nh.cpp"), Object(NonMatching, "d/actor/d_a_npc_fa1.cpp"), Object(NonMatching, "d/actor/d_a_obj_search.cpp"), @@ -510,12 +510,12 @@ config.libs = [ Object(Matching, "SSystem/SComponent/c_request.cpp"), Object(Matching, "SSystem/SComponent/c_tag.cpp"), Object(Matching, "SSystem/SComponent/c_tag_iter.cpp"), - Object(NonMatching, "SSystem/SComponent/c_xyz.cpp"), + Object(Matching, "SSystem/SComponent/c_xyz.cpp"), Object(Matching, "SSystem/SComponent/c_sxyz.cpp"), Object(Matching, "SSystem/SComponent/c_math.cpp"), Object(NonMatching, "SSystem/SComponent/c_bg_s.cpp"), Object(Matching, "SSystem/SComponent/c_bg_s_chk.cpp"), - Object(NonMatching, "SSystem/SComponent/c_bg_s_gnd_chk.cpp"), + Object(Matching, "SSystem/SComponent/c_bg_s_gnd_chk.cpp"), Object(Matching, "SSystem/SComponent/c_bg_s_lin_chk.cpp"), Object(NonMatching, "SSystem/SComponent/c_bg_w.cpp"), Object(NonMatching, "SSystem/SComponent/c_m2d.cpp"), @@ -524,10 +524,10 @@ config.libs = [ Object(Matching, "SSystem/SComponent/c_m3d_g_aab.cpp"), Object(Matching, "SSystem/SComponent/c_m3d_g_cyl.cpp"), Object(Matching, "SSystem/SComponent/c_m3d_g_pla.cpp"), - Object(NonMatching, "SSystem/SComponent/c_m3d_g_sph.cpp"), + Object(Matching, "SSystem/SComponent/c_m3d_g_sph.cpp"), Object(Matching, "SSystem/SComponent/c_m3d_g_tri.cpp"), - Object(NonMatching, "SSystem/SComponent/c_lib.cpp"), - Object(NonMatching, "SSystem/SComponent/c_angle.cpp"), + Object(Matching, "SSystem/SComponent/c_lib.cpp"), + Object(Matching, "SSystem/SComponent/c_angle.cpp"), Object(Matching, "SSystem/SComponent/c_data_tbl.cpp"), Object(Matching, "SSystem/SStandard/s_basic.cpp"), ], diff --git a/include/JSystem/J3DU/J3DUClipper.h b/include/JSystem/J3DU/J3DUClipper.h index 8e41a7ae8..84d8a1083 100644 --- a/include/JSystem/J3DU/J3DUClipper.h +++ b/include/JSystem/J3DU/J3DUClipper.h @@ -8,10 +8,10 @@ class J3DUClipper { public: J3DUClipper() { init(); } virtual ~J3DUClipper() {} - /* 80273778 */ void init(); - /* 8027378C */ void calcViewFrustum(); - /* 802738FC */ u32 clip(f32 const (*)[4], Vec, f32) const; - /* 80273A44 */ u32 clip(f32 const (*)[4], Vec*, Vec*) const; + void init(); + void calcViewFrustum(); + u32 clip(const Mtx, Vec, f32); + u32 clip(const Mtx, Vec*, Vec*); void setFovy(f32 fovy) { mFovY = fovy; } void setAspect(f32 aspect) { mAspect = aspect; } diff --git a/include/JSystem/JParticle/JPAEmitter.h b/include/JSystem/JParticle/JPAEmitter.h index f5ce3219f..b982719fb 100644 --- a/include/JSystem/JParticle/JPAEmitter.h +++ b/include/JSystem/JParticle/JPAEmitter.h @@ -12,8 +12,6 @@ #include "dolphin/gx/GXStruct.h" #include "dolphin/mtx/mtx.h" -class JPACallBackBase; -class JPACallBackBase2; class JPADataBlockLinkInfo; enum { @@ -26,6 +24,18 @@ enum { JPAEmtrStts_Immortal = 0x40, }; +template +class JPACallBackBase { +public: + JPACallBackBase() {} + virtual ~JPACallBackBase(); + + virtual void init(JPABaseEmitter*); + virtual void execute(JPABaseEmitter*); + virtual void executeAfter(JPABaseEmitter*); + virtual void draw(JPABaseEmitter*); +}; + class JPABaseEmitter { public: typedef void (JPABaseEmitter::*VolumeFunc)(); @@ -111,7 +121,7 @@ public: /* 0x188 */ JSUPtrList mChildParticles; /* 0x194 */ JSUPtrList* mpPtclVacList; /* 0x198 */ JPADataBlockLinkInfo* mpDataLinkInfo; - /* 0x19C */ JPACallBackBase* mpEmitterCallBack; + /* 0x19C */ JPACallBackBase* mpEmitterCallBack; /* 0x1A0 */ JPACallBackBase2* mpParticleCallBack; /* 0x1A4 */ JMath::TRandom_fast_ mRandomSeed; /* 0x1A8 */ Mtx mGlobalRotation; diff --git a/include/SSystem/SComponent/c_angle.h b/include/SSystem/SComponent/c_angle.h index 9103b1001..13eb90cb2 100644 --- a/include/SSystem/SComponent/c_angle.h +++ b/include/SSystem/SComponent/c_angle.h @@ -23,15 +23,15 @@ public: void Val(const cSAngle&); void Val(s16); void Val(float); - float Degree(void) const; - float Radian(void) const; - float Norm(void) const; - s16 Abs(void) const; - s16 Inv(void) const; - float Sin(void) const; - float Cos(void) const; - float Tan(void) const; - cSAngle operator-(void) const; + float Degree() const; + float Radian() const; + float Norm() const; + s16 Abs() const; + s16 Inv() const; + float Sin() const; + float Cos() const; + float Tan() const; + cSAngle operator-() const; cSAngle operator+(const cSAngle&) const; cSAngle operator-(const cSAngle&) const; void operator+=(const cSAngle&); @@ -44,10 +44,10 @@ public: void operator*=(float); bool operator<(const cSAngle& other) const { return mAngle < other.mAngle; } bool operator>(const cSAngle& other) const { return mAngle > other.mAngle; } - operator s16(void) const { return mAngle; } + operator s16() const { return mAngle; } void operator=(const cSAngle& other) { mAngle = other.mAngle; } - static inline cSAngle getMaxNegative(void) { return cSAngle((s16)-0x8000); } - inline void mirrorAtMaxNeg(void) { *this = cSAngle((s16)-0x8000) - *this; } + static inline cSAngle getMaxNegative() { return cSAngle((s16)-0x8000); } + inline void mirrorAtMaxNeg() { *this = cSAngle((s16)-0x8000) - *this; } }; cSAngle operator+(short, const cSAngle&); @@ -91,11 +91,11 @@ public: cDegree(float); ~cDegree() {} - cDegree& Formal(void); + cDegree& Formal(); void Val(float); - float Radian(void) const; - float Sin(void) const; - float Cos(void) const; + float Radian() const; + float Sin() const; + float Cos() const; }; class cSPolar { @@ -107,10 +107,10 @@ private: public: cSPolar() {} cSPolar(const cXyz&); - cSPolar& Formal(void); + cSPolar& Formal(); void Val(float, short, short); void Val(const cXyz&); - cXyz Xyz(void) const; + cXyz Xyz() const; void Globe(class cSGlobe*) const; }; @@ -126,18 +126,18 @@ public: cSGlobe(float, const cSAngle&, const cSAngle&); cSGlobe(const cXyz&); ~cSGlobe() {} - cSGlobe& Formal(void); + cSGlobe& Formal(); void Val(const cSGlobe&); void Val(float, short, short); void Val(float, const cSAngle&, const cSAngle&); void Val(const cXyz&); - float R(void) const { return mRadius; } - const cSAngle& V(void) const { return mAzimuth; } - const cSAngle& U(void) const { return mInclination; } - cXyz Xyz(void) const; + float R() const { return mRadius; } + const cSAngle& V() const { return mAzimuth; } + const cSAngle& U() const { return mInclination; } + cXyz Xyz() const; void Polar(cSPolar*) const; - cXyz Norm(void) const; - cSGlobe& Invert(void); + cXyz Norm() const; + cSGlobe& Invert(); }; #endif /* C_ANGLE_H */ diff --git a/include/SSystem/SComponent/c_m3d.h b/include/SSystem/SComponent/c_m3d.h index 23ad25f58..58bb9f192 100644 --- a/include/SSystem/SComponent/c_m3d.h +++ b/include/SSystem/SComponent/c_m3d.h @@ -58,7 +58,7 @@ int cM3d_Cross_LinSph_CrossPos(const cM3dGSph&, const cM3dGLin&, Vec*, Vec*); bool cM3d_Cross_CylSph(const cM3dGCyl*, const cM3dGSph*, f32*); bool cM3d_Cross_CylSph(const cM3dGCyl*, const cM3dGSph*, Vec*, f32*); bool cM3d_Cross_SphSph(const cM3dGSph*, const cM3dGSph*, f32*); -static bool cM3d_Cross_SphSph(const cM3dGSph*, const cM3dGSph*, f32*, f32*); +bool cM3d_Cross_SphSph(const cM3dGSph*, const cM3dGSph*, f32*, f32*); bool cM3d_Cross_SphSph(const cM3dGSph*, const cM3dGSph*, Vec*); static void cM3d_CalcSphVsTriCrossPoint(const cM3dGSph*, const cM3dGTri*, Vec*); bool cM3d_Cross_SphTri(const cM3dGSph*, const cM3dGTri*, Vec*); diff --git a/include/d/actor/d_a_item.h b/include/d/actor/d_a_item.h index 015fff5c7..8627e8dda 100644 --- a/include/d/actor/d_a_item.h +++ b/include/d/actor/d_a_item.h @@ -6,6 +6,8 @@ class daItem_c : public daItemBase_c { public: + daItem_c() : mPtclFollowCb(0, 0), mPtclSmokeCb(1) {} + float getYOffset(); void set_mtx(); void set_mtx_base(J3DModel*, cXyz, csXyz); @@ -54,6 +56,8 @@ public: s32 setLock(); s32 releaseLock(); s32 checkActionNow(); + + static dCcD_SrcCyl m_cyl_src; public: /* 0x63C */ cXyz mScaleTarget; @@ -70,10 +74,10 @@ public: /* 0x669 */ u8 mStatusFlags; /* 0x66A */ u8 mMode; /* 0x66B */ u8 mCurState; - /* 0x66C */ u8 field23_0x66c[0x6BC - 0x66C]; - // /* 0x674 */ dPa_rippleEcallBack mPtclRippleCb; - // /* 0x688 */ dPa_followEcallBack mPtclFollowCb; - // /* 0x69C */ dPa_smokeEcallBack mPtclSmokeCb; + /* 0x66C */ u8 field23_0x66c[0x674 - 0x66C]; + /* 0x674 */ dPa_rippleEcallBack mPtclRippleCb; + /* 0x688 */ dPa_followEcallBack mPtclFollowCb; + /* 0x69C */ dPa_smokeEcallBack mPtclSmokeCb; /* 0x6BC */ JPABaseEmitter* mpParticleEmitter; }; diff --git a/include/d/actor/d_a_itembase.h b/include/d/actor/d_a_itembase.h index 355e5018e..ecd34edbe 100644 --- a/include/d/actor/d_a_itembase.h +++ b/include/d/actor/d_a_itembase.h @@ -36,9 +36,9 @@ STATIC_ASSERT(sizeof(daItemBase_c_m_data) == 0x4C); struct daItemBase_c : public fopAc_ac_c { public: - s32 DeleteBase(const char*); - s32 CreateItemHeap(const char*, short, short, short, short, short, short, short); - virtual s32 DrawBase(); + BOOL DeleteBase(const char*); + BOOL CreateItemHeap(const char*, short, short, short, short, short, short, short); + virtual BOOL DrawBase(); virtual void setListStart(); void setListEnd(); virtual void settingBeforeDraw(); @@ -46,7 +46,7 @@ public: virtual void setShadow(); virtual void animEntry(); void animPlay(float, float, float, float, float); - virtual s32 clothCreate(); + virtual BOOL clothCreate(); void getItemNo(); void getHeight(); @@ -65,21 +65,21 @@ public: public: /* 0x294 */ request_of_phase_process_class mPhs; - /* 0x29C */ J3DModel* mModel; - /* 0x2A0 */ J3DModel* mModelArrow[2]; // Extra models for arrow bundles - /* 0x2A8 */ mDoExt_btkAnm* mBtkAnm1; - /* 0x2AC */ mDoExt_btkAnm* mBtkAnm2; - /* 0x2B0 */ mDoExt_brkAnm* mBrkAnm1; - /* 0x2B4 */ mDoExt_brkAnm* mBrkAnm2; - /* 0x2B8 */ mDoExt_bckAnm* mBckAnm; + /* 0x29C */ J3DModel* mpModel; + /* 0x2A0 */ J3DModel* mpModelArrow[2]; // Extra models for arrow bundles + /* 0x2A8 */ mDoExt_btkAnm* mpBtkAnm1; + /* 0x2AC */ mDoExt_btkAnm* mpBtkAnm2; + /* 0x2B0 */ mDoExt_brkAnm* mpBrkAnm1; + /* 0x2B4 */ mDoExt_brkAnm* mpBrkAnm2; + /* 0x2B8 */ mDoExt_bckAnm* mpBckAnm; /* 0x2BC */ dBgS_ObjAcch mAcch; /* 0x480 */ dBgS_AcchCir mAcchCir; /* 0x4C0 */ dCcD_Stts mStts; /* 0x4FC */ dCcD_Cyl mCyl; - /* 0x62C */ u8 field14_0x62c[0x630 - 0x62C]; - /* 0x630 */ int mPickupFlag; - /* 0x634 */ int field19_0x634; - /* 0x638 */ short field20_0x638; + /* 0x62C */ s32 mShadowId; + /* 0x630 */ s32 mPickupFlag; + /* 0x634 */ s32 field_0x634; + /* 0x638 */ s16 field_0x638; /* 0x63A */ u8 m_itemNo; /* 0x63B */ u8 mDrawFlags; }; diff --git a/include/d/actor/d_a_player_link.h b/include/d/actor/d_a_player_link.h index 7f7f75d54..d9bc7ba9e 100644 --- a/include/d/actor/d_a_player_link.h +++ b/include/d/actor/d_a_player_link.h @@ -1000,6 +1000,8 @@ public: void procCutKesa_init(); void procCutKesa(); void checkNoControll() const; + + J3DAnmTevRegKey* getBombBrk() { return mpBombBrk; } virtual MtxP getLeftHandMatrix(); virtual MtxP getRightHandMatrix(); @@ -1094,7 +1096,7 @@ public: /* 0x2E98 */ J3DModel* mpHeldItemModel; /* 0x2E9C */ mDoExt_bckAnm mSwordAnim; /* 0x2EAC */ u8 field_0x2EAC[0x2EB0 - 0x2EAC]; - /* 0x2EB0 */ J3DAnmTevRegKey* field_0x2eb0; + /* 0x2EB0 */ J3DAnmTevRegKey* mpBombBrk; /* 0x2EB4 */ J3DAnmTevRegKey* mpGwp00BrkData; /* 0x2EB8 */ J3DAnmTextureSRTKey* mpGwp00BtkData; /* 0x2EBC */ u8 field_0x2EBC[0x2ED4 - 0x2EBC]; diff --git a/include/d/actor/d_a_shop_item.h b/include/d/actor/d_a_shop_item.h index 0c375c341..a417861d2 100644 --- a/include/d/actor/d_a_shop_item.h +++ b/include/d/actor/d_a_shop_item.h @@ -14,7 +14,7 @@ struct daShopItem_c : public daItemBase_c { char* getShopArcname(); s16 getShopBmdIdx(); void CreateInit(); - int _create(); + inline int _create(); bool _execute(); void set_mtx(); bool _draw(); @@ -23,7 +23,7 @@ struct daShopItem_c : public daItemBase_c { void setListStart() {} void settingBeforeDraw(); void setTevStr(); - s32 clothCreate(); + BOOL clothCreate(); //funcs in d_a_shop_item_static cXyz* getScaleP(); @@ -35,7 +35,7 @@ struct daShopItem_c : public daItemBase_c { static const char m_cloth_arcname[]; static const f32 m_cullfar_max; - static const u8 mModelType[256]; + static const u8 mModelType[255]; static const daShopItem_c_m_data mData[255]; /* 0x63C */ request_of_phase_process_class field_0x63C; diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index d8607ad30..96c0ced72 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -36,6 +36,7 @@ class daAgb_c; class dTimer_c; class camera_class; class J2DOrthoGraph; +class dDemo_actor_c; class __d_timer_info_c { public: @@ -994,6 +995,10 @@ inline void dComIfGp_demo_update() { g_dComIfG_gameInfo.play.getDemo()->update(); } +inline dDemo_actor_c* dComIfGp_demo_getActor(u8 id) { + return g_dComIfG_gameInfo.play.getDemo()->mDemoObj.getActor(id); +} + inline void dComIfGp_setLkDemoAnmArchive(JKRArchive* i_arc) { g_dComIfG_gameInfo.play.setLkDemoAnmArchive(i_arc); } @@ -1114,6 +1119,10 @@ inline void dComIfGp_event_setItemPartnerId(u32 id) { return g_dComIfG_gameInfo.play.getEvent().setPtI_Id(id); } +inline s32 dComIfGp_event_moveApproval(void* actor) { + return g_dComIfG_gameInfo.play.getEvent().moveApproval(actor); +} + inline dEvent_manager_c& dComIfGp_getEventManager() { return g_dComIfG_gameInfo.play.getEvtManager(); } @@ -1182,6 +1191,10 @@ inline void dComIfGp_evmng_remove() { * === DRAWLIST === */ +int dComIfGd_setShadow(u32 id, s8 param_2, J3DModel* pModel, cXyz* pPos, f32 param_5, f32 param_6, + f32 y, f32 param_8, cBgS_PolyInfo& pFloorPoly, dKy_tevstr_c* param_10, + s16 rotY, f32 param_12, GXTexObj* pTexObj); + inline int dComIfGd_setSimpleShadow(cXyz* pPos, f32 param_1, f32 param_2, cXyz* param_3, s16 angle, f32 param_5, GXTexObj* pTex) { return g_dComIfG_gameInfo.drawlist.setSimpleShadow(pPos, param_1, param_2, param_3, angle, @@ -1228,15 +1241,44 @@ inline void dComIfGd_setList() { g_dComIfG_gameInfo.drawlist.setXluList(); } +inline void dComIfGd_setListMaskOff() { + g_dComIfG_gameInfo.drawlist.setOpaListMaskOff(); + g_dComIfG_gameInfo.drawlist.setXluListMaskOff(); +} + inline void dComIfGd_setListSky() { g_dComIfG_gameInfo.drawlist.setOpaListSky(); g_dComIfG_gameInfo.drawlist.setXluListSky(); } +inline void dComIfGd_setListP0() { + g_dComIfG_gameInfo.drawlist.setOpaListP0(); + g_dComIfG_gameInfo.drawlist.setXluListP0(); +} + +inline void dComIfGd_setListP1() { + g_dComIfG_gameInfo.drawlist.setOpaListP1(); + g_dComIfG_gameInfo.drawlist.setXluListP1(); +} + +inline void dComIfGd_setListBG() { + g_dComIfG_gameInfo.drawlist.setOpaListBG(); +} + inline void dComIfGd_setXluListBG() { g_dComIfG_gameInfo.drawlist.setXluListBG(); } +inline void dComIfGd_setListFilter() { + g_dComIfG_gameInfo.drawlist.setOpaListFilter(); + g_dComIfG_gameInfo.drawlist.setXluListFilter(); +} + +inline void dComIfGd_setList2D() { + g_dComIfG_gameInfo.drawlist.setOpaList2D(); + g_dComIfG_gameInfo.drawlist.setXluList2D(); +} + inline void dComIfGd_entryZSortXluList(J3DPacket* i_packet, cXyz& param_1) { g_dComIfG_gameInfo.drawlist.entryZSortXluList(i_packet, param_1); } diff --git a/include/d/d_demo.h b/include/d/d_demo.h index aad241265..2484031df 100644 --- a/include/d/d_demo.h +++ b/include/d/d_demo.h @@ -10,6 +10,12 @@ class dDemo_light_c; class dDemo_system_c; class TControl; class dMesg_tControl; +class fopAc_ac_c; + +class dDemo_actor_c /* : public JStage::TActor */ { +public: + void setActor(fopAc_ac_c*); +}; class dDemo_object_c { public: @@ -17,7 +23,7 @@ public: ~dDemo_object_c(); void appendActor(fopAc_ac_c*); - void getActor(u8); + dDemo_actor_c* getActor(u8); void createCamera(); void getActiveCamera(); void createAmbient(); diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h index 4434b1ae6..aeb763ce9 100644 --- a/include/d/d_drawlist.h +++ b/include/d/d_drawlist.h @@ -214,10 +214,20 @@ public: void setOpaDrawList(J3DDrawBuffer* buffer) { j3dSys.setDrawBuffer(buffer, OPA_BUFFER); } void setOpaList() { setOpaDrawList(mpBufInvisibleModelOpa); } void setXluList() { setXluDrawList(mpBufInvisibleModelXlu); } + void setOpaListMaskOff() { setOpaDrawList(mpBufInvisibleModelMaskOffOpa); } + void setXluListMaskOff() { setXluDrawList(mpBufInvisibleModelMaskOffXlu); } void setOpaListSky() { setOpaDrawList(mpBufSkyOpa); } void setXluListSky() { setXluDrawList(mpBufSkyXlu); } + void setOpaListP0() { setOpaDrawList(mpLinkBuf); } + void setXluListP0() { setXluDrawList(mpLinkBuf); } + void setOpaListP1() { setOpaDrawList(field_0x0000c); } + void setXluListP1() { setXluDrawList(field_0x00010); } void setOpaListBG() { setOpaDrawList(mpBufWorldOpa); } void setXluListBG() { setXluDrawList(mpBufWorldXlu); } + void setOpaListFilter() { setOpaDrawList(mpWetherFxBuffer); } + void setXluListFilter() { setXluDrawList(mpWetherFxBuffer); } + void setOpaList2D() { setOpaDrawList(field_0x00038); } + void setXluList2D() { setXluDrawList(field_0x00038); } void entryZSortXluList(J3DPacket* i_packet, cXyz& param_1) { entryZSortXluDrawList(mpBufInvisibleModelXlu, i_packet, param_1); diff --git a/include/d/d_event.h b/include/d/d_event.h index 3d78feba9..c1dd57301 100644 --- a/include/d/d_event.h +++ b/include/d/d_event.h @@ -48,7 +48,7 @@ public: void soundProc(); void check(); void photoCheck(); - void moveApproval(void*); + s32 moveApproval(void*); void compulsory(void*, const char*, u16); void remove(); void getStageEventDt(); diff --git a/include/d/d_item_data.h b/include/d/d_item_data.h index 49bd4e4e9..a330605d2 100644 --- a/include/d/d_item_data.h +++ b/include/d/d_item_data.h @@ -263,70 +263,95 @@ enum ItemTable { }; struct dItem_data_item_resource { - /* 0x00 */ char* mModelArcName; - /* 0x04 */ char* mIconFilename; - /* 0x08 */ s16 mModelFileIdx; - /* 0x0A */ s16 mBtkFileIdx; - /* 0x0C */ s16 mBrkFileIdx; - /* 0x0E */ s16 field5_0xe; - /* 0x10 */ s16 field6_0x10; - /* 0x12 */ s16 field7_0x12; - /* 0x14 */ s8 mTevRegAnimFrameIndex; // If specified, keep the BRK animation on this frame. - /* 0x15 */ u8 field9_0x15; - /* 0x16 */ s16 mNameMessageId; - /* 0x18 */ u8 temp[8]; - /* 0x20 */ u16 mMaxHeapSize; - /* 0x22 */ u8 field20_0x22; - /* 0x23 */ u8 field21_0x23; + /* 0x00 */ char* mArcname; + /* 0x04 */ char* mTexture; // Filename in /files/res/Msg/itemicon.arc of its inventory icon. + /* 0x08 */ s16 mBmdIdx; + /* 0x0A */ s16 mSrtIdx; // BTK + /* 0x0C */ s16 mSrtIdx2; // BTK + /* 0x0E */ s16 mTevIdx; // BRK + /* 0x10 */ s16 mTevIdx2; // BRK + /* 0x12 */ s16 mBckIdx; + /* 0x14 */ s8 mTevFrm; // If specified, keep the BRK animation on this frame. + /* 0x16 */ s16 mItemMesgNum; // Message containing this item's name + /* 0x18 */ u32 mUnused; // Always 0, doesn't seem to be read + /* 0x1C */ u32 mUnknown; // Varies between items, but doesn't seem to be read + /* 0x20 */ u16 mHeapSize; }; STATIC_ASSERT(sizeof(dItem_data_item_resource) == 0x24); struct dItem_data_field_item_res { - /* 0x00 */ char * mModelArcName; - /* 0x04 */ short mModelFileId; - /* 0x06 */ short mBtkAnmResIdx1; - /* 0x08 */ short mBtkAnmResIdx2; - /* 0x0A */ short mBrkAnmResIdx1; - /* 0x0C */ short mBrkAnmResIdx2; - /* 0x0E */ short mBckAnmResIdx; - /* 0x10 */ u8 mTevRegAnimFrameIndex; - /* 0x11 */ u8 field8_0x11; - /* 0x12 */ u8 field9_0x12; - /* 0x13 */ u8 field10_0x13; - /* 0x14 */ u8 field11_0x14; - /* 0x15 */ u8 field12_0x15; - /* 0x16 */ u8 field13_0x16; - /* 0x17 */ u8 field14_0x17; + /* 0x00 */ char* mArc; + /* 0x04 */ s16 mBmdIdx; + /* 0x06 */ s16 mSrtIdx; // BTK + /* 0x08 */ s16 mSrtIdx2; // BTK + /* 0x0A */ s16 mTevIdx; // BRK + /* 0x0C */ s16 mTevIdx2; // BRK + /* 0x0E */ s16 mBckIdx; + /* 0x10 */ s8 mTevFrm; // Unused, the equivalent in item_resource is used instead. + /* 0x14 */ u32 mUnknown; /* 0x18 */ u16 mHeapSize; - /* 0x1A */ u8 field16_0x1a; - /* 0x1B */ u8 field17_0x1b; }; STATIC_ASSERT(sizeof(dItem_data_field_item_res) == 0x1C); struct dItem_data_item_info { - /* 0x00 */ u8 mMaybeShadowRelated; + /* 0x00 */ u8 mShadowSize; /* 0x01 */ u8 mCollisionH; // Cylinder Height /* 0x02 */ u8 mCollisionR; // Cylinder Radius - /* 0x03 */ u8 mSpecialBehaviors; + /* 0x03 */ u8 mFlag; }; STATIC_ASSERT(sizeof(dItem_data_item_info) == 0x4); +struct dItem_data_effect_info { + /* 0x00 */ u16 m_appear; + /* 0x02 */ u16 m_sp_effect; +}; + +STATIC_ASSERT(sizeof(dItem_data_effect_info) == 0x4); + class dItem_data { public: + static char* item_arcname_tbl[0x70]; + static char* item_texture_tbl[0x74]; static dItem_data_item_resource item_resource[0x100]; static dItem_data_field_item_res field_item_res[0x100]; static dItem_data_item_info item_info[0x100]; + static dItem_data_effect_info effect_info[0x81]; - static u32 getHeapSize(u8 itemNo) { return item_resource[itemNo].mMaxHeapSize; } - static u32 getFieldHeapSize(u8 itemNo) { return field_item_res[itemNo].mHeapSize; } + static char* getArcname(u8 no) { return item_resource[no].mArcname; } + static char* getTexture(u8 no) { return item_resource[no].mTexture; } + static s16 getBmdIdx(u8 no) { return item_resource[no].mBmdIdx; } + static s16 getSrtIdx(u8 no) { return item_resource[no].mSrtIdx; } + static s16 getSrtIdx2(u8 no) { return item_resource[no].mSrtIdx2; } + static s16 getTevIdx(u8 no) { return item_resource[no].mTevIdx; } + static s16 getTevIdx2(u8 no) { return item_resource[no].mTevIdx2; } + static s16 getBckIdx(u8 no) { return item_resource[no].mBckIdx; } + // static s16 getBmtIdx(u8 no) { return item_resource[no].mBmtIdx; } + static s8 getTevFrm(u8 no) { return item_resource[no].mTevFrm; } + static s16 getItemMesgNum(u8 no) { return item_resource[no].mItemMesgNum; } + static u32 getHeapSize(u8 no) { return item_resource[no].mHeapSize; } - static bool checkAppearEffect(u8 itemNo); - static s16 getAppearEffect(u8 itemNo); - static bool checkSpecialEffect(u8 itemNo); - static u16 getSpecialEffect(u8 itemNo); + static char* getFieldArc(u8 no) { return field_item_res[no].mArc; } + static s16 getFieldBmdIdx(u8 no) { return field_item_res[no].mBmdIdx; } + static s16 getFieldSrtIdx(u8 no) { return field_item_res[no].mSrtIdx; } + static s16 getFieldSrtIdx2(u8 no) { return field_item_res[no].mSrtIdx2; } + static s16 getFieldTevIdx(u8 no) { return field_item_res[no].mTevIdx; } + static s16 getFieldTevIdx2(u8 no) { return field_item_res[no].mTevIdx2; } + static s16 getFieldBckIdx(u8 no) { return field_item_res[no].mBckIdx; } + // static s16 getFieldBmtIdx(u8 no) { return field_item_res[no].mBmtIdx; } + static u32 getFieldHeapSize(u8 no) { return field_item_res[no].mHeapSize; } + + static u8 getShadowSize(u8 no) { return item_info[no].mShadowSize; } + static u8 getH(u8 no) { return item_info[no].mCollisionH; } + static u8 getR(u8 no) { return item_info[no].mCollisionR; } + static bool chkFlag(u8 no, u32 mask) { return item_info[no].mFlag & mask; } + + static bool checkAppearEffect(u8 no); + static u16 getAppearEffect(u8 no); + static bool checkSpecialEffect(u8 no); + static u16 getSpecialEffect(u8 no); }; #endif /* D_ITEM_DATA_H */ \ No newline at end of file diff --git a/include/d/d_kankyo.h b/include/d/d_kankyo.h index c97a8b4c2..575c20ece 100644 --- a/include/d/d_kankyo.h +++ b/include/d/d_kankyo.h @@ -35,7 +35,7 @@ struct WIND_INFLUENCE { /* 0x18 */ f32 mRadius; /* 0x1C */ f32 mStrength; /* 0x20 */ f32 field_0x20; - /* 0x24 */ int field_0x24; + /* 0x24 */ f32 field_0x24; /* 0x28 */ u8 mbConstant; }; diff --git a/include/d/d_kankyo_wether.h b/include/d/d_kankyo_wether.h index e4041dbeb..1f6e12da0 100644 --- a/include/d/d_kankyo_wether.h +++ b/include/d/d_kankyo_wether.h @@ -338,5 +338,6 @@ f32* dKyw_get_wind_power(); void squal_proc(); void dKyw_pntwind_set(WIND_INFLUENCE*); void dKyw_pntwind_cut(WIND_INFLUENCE*); +void dKyw_pwind_cylinder_set(WIND_INFLUENCE*); #endif /* D_KANKYO_WETHER_H */ \ No newline at end of file diff --git a/include/d/d_map.h b/include/d/d_map.h index d66d314e9..7132c0ab2 100644 --- a/include/d/d_map.h +++ b/include/d/d_map.h @@ -63,7 +63,7 @@ public: void drawPointAgb(u8, f32, f32, f32, s8, s16, u8, u8, u8, u8); void getTypeAgbGcFromTypeAcs(u8, u8*, u8*); static void drawPointSingle(u8, f32, f32, f32, s8, s16, u8, u8, u8); - void drawActorPointMiniMap(fopAc_ac_c*); + static void drawActorPointMiniMap(fopAc_ac_c*); void mapBufferSendAGB_commonCursor(); void mapBufferSendAGB_ocean(); void mapBufferSendAGB_dungeon(); diff --git a/include/d/d_npc.h b/include/d/d_npc.h index 6081215e7..4e0de30be 100644 --- a/include/d/d_npc.h +++ b/include/d/d_npc.h @@ -66,7 +66,7 @@ class dNpc_EventCut_c { /* 0x18 */ int mTimer; /* 0x1C */ char* mpActorName; /* 0x20 */ u32 field_0x20; - /* 0x24 */ s32 mSetID; + /* 0x24 */ s32 mSetId; /* 0x28 */ cXyz mOffsetPos; /* 0x34 */ cXyz mTargetActorPos; /* 0x40 */ fopAc_ac_c* mpTargetActor; diff --git a/include/d/d_particle.h b/include/d/d_particle.h index e3ba9c64c..4cc081445 100644 --- a/include/d/d_particle.h +++ b/include/d/d_particle.h @@ -29,18 +29,7 @@ public: /* 0x13 */ u8 mbAffectedByWind; }; -class JPACallBackBase { -public: - JPACallBackBase(); - virtual ~JPACallBackBase(); - - virtual void init(JPABaseEmitter*); - virtual void execute(JPABaseEmitter*); - virtual void executeAfter(JPABaseEmitter*); - virtual void draw(JPABaseEmitter*); -}; - -class dPa_levelEcallBack : public JPACallBackBase { +class dPa_levelEcallBack : public JPACallBackBase { public: virtual ~dPa_levelEcallBack() {} }; @@ -69,6 +58,9 @@ STATIC_ASSERT(sizeof(dPa_followEcallBack) == 0x14); class dPa_smokeEcallBack : dPa_followEcallBack { public: + dPa_smokeEcallBack(u8); + virtual ~dPa_smokeEcallBack(); + /* 0x14 */ s8 field_0x14; /* 0x15 */ u8 field_0x15; /* 0x16 */ _GXColor field_0x16; @@ -163,13 +155,14 @@ public: class dPa_rippleEcallBack : public dPa_levelEcallBack { public: + dPa_rippleEcallBack() { mpBaseEmitter = NULL; } + ~dPa_rippleEcallBack(); + void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8); void end(); void execute(JPABaseEmitter*); void draw(JPABaseEmitter*); - ~dPa_rippleEcallBack(); - /* 0x04 */ JPABaseEmitter* mpBaseEmitter; /* 0x08 */ cXyz* mPos; /* 0x0C */ u32 mFlags; diff --git a/include/d/d_particle_name.h b/include/d/d_particle_name.h index 36d0e61de..0f55e5964 100644 --- a/include/d/d_particle_name.h +++ b/include/d/d_particle_name.h @@ -4,6 +4,10 @@ #include "dolphin/types.h" namespace dPa_name { + enum { + ID_SCENE_END = 0x8466, + }; + u16 j_o_id[]; u16 s_o_id[]; } diff --git a/include/d/d_path.h b/include/d/d_path.h index 459609fd6..3902fea8b 100644 --- a/include/d/d_path.h +++ b/include/d/d_path.h @@ -13,7 +13,7 @@ struct dPath__Point { }; struct dPath { - /* 0x00 */ u16 mNum; + /* 0x00 */ u16 m_num; /* 0x02 */ u16 mNextPathId; /* 0x04 */ u8 mArg0; /* 0x05 */ u8 mLoops; diff --git a/include/d/d_point_wind.h b/include/d/d_point_wind.h new file mode 100644 index 000000000..310887cbe --- /dev/null +++ b/include/d/d_point_wind.h @@ -0,0 +1,17 @@ +#ifndef D_POINT_WIND_H +#define D_POINT_WIND_H + +#include "SSystem/SComponent/c_m3d_g_cps.h" +#include "d/d_kankyo.h" + +class dPointWind_c { +public: + cM3dGCpsS * mpCps; + WIND_INFLUENCE mWind; + + void set_pwind_init(cM3dGCpsS * pCps); + void set_pwind_move(); + void set_pwind_delete(); +}; + +#endif /* D_POINT_WIND_H */ \ No newline at end of file diff --git a/include/d/d_s_play.h b/include/d/d_s_play.h index 463d66306..8a5479c96 100644 --- a/include/d/d_s_play.h +++ b/include/d/d_s_play.h @@ -12,7 +12,7 @@ public: bool resetGame(); void offReset(); - static bool isPause() { return pauseTimer == 0; } + static bool isPause() { return pauseTimer != 0; } static void setPauseTimer(s8 time) { pauseTimer = time; } static s8 pauseTimer; diff --git a/include/d/d_stage.h b/include/d/d_stage.h index 341661a52..2e0fb21db 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -162,7 +162,7 @@ public: /* 0x08 */ u32 mParameter; /* 0x0C */ cXyz mSpawnPos; /* 0x18 */ csXyz mAngle; - /* 0x1E */ u16 mEnemyNo; + /* 0x1E */ u16 mSetId; }; // Size: 0x20 class stage_actor_class { @@ -770,9 +770,8 @@ public: }; class dBgW_base; -class dStage_roomStatus_c { +class dStage_roomStatus_c : public dStage_roomDt_c { public: - /* 0x000 */ dStage_roomDt_c mRoomDt; /* 0x054 */ dKy_tevstr_c mTevStr; /* 0x104 */ u8 mFlags; /* 0x105 */ bool mDraw; @@ -800,7 +799,7 @@ public: void zoneCountCheck(int) const; void checkDrawArea() const; dStage_darkStatus_c* getDarkStatus(); - void getDarkMode(); + u32 getDarkMode(); void getBgW(int); static JKRExpHeap* createMemoryBlock(int, u32); @@ -919,6 +918,7 @@ int dStage_mapInfo_GetOceanX(stage_map_info_class*); void dStage_infoCreate(); dStage_objectNameInf* dStage_searchName(const char*); +const char* dStage_getName2(s16 i_procName, s8 i_subtype); inline s32 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* i_stagInfo) { return (i_stagInfo->field_0x09 >> 1) & 0x7F; diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index 05a0bfca8..ef0c908c3 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -17,7 +17,7 @@ struct actor_method_class { enum fopAc_Status_e { fopAcStts_SHOWMAP_e = 0x00000020, fopAcStts_NOEXEC_e = 0x00000080, - fopAcStts_CULLSTOP_e = 0x00000100, + fopAcStts_CULL_e = 0x00000100, fopAcStts_FREEZE_e = 0x00000400, fopAcStts_CARRY_e = 0x00002000, fopAcStts_NOPAUSE_e = 0x00020000, @@ -170,12 +170,19 @@ struct actor_attention_types { class JntHit_c; -struct cull_sphere { +struct fopAc_cullSizeSphere { +public: + fopAc_cullSizeSphere(cXyz, float); + /* 0x0 */ Vec mCenter; /* 0xC */ f32 mRadius; }; -struct cull_box { +struct fopAc_cullSizeBox { +public: + fopAc_cullSizeBox(const fopAc_cullSizeBox&); + fopAc_cullSizeBox(cXyz, cXyz); + /* 0x0 */ Vec mMin; /* 0xC */ Vec mMax; }; @@ -185,16 +192,16 @@ public: /* 0x0C0 */ int mAcType; /* 0x0C4 */ create_tag_class mAcTg; /* 0x0D8 */ create_tag_class mDwTg; - /* 0x0EC */ profile_method_class* mSubMtd; - /* 0x0F0 */ JKRSolidHeap* mHeap; + /* 0x0EC */ actor_method_class* mSubMtd; + /* 0x0F0 */ JKRSolidHeap* heap; /* 0x0F4 */ dEvt_info_c mEvtInfo; /* 0x10C */ dKy_tevstr_c mTevStr; - /* 0x1BC */ u16 mSetID; + /* 0x1BC */ u16 mSetId; /* 0x1BE */ u8 mGroup; /* 0x1BF */ s8 mCullType; /* 0x1C0 */ u8 mDemoActorId; /* 0x1C1 */ s8 mSubtype; - /* 0x1C2 */ u8 mCarryType; + /* 0x1C2 */ u8 mGbaName; /* 0x1C4 */ u32 mStatus; /* 0x1C8 */ u32 mCondition; /* 0x1CC */ u32 mParentPcId; @@ -206,8 +213,8 @@ public: /* 0x220 */ cXyz speed; /* 0x22C */ MtxP mCullMtx; union { - /* 0x230 */ cull_box mBox; - /* 0x230 */ cull_sphere mSphere; + /* 0x230 */ fopAc_cullSizeBox mBox; + /* 0x230 */ fopAc_cullSizeSphere mSphere; } mCull; /* 0x248 */ f32 mCullSizeFar; /* 0x24C */ J3DModel* model; diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 6e944808b..c315656d3 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -28,10 +28,10 @@ struct fopAcM_prm_class { /* 0x00 */ u32 mParameter; // single U32 Parameter /* 0x04 */ cXyz mPos; /* 0x10 */ csXyz mAngle; // rotation - /* 0x16 */ u16 mEnemyNo; + /* 0x16 */ u16 mSetId; /* 0x18 */ u8 mScale[3]; - /* 0x1B */ u8 mGbaName; // from WW, maybe a different parameter here - /* 0x1C */ s32 mParentPId; // parent process ID + /* 0x1B */ u8 mGbaName; + /* 0x1C */ s32 mParentPcId; // parent process ID /* 0x20 */ s8 mSubtype; /* 0x21 */ s8 mRoomNo; }; @@ -99,10 +99,6 @@ enum fopAcM_CARRY { /* 0x30 */ fopAcM_CARRY_UNK_30 = 0x30, }; -inline u32 fopAcM_CheckCarryType(fopAc_ac_c* actor, fopAcM_CARRY type) { - return actor->mCarryType & type; -} - inline u32 fopAcM_checkHookCarryNow(fopAc_ac_c* pActor) { return fopAcM_checkStatus(pActor, 0x100000); } @@ -143,10 +139,6 @@ inline fopAc_ac_c* fopAcM_Search(fopAcIt_JudgeFunc func, void* param) { return (fopAc_ac_c*)fopAcIt_Judge(func, param); } -inline fopAc_ac_c* fopAcM_SearchByID(unsigned int id) { - return (fopAc_ac_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeByID, &id); -} - inline cXyz& fopAcM_GetPosition_p(fopAc_ac_c* pActor) { return pActor->current.pos; } @@ -296,6 +288,10 @@ inline BOOL fopAcM_isSwitch(fopAc_ac_c* pActor, int sw) { return dComIfGs_isSwitch(sw, fopAcM_GetHomeRoomNo(pActor)); } +inline fopAc_ac_c* fopAcM_SearchByID(unsigned int id) { + return (fopAc_ac_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeByID, &id); +} + inline fopAc_ac_c* fopAcM_SearchByName(s16 proc_id) { return (fopAc_ac_c*)fopAcIt_Judge(fpcSch_JudgeForPName, &proc_id); } @@ -315,7 +311,7 @@ inline f32 fopAcM_searchActorDistanceY(fopAc_ac_c* actorA, fopAc_ac_c* actorB) { } inline u16 fopAcM_GetSetId(fopAc_ac_c* p_actor) { - return p_actor->mSetID; + return p_actor->mSetId; } inline void dComIfGs_onActor(int bitNo, int roomNo); @@ -345,14 +341,11 @@ fopAcM_prm_class* createAppend(u16 enemyNo, u32 parameters, cXyz* p_pos, int roo void fopAcM_Log(fopAc_ac_c* p_actor, char* str); -void fopAcM_delete(fopAc_ac_c* p_actor); - +s32 fopAcM_delete(fopAc_ac_c* p_actor); s32 fopAcM_delete(unsigned int actorID); s32 fopAcM_create(char*, u32 i_parameter, cXyz* i_pos, int i_roomNo, csXyz* i_angle, cXyz* i_scale, createFunc i_createFunc); - -s32 fopAcM_create(s16 i_procName, u32 i_parameter, cXyz* i_pos, int i_roomNo, csXyz* i_angle, - cXyz* i_scale, s8 i_subType, createFunc i_createFunc); +s32 fopAcM_create(s16 i_procName, u32 i_parameter, cXyz* i_pos, int i_roomNo, csXyz* i_angle, cXyz* i_scale, s8 i_subType, createFunc i_createFunc); inline s32 fopAcM_create(s16 i_procName, createFunc i_createFunc, void*); diff --git a/include/f_op/f_op_camera.h b/include/f_op/f_op_camera.h index 9ae93e4b5..c9504450f 100644 --- a/include/f_op/f_op_camera.h +++ b/include/f_op/f_op_camera.h @@ -2,16 +2,32 @@ #define F_F_OP_CAMERA_H_ #include "f_op/f_op_view.h" +#include "SSystem/SComponent/c_sxyz.h" +#include "SSystem/SComponent/c_phase.h" -class camera_class; +class camera_process_class : public view_class { +public: + /* 0x210 */ create_tag_class mDwTg; + /* 0x224 */ leafdraw_method_class* mpMtd; + /* 0x228 */ u8 field_0x228[4]; + /* 0x22C */ s8 mPrm1; + /* 0x22D */ s8 mPrm2; + /* 0x22E */ s8 mPrm3; + /* 0x22F */ s8 field_0x22f; + /* 0x230 */ csXyz mAngle; + /* 0x238 */ int field_0x238; +}; + +class camera_class : public camera_process_class { +public: + /* 0x23C */ int field_0x23c; + /* 0x240 */ request_of_phase_process_class mPhaseReq; + // /* 0x248 */ dCamera_c mCamera; +}; struct camera_process_profile_definition { /* 0x00 */ view_process_profile_definition mBase; /* 0x3C */ leafdraw_method_class* mSubMtd; // Subclass methods }; -static s32 fopCam_Draw(camera_class* param_1); -static int fopCam_Execute(camera_class* pCamera); -int fopCam_IsDelete(camera_class* pCamera); - #endif diff --git a/include/f_pc/f_pc_base.h b/include/f_pc/f_pc_base.h index 856c99a54..935a6cf31 100644 --- a/include/f_pc/f_pc_base.h +++ b/include/f_pc/f_pc_base.h @@ -20,7 +20,7 @@ typedef struct base_process_class { /* 0x0B */ u8 mPauseFlag; /* 0x0C */ s8 mInitState; /* 0x0D */ u8 mUnk2; - /* 0x0E */ s16 mBsTypeId; + /* 0x0E */ s16 mProfName; /* 0x10 */ process_profile_definition* mpProf; /* 0x14 */ struct create_request* mpCtRq; /* 0x18 */ layer_management_tag_class mLyTg; diff --git a/include/f_pc/f_pc_manager.h b/include/f_pc/f_pc_manager.h index 5b16ccd0a..602c62b57 100644 --- a/include/f_pc/f_pc_manager.h +++ b/include/f_pc/f_pc_manager.h @@ -30,7 +30,7 @@ inline void fpcM_SetParam(void* p_actor, u32 param) { } inline s16 fpcM_GetProfName(const void* pActor) { - return ((base_process_class*)pActor)->mBsTypeId; + return ((base_process_class*)pActor)->mProfName; } inline int fpcM_Create(s16 procName, FastCreateReqFunc createFunc, void* process) { diff --git a/include/m_Do/m_Do_audio.h b/include/m_Do/m_Do_audio.h index b76f75646..f53339662 100644 --- a/include/m_Do/m_Do_audio.h +++ b/include/m_Do/m_Do_audio.h @@ -62,6 +62,10 @@ inline void mDoAud_seStart(u32 i_sfxID, Vec* i_sePos, u32 param_2, s8 i_reverb) mDoAud_zelAudio_c::getInterface()->seStart(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f, -1.0f, -1.0f, 0); } +inline void mDoAud_seDeleteObject(Vec* i_sePos) { + mDoAud_zelAudio_c::getInterface()->seDeleteObject(i_sePos); +} + inline void mDoAud_bgmMuteMtDragon() { mDoAud_zelAudio_c::getInterface()->bgmMuteMtDragon(); } diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 089c1128a..1134616e4 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -45,13 +45,13 @@ class mDoExt_btkAnm : public mDoExt_baseAnm { public: mDoExt_btkAnm() { mpTexMtxAnm = NULL; } int init(J3DMaterialTable* i_matTable, J3DAnmTextureSRTKey* i_btk, int i_anmPlay, - int i_attribute, f32 i_rate, s16 i_start, s16 i_end, bool i_modify, bool i_entry); + int i_attribute, f32 i_rate, s16 i_start, s16 i_end, bool i_modify, int i_entry); void entry(J3DMaterialTable* i_matTable, f32 i_frame); void entry(J3DModelData *i_modelData, f32 i_frame); void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } int init(J3DModelData* i_modelData, J3DAnmTextureSRTKey* i_btk, int i_anmPlay, int i_attribute, - f32 i_rate, s16 i_start, s16 i_end, bool i_modify, bool i_entry); + f32 i_rate, s16 i_start, s16 i_end, bool i_modify, int i_entry); int remove(J3DModelData* i_modelData) { return i_modelData->removeTexMtxAnimator(mpAnm); } void entryFrame() { entryFrame(getFrame()); } @@ -327,6 +327,11 @@ int mDoExt_getSafeGameHeapSize(); int mDoExt_getSafeZeldaHeapSize(); int mDoExt_getSafeCommandHeapSize(); +JKRSolidHeap * mDoExt_createSolidHeapFromGameToCurrent(u32 size, u32 align); +void mDoExt_restoreCurrentHeap(); +void mDoExt_adjustSolidHeap(JKRSolidHeap * pHeap); +void mDoExt_destroySolidHeap(JKRSolidHeap * pHeap); + extern JKRExpHeap* zeldaHeap; extern JKRExpHeap* gameHeap; extern JKRExpHeap* commandHeap; diff --git a/include/m_Do/m_Do_graphic.h b/include/m_Do/m_Do_graphic.h index 3d3ca202b..024800f41 100644 --- a/include/m_Do/m_Do_graphic.h +++ b/include/m_Do/m_Do_graphic.h @@ -47,6 +47,7 @@ public: static bool isAutoForcus() { return data_80450BE7; } */ static void setTickRate(u32 rate) { JFWDisplay::getManager()->setTickRate(rate); } static void waitBlanking(int wait) { JFWDisplay::getManager()->waitBlanking(wait); } + static BOOL isMonotone() { return mMonotone; } static ResTIMG* getFrameBufferTimg() { return mFrameBufferTimg; } static void* getFrameBufferTex() { return mFrameBufferTex; } @@ -74,6 +75,9 @@ public: static bool mBlureFlag; static u8 mBlureRate; static u8 mFade; + static u8 mMonotone; + static s16 mMonotoneRate; + static s16 mMonotoneRateSpeed; }; #endif /* M_DO_M_DO_GRAPHIC_H */ \ No newline at end of file diff --git a/src/SSystem/SComponent/c_angle.cpp b/src/SSystem/SComponent/c_angle.cpp index 2bc4d48e8..c0090c713 100644 --- a/src/SSystem/SComponent/c_angle.cpp +++ b/src/SSystem/SComponent/c_angle.cpp @@ -326,7 +326,7 @@ void cSGlobe::Polar(cSPolar* csp) const { } /* 80254864-80254890 .text Invert__7cSGlobeFv */ -cXyz cSGlobe::Norm() const { - cSGlobe glob(1.0f, mAzimuth, mInclination); - return glob.Xyz(); +cSGlobe& cSGlobe::Invert() { + mRadius = -mRadius; + return Formal(); } diff --git a/src/SSystem/SComponent/c_bg_s_gnd_chk.cpp b/src/SSystem/SComponent/c_bg_s_gnd_chk.cpp index 67101fd9c..d4b2831cf 100644 --- a/src/SSystem/SComponent/c_bg_s_gnd_chk.cpp +++ b/src/SSystem/SComponent/c_bg_s_gnd_chk.cpp @@ -10,5 +10,5 @@ cBgS_GndChk::cBgS_GndChk() { m_pos = cXyz::Zero; SetActorPid(0xFFFFFFFF); - mFlags = 2; + mFlags = 3; } diff --git a/src/SSystem/SComponent/c_lib.cpp b/src/SSystem/SComponent/c_lib.cpp index 3678ef251..280a2e52c 100644 --- a/src/SSystem/SComponent/c_lib.cpp +++ b/src/SSystem/SComponent/c_lib.cpp @@ -366,7 +366,7 @@ s32 cLib_distanceAngleS(s16 x, s16 y) { return abs(static_cast(x - y)); } -static Mtx mtx[10]; +Mtx mtx[10]; Mtx* calc_mtx = mtx; diff --git a/src/SSystem/SComponent/c_m3d_g_sph.cpp b/src/SSystem/SComponent/c_m3d_g_sph.cpp index cd3bd4ae0..d6845ba71 100644 --- a/src/SSystem/SComponent/c_m3d_g_sph.cpp +++ b/src/SSystem/SComponent/c_m3d_g_sph.cpp @@ -13,18 +13,19 @@ #define CHECK_VEC3_RANGE(line, v) JUT_ASSERT(line, -1.0e32f < v.x && v.x < 1.0e32f && -1.0e32f < v.y && v.y < 1.0e32f && -1.0e32f < v.z && v.z < 1.0e32f) /* 8025238C-80252624 .text SetC__8cM3dGSphFRC4cXyz */ -void cM3dGSph::SetC(const cXyz& pos) { - CHECK_FLOAT_CLASS(21, pos.x); - CHECK_FLOAT_CLASS(22, pos.y); - CHECK_FLOAT_CLASS(23, pos.z); - CHECK_VEC3_RANGE(26, pos); - mCenter = pos; +void cM3dGSph::SetC(const cXyz& p) { + CHECK_FLOAT_CLASS(18, p.x); + CHECK_FLOAT_CLASS(19, p.y); + CHECK_FLOAT_CLASS(20, p.z); + CHECK_VEC3_RANGE(23, p); + mCenter = p; } /* 80252624-80252750 .text SetR__8cM3dGSphFf */ void cM3dGSph::SetR(float r) { CHECK_FLOAT_CLASS(32, r); CHECK_FLOAT_RANGE(33, r); + mRadius = r; } /* 80252750-8025277C .text cross__8cM3dGSphCFPC8cM3dGSphP4cXyz */ diff --git a/src/SSystem/SComponent/c_xyz.cpp b/src/SSystem/SComponent/c_xyz.cpp index 3121db388..9dfc954be 100644 --- a/src/SSystem/SComponent/c_xyz.cpp +++ b/src/SSystem/SComponent/c_xyz.cpp @@ -153,3 +153,7 @@ bool cXyz::isZero(void) const { return fabsf(this->x) < 3.8146972e-06f && fabsf(this->y) < 3.8146972e-06f && fabsf(this->z) < 3.8146972e-06f; } + +// Unused, but must be in .rodata to match +static const char * fmt0 = "[%f %f %f]\n"; +static const char * fmt1 = "%s=[%f %f %f]\n"; diff --git a/src/d/actor/d_a_arrow.cpp b/src/d/actor/d_a_arrow.cpp index a0c831c18..1e3061296 100644 --- a/src/d/actor/d_a_arrow.cpp +++ b/src/d/actor/d_a_arrow.cpp @@ -226,8 +226,10 @@ void daArrow_c::setKeepMatrix() { daPy_py_c* player = daPy_getPlayerActorClass(); mDoMtx_stack_c::transS(0.7f, -0.07f, -0.2f); - // TODO: How did they pass an unsigned short (0xB0B6) to a function that takes a signed short? - mDoMtx_stack_c::XYZrotM(0xB0B6, 0x238E, -0x6333); + // This function takes three signed shorts, but one of the literals passed here is unsigned. + // X rotation must be a float literal to force the compiler to pass an unsigned short. + // Z rotation must be an int literal to pass a signed short as normal. + mDoMtx_stack_c::XYZrotM((248.5f*65536)/360, 0x238E, -0x6333); MtxP handMtx = player->getLeftHandMatrix(); cMtx_concat(handMtx, mDoMtx_stack_c::get(), mDoMtx_stack_c::get()); diff --git a/src/d/actor/d_a_item.cpp b/src/d/actor/d_a_item.cpp index e22dc4409..1f5a2e500 100644 --- a/src/d/actor/d_a_item.cpp +++ b/src/d/actor/d_a_item.cpp @@ -15,32 +15,34 @@ class dCcD_GObjInf; -static dCcD_SrcCyl m_cyl_src = { - 0, - 0, - 0, - 0, - 0xFFFFFFFF, // Tg damage types - 9, - 0x59, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - - // Cylinder - 0.0, // X - 0.0, // Y - 0.0, // Z - 10.0, // Radius - 50.0, // Height +dCcD_SrcCyl daItem_c::m_cyl_src = { + // dCcD_SrcGObjInf + { + /* Flags */ 0, + /* SrcObjAt Type */ 0, + /* SrcObjAt Atp */ 0, + /* SrcObjAt SPrm */ 0, + /* SrcObjTg Type */ 0xFFFFFFFF, + /* SrcObjTg SPrm */ 0x09, + /* SrcObjCo SPrm */ 0x59, + /* SrcGObjAt Se */ 0, + /* SrcGObjAt HitMark */ 0, + /* SrcGObjAt Spl */ 0, + /* SrcGObjAt Mtrl */ 0, + /* SrcGObjAt GFlag */ 0, + /* SrcGObjTg Se */ 0, + /* SrcGObjTg HitMark */ 0, + /* SrcGObjTg Spl */ 0, + /* SrcGObjTg Mtrl */ 0, + /* SrcGObjTg GFlag */ 0x04, + /* SrcGObjCo GFlag */ 0, + }, + // cM3dGCylS + { + /* Center */ 0.0f, 0.0f, 0.0f, + /* Radius */ 10.0f, + /* Height */ 50.0f, + }, }; /* 800F4BC8-800F4BD4 .text getData__12daItemBase_cFv */ @@ -113,20 +115,23 @@ void itemGetCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*) { /* 800F5044-800F53EC .text CreateInit__8daItem_cFv */ void daItem_c::CreateInit() { /* Nonmatching */ - mAcchCir.SetWall(30.0, 30.0); - cXyz* speedPtr = &speed; - mAcch.Set(¤t.pos, &next.pos, this, 1, &mAcchCir, speedPtr, NULL, NULL); + mAcchCir.SetWall(30.0f, 30.0f); + cXyz* speedPtr; + mAcch.Set(¤t.pos, &next.pos, this, 1, &mAcchCir, speedPtr = &speed, NULL, NULL); mAcch.m_flags &= ~0x400; mAcch.m_flags &= ~0x8; - mCullMtx = mModel->mBaseTransformMtx; + mCullMtx = mpModel->mBaseTransformMtx; mStts.Init(0, 0xFF, this); mCyl.Set(m_cyl_src); + mCyl.SetStts(&mStts); mCyl.SetCoHitCallback(&itemGetCallBack); - dItem_data_item_info* item_info = &dItem_data::item_info[m_itemNo]; - f32 height = item_info->mCollisionH; - f32 radius = item_info->mCollisionR; - if (mScale.x > 1.0) { + // Regswaps if the inlines are used. + // f32 height = dItem_data::getH(m_itemNo); + // f32 radius = dItem_data::getR(m_itemNo); + f32 height = dItem_data::item_info[m_itemNo].mCollisionH; + f32 radius = dItem_data::item_info[m_itemNo].mCollisionR; + if (mScale.x > 1.0f) { height *= mScale.x; radius *= mScale.x; } @@ -135,18 +140,22 @@ void daItem_c::CreateInit() { mItemTimer = getData()->mDuration; field7_0x65a = getData()->field7_0x18; - mCurState = 0; field3_0x650 = speedPtr->y; - mStatusFlags |= 2; + mCurState = 0; mUnknownParam = (fpcM_GetParam(this) & 0x03000000) >> 0x18; + // TODO: should probably add inlines here + // e.g. getType__10daItem_prmFP8daItem_c etc + if ((fpcM_GetParam(this) & 0x03000000) >> 0x18 == 3 || (fpcM_GetParam(this) & 0x03000000) >> 0x18 == 1) { + mStatusFlags |= 2; + } mItemAction = (fpcM_GetParam(this) & 0xFC000000) >> 0x1A; show(); - if (dItem_data::checkSpecialEffect(m_itemNo) && (m_itemNo != SMALL_KEY || (mStatusFlags & 2))) { - dItem_data::getSpecialEffect(m_itemNo); - // TODO: dPa_control_c::set + if (dItem_data::checkSpecialEffect(m_itemNo) && (m_itemNo != SMALL_KEY || (m_itemNo == SMALL_KEY && (mStatusFlags & 2)))) { + u16 particleID = dItem_data::getSpecialEffect(m_itemNo); + dComIfGp_particle_set(particleID, ¤t.pos, NULL, NULL, 0xFF, &mPtclFollowCb, -1, NULL, NULL, NULL); } switch (m_itemNo) { @@ -154,27 +163,30 @@ void daItem_c::CreateInit() { case BOMB_10: case BOMB_20: case BOMB_30: - mScaleTarget.x = 0.6; - mScaleTarget.y = 0.6; - mScaleTarget.z = 0.6; + mScaleTarget.x = 0.6f; + mScaleTarget.y = 0.6f; + mScaleTarget.z = 0.6f; break; default: - mScaleTarget.x = 1.0; - mScaleTarget.y = 1.0; - mScaleTarget.z = 1.0; + mScaleTarget.x = 1.0f; + mScaleTarget.y = 1.0f; + mScaleTarget.z = 1.0f; break; } mSwitchId = (fpcM_GetParam(this) & 0x00FF0000) >> 0x10; - if (mSwitchId != 0xFF && fopAcM_isSwitch(this, mSwitchId)) { + if (mSwitchId != 0xFF && !fopAcM_isSwitch(this, mSwitchId)) { hide(); mStatusFlags |= 2; } mActivationSwitch = (orig.angle.z & 0x00FF) >> 0; + current.angle.z = 0; + orig.angle.z = 0; initAction(); switch (m_itemNo) { + case SWORD: case SHIELD: mStatus |= 0x4000; break; @@ -184,12 +196,11 @@ void daItem_c::CreateInit() { } set_mtx(); - animPlay(1.0, 1.0, 1.0, 1.0, 1.0); + animPlay(1.0f, 1.0f, 1.0f, 1.0f, 1.0f); s16 procname = PROC_BST; // Gohdan if (fopAcIt_Judge(&fpcSch_JudgeForPName, &procname)) { - // TODO: dPa_control_c::set - mpParticleEmitter = 0; + mpParticleEmitter = dComIfGp_particle_set(0x81E1, ¤t.pos, NULL, NULL, 0xFF, NULL, -1, NULL, NULL, NULL); } } @@ -200,7 +211,7 @@ s32 daItem_c::_daItem_create() { m_itemNo = (fpcM_GetParam(this) & 0x000000FF) >> 0x00; - if (!dItem_data::field_item_res[m_itemNo].mModelArcName) { + if (!dItem_data::getFieldArc(m_itemNo)) { setLoadError(); return cPhs_ERROR_e; } @@ -215,10 +226,9 @@ s32 daItem_c::_daItem_create() { } } - s32 phase_state = dComIfG_resLoad(&mPhs, dItem_data::field_item_res[m_itemNo].mModelArcName); + s32 phase_state = dComIfG_resLoad(&mPhs, dItem_data::getFieldArc(m_itemNo)); if (phase_state == cPhs_COMPLEATE_e) { - u16 heapSize = dItem_data::field_item_res[m_itemNo].mHeapSize; - s32 result = fopAcM_entrySolidHeap(this, (heapCallbackFunc)&CheckFieldItemCreateHeap, heapSize); + s32 result = fopAcM_entrySolidHeap(this, &CheckFieldItemCreateHeap, dItem_data::getFieldHeapSize(m_itemNo)); if (!result) { return cPhs_ERROR_e; } @@ -319,21 +329,22 @@ void daItem_c::setTevStr() { mTevStr.mColorK0.r = 0xFF; mTevStr.mColorK0.g = 0xFF; mTevStr.mColorK0.b = 0xFF; - g_env_light.setLightTevColorType(mModel, &mTevStr); + g_env_light.setLightTevColorType(mpModel, &mTevStr); for (int i = 0; i < 2; i++) { - if (!mModelArrow[i]) { + if (!mpModelArrow[i]) { continue; } - g_env_light.setLightTevColorType(mModelArrow[i], &mTevStr); + g_env_light.setLightTevColorType(mpModelArrow[i], &mTevStr); } } /* 800F61C8-800F6268 .text _daItem_delete__8daItem_cFv */ s32 daItem_c::_daItem_delete() { /* Nonmatching */ - // TODO: dPa_rippleEcallBack::end() - DeleteBase(dItem_data::field_item_res[m_itemNo].mModelArcName); + mPtclRippleCb.end(); + // TODO + DeleteBase(dItem_data::getFieldArc(m_itemNo)); } /* 800F6268-800F6434 .text Reflect__FR4cXyzP4cXyzff */ @@ -367,7 +378,7 @@ bool daItem_c::checkItemDisappear() { if (mStatusFlags & 0x10) { disappearing = false; } - if (dItem_data::item_info[m_itemNo].mSpecialBehaviors & 0x01) { + if (dItem_data::chkFlag(m_itemNo, 0x01)) { disappearing = false; } if (g_dComIfG_gameInfo.play.mEvtCtrl.mMode != 0) { @@ -394,7 +405,7 @@ void daItem_c::setItemTimer(int timer) { /* 800F6E74-800F6EC8 .text checkPlayerGet__8daItem_cFv */ BOOL daItem_c::checkPlayerGet() { - if (field20_0x638 < getData()->field47_0x42) { + if (field_0x638 < getData()->field47_0x42) { return FALSE; } if (mCurState == 3) { @@ -525,11 +536,6 @@ s32 daItem_c::_daItem_isdelete() { return 1; } -/* 800F89F8-800F8A14 .text getHeadTopPos__9daPy_py_cCFv */ -void daPy_py_c::getHeadTopPos() const { - /* Nonmatching */ -} - static actor_method_class l_daItem_Method = { (process_method_func)daItem_Create, (process_method_func)daItem_Delete, @@ -539,18 +545,18 @@ static actor_method_class l_daItem_Method = { }; extern actor_process_profile_definition g_profile_ITEM = { - fpcLy_CURRENT_e, - 7, - fpcPi_CURRENT_e, - PROC_ITEM, - &g_fpcLf_Method.mBase, - sizeof(daItem_c), - 0, - 0, - &g_fopAc_Method.base, - 0x00F5, - &l_daItem_Method, - 0x000C0100, - fopAc_ACTOR_e, - fopAc_CULLBOX_0_e, + /* LayerID */ fpcLy_CURRENT_e, + /* ListID */ 7, + /* ListPrio */ fpcPi_CURRENT_e, + /* ProcName */ PROC_ITEM, + /* Proc SubMtd */ &g_fpcLf_Method.mBase, + /* Size */ sizeof(daItem_c), + /* SizeOther */ 0, + /* Parameters */ 0, + /* Leaf SubMtd */ &g_fopAc_Method.base, + /* Priority */ 0x00F5, + /* Actor SubMtd */ &l_daItem_Method, + /* Status */ 0x000C0100, + /* Group */ fopAc_ACTOR_e, + /* CullType */ fopAc_CULLBOX_0_e, }; diff --git a/src/d/actor/d_a_itembase.cpp b/src/d/actor/d_a_itembase.cpp index 8641fa5df..2e50af0eb 100644 --- a/src/d/actor/d_a_itembase.cpp +++ b/src/d/actor/d_a_itembase.cpp @@ -4,188 +4,250 @@ // #include "d/actor/d_a_itembase.h" +#include "d/d_item.h" #include "d/d_item_data.h" #include "d/d_resorce.h" #include "d/d_drawlist.h" #include "m_Do/m_Do_ext.h" +#include "m_Do/m_Do_graphic.h" #include "JSystem/JUtility/JUTAssert.h" #include "d/d_item_data.h" #include "d/d_com_inf_game.h" +#include "d/actor/d_a_player_link.h" #include "dolphin/types.h" /* 800F8A14-800F8A3C .text DeleteBase__12daItemBase_cFPCc */ -s32 daItemBase_c::DeleteBase(const char* resName) { +BOOL daItemBase_c::DeleteBase(const char* resName) { dComIfG_resDelete(&mPhs, resName); - return 1; + return TRUE; } /* 800F8A3C-800F8A44 .text clothCreate__12daItemBase_cFv */ -s32 daItemBase_c::clothCreate() { - return 1; +BOOL daItemBase_c::clothCreate() { + return TRUE; } /* 800F8A44-800F9074 .text CreateItemHeap__12daItemBase_cFPCcsssssss */ -s32 daItemBase_c::CreateItemHeap(const char* resName, short resIdx, short btkAnm1, short btkAnm2, short brkAnm1, short brkAnm2, short bckAnm, short) { - /* Nonmatching */ +BOOL daItemBase_c::CreateItemHeap(const char* resName, short resIdx, short btkAnm1, short btkAnm2, short brkAnm1, short brkAnm2, short bckAnm, short) { JUT_ASSERT(78, 0 <= m_itemNo && m_itemNo <= 255); J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(resName, resIdx); JUT_ASSERT(85, modelData != 0); - mModel = mDoExt_J3DModel__create(modelData, 0, 0x11020203); - if (!mModel) { - return 0; + mpModel = mDoExt_J3DModel__create(modelData, 0, 0x11020203); + if (!mpModel) { + return FALSE; } switch (m_itemNo) { case ARROW_30: - mModelArrow[0] = mDoExt_J3DModel__create(modelData, 8, 0x11000002); - if (!mModelArrow[0]) { - return 0; + mpModelArrow[0] = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000002); + if (!mpModelArrow[0]) { + return FALSE; } case ARROW_20: - mModelArrow[1] = mDoExt_J3DModel__create(modelData, 8, 0x11000002); - if (!mModelArrow[1]) { - return 0; + mpModelArrow[1] = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000002); + if (!mpModelArrow[1]) { + return FALSE; } break; default: - mModelArrow[1] = NULL; - mModelArrow[0] = NULL; + mpModelArrow[1] = NULL; + mpModelArrow[0] = NULL; } - mBtkAnm1 = NULL; + J3DAnmTextureSRTKey* pbtk; + mpBtkAnm1 = NULL; if (btkAnm1 != -1) { - J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(resName, btkAnm1); + pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(resName, btkAnm1); JUT_ASSERT(140, pbtk != 0); - mBtkAnm1 = new mDoExt_btkAnm(); - if (!mBtkAnm1 || !mBtkAnm1->init(modelData, pbtk, true, 2, 1.0, 0, -1, false, false)) { - return 0; + mpBtkAnm1 = new mDoExt_btkAnm(); + if (!mpBtkAnm1 || !mpBtkAnm1->init(modelData, pbtk, TRUE, 2, 1.0, 0, -1, false, 0)) { + return FALSE; } } - mBtkAnm2 = NULL; + mpBtkAnm2 = NULL; if (btkAnm2 != -1) { - J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(resName, btkAnm2); - JUT_ASSERT(172, pbtk != 0); - mBtkAnm2 = new mDoExt_btkAnm(); - if (!mBtkAnm2 || !mBtkAnm2->init(modelData, pbtk, true, 2, 1.0, 0, -1, false, false)) { - return 0; + pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(resName, btkAnm2); + JUT_ASSERT(156, pbtk != 0); + mpBtkAnm2 = new mDoExt_btkAnm(); + if (!mpBtkAnm2 || !mpBtkAnm2->init(modelData, pbtk, TRUE, 2, 1.0, 0, -1, false, 0)) { + return FALSE; } } - mBrkAnm1 = NULL; + J3DAnmTevRegKey* pbrk; + mpBrkAnm1 = NULL; if (brkAnm1 != -1) { - J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(resName, brkAnm1); + pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(resName, brkAnm1); JUT_ASSERT(172, pbrk != 0); - int shouldAnimate = dItem_data::item_resource[m_itemNo].mTevRegAnimFrameIndex == 0xFF; - mBrkAnm1 = new mDoExt_brkAnm(); - if (!mBrkAnm1 || !mBrkAnm1->init(modelData, pbrk, shouldAnimate, 2, 1.0, 0, -1, false, false)) { - return 0; + s8 tevFrm = dItem_data::getTevFrm(m_itemNo); + BOOL shouldAnimate = TRUE; + if (tevFrm != -1) { + shouldAnimate = FALSE; + } + mpBrkAnm1 = new mDoExt_brkAnm(); + if (!mpBrkAnm1 || !mpBrkAnm1->init(modelData, pbrk, shouldAnimate, 2, 1.0, 0, -1, false, false)) { + return FALSE; } } - mBrkAnm2 = NULL; + mpBrkAnm2 = NULL; if (brkAnm2 != -1) { - J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(resName, brkAnm2); + pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(resName, brkAnm2); JUT_ASSERT(197, pbrk != 0); - mBrkAnm2 = new mDoExt_brkAnm(); - if (!mBrkAnm2 || !mBrkAnm2->init(modelData, pbrk, true, 2, 1.0, 0, -1, false, false)) { - return 0; + mpBrkAnm2 = new mDoExt_brkAnm(); + if (!mpBrkAnm2 || !mpBrkAnm2->init(modelData, pbrk, TRUE, 2, 1.0, 0, -1, false, false)) { + return FALSE; } } - mBckAnm = NULL; + J3DAnmTransform* pbck; + mpBckAnm = NULL; if (bckAnm != -1) { - J3DAnmTransform* pbck = (J3DAnmTransform*)dComIfG_getObjectRes(resName, bckAnm); + pbck = (J3DAnmTransform*)dComIfG_getObjectRes(resName, bckAnm); JUT_ASSERT(212, pbck != 0); - mBckAnm = new mDoExt_bckAnm(); - if (!mBckAnm || !mBckAnm->init(modelData, pbck, true, 2, 1.0, 0, -1, false)) { - return 0; + mpBckAnm = new mDoExt_bckAnm(); + if (!mpBckAnm || !mpBckAnm->init(modelData, pbck, TRUE, 2, 1.0, 0, -1, false)) { + return FALSE; } } if (!clothCreate()) { - return 0; + return FALSE; } - return 1; + return TRUE; } /* 800F9074-800F9130 .text DrawBase__12daItemBase_cFv */ -s32 daItemBase_c::DrawBase() { +BOOL daItemBase_c::DrawBase() { setTevStr(); animEntry(); setListStart(); settingBeforeDraw(); - mDoExt_modelUpdateDL(mModel); + mDoExt_modelUpdateDL(mpModel); - if (mModelArrow[0]) { - mDoExt_modelUpdateDL(mModelArrow[0]); + if (mpModelArrow[0]) { + mDoExt_modelUpdateDL(mpModelArrow[0]); } - if (mModelArrow[1]) { - mDoExt_modelUpdateDL(mModelArrow[1]); + if (mpModelArrow[1]) { + mDoExt_modelUpdateDL(mpModelArrow[1]); } setListEnd(); setShadow(); - return 1; + return TRUE; } /* 800F9130-800F9184 .text setListStart__12daItemBase_cFv */ void daItemBase_c::setListStart() { - /* Nonmatching */ + if (!mDoGph_gInf_c::isMonotone()) { + dComIfGd_setListMaskOff(); + } else { + dComIfGd_setListP1(); + } } /* 800F9184-800F91A8 .text setListEnd__12daItemBase_cFv */ void daItemBase_c::setListEnd() { - /* Nonmatching */ + dComIfGd_setList(); } /* 800F91A8-800F9244 .text settingBeforeDraw__12daItemBase_cFv */ void daItemBase_c::settingBeforeDraw() { - /* Nonmatching */ + if (isBomb(m_itemNo)) { + daPy_lk_c* link = daPy_getPlayerLinkActorClass(); + link->getBombBrk()->setFrame(0.0f); + mpModel->getModelData()->getJointNodePointer(0)->setMtxCalc(NULL); + } + + if (m_itemNo == BOMB_BAG || m_itemNo == HUMMER || m_itemNo == SMALL_KEY) { + dDlst_texSpecmapST(&mEyePos, &mTevStr, mpModel->getModelData(), 1.0f); + } } /* 800F9244-800F92DC .text setTevStr__12daItemBase_cFv */ void daItemBase_c::setTevStr() { - /* Nonmatching */ + g_env_light.settingTevStruct(TEV_TYPE_ACTOR, getPositionP(), &mTevStr); + g_env_light.setLightTevColorType(mpModel, &mTevStr); + + for (int i = 0; i < 2; i++) { + if (!mpModelArrow[i]) { + continue; + } + g_env_light.setLightTevColorType(mpModelArrow[i], &mTevStr); + } } /* 800F92DC-800F93A8 .text setShadow__12daItemBase_cFv */ void daItemBase_c::setShadow() { - /* Nonmatching */ + f32 shadowSize = mScale.x * dItem_data::getShadowSize(m_itemNo); + if (!dItem_data::chkFlag(m_itemNo, 0x10)) { + dComIfGd_setSimpleShadow2( + getPositionP(), mAcch.GetGroundH(), shadowSize, mAcch.m_gnd, + 0, 1.0f, dDlst_shadowControl_c::getSimpleTex() + ); + } else { + mShadowId = dComIfGd_setShadow( + mShadowId, 1, mpModel, getPositionP(), 80.0f, shadowSize, + current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, &mTevStr, + 0, 1.0f, dDlst_shadowControl_c::getSimpleTex() + ); + } } /* 800F93A8-800F94C0 .text animEntry__12daItemBase_cFv */ void daItemBase_c::animEntry() { - /* Nonmatching */ - if (mBrkAnm1) { - int constantFrame = dItem_data::item_resource[m_itemNo].mTevRegAnimFrameIndex; + if (mpBrkAnm1) { + int constantFrame = dItem_data::getTevFrm(m_itemNo); if (constantFrame != -1) { - mBrkAnm1->entry(mModel->getModelData(), constantFrame); + mpBrkAnm1->entry(mpModel->getModelData(), constantFrame); } else { - mBrkAnm1->entry(mModel->getModelData()); + mpBrkAnm1->entry(mpModel->getModelData()); } } - if (mBtkAnm1) { - mBtkAnm1->entry(mModel->getModelData()); + if (mpBtkAnm1) { + mpBtkAnm1->entry(mpModel->getModelData()); } - if (mBrkAnm2) { - mBrkAnm2->entry(mModel->getModelData()); + if (mpBrkAnm2) { + mpBrkAnm2->entry(mpModel->getModelData()); } - if (mBtkAnm2) { - mBtkAnm2->entry(mModel->getModelData()); + if (mpBtkAnm2) { + mpBtkAnm2->entry(mpModel->getModelData()); } - if (mBckAnm) { - mBckAnm->entry(mModel->getModelData()); + if (mpBckAnm) { + mpBckAnm->entry(mpModel->getModelData()); } } /* 800F94C0-800F95B8 .text animPlay__12daItemBase_cFfffff */ -void daItemBase_c::animPlay(float, float, float, float, float) { - /* Nonmatching */ +void daItemBase_c::animPlay(f32 brk1Speed, f32 brk2Speed, f32 btk1Speed, f32 btk2Speed, f32 bckSpeed) { + if (mpBrkAnm1 && dItem_data::getTevFrm(m_itemNo) == -1) { + mpBrkAnm1->setPlaySpeed(brk1Speed); + mpBrkAnm1->play(); + } + + if (mpBtkAnm1) { + mpBtkAnm1->setPlaySpeed(btk1Speed); + mpBtkAnm1->play(); + } + + if (mpBrkAnm2) { + mpBrkAnm2->setPlaySpeed(brk2Speed); + mpBrkAnm2->play(); + } + + if (mpBtkAnm2) { + mpBtkAnm2->setPlaySpeed(btk2Speed); + mpBtkAnm2->play(); + } + + if (mpBckAnm) { + mpBckAnm->setPlaySpeed(bckSpeed); + mpBckAnm->play(); + } } - diff --git a/src/d/actor/d_a_shop_item.cpp b/src/d/actor/d_a_shop_item.cpp index 78fa1bda2..190153c48 100644 --- a/src/d/actor/d_a_shop_item.cpp +++ b/src/d/actor/d_a_shop_item.cpp @@ -21,20 +21,20 @@ const f32 daShopItem_c::m_cullfar_max = 5000.0f; char* daShopItem_c::getShopArcname() { u8 type = fopAcM_GetParamBit(this, 8, 4); if(type == 1 || (type == 0 && mModelType[m_itemNo] == 0x01)) { - return dItem_data::field_item_res[m_itemNo].mModelArcName; + return dItem_data::getFieldArc(m_itemNo); } else { - return dItem_data::item_resource[m_itemNo].mModelArcName; + return dItem_data::getArcname(m_itemNo); } } s16 daShopItem_c::getShopBmdIdx() { u8 type = fopAcM_GetParamBit(this, 8, 4); if(type == 1 || (type == 0 && mModelType[m_itemNo] == 0x01)) { - return dItem_data::field_item_res[m_itemNo].mModelFileId; + return dItem_data::getFieldBmdIdx(m_itemNo); } else { - return dItem_data::item_resource[m_itemNo].mModelFileIdx; + return dItem_data::getBmdIdx(m_itemNo); } } @@ -57,10 +57,10 @@ void daShopItem_c::CreateInit() { tevType = (TevType)0x5C; } - mModel->setUserArea(0); + mpModel->setUserArea(0); } -s32 daShopItem_c::clothCreate() { +BOOL daShopItem_c::clothCreate() { if(isUseClothPacket(m_itemNo)) { dCloth_packet_c* (*clothFunc[4])(ResTIMG*, ResTIMG*, dKy_tevstr_c*, cXyz**) = {dClothVobj03_create, dClothVobj04_create, dClothVobj05_create, dClothVobj07_0_create}; u32 clothRes[4] = {0x20, 0x21, 0x22, 0x23}; @@ -96,7 +96,7 @@ s32 daShopItem_c::clothCreate() { } void daShopItem_c::set_mtx() { - mModel->setBaseScale(mScale); + mpModel->setBaseScale(mScale); MTXTrans(mDoMtx_stack_c::get(), current.pos.x, current.pos.y, current.pos.z); mDoMtx_stack_c::ZXYrotM(current.angle.x, current.angle.y, current.angle.z); MTXCopy(mDoMtx_stack_c::get(), field_0x64C); @@ -105,7 +105,7 @@ void daShopItem_c::set_mtx() { mDoMtx_stack_c::transM(temp1.x, temp1.y, temp1.z); const SVec& temp2 = getData()[m_itemNo].field_0x18; mDoMtx_stack_c::ZXYrotM(temp2.x, temp2.y, temp2.z); - MTXCopy(mDoMtx_stack_c::get(), mModel->mBaseTransformMtx); + MTXCopy(mDoMtx_stack_c::get(), mpModel->mBaseTransformMtx); if(field_0x644 != 0) { // I have no clue why Nintendo would do this but it works @@ -139,7 +139,7 @@ bool daShopItem_c::_draw() { if(chkDraw() == 0) return 1; if(m_itemNo == WATER_STATUE || m_itemNo == POSTMAN_STATUE) { - mModel->getModelData()->getJointTree().getJointNodePointer(0)->setMtxCalc(0); + mpModel->getModelData()->getJointTree().getJointNodePointer(0)->setMtxCalc(0); } DrawBase(); @@ -150,16 +150,16 @@ bool daShopItem_c::_draw() { void daShopItem_c::settingBeforeDraw() { if(isBomb(m_itemNo) || (m_itemNo == BOMB_BAG) || (m_itemNo == HUMMER) || m_itemNo == SMALL_KEY || m_itemNo == PRESIDENT_STATUE) { - dDlst_texSpecmapST(&mEyePos, &mTevStr, mModel->getModelData(), 1.0f); + dDlst_texSpecmapST(&mEyePos, &mTevStr, mpModel->getModelData(), 1.0f); } } void daShopItem_c::setTevStr() { g_env_light.settingTevStruct(tevType, getPositionP(), &mTevStr); - g_env_light.setLightTevColorType(mModel, &mTevStr); + g_env_light.setLightTevColorType(mpModel, &mTevStr); for(int i = 0; i < 2; i++) { - if(mModelArrow[i] != 0) { - g_env_light.setLightTevColorType(mModelArrow[i], &mTevStr); + if(mpModelArrow[i] != 0) { + g_env_light.setLightTevColorType(mpModelArrow[i], &mTevStr); } } @@ -246,7 +246,7 @@ static actor_method_class daShopItemMethodTable = { (process_method_func)daShopItem_Delete, (process_method_func)daShopItem_Execute, (process_method_func)daShopItem_IsDelete, - (process_method_func)0, + (process_method_func)daShopItem_Draw, }; extern actor_process_profile_definition g_profile_ShopItem = { diff --git a/src/d/d_a_shop_item_static.cpp b/src/d/d_a_shop_item_static.cpp index 3604b2497..9ddeb63fc 100644 --- a/src/d/d_a_shop_item_static.cpp +++ b/src/d/d_a_shop_item_static.cpp @@ -263,7 +263,7 @@ const daShopItem_c_m_data daShopItem_c::mData[255] = { {{1.0f, 1.0f, 1.0f}, {0.0f, 20.0f, 0.0f}, {0, 0, 0}}, {{1.0f, 1.0f, 1.0f}, {0.0f, 20.0f, 0.0f}, {0, 0, 0}}, }; -const u8 daShopItem_c::mModelType[256] = { +const u8 daShopItem_c::mModelType[255] = { 2, 2, 2, @@ -519,7 +519,6 @@ const u8 daShopItem_c::mModelType[256] = { 2, 2, 2, - 0 }; cXyz* daShopItem_c::getScaleP() { diff --git a/src/d/d_item_data.cpp b/src/d/d_item_data.cpp index 63d1b6353..d2030e262 100644 --- a/src/d/d_item_data.cpp +++ b/src/d/d_item_data.cpp @@ -3,26 +3,10152 @@ // Translation Unit: d_item_data.cpp // -#include "d_item_data.h" +#include "d/d_item_data.h" +#include "d/d_particle_name.h" +#include "JSystem/JUtility/JUTAssert.h" #include "dolphin/types.h" +// Needed for the .data section to match. +static f32 dummy1[3] = {1.0f, 1.0f, 1.0f}; +static f32 dummy2[3] = {1.0f, 1.0f, 1.0f}; + +/* 80383F20-803840E0 .data item_arcname_tbl__10dItem_data */ +char* dItem_data::item_arcname_tbl[0x70] = { + "Always", + "Vhutu", + "Vhkak", + "VkeyN", + "key_01", + "tele_00", + "Bomb_00", + "Link", + "Vhane", + "Vboko", + "Vchuj", + "VmapC", + "VsaiM", + "VsaiL", + "VyatM", + "VyatL", + "Ball", + "Bin", + "VbomM", + "Boom", + "Vboot", + "VbomL", + "Bottle", + "Bottle_e", + "VboxN", + "VdunC", + "VdunM", + "Vleaf", + "VbagH", + "VbagE", + "VbagF", + "Vhyoi", + "Vesa", + "Vobj07", + "Vobj06", + "Vobj05", + "Vobj04", + "Vobj03", + "Vobj00", + "Vobj01", + "Vobj02", + "Vhook", + "Vpowr", + "Vho", + "Vmant", + "Vohom", + "Vchin", + "Vhamm", + "Vamuk", + "Vamuy", + "Med_b", + "Med_g", + "Med_r", + "Vobj08", + "Vobj09", + "Vobj11", + "Vobj10", + "Vhapp", + "Vrope", + "VmagS", + "Shinju_n", + "Sord_m", + "Sord_mvu", + "VswoN", + "VshiM", + "VshiN", + "Vtri1", + "Vtact", + "Varfi", + "VmapQ", + "Varrl", + "Vbow", + "Fa", + "Shinju_d", + "Shinju_f", + "FwBin", + "VBinY", + "VbinH", + "VbinS", + "VbinW", + "Vfuku", + "Vdoku", + "Vbelt", + "Vlupy", + "VleTT", + "VleOF", + "VleMG", + "VleMO", + "Fdai", + "Fdai", + "Fdai", + "Fdai", + "Fdai", + "Vtri2", + "Vtri3", + "Vtri4", + "Vtri5", + "Vtri6", + "Vtri7", + "Vtri8", + "Fdai", + "VmapT", + "VmapR", + "VmapH", + "VmapG", + "VboxA", + "Vtin1", + "Vtin2", + "Vtin3", + "Vtin4", + "Vtin5", + "Vbeso", +}; + +/* 803840E0-803842B0 .data item_texture_tbl__10dItem_data */ +char* dItem_data::item_texture_tbl[0x74] = { + "get_rupy.bti", + "get_key.bti", + "heart_up_01.bti", + "heart_up_02.bti", + "telescope.bti", + "whistle.bti", + "baton.bti", + "camera.bti", + "coverofbeast.bti", + "boomerang.bti", + "rope.bti", + "sail_00.bti", + "fan.bti", + "hammer_01.bti", + "boots_00.bti", + "boots_01.bti", + "coverofbait.bti", + "bow_01.bti", + "bomb_00.bti", + "sail_01.bti", + "bottle_00.bti", + "bottle_01.bti", + "bottle_02.bti", + "bottle_03.bti", + "delivery.bti", + "hookshot.bti", + "shield_02.bti", + "sail_02.bti", + "beast_01.bti", + "beast_02.bti", + "beast_03.bti", + "beast_04.bti", + "beast_05.bti", + "beast_06.bti", + "beast_07.bti", + "beast_08.bti", + "bait_01.bti", + "bait_02.bti", + "bait_03.bti", + "bait_04.bti", + "bait_05.bti", + "bait_06.bti", + "bait_07.bti", + "bait_08.bti", + "baton_stone.bti", + "god_symbol_00.bti", + "god_symbol_01.bti", + "god_symbol_02.bti", + "sword_00.bti", + "sword_01.bti", + "shield_00.bti", + "shield_01.bti", + "gloves_00.bti", + "gloves_00.bti", + "amulet_00.bti", + "amulet_01.bti", + "delivery_01.bti", + "delivery_02.bti", + "delivery_03.bti", + "delivery_04.bti", + "delivery_05.bti", + "delivery_06.bti", + "delivery_07.bti", + "delivery_08.bti", + "delivery_09.bti", + "delivery_10.bti", + "delivery_11.bti", + "delivery_12.bti", + "delivery_13.bti", + "delivery_14.bti", + "delivery_15.bti", + "delivery_16.bti", + "delivery_17.bti", + "delivery_18.bti", + "dungeon_map.bti", + "compass.bti", + "boss_key.bti", + "bottle_04.bti", + "bottle_05.bti", + "bottle_06.bti", + "bottle_07.bti", + "bottle_08.bti", + "baton_stone.bti", + "triforce_00.bti", + "triforce_01.bti", + "triforce_02.bti", + "triforce_03.bti", + "triforce_04.bti", + "triforce_05.bti", + "triforce_06.bti", + "triforce_07.bti", + "arrow_00.bti", + "arrow_01.bti", + "arrow_02.bti", + "arrow_03.bti", + "big_purse.bti", + "max_purse.bti", + "sword_02.bti", + "sword_03.bti", + "clothes.bti", + "bombpouch_1.bti", + "bombpouch_2.bti", + "arrowcase_1.bti", + "arrowcase_2.bti", + "cmap_tri2.bti", + "cmap_treasure2.bti", + "cmap_treasure2.bti", + "cmap_phantomship2.bti", + "cmap_tingle2.bti", + "arrow_power_01.bti", + "arrow_power_02.bti", + "camera_2.bti", + "tingle_figure.bti", + "bottle_09.bti", + "cmap_hint2.bti", + "delivery_19.bti", +}; + +/* 803842B0-803866B0 .data item_resource__10dItem_data */ +dItem_data_item_resource dItem_data::item_resource[0x100] = { + { + // 0x00: HEART + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ 0x002A, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B80 + }, + { + // 0x01: GREEN_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x02: BLUE_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x01, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x03: YELLOW_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x02, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x04: RED_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x03, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x05: PURPLE_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x06: ORANGE_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x05, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x07: KAKERA_HEART + /* mArcname */ item_arcname_tbl[0x02], + /* mTexture */ item_texture_tbl[0x03], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0194, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2420 + }, + { + // 0x08: UTUWA_HEART + /* mArcname */ item_arcname_tbl[0x01], + /* mTexture */ item_texture_tbl[0x02], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2500 + }, + { + // 0x09: S_MAGIC + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ 0x0032, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B80 + }, + { + // 0x0A: L_MAGIC + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ 0x0033, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B80 + }, + { + // 0x0B: BOMB_5 + /* mArcname */ item_arcname_tbl[0x06], + /* mTexture */ item_texture_tbl[0x12], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019F, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x0C: BOMB_10 + /* mArcname */ item_arcname_tbl[0x06], + /* mTexture */ item_texture_tbl[0x12], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019F, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x0D: BOMB_20 + /* mArcname */ item_arcname_tbl[0x06], + /* mTexture */ item_texture_tbl[0x12], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019F, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x0E: BOMB_30 + /* mArcname */ item_arcname_tbl[0x06], + /* mTexture */ item_texture_tbl[0x12], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019F, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x0F: SILVER_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x06, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x10: ARROW_10 + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x11], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x11: ARROW_20 + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x11], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x2000 + }, + { + // 0x12: ARROW_30 + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x11], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x13: noentry19 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x14: noentry20 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x15: SMALL_KEY + /* mArcname */ item_arcname_tbl[0x03], + /* mTexture */ item_texture_tbl[0x01], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3500 + }, + { + // 0x16: RECOVER_FAIRY + /* mArcname */ item_arcname_tbl[0x48], + /* mTexture */ NULL, + /* mBmdIdx */ 0x001F, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000C, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x4000 + }, + { + // 0x17: noentry23 + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x03], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x18: noentry24 + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x03], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x19: noentry25 + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x03], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1A: SUB_DUN_RUPEE + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x02, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0x1B: noentry27 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1C: noentry28 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1D: noentry29 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1E: TRIPLE_HEART + /* mArcname */ item_arcname_tbl[0x00], + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ 0x002A, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B80 + }, + { + // 0x1F: PENDANT + /* mArcname */ item_arcname_tbl[0x39], + /* mTexture */ item_texture_tbl[0x23], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A0, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x20: TELESCOPE + /* mArcname */ item_arcname_tbl[0x05], + /* mTexture */ item_texture_tbl[0x04], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0191, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3320 + }, + { + // 0x21: TNCL_WHITSL + /* mArcname */ item_arcname_tbl[0x2E], + /* mTexture */ item_texture_tbl[0x05], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019C, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x22: WIND_TACT + /* mArcname */ item_arcname_tbl[0x43], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A1, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x23: CAMERA + /* mArcname */ item_arcname_tbl[0x18], + /* mTexture */ item_texture_tbl[0x07], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A2, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x24: EMONO_BAG + /* mArcname */ item_arcname_tbl[0x1D], + /* mTexture */ item_texture_tbl[0x08], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x25: ROPE + /* mArcname */ item_arcname_tbl[0x3A], + /* mTexture */ item_texture_tbl[0x0A], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0192, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x26: CAMERA2 + /* mArcname */ item_arcname_tbl[0x69], + /* mTexture */ item_texture_tbl[0x6F], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A4, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0x27: BOW + /* mArcname */ item_arcname_tbl[0x47], + /* mTexture */ item_texture_tbl[0x11], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A5, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x28: PWR_GROOVE + /* mArcname */ item_arcname_tbl[0x2A], + /* mTexture */ item_texture_tbl[0x35], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A6, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x29: HVY_BOOTS + /* mArcname */ item_arcname_tbl[0x14], + /* mTexture */ item_texture_tbl[0x0E], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A7, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x2A: DRGN_SHIELD + /* mArcname */ item_arcname_tbl[0x3B], + /* mTexture */ item_texture_tbl[0x1A], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A8, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x2B: WATER_BOOTS + /* mArcname */ item_arcname_tbl[0x15], + /* mTexture */ item_texture_tbl[0x0F], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A9, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x2C: ESA_BAG + /* mArcname */ item_arcname_tbl[0x1E], + /* mTexture */ item_texture_tbl[0x10], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AA, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x2D: BOOMERANG + /* mArcname */ item_arcname_tbl[0x13], + /* mTexture */ item_texture_tbl[0x09], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AB, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x2E: BARE_HAND + /* mArcname */ item_arcname_tbl[0x50], + /* mTexture */ item_texture_tbl[0x34], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x2F: HOOKSHOT + /* mArcname */ item_arcname_tbl[0x29], + /* mTexture */ item_texture_tbl[0x19], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x30: WARASHIBE_BAG + /* mArcname */ item_arcname_tbl[0x1C], + /* mTexture */ item_texture_tbl[0x18], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AD, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x31: BOMB_BAG + /* mArcname */ item_arcname_tbl[0x06], + /* mTexture */ item_texture_tbl[0x12], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019F, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x32: FUKU + /* mArcname */ item_arcname_tbl[0x50], + /* mTexture */ item_texture_tbl[0x63], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x33: HUMMER + /* mArcname */ item_arcname_tbl[0x2F], + /* mTexture */ item_texture_tbl[0x0D], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AE, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x34: DEKU_LEAF + /* mArcname */ item_arcname_tbl[0x1B], + /* mTexture */ item_texture_tbl[0x0C], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01AF, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x35: MAGIC_ARROW + /* mArcname */ item_arcname_tbl[0x44], + /* mTexture */ item_texture_tbl[0x6D], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B0, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x36: LIGHT_ARROW + /* mArcname */ item_arcname_tbl[0x46], + /* mTexture */ item_texture_tbl[0x6E], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B1, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x37: noentry55 + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x63], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x38: SWORD + /* mArcname */ item_arcname_tbl[0x3F], + /* mTexture */ item_texture_tbl[0x30], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0195, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x39: MASTER_SWORD + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x31], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B2, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x3A: LV3_SWORD + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x61], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B5, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x3B: SHIELD + /* mArcname */ item_arcname_tbl[0x41], + /* mTexture */ item_texture_tbl[0x32], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0196, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x5000 + }, + { + // 0x3C: MIRROR_SHIELD + /* mArcname */ item_arcname_tbl[0x40], + /* mTexture */ item_texture_tbl[0x33], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B4, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x3D: DROPPED_SWORD + /* mArcname */ item_arcname_tbl[0x3F], + /* mTexture */ item_texture_tbl[0x30], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x3E: MASTER_SWORD_EX + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x62], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x3F: KAKERA_HEART2 + /* mArcname */ item_arcname_tbl[0x02], + /* mTexture */ item_texture_tbl[0x03], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0194, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2420 + }, + { + // 0x40: noentry64 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x41: noentry65 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x42: PIRATES_OMAMORI + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x36], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0193, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x43: HEROS_OMAMORI + /* mArcname */ item_arcname_tbl[0x31], + /* mTexture */ item_texture_tbl[0x37], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x019E, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x44: GRASS_BALL + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B5, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x45: SKULL_NECKLACE + /* mArcname */ item_arcname_tbl[0x51], + /* mTexture */ item_texture_tbl[0x1C], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B6, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0x46: BOKOBABA_SEED + /* mArcname */ item_arcname_tbl[0x09], + /* mTexture */ item_texture_tbl[0x1D], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B7, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x47: GOLDEN_FEATHER + /* mArcname */ item_arcname_tbl[0x08], + /* mTexture */ item_texture_tbl[0x1E], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B8, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0x48: BOKO_BELT + /* mArcname */ item_arcname_tbl[0x52], + /* mTexture */ item_texture_tbl[0x1F], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01B9, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0x49: RED_JELLY + /* mArcname */ item_arcname_tbl[0x0A], + /* mTexture */ item_texture_tbl[0x20], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0007, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x01, + /* mItemMesgNum */ 0x01BA, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x4A: GREEN_JELLY + /* mArcname */ item_arcname_tbl[0x0A], + /* mTexture */ item_texture_tbl[0x21], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0007, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x01BB, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x4B: BLUE_JELLY + /* mArcname */ item_arcname_tbl[0x0A], + /* mTexture */ item_texture_tbl[0x22], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0007, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x02, + /* mItemMesgNum */ 0x01BC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x4C: MAP + /* mArcname */ item_arcname_tbl[0x1A], + /* mTexture */ item_texture_tbl[0x4A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0197, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x4D: COMPASS + /* mArcname */ item_arcname_tbl[0x19], + /* mTexture */ item_texture_tbl[0x4B], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0198, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x4E: BOSS_KEY + /* mArcname */ item_arcname_tbl[0x04], + /* mTexture */ item_texture_tbl[0x4C], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0199, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x54A0 + }, + { + // 0x4F: EMPTY_BSHIP + /* mArcname */ NULL, + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01BD, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x50: EMPTY_BOTTLE + /* mArcname */ item_arcname_tbl[0x11], + /* mTexture */ item_texture_tbl[0x14], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01BE, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x51: RED_BOTTLE + /* mArcname */ item_arcname_tbl[0x34], + /* mTexture */ item_texture_tbl[0x15], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01BF, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x52: GREEN_BOTTLE + /* mArcname */ item_arcname_tbl[0x33], + /* mTexture */ item_texture_tbl[0x16], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C0, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x53: BLUE_BOTTLE + /* mArcname */ item_arcname_tbl[0x32], + /* mTexture */ item_texture_tbl[0x17], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C1, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x54: BOTTLESHIP + /* mArcname */ item_arcname_tbl[0x4E], + /* mTexture */ item_texture_tbl[0x71], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01F0, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x55: SOUP_BOTTLE + /* mArcname */ item_arcname_tbl[0x4E], + /* mTexture */ item_texture_tbl[0x4D], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01EE, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x56: BIN_IN_WATER + /* mArcname */ item_arcname_tbl[0x4F], + /* mTexture */ item_texture_tbl[0x4E], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C2, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x57: FAIRY_BOTTLE + /* mArcname */ item_arcname_tbl[0x4C], + /* mTexture */ item_texture_tbl[0x4F], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01EF, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x58: FIREFLY_BOTTLE + /* mArcname */ item_arcname_tbl[0x4D], + /* mTexture */ item_texture_tbl[0x50], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01EC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x59: FWATER_BOTTLE + /* mArcname */ item_arcname_tbl[0x4B], + /* mTexture */ item_texture_tbl[0x51], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01ED, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x5A: UNK_BOTTLE_5A + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5B: UNK_BOTTLE_5B + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5C: UNK_BOTTLE_5C + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5D: UNK_BOTTLE_5D + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5E: UNK_BOTTLE_5E + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5F: UNK_BOTTLE_5F + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x60: UNK_BOTTLE_60 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x61: TRIFORCE1 + /* mArcname */ item_arcname_tbl[0x42], + /* mTexture */ item_texture_tbl[0x53], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x62: TRIFORCE2 + /* mArcname */ item_arcname_tbl[0x5D], + /* mTexture */ item_texture_tbl[0x54], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x63: TRIFORCE3 + /* mArcname */ item_arcname_tbl[0x5E], + /* mTexture */ item_texture_tbl[0x55], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x64: TRIFORCE4 + /* mArcname */ item_arcname_tbl[0x5F], + /* mTexture */ item_texture_tbl[0x56], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x65: TRIFORCE5 + /* mArcname */ item_arcname_tbl[0x60], + /* mTexture */ item_texture_tbl[0x57], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x66: TRIFORCE6 + /* mArcname */ item_arcname_tbl[0x61], + /* mTexture */ item_texture_tbl[0x58], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x67: TRIFORCE7 + /* mArcname */ item_arcname_tbl[0x62], + /* mTexture */ item_texture_tbl[0x59], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x68: TRIFORCE8 + /* mArcname */ item_arcname_tbl[0x63], + /* mTexture */ item_texture_tbl[0x5A], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x1000 + }, + { + // 0x69: PEARL1 + /* mArcname */ item_arcname_tbl[0x3C], + /* mTexture */ item_texture_tbl[0x2F], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C5, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x6A: PEARL2 + /* mArcname */ item_arcname_tbl[0x49], + /* mTexture */ item_texture_tbl[0x2D], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C6, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x6B: PEARL3 + /* mArcname */ item_arcname_tbl[0x4A], + /* mTexture */ item_texture_tbl[0x2E], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C7, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x3000 + }, + { + // 0x6C: KNOWLEDGE_TF + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x36], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C8, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x6D: TACT_SONG1 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01C9, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x6E: TACT_SONG2 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CA, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x6F: TACT_SONG3 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CB, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x70: TACT_SONG4 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x71: TACT_SONG5 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CD, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x72: TACT_SONG6 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x06], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CE, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x73: noentry115 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x74: noentry116 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x75: noentry117 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x76: noentry118 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x77: noentry119 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x78: NORMAL_SAIL + /* mArcname */ item_arcname_tbl[0x2B], + /* mTexture */ item_texture_tbl[0x0B], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01CF, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x79: TRIFORCE_MAP1 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7A: TRIFORCE_MAP2 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7B: TRIFORCE_MAP3 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7C: TRIFORCE_MAP4 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7D: TRIFORCE_MAP5 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7E: TRIFORCE_MAP6 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x7F: TRIFORCE_MAP7 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x80: TRIFORCE_MAP8 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x81: noentry129 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x82: BIRD_ESA_5 + /* mArcname */ item_arcname_tbl[0x20], + /* mTexture */ item_texture_tbl[0x24], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01D3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x2000 + }, + { + // 0x83: ANIMAL_ESA + /* mArcname */ item_arcname_tbl[0x1F], + /* mTexture */ item_texture_tbl[0x25], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01D2, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x84: ESA1 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x85: ESA2 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x86: ESA3 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x87: ESA4 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x88: ESA5 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x89: MAGIC_BEAN + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8A: BIRD_ESA_10 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8B: noentry139 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8C: FLOWER_1 + /* mArcname */ item_arcname_tbl[0x26], + /* mTexture */ item_texture_tbl[0x38], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01D9, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x8D: FLOWER_2 + /* mArcname */ item_arcname_tbl[0x27], + /* mTexture */ item_texture_tbl[0x39], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DA, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x8E: FLOWER_3 + /* mArcname */ item_arcname_tbl[0x28], + /* mTexture */ item_texture_tbl[0x3A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DB, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x8F: HEROS_FLAG + /* mArcname */ item_arcname_tbl[0x25], + /* mTexture */ item_texture_tbl[0x3B], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x90: TAIRYO_FLAG + /* mArcname */ item_arcname_tbl[0x24], + /* mTexture */ item_texture_tbl[0x3C], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DD, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x91: SALES_FLAG + /* mArcname */ item_arcname_tbl[0x23], + /* mTexture */ item_texture_tbl[0x3D], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DE, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x92: WIND_FLAG + /* mArcname */ item_arcname_tbl[0x22], + /* mTexture */ item_texture_tbl[0x3E], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01DF, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x93: RED_FLAG + /* mArcname */ item_arcname_tbl[0x21], + /* mTexture */ item_texture_tbl[0x3F], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E0, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x94: FOSSIL_HEAD + /* mArcname */ item_arcname_tbl[0x35], + /* mTexture */ item_texture_tbl[0x40], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E1, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x95: WATER_STATUE + /* mArcname */ item_arcname_tbl[0x36], + /* mTexture */ item_texture_tbl[0x41], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E2, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x96: POSTMAN_STATUE + /* mArcname */ item_arcname_tbl[0x38], + /* mTexture */ item_texture_tbl[0x42], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E3, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x97: PRESIDENT_STATUE + /* mArcname */ item_arcname_tbl[0x37], + /* mTexture */ item_texture_tbl[0x43], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E4, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x98: LETTER00 + /* mArcname */ item_arcname_tbl[0x54], + /* mTexture */ item_texture_tbl[0x44], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E5, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x99: MAGIC_SEED + /* mArcname */ item_arcname_tbl[0x55], + /* mTexture */ item_texture_tbl[0x45], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01F6, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9A: MAGYS_LETTER + /* mArcname */ item_arcname_tbl[0x56], + /* mTexture */ item_texture_tbl[0x46], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E6, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9B: MO_LETTER + /* mArcname */ item_arcname_tbl[0x57], + /* mTexture */ item_texture_tbl[0x47], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E7, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9C: COTTAGE_PAPER + /* mArcname */ item_arcname_tbl[0x6F], + /* mTexture */ item_texture_tbl[0x48], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E8, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9D: KAISEN_PRESENT1 + /* mArcname */ item_arcname_tbl[0x2D], + /* mTexture */ item_texture_tbl[0x49], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01E9, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9E: KAISEN_PRESENT2 + /* mArcname */ item_arcname_tbl[0x2C], + /* mTexture */ item_texture_tbl[0x73], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01EA, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x9F: SALVAGE_ITEM1 + /* mArcname */ item_arcname_tbl[0x69], + /* mTexture */ item_texture_tbl[0x07], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01A4, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xA0: SALVAGE_ITEM2 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x36], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01EC, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xA1: SALVAGE_ITEM3 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x36], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x01ED, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xA2: XXX_039 + /* mArcname */ item_arcname_tbl[0x30], + /* mTexture */ item_texture_tbl[0x36], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xA3: TINGLE_STATUE1 + /* mArcname */ item_arcname_tbl[0x6A], + /* mTexture */ item_texture_tbl[0x70], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x17C0 + }, + { + // 0xA4: TINGLE_STATUE2 + /* mArcname */ item_arcname_tbl[0x6B], + /* mTexture */ item_texture_tbl[0x70], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x17C0 + }, + { + // 0xA5: TINGLE_STATUE3 + /* mArcname */ item_arcname_tbl[0x6C], + /* mTexture */ item_texture_tbl[0x70], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x17C0 + }, + { + // 0xA6: TINGLE_STATUE4 + /* mArcname */ item_arcname_tbl[0x6D], + /* mTexture */ item_texture_tbl[0x70], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x17C0 + }, + { + // 0xA7: TINGLE_STATUE5 + /* mArcname */ item_arcname_tbl[0x6E], + /* mTexture */ item_texture_tbl[0x70], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x17C0 + }, + { + // 0xA8: TINGLE_STATUE6 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA9: noentry169 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAA: noentry170 + /* mArcname */ item_arcname_tbl[0x3F], + /* mTexture */ NULL, + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAB: MAX_RUPEE_UP1 + /* mArcname */ item_arcname_tbl[0x0C], + /* mTexture */ item_texture_tbl[0x5F], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xAC: MAX_RUPEE_UP2 + /* mArcname */ item_arcname_tbl[0x0D], + /* mTexture */ item_texture_tbl[0x60], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xAD: MAX_BOMB_UP1 + /* mArcname */ item_arcname_tbl[0x12], + /* mTexture */ item_texture_tbl[0x64], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xAE: MAX_BOMB_UP2 + /* mArcname */ item_arcname_tbl[0x15], + /* mTexture */ item_texture_tbl[0x65], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xAF: MAX_ARROW_UP1 + /* mArcname */ item_arcname_tbl[0x0E], + /* mTexture */ item_texture_tbl[0x66], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xB0: MAX_ARROW_UP2 + /* mArcname */ item_arcname_tbl[0x0F], + /* mTexture */ item_texture_tbl[0x67], + /* mBmdIdx */ 0x0004, + /* mSrtIdx */ 0x0007, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x2000 + }, + { + // 0xB1: MAGIC_POWER + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB2: MAX_MP_UP1 + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB3: TINCLE_RUPEE1 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB4: TINCLE_RUPEE2 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB5: TINCLE_RUPEE3 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB6: TINCLE_RUPEE4 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB7: TINCLE_RUPEE5 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB8: TINCLE_RUPEE6 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x05, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xB9: LITHOGRAPH1 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBA: LITHOGRAPH2 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBB: LITHOGRAPH3 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBC: LITHOGRAPH4 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBD: LITHOGRAPH5 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBE: LITHOGRAPH6 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xBF: COLLECT_MAP_64 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xC0: COLLECT_MAP_63 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xC1: COLLECT_MAP_62 + /* mArcname */ item_arcname_tbl[0x53], + /* mTexture */ item_texture_tbl[0x00], + /* mBmdIdx */ 0x0005, + /* mSrtIdx */ 0x000B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0008, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x17C0 + }, + { + // 0xC2: COLLECT_MAP_61 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC3: COLLECT_MAP_60 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC4: COLLECT_MAP_59 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC5: COLLECT_MAP_58 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC6: COLLECT_MAP_57 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC7: COLLECT_MAP_56 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC8: COLLECT_MAP_55 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xC9: COLLECT_MAP_54 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCA: COLLECT_MAP_53 + /* mArcname */ item_arcname_tbl[0x45], + /* mTexture */ item_texture_tbl[0x72], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCB: COLLECT_MAP_52 + /* mArcname */ item_arcname_tbl[0x0B], + /* mTexture */ item_texture_tbl[0x6C], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCC: COLLECT_MAP_51 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCD: COLLECT_MAP_50 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCE: COLLECT_MAP_49 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xCF: COLLECT_MAP_48 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD0: COLLECT_MAP_47 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD1: COLLECT_MAP_46 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD2: COLLECT_MAP_45 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD3: COLLECT_MAP_44 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD4: COLLECT_MAP_43 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD5: COLLECT_MAP_42 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD6: COLLECT_MAP_41 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD7: COLLECT_MAP_40 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD8: COLLECT_MAP_39 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xD9: COLLECT_MAP_38 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDA: COLLECT_MAP_37 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDB: COLLECT_MAP_36 + /* mArcname */ item_arcname_tbl[0x68], + /* mTexture */ item_texture_tbl[0x6B], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDC: COLLECT_MAP_35 + /* mArcname */ item_arcname_tbl[0x0B], + /* mTexture */ item_texture_tbl[0x6C], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDD: COLLECT_MAP_34 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDE: COLLECT_MAP_33 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xDF: COLLECT_MAP_32 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE0: COLLECT_MAP_31 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE1: COLLECT_MAP_30 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE2: COLLECT_MAP_29 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE3: COLLECT_MAP_28 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE4: COLLECT_MAP_27 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE5: COLLECT_MAP_26 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE6: COLLECT_MAP_25 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE7: COLLECT_MAP_24 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE8: COLLECT_MAP_23 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xE9: COLLECT_MAP_22 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xEA: COLLECT_MAP_21 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xEB: COLLECT_MAP_20 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xEC: COLLECT_MAP_19 + /* mArcname */ item_arcname_tbl[0x66], + /* mTexture */ item_texture_tbl[0x6A], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xED: COLLECT_MAP_18 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xEE: COLLECT_MAP_17 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xEF: COLLECT_MAP_16 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF0: COLLECT_MAP_15 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF1: COLLECT_MAP_14 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF2: COLLECT_MAP_13 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF3: COLLECT_MAP_12 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF4: COLLECT_MAP_11 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF5: COLLECT_MAP_10 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF6: COLLECT_MAP_09 + /* mArcname */ item_arcname_tbl[0x67], + /* mTexture */ item_texture_tbl[0x69], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF7: COLLECT_MAP_08 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF8: COLLECT_MAP_07 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xF9: COLLECT_MAP_06 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFA: COLLECT_MAP_05 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFB: COLLECT_MAP_04 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFC: COLLECT_MAP_03 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFD: COLLECT_MAP_02 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFE: COLLECT_MAP_01 + /* mArcname */ item_arcname_tbl[0x65], + /* mTexture */ item_texture_tbl[0x68], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0xFF: NO_ITEM + /* mArcname */ NULL, + /* mTexture */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mItemMesgNum */ 0x0000, + /* mUnused */ 0x00000000, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, +}; + +/* 803866B0-803882B0 .data field_item_res__10dItem_data */ +dItem_data_field_item_res dItem_data::field_item_res[0x100] = { + { + // 0x00: HEART + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x002A, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0680 + }, + { + // 0x01: GREEN_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x00, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x02: BLUE_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x01, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x03: YELLOW_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x02, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x04: RED_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x03, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x05: PURPLE_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x04, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x06: ORANGE_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x05, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x07: KAKERA_HEART + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0038, + /* mSrtIdx */ 0x005B, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0C40 + }, + { + // 0x08: UTUWA_HEART + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0039, + /* mSrtIdx */ 0x005C, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0C60 + }, + { + // 0x09: S_MAGIC + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0032, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0700 + }, + { + // 0x0A: L_MAGIC + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0033, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0700 + }, + { + // 0x0B: BOMB_5 + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x003C, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0CC0 + }, + { + // 0x0C: BOMB_10 + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x003C, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0CC0 + }, + { + // 0x0D: BOMB_20 + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x003C, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0CC0 + }, + { + // 0x0E: BOMB_30 + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x003C, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0CC0 + }, + { + // 0x0F: SILVER_RUPEE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x003A, + /* mSrtIdx */ 0x005D, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0051, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ 0x06, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0CA0 + }, + { + // 0x10: ARROW_10 + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0700 + }, + { + // 0x11: ARROW_20 + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B40 + }, + { + // 0x12: ARROW_30 + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x001E, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x13: noentry19 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x14: noentry20 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x5500 + }, + { + // 0x15: SMALL_KEY + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x002B, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0780 + }, + { + // 0x16: RECOVER_FAIRY + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x001F, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000C, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x4000 + }, + { + // 0x17: noentry23 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x18: noentry24 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x19: noentry25 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1A: SUB_DUN_RUPEE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1B: noentry27 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1C: noentry28 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1D: noentry29 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x1E: TRIPLE_HEART + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x002A, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0B80 + }, + { + // 0x1F: PENDANT + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0029, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0015, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0FE0 + }, + { + // 0x20: TELESCOPE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x21: TNCL_WHITSL + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x22: WIND_TACT + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x23: CAMERA + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x24: EMONO_BAG + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x25: ROPE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x26: CAMERA2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x27: BOW + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x28: PWR_GROOVE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x29: HVY_BOOTS + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2A: DRGN_SHIELD + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2B: WATER_BOOTS + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2C: ESA_BAG + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2D: BOOMERANG + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2E: BARE_HAND + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x2F: HOOKSHOT + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x30: WARASHIBE_BAG + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x31: BOMB_BAG + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x32: FUKU + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x33: HUMMER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x34: DEKU_LEAF + /* mArc */ item_arcname_tbl[0x1B], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x35: MAGIC_ARROW + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x0037, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x5500 + }, + { + // 0x36: LIGHT_ARROW + /* mArc */ item_arcname_tbl[0x07], + /* mBmdIdx */ 0x0037, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x5500 + }, + { + // 0x37: noentry55 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x38: SWORD + /* mArc */ item_arcname_tbl[0x3F], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x39: MASTER_SWORD + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x3A: LV3_SWORD + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x3B: SHIELD + /* mArc */ item_arcname_tbl[0x41], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x5000 + }, + { + // 0x3C: MIRROR_SHIELD + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x3D: DROPPED_SWORD + /* mArc */ item_arcname_tbl[0x3F], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x3000 + }, + { + // 0x3E: MASTER_SWORD_EX + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x3F: KAKERA_HEART2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x40: noentry64 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x41: noentry65 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x42: PIRATES_OMAMORI + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x43: HEROS_OMAMORI + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x44: GRASS_BALL + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0000 + }, + { + // 0x45: SKULL_NECKLACE + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0027, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0012, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x08A0 + }, + { + // 0x46: BOKOBABA_SEED + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0026, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0010, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0720 + }, + { + // 0x47: GOLDEN_FEATHER + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0037, + /* mSrtIdx */ 0x005A, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x0050, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0014, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0EC0 + }, + { + // 0x48: BOKO_BELT + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0025, + /* mSrtIdx */ 0x0059, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000F, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000222, + /* mHeapSize */ 0x0760 + }, + { + // 0x49: RED_JELLY + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0036, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x004F, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0011, + /* mTevFrm */ 0x01, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0800 + }, + { + // 0x4A: GREEN_JELLY + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0036, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x004F, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0011, + /* mTevFrm */ 0x00, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0800 + }, + { + // 0x4B: BLUE_JELLY + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0036, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ 0x004F, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0011, + /* mTevFrm */ 0x02, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0800 + }, + { + // 0x4C: MAP + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x4D: COMPASS + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x4E: BOSS_KEY + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x4F: EMPTY_BSHIP + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x50: EMPTY_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x51: RED_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x52: GREEN_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x53: BLUE_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x54: BOTTLESHIP + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x55: SOUP_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x56: BIN_IN_WATER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x57: FAIRY_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x58: FIREFLY_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x59: FWATER_BOTTLE + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5A: UNK_BOTTLE_5A + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5B: UNK_BOTTLE_5B + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5C: UNK_BOTTLE_5C + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5D: UNK_BOTTLE_5D + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5E: UNK_BOTTLE_5E + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x5F: UNK_BOTTLE_5F + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x60: UNK_BOTTLE_60 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x61: TRIFORCE1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x62: TRIFORCE2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x63: TRIFORCE3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x64: TRIFORCE4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x65: TRIFORCE5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x66: TRIFORCE6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x67: TRIFORCE7 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x68: TRIFORCE8 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x69: PEARL1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6A: PEARL2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6B: PEARL3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6C: KNOWLEDGE_TF + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6D: TACT_SONG1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6E: TACT_SONG2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x6F: TACT_SONG3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x70: TACT_SONG4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x71: TACT_SONG5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x72: TACT_SONG6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x73: noentry115 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x74: noentry116 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x75: noentry117 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x76: noentry118 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x77: noentry119 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x78: NORMAL_SAIL + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x79: TRIFORCE_MAP1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7A: TRIFORCE_MAP2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7B: TRIFORCE_MAP3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7C: TRIFORCE_MAP4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7D: TRIFORCE_MAP5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7E: TRIFORCE_MAP6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x7F: TRIFORCE_MAP7 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x80: TRIFORCE_MAP8 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x81: noentry129 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x82: BIRD_ESA_5 + /* mArc */ item_arcname_tbl[0x00], + /* mBmdIdx */ 0x0028, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0013, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0740 + }, + { + // 0x83: ANIMAL_ESA + /* mArc */ item_arcname_tbl[0x1F], + /* mBmdIdx */ 0x0003, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0680 + }, + { + // 0x84: ESA1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x85: ESA2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x86: ESA3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x87: ESA4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x88: ESA5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x89: MAGIC_BEAN + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8A: BIRD_ESA_10 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8B: noentry139 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x8C: FLOWER_1 + /* mArc */ item_arcname_tbl[0x58], + /* mBmdIdx */ 0x0012, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0005, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x08E0 + }, + { + // 0x8D: FLOWER_2 + /* mArc */ item_arcname_tbl[0x59], + /* mBmdIdx */ 0x0013, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0006, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0860 + }, + { + // 0x8E: FLOWER_3 + /* mArc */ item_arcname_tbl[0x5B], + /* mBmdIdx */ 0x0014, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0007, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0880 + }, + { + // 0x8F: HEROS_FLAG + /* mArc */ item_arcname_tbl[0x5B], + /* mBmdIdx */ 0x0015, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1100 + }, + { + // 0x90: TAIRYO_FLAG + /* mArc */ item_arcname_tbl[0x5B], + /* mBmdIdx */ 0x0016, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1100 + }, + { + // 0x91: SALES_FLAG + /* mArc */ item_arcname_tbl[0x5B], + /* mBmdIdx */ 0x0017, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0008, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1200 + }, + { + // 0x92: WIND_FLAG + /* mArc */ item_arcname_tbl[0x5A], + /* mBmdIdx */ 0x0018, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x0009, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x0760 + }, + { + // 0x93: RED_FLAG + /* mArc */ item_arcname_tbl[0x5B], + /* mBmdIdx */ 0x0019, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000A, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1200 + }, + { + // 0x94: FOSSIL_HEAD + /* mArc */ item_arcname_tbl[0x5C], + /* mBmdIdx */ 0x001A, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000B, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x95: WATER_STATUE + /* mArc */ item_arcname_tbl[0x64], + /* mBmdIdx */ 0x001B, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x96: POSTMAN_STATUE + /* mArc */ item_arcname_tbl[0x5A], + /* mBmdIdx */ 0x001C, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x97: PRESIDENT_STATUE + /* mArc */ item_arcname_tbl[0x5A], + /* mBmdIdx */ 0x001D, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ 0x000E, + /* mTevFrm */ -1, + /* mUnknown */ 0x11000022, + /* mHeapSize */ 0x1000 + }, + { + // 0x98: LETTER00 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x99: MAGIC_SEED + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9A: MAGYS_LETTER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9B: MO_LETTER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9C: COTTAGE_PAPER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9D: KAISEN_PRESENT1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9E: KAISEN_PRESENT2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0x9F: SALVAGE_ITEM1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA0: SALVAGE_ITEM2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA1: SALVAGE_ITEM3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA2: XXX_039 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA3: TINGLE_STATUE1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA4: TINGLE_STATUE2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA5: TINGLE_STATUE3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA6: TINGLE_STATUE4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA7: TINGLE_STATUE5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA8: TINGLE_STATUE6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xA9: noentry169 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAA: noentry170 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAB: MAX_RUPEE_UP1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAC: MAX_RUPEE_UP2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAD: MAX_BOMB_UP1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAE: MAX_BOMB_UP2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xAF: MAX_ARROW_UP1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB0: MAX_ARROW_UP2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB1: MAGIC_POWER + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB2: MAX_MP_UP1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB3: TINCLE_RUPEE1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB4: TINCLE_RUPEE2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB5: TINCLE_RUPEE3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB6: TINCLE_RUPEE4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB7: TINCLE_RUPEE5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB8: TINCLE_RUPEE6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xB9: LITHOGRAPH1 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBA: LITHOGRAPH2 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBB: LITHOGRAPH3 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBC: LITHOGRAPH4 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBD: LITHOGRAPH5 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBE: LITHOGRAPH6 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xBF: COLLECT_MAP_64 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC0: COLLECT_MAP_63 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC1: COLLECT_MAP_62 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC2: COLLECT_MAP_61 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC3: COLLECT_MAP_60 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC4: COLLECT_MAP_59 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC5: COLLECT_MAP_58 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC6: COLLECT_MAP_57 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC7: COLLECT_MAP_56 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC8: COLLECT_MAP_55 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xC9: COLLECT_MAP_54 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCA: COLLECT_MAP_53 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCB: COLLECT_MAP_52 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCC: COLLECT_MAP_51 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCD: COLLECT_MAP_50 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCE: COLLECT_MAP_49 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xCF: COLLECT_MAP_48 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD0: COLLECT_MAP_47 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD1: COLLECT_MAP_46 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD2: COLLECT_MAP_45 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD3: COLLECT_MAP_44 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD4: COLLECT_MAP_43 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD5: COLLECT_MAP_42 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD6: COLLECT_MAP_41 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD7: COLLECT_MAP_40 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD8: COLLECT_MAP_39 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xD9: COLLECT_MAP_38 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDA: COLLECT_MAP_37 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDB: COLLECT_MAP_36 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDC: COLLECT_MAP_35 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDD: COLLECT_MAP_34 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDE: COLLECT_MAP_33 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xDF: COLLECT_MAP_32 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE0: COLLECT_MAP_31 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE1: COLLECT_MAP_30 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE2: COLLECT_MAP_29 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE3: COLLECT_MAP_28 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE4: COLLECT_MAP_27 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE5: COLLECT_MAP_26 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE6: COLLECT_MAP_25 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE7: COLLECT_MAP_24 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE8: COLLECT_MAP_23 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xE9: COLLECT_MAP_22 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xEA: COLLECT_MAP_21 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xEB: COLLECT_MAP_20 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xEC: COLLECT_MAP_19 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xED: COLLECT_MAP_18 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xEE: COLLECT_MAP_17 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xEF: COLLECT_MAP_16 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF0: COLLECT_MAP_15 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF1: COLLECT_MAP_14 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF2: COLLECT_MAP_13 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF3: COLLECT_MAP_12 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF4: COLLECT_MAP_11 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF5: COLLECT_MAP_10 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF6: COLLECT_MAP_09 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF7: COLLECT_MAP_08 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF8: COLLECT_MAP_07 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xF9: COLLECT_MAP_06 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFA: COLLECT_MAP_05 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFB: COLLECT_MAP_04 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFC: COLLECT_MAP_03 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFD: COLLECT_MAP_02 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFE: COLLECT_MAP_01 + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, + { + // 0xFF: NO_ITEM + /* mArc */ NULL, + /* mBmdIdx */ -1, + /* mSrtIdx */ -1, + /* mSrtIdx2 */ -1, + /* mTevIdx */ -1, + /* mTevIdx2 */ -1, + /* mBckIdx */ -1, + /* mTevFrm */ -1, + /* mUnknown */ 0x00000000, + /* mHeapSize */ 0x0000 + }, +}; + +/* 803882B0-803886B0 .data item_info__10dItem_data */ +dItem_data_item_info dItem_data::item_info[0x100] = { + { + // 0x00: HEART + 0x0F, + 0x28, + 0x1E, + 0x00, + }, + { + // 0x01: GREEN_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x02: BLUE_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x03: YELLOW_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x04: RED_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x05: PURPLE_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x06: ORANGE_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x07: KAKERA_HEART + 0x32, + 0x50, + 0x32, + 0x01, + }, + { + // 0x08: UTUWA_HEART + 0x32, + 0x50, + 0x32, + 0x01, + }, + { + // 0x09: S_MAGIC + 0x14, + 0x28, + 0x1E, + 0x00, + }, + { + // 0x0A: L_MAGIC + 0x19, + 0x50, + 0x1E, + 0x00, + }, + { + // 0x0B: BOMB_5 + 0x28, + 0x3C, + 0x1E, + 0x00, + }, + { + // 0x0C: BOMB_10 + 0x28, + 0x3C, + 0x1E, + 0x00, + }, + { + // 0x0D: BOMB_20 + 0x28, + 0x3C, + 0x1E, + 0x00, + }, + { + // 0x0E: BOMB_30 + 0x28, + 0x3C, + 0x1E, + 0x00, + }, + { + // 0x0F: SILVER_RUPEE + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x10: ARROW_10 + 0x14, + 0x50, + 0x32, + 0x00, + }, + { + // 0x11: ARROW_20 + 0x14, + 0x50, + 0x32, + 0x00, + }, + { + // 0x12: ARROW_30 + 0x14, + 0x50, + 0x32, + 0x00, + }, + { + // 0x13: noentry19 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x14: noentry20 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x15: SMALL_KEY + 0x14, + 0x28, + 0x1E, + 0x05, + }, + { + // 0x16: RECOVER_FAIRY + 0x1E, + 0x3C, + 0x1E, + 0x00, + }, + { + // 0x17: noentry23 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x18: noentry24 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x19: noentry25 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x1A: SUB_DUN_RUPEE + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x1B: noentry27 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x1C: noentry28 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x1D: noentry29 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x1E: TRIPLE_HEART + 0x0F, + 0x28, + 0x1E, + 0x00, + }, + { + // 0x1F: PENDANT + 0x1E, + 0x46, + 0x23, + 0x00, + }, + { + // 0x20: TELESCOPE + 0x28, + 0x00, + 0x00, + 0x05, + }, + { + // 0x21: TNCL_WHITSL + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x22: WIND_TACT + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x23: CAMERA + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x24: EMONO_BAG + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x25: ROPE + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x26: CAMERA2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x27: BOW + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x28: PWR_GROOVE + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x29: HVY_BOOTS + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x2A: DRGN_SHIELD + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x2B: WATER_BOOTS + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x2C: ESA_BAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x2D: BOOMERANG + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x2E: BARE_HAND + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x2F: HOOKSHOT + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x30: WARASHIBE_BAG + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x31: BOMB_BAG + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x32: FUKU + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x33: HUMMER + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x34: DEKU_LEAF + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x35: MAGIC_ARROW + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x36: LIGHT_ARROW + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x37: noentry55 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x38: SWORD + 0x1E, + 0x32, + 0x1E, + 0x10, + }, + { + // 0x39: MASTER_SWORD + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x3A: LV3_SWORD + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x3B: SHIELD + 0x28, + 0x3C, + 0x28, + 0x10, + }, + { + // 0x3C: MIRROR_SHIELD + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x3D: DROPPED_SWORD + 0x00, + 0x32, + 0x1E, + 0x10, + }, + { + // 0x3E: MASTER_SWORD_EX + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x3F: KAKERA_HEART2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x40: noentry64 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x41: noentry65 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x42: PIRATES_OMAMORI + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x43: HEROS_OMAMORI + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x44: GRASS_BALL + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x45: SKULL_NECKLACE + 0x28, + 0x5A, + 0x32, + 0x00, + }, + { + // 0x46: BOKOBABA_SEED + 0x1E, + 0x50, + 0x28, + 0x00, + }, + { + // 0x47: GOLDEN_FEATHER + 0x1E, + 0x5A, + 0x28, + 0x00, + }, + { + // 0x48: BOKO_BELT + 0x32, + 0x46, + 0x28, + 0x00, + }, + { + // 0x49: RED_JELLY + 0x19, + 0x46, + 0x28, + 0x00, + }, + { + // 0x4A: GREEN_JELLY + 0x19, + 0x46, + 0x28, + 0x00, + }, + { + // 0x4B: BLUE_JELLY + 0x19, + 0x46, + 0x28, + 0x00, + }, + { + // 0x4C: MAP + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x4D: COMPASS + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x4E: BOSS_KEY + 0x00, + 0x00, + 0x00, + 0x05, + }, + { + // 0x4F: EMPTY_BSHIP + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x50: EMPTY_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x51: RED_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x52: GREEN_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x53: BLUE_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x54: BOTTLESHIP + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x55: SOUP_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x56: BIN_IN_WATER + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x57: FAIRY_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x58: FIREFLY_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x59: FWATER_BOTTLE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5A: UNK_BOTTLE_5A + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5B: UNK_BOTTLE_5B + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5C: UNK_BOTTLE_5C + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5D: UNK_BOTTLE_5D + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5E: UNK_BOTTLE_5E + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x5F: UNK_BOTTLE_5F + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x60: UNK_BOTTLE_60 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x61: TRIFORCE1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x62: TRIFORCE2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x63: TRIFORCE3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x64: TRIFORCE4 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x65: TRIFORCE5 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x66: TRIFORCE6 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x67: TRIFORCE7 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x68: TRIFORCE8 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x69: PEARL1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6A: PEARL2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6B: PEARL3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6C: KNOWLEDGE_TF + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6D: TACT_SONG1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6E: TACT_SONG2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x6F: TACT_SONG3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x70: TACT_SONG4 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x71: TACT_SONG5 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x72: TACT_SONG6 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x73: noentry115 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x74: noentry116 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x75: noentry117 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x76: noentry118 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x77: noentry119 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x78: NORMAL_SAIL + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x79: TRIFORCE_MAP1 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7A: TRIFORCE_MAP2 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7B: TRIFORCE_MAP3 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7C: TRIFORCE_MAP4 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7D: TRIFORCE_MAP5 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7E: TRIFORCE_MAP6 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x7F: TRIFORCE_MAP7 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x80: TRIFORCE_MAP8 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x81: noentry129 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x82: BIRD_ESA_5 + 0x19, + 0x37, + 0x23, + 0x00, + }, + { + // 0x83: ANIMAL_ESA + 0x19, + 0x28, + 0x28, + 0x00, + }, + { + // 0x84: ESA1 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x85: ESA2 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x86: ESA3 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x87: ESA4 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x88: ESA5 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x89: MAGIC_BEAN + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x8A: BIRD_ESA_10 + 0x19, + 0x28, + 0x28, + 0x00, + }, + { + // 0x8B: noentry139 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x8C: FLOWER_1 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x8D: FLOWER_2 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x8E: FLOWER_3 + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x8F: HEROS_FLAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x90: TAIRYO_FLAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x91: SALES_FLAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x92: WIND_FLAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x93: RED_FLAG + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x94: FOSSIL_HEAD + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x95: WATER_STATUE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x96: POSTMAN_STATUE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x97: PRESIDENT_STATUE + 0x00, + 0x28, + 0x28, + 0x00, + }, + { + // 0x98: LETTER00 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x99: MAGIC_SEED + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9A: MAGYS_LETTER + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9B: MO_LETTER + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9C: COTTAGE_PAPER + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9D: KAISEN_PRESENT1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9E: KAISEN_PRESENT2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0x9F: SALVAGE_ITEM1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA0: SALVAGE_ITEM2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA1: SALVAGE_ITEM3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA2: XXX_039 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA3: TINGLE_STATUE1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA4: TINGLE_STATUE2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA5: TINGLE_STATUE3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA6: TINGLE_STATUE4 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA7: TINGLE_STATUE5 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA8: TINGLE_STATUE6 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xA9: noentry169 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAA: noentry170 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAB: MAX_RUPEE_UP1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAC: MAX_RUPEE_UP2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAD: MAX_BOMB_UP1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAE: MAX_BOMB_UP2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xAF: MAX_ARROW_UP1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB0: MAX_ARROW_UP2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB1: MAGIC_POWER + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB2: MAX_MP_UP1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB3: TINCLE_RUPEE1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB4: TINCLE_RUPEE2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB5: TINCLE_RUPEE3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB6: TINCLE_RUPEE4 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB7: TINCLE_RUPEE5 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB8: TINCLE_RUPEE6 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xB9: LITHOGRAPH1 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBA: LITHOGRAPH2 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBB: LITHOGRAPH3 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBC: LITHOGRAPH4 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBD: LITHOGRAPH5 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBE: LITHOGRAPH6 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xBF: COLLECT_MAP_64 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC0: COLLECT_MAP_63 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC1: COLLECT_MAP_62 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC2: COLLECT_MAP_61 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC3: COLLECT_MAP_60 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC4: COLLECT_MAP_59 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC5: COLLECT_MAP_58 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC6: COLLECT_MAP_57 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC7: COLLECT_MAP_56 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC8: COLLECT_MAP_55 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xC9: COLLECT_MAP_54 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCA: COLLECT_MAP_53 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCB: COLLECT_MAP_52 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCC: COLLECT_MAP_51 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCD: COLLECT_MAP_50 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCE: COLLECT_MAP_49 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xCF: COLLECT_MAP_48 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD0: COLLECT_MAP_47 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD1: COLLECT_MAP_46 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD2: COLLECT_MAP_45 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD3: COLLECT_MAP_44 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD4: COLLECT_MAP_43 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD5: COLLECT_MAP_42 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD6: COLLECT_MAP_41 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD7: COLLECT_MAP_40 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD8: COLLECT_MAP_39 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xD9: COLLECT_MAP_38 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDA: COLLECT_MAP_37 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDB: COLLECT_MAP_36 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDC: COLLECT_MAP_35 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDD: COLLECT_MAP_34 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDE: COLLECT_MAP_33 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xDF: COLLECT_MAP_32 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE0: COLLECT_MAP_31 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE1: COLLECT_MAP_30 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE2: COLLECT_MAP_29 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE3: COLLECT_MAP_28 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE4: COLLECT_MAP_27 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE5: COLLECT_MAP_26 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE6: COLLECT_MAP_25 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE7: COLLECT_MAP_24 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE8: COLLECT_MAP_23 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xE9: COLLECT_MAP_22 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xEA: COLLECT_MAP_21 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xEB: COLLECT_MAP_20 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xEC: COLLECT_MAP_19 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xED: COLLECT_MAP_18 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xEE: COLLECT_MAP_17 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xEF: COLLECT_MAP_16 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF0: COLLECT_MAP_15 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF1: COLLECT_MAP_14 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF2: COLLECT_MAP_13 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF3: COLLECT_MAP_12 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF4: COLLECT_MAP_11 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF5: COLLECT_MAP_10 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF6: COLLECT_MAP_09 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF7: COLLECT_MAP_08 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF8: COLLECT_MAP_07 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xF9: COLLECT_MAP_06 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFA: COLLECT_MAP_05 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFB: COLLECT_MAP_04 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFC: COLLECT_MAP_03 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFD: COLLECT_MAP_02 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFE: COLLECT_MAP_01 + 0x00, + 0x00, + 0x00, + 0x00, + }, + { + // 0xFF: NO_ITEM + 0x00, + 0x00, + 0x00, + 0x00, + }, +}; + +/* 803886B0-803888B4 .data effect_info__10dItem_data */ +dItem_data_effect_info dItem_data::effect_info[0x81] = { + { + // 0x00: HEART + 0x0002, + dPa_name::ID_SCENE_END, + }, + { + // 0x01: GREEN_RUPEE + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x02: BLUE_RUPEE + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x03: YELLOW_RUPEE + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x04: RED_RUPEE + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x05: PURPLE_RUPEE + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x06: ORANGE_RUPEE + 0x0002, + dPa_name::ID_SCENE_END, + }, + { + // 0x07: KAKERA_HEART + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x08: UTUWA_HEART + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x09: S_MAGIC + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0A: L_MAGIC + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0B: BOMB_5 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0C: BOMB_10 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0D: BOMB_20 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0E: BOMB_30 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x0F: SILVER_RUPEE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x10: ARROW_10 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x11: ARROW_20 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x12: ARROW_30 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x13: noentry19 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x14: noentry20 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x15: SMALL_KEY + 0x0003, + dPa_name::ID_SCENE_END, + }, + { + // 0x16: RECOVER_FAIRY + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x17: noentry23 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x18: noentry24 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x19: noentry25 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1A: SUB_DUN_RUPEE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1B: noentry27 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1C: noentry28 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1D: noentry29 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1E: TRIPLE_HEART + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x1F: PENDANT + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x20: TELESCOPE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x21: TNCL_WHITSL + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x22: WIND_TACT + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x23: CAMERA + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x24: EMONO_BAG + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x25: ROPE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x26: CAMERA2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x27: BOW + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x28: PWR_GROOVE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x29: HVY_BOOTS + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2A: DRGN_SHIELD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2B: WATER_BOOTS + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2C: ESA_BAG + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2D: BOOMERANG + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2E: BARE_HAND + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x2F: HOOKSHOT + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x30: WARASHIBE_BAG + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x31: BOMB_BAG + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x32: FUKU + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x33: HUMMER + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x34: DEKU_LEAF + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x35: MAGIC_ARROW + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x36: LIGHT_ARROW + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x37: noentry55 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x38: SWORD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x39: MASTER_SWORD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3A: LV3_SWORD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3B: SHIELD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3C: MIRROR_SHIELD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3D: DROPPED_SWORD + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3E: MASTER_SWORD_EX + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x3F: KAKERA_HEART2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x40: noentry64 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x41: noentry65 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x42: PIRATES_OMAMORI + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x43: HEROS_OMAMORI + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x44: GRASS_BALL + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x45: SKULL_NECKLACE + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x46: BOKOBABA_SEED + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x47: GOLDEN_FEATHER + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x48: BOKO_BELT + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x49: RED_JELLY + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x4A: GREEN_JELLY + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x4B: BLUE_JELLY + dPa_name::ID_SCENE_END, + 0x0293, + }, + { + // 0x4C: MAP + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x4D: COMPASS + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x4E: BOSS_KEY + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x4F: EMPTY_BSHIP + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x50: EMPTY_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x51: RED_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x52: GREEN_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x53: BLUE_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x54: BOTTLESHIP + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x55: SOUP_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x56: BIN_IN_WATER + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x57: FAIRY_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x58: FIREFLY_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x59: FWATER_BOTTLE + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5A: UNK_BOTTLE_5A + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5B: UNK_BOTTLE_5B + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5C: UNK_BOTTLE_5C + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5D: UNK_BOTTLE_5D + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5E: UNK_BOTTLE_5E + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x5F: UNK_BOTTLE_5F + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x60: UNK_BOTTLE_60 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x61: TRIFORCE1 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x62: TRIFORCE2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x63: TRIFORCE3 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x64: TRIFORCE4 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x65: TRIFORCE5 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x66: TRIFORCE6 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x67: TRIFORCE7 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x68: TRIFORCE8 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x69: PEARL1 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6A: PEARL2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6B: PEARL3 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6C: KNOWLEDGE_TF + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6D: TACT_SONG1 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6E: TACT_SONG2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x6F: TACT_SONG3 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x70: TACT_SONG4 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x71: TACT_SONG5 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x72: TACT_SONG6 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x73: noentry115 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x74: noentry116 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x75: noentry117 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x76: noentry118 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x77: noentry119 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x78: NORMAL_SAIL + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x79: TRIFORCE_MAP1 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7A: TRIFORCE_MAP2 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7B: TRIFORCE_MAP3 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7C: TRIFORCE_MAP4 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7D: TRIFORCE_MAP5 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7E: TRIFORCE_MAP6 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x7F: TRIFORCE_MAP7 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, + { + // 0x80: TRIFORCE_MAP8 + dPa_name::ID_SCENE_END, + dPa_name::ID_SCENE_END, + }, +}; + /* 800C12F4-800C1334 .text checkAppearEffect__10dItem_dataFUc */ -bool dItem_data::checkAppearEffect(u8 itemNo) { - /* Nonmatching */ +bool dItem_data::checkAppearEffect(u8 no) { + if (no > 0x80) { + return false; + } + return effect_info[no].m_appear != dPa_name::ID_SCENE_END; } /* 800C1334-800C13B4 .text getAppearEffect__10dItem_dataFUc */ -s16 dItem_data::getAppearEffect(u8 itemNo) { - /* Nonmatching */ +u16 dItem_data::getAppearEffect(u8 no) { + JUT_ASSERT(9676, effect_info[no].m_appear != dPa_name::ID_SCENE_END); + return effect_info[no].m_appear; } /* 800C13B4-800C13F8 .text checkSpecialEffect__10dItem_dataFUc */ -bool dItem_data::checkSpecialEffect(u8 itemNo) { - /* Nonmatching */ +bool dItem_data::checkSpecialEffect(u8 no) { + if (no > 0x80) { + return false; + } + return effect_info[no].m_sp_effect != dPa_name::ID_SCENE_END; } /* 800C13F8-800C1474 .text getSpecialEffect__10dItem_dataFUc */ -u16 dItem_data::getSpecialEffect(u8 itemNo) { - /* Nonmatching */ +u16 dItem_data::getSpecialEffect(u8 no) { + JUT_ASSERT(9700, effect_info[no].m_sp_effect != dPa_name::ID_SCENE_END); + return effect_info[no].m_sp_effect; } - diff --git a/src/d/d_npc.cpp b/src/d/d_npc.cpp index beaa58772..31a54e950 100644 --- a/src/d/d_npc.cpp +++ b/src/d/d_npc.cpp @@ -101,7 +101,7 @@ dPath* dNpc_PathRun_c::nextPath(s8 roomNo) { cXyz dNpc_PathRun_c::getPoint(u8 pointIdx) { cXyz point(0.0f, 0.0f, 0.0f); - if(mPath != 0 && pointIdx < mPath->mNum) { + if(mPath != 0 && pointIdx < mPath->m_num) { point = mPath->mpPnt[pointIdx].mPos; } @@ -118,8 +118,8 @@ bool dNpc_PathRun_c::incIdx() { if(mPath != 0) { mCurrPointIndex += 1; - if(mCurrPointIndex >= mPath->mNum) { - mCurrPointIndex = mPath->mNum - 1; + if(mCurrPointIndex >= mPath->m_num) { + mCurrPointIndex = mPath->m_num - 1; ret = false; } } @@ -132,7 +132,7 @@ bool dNpc_PathRun_c::incIdxLoop() { if(mPath != 0) { mCurrPointIndex += 1; - if(mCurrPointIndex >= mPath->mNum) { + if(mCurrPointIndex >= mPath->m_num) { mCurrPointIndex = 0; ret = false; } @@ -147,14 +147,14 @@ bool dNpc_PathRun_c::incIdxAuto() { if(mPath != 0) { if(mPath->mLoops & 1) { mCurrPointIndex += 1; - if(mCurrPointIndex >= mPath->mNum) { + if(mCurrPointIndex >= mPath->m_num) { mCurrPointIndex = 0; } } else { mCurrPointIndex += 1; - if(mCurrPointIndex >= mPath->mNum) { - mCurrPointIndex = mPath->mNum - 1; + if(mCurrPointIndex >= mPath->m_num) { + mCurrPointIndex = mPath->m_num - 1; hitEnd = false; } } @@ -168,7 +168,7 @@ bool dNpc_PathRun_c::decIdx() { if(mPath != 0) { mCurrPointIndex -= 1; - if(mCurrPointIndex >= mPath->mNum) { + if(mCurrPointIndex >= mPath->m_num) { mCurrPointIndex = 0; ret = false; } @@ -182,8 +182,8 @@ bool dNpc_PathRun_c::decIdxLoop() { if(mPath != 0) { mCurrPointIndex -= 1; - if(mCurrPointIndex >= mPath->mNum) { - mCurrPointIndex = mPath->mNum - 1; + if(mCurrPointIndex >= mPath->m_num) { + mCurrPointIndex = mPath->m_num - 1; ret = false; } } @@ -197,13 +197,13 @@ bool dNpc_PathRun_c::decIdxAuto() { if(mPath != 0) { if(mPath->mLoops & 1) { mCurrPointIndex -= 1; - if(mCurrPointIndex >= mPath->mNum) { - mCurrPointIndex = mPath->mNum - 1; + if(mCurrPointIndex >= mPath->m_num) { + mCurrPointIndex = mPath->m_num - 1; } } else { mCurrPointIndex -= 1; - if(mCurrPointIndex >= mPath->mNum) { + if(mCurrPointIndex >= mPath->m_num) { mCurrPointIndex = 0; hitEnd = false; } @@ -275,7 +275,7 @@ s32 dNpc_PathRun_c::absIdx(u8 startIdx, u8 lastIdx) { u8 dNpc_PathRun_c::maxPoint() { u8 max = 0xFF; if(mPath != 0) { - max = mPath->mNum; + max = mPath->m_num; } return max; @@ -283,7 +283,7 @@ u8 dNpc_PathRun_c::maxPoint() { u8 dNpc_PathRun_c::pointArg(u8 idx) { u8 arg = 0; - if(mPath != 0 && idx < (u8)mPath->mNum) { + if(mPath != 0 && idx < (u8)mPath->m_num) { arg = mPath->mpPnt[idx].mArg3; } @@ -794,10 +794,10 @@ void dNpc_EventCut_c::cutTurnToActorStart() { u32* set = dComIfGp_evmng_getMyIntegerP(mEvtStaffId, "SetId"); if(set) { - mSetID = *set; + mSetId = *set; } else { - mSetID = 0; + mSetId = 0; } Vec* pos = dComIfGp_evmng_getMyVec3dP(mEvtStaffId, "OffsetPos"); @@ -860,7 +860,7 @@ void dNpc_EventCut_c::cutTurnToActorStart() { } void dNpc_EventCut_c::cutTurnToActorProc() { - if(mSetID != 0) { + if(mSetId != 0) { mTargetActorPos.set(0.0f, 0.0f, 0.0f); fopAcM_Search((fopAcIt_JudgeFunc)&findActorCallBack, this); } @@ -957,10 +957,10 @@ void dNpc_EventCut_c::cutMoveToActorStart() { } if(set == 0) { - mSetID = 0; + mSetId = 0; } else { - mSetID = *set; + mSetId = *set; } if(speed == 0) { @@ -986,7 +986,7 @@ void dNpc_EventCut_c::cutMoveToActorStart() { } void dNpc_EventCut_c::cutMoveToActorProc() { - if(mSetID != 0) { + if(mSetId != 0) { mTargetActorPos.set(0.0f, 0.0f, 0.0f); fopAcM_Search((fopAcIt_JudgeFunc)&findActorCallBack, this); } @@ -1037,7 +1037,7 @@ fopAc_ac_c* dNpc_EventCut_c::findActorCallBack(fopAc_ac_c* pActor, void* pData) return 0; } - if(cut->mSetID != 0 && pActor->mSetID == cut->mSetID) { + if(cut->mSetId != 0 && pActor->mSetId == cut->mSetId) { cut->mTargetActorPos = pActor->current.pos; cut->mpTargetActor = pActor; diff --git a/src/d/d_path.cpp b/src/d/d_path.cpp index 8e46db926..59c429b0d 100644 --- a/src/d/d_path.cpp +++ b/src/d/d_path.cpp @@ -4,21 +4,61 @@ // #include "d/d_path.h" -#include "dolphin/types.h" +#include "d/d_com_inf_game.h" +#include "JSystem/JUtility/JUTAssert.h" /* 80080018-8008010C .text dPath_GetPnt__FP5dPathi */ -dPath__Point* dPath_GetPnt(dPath*, int) { - /* Nonmatching */ +dPath__Point* dPath_GetPnt(dPath* path, int pnt_index) { + JUT_ASSERT(14, path != 0); + JUT_ASSERT(15, 0 <= pnt_index && pnt_index < path->m_num); + + if (path == NULL || path->mpPnt == NULL || 0 > pnt_index || pnt_index >= path->m_num) + return NULL; + else + return &path->mpPnt[pnt_index]; } /* 8008010C-80080218 .text dPath_GetRoomPath__Fii */ -dPath* dPath_GetRoomPath(int, int) { - /* Nonmatching */ +dPath* dPath_GetRoomPath(int path_index, int room_no) { + dStage_dPath_c * pd; + if (room_no == -1) { + pd = dComIfGp_getStage().getPath2Inf(); + } else { + JUT_ASSERT(0x3d, 0 <= room_no && room_no < 64); + dStage_roomStatus_c * pRoom = dComIfGp_roomControl_getStatusRoomDt(room_no); + if (pRoom == NULL) + return NULL; + pd = pRoom->getPath2Inf(); + } + + if (pd == NULL || 0 > path_index || path_index >= pd->num) + return NULL; + else + return &pd->m_path[path_index]; } /* 80080218-80080340 .text dPath_GetNextRoomPath__FP5dPathi */ -void dPath_GetNextRoomPath(dPath*, int) { - /* Nonmatching */ +dPath* dPath_GetNextRoomPath(dPath* path, int room_no) { + dStage_dPath_c * pd; + if (room_no == -1) { + pd = dComIfGp_getStage().getPath2Inf(); + } else { + dStage_roomStatus_c * pRoom = dComIfGp_roomControl_getStatusRoomDt(room_no); + if (pRoom == NULL) + return NULL; + pd = pRoom->getPath2Inf(); + } + + s32 next_id = path->mNextPathId; + if (pd == NULL || (next_id & 0xFFFF) == 0xFFFF) { + return NULL; + } else { + JUT_ASSERT(0x72, 0 <= next_id && next_id < pd->num); + if (0 > next_id || next_id >= pd->num) + return NULL; + else + return &pd->m_path[next_id]; + } } /* 80080340-800804A4 .text dPath_GetPolyRoomPathVec__FR13cBgS_PolyInfoP4cXyzPi */ diff --git a/src/d/d_point_wind.cpp b/src/d/d_point_wind.cpp index 3882720dd..b9f930356 100644 --- a/src/d/d_point_wind.cpp +++ b/src/d/d_point_wind.cpp @@ -3,21 +3,58 @@ // Translation Unit: d_point_wind.cpp // -#include "d_point_wind.h" -#include "dolphin/types.h" +#include "d/d_point_wind.h" +#include "d/d_com_inf_game.h" +#include "d/d_kankyo_rain.h" +#include "d/d_kankyo_wether.h" +#include "SSystem/SComponent/c_lib.h" /* 800CF31C-800CF398 .text set_pwind_init__12dPointWind_cFP9cM3dGCpsS */ -void dPointWind_c::set_pwind_init(cM3dGCpsS*) { - /* Nonmatching */ +void dPointWind_c::set_pwind_init(cM3dGCpsS* pCps) { + mpCps = pCps; + mWind.mPos = mpCps->mStart; + mWind.mDir = mpCps->mEnd; + mWind.mRadius = mpCps->mRadius; + mWind.field_0x20 = 0.0f; + mWind.mStrength = 1.0f; + dKyw_pwind_cylinder_set(&mWind); } /* 800CF398-800CF5C8 .text set_pwind_move__12dPointWind_cFv */ void dPointWind_c::set_pwind_move() { - /* Nonmatching */ + f32 radScale = 1.8f; + BOOL animate = TRUE; + + cXyz p0 = mpCps->mStart; + cXyz p1 = mpCps->mEnd; + cXyz dir; + dKyr_get_vectle_calc(&p0, &p1, &dir); + + if (strcmp(dComIfGp_getStartStageName(), "sea") == 0 && dComIfGp_roomControl_getStayNo() == 4) { + radScale = 11.0f; + animate = false; + mWind.mPos = p0 + (dir * -100.0f); + } + + mWind.mDir = dir; + mWind.mRadius = mpCps->mRadius * radScale; + mWind.field_0x20 = 0.0f; + + if (animate) { + cLib_addCalc(&mWind.mPos.x, mpCps->mEnd.x, 0.1f, mWind.mRadius, mWind.mRadius * 0.5f); + cLib_addCalc(&mWind.mPos.y, mpCps->mEnd.y, 0.1f, mWind.mRadius, mWind.mRadius * 0.5f); + cLib_addCalc(&mWind.mPos.z, mpCps->mEnd.z, 0.1f, mWind.mRadius, mWind.mRadius * 0.5f); + + if (mWind.mPos.abs(p1) < mWind.mRadius) { + mWind.mPos.x = mpCps->mStart.x; + mWind.mPos.y = mpCps->mStart.y; + mWind.mPos.z = mpCps->mStart.z; + } + } } /* 800CF5C8-800CF5EC .text set_pwind_delete__12dPointWind_cFv */ void dPointWind_c::set_pwind_delete() { - /* Nonmatching */ + dKyw_pntwind_cut(&mWind); } diff --git a/src/d/d_stage.cpp b/src/d/d_stage.cpp index d8adae160..550fc271a 100644 --- a/src/d/d_stage.cpp +++ b/src/d/d_stage.cpp @@ -35,14 +35,25 @@ void dStage_SetErrorRoom() {} /* 8004093C-80040940 .text dStage_SetErrorStage__Fv */ void dStage_SetErrorStage() {} +class dStage_KeepTresureInfo { + u8 unk[0x404]; +}; + +class dStage_KeepDoorInfo { + u8 unk[0x904]; +}; + +dStage_KeepTresureInfo TresureInfo; +dStage_KeepDoorInfo DoorInfo; + /* 80040940-8004094C .text dStage_GetKeepTresureInfo__Fv */ -void dStage_GetKeepTresureInfo() { - /* Nonmatching */ +dStage_KeepTresureInfo * dStage_GetKeepTresureInfo() { + return &TresureInfo; } /* 8004094C-80040958 .text dStage_GetKeepDoorInfo__Fv */ -void dStage_GetKeepDoorInfo() { - /* Nonmatching */ +dStage_KeepDoorInfo * dStage_GetKeepDoorInfo() { + return &DoorInfo; } /* 80040958-80040A78 .text dStage_KeepTresureInfoProc__FP11dStage_dt_cP19stage_tresure_class @@ -86,7 +97,7 @@ void dStage_roomControl_c::init() { dStage_roomStatus_c* status = mStatus; for (int i = 0; i < 64; i++) { - status->mRoomDt.init(); + status->init(); setStatusFlag(i, 0); status->mDraw = false; @@ -202,17 +213,25 @@ void dStage_roomControl_c::checkDrawArea() const { /* 800412EC-80041330 .text getDarkStatus__20dStage_roomControl_cFv */ // NONMATCHING dStage_darkStatus_c* dStage_roomControl_c::getDarkStatus() { - dStage_FileList_dt_c* plist_p = mStatus[mStayNo].mRoomDt.mpFileList; - if (plist_p == NULL) { - return NULL; - } + dStage_roomStatus_c * pRoomStatus = &mStatus[mStayNo]; + dStage_FileList_dt_c* plist_p = pRoomStatus->mpFileList; + if (plist_p == NULL) + return NULL; + + // pointer math here seems wrong... return &mDarkStatus[plist_p->mParam & 0x78]; } /* 80041330-80041370 .text getDarkMode__20dStage_roomControl_cFv */ -void dStage_roomControl_c::getDarkMode() { - /* Nonmatching */ +u32 dStage_roomControl_c::getDarkMode() { + dStage_roomStatus_c * pRoomStatus = &mStatus[mStayNo]; + dStage_FileList_dt_c* plist_p = pRoomStatus->mpFileList; + + u8 mode = 0; + if (plist_p != NULL && (plist_p->mParam & 1) != 0) + mode = 1; + return mode; } /* 80041370-800413D4 .text createMemoryBlock__20dStage_roomControl_cFiUl */ @@ -1201,8 +1220,25 @@ void dStage_playerInitIkada(fopAcM_prm_class*, void*) { } /* 800419D0-80041AEC .text dStage_chkPlayerId__Fii */ -void dStage_chkPlayerId(int, int) { - /* Nonmatching */ +u32 dStage_chkPlayerId(int playerId, int room_no) { + stage_actor_class * player; + + if (room_no == -1) { + player = dComIfGp_getStage().getPlayer(); + } else { + JUT_ASSERT(0x689, 0 <= room_no && room_no < 64); + player = dComIfGp_roomControl_getStatusRoomDt(room_no)->getPlayer(); + } + + if (player == NULL) + return FALSE; + + stage_actor_data_class * actor = player->m_entries; + for (int i = 0; i < player->num; i++, actor++) + if ((u8)actor->mAngle.z == playerId) + return TRUE; + + return FALSE; } /* 80041AF4-80041E84 .text dStage_playerInit__FP11dStage_dt_cPviPv */ @@ -1246,7 +1282,7 @@ int dStage_playerInit(dStage_dt_c* i_stage, void* i_data, int num, void* param_3 appen->mParameter = player_data->mParameter; appen->mPos = player_data->mSpawnPos; appen->mAngle = player_data->mAngle; - appen->mEnemyNo = player_data->mEnemyNo; + appen->mSetId = player_data->mSetId; if (roomParam != 0 && (int)((appen->mParameter >> 0xC) & 0xF) != 2) { appen->mParameter = (roomParam & 0xFFFFFFC0) | (appen->mParameter & 0x3F); @@ -1254,7 +1290,7 @@ int dStage_playerInit(dStage_dt_c* i_stage, void* i_data, int num, void* param_3 } dComIfGs_setRestartRoomParam(0); - appen->mEnemyNo = 0xFFFF; + appen->mSetId = 0xFFFF; appen->mRoomNo = -1; dComIfGp_getStartStage()->set(dComIfGp_getStartStageName(), appen->mParameter & 0x3F, @@ -1465,14 +1501,14 @@ int dStage_actorInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { stage_actor_data_class* actor_data = actor->m_entries; for (int i = 0; i < actor->num; i++) { - if (!dComIfGs_isActor(actor_data->mEnemyNo, i_stage->getRoomNo())) { + if (!dComIfGs_isActor(actor_data->mSetId, i_stage->getRoomNo())) { fopAcM_prm_class* appen = fopAcM_CreateAppend(); if (appen != NULL) { appen->mParameter = actor_data->mParameter; appen->mPos = actor_data->mSpawnPos; appen->mAngle = actor_data->mAngle; - appen->mEnemyNo = actor_data->mEnemyNo; + appen->mSetId = actor_data->mSetId; appen->mRoomNo = i_stage->getRoomNo(); dStage_actorCreate(actor_data, appen); } @@ -1495,7 +1531,7 @@ int dStage_tgscInfoInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { appen->mParameter = actor_data->mParameter; appen->mPos = actor_data->mSpawnPos; appen->mAngle = actor_data->mAngle; - appen->mEnemyNo = actor_data->mEnemyNo; + appen->mSetId = actor_data->mSetId; appen->mRoomNo = i_stage->getRoomNo(); appen->mScale[0] = actor_data->field_0x20; appen->mScale[1] = actor_data->field_0x21; @@ -1509,8 +1545,20 @@ int dStage_tgscInfoInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { } /* 8004259C-80042628 .text dStage_roomReadInit__FP11dStage_dt_cPviPv */ -int dStage_roomReadInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { - /* Nonmatching */ +int dStage_roomReadInit(dStage_dt_c* i_stage, void* i_data, int i_num, void* i_file) { + // logic is bad + dStage_nodeHeader* room_info = (dStage_nodeHeader*)(i_data); + roomRead_class* pRoom = (roomRead_class*)room_info->m_offset; + i_stage->setRoom(pRoom); + + roomRead_data_class ** ppEntry = pRoom->m_entries; + for (s32 i = 0; i < room_info->m_entryNum; i++, ppEntry++) { + // (u8*)(*ppEntry) = (u8*)(i_file) + (u32)ppEntry; + roomRead_data_class * pEntry = *ppEntry; + pEntry->field_0x4 = (u8*)(i_file) + ((u32)pEntry->field_0x4); + } + + return 1; } /* 80042628-80042658 .text dStage_roomRead_dt_c_GetReverbStage__FR14roomRead_classi */ @@ -1552,7 +1600,8 @@ int dStage_soundInfoInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { /* 80042814-80042848 .text dStage_eventInfoInit__FP11dStage_dt_cPviPv */ int dStage_eventInfoInit(dStage_dt_c* i_stage, void* i_data, int i_num, void*) { - /* Nonmatching */ + i_stage->setEventInfo((dStage_EventInfo_c*)((char*)i_data + 4)); + return 1; } /* 80042848-8004287C .text dStage_floorInfoInit__FP11dStage_dt_cPviPv */ @@ -2075,7 +2124,7 @@ int dStage_changeScene(int i_exitId, f32 speed, u32 mode, s8 room_no) { scls = dComIfGp_getStageSclsInfo(); } else { JUT_ASSERT(4192, 0 <= room_no && room_no < 64); - scls = dComIfGp_roomControl_getStatusRoomDt(room_no)->mRoomDt.getSclsInfo(); + scls = dComIfGp_roomControl_getStatusRoomDt(room_no)->getSclsInfo(); } if (scls == NULL) { diff --git a/src/f_op/f_op_actor.cpp b/src/f_op/f_op_actor.cpp index b7dc73c9a..ed0c9404e 100644 --- a/src/f_op/f_op_actor.cpp +++ b/src/f_op/f_op_actor.cpp @@ -4,64 +4,171 @@ // #include "f_op/f_op_actor.h" -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" +#include "f_op/f_op_actor_tag.h" +#include "f_op/f_op_draw_tag.h" +#include "f_pc/f_pc_leaf.h" +#include "d/d_demo.h" +#include "d/d_map.h" +#include "d/d_meter.h" +#include "d/d_com_inf_game.h" +#include "d/d_s_play.h" /* 8002330C-800233C4 .text __ct__10fopAc_ac_cFv */ fopAc_ac_c::fopAc_ac_c() { - /* Nonmatching */ } -/* 800233C4-80023400 .text __dt__20fopAc_cullSizeSphereFv */ -fopAc_cullSizeSphere::~fopAc_cullSizeSphere() { - /* Nonmatching */ -} - -/* 80023400-8002343C .text __dt__17fopAc_cullSizeBoxFv */ -fopAc_cullSizeBox::~fopAc_cullSizeBox() { - /* Nonmatching */ -} - -/* 8002343C-80023478 .text __dt__12dKy_tevstr_cFv */ -dKy_tevstr_c::~dKy_tevstr_c() { - /* Nonmatching */ -} - -/* 80023478-800234C0 .text __dt__11dEvt_info_cFv */ -dEvt_info_c::~dEvt_info_c() { - /* Nonmatching */ -} - -/* 800234C0-80023514 .text __dt__10fopAc_ac_cFv */ -fopAc_ac_c::~fopAc_ac_c() { - /* Nonmatching */ -} +int g_fopAc_type; +u32 fopAc_ac_c::stopStatus; /* 80023514-80023540 .text fopAc_IsActor__FPv */ -void fopAc_IsActor(void*) { - /* Nonmatching */ +s32 fopAc_IsActor(void* pProc) { + return fpcBs_Is_JustOfType(g_fopAc_type, ((fopAc_ac_c*)pProc)->mAcType); } /* 80023540-8002362C .text fopAc_Draw__FPv */ -void fopAc_Draw(void*) { - /* Nonmatching */ +s32 fopAc_Draw(void* pProc) { + fopAc_ac_c * actor = (fopAc_ac_c *)pProc; + s32 ret = TRUE; + + if (!dMenu_flag()) { + s32 moveApproval = dComIfGp_event_moveApproval(actor); + + if ((moveApproval == 2 || !fopAcM_checkStatus(actor, fopAc_ac_c::stopStatus)) && (!(fopAcM_checkStatus(actor, fopAcStts_CULL_e) && !fopAcM_cullingCheck(actor)) || !fopAcM_checkStatus(actor, fopAcStts_NODRAW_e))) { + fopAcM_OffCondition(actor, fopAcCnd_NODRAW_e); + ret = fpcLf_DrawMethod((leafdraw_method_class*)actor->mSubMtd, actor); + } else { + fopAcM_OnCondition(actor, fopAcCnd_NODRAW_e); + } + + fopAcM_OffStatus(actor, fopAcStts_NODRAW_e); + + if (dComIfGp_roomControl_getStayNo() >= 0 && fopAcM_checkStatus(actor, fopAcStts_SHOWMAP_e)) + dMap_c::drawActorPointMiniMap(actor); + } + + return ret; } +#define CHECK_FLOAT_CLASS(line, x) JUT_ASSERT(line, !(((sizeof(x) == sizeof(float)) ? __fpclassifyf((float)(x)) : __fpclassifyd((double)(x)) ) == 1)); +#define CHECK_VEC3_RANGE(line, v) JUT_ASSERT(line, -1.0e32f < v.x && v.x < 1.0e32f && -1.0e32f < v.y && v.y < 1.0e32f && -1.0e32f < v.z && v.z < 1.0e32f) + /* 8002362C-80023BDC .text fopAc_Execute__FPv */ -void fopAc_Execute(void*) { - /* Nonmatching */ +s32 fopAc_Execute(void* pProc) { + fopAc_ac_c * actor = (fopAc_ac_c *)pProc; + s32 ret = TRUE; + + CHECK_FLOAT_CLASS(0x27d, actor->current.pos.x); + CHECK_FLOAT_CLASS(0x27e, actor->current.pos.y); + CHECK_FLOAT_CLASS(0x27f, actor->current.pos.z); + CHECK_VEC3_RANGE(0x286, actor->current.pos); + + if (fopAcM_checkStatus(actor, fopAcStts_NOPAUSE_e) || (!dMenu_flag() && !dScnPly_ply_c::isPause())) { + actor->mEvtInfo.setCondition(dEvtCnd_NONE_e); + + s32 moveApproval = dComIfGp_event_moveApproval(actor); + + if ((moveApproval == 2 || moveApproval != 0 || !fopAcM_checkStatus(actor, fopAc_ac_c::stopStatus)) && (!fopAcM_checkStatus(actor, fopAcStts_NOEXEC_e) || !fopAcM_CheckCondition(actor, fopAcCnd_NODRAW_e))) { + fopAcM_OffCondition(actor, fopAcCnd_NOEXEC_e); + actor->next = actor->current; + ret = fpcMtd_Execute((process_method_class*)actor->mSubMtd, actor); + } else { + fopAcM_OnCondition(actor, fopAcCnd_NOEXEC_e); + } + + CHECK_FLOAT_CLASS(0x2b4, actor->current.pos.x); + CHECK_FLOAT_CLASS(0x2b5, actor->current.pos.y); + CHECK_FLOAT_CLASS(0x2b6, actor->current.pos.z); + CHECK_VEC3_RANGE(0x2bd, actor->current.pos); + } + + return ret; } /* 80023BDC-80023C30 .text fopAc_IsDelete__FPv */ -void fopAc_IsDelete(void*) { - /* Nonmatching */ +s32 fopAc_IsDelete(void* pProc) { + fopAc_ac_c * actor = (fopAc_ac_c *)pProc; + s32 ret = fpcMtd_IsDelete((process_method_class*)actor->mSubMtd, actor); + if (ret == 1) + fopDwTg_DrawQTo(&actor->mDwTg); + return ret; } /* 80023C30-80023CD4 .text fopAc_Delete__FPv */ -void fopAc_Delete(void*) { - /* Nonmatching */ +s32 fopAc_Delete(void* pProc) { + fopAc_ac_c * actor = (fopAc_ac_c *)pProc; + s32 ret = fpcMtd_Delete((process_method_class*)actor->mSubMtd, actor); + if (ret == 1) { + fopAcTg_ActorQTo(&actor->mAcTg); + fopDwTg_DrawQTo(&actor->mDwTg); + fopAcM_DeleteHeap(actor); + dDemo_actor_c *pDemoActor = dComIfGp_demo_getActor(actor->mDemoActorId); + if (pDemoActor != NULL) + pDemoActor->setActor(NULL); + mDoAud_seDeleteObject(&actor->mEyePos); + mDoAud_seDeleteObject(&actor->current.pos); + } + return ret; } /* 80023CD4-80023F78 .text fopAc_Create__FPv */ -void fopAc_Create(void*) { - /* Nonmatching */ +s32 fopAc_Create(void* pProc) { + fopAc_ac_c* actor = (fopAc_ac_c*)pProc; + + if (fpcM_IsFirstCreating(actor)) { + actor_process_profile_definition* profile = (actor_process_profile_definition*)fpcM_GetProfile(pProc); + actor->mAcType = fpcBs_MakeOfType(&g_fopAc_type); + actor->mSubMtd = profile->mSubMtd; + fopAcTg_Init(&actor->mAcTg, actor); + fopAcTg_ToActorQ(&actor->mAcTg); + fopDwTg_Init(&actor->mDwTg, actor); + actor->mStatus = profile->mStatus; + actor->mGroup = profile->mGroup; + actor->mCullType = profile->mCullType; + + fopAcM_prm_class* prm = fopAcM_GetAppend(actor); + if (prm != NULL) { + fopAcM_SetParam(actor, prm->mParameter); + actor->orig.pos = prm->mPos; + actor->orig.angle = prm->mAngle; + actor->shape_angle = prm->mAngle; + actor->mParentPcId = prm->mParentPcId; + actor->mSubtype = prm->mSubtype; + actor->mGbaName = prm->mGbaName; + actor->mScale.set(prm->mScale[0] * 0.1f, prm->mScale[1] * 0.1f, prm->mScale[2] * 0.1f); + actor->mSetId = prm->mSetId; + actor->orig.roomNo = prm->mRoomNo; + } + + actor->next = actor->orig; + actor->current = actor->orig; + actor->mEyePos = actor->orig.pos; + actor->mMaxFallSpeed = -100.0f; + actor->mAttentionInfo.mDistances[0] = 1; + actor->mAttentionInfo.mDistances[1] = 2; + actor->mAttentionInfo.mDistances[2] = 3; + actor->mAttentionInfo.mDistances[3] = 7; + actor->mAttentionInfo.mDistances[4] = 8; + actor->mAttentionInfo.mDistances[7] = 15; + actor->mAttentionInfo.mDistances[5] = 16; + actor->mAttentionInfo.mDistances[6] = 16; + actor->mAttentionInfo.mPosition = actor->orig.pos; + dKy_tevstr_init(&actor->mTevStr, actor->orig.roomNo, 0xFF); + } + + s32 status = fpcMtd_Create((process_method_class*)actor->mSubMtd, actor); + if (status == cPhs_COMPLEATE_e) { + s32 priority = fpcLf_GetPriority(actor); + fopDwTg_ToDrawQ(&actor->mDwTg, priority); + } + + return status; } + +actor_method_class g_fopAc_Method = { + (process_method_func)fopAc_Create, + (process_method_func)fopAc_Delete, + (process_method_func)fopAc_Execute, + (process_method_func)fopAc_IsDelete, + (process_method_func)fopAc_Draw, +}; diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp index fca2ed4e7..aeea87fe0 100644 --- a/src/f_op/f_op_actor_mng.cpp +++ b/src/f_op/f_op_actor_mng.cpp @@ -4,185 +4,506 @@ // #include "f_op/f_op_actor_mng.h" -#include "dolphin/types.h" +#include "f_op/f_op_actor.h" +#include "f_op/f_op_scene_mng.h" +#include "d/d_com_inf_game.h" +#include "d/d_item_data.h" +#include "d/d_stage.h" +#include "m_Do/m_Do_ext.h" +#include "m_Do/m_Do_lib.h" +#include "m_Do/m_Do_printf.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "JSystem/JKernel/JKRSolidHeap.h" +#include "JSystem/JUtility/JUTAssert.h" +#include "SSystem/SComponent/c_malloc.h" /* 80024060-80024104 .text fopAcM_setStageLayer__FPv */ -void fopAcM_setStageLayer(void*) { - /* Nonmatching */ +void fopAcM_setStageLayer(void* pProc) { + scene_class* stageProc = fopScnM_SearchByID(dStage_roomControl_c::getProcID()); + JUT_ASSERT(0xee, stageProc != 0); + fpcM_ChangeLayerID(pProc, fopScnM_LayerID(stageProc)); } /* 80024104-800241C0 .text fopAcM_setRoomLayer__FPvi */ -void fopAcM_setRoomLayer(void*, int) { - /* Nonmatching */ +void fopAcM_setRoomLayer(void* pProc, int room_no) { + if (room_no >= 0) { + scene_class* roomProc = fopScnM_SearchByID(dStage_roomControl_c::getStatusProcID(room_no)); + JUT_ASSERT(0x105, roomProc != 0); + fpcM_ChangeLayerID(pProc, fopScnM_LayerID(roomProc)); + } } /* 800241C0-80024230 .text fopAcM_SearchByID__FUiPP10fopAc_ac_c */ -void fopAcM_SearchByID(unsigned int, fopAc_ac_c**) { - /* Nonmatching */ +s32 fopAcM_SearchByID(unsigned int actorID, fopAc_ac_c** pDstActor) { + if (fpcM_IsCreating(actorID)) { + *pDstActor = NULL; + } else { + fopAc_ac_c *pActor = (fopAc_ac_c *) fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeByID, &actorID); + *pDstActor = pActor; + if (*pDstActor == NULL) + return 0; + } + + return 1; } /* 80024230-800242AC .text fopAcM_SearchByName__FsPP10fopAc_ac_c */ -void fopAcM_SearchByName(short, fopAc_ac_c**) { - /* Nonmatching */ +s32 fopAcM_SearchByName(s16 procName, fopAc_ac_c** pDstActor) { + *pDstActor = (fopAc_ac_c*) fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeForPName, &procName); + if (*pDstActor == NULL) { + return 0; + } else { + if (fpcM_IsCreating(fopAcM_GetID(*pDstActor))) { + *pDstActor = NULL; + } + return 1; + } } /* 800242AC-80024320 .text fopAcM_CreateAppend__Fv */ -void fopAcM_CreateAppend() { - /* Nonmatching */ +fopAcM_prm_class* fopAcM_CreateAppend() { + fopAcM_prm_class* params = (fopAcM_prm_class*) cMl::memalignB(-4, sizeof(fopAcM_prm_class)); + if (params != NULL) { + cLib_memSet(params, 0, sizeof(fopAcM_prm_class)); + params->mSetId = 0xFFFF; + params->mRoomNo = -1; + params->mScale[0] = 10; + params->mScale[1] = 10; + params->mScale[2] = 10; + params->mParentPcId = -1; + params->mSubtype = -1; + } + return params; } /* 80024320-80024474 .text createAppend__FUlP4cXyziP5csXyzP4cXyzScUi */ -void createAppend(unsigned long, cXyz*, int, csXyz*, cXyz*, signed char, unsigned int) { - /* Nonmatching */ +fopAcM_prm_class * createAppend(u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, s8 subtype, unsigned int parentPcId) { + fopAcM_prm_class * params = fopAcM_CreateAppend(); + if (params == NULL) + return NULL; + + if (pPos != NULL) + params->mPos = *pPos; + else + params->mPos = cXyz::Zero; + + params->mRoomNo = roomNo; + + if (pAngle != NULL) + params->mAngle = *pAngle; + else + params->mAngle = csXyz::Zero; + + if (pScale != NULL) { + params->mScale[0] = 10.0f * pScale->x; + params->mScale[1] = 10.0f * pScale->y; + params->mScale[2] = 10.0f * pScale->z; + } else { + params->mScale[0] = 10.0f; + params->mScale[1] = 10.0f; + params->mScale[2] = 10.0f; + } + + params->mParameter = parameter; + params->mParentPcId = parentPcId; + params->mSubtype = subtype; + + return params; } /* 80024474-80024478 .text fopAcM_Log__FP10fopAc_ac_cPc */ void fopAcM_Log(fopAc_ac_c*, char*) { - /* Nonmatching */ + /* Empty function */ } /* 80024478-800244B8 .text fopAcM_delete__FP10fopAc_ac_c */ -void fopAcM_delete(fopAc_ac_c*) { - /* Nonmatching */ +s32 fopAcM_delete(fopAc_ac_c* pActor) { + /* "Deleting Actor" */ + fopAcM_Log(pActor, "アクターの削除"); + return fpcM_Delete(pActor); } /* 800244B8-8002451C .text fopAcM_delete__FUi */ -void fopAcM_delete(unsigned int) { - /* Nonmatching */ +s32 fopAcM_delete(unsigned int actorID) { + fopAc_ac_c* pActor = fopAcM_SearchByID(actorID); + + if (pActor != NULL) { + /* "Deleting Actor" */ + fopAcM_Log(pActor, "アクターの削除"); + return fpcM_Delete(pActor); + } else { + return TRUE; + } } /* 8002451C-80024598 .text fopAcM_create__FsUlP4cXyziP5csXyzP4cXyzScPFPv_i */ -void fopAcM_create(short, unsigned long, cXyz*, int, csXyz*, cXyz*, signed char, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_create(s16 procName, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, s8 subtype, createFunc createFunc) { + fopAcM_prm_class* params = createAppend(parameter, pPos, roomNo, pAngle, pScale, subtype, 0xFFFFFFFF); + if (params == NULL) + return -1; + + return fpcM_Create(procName, createFunc, params); } /* 80024598-80024614 .text fopAcM_create__FPcUlP4cXyziP5csXyzP4cXyzPFPv_i */ -void fopAcM_create(char*, unsigned long, cXyz*, int, csXyz*, cXyz*, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_create(char* pProcNameString, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, createFunc createFunc) { + dStage_objectNameInf * nameInf = dStage_searchName(pProcNameString); + if (nameInf == NULL) + return -1; + + return fopAcM_create(nameInf->mProcName, parameter, pPos, roomNo, pAngle, pScale, nameInf->mSubtype, createFunc); } /* 80024614-8002468C .text fopAcM_fastCreate__FsUlP4cXyziP5csXyzP4cXyzScPFPv_iPv */ -void fopAcM_fastCreate(short, unsigned long, cXyz*, int, csXyz*, cXyz*, signed char, int (*)(void*), void*) { - /* Nonmatching */ +void* fopAcM_fastCreate(s16 procName, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, s8 subtype, createFunc createFunc, void* pUserData) { + fopAcM_prm_class* params = createAppend(parameter, pPos, roomNo, pAngle, pScale, subtype, 0xFFFFFFFF); + if (params == NULL) + return NULL; + + return fpcM_FastCreate(procName, createFunc, pUserData, params); } /* 8002468C-80024710 .text fopAcM_fastCreate__FPcUlP4cXyziP5csXyzP4cXyzPFPv_iPv */ -void fopAcM_fastCreate(char*, unsigned long, cXyz*, int, csXyz*, cXyz*, int (*)(void*), void*) { - /* Nonmatching */ +void* fopAcM_fastCreate(char* pProcNameString, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, createFunc createFunc, void *pUserData) { + dStage_objectNameInf * nameInf = dStage_searchName(pProcNameString); + if (nameInf == NULL) + return NULL; + + return fopAcM_fastCreate(nameInf->mProcName, parameter, pPos, roomNo, pAngle, pScale, nameInf->mSubtype, createFunc, pUserData); } /* 80024710-80024790 .text fopAcM_createChild__FsUiUlP4cXyziP5csXyzP4cXyzScPFPv_i */ -void fopAcM_createChild(short, unsigned int, unsigned long, cXyz*, int, csXyz*, cXyz*, signed char, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_createChild(s16 procName, unsigned int parentPcId, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, s8 subtype, createFunc createFunc) { + fopAcM_prm_class* params = createAppend(parameter, pPos, roomNo, pAngle, pScale, subtype, parentPcId); + if (params == NULL) + return -1; + + return fpcM_Create(procName, createFunc, params); } /* 80024790-80024814 .text fopAcM_createChild__FPcUiUlP4cXyziP5csXyzP4cXyzPFPv_i */ -void fopAcM_createChild(char*, unsigned int, unsigned long, cXyz*, int, csXyz*, cXyz*, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_createChild(char* pProcNameString, unsigned int parentPcId, u32 parameter, cXyz* pPos, int roomNo, csXyz* pAngle, cXyz* pScale, createFunc createFunc) { + dStage_objectNameInf * nameInf = dStage_searchName(pProcNameString); + if (nameInf == NULL) + return -1; + + return fopAcM_createChild(nameInf->mProcName, parentPcId, parameter, pPos, roomNo, pAngle, pScale, nameInf->mSubtype, createFunc); } /* 80024814-800249D4 .text fopAcM_createChildFromOffset__FsUiUlP4cXyziP5csXyzP4cXyzScPFPv_i */ -void fopAcM_createChildFromOffset(short, unsigned int, unsigned long, cXyz*, int, csXyz*, cXyz*, signed char, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_createChildFromOffset(s16 procName, unsigned int parentPcId, u32 parameter, cXyz* pPosOffs, int roomNo, csXyz* pAngleOffs, cXyz* pScale, s8 subtype, createFunc createFunc) { + fopAc_ac_c * pParent = fopAcM_SearchByID(parentPcId); + s16 parentAngleY = pParent->current.angle.y; + + cXyz posOffs; + if (pPosOffs == NULL) + posOffs = cXyz::Zero; + else + posOffs = *pPosOffs; + + csXyz angleOffs; + if (pAngleOffs == NULL) + angleOffs = csXyz::Zero; + else + angleOffs = *pAngleOffs; + + cXyz pos = pParent->current.pos; + + csXyz angle(angleOffs); + angle.y += parentAngleY; + + pos.x += posOffs.z * cM_ssin(parentAngleY) + posOffs.x * cM_scos(parentAngleY); + pos.y += posOffs.y; + pos.z += posOffs.z * cM_scos(parentAngleY) - posOffs.x * cM_ssin(parentAngleY); + + fopAcM_prm_class* params = createAppend(parameter, &pos, roomNo, &angle, pScale, subtype, parentPcId); + if (params == NULL) + return -1; + + return fpcM_Create(procName, createFunc, params); } /* 800249D4-80024B78 .text fopAcM_createChildFromOffset__FPcUiUlP4cXyziP5csXyzP4cXyzPFPv_i */ -void fopAcM_createChildFromOffset(char*, unsigned int, unsigned long, cXyz*, int, csXyz*, cXyz*, int (*)(void*)) { - /* Nonmatching */ +s32 fopAcM_createChildFromOffset(char* pProcNameString, unsigned int parentPcId, u32 parameter, cXyz* pPosOffs, int roomNo, csXyz* pAngleOffs, cXyz* pScale, createFunc createFunc) { + fopAc_ac_c * pParent = fopAcM_SearchByID(parentPcId); + s16 parentAngleY = pParent->current.angle.y; + + cXyz pos = pParent->current.pos; + + cXyz posOffs; + if (pPosOffs == NULL) + posOffs = cXyz::Zero; + else + posOffs = *pPosOffs; + + csXyz angleOffs; + if (pAngleOffs == NULL) + angleOffs = csXyz::Zero; + else + angleOffs = *pAngleOffs; + + csXyz angle(angleOffs); + angle.y += parentAngleY; + + pos.x += posOffs.z * cM_ssin(parentAngleY) + posOffs.x * cM_scos(parentAngleY); + pos.y += posOffs.y; + pos.z += posOffs.z * cM_scos(parentAngleY) - posOffs.x * cM_ssin(parentAngleY); + + return fopAcM_createChild(pProcNameString, parentPcId, parameter, &pos, roomNo, &angle, pScale, createFunc); } /* 80024B78-80024CA0 .text fopAcM_createHeap__FP10fopAc_ac_cUlUl */ -void fopAcM_createHeap(fopAc_ac_c*, unsigned long, unsigned long) { - /* Nonmatching */ +s32 fopAcM_createHeap(fopAc_ac_c* i_this, u32 size, u32 align) { + JUT_ASSERT(0x33b, i_this); + JUT_ASSERT(0x33c, i_this->heap == 0); + fopAcM_Log(i_this, "アクターのヒープの生成"); + if (align == 0) + align = 0x20; + + i_this->heap = mDoExt_createSolidHeapFromGameToCurrent(size, align); + if (i_this->heap == 0) { + OSReport_Error("fopAcM_createHeap 確保失敗\n"); + JUT_CONFIRM(0x34c, i_this->heap != 0); + return FALSE; + } + + return TRUE; } /* 80024CA0-80024CD4 .text fopAcM_adjustHeap__FP10fopAc_ac_c */ -void fopAcM_adjustHeap(fopAc_ac_c*) { - /* Nonmatching */ +void fopAcM_adjustHeap(fopAc_ac_c* i_this) { + mDoExt_restoreCurrentHeap(); + mDoExt_adjustSolidHeap(i_this->heap); } /* 80024CD4-80024D24 .text fopAcM_DeleteHeap__FP10fopAc_ac_c */ -void fopAcM_DeleteHeap(fopAc_ac_c*) { - /* Nonmatching */ +void fopAcM_DeleteHeap(fopAc_ac_c* i_this) { + /* "Destroying Actor Heap" */ + fopAcM_Log(i_this, "アクターのヒープの破壊"); + + if (i_this->heap != NULL) { + mDoExt_destroySolidHeap(i_this->heap); + i_this->heap = NULL; + } +} + +namespace fopAcM { + bool HeapAdjustEntry; + bool HeapAdjustVerbose; + bool HeapAdjustQuiet; } /* 80024D24-800250E4 .text fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl */ -void fopAcM_entrySolidHeap(fopAc_ac_c*, int (*)(fopAc_ac_c*), unsigned long) { - /* Nonmatching */ +bool fopAcM_entrySolidHeap(fopAc_ac_c* i_this, heapCallbackFunc createHeapCB, u32 maxHeapSize) { + const char * pProcNameString = fopAcM_getProcNameString(i_this); + JKRSolidHeap * heap = NULL; + + if (maxHeapSize != 0) { + heap = mDoExt_createSolidHeapFromGameToCurrent(maxHeapSize, 0x20); + if (heap != NULL) { + bool result = createHeapCB(i_this); + if (heap->getFreeSize() >= 0x20) + JKRHeap::alloc(0x20, 0, NULL); + + mDoExt_restoreCurrentHeap(); + + if (!result) { + if (!fopAcM::HeapAdjustQuiet) + OSReport_Error("見積もりヒープサイズ(%08x)で登録失敗しました。[%s]\n", maxHeapSize, pProcNameString); + mDoExt_destroySolidHeap(heap); + heap = NULL; + } else { + u32 allocSize = ALIGN_NEXT(heap->getSize() - heap->getFreeSize(), 0x20); + if (maxHeapSize < allocSize + 0x40) { + mDoExt_adjustSolidHeap(heap); + i_this->heap = heap; + return true; + } + + if (fopAcM::HeapAdjustVerbose) + OSReport_Warning("見積もりヒープサイズでは空きが多すぎます。 %08x %08x\n\x1b[m", allocSize, maxHeapSize); + } + } else { + if (!fopAcM::HeapAdjustQuiet) + OSReport_Warning("見積もりヒープが確保できませんでした。\n"); + } + } + + if (heap == NULL) { + heap = mDoExt_createSolidHeapFromGameToCurrent(-1, 0x20); + JUT_ASSERT(0x453, heap); + + bool result = createHeapCB(i_this); + mDoExt_restoreCurrentHeap(); + + if (!result) { + OSReport_Error("最大空きヒープサイズで登録失敗。[%s]\n", pProcNameString); + mDoExt_destroySolidHeap(heap); + return false; + } + + if (!fopAcM::HeapAdjustQuiet) + heap->getFreeSize(); + } + + if (heap != NULL) { + if (!fopAcM::HeapAdjustEntry) { + mDoExt_adjustSolidHeap(heap); + i_this->heap = heap; + return true; + } + + JKRSolidHeap * heap1 = NULL; + u32 allocSize = ALIGN_NEXT(heap->getSize() - heap->getFreeSize(), 0x10); + if (allocSize + 0x90 < mDoExt_getGameHeap()->getFreeSize()) + heap1 = mDoExt_createSolidHeapFromGameToCurrent(allocSize, 0x20); + + if (heap1 != NULL) { + if (heap1 < heap) { + mDoExt_destroySolidHeap(heap); + heap = NULL; + bool result = createHeapCB(i_this); + mDoExt_restoreCurrentHeap(); + JUT_ASSERT(0x48d, result != 0); + if (result == 0) { + OSReport_Error("ぴったりサイズで、登録失敗?(バグ)\n"); + mDoExt_destroySolidHeap(heap1); + heap1 = NULL; + } + } else { + mDoExt_restoreCurrentHeap(); + mDoExt_destroySolidHeap(heap1); + heap1 = NULL; + } + } + + if (heap1 != NULL) { + mDoExt_adjustSolidHeap(heap1); + i_this->heap = heap1; + return true; + } + + if (heap != NULL) { + mDoExt_adjustSolidHeap(heap); + i_this->heap = heap; + return true; + } + + OSReport_Error("ばぐばぐです\n"); + JUT_ASSERT(0x4b5, 0); + } + + OSReport_Error("fopAcM_entrySolidHeap だめでした [%s]\n", pProcNameString); + return false; } /* 800250E4-80025100 .text fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff */ -void fopAcM_setCullSizeBox(fopAc_ac_c*, float, float, float, float, float, float) { - /* Nonmatching */ +void fopAcM_setCullSizeBox(fopAc_ac_c* i_this, float minX, float minY, float minZ, float maxX, float maxY, float maxZ) { + i_this->mCull.mBox.mMin.x = minX; + i_this->mCull.mBox.mMin.y = minY; + i_this->mCull.mBox.mMin.z = minZ; + i_this->mCull.mBox.mMax.x = maxX; + i_this->mCull.mBox.mMax.y = maxY; + i_this->mCull.mBox.mMax.z = maxZ; } /* 80025100-80025114 .text fopAcM_setCullSizeSphere__FP10fopAc_ac_cffff */ -void fopAcM_setCullSizeSphere(fopAc_ac_c*, float, float, float, float) { - /* Nonmatching */ +void fopAcM_setCullSizeSphere(fopAc_ac_c* i_this, float x, float y, float z, float r) { + i_this->mCull.mSphere.mCenter.x = x; + i_this->mCull.mSphere.mCenter.y = y; + i_this->mCull.mSphere.mCenter.z = z; + i_this->mCull.mSphere.mRadius = r; } /* 80025114-80025144 .text fopAcM_addAngleY__FP10fopAc_ac_css */ -void fopAcM_addAngleY(fopAc_ac_c*, short, short) { - /* Nonmatching */ +bool fopAcM_addAngleY(fopAc_ac_c* i_this, short target, short step) { + return cLib_chaseAngleS(&i_this->current.angle.y, target, step); } /* 80025144-800251A0 .text fopAcM_calcSpeed__FP10fopAc_ac_c */ -void fopAcM_calcSpeed(fopAc_ac_c*) { - /* Nonmatching */ +void fopAcM_calcSpeed(fopAc_ac_c* i_this) { + f32 speedF = fopAcM_GetSpeedF(i_this); + f32 gravity = fopAcM_GetGravity(i_this); + f32 xSpeed = speedF * cM_ssin(i_this->current.angle.y); + f32 ySpeed = i_this->speed.y + gravity; + f32 zSpeed = speedF * cM_scos(i_this->current.angle.y); + + if (ySpeed < fopAcM_GetMaxFallSpeed(i_this)) + ySpeed = fopAcM_GetMaxFallSpeed(i_this); + + fopAcM_SetSpeed(i_this, xSpeed, ySpeed, zSpeed); } /* 800251A0-8002520C .text fopAcM_posMove__FP10fopAc_ac_cPC4cXyz */ -void fopAcM_posMove(fopAc_ac_c*, const cXyz*) { - /* Nonmatching */ +void fopAcM_posMove(fopAc_ac_c* i_this, const cXyz* move) { + i_this->current.pos.x += i_this->speed.x; + i_this->current.pos.y += i_this->speed.y; + i_this->current.pos.z += i_this->speed.z; + + if (move != NULL) { + i_this->current.pos.x += move->x; + i_this->current.pos.y += move->y; + i_this->current.pos.z += move->z; + } } /* 8002520C-80025250 .text fopAcM_posMoveF__FP10fopAc_ac_cPC4cXyz */ -void fopAcM_posMoveF(fopAc_ac_c*, const cXyz*) { - /* Nonmatching */ +void fopAcM_posMoveF(fopAc_ac_c* i_this, const cXyz* move) { + fopAcM_calcSpeed(i_this); + fopAcM_posMove(i_this, move); } /* 80025250-80025278 .text fopAcM_searchActorAngleY__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_searchActorAngleY(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +s16 fopAcM_searchActorAngleY(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + return cLib_targetAngleY(&i_this->current.pos, &i_other->current.pos); } /* 80025278-800252BC .text fopAcM_seenActorAngleY__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_seenActorAngleY(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +s32 fopAcM_seenActorAngleY(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + s16 angleY = cLib_targetAngleY(&i_this->current.pos, &i_other->current.pos); + return abs((s16)(angleY - i_this->shape_angle.y)); } /* 800252BC-80025370 .text fopAcM_searchActorDistance__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_searchActorDistance(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +f32 fopAcM_searchActorDistance(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + cXyz delta = i_other->current.pos - i_this->current.pos; + return delta.abs(); } /* 80025370-800253C0 .text fopAcM_searchActorDistance2__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_searchActorDistance2(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +f32 fopAcM_searchActorDistance2(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + cXyz delta = i_other->current.pos - i_this->current.pos; + return delta.abs2(); } /* 800253C0-80025470 .text fopAcM_searchActorDistanceXZ__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_searchActorDistanceXZ(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +f32 fopAcM_searchActorDistanceXZ(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + cXyz delta = i_other->current.pos - i_this->current.pos; + return delta.absXZ(); } /* 80025470-800254BC .text fopAcM_searchActorDistanceXZ2__FP10fopAc_ac_cP10fopAc_ac_c */ -void fopAcM_searchActorDistanceXZ2(fopAc_ac_c*, fopAc_ac_c*) { - /* Nonmatching */ +f32 fopAcM_searchActorDistanceXZ2(fopAc_ac_c* i_this, fopAc_ac_c* i_other) { + cXyz delta = i_other->current.pos - i_this->current.pos; + return delta.abs2XZ(); } /* 800254BC-800255B4 .text fopAcM_rollPlayerCrash__FP10fopAc_ac_cfUl */ -void fopAcM_rollPlayerCrash(fopAc_ac_c*, float, unsigned long) { +s32 fopAcM_rollPlayerCrash(fopAc_ac_c*, float, u32) { /* Nonmatching */ } /* 800255B4-80025660 .text fopAcM_checkCullingBox__FPA4_fffffff */ -void fopAcM_checkCullingBox(float(*)[4], float, float, float, float, float, float) { - /* Nonmatching */ +s32 fopAcM_checkCullingBox(Mtx pMtx, float x0, float y0, float z0, float x1, float y1, float z1) { + Vec p0 = { x0, y0, z0 }; + Vec p1 = { x1, y1, z1 }; + Mtx viewMtx; + MTXConcat(j3dSys.mViewMtx, pMtx, viewMtx); + return mDoLib_clipper::clip(viewMtx, &p1, &p0) != 0; } /* 80025660-800259A8 .text fopAcM_cullingCheck__FP10fopAc_ac_c */ -void fopAcM_cullingCheck(fopAc_ac_c*) { +s32 fopAcM_cullingCheck(fopAc_ac_c*) { /* Nonmatching */ } @@ -212,7 +533,7 @@ void fopAcM_orderZHintEvent(fopAc_ac_c*, fopAc_ac_c*) { } /* 80025B3C-80025B8C .text fopAcM_orderSpeakEvent__FP10fopAc_ac_c */ -void fopAcM_orderSpeakEvent(fopAc_ac_c*) { +s32 fopAcM_orderSpeakEvent(fopAc_ac_c*) { /* Nonmatching */ } @@ -227,37 +548,37 @@ void fopAcM_orderCatchEvent(fopAc_ac_c*, fopAc_ac_c*) { } /* 80025C34-80025CC8 .text fopAcM_orderOtherEvent2__FP10fopAc_ac_cPcUsUs */ -void fopAcM_orderOtherEvent2(fopAc_ac_c*, char*, unsigned short, unsigned short) { +s32 fopAcM_orderOtherEvent2(fopAc_ac_c*, char*, u16, u16) { /* Nonmatching */ } /* 80025CC8-80025D28 .text fopAcM_orderChangeEvent__FP10fopAc_ac_cPcUsUs */ -void fopAcM_orderChangeEvent(fopAc_ac_c*, char*, unsigned short, unsigned short) { +void fopAcM_orderChangeEvent(fopAc_ac_c*, char*, u16, u16) { /* Nonmatching */ } /* 80025D28-80025D94 .text fopAcM_orderChangeEvent__FP10fopAc_ac_cP10fopAc_ac_cPcUsUs */ -void fopAcM_orderChangeEvent(fopAc_ac_c*, fopAc_ac_c*, char*, unsigned short, unsigned short) { +void fopAcM_orderChangeEvent(fopAc_ac_c*, fopAc_ac_c*, char*, u16, u16) { /* Nonmatching */ } /* 80025D94-80025E1C .text fopAcM_orderChangeEventId__FP10fopAc_ac_csUsUs */ -void fopAcM_orderChangeEventId(fopAc_ac_c*, short, unsigned short, unsigned short) { +s32 fopAcM_orderChangeEventId(fopAc_ac_c*, short, u16, u16) { /* Nonmatching */ } /* 80025E1C-80025EA4 .text fopAcM_orderChangeEventId__FP10fopAc_ac_cP10fopAc_ac_csUsUs */ -void fopAcM_orderChangeEventId(fopAc_ac_c*, fopAc_ac_c*, short, unsigned short, unsigned short) { +void fopAcM_orderChangeEventId(fopAc_ac_c*, fopAc_ac_c*, short, u16, u16) { /* Nonmatching */ } /* 80025EA4-80025F3C .text fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs */ -void fopAcM_orderOtherEventId(fopAc_ac_c*, short, unsigned char, unsigned short, unsigned short, unsigned short) { +s32 fopAcM_orderOtherEventId(fopAc_ac_c*, short, unsigned char, u16, u16, u16) { /* Nonmatching */ } /* 80025F3C-80025F9C .text fopAcM_orderPotentialEvent__FP10fopAc_ac_cUsUsUs */ -void fopAcM_orderPotentialEvent(fopAc_ac_c*, unsigned short, unsigned short, unsigned short) { +s32 fopAcM_orderPotentialEvent(fopAc_ac_c*, u16, u16, u16) { /* Nonmatching */ } @@ -272,27 +593,27 @@ void fopAcM_orderTreasureEvent(fopAc_ac_c*, fopAc_ac_c*) { } /* 80026044-80026074 .text fopAcM_getTalkEventPartner__FP10fopAc_ac_c */ -void fopAcM_getTalkEventPartner(fopAc_ac_c*) { +fopAc_ac_c* fopAcM_getTalkEventPartner(fopAc_ac_c*) { /* Nonmatching */ } /* 80026074-800260A4 .text fopAcM_getItemEventPartner__FP10fopAc_ac_c */ -void fopAcM_getItemEventPartner(fopAc_ac_c*) { +fopAc_ac_c* fopAcM_getItemEventPartner(fopAc_ac_c*) { /* Nonmatching */ } /* 800260A4-80026118 .text fopAcM_getEventPartner__FP10fopAc_ac_c */ -void fopAcM_getEventPartner(fopAc_ac_c*) { +fopAc_ac_c* fopAcM_getEventPartner(fopAc_ac_c*) { /* Nonmatching */ } /* 80026118-800261E8 .text fopAcM_createItemForPresentDemo__FP4cXyziUciiP5csXyzP4cXyz */ -void fopAcM_createItemForPresentDemo(cXyz*, int, unsigned char, int, int, csXyz*, cXyz*) { +s32 fopAcM_createItemForPresentDemo(cXyz*, int, unsigned char, int, int, csXyz*, cXyz*) { /* Nonmatching */ } /* 800261E8-800262B4 .text fopAcM_createItemForTrBoxDemo__FP4cXyziiiP5csXyzP4cXyz */ -void fopAcM_createItemForTrBoxDemo(cXyz*, int, int, int, csXyz*, cXyz*) { +s32 fopAcM_createItemForTrBoxDemo(cXyz*, int, int, int, csXyz*, cXyz*) { /* Nonmatching */ } @@ -307,7 +628,7 @@ void fopAcM_createRaceItemFromTable(cXyz*, int, int, int, csXyz*, cXyz*, int) { } /* 800267C8-8002688C .text fopAcM_createShopItem__FP4cXyziP5csXyziP4cXyzPFPv_i */ -void fopAcM_createShopItem(cXyz*, int, csXyz*, int, cXyz*, int (*)(void*)) { +void fopAcM_createShopItem(cXyz*, int, csXyz*, int, cXyz*, createFunc createFunc) { /* Nonmatching */ } @@ -317,17 +638,17 @@ void fopAcM_createRaceItem(cXyz*, int, int, csXyz*, int, cXyz*, int) { } /* 80026980-80026A68 .text fopAcM_createDemoItem__FP4cXyziiP5csXyziP4cXyzUc */ -void fopAcM_createDemoItem(cXyz*, int, int, csXyz*, int, cXyz*, unsigned char) { +s32 fopAcM_createDemoItem(cXyz*, int, int, csXyz*, int, cXyz*, unsigned char) { /* Nonmatching */ } /* 80026A68-80026ADC .text fopAcM_createItemForBoss__FP4cXyziiP5csXyzP4cXyzi */ -void fopAcM_createItemForBoss(cXyz*, int, int, csXyz*, cXyz*, int) { +s32 fopAcM_createItemForBoss(cXyz*, int, int, csXyz*, cXyz*, int) { /* Nonmatching */ } /* 80026ADC-80026C90 .text fopAcM_createItem__FP4cXyziiiiP5csXyziP4cXyz */ -void fopAcM_createItem(cXyz*, int, int, int, int, csXyz*, int, cXyz*) { +s32 fopAcM_createItem(cXyz*, int, int, int, int, csXyz*, int, cXyz*) { /* Nonmatching */ } @@ -337,17 +658,17 @@ void fopAcM_fastCreateItem2(cXyz*, int, int, int, int, csXyz*, int, cXyz*) { } /* 80026E5C-80026F5C .text fopAcM_createItemForKP2__FP4cXyziiP5csXyzP4cXyzfffUs */ -void fopAcM_createItemForKP2(cXyz*, int, int, csXyz*, cXyz*, float, float, float, unsigned short) { +void fopAcM_createItemForKP2(cXyz*, int, int, csXyz*, cXyz*, float, float, float, u16) { /* Nonmatching */ } /* 80026F5C-80026F98 .text fopAcM_createItemForSimpleDemo__FP4cXyziiP5csXyzP4cXyzff */ -void fopAcM_createItemForSimpleDemo(cXyz*, int, int, csXyz*, cXyz*, float, float) { +void* fopAcM_createItemForSimpleDemo(cXyz*, int, int, csXyz*, cXyz*, float, float) { /* Nonmatching */ } /* 80026F98-80027254 .text fopAcM_fastCreateItem__FP4cXyziiP5csXyzP4cXyzfffiPFPv_i */ -void fopAcM_fastCreateItem(cXyz*, int, int, csXyz*, cXyz*, float, float, float, int, int (*)(void*)) { +void fopAcM_fastCreateItem(cXyz*, int, int, csXyz*, cXyz*, float, float, float, int, createFunc createFunc) { /* Nonmatching */ } @@ -362,12 +683,12 @@ void fopAcM_createStealItem(cXyz*, int, int, csXyz*, int) { } /* 800273D4-8002777C .text fopAcM_createItemFromEnemyTable__FUsiiP4cXyzP5csXyz */ -void fopAcM_createItemFromEnemyTable(unsigned short, int, int, cXyz*, csXyz*) { +void fopAcM_createItemFromEnemyTable(u16, int, int, cXyz*, csXyz*) { /* Nonmatching */ } /* 8002777C-800278D8 .text fopAcM_createIball__FP4cXyziiP5csXyzi */ -void fopAcM_createIball(cXyz*, int, int, csXyz*, int) { +s32 fopAcM_createIball(cXyz*, int, int, csXyz*, int) { /* Nonmatching */ } @@ -382,12 +703,12 @@ void enemySearchJugge(void*, void*) { } /* 80027970-80027A9C .text fopAcM_myRoomSearchEnemy__FSc */ -void fopAcM_myRoomSearchEnemy(signed char) { +fopAc_ac_c* fopAcM_myRoomSearchEnemy(signed char) { /* Nonmatching */ } /* 80027A9C-80027B24 .text fopAcM_createDisappear__FP10fopAc_ac_cP4cXyzUcUcUc */ -void fopAcM_createDisappear(fopAc_ac_c*, cXyz*, unsigned char, unsigned char, unsigned char) { +s32 fopAcM_createDisappear(fopAc_ac_c*, cXyz*, unsigned char, unsigned char, unsigned char) { /* Nonmatching */ } @@ -412,38 +733,39 @@ void fopAcM_viewCutoffCheck(fopAc_ac_c*, float) { } /* 800281D8-800282F8 .text fopAcM_otoCheck__FP10fopAc_ac_cf */ -void fopAcM_otoCheck(fopAc_ac_c*, float) { +s32 fopAcM_otoCheck(fopAc_ac_c*, float) { /* Nonmatching */ } /* 800282F8-8002833C .text fopAcM_getProcNameString__FP10fopAc_ac_c */ -void fopAcM_getProcNameString(fopAc_ac_c*) { - /* Nonmatching */ +const char * fopAcM_getProcNameString(fopAc_ac_c* i_this) { + const char * pProcNameString = dStage_getName2(fpcM_GetProfName(i_this), i_this->mSubtype); + if (pProcNameString != NULL) + return pProcNameString; + return "UNKOWN"; } /* 8002833C-80028410 .text fopAcM_findObjectCB__FP10fopAc_ac_cPv */ -void fopAcM_findObjectCB(fopAc_ac_c*, void*) { +fopAc_ac_c* fopAcM_findObjectCB(fopAc_ac_c*, void*) { /* Nonmatching */ } /* 80028410-80028448 .text fopAcM_searchFromName__FPcUlUl */ -void fopAcM_searchFromName(char*, unsigned long, unsigned long) { +fopAc_ac_c* fopAcM_searchFromName(char* pProcName, u32 paramMask, u32 parameter) { /* Nonmatching */ } /* 80028448-80028560 .text fopAcM_getWaterY__FPC4cXyzPf */ -void fopAcM_getWaterY(const cXyz*, float*) { - /* Nonmatching */ -} - -/* 80028560-80028684 .text __dt__11dBgS_WtrChkFv */ -dBgS_WtrChk::~dBgS_WtrChk() { +s32 fopAcM_getWaterY(const cXyz*, float*) { /* Nonmatching */ } /* 80028684-80028724 .text fopAcM_setGbaName__FP10fopAc_ac_cUcUcUc */ -void fopAcM_setGbaName(fopAc_ac_c*, unsigned char, unsigned char, unsigned char) { - /* Nonmatching */ +void fopAcM_setGbaName(fopAc_ac_c* i_this, u8 itemNo, u8 gbaName0, u8 gbaName1) { + if (dComIfGs_checkGetItem(itemNo) || (itemNo == BOW && (dComIfGs_checkGetItem(MAGIC_ARROW) || dComIfGs_checkGetItem(LIGHT_ARROW))) || (itemNo == MAGIC_ARROW && dComIfGs_checkGetItem(LIGHT_ARROW))) + i_this->mGbaName = gbaName1; + else + i_this->mGbaName = gbaName0; } /* 80028724-800287D8 .text fpoAcM_absolutePos__FP10fopAc_ac_cP4cXyzP4cXyz */ @@ -456,67 +778,20 @@ void fpoAcM_relativePos(fopAc_ac_c*, cXyz*, cXyz*) { /* Nonmatching */ } -/* 8002889C-80028998 .text __dt__14dBgS_SplGrpChkFv */ -dBgS_SplGrpChk::~dBgS_SplGrpChk() { - /* Nonmatching */ -} - /* 80029178-80029198 .text __ct__20fopAc_cullSizeSphereF4cXyzf */ -fopAc_cullSizeSphere::fopAc_cullSizeSphere(cXyz, float) { - /* Nonmatching */ +fopAc_cullSizeSphere::fopAc_cullSizeSphere(cXyz p, float r) { + mCenter = p; + mRadius = r; } /* 80029198-800291CC .text __ct__17fopAc_cullSizeBoxFRC17fopAc_cullSizeBox */ -fopAc_cullSizeBox::fopAc_cullSizeBox(const fopAc_cullSizeBox&) { - /* Nonmatching */ +fopAc_cullSizeBox::fopAc_cullSizeBox(const fopAc_cullSizeBox& box) { + mMin = box.mMin; + mMax = box.mMax; } /* 800291CC-80029200 .text __ct__17fopAc_cullSizeBoxF4cXyz4cXyz */ -fopAc_cullSizeBox::fopAc_cullSizeBox(cXyz, cXyz) { - /* Nonmatching */ -} - -/* 80029200-8002923C .text __dt__5l_HIOFv */ -l_HIO::~l_HIO() { - /* Nonmatching */ -} - -/* 8002923C-80029244 .text @16@__dt__11dBgS_WtrChkFv */ -void @16@__dt__11dBgS_WtrChkFv { - /* Nonmatching */ -} - -/* 80029244-8002924C .text @48@__dt__11dBgS_WtrChkFv */ -void @48@__dt__11dBgS_WtrChkFv { - /* Nonmatching */ -} - -/* 8002924C-80029254 .text @36@__dt__11dBgS_WtrChkFv */ -void @36@__dt__11dBgS_WtrChkFv { - /* Nonmatching */ -} - -/* 80029254-8002925C .text @16@__dt__14dBgS_SplGrpChkFv */ -void @16@__dt__14dBgS_SplGrpChkFv { - /* Nonmatching */ -} - -/* 8002925C-80029264 .text @48@__dt__14dBgS_SplGrpChkFv */ -void @48@__dt__14dBgS_SplGrpChkFv { - /* Nonmatching */ -} - -/* 80029264-8002926C .text @36@__dt__14dBgS_SplGrpChkFv */ -void @36@__dt__14dBgS_SplGrpChkFv { - /* Nonmatching */ -} - -/* 8002926C-80029270 .text onFrollCrashFlg__9daPy_py_cFUl */ -void daPy_py_c::onFrollCrashFlg(unsigned long) { - /* Nonmatching */ -} - -/* 80029270-80029278 .text getGrabActorID__9daPy_py_cCFv */ -void daPy_py_c::getGrabActorID() const { - /* Nonmatching */ +fopAc_cullSizeBox::fopAc_cullSizeBox(cXyz min, cXyz max) { + mMin = min; + mMax = max; } diff --git a/src/f_op/f_op_camera.cpp b/src/f_op/f_op_camera.cpp index 7463b4018..ec8416fa4 100644 --- a/src/f_op/f_op_camera.cpp +++ b/src/f_op/f_op_camera.cpp @@ -4,29 +4,78 @@ // #include "f_op/f_op_camera.h" +#include "f_op/f_op_draw_tag.h" #include "dolphin/types.h" +#include "d/d_meter.h" +#include "d/d_s_play.h" /* 80029278-800292CC .text fopCam_Draw__FP12camera_class */ -void fopCam_Draw(camera_class*) { - /* Nonmatching */ +s32 fopCam_Draw(camera_class* camera) { + s32 cam_proc = 1; + + if (!dMenu_flag()) { + cam_proc = fpcLf_DrawMethod(camera->mpMtd, camera); + } + return cam_proc; } /* 800292CC-80029328 .text fopCam_Execute__FP12camera_class */ -void fopCam_Execute(camera_class*) { - /* Nonmatching */ +s32 fopCam_Execute(camera_class* camera) { + int ret; + + if (!dMenu_flag() && !dScnPly_ply_c::isPause()) { + ret = fpcMtd_Execute((process_method_class*)camera->mpMtd, camera); + } + + return ret; } /* 80029328-8002937C .text fopCam_IsDelete__FP12camera_class */ -void fopCam_IsDelete(camera_class*) { - /* Nonmatching */ +s32 fopCam_IsDelete(camera_class* camera) { + s32 ret = fpcMtd_IsDelete((process_method_class*)camera->mpMtd, camera); + if (ret == 1) + fopDwTg_DrawQTo(&camera->mDwTg); + return ret; } /* 8002937C-800293D0 .text fopCam_Delete__FP12camera_class */ -void fopCam_Delete(camera_class*) { - /* Nonmatching */ +s32 fopCam_Delete(camera_class* camera) { + s32 ret = fpcMtd_Delete((process_method_class*)camera->mpMtd, camera); + if (ret == 1) + fopDwTg_DrawQTo(&camera->mDwTg); + return ret; } /* 800293D0-80029468 .text fopCam_Create__FPv */ -void fopCam_Create(void*) { - /* Nonmatching */ +s32 fopCam_Create(void* pProc) { + camera_class* camera = (camera_class*)pProc; + + if (fpcM_IsFirstCreating(pProc)) { + camera_process_profile_definition* profile = + (camera_process_profile_definition*)fpcM_GetProfile(pProc); + camera->mpMtd = profile->mSubMtd; + + fopDwTg_Init(&camera->mDwTg, camera); + u32* append = (u32*)fpcM_GetAppend(camera); + + if (append) { + fpcM_SetParam(camera, *append); + } + } + + s32 ret = fpcMtd_Create(&camera->mpMtd->mBase, camera); + if (ret == cPhs_COMPLEATE_e) { + s32 priority = fpcLf_GetPriority(camera); + fopDwTg_ToDrawQ(&camera->mDwTg, priority); + } + + return ret; } + +leafdraw_method_class g_fopCam_Method = { + (process_method_func)fopCam_Create, + (process_method_func)fopCam_Delete, + (process_method_func)fopCam_Execute, + (process_method_func)fopCam_IsDelete, + (process_method_func)fopCam_Draw, +}; diff --git a/src/f_op/f_op_kankyo.cpp b/src/f_op/f_op_kankyo.cpp index bd49d96a0..983496604 100644 --- a/src/f_op/f_op_kankyo.cpp +++ b/src/f_op/f_op_kankyo.cpp @@ -29,7 +29,7 @@ static int fopKy_Execute(void* i_this) { int ret; kankyo_class* _this = (kankyo_class*)i_this; - if (dScnPly_ply_c::isPause() && (!dMenu_flag() || fpcM_GetName(i_this) == PROC_ENVSE || fpcM_GetName(i_this) == PROC_LEVEL_SE)) { + if (!dScnPly_ply_c::isPause() && (!dMenu_flag() || fpcM_GetName(i_this) == PROC_ENVSE || fpcM_GetName(i_this) == PROC_LEVEL_SE)) { ret = fpcMtd_Execute(&_this->mSubMtd->mBase, i_this); } diff --git a/src/f_op/f_op_msg.cpp b/src/f_op/f_op_msg.cpp index 36a80b7a0..1a2783dfa 100644 --- a/src/f_op/f_op_msg.cpp +++ b/src/f_op/f_op_msg.cpp @@ -10,17 +10,17 @@ #include "d/d_s_play.h" /* 8002A688-8002A6B0 .text fopMsg_Draw__FPv */ -static int fopMsg_Draw(void* i_this) { +int fopMsg_Draw(void* i_this) { msg_class* _this = static_cast(i_this); return fpcLf_DrawMethod(_this->mSubMtd, i_this); } /* 8002A6B0-8002A6E8 .text fopMsg_Execute__FPv */ -static int fopMsg_Execute(void* i_this) { +int fopMsg_Execute(void* i_this) { msg_class* _this = static_cast(i_this); int stat = 1; - if (dScnPly_ply_c::isPause()) { + if (!dScnPly_ply_c::isPause()) { stat = fpcMtd_Execute(&_this->mSubMtd->mBase, i_this); } @@ -28,7 +28,7 @@ static int fopMsg_Execute(void* i_this) { } /* 8002A6E8-8002A73C .text fopMsg_IsDelete__FPv */ -static int fopMsg_IsDelete(void* i_this) { +int fopMsg_IsDelete(void* i_this) { msg_class* _this = static_cast(i_this); int stat = fpcMtd_IsDelete(&_this->mSubMtd->mBase, i_this); @@ -40,7 +40,7 @@ static int fopMsg_IsDelete(void* i_this) { } /* 8002A73C-8002A788 .text fopMsg_Delete__FPv */ -static int fopMsg_Delete(void* i_this) { +int fopMsg_Delete(void* i_this) { msg_class* _this = static_cast(i_this); int stat = fpcMtd_Delete(&_this->mSubMtd->mBase, i_this); diff --git a/src/f_pc/f_pc_base.cpp b/src/f_pc/f_pc_base.cpp index 5d79c72f4..bc742bfa7 100644 --- a/src/f_pc/f_pc_base.cpp +++ b/src/f_pc/f_pc_base.cpp @@ -81,12 +81,12 @@ s32 fpcBs_Delete(base_process_class* i_proc) { } /* 8003CA60-8003CB5C .text fpcBs_Create__FsUiPv */ -base_process_class* fpcBs_Create(s16 i_procTypeID, unsigned int i_procID, void* i_data) { +base_process_class* fpcBs_Create(s16 i_profName, unsigned int i_procID, void* i_data) { process_profile_definition* procProfDef; base_process_class* procClass; u32 size; - procProfDef = (process_profile_definition*)fpcPf_Get(i_procTypeID); + procProfDef = (process_profile_definition*)fpcPf_Get(i_profName); size = procProfDef->mSize + procProfDef->mSizeOther; procClass = (base_process_class*)cMl::memalignB(-4, size); if (procClass == NULL) { @@ -101,7 +101,7 @@ base_process_class* fpcBs_Create(s16 i_procTypeID, unsigned int i_procID, void* procClass->mInitState = 0; procClass->mUnk0 = 0; procClass->mBsPcId = i_procID; - procClass->mBsTypeId = i_procTypeID; + procClass->mProfName = i_profName; procClass->mBsType = fpcBs_MakeOfType(&g_fpcBs_type); procClass->mProcName = procProfDef->mProcName; fpcPause_Init(procClass); diff --git a/src/f_pc/f_pc_deletor.cpp b/src/f_pc/f_pc_deletor.cpp index 3f9959819..a7872bb28 100644 --- a/src/f_pc/f_pc_deletor.cpp +++ b/src/f_pc/f_pc_deletor.cpp @@ -19,13 +19,13 @@ BOOL fpcDt_IsComplete() { /* 8003D2A0-8003D314 .text fpcDt_deleteMethod__FP18base_process_class */ s32 fpcDt_deleteMethod(base_process_class* i_proc) { layer_class* layer = i_proc->mDtTg.mpLayer; - s16 typeID = i_proc->mBsTypeId; + s16 profName = i_proc->mProfName; fpcLy_SetCurrentLayer(layer); fpcLnTg_QueueTo(&i_proc->mLnTg); if (fpcBs_Delete(i_proc) == 1) { fpcLy_DeletedMesg(layer); - fpcLd_Free(typeID); + fpcLd_Free(profName); return 1; } else { return 0;