diff options
| author | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2025-04-13 23:54:57 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-13 20:54:57 -0700 |
| commit | f891887626e36b991b0e8afd4e6b995c3d1a4540 (patch) | |
| tree | 639a8bbd0062ca6f0d8ae6775e2afb06b2b096bf /include | |
| parent | 3df5c7bb42c1b886024b254fec28e5f98310b630 (diff) | |
d_stage cleanup (#2392)
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/d_com_inf_game.h | 5 | ||||
| -rw-r--r-- | include/d/d_kankyo_data.h | 8 | ||||
| -rw-r--r-- | include/d/d_stage.h | 895 | ||||
| -rw-r--r-- | include/f_op/f_op_actor_mng.h | 29 | ||||
| -rw-r--r-- | include/f_op/f_op_camera_mng.h | 4 |
5 files changed, 606 insertions, 335 deletions
diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index 211eb27ece..275b147909 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -8,6 +8,7 @@ #include "d/d_event.h" #include "d/d_event_manager.h" #include "d/d_particle.h" +#include "d/d_save.h" #include "f_op/f_op_camera_mng.h" #include "m_Do/m_Do_controller_pad.h" #include "global.h" @@ -3338,7 +3339,7 @@ inline int dComIfGp_roomControl_loadRoom(int param_0, u8* param_1, bool param_2) } inline void dComIfGp_roomControl_setStayNo(int stayNo) { - g_dComIfG_gameInfo.play.getRoomControl()->setStayNo(stayNo); + g_dComIfG_gameInfo.play.mRoomControl.setStayNo(stayNo); } inline void dComIfGp_roomControl_setZoneNo(int roomNo, int zoneNo) { @@ -3370,7 +3371,7 @@ inline void dComIfGp_roomControl_setStatusFlag(int i_roomNo, u8 flag) { } inline void dComIfGp_roomControl_zoneCountCheck(int i_roomNo) { - g_dComIfG_gameInfo.play.mRoomControl.zoneCountCheck(i_roomNo); + g_dComIfG_gameInfo.play.getRoomControl()->zoneCountCheck(i_roomNo); } inline u8 dComIfGp_getRStatus() { diff --git a/include/d/d_kankyo_data.h b/include/d/d_kankyo_data.h index 748e13b3a2..69cf99a0e9 100644 --- a/include/d/d_kankyo_data.h +++ b/include/d/d_kankyo_data.h @@ -4,10 +4,10 @@ #include "dolphin/types.h" struct color_RGB_class { - u8 r; - u8 g; - u8 b; -}; + /* 0x0 */ u8 r; + /* 0x1 */ u8 g; + /* 0x2 */ u8 b; +}; // Size: 0x3 // Invented name; Used as u8 `darkLv` in dKydata_darkworldInfo_c. enum dKyd_DARKLV { diff --git a/include/d/d_stage.h b/include/d/d_stage.h index e63b56c8ef..bcf132eff9 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -4,10 +4,31 @@ #include "SSystem/SComponent/c_lib.h" #include "d/d_kankyo.h" #include "d/d_kankyo_data.h" -#include "d/d_save.h" +#include "d/d_map_path_dmap.h" +#include "f_op/f_op_actor_mng.h" #include "global.h" -class JKRExpHeap; +enum StageType { + /* 0x0 */ ST_FIELD, + /* 0x1 */ ST_DUNGEON, + /* 0x2 */ ST_ROOM, + /* 0x3 */ ST_BOSS_ROOM, + /* 0x4 */ ST_CASTLE_TOWN, + /* 0x5 */ ST_CLOUD_SEA, +}; + +// made up name +struct dStage_nodeHeader { + /* 0x0 */ u32 m_tag; + /* 0x4 */ int m_entryNum; + /* 0x8 */ u32 m_offset; +}; + +// made up name +struct dStage_fileHeader { + /* 0x0 */ int m_chunkCount; + /* 0x4 */ dStage_nodeHeader m_nodes[1]; // Variable length +}; struct stage_vrboxcol_info_class { /* 0x00 */ color_RGB_class sky_col; @@ -28,29 +49,18 @@ struct stage_vrbox_info_class { /* 0x11 */ GXColor field_0x11; }; // Size: 0x15 -class stage_tresure_class { -public: - /* 0x00 */ char mName[8]; - /* 0x08 */ u8 field_0x8; - /* 0x09 */ u8 mTypeFlag; - /* 0x0A */ u8 field_0xa; // part of flag - /* 0x0B */ u8 mAppearType; - /* 0x0C */ Vec mPosition; - /* 0x18 */ s16 mRoomNo; - /* 0x1A */ s16 mRotation; - /* 0x1C */ u8 mItem; - /* 0x1D */ u8 mFlagID; +// TRES +struct stage_tresure_data_class { + /* 0x00 */ char name[8]; + /* 0x08 */ fopAcM_prmBase_class base; }; // Size: 0x20 -enum StageType { - /* 0x0 */ ST_FIELD, - /* 0x1 */ ST_DUNGEON, - /* 0x2 */ ST_ROOM, - /* 0x3 */ ST_BOSS_ROOM, - /* 0x4 */ ST_CASTLE_TOWN, - /* 0x5 */ ST_CLOUD_SEA, +struct stage_tresure_class { + /* 0x00 */ int num; + /* 0x04 */ stage_tresure_data_class* m_entries; }; +// STAG struct stage_stag_info_class { /* 0x00 */ f32 field_0x0; /* 0x04 */ f32 field_0x4; @@ -68,8 +78,9 @@ struct stage_stag_info_class { /* 0x28 */ u8 mMsgGroup; /* 0x2A */ u16 mStageTitleNo; /* 0x2C */ u8 mParticleNo[16]; -}; +}; // Size: 0x3C +// SCLS struct stage_scls_info_class { /* 0x0 */ char mStage[8]; /* 0x8 */ u8 mStart; @@ -84,12 +95,12 @@ struct stage_scls_info_class { }; // Size: 0xD struct stage_scls_info_dummy_class { - /* 0x00 */ int numEntries; - /* 0x04 */ stage_scls_info_class* mEntries; + /* 0x00 */ int num; + /* 0x04 */ stage_scls_info_class* m_entries; }; +// LGT struct stage_pure_lightvec_info_class { - // LGT /* 0x00 */ Vec position; /* 0x0C */ f32 radius; /* 0x10 */ f32 directionX; @@ -101,19 +112,22 @@ struct stage_pure_lightvec_info_class { /* 0x1F */ u8 switch_no; }; // Size: 0x20 +// COLO struct stage_pselect_info_class { /* 0x0 */ u8 palette_id[8]; /* 0x8 */ f32 change_rate; }; // Size: 0xC +// LGHT struct stage_plight_info_class { /* 0x00 */ Vec position; /* 0x0C */ f32 power; - /* 0x10 */ u8 unk_0x10[0x18 - 0x10]; + /* 0x10 */ u8 field_0x10[0x18 - 0x10]; /* 0x18 */ color_RGB_class color; /* 0x1B */ u8 fluctuation; }; // Size: 0x1C +// PAL struct stage_palette_info_class { /* 0x00 */ color_RGB_class actor_amb_col; /* 0x03 */ color_RGB_class bg_amb_col[4]; @@ -138,20 +152,19 @@ struct stage_map_info_class { }; // Size: 0x38 struct stage_map_info_dummy_class { - /* 0x0 */ int field_0x0; - /* 0x4 */ stage_map_info_class* mData; + /* 0x0 */ int num; + /* 0x4 */ stage_map_info_class* m_entries; }; +// Env struct stage_envr_info_class { /* 0x0 */ u8 pselect_id[65]; }; // Size: 0x41 +// CAMR / RCAM struct stage_camera2_data_class { - struct { - int field_0x0; - Vec field_0x4; - } /* 0x00 */ field_0x0; - /* 0x10 */ u8 field_0x10; + /* 0x00 */ char m_cam_type[16]; + /* 0x10 */ u8 m_arrow_idx; /* 0x11 */ u8 field_0x11; /* 0x12 */ u8 field_0x12; /* 0x13 */ u8 field_0x13; @@ -160,90 +173,97 @@ struct stage_camera2_data_class { }; // Size: 0x18 struct stage_camera_class { - /* 0x0 */ int field_0x0; - /* 0x4 */ stage_camera2_data_class* mEntries; + /* 0x0 */ int num; + /* 0x4 */ stage_camera2_data_class* m_entries; }; +// AROB / RARO struct stage_arrow_data_class { - /* 0x00 */ cXyz mPosition; - /* 0x0C */ csXyz mAngle; + /* 0x00 */ cXyz position; + /* 0x0C */ csXyz angle; /* 0x12 */ s16 field_0x12; }; // Size: 0x14 struct stage_arrow_class { - /* 0x00 */ int mNum; - /* 0x04 */ stage_arrow_data_class* mEntries; + /* 0x00 */ int num; + /* 0x04 */ stage_arrow_data_class* m_entries; }; -class stage_actor_data_class { -public: - /* 0x00 */ char mName[8]; - /* 0x08 */ u32 mParameter; - /* 0x0C */ cXyz mSpawnPos; - /* 0x18 */ csXyz mAngle; - /* 0x1E */ u16 mEnemyNo; +// ACT +struct stage_actor_data_class { + /* 0x00 */ char name[8]; + /* 0x08 */ fopAcM_prmBase_class base; }; // Size: 0x20 -class stage_actor_class { -public: - /* 0x0 */ int mEntryNum; - /* 0x4 */ stage_actor_data_class* mEntries; +struct stage_actor_class { + /* 0x0 */ int num; + /* 0x4 */ stage_actor_data_class* m_entries; }; -struct stage_tgsc_data_class : public stage_actor_data_class { - /* 8002847C */ ~stage_tgsc_data_class() {} - /* 800284B8 */ stage_tgsc_data_class() {} - - /* 0x20 */ u8 field_0x20[2]; - /* 0x22 */ u8 field_0x22; +// TGSC / SCOB / TGDR / Door +struct stage_tgsc_data_class { + /* 0x00 */ char name[8]; + /* 0x08 */ fopAcM_prmBase_class base; + /* 0x20 */ fopAcM_prmScale_class scale; }; // Size: 0x24 STATIC_ASSERT(sizeof(stage_tgsc_data_class) == 0x24); -class stage_tgsc_class { -public: - /* 0x00 */ int mEntryNum; - /* 0x04 */ stage_tgsc_data_class* mData; +struct stage_tgsc_class { + /* 0x00 */ int num; + /* 0x04 */ stage_tgsc_data_class* m_entries; +}; + +// MPAT +struct map_path_class { + /* 0x0 */ int num; + /* 0x4 */ dDrawPath_c::room_class* m_entries; }; +// RTBL struct roomRead_data_class { - /* 0x0 */ u8 field_0x0; + /* 0x0 */ u8 num; /* 0x1 */ u8 field_0x1; /* 0x2 */ u8 field_0x2; - /* 0x4 */ u8* field_0x4; -}; + /* 0x4 */ u8* m_rooms; +}; // Size: 0x8 struct roomRead_class { - /* 0x0 */ int field_0x0; - /* 0x4 */ roomRead_data_class** field_0x4; + /* 0x0 */ int num; + /* 0x4 */ roomRead_data_class** m_entries; }; -class dStage_FileList2_dt_c { -public: - /* 0x00 */ f32 mLeftRmX; - /* 0x04 */ f32 mInnerRmZ; - /* 0x08 */ f32 mRightRmX; - /* 0x0C */ f32 mFrontRmZ; - /* 0x10 */ u8 mMinFloorNo; - /* 0x11 */ u8 mMaxFloorNo; - /* 0x12 */ u8 field_0x12; - /* 0x13 */ u8 field_0x13; - /* 0x14 */ f32 field_0x14; - /* 0x18 */ f32 field_0x18; - /* 0x1C */ s16 field_0x1c; -}; // Size: 0x20 - +// MEM struct dStage_MemoryMap_c { /* 0x0 */ int m_num; /* 0x4 */ u32* field_0x4; }; +// MEC +struct dStage_MemoryConfig_data { + /* 0x0 */ u8 m_roomNo; + /* 0x1 */ u8 m_blockID; +}; // Size: 0x2 + +struct dStage_MemoryConfig_c { + /* 0x0 */ int m_num; + /* 0x4 */ dStage_MemoryConfig_data* field_0x4; +}; + +// PATH / RPAT struct dPath; struct dStage_dPath_c { /* 0x0 */ int m_num; /* 0x4 */ dPath* m_path; }; +// PPNT / RPPN +struct dStage_dPnt_c { + /* 0x0 */ int num; + /* 0x4 */ u32 m_pnt_offset; +}; // Size: 0x8 + +// MULT struct dStage_Mult_info { /* 0x0 */ f32 mTransX; /* 0x4 */ f32 mTransY; @@ -253,10 +273,11 @@ struct dStage_Mult_info { class dStage_Multi_c { public: - /* 0x0 */ int field_0x0; - /* 0x4 */ dStage_Mult_info* mInfo; + /* 0x0 */ int num; + /* 0x4 */ dStage_Mult_info* m_entries; }; +// SOND struct stage_sound_data { /* 0x00 */ char field_0x0[8]; /* 0x08 */ Vec field_0x8; @@ -270,11 +291,11 @@ struct stage_sound_data { }; // Size: 0x1C struct dStage_SoundInfo_c { - // SOND /* 0x0 */ int num; /* 0x4 */ stage_sound_data* entries; }; +// FILI class dStage_FileList_dt_c { public: /* 0x00 */ u32 mParameters; @@ -287,16 +308,41 @@ public: /* 0x1C */ u16 mMsg; }; // Size: 0x20 -// PPNT -struct dStage_dPnt_c { +// FILI +class dStage_FileList2_dt_c { +public: + /* 0x00 */ f32 mLeftRmX; + /* 0x04 */ f32 mInnerRmZ; + /* 0x08 */ f32 mRightRmX; + /* 0x0C */ f32 mFrontRmZ; + /* 0x10 */ u8 mMinFloorNo; + /* 0x11 */ u8 mMaxFloorNo; + /* 0x12 */ u8 field_0x12; + /* 0x13 */ u8 field_0x13; + /* 0x14 */ f32 field_0x14; + /* 0x18 */ f32 field_0x18; + /* 0x1C */ s16 field_0x1c; +}; // Size: 0x20 + +struct dStage_FileList2_c { /* 0x0 */ int num; - /* 0x4 */ u32 m_pnt_offset; -}; // Size: 0x8 + /* 0x4 */ dStage_FileList2_dt_c* entries; +}; + +// FLOR +struct dStage_FloorInfo_dt_c { + // Copied from TWW, may not be right + /* 0x00 */ int field_0x00; + /* 0x04 */ u8 floorNo; + /* 0x05 */ s8 field_0x05[14]; +}; // Size: 0x14 struct dStage_FloorInfo_c { - // FLOR + /* 0x00 */ int num; + /* 0x04 */ dStage_FloorInfo_dt_c* m_entries; }; +// LBNK class dStage_Lbnk_dt_c { public: /* 0x0 */ u8 bank; @@ -309,29 +355,30 @@ struct dStage_Lbnk_c { /* 0x4 */ dStage_Lbnk_dt_c* entries; }; -struct dStage_Elst_data { +struct dStage_Elst_dt_c { /* 0x0 */ u8 m_layerTable[15]; -}; +}; // Size: 0xF struct dStage_Elst_c { /* 0x0 */ int m_entryNum; - /* 0x4 */ dStage_Elst_data* m_entries; + /* 0x4 */ dStage_Elst_dt_c* m_entries; }; -struct dStage_MemoryConfig_data { - /* 0x0 */ u8 m_roomNo; - /* 0x1 */ u8 m_blockID; -}; // Size: 0x2 - -struct dStage_MemoryConfig_c { - /* 0x0 */ int m_num; - /* 0x4 */ dStage_MemoryConfig_data* field_0x4; -}; +// DMAP +struct dStage_DMap_dt_c { + // Copied from TWW, may not be right + /* 0x00 */ int field_0x00; + /* 0x04 */ int field_0x04; + /* 0x08 */ int field_0x08; + /* 0x0C */ f32 offsetY; +}; // Size: 0x10 struct dStage_DMap_c { - // DMAP + /* 0x00 */ int num; + /* 0x04 */ dStage_DMap_dt_c* entries; }; +// REVT struct dStage_MapEvent_dt_c { /* 0x00 */ u8 mType; /* 0x01 */ u8 field_0x1; @@ -356,9 +403,8 @@ struct dStage_MapEvent_dt_c { }; // SIZE = 0x1C struct dStage_MapEventInfo_c { - // REVT - int mCount; - dStage_MapEvent_dt_c* mData; + /* 0x0 */ int num; + /* 0x4 */ dStage_MapEvent_dt_c* m_entries; }; class dStage_dt_c { @@ -455,7 +501,7 @@ public: /* vt[87] */ virtual void setDoor(stage_tgsc_class*) = 0; /* vt[88] */ virtual stage_tgsc_class* getDoor(void) const = 0; /* vt[89] */ virtual void setMapPath(void*) = 0; - /* vt[90] */ virtual int getMapPath(void) = 0; + /* vt[90] */ virtual void* getMapPath(void) = 0; /* vt[91] */ virtual void setElst(dStage_Elst_c*) = 0; /* vt[92] */ virtual dStage_Elst_c* getElst(void) = 0; @@ -463,103 +509,149 @@ private: /* 0x04 */ s8 mRoomNo; }; +void dStage_SetErrorStage(); +void dStage_SetErrorRoom(); + class dStage_stageDt_c : public dStage_dt_c { public: dStage_stageDt_c() {} /* vt[ 2] */ virtual void init(void); - /* vt[ 3] */ virtual void setCamera(stage_camera_class*); - /* vt[ 4] */ virtual stage_camera_class* getCamera(void) const; - /* vt[ 5] */ virtual void setArrow(stage_arrow_class*); - /* vt[ 6] */ virtual stage_arrow_class* getArrow(void) const; - /* vt[ 7] */ virtual void setPlayer(stage_actor_class*); - /* vt[ 8] */ virtual stage_actor_class* getPlayer(void) const; - /* vt[ 9] */ virtual void setPlayerNum(u16); - /* vt[10] */ virtual u16 getPlayerNum(void) const; - /* vt[11] */ virtual void setRoom(roomRead_class*); - /* vt[12] */ virtual roomRead_class* getRoom(void) const; - /* vt[13] */ virtual void setMapInfo(stage_map_info_class*); - /* vt[14] */ virtual stage_map_info_class* getMapInfo(void) const; + /* vt[ 3] */ virtual void setCamera(stage_camera_class* i_Camera) { mCamera = i_Camera; } + /* vt[ 4] */ virtual stage_camera_class* getCamera(void) const { return mCamera; } + /* vt[ 5] */ virtual void setArrow(stage_arrow_class* i_Arrow) { mArrow = i_Arrow; } + /* vt[ 6] */ virtual stage_arrow_class* getArrow(void) const { return mArrow; } + /* vt[ 7] */ virtual void setPlayer(stage_actor_class* i_Player) { mPlayer = i_Player; } + /* vt[ 8] */ virtual stage_actor_class* getPlayer(void) const { return mPlayer; } + /* vt[ 9] */ virtual void setPlayerNum(u16 i_PlayerNum) { mPlayerNum = i_PlayerNum; } + /* vt[10] */ virtual u16 getPlayerNum(void) const { return mPlayerNum; } + /* vt[11] */ virtual void setRoom(roomRead_class* i_Room) { mRoom = i_Room; } + /* vt[12] */ virtual roomRead_class* getRoom(void) const { return mRoom; } + /* vt[13] */ virtual void setMapInfo(stage_map_info_class* i_MapInfo) { mMapInfo = i_MapInfo; } + /* vt[14] */ virtual stage_map_info_class* getMapInfo(void) const { return mMapInfo; } /* vt[15] */ virtual stage_map_info_class* getMapInfo2(int) const; - /* vt[16] */ virtual void setMapInfoBase(stage_map_info_dummy_class*); - /* vt[17] */ virtual stage_map_info_dummy_class* getMapInfoBase(void) const; - /* vt[18] */ virtual void setPaletteInfo(stage_palette_info_class*); - /* vt[19] */ virtual stage_palette_info_class* getPaletteInfo(void) const; - /* vt[20] */ virtual void setPselectInfo(stage_pselect_info_class*); - /* vt[21] */ virtual stage_pselect_info_class* getPselectInfo(void) const; - /* vt[22] */ virtual void setEnvrInfo(stage_envr_info_class*); - /* vt[23] */ virtual stage_envr_info_class* getEnvrInfo(void) const; - /* vt[24] */ virtual void setVrboxInfo(stage_vrbox_info_class*); - /* vt[25] */ virtual stage_vrbox_info_class* getVrboxInfo(void) const; - /* vt[26] */ virtual void setVrboxcolInfo(stage_vrboxcol_info_class*); - /* vt[27] */ virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const; - /* vt[28] */ virtual void setPlightInfo(stage_plight_info_class*); - /* vt[29] */ virtual stage_plight_info_class* getPlightInfo(void) const; - /* vt[30] */ virtual void setPaletteNumInfo(int); - /* vt[31] */ virtual int getPaletteNumInfo(void) const; - /* vt[32] */ virtual void setPselectNumInfo(int); - /* vt[33] */ virtual int getPselectNumInfo(void) const; - /* vt[34] */ virtual void setEnvrNumInfo(int); - /* vt[35] */ virtual int getEnvrNumInfo(void) const; - /* vt[36] */ virtual void setVrboxNumInfo(int); - /* vt[37] */ virtual int getVrboxNumInfo(void) const; - /* vt[38] */ virtual void setVrboxcolNumInfo(int); - /* vt[39] */ virtual int getVrboxcolNumInfo(void) const; - /* vt[40] */ virtual void setPlightNumInfo(int); - /* vt[41] */ virtual int getPlightNumInfo(void) const; - /* vt[42] */ virtual void setLightVecInfo(stage_pure_lightvec_info_class*); - /* vt[43] */ virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const; - /* vt[44] */ virtual void setLightVecInfoNum(int); - /* vt[45] */ virtual int getLightVecInfoNum(void) const; - /* vt[46] */ virtual void setStagInfo(stage_stag_info_class*); - /* vt[47] */ virtual stage_stag_info_class* getStagInfo(void) const; - /* vt[48] */ virtual void setSclsInfo(stage_scls_info_dummy_class*); - /* vt[49] */ virtual stage_scls_info_dummy_class* getSclsInfo(void) const; - /* vt[50] */ virtual void setPntInfo(dStage_dPnt_c*); - /* vt[51] */ virtual dStage_dPnt_c* getPntInf(void) const; - /* vt[52] */ virtual void setPathInfo(dStage_dPath_c*); - /* vt[53] */ virtual dStage_dPath_c* getPathInf(void) const; - /* vt[54] */ virtual void setPnt2Info(dStage_dPnt_c*); - /* vt[55] */ virtual dStage_dPnt_c* getPnt2Inf(void) const; - /* vt[56] */ virtual void setPath2Info(dStage_dPath_c*); - /* vt[57] */ virtual dStage_dPath_c* getPath2Inf(void) const; - /* vt[58] */ virtual void setSoundInf(dStage_SoundInfo_c*); - /* vt[59] */ virtual dStage_SoundInfo_c* getSoundInf(void) const; - /* vt[60] */ virtual void setSoundInfCL(dStage_SoundInfo_c*); - /* vt[61] */ virtual dStage_SoundInfo_c* getSoundInfCL(void) const; - /* vt[62] */ virtual void setMapEventInfo(dStage_MapEventInfo_c*); - /* vt[63] */ virtual dStage_MapEventInfo_c* getMapEventInfo(void) const; - /* vt[64] */ virtual void setFileList2Info(dStage_FileList2_dt_c*); - /* vt[65] */ virtual dStage_FileList2_dt_c* getFileList2Info(void) const; - /* vt[66] */ virtual void setFileListInfo(dStage_FileList_dt_c*); - /* vt[67] */ virtual dStage_FileList_dt_c* getFileListInfo(void) const; - /* vt[68] */ virtual void setFloorInfo(dStage_FloorInfo_c*); - /* vt[69] */ virtual dStage_FloorInfo_c* getFloorInfo(void) const; - /* vt[70] */ virtual void setMemoryConfig(dStage_MemoryConfig_c*); - /* vt[71] */ virtual dStage_MemoryConfig_c* getMemoryConfig(void) const; - /* vt[72] */ virtual void setMemoryMap(dStage_MemoryMap_c*); - /* vt[73] */ virtual dStage_MemoryMap_c* getMemoryMap(void) const; - /* vt[74] */ virtual void setMulti(dStage_Multi_c*); - /* vt[75] */ virtual dStage_Multi_c* getMulti(void) const; + /* vt[16] */ virtual void setMapInfoBase(stage_map_info_dummy_class* i_MapInfoBase) { mMapInfoBase = i_MapInfoBase; } + /* vt[17] */ virtual stage_map_info_dummy_class* getMapInfoBase(void) const { return mMapInfoBase; } + /* vt[18] */ virtual void setPaletteInfo(stage_palette_info_class* i_PaletteInfo) { mPaletteInfo = i_PaletteInfo; } + /* vt[19] */ virtual stage_palette_info_class* getPaletteInfo(void) const { return mPaletteInfo; } + /* vt[20] */ virtual void setPselectInfo(stage_pselect_info_class* i_PselectInfo) { mPselectInfo = i_PselectInfo; } + /* vt[21] */ virtual stage_pselect_info_class* getPselectInfo(void) const { return mPselectInfo; } + /* vt[22] */ virtual void setEnvrInfo(stage_envr_info_class* i_EnvrInfo) { mEnvrInfo = i_EnvrInfo; } + /* vt[23] */ virtual stage_envr_info_class* getEnvrInfo(void) const { return mEnvrInfo; } + /* vt[24] */ virtual void setVrboxInfo(stage_vrbox_info_class* i_VrboxInfo) { mVrboxInfo = i_VrboxInfo; } + /* vt[25] */ virtual stage_vrbox_info_class* getVrboxInfo(void) const { return mVrboxInfo; } + /* vt[26] */ virtual void setVrboxcolInfo(stage_vrboxcol_info_class* i_VrboxcolInfo) { mVrboxcolInfo = i_VrboxcolInfo; } + /* vt[27] */ virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const { return mVrboxcolInfo; } + /* vt[28] */ virtual void setPlightInfo(stage_plight_info_class* i_PlightInfo) { mPlightInfo = i_PlightInfo; } + /* vt[29] */ virtual stage_plight_info_class* getPlightInfo(void) const { return mPlightInfo; } + /* vt[30] */ virtual void setPaletteNumInfo(int i_PaletteNumInfo) { mPaletteNumInfo = i_PaletteNumInfo; } + /* vt[31] */ virtual int getPaletteNumInfo(void) const { return mPaletteNumInfo; } + /* vt[32] */ virtual void setPselectNumInfo(int i_PselectNumInfo) { mPselectNumInfo = i_PselectNumInfo; } + /* vt[33] */ virtual int getPselectNumInfo(void) const { return mPselectNumInfo; } + /* vt[34] */ virtual void setEnvrNumInfo(int i_EnvrNumInfo) { mEnvrNumInfo = i_EnvrNumInfo; } + /* vt[35] */ virtual int getEnvrNumInfo(void) const { return mEnvrNumInfo; } + /* vt[36] */ virtual void setVrboxNumInfo(int i_VrboxNumInfo) { mVrboxNumInfo = i_VrboxNumInfo; } + /* vt[37] */ virtual int getVrboxNumInfo(void) const { return mVrboxNumInfo; } + /* vt[38] */ virtual void setVrboxcolNumInfo(int i_VrboxcolNumInfo) { mVrboxcolNumInfo = i_VrboxcolNumInfo; } + /* vt[39] */ virtual int getVrboxcolNumInfo(void) const { return mVrboxcolNumInfo; } + /* vt[42] */ virtual void setLightVecInfo(stage_pure_lightvec_info_class* i_LightVecInfo) { + (void)i_LightVecInfo; + dStage_SetErrorStage(); + OSReport("stage non LightVec data !!\n"); + JUT_ASSERT(3003, 0); + } + /* vt[43] */ virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const { + OSReport("stage non LightVec data !!\n"); + JUT_ASSERT(3007, 0); + return NULL; + } + /* vt[44] */ virtual void setLightVecInfoNum(int i_LightVecInfoNum) { + (void)i_LightVecInfoNum; + dStage_SetErrorStage(); + OSReport("stage non LightVecNum data !!\n"); + JUT_ASSERT(3014, 0); + } + /* vt[45] */ virtual int getLightVecInfoNum(void) const { + OSReport("stage non LightVecNum data !!\n"); + JUT_ASSERT(3018, 0); + return NULL; + } + /* vt[40] */ virtual void setPlightNumInfo(int i_PlightNumInfo) { mPlightNumInfo = i_PlightNumInfo; } + /* vt[41] */ virtual int getPlightNumInfo(void) const { return mPlightNumInfo; } + /* vt[46] */ virtual void setStagInfo(stage_stag_info_class* i_StagInfo) { mStagInfo = i_StagInfo; } + /* vt[47] */ virtual stage_stag_info_class* getStagInfo(void) const { return mStagInfo; } + /* vt[48] */ virtual void setSclsInfo(stage_scls_info_dummy_class* i_SclsInfo) { mSclsInfo = i_SclsInfo; } + /* vt[49] */ virtual stage_scls_info_dummy_class* getSclsInfo(void) const { return mSclsInfo; } + /* vt[50] */ virtual void setPntInfo(dStage_dPnt_c* i_PntInfo) { mPntInfo = i_PntInfo; } + /* vt[51] */ virtual dStage_dPnt_c* getPntInf(void) const { return mPntInfo; } + /* vt[52] */ virtual void setPathInfo(dStage_dPath_c* i_PathInfo) { mPathInfo = i_PathInfo; } + /* vt[53] */ virtual dStage_dPath_c* getPathInf(void) const { return mPathInfo; } + /* vt[54] */ virtual void setPnt2Info(dStage_dPnt_c* i_Pnt2Info) { mPnt2Info = i_Pnt2Info; } + /* vt[55] */ virtual dStage_dPnt_c* getPnt2Inf(void) const { return mPnt2Info; } + /* vt[56] */ virtual void setPath2Info(dStage_dPath_c* i_Path2Info) { mPath2Info = i_Path2Info; } + /* vt[57] */ virtual dStage_dPath_c* getPath2Inf(void) const { return mPath2Info; } + /* vt[58] */ virtual void setSoundInf(dStage_SoundInfo_c* i_SoundInf) { mSoundInf = i_SoundInf; } + /* vt[59] */ virtual dStage_SoundInfo_c* getSoundInf(void) const { return mSoundInf; } + /* vt[60] */ virtual void setSoundInfCL(dStage_SoundInfo_c* i_SoundInfCL) { mSoundInfCL = i_SoundInfCL; } + /* vt[61] */ virtual dStage_SoundInfo_c* getSoundInfCL(void) const { return mSoundInfCL; } + /* vt[62] */ virtual void setMapEventInfo(dStage_MapEventInfo_c* i_MapEventInfo) { mMapEventInfo = i_MapEventInfo; } + /* vt[63] */ virtual dStage_MapEventInfo_c* getMapEventInfo(void) const { return mMapEventInfo; } + /* vt[64] */ virtual void setFileList2Info(dStage_FileList2_dt_c* list) { + (void)list; + dStage_SetErrorStage(); + OSReport("stage non filelist2 data!\n"); + JUT_ASSERT(3123, 0); + } + /* vt[65] */ virtual dStage_FileList2_dt_c* getFileList2Info(void) const { + OSReport("stage non filelist2 data!\n"); + JUT_ASSERT(3127, 0); + return NULL; + } + /* vt[66] */ virtual void setFileListInfo(dStage_FileList_dt_c* list) { + (void)list; + dStage_SetErrorStage(); + OSReport("stage non filelist data!\n"); + JUT_ASSERT(3138, 0); + } + /* vt[67] */ virtual dStage_FileList_dt_c* getFileListInfo(void) const { + OSReport("stage non filelist data!\n"); + JUT_ASSERT(3142, 0); + return NULL; + } + /* vt[68] */ virtual void setFloorInfo(dStage_FloorInfo_c* i_FloorInfo) { mFloorInfo = i_FloorInfo; } + /* vt[69] */ virtual dStage_FloorInfo_c* getFloorInfo(void) const { return mFloorInfo; } + /* vt[70] */ virtual void setMemoryConfig(dStage_MemoryConfig_c* i_MemoryConfig) { mMemoryConfig = i_MemoryConfig; } + /* vt[71] */ virtual dStage_MemoryConfig_c* getMemoryConfig(void) const { return mMemoryConfig; } + /* vt[72] */ virtual void setMemoryMap(dStage_MemoryMap_c* i_MemoryMap) { mMemoryMap = i_MemoryMap; } + /* vt[73] */ virtual dStage_MemoryMap_c* getMemoryMap(void) const { return mMemoryMap; } + /* vt[74] */ virtual void setMulti(dStage_Multi_c* i_Multi) { mMulti = i_Multi; } + /* vt[75] */ virtual dStage_Multi_c* getMulti(void) const { return mMulti; } /* vt[76] */ virtual void setOldMulti(void); /* vt[77] */ virtual void resetOldMulti(void); - /* vt[78] */ virtual dStage_Multi_c* getOldMulti(void) const; - /* vt[79] */ virtual void setLbnk(dStage_Lbnk_c*); - /* vt[80] */ virtual dStage_Lbnk_c* getLbnk(void) const; - /* vt[81] */ virtual void setTresure(stage_tresure_class*); - /* vt[82] */ virtual stage_tresure_class* getTresure(void) const; - /* vt[83] */ virtual void setDMap(dStage_DMap_c*); - /* vt[84] */ virtual dStage_DMap_c* getDMap(void) const; - /* vt[85] */ virtual void setDrTg(stage_tgsc_class*); - /* vt[86] */ virtual stage_tgsc_class* getDrTg(void) const; - /* vt[87] */ virtual void setDoor(stage_tgsc_class*); - /* vt[88] */ virtual stage_tgsc_class* getDoor(void) const; - /* vt[89] */ virtual void setMapPath(void*); - /* vt[90] */ virtual int getMapPath(void); - /* vt[91] */ virtual void setElst(dStage_Elst_c*); - /* vt[92] */ virtual dStage_Elst_c* getElst(void); - - void setTreasure(stage_tresure_class*); + /* vt[78] */ virtual dStage_Multi_c* getOldMulti(void) const { return mOldMulti; } + /* vt[79] */ virtual void setLbnk(dStage_Lbnk_c* lbnk) { + (void)lbnk; + dStage_SetErrorStage(); + OSReport("stage non Lbnk data!\n"); + JUT_ASSERT(3231, 0); + } + /* vt[80] */ virtual dStage_Lbnk_c* getLbnk(void) const { + OSReport("stage non Lbnk data!\n"); + JUT_ASSERT(3238, 0); + return NULL; + } + /* vt[81] */ virtual void setTresure(stage_tresure_class* i_Tresure) { mTresure = i_Tresure; } + /* vt[82] */ virtual stage_tresure_class* getTresure(void) const { return mTresure; } + /* vt[83] */ virtual void setDMap(dStage_DMap_c* i_DMap) { mDMap = i_DMap; } + /* vt[84] */ virtual dStage_DMap_c* getDMap(void) const { return mDMap; } + /* vt[85] */ virtual void setDrTg(stage_tgsc_class* i_DrTg) { mDrTg = i_DrTg; } + /* vt[86] */ virtual stage_tgsc_class* getDrTg(void) const { return mDrTg; } + /* vt[87] */ virtual void setDoor(stage_tgsc_class* i_Door) { mDoor = i_Door; } + /* vt[88] */ virtual stage_tgsc_class* getDoor(void) const { return mDoor; } + /* vt[89] */ virtual void setMapPath(void* i_MapPath) { return; } + /* vt[90] */ virtual void* getMapPath(void) { return NULL; } + /* vt[91] */ virtual void setElst(dStage_Elst_c* i_Elst) { mElst = i_Elst; } + /* vt[92] */ virtual dStage_Elst_c* getElst(void) { return mElst; } s16 getWorldRollAngleX() { return (s16)mWorldRollAngleX; } s16 getWorldRollDirAngleY() { return mWorldRollDirAngleY; } @@ -592,7 +684,7 @@ public: /* 0x60 */ stage_scls_info_dummy_class* mSclsInfo; /* 0x64 */ dStage_dPnt_c* mPntInfo; /* 0x68 */ dStage_dPath_c* mPathInfo; - /* 0x6C */ dStage_dPnt_c* mPnt2Inf; + /* 0x6C */ dStage_dPnt_c* mPnt2Info; /* 0x70 */ dStage_dPath_c* mPath2Info; /* 0x74 */ dStage_SoundInfo_c* mSoundInf; /* 0x78 */ dStage_SoundInfo_c* mSoundInfCL; @@ -601,7 +693,7 @@ public: /* 0x84 */ dStage_MemoryMap_c* mMemoryMap; /* 0x88 */ dStage_Multi_c* mMulti; /* 0x8C */ dStage_Multi_c* mOldMulti; - /* 0x90 */ stage_tresure_class* mTreasure; + /* 0x90 */ stage_tresure_class* mTresure; /* 0x94 */ dStage_DMap_c* mDMap; /* 0x98 */ stage_tgsc_class* mDrTg; /* 0x9C */ stage_tgsc_class* mDoor; @@ -612,100 +704,265 @@ class dStage_roomDt_c : public dStage_dt_c { public: dStage_roomDt_c() {} void initFileList2(void); - void setPnt2Inf(dStage_dPnt_c*); - void setTreasure(stage_tresure_class*); virtual void init(void); - virtual void setCamera(stage_camera_class*); - virtual stage_camera_class* getCamera(void) const; - virtual void setArrow(stage_arrow_class*); - virtual stage_arrow_class* getArrow(void) const; - virtual void setPlayer(stage_actor_class*); - virtual stage_actor_class* getPlayer(void) const; - virtual void setPlayerNum(u16); - virtual u16 getPlayerNum(void) const; - virtual void setRoom(roomRead_class*); - virtual roomRead_class* getRoom(void) const; - virtual void setMapInfo(stage_map_info_class*); - virtual stage_map_info_class* getMapInfo(void) const; + virtual void setCamera(stage_camera_class* i_Camera) { mCamera = i_Camera; } + virtual stage_camera_class* getCamera(void) const { return mCamera; } + virtual void setArrow(stage_arrow_class* i_Arrow) { mArrow = i_Arrow; } + virtual stage_arrow_class* getArrow(void) const { return mArrow; } + virtual void setPlayer(stage_actor_class* i_Player) { mPlayer = i_Player; } + virtual stage_actor_class* getPlayer(void) const { return mPlayer; } + virtual void setPlayerNum(u16 i_PlayerNum) { mPlayerNum = i_PlayerNum; } + virtual u16 getPlayerNum(void) const { return mPlayerNum; } + virtual void setRoom(roomRead_class* i_Room) { + (void)i_Room; + dStage_SetErrorRoom(); + OSReport("Room non room data !!\n"); + JUT_ASSERT(2095, 0); + } + virtual roomRead_class* getRoom(void) const { + OSReport("Room non room data !!\n"); + JUT_ASSERT(2100, 0); + return NULL; + } + virtual void setMapInfo(stage_map_info_class* i_MapInfo) { mMapInfo = i_MapInfo; } + virtual stage_map_info_class* getMapInfo(void) const { return mMapInfo; } virtual stage_map_info_class* getMapInfo2(int) const; - virtual void setMapInfoBase(stage_map_info_dummy_class*); - virtual stage_map_info_dummy_class* getMapInfoBase(void) const; - virtual void setPaletteInfo(stage_palette_info_class*); - virtual stage_palette_info_class* getPaletteInfo(void) const; - virtual void setPselectInfo(stage_pselect_info_class*); - virtual stage_pselect_info_class* getPselectInfo(void) const; - virtual void setEnvrInfo(stage_envr_info_class*); - virtual stage_envr_info_class* getEnvrInfo(void) const; - virtual void setVrboxInfo(stage_vrbox_info_class*); - virtual stage_vrbox_info_class* getVrboxInfo(void) const; - virtual void setVrboxcolInfo(stage_vrboxcol_info_class*); - virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const; - virtual void setPlightInfo(stage_plight_info_class*); - virtual stage_plight_info_class* getPlightInfo(void) const; - virtual void setPaletteNumInfo(int); - virtual int getPaletteNumInfo(void) const; - virtual void setPselectNumInfo(int); - virtual int getPselectNumInfo(void) const; - virtual void setEnvrNumInfo(int); - virtual int getEnvrNumInfo(void) const; - virtual void setVrboxNumInfo(int); - virtual int getVrboxNumInfo(void) const; - virtual void setVrboxcolNumInfo(int); - virtual int getVrboxcolNumInfo(void) const; - virtual void setPlightNumInfo(int); - virtual int getPlightNumInfo(void) const; - virtual void setLightVecInfo(stage_pure_lightvec_info_class*); - virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const; - virtual void setLightVecInfoNum(int); - virtual int getLightVecInfoNum(void) const; - virtual void setStagInfo(stage_stag_info_class*); - virtual stage_stag_info_class* getStagInfo(void) const; - virtual void setSclsInfo(stage_scls_info_dummy_class*); - virtual stage_scls_info_dummy_class* getSclsInfo(void) const; - virtual void setPntInfo(dStage_dPnt_c*); - virtual dStage_dPnt_c* getPntInf(void) const; - virtual void setPathInfo(dStage_dPath_c*); - virtual dStage_dPath_c* getPathInf(void) const; - virtual void setPnt2Info(dStage_dPnt_c*); - virtual dStage_dPnt_c* getPnt2Inf(void) const; - virtual void setPath2Info(dStage_dPath_c*); - virtual dStage_dPath_c* getPath2Inf(void) const; - virtual void setSoundInf(dStage_SoundInfo_c*); - virtual dStage_SoundInfo_c* getSoundInf(void) const; - virtual void setSoundInfCL(dStage_SoundInfo_c*); - virtual dStage_SoundInfo_c* getSoundInfCL(void) const; - virtual void setMapEventInfo(dStage_MapEventInfo_c*); - virtual dStage_MapEventInfo_c* getMapEventInfo(void) const; - virtual void setFileList2Info(dStage_FileList2_dt_c*); - virtual dStage_FileList2_dt_c* getFileList2Info(void) const; - virtual void setFileListInfo(dStage_FileList_dt_c*); - virtual dStage_FileList_dt_c* getFileListInfo(void) const; - virtual void setFloorInfo(dStage_FloorInfo_c*); - virtual dStage_FloorInfo_c* getFloorInfo(void) const; - virtual void setMemoryConfig(dStage_MemoryConfig_c*); - virtual dStage_MemoryConfig_c* getMemoryConfig(void) const; - virtual void setMemoryMap(dStage_MemoryMap_c*); - virtual dStage_MemoryMap_c* getMemoryMap(void) const; - virtual void setMulti(dStage_Multi_c*); - virtual dStage_Multi_c* getMulti(void) const; - virtual void setOldMulti(void); - virtual void resetOldMulti(void); - virtual dStage_Multi_c* getOldMulti(void) const; - virtual void setLbnk(dStage_Lbnk_c*); - virtual dStage_Lbnk_c* getLbnk(void) const; - virtual void setTresure(stage_tresure_class*); - virtual stage_tresure_class* getTresure(void) const; - virtual void setDMap(dStage_DMap_c*); - virtual dStage_DMap_c* getDMap(void) const; - virtual void setDrTg(stage_tgsc_class*); - virtual stage_tgsc_class* getDrTg(void) const; - virtual void setDoor(stage_tgsc_class*); - virtual stage_tgsc_class* getDoor(void) const; - virtual void setMapPath(void*); - virtual int getMapPath(void); - virtual void setElst(dStage_Elst_c*); - virtual dStage_Elst_c* getElst(void); + virtual void setMapInfoBase(stage_map_info_dummy_class* i_MapInfoBase) { mMapInfoBase = i_MapInfoBase; } + virtual stage_map_info_dummy_class* getMapInfoBase(void) const { return mMapInfoBase; } + virtual void setPaletteInfo(stage_palette_info_class* i_PaletteInfo) { + (void)i_PaletteInfo; + dStage_SetErrorRoom(); + OSReport("Room non palet data !!\n"); + JUT_ASSERT(2126, 0); + } + virtual stage_palette_info_class* getPaletteInfo(void) const { + OSReport("Room non palet data !!\n"); + JUT_ASSERT(2130, 0); + return NULL; + } + virtual void setPselectInfo(stage_pselect_info_class* i_PselectInfo) { + (void)i_PselectInfo; + dStage_SetErrorRoom(); + OSReport("Room non pselect data !!\n"); + JUT_ASSERT(2137, 0); + } + virtual stage_pselect_info_class* getPselectInfo(void) const { + OSReport("Room non pselect data !!\n"); + JUT_ASSERT(2141, 0); + return NULL; + } + virtual void setEnvrInfo(stage_envr_info_class* i_EnvrInfo) { + (void)i_EnvrInfo; + dStage_SetErrorRoom(); + OSReport("Room non envr data !!\n"); + JUT_ASSERT(2148, 0); + } + virtual stage_envr_info_class* getEnvrInfo(void) const { + OSReport("Room non envr data !!\n"); + JUT_ASSERT(2152, 0); + return NULL; + } + virtual void setVrboxInfo(stage_vrbox_info_class* i_VrboxInfo) { mVrboxInfo = i_VrboxInfo; } + virtual stage_vrbox_info_class* getVrboxInfo(void) const { return mVrboxInfo; } + virtual void setVrboxcolInfo(stage_vrboxcol_info_class* i_VrboxcolInfo) { mVrboxcolInfo = i_VrboxcolInfo; } + virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const { return mVrboxcolInfo; } + virtual void setPlightInfo(stage_plight_info_class* i_PlightInfo) { + (void)i_PlightInfo; + dStage_SetErrorRoom(); + OSReport("Room non plight data !!\n"); + JUT_ASSERT(2174, 0); + } + virtual stage_plight_info_class* getPlightInfo(void) const { + OSReport("Room non plight data !!\n"); + JUT_ASSERT(2178, 0); + return NULL; + } + virtual void setPaletteNumInfo(int i_PaletteNumInfo) { + (void)i_PaletteNumInfo; + dStage_SetErrorRoom(); + OSReport("Room non palette num data !!\n"); + JUT_ASSERT(2186, 0); + } + virtual int getPaletteNumInfo(void) const { + OSReport("Room non palette num data !!\n"); + JUT_ASSERT(2190, 0); + return NULL; + } + virtual void setPselectNumInfo(int i_PselectNumInfo) { + (void)i_PselectNumInfo; + dStage_SetErrorRoom(); + OSReport("Room non pselect num data !!\n"); + JUT_ASSERT(2197, 0); + } + virtual int getPselectNumInfo(void) const { + OSReport("Room non pselect num data !!\n"); + JUT_ASSERT(2201, 0); + return NULL; + } + virtual void setEnvrNumInfo(int i_EnvrNumInfo) { + (void)i_EnvrNumInfo; + dStage_SetErrorRoom(); + OSReport("Room non envr num data !!\n"); + JUT_ASSERT(2208, 0); + } + virtual int getEnvrNumInfo(void) const { + OSReport("Room non envr num data !!\n"); + JUT_ASSERT(2212, 0); + return NULL; + } + virtual void setVrboxNumInfo(int i_VrboxNumInfo) { mVrboxNumInfo = i_VrboxNumInfo; } + virtual int getVrboxNumInfo(void) const { return mVrboxNumInfo; } + virtual void setVrboxcolNumInfo(int i_VrboxcolNumInfo) { mVrboxcolNumInfo = i_VrboxcolNumInfo; } + virtual int getVrboxcolNumInfo(void) const { return mVrboxcolNumInfo; } + virtual void setPlightNumInfo(int i_PlightNumInfo) { + (void)i_PlightNumInfo; + dStage_SetErrorRoom(); + OSReport("Room non plight num data !!\n"); + JUT_ASSERT(2223, 0); + } + virtual int getPlightNumInfo(void) const { + OSReport("Room non plight num data !!\n"); + JUT_ASSERT(2227, 0); + return NULL; + } + virtual void setLightVecInfo(stage_pure_lightvec_info_class* i_LightVecInfo) { mLightVecInfo = i_LightVecInfo; } + virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const { return mLightVecInfo; } + virtual void setLightVecInfoNum(int i_LightVecInfoNum) { mLightVecInfoNum = i_LightVecInfoNum; } + virtual int getLightVecInfoNum(void) const { return mLightVecInfoNum; } + virtual void setStagInfo(stage_stag_info_class* i_StagInfo) { + (void)i_StagInfo; + dStage_SetErrorRoom(); + OSReport("Room non stag data !!\n"); + JUT_ASSERT(2256, 0); + } + virtual stage_stag_info_class* getStagInfo(void) const { + OSReport("Room non stag data !!\n"); + JUT_ASSERT(2260, 0); + return NULL; + } + virtual void setSclsInfo(stage_scls_info_dummy_class* i_SclsInfo) { mSclsInfo = i_SclsInfo; } + virtual stage_scls_info_dummy_class* getSclsInfo(void) const { return mSclsInfo; } + virtual void setPntInfo(dStage_dPnt_c* i_PntInfo) { + (void)i_PntInfo; + dStage_SetErrorRoom(); + OSReport("Room non Pnt data !\n"); + JUT_ASSERT(2281, 0); + } + virtual dStage_dPnt_c* getPntInf(void) const { + OSReport("Room non Pnts data !\n"); + JUT_ASSERT(2285, 0); + return NULL; + } + virtual void setPathInfo(dStage_dPath_c* i_PathInfo) { + (void)i_PathInfo; + dStage_SetErrorRoom(); + OSReport("Room non Path data !\n"); + JUT_ASSERT(2292, 0); + } + virtual dStage_dPath_c* getPathInf(void) const { + OSReport("Room non Path data !\n"); + JUT_ASSERT(2296, 0); + return NULL; + } + virtual void setPnt2Info(dStage_dPnt_c* i_Pnt2Info) { mPnt2Info = i_Pnt2Info; } + virtual dStage_dPnt_c* getPnt2Inf(void) const { return mPnt2Info; } + virtual void setPath2Info(dStage_dPath_c* i_Path2Info) { mPath2Info = i_Path2Info; } + virtual dStage_dPath_c* getPath2Inf(void) const { return mPath2Info; } + virtual void setSoundInf(dStage_SoundInfo_c* i_SoundInf) { mSoundInf = i_SoundInf; } + virtual dStage_SoundInfo_c* getSoundInf(void) const { return mSoundInf; } + virtual void setSoundInfCL(dStage_SoundInfo_c* i_SoundInfCL) { mSoundInfCL = i_SoundInfCL; } + virtual dStage_SoundInfo_c* getSoundInfCL(void) const { return mSoundInfCL; } + virtual void setMapEventInfo(dStage_MapEventInfo_c* i_MapEventInfo) { mMapEventInfo = i_MapEventInfo; } + virtual dStage_MapEventInfo_c* getMapEventInfo(void) const { return mMapEventInfo; } + virtual void setFileList2Info(dStage_FileList2_dt_c* i_FileList2Info) { mFileList2Info = i_FileList2Info; } + virtual dStage_FileList2_dt_c* getFileList2Info(void) const { return mFileList2Info; } + virtual void setFileListInfo(dStage_FileList_dt_c* i_FileListInfo) { mFileListInfo = i_FileListInfo; } + virtual dStage_FileList_dt_c* getFileListInfo(void) const { return mFileListInfo; } + virtual void setFloorInfo(dStage_FloorInfo_c* i_FloorInfo) { mFloorInfo = i_FloorInfo; } + virtual dStage_FloorInfo_c* getFloorInfo(void) const { return mFloorInfo; } + virtual void setMemoryConfig(dStage_MemoryConfig_c* i_MemoryConfig) { + (void)i_MemoryConfig; + OSReport("Room non memory config data!\n"); + JUT_ASSERT(2414, 0); + } + virtual dStage_MemoryConfig_c* getMemoryConfig(void) const { + OSReport("Room non memory config data!\n"); + JUT_ASSERT(2423, 0); + return NULL; + } + virtual void setMemoryMap(dStage_MemoryMap_c* i_MemoryMap) { + (void)i_MemoryMap; + OSReport("Room non memory map data!\n"); + JUT_ASSERT(2433, 0); + } + virtual dStage_MemoryMap_c* getMemoryMap(void) const { + OSReport("Room non memory map data!\n"); + JUT_ASSERT(2442, 0); + return NULL; + } + virtual void setMulti(dStage_Multi_c* i_Multi) { + (void)i_Multi; + OSReport("Room non multi data!\n"); + JUT_ASSERT(2452, 0); + } + virtual dStage_Multi_c* getMulti(void) const { + OSReport("Room non multi data!\n"); + JUT_ASSERT(2457, 0); + return NULL; + } + virtual void setOldMulti(void) { + OSReport("Room non old multi data!\n"); + JUT_ASSERT(2462, 0); + } + virtual void resetOldMulti(void) { + OSReport("Room non old multi data!\n"); + JUT_ASSERT(2467, 0); + } + virtual dStage_Multi_c* getOldMulti(void) const { + OSReport("Room non old multi data!\n"); + JUT_ASSERT(2472, 0); + return NULL; + } + virtual void setLbnk(dStage_Lbnk_c* i_Lbnk) { mLbnk = i_Lbnk; } + virtual dStage_Lbnk_c* getLbnk(void) const { return mLbnk; } + virtual void setTresure(stage_tresure_class* i_Tresure) { mTresure = i_Tresure; } + virtual stage_tresure_class* getTresure(void) const { return mTresure; } + virtual void setDMap(dStage_DMap_c* i_DMap) { + (void)i_DMap; + OS_REPORT("Room non DMap data\n"); + JUT_ASSERT(2508, 0); + } + virtual dStage_DMap_c* getDMap(void) const { + OS_REPORT("Room non DMap data\n"); + JUT_ASSERT(2513, 0); + return NULL; + } + virtual void setDrTg(stage_tgsc_class* i_DrTg) { mDrTg = i_DrTg; } + virtual stage_tgsc_class* getDrTg(void) const { return mDrTg; } + virtual void setDoor(stage_tgsc_class* i_Door) { mDoor = i_Door; } + virtual stage_tgsc_class* getDoor(void) const { return mDoor; } + virtual void setMapPath(void* i_MapPath) { + (void)i_MapPath; + OSReport("stage non 2d map path data !!\n"); + JUT_ASSERT(2557, 0); + } + virtual void* getMapPath(void) { + OSReport("stage non 2d map path data !!\n"); + JUT_ASSERT(2561, 0); + return NULL; + } + virtual void setElst(dStage_Elst_c* i_Elst) { + (void)i_Elst; + dStage_SetErrorRoom(); + OSReport("Room non envLayserSet data\n"); + JUT_ASSERT(2572, 0); + } + virtual dStage_Elst_c* getElst(void) { + dStage_SetErrorRoom(); + OSReport("Room no Elst Data!!\n"); + return NULL; + } public: /* 0x08 */ stage_pure_lightvec_info_class* mLightVecInfo; @@ -726,10 +983,13 @@ public: /* 0x44 */ dStage_SoundInfo_c* mSoundInfCL; /* 0x48 */ stage_scls_info_dummy_class* mSclsInfo; /* 0x4C */ dStage_Lbnk_c* mLbnk; - /* 0x50 */ stage_tresure_class* mTreasure; + /* 0x50 */ stage_tresure_class* mTresure; /* 0x54 */ stage_tgsc_class* mDrTg; /* 0x58 */ stage_tgsc_class* mDoor; /* 0x5C */ dStage_FloorInfo_c* mFloorInfo; +#ifdef DEBUG + /* 0x60 */ int field_0x60; +#endif /* 0x60 */ u16 mPlayerNum; /* 0x62 */ u16 field_0x62; /* 0x64 */ int mVrboxNumInfo; @@ -737,6 +997,7 @@ public: }; // Size: 0x6C class dBgW_base; + class dStage_roomStatus_c { public: /* 0x000 */ dStage_roomDt_c mRoomDt; @@ -757,13 +1018,6 @@ public: STATIC_ASSERT(sizeof(dStage_roomStatus_c) == 0x404); -extern s8 mStayNo__20dStage_roomControl_c; // gStayNo -extern s8 mOldStayNo__20dStage_roomControl_c; -extern s8 mNextStayNo__20dStage_roomControl_c; -extern s8 m_time_pass__20dStage_roomControl_c; -extern u8 mNoChangeRoom__20dStage_roomControl_c; -extern s8 data_804505F0; // roomReadId - class dStage_roomControl_c { public: class roomDzs_c { @@ -813,15 +1067,18 @@ public: /* 8002490C */ static void setArcBank(int, char const*); /* 80024940 */ static char* getArcBank(int); /* 80024954 */ static bool resetArchiveBank(int); - /* 80024DB0 */ static void SetTimePass(int); + /* 80024DB0 */ static void SetTimePass(int i_TimePass) { m_time_pass = i_TimePass; } /* 8025BAAC */ static void setZoneNo(int, int); - static s8 GetTimePass() { return m_time_pass; } + static u8 GetTimePass() { return m_time_pass; } static s8 getStayNo() { return mStayNo; } static u8 getRegionNo(int i_roomNo) { return mStatus[i_roomNo].mRegionNo; } static s8 getMemoryBlockID(int i_roomNo) { return mStatus[i_roomNo].mMemBlockID; } dKy_tevstr_c* getTevStr(int i_roomNo) { return &mStatus[i_roomNo].mKyTevStr; } - void setStatusFlag(int i_roomNo, u8 flag) { mStatus[i_roomNo].mFlag = flag; } + void setStatusFlag(int i_roomNo, u8 flag) { + JUT_ASSERT(2679, 0 <= i_roomNo && i_roomNo < 64); + mStatus[i_roomNo].mFlag = flag; + } static void onStatusDraw(int i_roomNo) { mStatus[i_roomNo].mDraw = true; } static dStage_FileList2_dt_c* getFileList2(int i_roomNo) { return mStatus[i_roomNo].mRoomDt.mFileList2Info; @@ -829,8 +1086,8 @@ public: static char* getDemoArcName() { return mDemoArcName; } static nameData* getArcBankName() { return mArcBankName; } static bankData* getArcBankData() { return mArcBankData; } - static void setRoomReadId(s8 id) { data_804505F0 = id; } - static s8 getRoomReadId() { return data_804505F0; } + static void setRoomReadId(s8 id) { mRoomReadId = id; } + static s8 getRoomReadId() { return mRoomReadId; } static void offNoChangeRoom() { mNoChangeRoom = false; } static void onNoChangeRoom() { mNoChangeRoom = true; } static void setProcID(u32 id) { mProcID = id; } @@ -838,14 +1095,19 @@ public: static void setStatusProcID(int i_roomNo, fpc_ProcID i_id) { mStatus[i_roomNo].mProcID = i_id; } static int getStatusProcID(int i_roomNo) { return mStatus[i_roomNo].mProcID; } static void setRegionNo(int i_roomNo, u8 i_regionNo) { mStatus[i_roomNo].mRegionNo = i_regionNo; } - static void setZoneCount(int i_roomNo, int count) { mStatus[i_roomNo].mZoneCount = count; } + static void setZoneCount(int i_roomNo, int count) { + JUT_ASSERT(2737, 0 <= i_roomNo && i_roomNo < 64); + mStatus[i_roomNo].mZoneCount = count; + } static void setMemoryBlockID(int i_roomNo, int i_blockID) { + JUT_ASSERT(2753, 0 <= i_roomNo && i_roomNo < 64); mStatus[i_roomNo].mMemBlockID = i_blockID; } static void setFileList2(int i_roomNo, dStage_FileList2_dt_c* list) { - mStatus[i_roomNo].mRoomDt.mFileList2Info = list; + JUT_ASSERT(2711, 0 <= i_roomNo && i_roomNo < 64); + mStatus[i_roomNo].mRoomDt.setFileList2Info(list); } static void setBgW(int param_0, dBgW_base* i_bgw) { @@ -857,14 +1119,18 @@ public: } void offStatusFlag(int i_roomNo, u8 flag) { + JUT_ASSERT(2695, 0 <= i_roomNo && i_roomNo < 64); return cLib_offBit(mStatus[i_roomNo].mFlag, flag); } void onStatusFlag(int i_roomNo, u8 flag) { + JUT_ASSERT(2691, 0 <= i_roomNo && i_roomNo < 64); return cLib_onBit(mStatus[i_roomNo].mFlag, flag); } - static JKRExpHeap* mMemoryBlock[19]; + static const int MEMORY_BLOCK_MAX = 19; + + static JKRExpHeap* mMemoryBlock[MEMORY_BLOCK_MAX]; static char mArcBank[32][10]; static dStage_roomStatus_c mStatus[0x40]; static char mDemoArcName[10]; @@ -875,8 +1141,9 @@ public: static s8 mStayNo; static s8 mOldStayNo; static s8 mNextStayNo; - static s8 m_time_pass; + static u8 m_time_pass; static u8 mNoChangeRoom; + static s8 mRoomReadId; private: /* 0x0 */ u8 field_0x0[4]; @@ -939,16 +1206,6 @@ struct FuncTable { dStage_Func function; }; -struct dStage_fileHeader { - /* 0x0 */ int chunkCount; -}; - -struct dStage_nodeHeader { - /* 0x0 */ u32 m_tag; - /* 0x4 */ int m_entryNum; - /* 0x8 */ u32 m_offset; -}; - const char* dStage_getName2(s16, s8); dStage_objectNameInf* dStage_searchName(const char*); static int dStage_stageKeepTresureInit(dStage_dt_c*, void*, int, void*); @@ -1008,9 +1265,7 @@ int dStage_changeScene4Event(int i_exitId, s8 room_no, int i_wipe, bool param_3, u32 mode, s16 angle, int param_7); void dStage_Create(); void dStage_Delete(); -static s32 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* param_0); void dStage_restartRoom(u32 roomParam, u32 mode, int param_2); -class cBgS_GndChk; int dStage_RoomCheck(cBgS_GndChk* gndChk); void dStage_dt_c_roomReLoader(void* i_data, dStage_dt_c* stageDt, int param_2); void dStage_dt_c_roomLoader(void* i_data, dStage_dt_c* stageDt, int param_2); @@ -1018,7 +1273,7 @@ dStage_KeepDoorInfo* dStage_GetKeepDoorInfo(); dStage_KeepDoorInfo* dStage_GetRoomKeepDoorInfo(); void dStage_dt_c_fieldMapLoader(void* i_data, dStage_dt_c* i_stage); -inline bool dStage_roomRead_dt_c_ChkBg(u8 param_0) { +inline s32 dStage_roomRead_dt_c_ChkBg(u8 param_0) { return param_0 & 0x80; } @@ -1034,7 +1289,7 @@ inline u8 dStage_roomRead_dt_c_GetLoadRoomIndex(u8 param_0) { return param_0 & 0x3f; } -inline u8 dStage_roomRead_dt_c_GetReverb(roomRead_data_class& room) { +inline u32 dStage_roomRead_dt_c_GetReverb(roomRead_data_class& room) { return room.field_0x1 & 0x7F; } @@ -1066,7 +1321,7 @@ inline int dStage_stagInfo_GetMsgGroup(stage_stag_info_class* p_info) { return p_info->mMsgGroup; } -inline s32 i_dStage_stagInfo_GetSaveTbl(stage_stag_info_class* param_0) { +inline s32 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* param_0) { return param_0->field_0x09 >> 1 & 0x1f; } @@ -1123,7 +1378,7 @@ inline s32 dStage_sclsInfo_getWipeTime(stage_scls_info_class* p_info) { } inline int dStage_sclsInfo_getTimeH(stage_scls_info_class* p_info) { - return (u8)((p_info->field_0xa >> 4) & 0xF) | (p_info->field_0xb & 0x10 & ~0xF); + return ((p_info->field_0xa >> 4) & 0xF) | (p_info->field_0xb & 0x10); } inline u32 dStage_FileList_dt_getMiniMap(dStage_FileList_dt_c* p_fList) { diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index d5cfbeab51..e24955e55a 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -45,18 +45,21 @@ class JKRHeap; class cM3dGPla; struct fopAcM_prmBase_class { - /* 0x00 */ u32 field_0x00; - /* 0x04 */ cXyz field_0x04; - /* 0x10 */ csXyz field_0x10; - /* 0x16 */ u16 field_0x16; -}; // Size = 0x18 - -struct fopAcM_prm_class { /* 0x00 */ u32 parameters; /* 0x04 */ cXyz position; /* 0x10 */ csXyz angle; - /* 0x16 */ u16 setId; - /* 0x18 */ u8 scale[3]; + /* 0x16 */ u16 setID; +}; // Size: 0x18 + +struct fopAcM_prmScale_class { + /* 0x0 */ u8 x; + /* 0x1 */ u8 y; + /* 0x2 */ u8 z; +}; // Size: 0x3 + +struct fopAcM_prm_class { + /* 0x00 */ fopAcM_prmBase_class base; + /* 0x18 */ fopAcM_prmScale_class scale; /* 0x1C */ fpc_ProcID parent_id; /* 0x20 */ s8 subtype; /* 0x21 */ s8 room_no; @@ -486,6 +489,14 @@ fpc_ProcID fopAcM_create(s16 i_procName, u16 i_setId, u32 i_parameters, const cX fpc_ProcID fopAcM_create(s16 i_procName, u32 i_parameters, const cXyz* i_pos, int i_roomNo, const csXyz* i_angle, const cXyz* i_scale, s8 i_subtype); +inline fpc_ProcID fopAcM_create(s16 i_procName, createFunc i_createFunc, void* params) { + return fpcM_Create(i_procName, i_createFunc, params); +} + +inline fpc_ProcID fopAcM_Create(s16 i_procName, createFunc i_createFunc, void* params) { + return fpcM_Create(i_procName, i_createFunc,params); +} + fopAc_ac_c* fopAcM_fastCreate(s16 i_procName, u32 i_parameters, const cXyz* i_pos, int i_roomNo, const csXyz* i_angle, const cXyz* i_scale, s8 i_subtype, createFunc i_createFunc, void* i_createFuncData); diff --git a/include/f_op/f_op_camera_mng.h b/include/f_op/f_op_camera_mng.h index 05ade1a4ba..75f78c351c 100644 --- a/include/f_op/f_op_camera_mng.h +++ b/include/f_op/f_op_camera_mng.h @@ -7,6 +7,10 @@ typedef struct leafdraw_method_class leafdraw_method_class; +struct fopCamM_prm_class { + /* 0x00 */ fopAcM_prmBase_class base; +}; // Size: 0x18 + class camera_process_class : public view_class { public: /* 0x210 */ create_tag_class create_tag; |
