mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
Merge pull request #171 from TakaRikka/wip1
d_a_player / d_meter_map + misc
This commit is contained in:
@@ -40,6 +40,12 @@ private:
|
||||
}; // Size: 0x20
|
||||
|
||||
class J3DAnmTransformKey : public J3DAnmTransform {
|
||||
public:
|
||||
J3DAnmTransformKey() : J3DAnmTransform(0, NULL, NULL, NULL) {
|
||||
field_0x20 = 0;
|
||||
field_0x24 = 0;
|
||||
}
|
||||
|
||||
/* 80329A34 */ void calcTransform(f32, u16, J3DTransformInfo*) const;
|
||||
|
||||
/* 8003B8D0 */ virtual ~J3DAnmTransformKey();
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
struct J3DAnmLoaderDataBaseFlag {};
|
||||
enum J3DAnmLoaderDataBaseFlag { UNK_FLAG0 };
|
||||
|
||||
struct J3DAnmBase;
|
||||
|
||||
struct J3DAnmLoaderDataBase {
|
||||
/* 80337B40 */ void load(void const*, J3DAnmLoaderDataBaseFlag);
|
||||
/* 80337B40 */ static void* load(void const*, J3DAnmLoaderDataBaseFlag);
|
||||
/* 80338134 */ void setResource(J3DAnmBase*, void const*);
|
||||
};
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ public:
|
||||
operator u32() const { return this->mId; }
|
||||
void operator=(JAISoundID const&);
|
||||
|
||||
JAISoundID(u32 pId);
|
||||
JAISoundID(u32 pId) { mId = pId; };
|
||||
|
||||
JAISoundID(JAISoundID const& other);
|
||||
|
||||
|
||||
@@ -47,4 +47,8 @@ public:
|
||||
/* 802DC298 */ s32 read(void*, s32);
|
||||
}; // Size = 0x8
|
||||
|
||||
// move?
|
||||
template <typename T>
|
||||
T* JSUConvertOffsetToPtr(const void*, const void*);
|
||||
|
||||
#endif /* JSUINPUTSTREAM_H */
|
||||
|
||||
@@ -25,4 +25,8 @@ inline f32 cM_ssin(s16 s) {
|
||||
return JMath::sincosTable_.table[static_cast<u16>(s) >> 3].a1;
|
||||
}
|
||||
|
||||
inline s16 cM_deg2s(f32 val) {
|
||||
return val * 182.04445f;
|
||||
}
|
||||
|
||||
#endif /* C_MATH_H */
|
||||
|
||||
@@ -57,4 +57,8 @@ public:
|
||||
|
||||
STATIC_ASSERT(sizeof(Z2AudioMgr) == 0x138C);
|
||||
|
||||
inline Z2AudioMgr* Z2GetAudioMgr() {
|
||||
return Z2AudioMgr::getInterface();
|
||||
}
|
||||
|
||||
#endif /* Z2AUDIOMGR_H */
|
||||
|
||||
+24
-113
@@ -184,6 +184,8 @@ public:
|
||||
/* 0xBF */ ANM_BACKWARD_SLIDE_LAND,
|
||||
/* 0xC0 */ ANM_FORWARD_SLIDE_LAND,
|
||||
|
||||
/* 0xFD */ ANM_TRANSFORM_WOLF = 0xFD, // verify
|
||||
|
||||
/* 0x18D */ ANM_CUT_JUMP_LARGE = 0x18D, // verify
|
||||
ANM_GANON_FINISH = 408 // name probably wrong, fix later
|
||||
};
|
||||
@@ -199,7 +201,9 @@ public:
|
||||
enum daAlink_WARP_MAT_MODE {};
|
||||
|
||||
enum daAlink_WANM {
|
||||
/* 0x5E */ ANM_WOLF_HOWL_SUCCESS = 94
|
||||
/* 0x5E */ ANM_WOLF_HOWL_SUCCESS = 94,
|
||||
|
||||
/* 0x70 */ ANM_TRANFORM_HUMAN = 0x70, // verify
|
||||
};
|
||||
|
||||
enum MODE_FLG {
|
||||
@@ -446,9 +450,9 @@ public:
|
||||
/* 800A142C */ void getNeckAimAngle(cXyz*, s16*, s16*, s16*, s16*);
|
||||
/* 800A1AEC */ void setEyeMove(cXyz*, s16, s16);
|
||||
/* 800A1F90 */ void setNeckAngle();
|
||||
/* 800A2198 */ void commonLineCheck(cXyz*, cXyz*);
|
||||
/* 800A2198 */ bool commonLineCheck(cXyz*, cXyz*);
|
||||
/* 800A21E0 */ static s16 getMoveBGActorName(cBgS_PolyInfo&, int);
|
||||
/* 800A2280 */ void checkGoronRide();
|
||||
/* 800A2280 */ fopAc_ac_c* checkGoronRide();
|
||||
/* 800A22E8 */ void setMoveSlantAngle();
|
||||
/* 800A2710 */ void setArmMatrix();
|
||||
/* 800A29DC */ void setFootMatrix();
|
||||
@@ -458,7 +462,7 @@ public:
|
||||
/* 800A39B8 */ void handBgCheck();
|
||||
/* 800A3C8C */ JKRHeap* setItemHeap();
|
||||
/* 800A3CE4 */ void setIdxMask(u16*, u16*);
|
||||
/* 800A3D0C */ void getAnimeResource(daPy_anmHeap_c*, u16, u32);
|
||||
/* 800A3D0C */ void* getAnimeResource(daPy_anmHeap_c*, u16, u32);
|
||||
/* 800A3D7C */ J3DModel* initModel(J3DModelData*, u32, u32);
|
||||
/* 800A3E30 */ void initModel(u16, u32);
|
||||
/* 800A3E98 */ void initModelEnv(u16, u32);
|
||||
@@ -649,7 +653,7 @@ public:
|
||||
/* 800B9580 */ void swordUnequip();
|
||||
/* 800B9640 */ void itemEquip(u16);
|
||||
/* 800B96A4 */ void itemUnequip(u16, f32);
|
||||
/* 800B97EC */ void checkFastUnequip();
|
||||
/* 800B97EC */ bool checkFastUnequip();
|
||||
/* 800B983C */ void allUnequip(int);
|
||||
/* 800B994C */ BOOL checkItemChangeFromButton();
|
||||
/* 800B9D2C */ BOOL checkNextActionFromButton();
|
||||
@@ -1029,7 +1033,7 @@ public:
|
||||
/* 800E01A0 */ bool checkBossBabaRoom();
|
||||
/* 800E01CC */ void cancelBoomerangLock(fopAc_ac_c*);
|
||||
/* 800E0210 */ fopAc_ac_c* getBoomerangActor();
|
||||
/* 800E0244 */ void checkBoomerangChargeEnd();
|
||||
/* 800E0244 */ bool checkBoomerangChargeEnd();
|
||||
/* 800E02B8 */ void checkBoomerangCarry(fopAc_ac_c*);
|
||||
/* 800E03D0 */ void initBoomerangUpperAnimeSpeed(int);
|
||||
/* 800E0440 */ BOOL checkBoomerangAnime() const;
|
||||
@@ -2314,7 +2318,7 @@ public:
|
||||
bool checkFisingRodLure() const { return mEquipItem == 0x105; }
|
||||
bool doTrigger() const { return mItemTrigger & 0x10; }
|
||||
u32 getStartMode() { return (fopAcM_GetParam(this) >> 0xC) & 0x1F; }
|
||||
bool checkInputOnR() const { return field_0x33ac <= 0.05f; }
|
||||
bool checkInputOnR() const { return field_0x33ac > 0.05f; }
|
||||
static int getSightBti() { return 0x5B; }
|
||||
bool checkBoomerangChargeEndWait() const {
|
||||
return mEquipItem != 0x102 && checkBoomerangAnime();
|
||||
@@ -2323,9 +2327,15 @@ public:
|
||||
return mNowAnmPack[param_0].getAnmTransform();
|
||||
}
|
||||
void setFacePriBck(u16 param_0) { setFaceBck(param_0, 1, 0xFFFF); }
|
||||
void cancelFmChainGrabFromOut() {
|
||||
field_0x2fa3 = 0;
|
||||
field_0x2844.clearData();
|
||||
}
|
||||
s32 checkPlayerDemoMode() const { return mDemo.getDemoType(); }
|
||||
|
||||
BOOL i_checkReinRide() const { return mRideStatus == 1 || mRideStatus == 2; }
|
||||
|
||||
inline void startRestartRoomFromOut(int, u32, int);
|
||||
inline u16 getReadyItem();
|
||||
|
||||
static u8 const m_mainBckShield[80];
|
||||
@@ -4347,112 +4357,6 @@ public:
|
||||
static daAlinkHIO_hookshot_c1 const m;
|
||||
};
|
||||
|
||||
class daHorseRein_c {
|
||||
private:
|
||||
/* 0x00 */ cXyz* field_0x0[2];
|
||||
/* 0x08 */ int field_0x8[2];
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ cXyz field_0x1c;
|
||||
}; // Size: 0x28
|
||||
|
||||
class daHorseFootData_c {
|
||||
private:
|
||||
/* 0x0 */ u8 field_0x0[0xE4];
|
||||
}; // Size: 0xE4
|
||||
|
||||
class daHorse_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum daHorse_ERFLG0 {
|
||||
/* 0x010 */ MOVE_ACCEPT = 0x10,
|
||||
/* 0x080 */ RIDE_RUN_FLG = 0x80,
|
||||
/* 0x100 */ CUT_TURN_CANCEL = 0x100,
|
||||
};
|
||||
|
||||
enum daHorse_RFLG0 {
|
||||
/* 0x02 */ ENEMY_SEARCH = 2,
|
||||
/* 0x08 */ LASH_DASH_START = 8,
|
||||
/* 0x10 */ TURN_STAND = 0x10,
|
||||
/* 0x40 */ TURN_STAND_CAMERA = 0x40,
|
||||
};
|
||||
|
||||
enum daHorse_FLG0 {
|
||||
/* 0x00000020 */ RODEO_LEFT = 0x20,
|
||||
/* 0x00000040 */ RIDE_START_FLG = 0x40,
|
||||
/* 0x00010000 */ PLAYER_BACK_RIDE_LASH = 0x10000,
|
||||
/* 0x20000000 */ TURN_CANCEL_KEEP = 0x20000000,
|
||||
/* 0x80000000 */ RODEO_MODE = 0x80000000
|
||||
};
|
||||
|
||||
fopAc_ac_c* getZeldaActor();
|
||||
|
||||
bool checkNoBombProc() const { return field_0x16b4 == 0 || field_0x16b4 == 1; }
|
||||
bool checkResetStateFlg0(daHorse_RFLG0 flag) { return mResetStateFlg0 & flag; }
|
||||
bool checkEndResetStateFlg0(daHorse_ERFLG0 flag) { return mEndResetStateFlg0 & flag; }
|
||||
bool checkStateFlg0(daHorse_FLG0 flag) { return mStateFlg0 & flag; }
|
||||
|
||||
private:
|
||||
/* 0x0568 */ u8 field_0x568[8];
|
||||
/* 0x0570 */ J3DModel* field_0x570;
|
||||
/* 0x0574 */ void* field_0x574;
|
||||
/* 0x0578 */ J3DFrameCtrl field_0x578;
|
||||
/* 0x058C */ int field_0x58c;
|
||||
/* 0x0590 */ u8 field_0x590[4];
|
||||
/* 0x0594 */ mDoExt_AnmRatioPack field_0x594[3];
|
||||
/* 0x05AC */ void* field_0x5ac;
|
||||
/* 0x05B0 */ daPy_frameCtrl_c field_0x5b0[3];
|
||||
/* 0x05F8 */ u8 field_0x5f8[4];
|
||||
/* 0x05FC */ dBgS_AcchCir field_0x5fc[3];
|
||||
/* 0x06BC */ dBgS_Acch field_0x6bc;
|
||||
/* 0x0894 */ dCcD_Stts field_0x894;
|
||||
/* 0x08D0 */ dBgS_HorseLinChk field_0x8d0;
|
||||
/* 0x0940 */ dCcD_Cyl field_0x940[3];
|
||||
/* 0x0CF4 */ dCcD_Cyl field_0xcf4;
|
||||
/* 0x0E30 */ dCcD_Cyl field_0xe30;
|
||||
/* 0x0F6C */ dCcD_Sph field_0xf6c;
|
||||
/* 0x10A4 */ Z2CreatureRide field_0x10a4;
|
||||
/* 0x1140 */ u8 field_0x1140[0x10];
|
||||
/* 0x1150 */ daHorseRein_c field_0x1150[3];
|
||||
/* 0x11C8 */ u8 field_0x11c8[0x40];
|
||||
/* 0x1208 */ dMsgFlow_c field_0x1208;
|
||||
/* 0x1254 */ daPy_actorKeep_c mZeldaActorKeep;
|
||||
/* 0x125C */ u8 field_0x125c[0xC8];
|
||||
/* 0x1324 */ daHorseFootData_c mFootData[4];
|
||||
/* 0x16B4 */ u8 field_0x16b4;
|
||||
/* 0x16B5 */ u8 field_0x16b5[3];
|
||||
/* 0x16B8 */ u8 field_0x16b8;
|
||||
/* 0x16B9 */ u8 field_0x16b9[2];
|
||||
/* 0x16BB */ u8 mRodeoPointCnt;
|
||||
/* 0x16BC */ u8 field_0x16bc[0x36];
|
||||
/* 0x16F2 */ s16 mAimNeckAngleY;
|
||||
/* 0x16F4 */ u8 field_0x16f4[0xA];
|
||||
/* 0x16FC */ s16 mDemoMoveAngle;
|
||||
/* 0x16FE */ u8 field_0x16fe[4];
|
||||
/* 0x1702 */ s16 field_0x1702;
|
||||
/* 0x1704 */ u8 field_0x1704[2];
|
||||
/* 0x1706 */ s16 mCowHitAngle;
|
||||
/* 0x1708 */ s16 mCowHit;
|
||||
/* 0x170A */ u8 field_0x170a[0x1E];
|
||||
/* 0x1728 */ int field_0x1728;
|
||||
/* 0x172C */ u8 field_0x172c[0x14];
|
||||
/* 0x1740 */ u32 field_0x1740;
|
||||
/* 0x1744 */ u32 mStateFlg0;
|
||||
/* 0x1748 */ u32 mResetStateFlg0;
|
||||
/* 0x174C */ u32 mEndResetStateFlg0;
|
||||
/* 0x1750 */ f32 mMorfFrame;
|
||||
/* 0x1754 */ u8 field_0x1754[0x14];
|
||||
/* 0x1768 */ f32 field_0x1768;
|
||||
/* 0x176C */ f32 field_0x176c;
|
||||
/* 0x1770 */ f32 field_0x1770;
|
||||
/* 0x1774 */ u8 field_0x1774[0x14];
|
||||
/* 0x1788 */ f32 mDemoStickR;
|
||||
/* 0x178C */ f32 mNormalMaxSpeedF;
|
||||
/* 0x1790 */ f32 mLashMaxSpeedF;
|
||||
/* 0x1794 */ u8 field_0x1794[0x30];
|
||||
/* 0x17C4 */ cXyz mDemoPos0;
|
||||
};
|
||||
|
||||
class mDoExt_morf_c;
|
||||
|
||||
class daMidna_c : public fopAc_ac_c {
|
||||
@@ -4518,6 +4422,13 @@ public:
|
||||
|
||||
void onEndResetStateFlg0(daMidna_ERFLG0 pFlg) { mEndResetStateFlg0 |= pFlg; }
|
||||
u32 checkStateFlg1(daMidna_FLG1 pFlg) const { return mStateFlg1 & pFlg; }
|
||||
void setFaceNum(int num) { mFaceNum = num; }
|
||||
void setMotionNum(int num) { mMotionNum = num; }
|
||||
bool checkDemoTypeNone() const { return mDemoType == 0; }
|
||||
void changeOriginalDemo() { mDemoType = 3; }
|
||||
void changeDemoMode(u32 mode) { mDemoMode = mode; }
|
||||
|
||||
inline bool checkMidnaRealBody();
|
||||
|
||||
static u8 const m_texDataTable[84];
|
||||
static u8 const m_anmDataTable[636];
|
||||
|
||||
@@ -1,30 +1,8 @@
|
||||
#ifndef D_A_D_A_HORSE_STATIC_H
|
||||
#define D_A_D_A_HORSE_STATIC_H
|
||||
|
||||
#include "Z2AudioLib/Z2Creature.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class e_wb_class {
|
||||
public:
|
||||
BOOL checkWait(void);
|
||||
void setPlayerRideNow(void);
|
||||
void setPlayerRide(void);
|
||||
void getOff(void);
|
||||
BOOL checkDownDamage(void);
|
||||
u8 checkNormalRideMode(void) const;
|
||||
void setRunRideMode(void);
|
||||
|
||||
private:
|
||||
u8 unk0[0x5b4];
|
||||
s16 unk1460;
|
||||
u8 unk1462[0x36];
|
||||
Z2CreatureRide mZ2Ride;
|
||||
u8 unk1673[7];
|
||||
s16 unk1680;
|
||||
u16 unk1682;
|
||||
u8 unk1684[0x2a];
|
||||
u16 unk1726;
|
||||
};
|
||||
#include "rel/d/a/e/d_a_e_wb/d_a_e_wb.h"
|
||||
|
||||
class daTagHstop_c {
|
||||
static daTagHstop_c* m_top;
|
||||
|
||||
+44
-25
@@ -26,8 +26,8 @@ private:
|
||||
/* 0x05 */ u8 field_0x5[3];
|
||||
/* 0x08 */ cXyz mPos;
|
||||
/* 0x14 */ Mtx field_0x14;
|
||||
/* 0x44 */ ResTIMG* field_0x44;
|
||||
/* 0x48 */ ResTIMG* field_0x48;
|
||||
/* 0x44 */ ResTIMG* mpImg;
|
||||
/* 0x48 */ u8* mpData;
|
||||
};
|
||||
|
||||
class daPy_boomerangMove_c {
|
||||
@@ -53,10 +53,10 @@ public:
|
||||
void initData();
|
||||
void* mallocBuffer();
|
||||
void createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE);
|
||||
J3DAnmBase* loadData(u16);
|
||||
J3DAnmBase* loadDataIdx(u16);
|
||||
J3DAnmBase* loadDataPriIdx(u16);
|
||||
J3DAnmBase* loadDataDemoRID(u16, u16);
|
||||
void* loadData(u16);
|
||||
void* loadDataIdx(u16);
|
||||
void* loadDataPriIdx(u16);
|
||||
void* loadDataDemoRID(u16, u16);
|
||||
JKRHeap* setAnimeHeap();
|
||||
|
||||
u16 getIdx() const { return mIdx; }
|
||||
@@ -64,6 +64,7 @@ public:
|
||||
void resetPriIdx() { mPriIdx = 0xffff; }
|
||||
void resetArcNo() { mArcNo = 0xffff; }
|
||||
bool checkNoSetArcNo() const { return mArcNo == 0xFFFF; }
|
||||
void setBufferSize(u32 size) { mBufferSize = size; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ u16 mIdx;
|
||||
@@ -126,6 +127,7 @@ public:
|
||||
u16 getDemoType() const { return mDemoType; }
|
||||
void setDemoMode(u32 mode) { mDemoMode = mode; }
|
||||
u32 getDemoMode() const { return mDemoMode; }
|
||||
int getParam1() const { return mParam1; }
|
||||
void i_setSpecialDemoType() { setDemoType(5); }
|
||||
|
||||
private:
|
||||
@@ -189,7 +191,7 @@ public:
|
||||
FLG0_UNK_20 = 0x20,
|
||||
UNK_F_ROLL_CRASH_2 = 0x10,
|
||||
UNK_F_ROLL_CRASH_1 = 0x8,
|
||||
FLG0_UNK_4 = 4,
|
||||
MIDNA_RIDE = 4,
|
||||
|
||||
HEAVY_STATE_BOOTS = FLG0_UNK_40000000 | EQUIP_HEAVY_BOOTS | FLG0_UNK_20000,
|
||||
};
|
||||
@@ -211,7 +213,9 @@ public:
|
||||
enum daPy_ERFLG0 {
|
||||
ERFLG0_UNK_8000000 = 0x8000000,
|
||||
ERFLG0_UNK_1000000 = 0x1000000,
|
||||
ERFLG0_UNK_800000 = 0x800000,
|
||||
ERFLG0_UNK_100000 = 0x100000,
|
||||
ERFLG0_UNK_2 = 2,
|
||||
ERFLG0_UNK_1 = 1,
|
||||
};
|
||||
enum daPy_ERFLG1 {
|
||||
@@ -219,9 +223,13 @@ public:
|
||||
UNK_FORCE_PUT_POS = 0x2000,
|
||||
ERFLG1_UNK_1 = 1,
|
||||
};
|
||||
enum daPy_ERFLG2 {};
|
||||
enum daPy_ERFLG2 {
|
||||
ERFLG2_UNK_100 = 0x100,
|
||||
};
|
||||
enum daPy_RFLG0 {
|
||||
RFLG0_UNK_8000000 = 0x8000000,
|
||||
RFLG0_UNK_4000 = 0x4000,
|
||||
ENEMY_ATTENTION_LOCK = 0x1000,
|
||||
RFLG0_UNK_80 = 0x80,
|
||||
RFLG0_UNK_40 = 0x40,
|
||||
RFLG0_UNK_2 = 0x2,
|
||||
@@ -262,10 +270,10 @@ public:
|
||||
};
|
||||
|
||||
static u32 setParamData(int, int, int, int);
|
||||
int checkFishingRodItem(int);
|
||||
static BOOL checkFishingRodItem(int);
|
||||
static BOOL checkBombItem(int);
|
||||
static BOOL checkBottleItem(int);
|
||||
void checkDrinkBottleItem(int);
|
||||
static BOOL checkDrinkBottleItem(int);
|
||||
static BOOL checkOilBottleItem(int);
|
||||
static BOOL checkOpenBottleItem(int);
|
||||
static BOOL checkBowItem(int);
|
||||
@@ -276,25 +284,25 @@ public:
|
||||
void checkWoodShieldEquip();
|
||||
f32 getAttentionOffsetY();
|
||||
s16 checkNowWolfEyeUp();
|
||||
void forceRestartRoom(int, u32, int);
|
||||
void setFmChainPos(fopAc_ac_c*, cXyz*, int);
|
||||
void cancelFmChainGrab();
|
||||
void setLookPos(cXyz*);
|
||||
void setPlayerSe(u32);
|
||||
void linkGrabSubjectNoDraw(fopAc_ac_c*);
|
||||
static void forceRestartRoom(int, u32, int);
|
||||
static void setFmChainPos(fopAc_ac_c*, cXyz*, int);
|
||||
static void cancelFmChainGrab();
|
||||
static void setLookPos(cXyz*);
|
||||
static void setPlayerSe(u32);
|
||||
static bool linkGrabSubjectNoDraw(fopAc_ac_c*);
|
||||
void wolfGrabSubjectNoDraw(fopAc_ac_c*);
|
||||
void checkRoomRestartStart();
|
||||
static bool checkRoomRestartStart();
|
||||
static u32 checkCarryStartLightBallA();
|
||||
static u32 checkCarryStartLightBallB();
|
||||
float getSpinnerRideSpeed() const;
|
||||
void checkSpinnerReflectEffect();
|
||||
void checkBoomerangCharge();
|
||||
static bool checkBoomerangCharge();
|
||||
bool checkBoomerangChargeTime();
|
||||
static daBoomerang_c* getThrowBoomerangActor();
|
||||
void cancelBoomerangLockActor(fopAc_ac_c*);
|
||||
void setPlayerDamage(int, int);
|
||||
void setMidnaMotionNum(int);
|
||||
void setMidnaFaceNum(int);
|
||||
static void cancelBoomerangLockActor(fopAc_ac_c*);
|
||||
static void setPlayerDamage(int, int);
|
||||
static void setMidnaMotionNum(int);
|
||||
static void setMidnaFaceNum(int);
|
||||
int checkNoResetFlg0(daPy_FLG0) const;
|
||||
int checkEquipHeavyBoots() const;
|
||||
int checkBoarSingleBattle() const;
|
||||
@@ -314,6 +322,11 @@ public:
|
||||
int checkResetFlg0(daPy_py_c::daPy_RFLG0) const;
|
||||
int checkNoResetFlg2(daPy_py_c::daPy_FLG2) const;
|
||||
int checkMagneBootsOn() const;
|
||||
void changeDemoPos0(cXyz const*);
|
||||
void changeDemoMode(u32, int, int, s16);
|
||||
void changeDemoParam2(s16);
|
||||
void cancelOriginalDemo();
|
||||
void changeOriginalDemo();
|
||||
|
||||
virtual cXyz* getMidnaAtnPos() const;
|
||||
virtual void setMidnaMsgNum(fopAc_ac_c*, u16);
|
||||
@@ -493,9 +506,12 @@ public:
|
||||
return sumouCameraMode;
|
||||
}
|
||||
|
||||
bool i_getSumouMode() const { return getSumouCameraMode(); }
|
||||
|
||||
bool checkStatusWindowDraw() { return i_checkNoResetFlg2(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); }
|
||||
|
||||
// some functions use these function as an inline
|
||||
// is there a better way to handle this?
|
||||
@@ -513,22 +529,25 @@ public:
|
||||
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; }
|
||||
int i_checkWolf() const { return i_checkNoResetFlg1(IS_WOLF); }
|
||||
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(FLG0_UNK_4); }
|
||||
bool i_checkMidnaRide() const { return i_checkNoResetFlg0(MIDNA_RIDE); }
|
||||
|
||||
inline u32 getLastSceneMode();
|
||||
inline static u32 getLastSceneMode();
|
||||
inline bool checkWoodSwordEquip();
|
||||
inline BOOL i_checkSwordGet();
|
||||
inline bool i_checkShieldGet() const;
|
||||
inline BOOL checkNowWolf();
|
||||
inline bool checkZoraWearFlg() const;
|
||||
|
||||
static daMidna_c* getMidnaActor() { return m_midnaActor; }
|
||||
|
||||
static daMidna_c* m_midnaActor;
|
||||
};
|
||||
|
||||
|
||||
@@ -53,6 +53,10 @@ public:
|
||||
virtual ~cBgS() {}
|
||||
virtual void Ct();
|
||||
virtual void Dt();
|
||||
|
||||
fopAc_ac_c* GetActorPointer(cBgS_PolyInfo const& info) const {
|
||||
return GetActorPointer(info.GetBgIndex());
|
||||
}
|
||||
}; // Size: 0x1404
|
||||
|
||||
class dBgS_Acch;
|
||||
@@ -75,7 +79,7 @@ public:
|
||||
bool GetMagnetCode(cBgS_PolyInfo const&);
|
||||
bool GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
bool GetUnderwaterRoofCode(cBgS_PolyInfo const&);
|
||||
bool GetWallCode(cBgS_PolyInfo const&);
|
||||
s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
bool GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
bool GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
bool GetGroundCode(cBgS_PolyInfo const&);
|
||||
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
virtual void GetShdwThrough(int) = 0;
|
||||
virtual bool GetUnderwaterRoofCode(int) = 0;
|
||||
virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
@@ -224,7 +224,7 @@ public:
|
||||
/* 8007B630 */ virtual bool GetUnderwaterRoofCode(int);
|
||||
/* 8007B4B4 */ virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 8007B6AC */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 8007B6D8 */ virtual bool GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 8007B6D8 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 8007B704 */ virtual bool GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 8007B734 */ virtual bool GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 8007B760 */ virtual bool GetGroundCode(cBgS_PolyInfo const&);
|
||||
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
virtual bool GetUnderwaterRoofCode(int) = 0;
|
||||
virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetLinkNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
/* 80082CCC */ virtual void GetUnderwaterRoofCode(int);
|
||||
/* 80082B3C */ virtual void GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 80082D24 */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 80082D54 */ virtual void GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 80082D54 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 80082D84 */ virtual void GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80082DB4 */ virtual void GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 80082DE4 */ virtual void GetGroundCode(cBgS_PolyInfo const&);
|
||||
|
||||
@@ -72,6 +72,7 @@ enum PlayerPtr { LINK_PTR, HORSE_PTR };
|
||||
class daHorse_c;
|
||||
class dPa_control_c;
|
||||
class daAlink_c;
|
||||
class dMsgObject_c;
|
||||
|
||||
class dComIfG_play_c {
|
||||
public:
|
||||
@@ -110,7 +111,7 @@ public:
|
||||
|
||||
// inlines
|
||||
bool& isPauseFlag() { return mPauseFlag; }
|
||||
void* getMsgObjectClass() { return mMsgObjectClass; }
|
||||
dMsgObject_c* getMsgObjectClass() { return mMsgObjectClass; }
|
||||
dStage_roomControl_c* getRoomControl() { return &mRoomControl; }
|
||||
dStage_stageDt_c& getStage() { return mStageData; }
|
||||
dEvt_control_c& getEvent() { return mEvent; }
|
||||
@@ -155,6 +156,29 @@ public:
|
||||
mBottleStatus = status;
|
||||
mBottleSetFlag = flag;
|
||||
}
|
||||
void setNunStatus(u8 status, u8 param_1, u8 flag) {
|
||||
mNunStatus = status;
|
||||
field_0x4ef0 = param_1;
|
||||
mNunSetFlag = flag;
|
||||
}
|
||||
void setRemoConStatus(u8 status, u8 param_1, u8 flag) {
|
||||
mRemoConStatus = status;
|
||||
field_0x4ef2 = param_1;
|
||||
mRemoConSetFlag = flag;
|
||||
}
|
||||
void setNunZStatus(u8 status, u8 flag) {
|
||||
mNunZStatus = status;
|
||||
mNunZSetFlag = flag;
|
||||
}
|
||||
void setNunCStatus(u8 status, u8 flag) {
|
||||
mNunCStatus = status;
|
||||
mNunCSetFlag = flag;
|
||||
}
|
||||
void setCStickStatus(u8 status, u8 param_1, u8 flag) {
|
||||
mCStickStatus = status;
|
||||
mCStickDirection = param_1;
|
||||
mCStickSetFlag = flag;
|
||||
}
|
||||
void setItemLifeCount(float hearts, u8 type) {
|
||||
mItemLifeCount += hearts;
|
||||
mItemLifeCountType = type;
|
||||
@@ -167,9 +191,33 @@ public:
|
||||
void setItemKeyNumCount(s16 keys) { mItemKeyNumCount += keys; }
|
||||
void setItemMaxLifeCount(s16 max) { mItemMaxLifeCount += max; }
|
||||
void setOxygen(int oxygen) { mOxygen = oxygen; }
|
||||
void setNowOxygen(s32 oxygen) { mNowOxygen = oxygen; }
|
||||
int getOxygen() { return mOxygen; }
|
||||
int getMaxOxygen() { return mMaxOxygen; }
|
||||
void setMaxOxygen(int max) { mMaxOxygen = max; }
|
||||
void setItemNowLife(u16 life) { mItemNowLife = life; }
|
||||
void setItemNowMagic(s16 magic) { mItemNowMagicCount = magic; }
|
||||
void setItemNowOil(s32 oil) { mItemNowOil = oil; }
|
||||
u8 getNeedLightDropNum() { return mNeedLightDropNum; }
|
||||
u8 getDoStatus() { return mDoStatus; }
|
||||
u8 getRStatus() { return mRStatus; }
|
||||
u8 getAStatus() { return mAStatus; }
|
||||
u8 getXStatus() { return mXStatus; }
|
||||
u8 getYStatus() { return mYStatus; }
|
||||
u8 getZStatus() { return mZStatus; }
|
||||
u8 get3DStatus() { return m3DStatus; }
|
||||
u8 getCStickStatus() { return mCStickStatus; }
|
||||
u8 getSButtonStatus() { return mSButtonStatus; }
|
||||
u8 getNunStatus() { return mNunStatus; }
|
||||
u8 getRemoConStatus() { return mRemoConStatus; }
|
||||
u8 getNunZStatus() { return mNunZStatus; }
|
||||
u8 getNunCStatus() { return mNunCStatus; }
|
||||
u8 getBottleStatus() { return mBottleStatus; }
|
||||
bool isDoSetFlag(u8 flag) { return flag & mDoSetFlag; }
|
||||
bool isASetFlag(u8 flag) { return flag & mASetFlag; }
|
||||
bool isRSetFlag(u8 flag) { return flag & mRSetFlag; }
|
||||
bool isXSetFlag(u8 flag) { return flag & mXSetFlag; }
|
||||
bool isYSetFlag(u8 flag) { return flag & mYSetFlag; }
|
||||
const char* getStartStageName() { return mStartStage.getName(); }
|
||||
s8 getStartStageRoomNo() { return mStartStage.getRoomNo(); }
|
||||
s8 getStartStageLayer() { return mStartStage.getLayer(); }
|
||||
@@ -189,7 +237,9 @@ public:
|
||||
s8 getStartStageDarkArea() { return mStartStage.getDarkArea(); }
|
||||
void setStartStageDarkArea(s8 darkArea) { mStartStage.setDarkArea(darkArea); }
|
||||
void* getPlayerPtr(int ptrIdx) { return mPlayerPtr[ptrIdx]; }
|
||||
void* getPlayer(int idx) { return mPlayer[idx]; }
|
||||
JKRArchive* getMain2DArchive() { return mMain2DArchive; }
|
||||
JKRArchive* getAnmArchive() { return mAnmArchive; }
|
||||
J2DGrafContext* getCurrentGrafPort() { return mCurrentGrafPort; }
|
||||
dVibration_c& getVibration() { return mVibration; }
|
||||
void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] |= flag; }
|
||||
@@ -254,7 +304,7 @@ public:
|
||||
/* 0x04E74 */ daAlink_c* mPlayer[1];
|
||||
/* 0x04E78 */ s8 mPlayerCameraID[4];
|
||||
/* 0x04E7C */ void* mPlayerPtr[2]; // 0: Player, 1: Horse ; type may be wrong
|
||||
/* 0x04E84 */ void* mMsgObjectClass;
|
||||
/* 0x04E84 */ dMsgObject_c* mMsgObjectClass;
|
||||
/* 0x04E88 */ float mItemLifeCount;
|
||||
/* 0x04E8C */ int mItemRupeeCount;
|
||||
/* 0x04E90 */ s16 mItemKeyNumCount;
|
||||
@@ -492,6 +542,11 @@ const char* dComIfGs_getWarpStageName();
|
||||
s16 dComIfGs_getWarpPlayerAngleY();
|
||||
s8 dComIfGs_getWarpRoomNo();
|
||||
char* dComIfG_getRoomArcName(int);
|
||||
int dComIfGp_getSelectItemNum(int);
|
||||
int dComIfGp_getSelectItemMaxNum(int);
|
||||
void dComIfGp_mapShow();
|
||||
void dComIfGp_mapHide();
|
||||
bool dComIfGp_checkMapShow();
|
||||
|
||||
inline void dComIfGp_setRStatus(u8 status, u8 flag) {
|
||||
g_dComIfG_gameInfo.play.setRStatus(status, flag);
|
||||
@@ -677,6 +732,10 @@ inline s32 dComIfGs_isDungeonItemMap() {
|
||||
return g_dComIfG_gameInfo.info.getMemory().getBit().isDungeonItemMap();
|
||||
}
|
||||
|
||||
inline s32 dComIfGs_isDungeonItemCompass() {
|
||||
return g_dComIfG_gameInfo.info.getMemory().getBit().isDungeonItemCompass();
|
||||
}
|
||||
|
||||
inline s32 dComIfGs_isDungeonItemBossKey() {
|
||||
return g_dComIfG_gameInfo.info.getMemory().getBit().isDungeonItemBossKey();
|
||||
}
|
||||
@@ -912,10 +971,14 @@ inline JKRHeap* dComIfGp_getExpHeap2D() {
|
||||
return g_dComIfG_gameInfo.play.getExpHeap2D();
|
||||
}
|
||||
|
||||
inline u16 dComIfGs_getOil() {
|
||||
inline s16 dComIfGs_getOil() {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getOil();
|
||||
}
|
||||
|
||||
inline s16 dComIfGs_getMaxOil() {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getMaxOil();
|
||||
}
|
||||
|
||||
inline s64 dComIfGs_getSaveStartTime() {
|
||||
return g_dComIfG_gameInfo.info.getStartTime();
|
||||
}
|
||||
@@ -1064,6 +1127,10 @@ inline JKRArchive* dComIfGp_getMain2DArchive() {
|
||||
return g_dComIfG_gameInfo.play.getMain2DArchive();
|
||||
}
|
||||
|
||||
inline JKRArchive* dComIfGp_getAnmArchive() {
|
||||
return g_dComIfG_gameInfo.play.getAnmArchive();
|
||||
}
|
||||
|
||||
inline J2DGrafContext* dComIfGp_getCurrentGrafPort() {
|
||||
return g_dComIfG_gameInfo.play.getCurrentGrafPort();
|
||||
}
|
||||
@@ -1104,7 +1171,7 @@ inline void dComIfGp_set3DStatus(u8 status, u8 direction, u8 flag) {
|
||||
g_dComIfG_gameInfo.play.set3DStatus(status, direction, flag);
|
||||
}
|
||||
|
||||
inline u8 dComIfGs_getLastSceneMode() {
|
||||
inline s32 dComIfGs_getLastSceneMode() {
|
||||
return g_dComIfG_gameInfo.info.getRestart().getLastMode();
|
||||
}
|
||||
|
||||
@@ -1192,4 +1259,168 @@ inline dStage_roomStatus_c* dComIfGp_roomControl_getStatusRoomDt(int room_no) {
|
||||
return g_dComIfG_gameInfo.play.getRoomControl()->getStatusRoomDt(room_no);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setItemNowLife(u16 life) {
|
||||
g_dComIfG_gameInfo.play.setItemNowLife(life);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setItemNowMagic(s16 magic) {
|
||||
g_dComIfG_gameInfo.play.setItemNowMagic(magic);
|
||||
}
|
||||
|
||||
inline u8 dComIfGs_getMagic() {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getMagic();
|
||||
}
|
||||
|
||||
inline u8 dComIfGs_getMaxMagic() {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getMaxMagic();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setOxygen(int oxygen) {
|
||||
g_dComIfG_gameInfo.play.setOxygen(oxygen);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setNowOxygen(s32 oxygen) {
|
||||
g_dComIfG_gameInfo.play.setNowOxygen(oxygen);
|
||||
}
|
||||
|
||||
inline int dComIfGp_getMaxOxygen() {
|
||||
return g_dComIfG_gameInfo.play.getMaxOxygen();
|
||||
}
|
||||
|
||||
inline int dComIfGp_getOxygen() {
|
||||
return g_dComIfG_gameInfo.play.getOxygen();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNeedLightDropNum() {
|
||||
return g_dComIfG_gameInfo.play.getNeedLightDropNum();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setItemNowOil(s32 oil) {
|
||||
g_dComIfG_gameInfo.play.setItemNowOil(oil);
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getAStatus() {
|
||||
return g_dComIfG_gameInfo.play.getAStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getXStatus() {
|
||||
return g_dComIfG_gameInfo.play.getXStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getYStatus() {
|
||||
return g_dComIfG_gameInfo.play.getYStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getZStatus() {
|
||||
return g_dComIfG_gameInfo.play.getZStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_get3DStatus() {
|
||||
return g_dComIfG_gameInfo.play.get3DStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getCStickStatus() {
|
||||
return g_dComIfG_gameInfo.play.getCStickStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getSButtonStatus() {
|
||||
return g_dComIfG_gameInfo.play.getSButtonStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNunStatus() {
|
||||
return g_dComIfG_gameInfo.play.getNunStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNunZStatus() {
|
||||
return g_dComIfG_gameInfo.play.getNunZStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNunCStatus() {
|
||||
return g_dComIfG_gameInfo.play.getNunCStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getBottleStatus() {
|
||||
return g_dComIfG_gameInfo.play.getBottleStatus();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getRemoConStatus() {
|
||||
return g_dComIfG_gameInfo.play.getRemoConStatus();
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isDoSetFlag(u8 flag) {
|
||||
return g_dComIfG_gameInfo.play.isDoSetFlag(flag);
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isASetFlag(u8 flag) {
|
||||
return g_dComIfG_gameInfo.play.isASetFlag(flag);
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isRSetFlag(u8 flag) {
|
||||
return g_dComIfG_gameInfo.play.isRSetFlag(flag);
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isXSetFlag(u8 flag) {
|
||||
return g_dComIfG_gameInfo.play.isXSetFlag(flag);
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isYSetFlag(u8 flag) {
|
||||
return g_dComIfG_gameInfo.play.isYSetFlag(flag);
|
||||
}
|
||||
|
||||
inline bool dComIfGs_isCollectMirror(u8 param_0) {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getCollect().isCollectMirror(param_0);
|
||||
}
|
||||
|
||||
inline bool dComIfGs_isCollectCrystal(u8 param_0) {
|
||||
return g_dComIfG_gameInfo.info.getPlayer().getCollect().isCollectCrystal(param_0);
|
||||
}
|
||||
|
||||
inline void dComIfGs_onCollectMirror(u8 param_0) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getCollect().onCollectMirror(param_0);
|
||||
}
|
||||
|
||||
inline void dComIfGs_onCollectCrystal(u8 param_0) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getCollect().onCollectCrystal(param_0);
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isPauseFlag() {
|
||||
return g_dComIfG_gameInfo.play.isPauseFlag();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setNunStatus(u8 param_0, u8 param_1, u8 param_2) {
|
||||
g_dComIfG_gameInfo.play.setNunStatus(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setRemoConStatus(u8 param_0, u8 param_1, u8 param_2) {
|
||||
g_dComIfG_gameInfo.play.setRemoConStatus(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setNunZStatus(u8 param_0, u8 param_1) {
|
||||
g_dComIfG_gameInfo.play.setNunZStatus(param_0, param_1);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setNunCStatus(u8 param_0, u8 param_1) {
|
||||
g_dComIfG_gameInfo.play.setNunCStatus(param_0, param_1);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setCStickStatus(u8 param_0, u8 param_1, u8 param_2) {
|
||||
g_dComIfG_gameInfo.play.setCStickStatus(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
inline void* dComIfG_getObjectIDRes(const char* arc_name, u16 id) {
|
||||
return g_dComIfG_gameInfo.mResControl.getObjectIDRes(arc_name, id);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_getPlayer(int idx) {
|
||||
return g_dComIfG_gameInfo.play.getPlayer(idx);
|
||||
}
|
||||
|
||||
inline void dComIfGd_set2DOpa(dDlst_base_c* dlst) {
|
||||
g_dComIfG_gameInfo.drawlist.set2DOpa(dlst);
|
||||
}
|
||||
|
||||
inline dMsgObject_c* dComIfGp_getMsgObjectClass() {
|
||||
return g_dComIfG_gameInfo.play.getMsgObjectClass();
|
||||
}
|
||||
|
||||
#endif /* D_COM_D_COM_INF_GAME_H */
|
||||
|
||||
@@ -191,6 +191,8 @@ public:
|
||||
/* 800568D8 */ void wipeIn(f32);
|
||||
/* 80056900 */ void calcWipe();
|
||||
|
||||
void set2DOpa(dDlst_base_c* dlst) { set(field_0x1b4, field_0x1b8, dlst); }
|
||||
|
||||
static u8 mWipeDlst[72];
|
||||
static u8 mWipeColor[4];
|
||||
static f32 mWipeRate;
|
||||
@@ -228,8 +230,8 @@ private:
|
||||
/* 0x000B0 */ dDlst_list_c** field_0xb0;
|
||||
/* 0x000B4 */ dDlst_list_c** field_0xb4; // array?
|
||||
/* 0x000B8 */ u8 field_0xb8[0xFC];
|
||||
/* 0x001B4 */ dDlst_list_c* field_0x1b4;
|
||||
/* 0x001B8 */ dDlst_list_c** field_0x1b8;
|
||||
/* 0x001B4 */ dDlst_base_c** field_0x1b4;
|
||||
/* 0x001B8 */ dDlst_base_c** field_0x1b8;
|
||||
/* 0x001BC */ dDlst_list_c** field_0x1bc; // array?
|
||||
/* 0x001C0 */ u8 field_0x1c0[0x7C];
|
||||
/* 0x0023C */ dDlst_list_c* field_0x23c;
|
||||
|
||||
@@ -59,7 +59,7 @@ public:
|
||||
/* 8003C260 */ static dRes_info_c* newResInfo(dRes_info_c*, int);
|
||||
/* 8003C288 */ static dRes_info_c* getResInfoLoaded(char const*, dRes_info_c*, int);
|
||||
/* 8003C2EC */ static void* getRes(char const*, s32, dRes_info_c*, int);
|
||||
/* 8003C400 */ void getIDRes(char const*, u16, dRes_info_c*, int);
|
||||
/* 8003C400 */ static void* getIDRes(char const*, u16, dRes_info_c*, int);
|
||||
/* 8003C470 */ static int syncAllRes(dRes_info_c*, int);
|
||||
/* 8003C4E4 */ int setObjectRes(char const*, void*, u32, JKRHeap*);
|
||||
/* 8003C5BC */ int setStageRes(char const*, JKRHeap*);
|
||||
@@ -79,6 +79,10 @@ public:
|
||||
return getRes(arcName, param_1, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
}
|
||||
|
||||
void* getObjectIDRes(const char* arcName, u16 id) {
|
||||
return getIDRes(arcName, id, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
}
|
||||
|
||||
int syncObjectRes(const char* name) {
|
||||
return syncRes(name, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo));
|
||||
}
|
||||
|
||||
+15
-4
@@ -45,8 +45,8 @@ struct stage_stag_info_class {
|
||||
/* 0x2A */ u16 mStageTitleNo;
|
||||
}; // Size: Unknown
|
||||
|
||||
inline u16 dStage_stagInfo_GetUpButton(stage_stag_info_class* p_info) {
|
||||
return p_info->field_0x10 & 7;
|
||||
inline s16 dStage_stagInfo_GetUpButton(stage_stag_info_class* p_info) {
|
||||
return p_info->field_0x0a & 7;
|
||||
}
|
||||
|
||||
struct stage_scls_info_class {
|
||||
@@ -99,7 +99,9 @@ struct dStage_Multi_c {};
|
||||
|
||||
struct dStage_SoundInfo_c {};
|
||||
|
||||
struct dStage_FileList_dt_c {};
|
||||
struct dStage_FileList_dt_c {
|
||||
/* 0x0 */ u32 field_0x0;
|
||||
};
|
||||
|
||||
struct dStage_dPnt_c {};
|
||||
|
||||
@@ -547,11 +549,12 @@ public:
|
||||
bool checkStatusFlag(int i_roomNo, u8 flag) const {
|
||||
return cLib_checkBit(mStatus[i_roomNo].unk_0x3F4, flag);
|
||||
}
|
||||
static char* getDemoArcName() { return mDemoArcName; }
|
||||
|
||||
static JKRExpHeap* mMemoryBlock[19];
|
||||
static char mArcBank[32][10];
|
||||
static dStage_roomStatus_c mStatus[0x40];
|
||||
static u8 mDemoArcName[10 + 2 /* padding */];
|
||||
static char mDemoArcName[10];
|
||||
static u32 mProcID;
|
||||
static char* mArcBankName;
|
||||
static char* mArcBankData;
|
||||
@@ -680,6 +683,10 @@ inline u32 dStage_stagInfo_GetEscapeWarp(stage_stag_info_class* pstag) {
|
||||
return pstag->field_0x10 >> 0x18;
|
||||
}
|
||||
|
||||
inline u32 dStage_stagInfo_GetMiniMap(stage_stag_info_class* pstag) {
|
||||
return (pstag->field_0x0a >> 0xD) & 7;
|
||||
}
|
||||
|
||||
inline s8 dStage_sclsInfo_getSceneLayer(stage_scls_info_class* p_info) {
|
||||
return p_info->field_0xb & 0xF;
|
||||
}
|
||||
@@ -696,4 +703,8 @@ inline s8 dStage_sclsInfo_getTimeH(stage_scls_info_class* p_info) {
|
||||
return (p_info->field_0xa >> 4) | (p_info->field_0xb & 16);
|
||||
}
|
||||
|
||||
inline u32 dStage_FileList_dt_getMiniMap(dStage_FileList_dt_c* p_fList) {
|
||||
return p_fList->field_0x0 >> 3 & 7;
|
||||
}
|
||||
|
||||
#endif /* D_D_STAGE_H */
|
||||
|
||||
@@ -83,6 +83,9 @@ public:
|
||||
bool runCheck() { return field_0xe5 != 0; }
|
||||
u16 chkEventFlag(u16 flag) { return flag & mEventFlag; }
|
||||
u8 getMode() const { return mMode; }
|
||||
u16 checkHind(u16 flag) { return flag & mHindFlag; }
|
||||
|
||||
bool i_isOrderOK() { return field_0xe5 == 0 || field_0xe5 == 2; }
|
||||
|
||||
public:
|
||||
/* 0x000 */ u8 field_0x0[4];
|
||||
|
||||
@@ -665,5 +665,6 @@ STATIC_ASSERT(sizeof(dScnKy_env_light_c) == 4880);
|
||||
|
||||
BOOL dKy_darkworld_stage_check(char const*, int);
|
||||
BOOL dKy_withwarp_capture_check();
|
||||
bool dKy_darkworld_check();
|
||||
|
||||
#endif /* D_KANKYO_D_KANKYO_H */
|
||||
|
||||
@@ -1,6 +1,84 @@
|
||||
#ifndef D_MAP_D_MAP_PATH_H
|
||||
#define D_MAP_D_MAP_PATH_H
|
||||
|
||||
#include "d/d_drawlist.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class dDrawPath_c : public dDlst_base_c {
|
||||
public:
|
||||
struct line_class {};
|
||||
|
||||
struct poly_class {};
|
||||
|
||||
struct group_class {};
|
||||
|
||||
struct floor_class {};
|
||||
|
||||
struct room_class {};
|
||||
|
||||
/* 8003CB00 */ void rendering(dDrawPath_c::group_class const*);
|
||||
/* 8003CBBC */ void rendering(dDrawPath_c::floor_class const*);
|
||||
|
||||
/* 8002AD3C */ virtual ~dDrawPath_c();
|
||||
/* 8002ABF0 */ virtual bool isDrawType(int);
|
||||
virtual void getColor(int) = 0;
|
||||
/* 8002AD84 */ virtual void getLineColor(int, int);
|
||||
virtual void getLineWidth(int) = 0;
|
||||
virtual void isSwitch(dDrawPath_c::group_class const*) = 0;
|
||||
virtual void isRenderingFloor(int) = 0;
|
||||
virtual void getFirstRoomPointer() = 0;
|
||||
virtual void getNextRoomPointer() = 0;
|
||||
/* 8003CCC4 */ virtual void drawPath();
|
||||
/* 8003C94C */ virtual void rendering(dDrawPath_c::line_class const*);
|
||||
/* 8003CA40 */ virtual void rendering(dDrawPath_c::poly_class const*);
|
||||
/* 8003CC24 */ virtual void rendering(dDrawPath_c::room_class const*);
|
||||
};
|
||||
|
||||
class dDrawPathWithNormalPattern_c : public dDrawPath_c {
|
||||
public:
|
||||
/* 8002ACE0 */ virtual ~dDrawPathWithNormalPattern_c();
|
||||
};
|
||||
|
||||
class dRenderingMap_c : public dDrawPathWithNormalPattern_c {
|
||||
public:
|
||||
/* 8003CD38 */ void makeResTIMG(ResTIMG*, u16, u16, u8*, u8*, u16) const;
|
||||
/* 8003CDAC */ void renderingMap();
|
||||
|
||||
/* 8002AC74 */ virtual ~dRenderingMap_c();
|
||||
virtual void beforeDrawPath() = 0;
|
||||
virtual void afterDrawPath() = 0;
|
||||
virtual void preDrawPath() = 0;
|
||||
virtual void postDrawPath() = 0;
|
||||
virtual void isDrawPath() = 0;
|
||||
virtual void preRenderingMap() = 0;
|
||||
virtual void postRenderingMap() = 0;
|
||||
virtual void getBackColor() const = 0;
|
||||
};
|
||||
|
||||
class dRenderingFDAmap_c : public dRenderingMap_c {
|
||||
public:
|
||||
/* 8003CE78 */ void setTevSettingNonTextureDirectColor() const;
|
||||
/* 8003CF40 */ void setTevSettingIntensityTextureToCI() const;
|
||||
/* 8003D0AC */ void drawBack() const;
|
||||
/* 8003D3C0 */ void renderingDecoration(dDrawPath_c::line_class const*);
|
||||
|
||||
/* 8002ABF8 */ virtual ~dRenderingFDAmap_c();
|
||||
/* 8003D188 */ virtual void preRenderingMap();
|
||||
/* 8003D320 */ virtual void postRenderingMap();
|
||||
/* 8003D68C */ virtual void getDecoLineColor(int, int);
|
||||
/* 8003D6B8 */ virtual void getDecorationLineWidth(int);
|
||||
|
||||
private:
|
||||
/* 0x04 */ int field_0x4;
|
||||
/* 0x08 */ f32 field_0x8;
|
||||
/* 0x0C */ f32 field_0xc;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 mCmPerTexel;
|
||||
/* 0x1C */ u16 field_0x1c;
|
||||
/* 0x1E */ u16 field_0x1e;
|
||||
/* 0x20 */ u16 field_0x20;
|
||||
/* 0x22 */ u16 field_0x22;
|
||||
}; // Size: 0x24
|
||||
|
||||
#endif /* D_MAP_D_MAP_PATH_H */
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user