mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
clean up dolphin files / work on some rels (#212)
* d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop * dolphin OS work / cleanup * dolphin GX work / cleanup * finish changing dolphin files to C * more files into C * match rest of MSL_C math functions * more dolphin files converted to C * remove asm * d_bg_w work * remove asm * d_a_alink work / kytag14
This commit is contained in:
+689
-278
File diff suppressed because it is too large
Load Diff
+87
-41
@@ -78,6 +78,7 @@ public:
|
||||
void setBufferSize(u32 size) { mBufferSize = size; }
|
||||
void setBuffer(u8* buf) { mBuffer = buf; }
|
||||
u8* getBuffer() { return mBuffer; }
|
||||
bool checkNoSetIdx() const { return mIdx == 0xFFFF; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ u16 mIdx;
|
||||
@@ -198,29 +199,38 @@ public:
|
||||
public:
|
||||
enum daPy_FLG0 {
|
||||
FLG0_UNK_40000000 = 0x40000000,
|
||||
EQUIP_HEAVY_BOOTS = 0x2000000,
|
||||
PLAYER_NO_DRAW = 0x8000000,
|
||||
FLG0_EQUIP_HVY_BOOTS = 0x2000000,
|
||||
FLG0_PLAYER_NO_DRAW = 0x8000000,
|
||||
FLG0_UNK_10000000 = 0x10000000,
|
||||
FLG0_UNK_1000000 = 0x1000000,
|
||||
UNDER_WATER_MOVEMENT = 0x800000,
|
||||
FLG0_UNDERWATER = 0x800000,
|
||||
FLG0_UNK_100000 = 0x100000,
|
||||
FLG0_UNK_80000 = 0x80000,
|
||||
FLG0_UNK_20000 = 0x20000,
|
||||
FLG0_UNK_8000 = 0x8000,
|
||||
FLG0_UNK_4000 = 0x4000,
|
||||
MAGNE_BOOTS_ON = 0x1000,
|
||||
FLG0_UNK_2000 = 0x2000,
|
||||
FLG0_MAGNE_BOOTS_ON = 0x1000,
|
||||
FLG0_UNK_100 = 0x100,
|
||||
FLG0_UNK_80 = 0x80,
|
||||
FLG0_UNK_40 = 0x40,
|
||||
FLG0_UNK_20 = 0x20,
|
||||
UNK_F_ROLL_CRASH_2 = 0x10,
|
||||
UNK_F_ROLL_CRASH_1 = 0x8,
|
||||
MIDNA_RIDE = 4,
|
||||
FLG0_UNK_10 = 0x10,
|
||||
FLG0_UNK_8 = 0x8,
|
||||
FLG0_MIDNA_RIDE = 4,
|
||||
FLG0_UNK_2 = 2,
|
||||
|
||||
HEAVY_STATE_BOOTS = FLG0_UNK_40000000 | EQUIP_HEAVY_BOOTS | FLG0_UNK_20000,
|
||||
FLG0_HVY_STATE = FLG0_UNK_40000000 | FLG0_EQUIP_HVY_BOOTS | FLG0_UNK_20000,
|
||||
};
|
||||
|
||||
enum daPy_FLG1 {
|
||||
IS_WOLF = 0x2000000,
|
||||
FLG1_UNK_10000000 = 0x10000000,
|
||||
FLG1_IS_WOLF = 0x2000000,
|
||||
FLG1_UNK_400000 = 0x400000,
|
||||
FLG1_UNK_10000 = 0x10000,
|
||||
THROW_DAMAGE = 0x4000,
|
||||
FLG1_THROW_DAMAGE = 0x4000,
|
||||
FLG1_UNK_20 = 0x20,
|
||||
FLG1_UNK_10 = 0x10,
|
||||
FLG1_UNK_4 = 4,
|
||||
FLG1_UNK_2 = 2,
|
||||
};
|
||||
@@ -229,51 +239,78 @@ public:
|
||||
FLG2_UNK_20000000 = 0x20000000,
|
||||
FLG2_UNK_4080000 = 0x4080000,
|
||||
FLG2_UNK_2080000 = 0x2080000,
|
||||
BOAR_SINGLE_BATTLE = 0x1800000,
|
||||
STATUS_WINDOW_DRAW = 0x400000,
|
||||
FLG2_BOAR_SINGLE_BATTLE = 0x1800000,
|
||||
FLG2_UNK_1000000 = 0x1000000,
|
||||
FLG2_UNK_800000 = 0x800000,
|
||||
FLG2_STATUS_WINDOW_DRAW = 0x400000,
|
||||
FLG2_UNK_280000 = 0x280000,
|
||||
UNK_ARMOR = 0x80000,
|
||||
SCENE_CHANGE_START = 0x8000,
|
||||
FLG2_UNK_200000 = 0x200000,
|
||||
FLG2_UNK_80000 = 0x80000,
|
||||
FLG2_UNK_40000 = 0x40000,
|
||||
FLG2_UNK_20000 = 0x20000,
|
||||
FLG2_SCN_CHG_START = 0x8000,
|
||||
FLG2_UNK_4000 = 0x4000,
|
||||
UNK_FLG2_2 = 2,
|
||||
UNK_DAPY_FLG2_1 = 1
|
||||
FLG2_UNK_80 = 0x80,
|
||||
FLG2_UNK_40 = 0x40,
|
||||
FLG2_UNK_10 = 0x10,
|
||||
FLG2_UNK_8 = 8,
|
||||
FLG2_UNK_2 = 2,
|
||||
FLG2_UNK_1 = 1,
|
||||
|
||||
FLG2_UNK_58 = FLG2_UNK_40 | FLG2_UNK_10 | FLG2_UNK_8,
|
||||
};
|
||||
|
||||
enum daPy_FLG3 {
|
||||
FLG3_UNK_40000000 = 0x40000000,
|
||||
FLG3_UNK_2000000 = 0x2000000,
|
||||
FLG3_UNK_1000000 = 0x1000000,
|
||||
FLG3_UNK_100000 = 0x100000,
|
||||
COPY_ROD_THROW_AFTER = 0x40000
|
||||
FLG3_UNK_80000 = 0x80000,
|
||||
FLG3_COPY_ROD_THROW_AFTER = 0x40000,
|
||||
FLG3_UNK_4000 = 0x4000,
|
||||
};
|
||||
|
||||
enum daPy_ERFLG0 {
|
||||
ERFLG0_UNK_8000000 = 0x8000000,
|
||||
ERFLG0_UNK_2000000 = 0x2000000,
|
||||
ERFLG0_UNK_1000000 = 0x1000000,
|
||||
ERFLG0_UNK_800000 = 0x800000,
|
||||
ERFLG0_UNK_400000 = 0x400000,
|
||||
ERFLG0_UNK_200000 = 0x200000,
|
||||
ERFLG0_UNK_100000 = 0x100000,
|
||||
ERFLG0_UNK_2000 = 0x2000,
|
||||
ERFLG0_UNK_400 = 0x400,
|
||||
ERFLG0_UNK_100 = 0x100,
|
||||
ERFLG0_UNK_4 = 4,
|
||||
ERFLG0_UNK_2 = 2,
|
||||
ERFLG0_UNK_1 = 1,
|
||||
};
|
||||
|
||||
enum daPy_ERFLG1 {
|
||||
GANON_FINISH = 0x80000000,
|
||||
UNK_FORCE_PUT_POS = 0x2000,
|
||||
ERFLG1_GANON_FINISH = 0x80000000,
|
||||
ERFLG1_UNK_10000000 = 0x10000000,
|
||||
ERFLG1_UNK_4000000 = 0x4000000,
|
||||
ERFLG1_UNK_40000 = 0x40000,
|
||||
ERFLG1_UNK_2000 = 0x2000,
|
||||
ERFLG1_UNK_200 = 0x200,
|
||||
ERFLG1_UNK_4 = 4,
|
||||
ERFLG1_UNK_2 = 2,
|
||||
ERFLG1_UNK_1 = 1,
|
||||
};
|
||||
|
||||
enum daPy_ERFLG2 {
|
||||
ERFLG2_UNK_100 = 0x100,
|
||||
ERFLG2_UNK_20 = 0x20,
|
||||
};
|
||||
|
||||
enum daPy_RFLG0 {
|
||||
RFLG0_UNK_8000000 = 0x8000000,
|
||||
RFLG0_UNK_4000 = 0x4000,
|
||||
ENEMY_ATTENTION_LOCK = 0x1000,
|
||||
RFLG0_ENEMY_ATTN_LOCK = 0x1000,
|
||||
RFLG0_UNK_400 = 0x400,
|
||||
RFLG0_UNK_80 = 0x80,
|
||||
RFLG0_UNK_40 = 0x40,
|
||||
RFLG0_UNK_10 = 0x10,
|
||||
RFLG0_UNK_2 = 0x2,
|
||||
};
|
||||
|
||||
@@ -323,7 +360,7 @@ public:
|
||||
static BOOL checkTradeItem(int);
|
||||
static BOOL checkDungeonWarpItem(int);
|
||||
static BOOL checkMasterSwordEquip();
|
||||
void checkWoodShieldEquip();
|
||||
bool checkWoodShieldEquip();
|
||||
f32 getAttentionOffsetY();
|
||||
s16 checkNowWolfEyeUp();
|
||||
static void forceRestartRoom(int, u32, int);
|
||||
@@ -345,10 +382,10 @@ public:
|
||||
static void setPlayerDamage(int, int);
|
||||
static void setMidnaMotionNum(int);
|
||||
static void setMidnaFaceNum(int);
|
||||
int checkNoResetFlg0(daPy_FLG0) const;
|
||||
int checkEquipHeavyBoots() const;
|
||||
int checkBoarSingleBattle() const;
|
||||
int checkEndResetFlg0(daPy_ERFLG0) const;
|
||||
u32 checkNoResetFlg0(daPy_FLG0) const;
|
||||
u32 checkEquipHeavyBoots() const;
|
||||
u32 checkBoarSingleBattle() const;
|
||||
u32 checkEndResetFlg0(daPy_ERFLG0) const;
|
||||
void onNoResetFlg2(daPy_py_c::daPy_FLG2);
|
||||
void offNoResetFlg0(daPy_py_c::daPy_FLG0);
|
||||
int checkEndResetFlg2(daPy_py_c::daPy_ERFLG2) const;
|
||||
@@ -356,14 +393,14 @@ public:
|
||||
int checkNoResetFlg3(daPy_py_c::daPy_FLG3) const;
|
||||
BOOL checkShieldGet();
|
||||
void onNoResetFlg0(daPy_py_c::daPy_FLG0);
|
||||
int checkEndResetFlg1(daPy_py_c::daPy_ERFLG1) const;
|
||||
u32 checkEndResetFlg1(daPy_py_c::daPy_ERFLG1) const;
|
||||
void offNoResetFlg1(daPy_py_c::daPy_FLG1);
|
||||
void offNoResetFlg2(daPy_py_c::daPy_FLG2);
|
||||
int checkWolf() const;
|
||||
u32 checkWolf() const;
|
||||
BOOL checkSwordGet();
|
||||
int checkResetFlg0(daPy_py_c::daPy_RFLG0) const;
|
||||
int checkNoResetFlg2(daPy_py_c::daPy_FLG2) const;
|
||||
int checkMagneBootsOn() const;
|
||||
u32 checkResetFlg0(daPy_py_c::daPy_RFLG0) const;
|
||||
u32 checkNoResetFlg2(daPy_py_c::daPy_FLG2) const;
|
||||
u32 checkMagneBootsOn() const;
|
||||
void changeDemoPos0(cXyz const*);
|
||||
void changeDemoMode(u32, int, int, s16);
|
||||
void changeDemoParam2(s16);
|
||||
@@ -379,6 +416,7 @@ public:
|
||||
/* 80182B9C */ void getRightHandPos() const;
|
||||
/* 8015DFD8 */ const cXyz getItemPos() const;
|
||||
/* 8015DFF4 */ const cXyz& getLeftHandPos() const;
|
||||
/* 800977B4 */ bool checkMidnaRide() const;
|
||||
|
||||
/* const cXyz* getItemPos() const {
|
||||
return &mItemPos;
|
||||
@@ -567,15 +605,15 @@ public:
|
||||
|
||||
bool i_getSumouMode() const { return getSumouCameraMode(); }
|
||||
|
||||
bool checkStatusWindowDraw() { return i_checkNoResetFlg2(STATUS_WINDOW_DRAW); }
|
||||
bool checkStatusWindowDraw() { return i_checkNoResetFlg2(FLG2_STATUS_WINDOW_DRAW); }
|
||||
bool checkCargoCarry() const { return mSpecialMode == SMODE_CARGO_CARRY; }
|
||||
bool getHeavyStateAndBoots() { return i_checkNoResetFlg0(HEAVY_STATE_BOOTS); }
|
||||
bool checkEnemyAttentionLock() const { return i_checkResetFlg0(ENEMY_ATTENTION_LOCK); }
|
||||
bool getHeavyStateAndBoots() { return i_checkNoResetFlg0(FLG0_HVY_STATE); }
|
||||
bool checkEnemyAttentionLock() const { return i_checkResetFlg0(RFLG0_ENEMY_ATTN_LOCK); }
|
||||
bool checkCanoeSlider() const { return mSpecialMode == 0x2D; }
|
||||
u8 getCutType() const { return mCutType; }
|
||||
u16 getSwordAtUpTime() const { return mSwordUpTimer; }
|
||||
bool checkWaterInMove() const { return i_checkNoResetFlg0(UNDER_WATER_MOVEMENT); }
|
||||
bool checkSceneChangeAreaStart() const { return i_checkNoResetFlg2(SCENE_CHANGE_START); }
|
||||
bool checkWaterInMove() const { return i_checkNoResetFlg0(FLG0_UNDERWATER); }
|
||||
bool checkSceneChangeAreaStart() const { return i_checkNoResetFlg2(FLG2_SCN_CHG_START); }
|
||||
|
||||
// some functions use these function as an inline
|
||||
// is there a better way to handle this?
|
||||
@@ -583,28 +621,36 @@ public:
|
||||
int i_checkNoResetFlg1(daPy_FLG1 pFlag) const { return mNoResetFlg1 & pFlag; }
|
||||
int i_checkNoResetFlg2(daPy_FLG2 pFlag) const { return mNoResetFlg2 & pFlag; }
|
||||
int i_checkNoResetFlg3(daPy_FLG3 pFlag) const { return mNoResetFlg3 & pFlag; }
|
||||
|
||||
void i_onNoResetFlg0(int pFlg) { mNoResetFlg0 |= pFlg; }
|
||||
void i_onNoResetFlg1(int pFlg) { mNoResetFlg1 |= pFlg; }
|
||||
void i_onNoResetFlg2(int pFlg) { mNoResetFlg2 |= pFlg; }
|
||||
void i_onNoResetFlg3(int pFlg) { mNoResetFlg3 |= pFlg; }
|
||||
|
||||
void i_offNoResetFlg0(int pFlg) { mNoResetFlg0 &= ~pFlg; }
|
||||
void i_offNoResetFlg2(int pFlg) { mNoResetFlg2 &= ~pFlg; }
|
||||
void i_offNoResetFlg3(int pFlg) { mNoResetFlg3 &= ~pFlg; }
|
||||
|
||||
void i_offResetFlg0(int flag) { mResetFlg0 &= ~flag; }
|
||||
void i_onResetFlg0(int flag) { mResetFlg0 |= flag; }
|
||||
void i_onResetFlg1(int flag) { mResetFlg1 |= flag; }
|
||||
|
||||
void i_onEndResetFlg0(int flag) { mEndResetFlg0 |= flag; }
|
||||
void i_onEndResetFlg2(int flag) { mEndResetFlg2 |= flag; }
|
||||
|
||||
int i_checkResetFlg0(daPy_py_c::daPy_RFLG0 flag) const { return mResetFlg0 & flag; }
|
||||
|
||||
int i_checkEndResetFlg0(daPy_py_c::daPy_ERFLG0 flag) const { return mEndResetFlg0 & flag; }
|
||||
int i_checkEndResetFlg1(daPy_py_c::daPy_ERFLG1 flag) const { return mEndResetFlg1 & flag; }
|
||||
|
||||
void i_onEndResetFlg1(daPy_ERFLG1 pFlg) { mEndResetFlg1 |= pFlg; }
|
||||
u32 i_checkWolf() const { return i_checkNoResetFlg1(IS_WOLF); }
|
||||
BOOL i_checkEquipHeavyBoots() const { return i_checkNoResetFlg0(EQUIP_HEAVY_BOOTS); }
|
||||
BOOL i_checkMagneBootsOn() const { return i_checkNoResetFlg0(MAGNE_BOOTS_ON); }
|
||||
bool i_checkMidnaRide() const { return i_checkNoResetFlg0(MIDNA_RIDE); }
|
||||
void i_onPlayerNoDraw() { i_onNoResetFlg0(PLAYER_NO_DRAW); }
|
||||
void i_offPlayerNoDraw() { i_offNoResetFlg0(PLAYER_NO_DRAW); }
|
||||
|
||||
u32 i_checkWolf() const { return i_checkNoResetFlg1(FLG1_IS_WOLF); }
|
||||
BOOL i_checkEquipHeavyBoots() const { return i_checkNoResetFlg0(FLG0_EQUIP_HVY_BOOTS); }
|
||||
BOOL i_checkMagneBootsOn() const { return i_checkNoResetFlg0(FLG0_MAGNE_BOOTS_ON); }
|
||||
bool i_checkMidnaRide() const { return i_checkNoResetFlg0(FLG0_MIDNA_RIDE); }
|
||||
void i_onPlayerNoDraw() { i_onNoResetFlg0(FLG0_PLAYER_NO_DRAW); }
|
||||
void i_offPlayerNoDraw() { i_offNoResetFlg0(FLG0_PLAYER_NO_DRAW); }
|
||||
|
||||
inline static u32 i_getLastSceneMode();
|
||||
inline static u32 getLastSceneMode();
|
||||
|
||||
@@ -11,10 +11,57 @@ struct sBgPc {
|
||||
/* 0x10 */ u32 code4;
|
||||
}; // Size: 0x14
|
||||
|
||||
enum dBgPc_ECode {
|
||||
/* 0x00004000 */ CODE_OBJ_THRU = 0x4000,
|
||||
/* 0x00008000 */ CODE_CAM_THRU = 0x8000,
|
||||
/* 0x00010000 */ CODE_LINK_THRU = 0x10000,
|
||||
/* 0x00020000 */ CODE_ARROW_THRU = 0x20000,
|
||||
/* 0x00040000 */ CODE_HS_STICK = 0x40000,
|
||||
/* 0x00080000 */ CODE_BOOMERANG_THRU = 0x80000,
|
||||
/* 0x00100000 */ CODE_ROPE_THRU = 0x100000,
|
||||
/* 0x00200000 */ CODE_HORSE_NO_ENTRY = 0x200000,
|
||||
/* 0x00400000 */ CODE_SHDW_THRU = 0x400000,
|
||||
/* 0x00800000 */ CODE_BOMB_THRU = 0x800000,
|
||||
/* 0x01000000 */ CODE_IRON_BALL_THRU = 0x1000000,
|
||||
/* 0x02000000 */ CODE_ATTACK_THRU = 0x2000000,
|
||||
/* 0x40000000 */ CODE_UNDERWATER_ROOF = 0x40000000,
|
||||
};
|
||||
|
||||
class dBgPc {
|
||||
public:
|
||||
void setCode(sBgPc&);
|
||||
|
||||
u32 getHorseNoEntry() const { return m_code.code0 >> 0x15 & 1; }
|
||||
u32 getSpl() const { return m_code.code0 >> 0x18 & 0xF; }
|
||||
u32 getMagnet() const { return m_code.code0 >> 0x1C & 0x3; }
|
||||
u32 getMonkeyBars() const { return m_code.code0 >> 0x1F; }
|
||||
u32 getWallCode() const { return m_code.code1 >> 0x8 & 0xF; }
|
||||
u32 getAtt0Code() const { return m_code.code1 >> 0xC & 0xF; }
|
||||
u32 getAtt1Code() const { return m_code.code1 >> 0x10 & 0x7; }
|
||||
u32 getGroundCode() const { return m_code.code1 >> 0x13 & 0x1F; }
|
||||
u32 getObjThrough() const { return m_code.code0 & CODE_OBJ_THRU; }
|
||||
u32 getCamThrough() const { return m_code.code0 & CODE_CAM_THRU; }
|
||||
u32 getLinkThrough() const { return m_code.code0 & CODE_LINK_THRU; }
|
||||
u32 getArrowThrough() const { return m_code.code0 & CODE_ARROW_THRU; }
|
||||
u32 getHSStick() const { return m_code.code0 & CODE_HS_STICK; }
|
||||
u32 getBoomerangThrough() const { return m_code.code0 & CODE_BOOMERANG_THRU; }
|
||||
u32 getRopeThrough() const { return m_code.code0 & CODE_ROPE_THRU; }
|
||||
u32 getBombThrough() const { return m_code.code0 & CODE_BOMB_THRU; }
|
||||
u32 getIronBallThrough() const { return m_code.code1 & CODE_IRON_BALL_THRU; }
|
||||
u32 getShdwThrough() const { return m_code.code0 & CODE_SHDW_THRU; }
|
||||
u32 getUnderwaterRoof() const { return m_code.code0 & CODE_UNDERWATER_ROOF; }
|
||||
u32 getAttackThrough() const { return m_code.code1 & CODE_ATTACK_THRU; }
|
||||
u8 getRoom() const { return m_code.code4 >> 0x14; }
|
||||
u8 getExit() const { return m_code.code0 & 0x3F; }
|
||||
u8 getPolyCol() const { return m_code.code0 >> 6; }
|
||||
u8 getLinkNo() const { return m_code.code1; }
|
||||
u8 getCamMoveBG() const { return m_code.code2; }
|
||||
u8 getRoomCam() const { return m_code.code2 >> 8; }
|
||||
u8 getRoomPath() const { return m_code.code2 >> 0x10; }
|
||||
u8 getRoomPathPnt() const { return m_code.code2 >> 0x18; }
|
||||
u8 getRoomInf() const { return m_code.code4; }
|
||||
u8 getSnd() const { return m_code.code4 >> 0xB; }
|
||||
|
||||
private:
|
||||
/* 0x0 */ sBgPc m_code;
|
||||
};
|
||||
|
||||
@@ -12,7 +12,7 @@ struct PLC {
|
||||
/* 0x0 */ u32 magic;
|
||||
/* 0x4 */ u16 m_code_size;
|
||||
/* 0x6 */ u16 m_num;
|
||||
// ...
|
||||
/* 0x8 */ sBgPc* field_0x8;
|
||||
};
|
||||
|
||||
class dBgPlc {
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
/* 80074080 */ ~dBgPlc();
|
||||
/* 800740BC */ void setBase(void*);
|
||||
/* 800740C4 */ void getCode(int, sBgPc**) const;
|
||||
/* 800740DC */ void getGrpCode(int) const;
|
||||
/* 800740DC */ u32 getGrpCode(int) const;
|
||||
|
||||
private:
|
||||
/* 0x00 */ void* m_base;
|
||||
|
||||
@@ -78,7 +78,7 @@ public:
|
||||
int GetSpecialCode(cBgS_PolyInfo const&);
|
||||
int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
int GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
int GetUnderwaterRoofCode(cBgS_PolyInfo const&);
|
||||
u32 GetUnderwaterRoofCode(cBgS_PolyInfo const&);
|
||||
s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
int GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
int GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
@@ -87,7 +87,7 @@ public:
|
||||
s32 GetRoomCamId(cBgS_PolyInfo const&);
|
||||
s32 GetRoomPathId(cBgS_PolyInfo const&);
|
||||
s32 GetRoomPathPntNo(cBgS_PolyInfo const&);
|
||||
s32 GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
u8 GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
u32 ChkGrpInf(cBgS_PolyInfo const&, u32);
|
||||
s32 GetRoomId(cBgS_PolyInfo const&);
|
||||
bool GetPolyAttackThrough(cBgS_PolyInfo const&);
|
||||
|
||||
@@ -149,6 +149,7 @@ public:
|
||||
void SetGrndNone() { m_flags |= GRND_NONE; }
|
||||
void ClrGrndNone() { m_flags &= ~GRND_NONE; }
|
||||
bool ChkMoveBGOnly() const { return m_flags & MOVE_BG_ONLY; }
|
||||
void SetWallHit() { m_flags |= WALL_HIT; }
|
||||
|
||||
// inline dupe
|
||||
void i_ClrGroundHit() { m_flags &= ~GROUND_HIT; }
|
||||
|
||||
@@ -47,17 +47,17 @@ public:
|
||||
void SetUnderwaterRoof();
|
||||
|
||||
private:
|
||||
bool mObject;
|
||||
bool mCamera;
|
||||
bool mLink;
|
||||
bool mArrow;
|
||||
bool mBomb;
|
||||
bool mBoomerang;
|
||||
bool mRope;
|
||||
bool mUnderwaterRoof;
|
||||
bool mHorse;
|
||||
bool mStatue;
|
||||
bool mIronBall;
|
||||
/* 0x4 */ bool mObject;
|
||||
/* 0x5 */ bool mCamera;
|
||||
/* 0x6 */ bool mLink;
|
||||
/* 0x7 */ bool mArrow;
|
||||
/* 0x8 */ bool mBomb;
|
||||
/* 0x9 */ bool mBoomerang;
|
||||
/* 0xA */ bool mRope;
|
||||
/* 0xB */ bool mUnderwaterRoof;
|
||||
/* 0xC */ bool mHorse;
|
||||
/* 0xD */ bool mStatue;
|
||||
/* 0xE */ bool mIronBall;
|
||||
};
|
||||
|
||||
#endif /* D_BG_D_BG_S_POLY_PASS_CHK_H */
|
||||
|
||||
+127
-63
@@ -15,22 +15,23 @@
|
||||
|
||||
struct dBgS_CaptPoly {};
|
||||
|
||||
class cBgW_TriElm : public cM3dGPla {
|
||||
class cBgW_TriElm {
|
||||
public:
|
||||
/* 80079754 */ cBgW_TriElm();
|
||||
/* 0x00 */ cM3dGPla m_plane;
|
||||
|
||||
/* 80079754 */ cBgW_TriElm();
|
||||
/* 800796F8 */ virtual ~cBgW_TriElm();
|
||||
};
|
||||
|
||||
/* 0x14 vtable */
|
||||
}; // Size: 0x18
|
||||
|
||||
class cBgW_RwgElm {
|
||||
private:
|
||||
/* 0x0 */ u8 field_0x0[4];
|
||||
|
||||
public:
|
||||
/* 800791C4 */ cBgW_RwgElm();
|
||||
/* 0x0 */ u16 field_0x0;
|
||||
|
||||
/* 800791C4 */ cBgW_RwgElm();
|
||||
/* 800791D4 */ virtual ~cBgW_RwgElm();
|
||||
};
|
||||
}; // Size: 0x8
|
||||
|
||||
class cBgW_NodeTree : public cM3dGAab {
|
||||
public:
|
||||
@@ -39,22 +40,81 @@ public:
|
||||
/* 80079238 */ virtual ~cBgW_NodeTree();
|
||||
};
|
||||
|
||||
class cBgW_GrpElm : public cM3dGAab {
|
||||
class cBgW_GrpElm {
|
||||
public:
|
||||
/* 8007A1E4 */ cBgW_GrpElm();
|
||||
|
||||
/* 8007A184 */ virtual ~cBgW_GrpElm();
|
||||
|
||||
/* 0x4 */ cM3dGAab m_aab;
|
||||
};
|
||||
|
||||
struct cBgD_t {};
|
||||
struct cBgW_unk_b_data {
|
||||
/* 0x0 */ u16 field_0x0;
|
||||
/* 0x2 */ u16 field_0x2;
|
||||
/* 0x4 */ u16 field_0x4;
|
||||
}; // Size: 0x6
|
||||
|
||||
struct dzb_tri_data {
|
||||
/* 0x0 */ u16 field_0x0;
|
||||
/* 0x2 */ u16 field_0x2;
|
||||
/* 0x4 */ u16 field_0x4;
|
||||
/* 0x6 */ u16 m_id;
|
||||
/* 0x8 */ u16 m_grp;
|
||||
}; // Size: 0xA
|
||||
|
||||
struct dzb_ti_data {
|
||||
/* 0x0 */ u32 m_info0;
|
||||
/* 0x4 */ u32 m_info1;
|
||||
/* 0x8 */ u32 m_info2;
|
||||
/* 0xC */ u8 field_0xc[0x10 - 0xC];
|
||||
};
|
||||
|
||||
struct dzb_b_data {
|
||||
/* 0x0 */ u16 field_0x0;
|
||||
};
|
||||
|
||||
struct dzb_tree_data {
|
||||
/* 0x0 */ u16 field_0x0;
|
||||
/* 0x2 */ u16 field_0x2;
|
||||
/* 0x4 */ u16 m_id[1];
|
||||
/* 0x6 */ u8 field_0x6[0x14 - 0x6];
|
||||
}; // Size: 0x14
|
||||
|
||||
struct dzb_g_data {
|
||||
/* 0x00 */ u8 field_0x0[0x24 - 0x0];
|
||||
/* 0x24 */ u16 field_0x24;
|
||||
/* 0x26 */ u8 field_0x26[0x28 - 0x26];
|
||||
/* 0x28 */ u16 field_0x28;
|
||||
/* 0x2A */ u16 field_0x2a;
|
||||
/* 0x2C */ u8 field_0x2c[0x2E - 0x2C];
|
||||
/* 0x2E */ u16 field_0x2e;
|
||||
/* 0x30 */ u32 m_info;
|
||||
}; // Size: 0x34
|
||||
|
||||
struct cBgD_t {
|
||||
/* 0x00 */ int m_v_num; // vertex num
|
||||
/* 0x04 */ Vec* m_v_tbl; // vertex table
|
||||
/* 0x08 */ int m_t_num; // triangle num
|
||||
/* 0x0C */ dzb_tri_data* m_t_tbl; // triangle table
|
||||
/* 0x10 */ int m_b_num; // spatial?
|
||||
/* 0x14 */ dzb_b_data* m_b_tbl;
|
||||
/* 0x18 */ int m_tree_num; // face group?
|
||||
/* 0x1C */ dzb_tree_data* m_tree_tbl;
|
||||
/* 0x20 */ int m_g_num; // string group?
|
||||
/* 0x24 */ dzb_g_data* m_g_tbl;
|
||||
/* 0x28 */ int m_ti_num; // surface property?
|
||||
/* 0x2C */ dzb_ti_data* m_ti_tbl;
|
||||
/* 0x30 */ int field_0x30;
|
||||
};
|
||||
|
||||
class cBgW : public dBgW_Base {
|
||||
public:
|
||||
/* 80079294 */ cBgW();
|
||||
/* 800793A4 */ void FreeArea();
|
||||
/* 800793C4 */ void GlobalVtx();
|
||||
/* 80079484 */ void SetVtx();
|
||||
/* 80079668 */ void SetTri();
|
||||
/* 80079484 */ bool SetVtx();
|
||||
/* 80079668 */ bool SetTri();
|
||||
/* 80079770 */ void BlckConnect(u16*, int*, int);
|
||||
/* 8007998C */ void MakeBlckTransMinMax(cXyz*, cXyz*);
|
||||
/* 800799E0 */ void MakeBlckMinMax(int, cXyz*, cXyz*);
|
||||
@@ -63,37 +123,37 @@ public:
|
||||
/* 80079CC4 */ void MakeNodeTreeGrpRp(int);
|
||||
/* 80079DF0 */ void MakeNodeTree();
|
||||
/* 80079F38 */ bool Set(cBgD_t*, u32, f32 (*)[3][4]);
|
||||
/* 8007A200 */ void RwgLineCheck(u16, cBgS_LinChk*);
|
||||
/* 8007A3A0 */ void LineCheckRp(cBgS_LinChk*, int);
|
||||
/* 8007A52C */ void LineCheckGrpRp(cBgS_LinChk*, int, int);
|
||||
/* 8007A200 */ bool RwgLineCheck(u16, cBgS_LinChk*);
|
||||
/* 8007A3A0 */ bool LineCheckRp(cBgS_LinChk*, int);
|
||||
/* 8007A52C */ bool LineCheckGrpRp(cBgS_LinChk*, int, int);
|
||||
/* 8007A680 */ void RwgGroundCheckCommon(f32, u16, cBgS_GndChk*);
|
||||
/* 8007A774 */ void RwgGroundCheckGnd(u16, cBgS_GndChk*);
|
||||
/* 8007A824 */ void RwgGroundCheckWall(u16, cBgS_GndChk*);
|
||||
/* 8007A8F4 */ void GroundCrossRp(cBgS_GndChk*, int);
|
||||
/* 8007AA50 */ void GroundCrossGrpRp(cBgS_GndChk*, int, int);
|
||||
/* 8007AA50 */ bool GroundCrossGrpRp(cBgS_GndChk*, int, int);
|
||||
/* 8007ABC4 */ void CopyOldMtx();
|
||||
/* 8007AC10 */ void Move();
|
||||
/* 8007ADF0 */ void RwgShdwDraw(int, cBgS_ShdwDraw*);
|
||||
/* 8007AEA4 */ void ShdwDrawRp(cBgS_ShdwDraw*, int);
|
||||
/* 8007AFC0 */ void ShdwDrawGrpRp(cBgS_ShdwDraw*, int);
|
||||
/* 8007B17C */ void GetTrans(cXyz*) const;
|
||||
/* 8007B2F4 */ void GetPolyInfId(int) const;
|
||||
/* 8007B30C */ void GetPolyInf0(int, u32, u32) const;
|
||||
/* 8007B360 */ void GetMaskPolyInf0_NoShift(int, u32) const;
|
||||
/* 8007B654 */ void GetPolyInf1(int, u32, u32) const;
|
||||
/* 8007B78C */ void GetMaskPolyInf1_NoShift(int, u32) const;
|
||||
/* 8007B824 */ void GetPolyInf2(int, u32, u32) const;
|
||||
/* 8007B930 */ void GetTriGrp(int) const;
|
||||
/* 8007B2F4 */ int GetPolyInfId(int) const;
|
||||
/* 8007B30C */ u32 GetPolyInf0(int, u32, u32) const;
|
||||
/* 8007B360 */ u32 GetMaskPolyInf0_NoShift(int, u32) const;
|
||||
/* 8007B654 */ u32 GetPolyInf1(int, u32, u32) const;
|
||||
/* 8007B78C */ u32 GetMaskPolyInf1_NoShift(int, u32) const;
|
||||
/* 8007B824 */ u32 GetPolyInf2(int, u32, u32) const;
|
||||
/* 8007B930 */ int GetTriGrp(int) const;
|
||||
|
||||
/* 8007933C */ virtual ~cBgW();
|
||||
/* 80079EEC */ virtual void ChkMemoryError();
|
||||
/* 80079EEC */ virtual bool ChkMemoryError();
|
||||
/* 8007B948 */ virtual bool ChkNotReady() const;
|
||||
/* 8007B958 */ virtual bool ChkLock() const;
|
||||
/* 8007B964 */ virtual bool ChkMoveBg() const;
|
||||
virtual u32 ChkMoveFlag() const = 0;
|
||||
/* 8007B270 */ virtual cM3dGPla GetTriPla(cBgS_PolyInfo const&) const;
|
||||
/* 8007B1B4 */ virtual bool GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const;
|
||||
/* 8007B164 */ virtual void GetBnd() const;
|
||||
/* 8007B164 */ virtual cM3dGAab* GetBnd() const;
|
||||
/* 8007B2B0 */ virtual u32 GetGrpInf(cBgS_PolyInfo const&) const;
|
||||
virtual void OffMoveFlag() = 0;
|
||||
/* 8007B240 */ virtual void GetTopUnder(f32*, f32*) const;
|
||||
@@ -101,7 +161,7 @@ public:
|
||||
/* 8007AB9C */ virtual bool GroundCross(cBgS_GndChk*);
|
||||
/* 8007B084 */ virtual void ShdwDraw(cBgS_ShdwDraw*);
|
||||
virtual void CaptPoly(dBgS_CaptPoly&) = 0;
|
||||
virtual void WallCorrect(dBgS_Acch*) = 0;
|
||||
virtual bool WallCorrect(dBgS_Acch*) = 0;
|
||||
virtual void WallCorrectSort(dBgS_Acch*) = 0;
|
||||
virtual bool RoofChk(dBgS_RoofChk*) = 0;
|
||||
virtual bool SplGrpChk(dBgS_SplGrpChk*) = 0;
|
||||
@@ -113,40 +173,43 @@ public:
|
||||
virtual int GetSpecialCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetSpecialCode(int) = 0;
|
||||
virtual int GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyObjThrough(int) = 0;
|
||||
virtual void GetPolyCamThrough(int) = 0;
|
||||
virtual void GetPolyLinkThrough(int) = 0;
|
||||
virtual void GetPolyArrowThrough(int) = 0;
|
||||
virtual u32 GetPolyObjThrough(int) = 0;
|
||||
virtual u32 GetPolyCamThrough(int) = 0;
|
||||
virtual u32 GetPolyLinkThrough(int) = 0;
|
||||
virtual u32 GetPolyArrowThrough(int) = 0;
|
||||
virtual u32 GetPolyHSStick(int) = 0;
|
||||
virtual void GetPolyBoomerangThrough(int) = 0;
|
||||
virtual void GetPolyRopeThrough(int) = 0;
|
||||
virtual void GetPolyBombThrough(int) = 0;
|
||||
virtual void GetShdwThrough(int) = 0;
|
||||
virtual int GetUnderwaterRoofCode(int) = 0;
|
||||
virtual u32 GetPolyBoomerangThrough(int) = 0;
|
||||
virtual u32 GetPolyRopeThrough(int) = 0;
|
||||
virtual u32 GetPolyBombThrough(int) = 0;
|
||||
virtual bool GetShdwThrough(int) = 0;
|
||||
virtual u32 GetUnderwaterRoofCode(int) = 0;
|
||||
virtual int GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetLinkNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetIronBallThrough(int) = 0;
|
||||
virtual u32 GetIronBallThrough(int) = 0;
|
||||
virtual u32 GetAttackThrough(int) = 0;
|
||||
virtual s32 GetCamMoveBG(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomCamId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomPathId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomPathPntNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyGrpRoomInfId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetGrpSoundId(cBgS_PolyInfo const&) = 0;
|
||||
virtual u8 GetPolyGrpRoomInfId(cBgS_PolyInfo const&) = 0;
|
||||
virtual u8 GetGrpSoundId(cBgS_PolyInfo const&) = 0;
|
||||
virtual void CrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
virtual void TransPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
virtual void MatrixCrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
/* 80079564 */ virtual void CalcPlane();
|
||||
/* 800797BC */ virtual void ClassifyPlane();
|
||||
/* 8007B0A8 */ virtual bool ChkPolyThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007B0B0 */ virtual void ChkShdwDrawThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007B0B0 */ virtual bool ChkShdwDrawThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007B0DC */ virtual bool ChkGrpThrough(int, cBgS_GrpPassChk*, int);
|
||||
|
||||
u32 GetOldInvMtx(Mtx m) { return PSMTXInverse(m_inv_mtx, m); }
|
||||
MtxP GetBaseMtxP() { return pm_base; }
|
||||
bool ChkNoCalcVtx() { return field_0x88 & 2; }
|
||||
bool ChkFlush() { return field_0x91 & 8; }
|
||||
|
||||
public:
|
||||
/* 0x18 */ MtxP pm_base;
|
||||
@@ -161,9 +224,9 @@ public:
|
||||
/* 0x92 */ u16 field_0x92;
|
||||
/* 0x94 */ cBgW_TriElm* pm_tri;
|
||||
/* 0x98 */ cBgW_RwgElm* pm_rwg;
|
||||
/* 0x9C */ VertexPosition* pm_vtx_tbl; // type not confirmed
|
||||
/* 0xA0 */ void* pm_bgd;
|
||||
/* 0xA4 */ void* field_0xa4;
|
||||
/* 0x9C */ Vec* pm_vtx_tbl;
|
||||
/* 0xA0 */ cBgD_t* pm_bgd;
|
||||
/* 0xA4 */ cBgW_unk_b_data* field_0xa4;
|
||||
/* 0xA8 */ cBgW_GrpElm* pm_grp;
|
||||
/* 0xAC */ cBgW_NodeTree* pm_node_tree;
|
||||
};
|
||||
@@ -180,28 +243,28 @@ public:
|
||||
/* 8007B9EC */ void positionWallCorrect(dBgS_Acch*, f32, cM3dGPla&, cXyz* pupper_pos, f32);
|
||||
/* 8007BA40 */ void RwgWallCorrect(dBgS_Acch*, u16);
|
||||
/* 8007C234 */ void WallCorrectRp(dBgS_Acch*, int);
|
||||
/* 8007C360 */ void WallCorrectGrpRp(dBgS_Acch*, int, int);
|
||||
/* 8007C360 */ bool WallCorrectGrpRp(dBgS_Acch*, int, int);
|
||||
/* 8007C4AC */ void RwgWallCorrectSort(dBgS_Acch*, u16);
|
||||
/* 8007C714 */ void WallCorrectRpSort(dBgS_Acch*, int);
|
||||
/* 8007C808 */ void WallCorrectGrpRpSort(dBgS_Acch*, int, int);
|
||||
/* 8007D0DC */ void RwgRoofChk(u16, dBgS_RoofChk*);
|
||||
/* 8007D208 */ void RoofChkRp(dBgS_RoofChk*, int);
|
||||
/* 8007D330 */ void RoofChkGrpRp(dBgS_RoofChk*, int, int);
|
||||
/* 8007D330 */ bool RoofChkGrpRp(dBgS_RoofChk*, int, int);
|
||||
/* 8007D498 */ void RwgSplGrpChk(u16, dBgS_SplGrpChk*);
|
||||
/* 8007D5C4 */ void SplGrpChkRp(dBgS_SplGrpChk*, int);
|
||||
/* 8007D6F0 */ void SplGrpChkGrpRp(dBgS_SplGrpChk*, int, int);
|
||||
/* 8007D6F0 */ bool SplGrpChkGrpRp(dBgS_SplGrpChk*, int, int);
|
||||
/* 8007D858 */ void RwgCaptPoly(int, dBgS_CaptPoly&);
|
||||
/* 8007D8E8 */ void CaptPolyRp(dBgS_CaptPoly&, int);
|
||||
/* 8007DA04 */ void CaptPolyGrpRp(dBgS_CaptPoly&, int, int);
|
||||
/* 8007DB20 */ void RwgSphChk(u16, dBgS_SphChk*, void*);
|
||||
/* 8007DC70 */ void SphChkRp(dBgS_SphChk*, void*, int);
|
||||
/* 8007DDE0 */ void SphChkGrpRp(dBgS_SphChk*, void*, int, int);
|
||||
/* 8007DDE0 */ bool SphChkGrpRp(dBgS_SphChk*, void*, int, int);
|
||||
|
||||
/* 8007E548 */ virtual ~dBgW();
|
||||
/* 8007E4B4 */ virtual u32 ChkMoveFlag() const;
|
||||
/* 8007E4A4 */ virtual void OffMoveFlag();
|
||||
/* 8007DAF8 */ virtual void CaptPoly(dBgS_CaptPoly&);
|
||||
/* 8007C484 */ virtual void WallCorrect(dBgS_Acch*);
|
||||
/* 8007C484 */ virtual bool WallCorrect(dBgS_Acch*);
|
||||
/* 8007C910 */ virtual void WallCorrectSort(dBgS_Acch*);
|
||||
/* 8007D470 */ virtual bool RoofChk(dBgS_RoofChk*);
|
||||
/* 8007D830 */ virtual bool SplGrpChk(dBgS_SplGrpChk*);
|
||||
@@ -212,30 +275,30 @@ public:
|
||||
/* 8007B430 */ virtual int GetSpecialCode(cBgS_PolyInfo const&);
|
||||
/* 8007B460 */ virtual int GetSpecialCode(int);
|
||||
/* 8007B488 */ virtual int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 8007B4E0 */ virtual void GetPolyObjThrough(int);
|
||||
/* 8007B504 */ virtual void GetPolyCamThrough(int);
|
||||
/* 8007B52C */ virtual void GetPolyLinkThrough(int);
|
||||
/* 8007B550 */ virtual void GetPolyArrowThrough(int);
|
||||
/* 8007B4E0 */ virtual u32 GetPolyObjThrough(int);
|
||||
/* 8007B504 */ virtual u32 GetPolyCamThrough(int);
|
||||
/* 8007B52C */ virtual u32 GetPolyLinkThrough(int);
|
||||
/* 8007B550 */ virtual u32 GetPolyArrowThrough(int);
|
||||
/* 8007B574 */ virtual u32 GetPolyHSStick(int);
|
||||
/* 8007B598 */ virtual void GetPolyBoomerangThrough(int);
|
||||
/* 8007B5BC */ virtual void GetPolyRopeThrough(int);
|
||||
/* 8007B5E0 */ virtual void GetPolyBombThrough(int);
|
||||
/* 8007B604 */ virtual void GetShdwThrough(int);
|
||||
/* 8007B630 */ virtual int GetUnderwaterRoofCode(int);
|
||||
/* 8007B598 */ virtual u32 GetPolyBoomerangThrough(int);
|
||||
/* 8007B5BC */ virtual u32 GetPolyRopeThrough(int);
|
||||
/* 8007B5E0 */ virtual u32 GetPolyBombThrough(int);
|
||||
/* 8007B604 */ virtual bool GetShdwThrough(int);
|
||||
/* 8007B630 */ virtual u32 GetUnderwaterRoofCode(int);
|
||||
/* 8007B4B4 */ virtual int GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 8007B6AC */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 8007B6AC */ virtual int GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 8007B6D8 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 8007B704 */ virtual int GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 8007B734 */ virtual int GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 8007B760 */ virtual int GetGroundCode(cBgS_PolyInfo const&);
|
||||
/* 8007B7DC */ virtual void GetIronBallThrough(int);
|
||||
/* 8007B7DC */ virtual u32 GetIronBallThrough(int);
|
||||
/* 8007B800 */ virtual u32 GetAttackThrough(int);
|
||||
/* 8007B87C */ virtual s32 GetCamMoveBG(cBgS_PolyInfo const&);
|
||||
/* 8007B8A8 */ virtual s32 GetRoomCamId(cBgS_PolyInfo const&);
|
||||
/* 8007B8D8 */ virtual s32 GetRoomPathId(cBgS_PolyInfo const&);
|
||||
/* 8007B904 */ virtual s32 GetRoomPathPntNo(cBgS_PolyInfo const&);
|
||||
/* 8007DF28 */ virtual void GetPolyGrpRoomInfId(cBgS_PolyInfo const&);
|
||||
/* 8007DF58 */ virtual s32 GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
/* 8007DF28 */ virtual u8 GetPolyGrpRoomInfId(cBgS_PolyInfo const&);
|
||||
/* 8007DF58 */ virtual u8 GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
/* 8007DF88 */ virtual void CrrPos(cBgS_PolyInfo const&, virtual void*, bool, cXyz*, csXyz*,
|
||||
csXyz*);
|
||||
/* 8007DFC4 */ virtual void TransPos(cBgS_PolyInfo const&, virtual void*, bool, cXyz*, csXyz*,
|
||||
@@ -244,11 +307,12 @@ public:
|
||||
csXyz*, csXyz*);
|
||||
/* 8007E444 */ virtual void CallRideCallBack(fopAc_ac_c*, fopAc_ac_c*);
|
||||
/* 8007E474 */ virtual void CallArrowStickCallBack(fopAc_ac_c*, fopAc_ac_c*, cXyz&);
|
||||
/* 8007E02C */ virtual void ChkPolyThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007E360 */ virtual void ChkShdwDrawThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007E3D8 */ virtual void ChkGrpThrough(int, cBgS_GrpPassChk*, int);
|
||||
/* 8007E02C */ virtual bool ChkPolyThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007E360 */ virtual bool ChkShdwDrawThrough(int, cBgS_PolyPassChk*);
|
||||
/* 8007E3D8 */ virtual bool ChkGrpThrough(int, cBgS_GrpPassChk*, int);
|
||||
|
||||
void SetCrrFunc(dBgW_CrrFunc func) { m_crr_func = func; }
|
||||
void OnMoveFlag() { m_flags |= 1; }
|
||||
|
||||
private:
|
||||
/* 0xB0 */ dBgW_CrrFunc m_crr_func;
|
||||
|
||||
+15
-15
@@ -32,7 +32,7 @@ public:
|
||||
virtual u32 ChkMoveFlag() const = 0;
|
||||
virtual cM3dGPla GetTriPla(cBgS_PolyInfo const&) const = 0;
|
||||
virtual bool GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const = 0;
|
||||
virtual void GetBnd() const = 0;
|
||||
virtual cM3dGAab* GetBnd() const = 0;
|
||||
virtual u32 GetGrpInf(cBgS_PolyInfo const&) const = 0;
|
||||
virtual void OffMoveFlag() = 0;
|
||||
virtual void GetTopUnder(f32*, f32*) const = 0;
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
virtual bool GroundCross(cBgS_GndChk*) = 0;
|
||||
virtual void ShdwDraw(cBgS_ShdwDraw*) = 0;
|
||||
virtual void CaptPoly(dBgS_CaptPoly&) = 0;
|
||||
virtual void WallCorrect(dBgS_Acch*) = 0;
|
||||
virtual bool WallCorrect(dBgS_Acch*) = 0;
|
||||
virtual void WallCorrectSort(dBgS_Acch*) = 0;
|
||||
virtual bool RoofChk(dBgS_RoofChk*) = 0;
|
||||
virtual bool SplGrpChk(dBgS_SplGrpChk*) = 0;
|
||||
@@ -53,30 +53,30 @@ public:
|
||||
virtual int GetSpecialCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetSpecialCode(int) = 0;
|
||||
virtual int GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyObjThrough(int) = 0;
|
||||
virtual void GetPolyCamThrough(int) = 0;
|
||||
virtual void GetPolyLinkThrough(int) = 0;
|
||||
virtual void GetPolyArrowThrough(int) = 0;
|
||||
virtual u32 GetPolyObjThrough(int) = 0;
|
||||
virtual u32 GetPolyCamThrough(int) = 0;
|
||||
virtual u32 GetPolyLinkThrough(int) = 0;
|
||||
virtual u32 GetPolyArrowThrough(int) = 0;
|
||||
virtual u32 GetPolyHSStick(int) = 0;
|
||||
virtual void GetPolyBoomerangThrough(int) = 0;
|
||||
virtual void GetPolyRopeThrough(int) = 0;
|
||||
virtual void GetPolyBombThrough(int) = 0;
|
||||
virtual void GetShdwThrough(int) = 0;
|
||||
virtual int GetUnderwaterRoofCode(int) = 0;
|
||||
virtual u32 GetPolyBoomerangThrough(int) = 0;
|
||||
virtual u32 GetPolyRopeThrough(int) = 0;
|
||||
virtual u32 GetPolyBombThrough(int) = 0;
|
||||
virtual bool GetShdwThrough(int) = 0;
|
||||
virtual u32 GetUnderwaterRoofCode(int) = 0;
|
||||
virtual int GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetLinkNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetLinkNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetIronBallThrough(int) = 0;
|
||||
virtual u32 GetIronBallThrough(int) = 0;
|
||||
virtual u32 GetAttackThrough(int) = 0;
|
||||
virtual s32 GetCamMoveBG(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomCamId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomPathId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetRoomPathPntNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyGrpRoomInfId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetGrpSoundId(cBgS_PolyInfo const&) = 0;
|
||||
virtual u8 GetPolyGrpRoomInfId(cBgS_PolyInfo const&) = 0;
|
||||
virtual u8 GetGrpSoundId(cBgS_PolyInfo const&) = 0;
|
||||
virtual void CrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
virtual void TransPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
virtual void MatrixCrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*) = 0;
|
||||
|
||||
+57
-35
@@ -7,72 +7,91 @@
|
||||
|
||||
struct dBgS_CaptPoly;
|
||||
|
||||
struct KC_PrismData {};
|
||||
struct KC_PrismData {
|
||||
/* 0x0 */ f32 field_0x0;
|
||||
/* 0x4 */ u16 field_0x4;
|
||||
/* 0x6 */ u16 field_0x6;
|
||||
/* 0x8 */ u16 field_0x8;
|
||||
/* 0xA */ u16 field_0xa;
|
||||
/* 0xC */ u16 field_0xc;
|
||||
/* 0xE */ u16 field_0xe;
|
||||
}; // Size: 0x10
|
||||
|
||||
struct pkcdata {
|
||||
/* 0x00 */ Vec* field_0x0;
|
||||
/* 0x04 */ Vec* field_0x4;
|
||||
/* 0x08 */ KC_PrismData* m_prism_data;
|
||||
/* 0x0C */ KC_PrismData* m_block_data;
|
||||
/* 0x10 */ u8 field_0x10[4];
|
||||
/* 0x14 */ Vec m_area_min_pos;
|
||||
/* 0x20 */ u8 field_0x20[4];
|
||||
/* 0x24 */ u32 field_0x24;
|
||||
};
|
||||
|
||||
class dBgWKCol : public dBgW_Base {
|
||||
public:
|
||||
/* 8007E6F4 */ dBgWKCol();
|
||||
/* 8007E7D0 */ void initKCollision(void*);
|
||||
/* 8007E804 */ void create(void*, void*);
|
||||
/* 8007E804 */ void create(void* pprism, void* plc);
|
||||
/* 8007E850 */ void getTriNrm(KC_PrismData*, Vec**) const;
|
||||
/* 8007E8C0 */ void GetTriPla(int) const;
|
||||
/* 8007E9A4 */ void GetTriPnt(int, Vec*, Vec*, Vec*) const;
|
||||
/* 8007E9D4 */ void GetTriPnt(KC_PrismData const*, Vec*, Vec*, Vec*) const;
|
||||
/* 8007E8C0 */ cM3dGPla GetTriPla(int) const;
|
||||
/* 8007E9A4 */ bool GetTriPnt(int, Vec*, Vec*, Vec*) const;
|
||||
/* 8007E9D4 */ bool GetTriPnt(KC_PrismData const*, Vec*, Vec*, Vec*) const;
|
||||
/* 8007EB70 */ void getPolyCode(int, dBgPc*) const;
|
||||
/* 8007EBC4 */ void chkPolyThrough(dBgPc*, cBgS_PolyPassChk*, cBgS_GrpPassChk*, cXyz&) const;
|
||||
/* 8007FF00 */ void ChkShdwDrawThrough(dBgPc*);
|
||||
/* 8007EBC4 */ bool chkPolyThrough(dBgPc*, cBgS_PolyPassChk*, cBgS_GrpPassChk*, cXyz&) const;
|
||||
/* 8007FF00 */ bool ChkShdwDrawThrough(dBgPc*);
|
||||
|
||||
/* 8007E74C */ virtual ~dBgWKCol();
|
||||
/* 8007E86C */ virtual bool ChkNotReady() const;
|
||||
/* 8007E87C */ virtual bool ChkLock() const;
|
||||
/* 8007E884 */ virtual bool ChkMoveBg() const;
|
||||
/* 8007E88C */ virtual bool ChkMoveFlag() const;
|
||||
/* 8007E88C */ virtual u32 ChkMoveFlag() const;
|
||||
/* 8007E894 */ virtual cM3dGPla GetTriPla(cBgS_PolyInfo const&) const;
|
||||
/* 8007E980 */ virtual void GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const;
|
||||
/* 8007EB28 */ virtual void GetBnd() const;
|
||||
/* 8007EB30 */ virtual void GetGrpInf(cBgS_PolyInfo const&) const;
|
||||
/* 8007E980 */ virtual bool GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const;
|
||||
/* 8007EB28 */ virtual cM3dGAab* GetBnd() const;
|
||||
/* 8007EB30 */ virtual u32 GetGrpInf(cBgS_PolyInfo const&) const;
|
||||
/* 8007EB6C */ virtual void OffMoveFlag();
|
||||
/* 800829AC */ virtual void GetTopUnder(f32*, f32*) const;
|
||||
/* 8007EE34 */ virtual bool LineCheck(cBgS_LinChk*);
|
||||
/* 8007F628 */ virtual bool GroundCross(cBgS_GndChk*);
|
||||
/* 8007F9A4 */ virtual void ShdwDraw(cBgS_ShdwDraw*);
|
||||
/* 8007FF1C */ virtual void CaptPoly(dBgS_CaptPoly&);
|
||||
/* 800811A0 */ virtual void WallCorrect(dBgS_Acch*);
|
||||
/* 800811A0 */ virtual bool WallCorrect(dBgS_Acch*);
|
||||
/* 80080330 */ virtual void WallCorrectSort(dBgS_Acch*);
|
||||
/* 80081E18 */ virtual bool RoofChk(dBgS_RoofChk*);
|
||||
/* 80082184 */ virtual bool SplGrpChk(dBgS_SplGrpChk*);
|
||||
/* 800824EC */ virtual bool SphChk(dBgS_SphChk*, virtual void*);
|
||||
/* 800829F0 */ virtual void GetGrpRoomIndex(cBgS_PolyInfo const&) const;
|
||||
/* 80082A20 */ virtual void GetExitId(cBgS_PolyInfo const&);
|
||||
/* 80082A50 */ virtual void GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80082A80 */ virtual void GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
/* 800829F0 */ virtual s32 GetGrpRoomIndex(cBgS_PolyInfo const&) const;
|
||||
/* 80082A20 */ virtual s32 GetExitId(cBgS_PolyInfo const&);
|
||||
/* 80082A50 */ virtual s32 GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80082A80 */ virtual BOOL GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
/* 80082AB0 */ virtual int GetSpecialCode(cBgS_PolyInfo const&);
|
||||
/* 80082AE0 */ virtual int GetSpecialCode(int);
|
||||
/* 80082B0C */ virtual int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 80082B6C */ virtual void GetPolyObjThrough(int);
|
||||
/* 80082B98 */ virtual void GetPolyCamThrough(int);
|
||||
/* 80082BC4 */ virtual void GetPolyLinkThrough(int);
|
||||
/* 80082BF0 */ virtual void GetPolyArrowThrough(int);
|
||||
/* 80082B6C */ virtual u32 GetPolyObjThrough(int);
|
||||
/* 80082B98 */ virtual u32 GetPolyCamThrough(int);
|
||||
/* 80082BC4 */ virtual u32 GetPolyLinkThrough(int);
|
||||
/* 80082BF0 */ virtual u32 GetPolyArrowThrough(int);
|
||||
/* 80082C1C */ virtual u32 GetPolyHSStick(int);
|
||||
/* 80082C48 */ virtual void GetPolyBoomerangThrough(int);
|
||||
/* 80082C74 */ virtual void GetPolyRopeThrough(int);
|
||||
/* 80082CA0 */ virtual void GetPolyBombThrough(int);
|
||||
/* 80082CF8 */ virtual void GetShdwThrough(int);
|
||||
/* 80082CCC */ virtual int GetUnderwaterRoofCode(int);
|
||||
/* 80082C48 */ virtual u32 GetPolyBoomerangThrough(int);
|
||||
/* 80082C74 */ virtual u32 GetPolyRopeThrough(int);
|
||||
/* 80082CA0 */ virtual u32 GetPolyBombThrough(int);
|
||||
/* 80082CF8 */ virtual bool GetShdwThrough(int);
|
||||
/* 80082CCC */ virtual u32 GetUnderwaterRoofCode(int);
|
||||
/* 80082B3C */ virtual int GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 80082D24 */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 80082D24 */ virtual int GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 80082D54 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 80082D84 */ virtual int GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80082DB4 */ virtual int GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 80082DE4 */ virtual int GetGroundCode(cBgS_PolyInfo const&);
|
||||
/* 80082E14 */ virtual void GetIronBallThrough(int);
|
||||
/* 80082E40 */ virtual void GetAttackThrough(int);
|
||||
/* 80082E6C */ virtual void GetCamMoveBG(cBgS_PolyInfo const&);
|
||||
/* 80082E9C */ virtual void GetRoomCamId(cBgS_PolyInfo const&);
|
||||
/* 80082ECC */ virtual void GetRoomPathId(cBgS_PolyInfo const&);
|
||||
/* 80082EFC */ virtual void GetRoomPathPntNo(cBgS_PolyInfo const&);
|
||||
/* 80082F2C */ virtual void GetPolyGrpRoomInfId(cBgS_PolyInfo const&);
|
||||
/* 80082F5C */ virtual void GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
/* 80082E14 */ virtual u32 GetIronBallThrough(int);
|
||||
/* 80082E40 */ virtual u32 GetAttackThrough(int);
|
||||
/* 80082E6C */ virtual s32 GetCamMoveBG(cBgS_PolyInfo const&);
|
||||
/* 80082E9C */ virtual s32 GetRoomCamId(cBgS_PolyInfo const&);
|
||||
/* 80082ECC */ virtual s32 GetRoomPathId(cBgS_PolyInfo const&);
|
||||
/* 80082EFC */ virtual s32 GetRoomPathPntNo(cBgS_PolyInfo const&);
|
||||
/* 80082F2C */ virtual u8 GetPolyGrpRoomInfId(cBgS_PolyInfo const&);
|
||||
/* 80082F5C */ virtual u8 GetGrpSoundId(cBgS_PolyInfo const&);
|
||||
/* 80082F8C */ virtual void CrrPos(cBgS_PolyInfo const&, virtual void*, bool, cXyz*, csXyz*,
|
||||
csXyz*);
|
||||
/* 80082F90 */ virtual void TransPos(cBgS_PolyInfo const&, virtual void*, bool, cXyz*, csXyz*,
|
||||
@@ -80,8 +99,11 @@ public:
|
||||
/* 80082F94 */ virtual void MatrixCrrPos(cBgS_PolyInfo const&, virtual void*, bool, cXyz*,
|
||||
csXyz*, csXyz*);
|
||||
|
||||
KC_PrismData* getPrismData(int poly_index) const { return &m_pkc_head->m_prism_data[poly_index]; }
|
||||
void getTri1Pos(KC_PrismData* pd, Vec** nrm) const { *nrm = &m_pkc_head->field_0x0[pd->field_0x4]; }
|
||||
|
||||
private:
|
||||
/* 0x18 */ void* m_pkc_head;
|
||||
/* 0x18 */ pkcdata* m_pkc_head;
|
||||
/* 0x1C */ dBgPlc m_code;
|
||||
/* 0x20 */ cM3dGAab m_bnd;
|
||||
};
|
||||
|
||||
@@ -1,6 +1,22 @@
|
||||
#ifndef D_BG_D_BG_W_SV_H
|
||||
#define D_BG_D_BG_W_SV_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/bg/d_bg_w.h"
|
||||
|
||||
class dBgWSv : public dBgW {
|
||||
public:
|
||||
/* 80082F98 */ u8 Set(cBgD_t*, u32);
|
||||
/* 80083020 */ void CopyBackVtx();
|
||||
/* 8008308C */ void CrrPosWork(cXyz*, int, int, int);
|
||||
/* 80083300 */ void TransPosWork(cXyz*, int, int, int);
|
||||
|
||||
/* 800835DC */ virtual ~dBgWSv();
|
||||
/* 80083244 */ virtual void CrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
/* 8008351C */ virtual void TransPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
/* 800835D8 */ virtual void MatrixCrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
|
||||
/* 0xC0 */ Vec* field_0xc0;
|
||||
/* 0xC4 */ u8 field_0xc4;
|
||||
};
|
||||
|
||||
#endif /* D_BG_D_BG_W_SV_H */
|
||||
|
||||
@@ -276,12 +276,14 @@ public:
|
||||
int getOxygen() { return mOxygen; }
|
||||
void setMaxOxygen(int max) { mMaxOxygen = max; }
|
||||
int getMaxOxygen() { return mMaxOxygen; }
|
||||
int getNowOxygen() { return mNowOxygen; }
|
||||
void setItemNowLife(u16 life) { mItemNowLife = life; }
|
||||
void setItemNowMagic(s16 magic) { mItemNowMagicCount = magic; }
|
||||
void setItemNowOil(s32 oil) { mItemNowOil = oil; }
|
||||
void setItemOilCount(s32 oil) { mItemOilCount += oil; }
|
||||
s16 getItemMaxLifeCount() { return mItemMaxLifeCount; }
|
||||
f32 getItemLifeCount() { return mItemLifeCount; }
|
||||
s16 getItemMaxArrowNumCount() { return mItemMaxArrowNumCount; }
|
||||
void clearItemMaxLifeCount() { mItemMaxLifeCount = 0; }
|
||||
void clearItemLifeCount() {
|
||||
mItemLifeCount = 0.0f;
|
||||
@@ -396,9 +398,11 @@ public:
|
||||
bool& isPauseFlag() { return mPauseFlag; }
|
||||
void offPauseFlag() { mPauseFlag = false; }
|
||||
void onPauseFlag() { mPauseFlag = true; }
|
||||
u8 getOxygenShowFlag() { return mOxygenShowFlag; }
|
||||
void show2dOn() { mShow2D = 1; }
|
||||
s8 getLayerOld() { return mLayerOld; }
|
||||
void setMesgCancelButton(u8 button) { mMesgCancelButton = button; }
|
||||
void setMesgBgm(u8 param_0) { mMesgBgm = param_0; }
|
||||
int getMessageCountNumber() { return mMessageCountNum; }
|
||||
|
||||
void setWindowNum(u8 num) { mWindowNum = num; }
|
||||
@@ -803,6 +807,10 @@ void dComIfGs_onStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_offStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_PolyDamageOff_Set(s8 param_0);
|
||||
u8 dComIfGs_staffroll_next_go_check();
|
||||
BOOL dComIfGs_isEventBit(u16 id);
|
||||
int dComIfGs_isItemFirstBit(u8 i_no);
|
||||
u16 dComIfGs_getRupee();
|
||||
static u16 dComIfGs_getLife();
|
||||
|
||||
inline void dComIfGs_init() {
|
||||
g_dComIfG_gameInfo.info.init();
|
||||
@@ -1513,6 +1521,23 @@ JKRExpHeap* dComIfGp_getSubHeap2D(int flag);
|
||||
void dComIfGp_world_dark_set(u8);
|
||||
u8 dComIfGp_getNowLevel();
|
||||
void dComIfGp_calcNowRegion();
|
||||
daHorse_c* dComIfGp_getHorseActor();
|
||||
static BOOL dComIfGp_event_runCheck();
|
||||
static s32 dComIfGp_evmng_getMyStaffId(const char* pName, fopAc_ac_c* pActor, int param_2);
|
||||
static u16 dComIfGp_event_chkEventFlag(u16 flag);
|
||||
static s8 dComIfGp_getPlayerCameraID(int idx);
|
||||
static dEvent_manager_c& dComIfGp_getEventManager();
|
||||
static u32 dComIfGp_checkPlayerStatus0(int param_0, u32 param_1);
|
||||
static u32 dComIfGp_checkPlayerStatus1(int param_0, u32 param_1);
|
||||
static dEvt_control_c& dComIfGp_getEvent();
|
||||
static bool dComIfGp_evmng_startCheck(char const* param_0);
|
||||
static dStage_stageDt_c* dComIfGp_getStage();
|
||||
void dComIfGp_setItemLifeCount(f32 amount, u8 type);
|
||||
void dComIfGp_setItemRupeeCount(s32 param_0);
|
||||
static u8 dComIfGp_getDoStatus();
|
||||
static u8 dComIfGp_getRStatus();
|
||||
static dAttCatch_c* dComIfGp_att_getCatghTarget();
|
||||
static void dComIfGp_setBottleStatus(u8 param_0, u8 param_1);
|
||||
|
||||
inline void i_dComIfGp_setItemLifeCount(float amount, u8 type) {
|
||||
g_dComIfG_gameInfo.play.setItemLifeCount(amount, type);
|
||||
@@ -2082,6 +2107,14 @@ inline int dComIfGp_getOxygen() {
|
||||
return g_dComIfG_gameInfo.play.getOxygen();
|
||||
}
|
||||
|
||||
inline int dComIfGp_getNowOxygen() {
|
||||
return g_dComIfG_gameInfo.play.getNowOxygen();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getOxygenShowFlag() {
|
||||
return g_dComIfG_gameInfo.play.getOxygenShowFlag();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNeedLightDropNum() {
|
||||
return g_dComIfG_gameInfo.play.getNeedLightDropNum();
|
||||
}
|
||||
@@ -2130,6 +2163,10 @@ inline void dComIfGp_setMesgCancelButton(u8 button) {
|
||||
g_dComIfG_gameInfo.play.setMesgCancelButton(button);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setMesgBgmOn() {
|
||||
g_dComIfG_gameInfo.play.setMesgBgm(1);
|
||||
}
|
||||
|
||||
inline s32 dComIfGp_checkStatus(u16 flags) {
|
||||
return g_dComIfG_gameInfo.play.checkStatus(flags);
|
||||
}
|
||||
@@ -2154,6 +2191,10 @@ inline f32 dComIfGp_getItemLifeCount() {
|
||||
return g_dComIfG_gameInfo.play.getItemLifeCount();
|
||||
}
|
||||
|
||||
inline s16 dComIfGp_getItemMaxArrowNumCount() {
|
||||
return g_dComIfG_gameInfo.play.getItemMaxArrowNumCount();
|
||||
}
|
||||
|
||||
inline void dComIfGp_clearItemMaxLifeCount() {
|
||||
g_dComIfG_gameInfo.play.clearItemMaxLifeCount();
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
/* 80031248 */ void newData(s8, cXyz const&, cXyz const&, u8, u8, u8);
|
||||
/* 800313BC */ void reset();
|
||||
/* 800314D4 */ static void check(fopAc_ac_c*);
|
||||
/* 80031434 */ static bool check(s8, cXyz const&);
|
||||
/* 80031434 */ static bool check(s8 i_roomNo, cXyz const& i_pos);
|
||||
/* 800315A4 */ static void execute();
|
||||
|
||||
static u8 mData[1152];
|
||||
|
||||
+3
-2
@@ -900,13 +900,14 @@ static int dStage_fieldMapFiliInfo2Init(dStage_dt_c*, void*, int, void*);
|
||||
static int dStage_fieldMapMapPathInit(dStage_dt_c*, void*, int, void*);
|
||||
|
||||
s8 dStage_roomRead_dt_c_GetReverbStage(roomRead_class&, int);
|
||||
int dStage_changeScene(int, f32, u32, s8, s16, int);
|
||||
int dStage_changeScene(int i_exitId, f32 i_speed, u32 i_mode, s8 i_roomNo, s16 i_angle, int i_layerOverride);
|
||||
void dStage_infoCreate();
|
||||
u8 dStage_stagInfo_GetParticleNo(stage_stag_info_class* p_info, int layer);
|
||||
int dStage_changeSceneExitId(cBgS_PolyInfo& param_0, f32 speed, u32 mode, s8 roomNo, s16 angle);
|
||||
int dStage_changeScene4Event(int i_exitId, s8 room_no, int i_wipe, bool param_3, f32 speed,
|
||||
u32 mode, s16 angle, int param_7);
|
||||
u32 mode, s16 angle, int param_7);
|
||||
void dStage_Create();
|
||||
static s32 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* param_0);
|
||||
|
||||
inline s32 dStage_roomRead_dt_c_GetVrboxswitch(roomRead_data_class& data) {
|
||||
return data.field_0x2 & 8;
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
void setPtI_Id(unsigned int id);
|
||||
void setPtD(void* ptr);
|
||||
void setGtItm(u8 itemNo);
|
||||
void isOrderOK();
|
||||
BOOL isOrderOK();
|
||||
/* 807DFAD8 */ void checkSkipEdge();
|
||||
/* 807E2908 */ void startCheckSkipEdge(void*);
|
||||
|
||||
|
||||
@@ -49,6 +49,10 @@ class dMeter2_c;
|
||||
class J2DPicture;
|
||||
class dMeterMap_c;
|
||||
|
||||
enum dMeter2Info_warpStatus {
|
||||
/* 0x3 */ WARP_DECIDED = 3,
|
||||
};
|
||||
|
||||
class dMeter2Info_c {
|
||||
public:
|
||||
class WarpInfo_c {
|
||||
@@ -246,6 +250,8 @@ void dMeter2Info_setCloth(u8 i_clothId, bool param_1);
|
||||
void dMeter2Info_setShield(u8 i_itemId, bool param_1);
|
||||
void dMeter2Info_set2DVibration();
|
||||
void dMeter2Info_set2DVibrationM();
|
||||
static void dMeter2Info_setFloatingMessage(u16 pMessageID, s16 pMessageTimer, bool pWakuVisible);
|
||||
static void dMeter2Info_offUseButton(int pButton);
|
||||
|
||||
inline void dMeter2Info_Initialize() {
|
||||
g_meter2_info.init();
|
||||
@@ -495,6 +501,10 @@ inline void dMeter2Info_onDirectUseItem(int param_0) {
|
||||
g_meter2_info.onDirectUseItem(param_0);
|
||||
}
|
||||
|
||||
inline void dMeter2Info_setFloatingFlow(u16 param_0, s16 param_1, bool param_2) {
|
||||
g_meter2_info.setFloatingFlow(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
char* dMeter2Info_getNumberTextureName(int pIndex);
|
||||
void dMeter2Info_recieveLetter();
|
||||
u8 dMeter2Info_getNewLetterNum();
|
||||
|
||||
Reference in New Issue
Block a user