summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2025-04-13 23:54:57 -0400
committerGitHub <noreply@github.com>2025-04-13 20:54:57 -0700
commitf891887626e36b991b0e8afd4e6b995c3d1a4540 (patch)
tree639a8bbd0062ca6f0d8ae6775e2afb06b2b096bf /include
parent3df5c7bb42c1b886024b254fec28e5f98310b630 (diff)
d_stage cleanup (#2392)
Diffstat (limited to 'include')
-rw-r--r--include/d/d_com_inf_game.h5
-rw-r--r--include/d/d_kankyo_data.h8
-rw-r--r--include/d/d_stage.h895
-rw-r--r--include/f_op/f_op_actor_mng.h29
-rw-r--r--include/f_op/f_op_camera_mng.h4
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;