d_camera work (#2369)

* bumpCheck matching

* checkGroundInfo matching

* chaseCamera matching

* lockonCamera attempted

* talktoCamera matching

* subjectCamera, magneCamera matching

* colosseumCamera close, plus various fixes

* towerCamera attempted

* hookshotCamera matching
This commit is contained in:
Caroline Madsen
2025-04-01 19:05:30 -07:00
committed by GitHub
parent 9847b2a278
commit e55c504f28
56 changed files with 5623 additions and 2230 deletions
+3
View File
@@ -42,6 +42,8 @@ public:
void operator*=(float);
bool operator<(const cSAngle& other) const { return mAngle < other.mAngle; }
bool operator>(const cSAngle& other) const { return mAngle > other.mAngle; }
bool operator<=(const cSAngle& other) const { return mAngle <= other.mAngle; }
bool operator>=(const cSAngle& other) const { return mAngle >= other.mAngle; }
operator s16(void) const { return mAngle; }
void operator=(const cSAngle& other) { mAngle = other.mAngle; }
static inline cSAngle getMaxNegative(void) { return cSAngle((s16)-0x8000); }
@@ -133,6 +135,7 @@ public:
void R(f32 i_radius) { mRadius = i_radius; }
void U(cSAngle const& i_azimuth) { mAzimuth = i_azimuth.Val(); }
void V(cSAngle const& i_inclination) { mInclination = i_inclination.Val(); }
cSGlobe(const cSGlobe&);
cSGlobe(float, short, short);
+2 -4
View File
@@ -69,12 +69,10 @@ public:
/* 0x1C vtable */
struct Shape {
/* 80167BBC */ ~Shape();
/* 80167BBC */ ~Shape() {}
/* 0x00 */ int _0;
/* 0x04 */ f32 _4;
/* 0x08 */ f32 _8;
/* 0x0C */ f32 _C;
/* 0x04 */ cXyz _4;
/* 0x10 */ f32 _10;
/* 0x14 */ f32 _14;
};
+10 -2
View File
@@ -3088,7 +3088,7 @@ public:
virtual bool cancelWolfLock(fopAc_ac_c*);
virtual s32 getAtnActorID() const;
virtual s32 getItemID() const;
virtual s32 getGrabActorID() const;
virtual u32 getGrabActorID() const;
virtual BOOL exchangeGrabActor(fopAc_ac_c*);
virtual BOOL setForceGrab(fopAc_ac_c*, int, int);
virtual void setForcePutPos(cXyz const&);
@@ -3346,10 +3346,16 @@ public:
const daAlink_AnmData* getAnmData(daAlink_ANM anmID) const { return &m_anmDataTable[anmID]; }
const daAlink_FaceTexData* getFaceTexData(daAlink_FTANM i_anmID) const { return &m_faceTexDataTable[i_anmID]; }
s16 getCameraAngleX() const { return field_0x310a; }
s16 getCameraAngleY() const { return field_0x310c; }
cXyz* getSubjectEyePos() { return &field_0x3768; }
u32 checkReinRide() const { return mRideStatus == 1 || mRideStatus == 2; }
int getGrassHowlEventActor() const { return field_0x3198; }
MtxP getShieldMtx() const { return mShieldModel->getBaseTRMtx(); }
MtxP getMagneBootsMtx() { return mMagneBootMtx; }
MtxP getMagneBootsInvMtx() { return mMagneBootInvMtx; }
s16 getMagneBootsModelShapeAngle() const { return field_0x3118; }
bool checkFishingCastMode() const {
bool var_r5;
@@ -3439,6 +3445,7 @@ public:
bool checkSpinnerRideWait() const {
return mProcID == PROC_SPINNER_WAIT && mProcVar2.field_0x300c == 0;
}
bool checkRoofSwitchHang() const { return mProcID == PROC_ROOF_SWITCH_HANG; }
fopAc_ac_c* getCopyRodActor() { return mCopyRodAcKeep.getActor(); }
fopAc_ac_c* getHookshotRoofWaitActor() { return mCargoCarryAcKeep.getActor(); }
@@ -3507,10 +3514,11 @@ public:
const cXyz& getWindSpeed() const { return mWindSpeed; }
const cXyz& getHsChainTopPos() const { return mHookshotTopPos; }
const cXyz& getHsChainRootPos() const { return mHeldItemRootPos; }
const cXyz& getHsSubChainRootPos() const { return field_0x3810; }
const csXyz& getHsAngle() const { return field_0x316c; }
s16 getHookshotStopTime() const { return field_0x3026; }
bool getHookshotLeft() const { return field_0x3020 == 0; }
static int getBallModelIdx() { return 0x25; }
static int getBallBtkIdx() { return 0x49; }
+2 -1
View File
@@ -221,7 +221,8 @@ public:
/* 80844590 */ int draw();
/* 8084478C */ ~daHorse_c();
/* 80182D04 */ void getLashDashStart() const;
/* 80182D04 */ bool getLashDashStart() const { return checkResetStateFlg0(RFLG0_LASH_DASH_START); }
bool checkNoBombProc() const { return m_procID == PROC_WAIT_e || m_procID == PROC_MOVE_e; }
bool checkResetStateFlg0(daHorse_RFLG0 flag) const { return m_resetStateFlg0 & flag; }
+4 -4
View File
@@ -694,12 +694,12 @@ public:
inline static BOOL checkSwordGet();
cXyz getHeadTopPos() const { return mHeadTopPos; }
BOOL checkThrowDamage() const { return checkNoResetFlg1(FLG1_THROW_DAMAGE); }
BOOL checkGoronSideMove() const { return mSpecialMode == 0x2B; }
u32 checkThrowDamage() const { return checkNoResetFlg1(FLG1_THROW_DAMAGE); }
bool checkGoronSideMove() const { return mSpecialMode == 0x2B; }
cXyz* getRightFootPosP() { return &mRightFootPos; }
cXyz* getLeftFootPosP() { return &mLeftFootPos; }
BOOL checkCopyRodThrowAfter() const { return checkNoResetFlg3(FLG3_COPY_ROD_THROW_AFTER); }
BOOL checkRide() const { return checkHorseRide() || checkBoarRide() || checkSpinnerRide() || checkCanoeRide() || checkBoardRide(); }
u32 checkRide() const { return checkHorseRide() || checkBoarRide() || checkSpinnerRide() || checkCanoeRide() || checkBoardRide(); }
cXyz getRightHandPos() const { return mRightHandPos; }
const cXyz getLeftHandPos() const { return mLeftHandPos; }
const cXyz getItemPos() const { return mItemPos; }
@@ -765,7 +765,7 @@ public:
virtual bool cancelWolfLock(fopAc_ac_c*);
virtual s32 getAtnActorID() const { return -1; }
virtual s32 getItemID() const;
virtual s32 getGrabActorID() const { return -1; }
virtual u32 getGrabActorID() const { return fpcM_ERROR_PROCESS_ID_e; }
virtual BOOL exchangeGrabActor(fopAc_ac_c*);
virtual BOOL setForceGrab(fopAc_ac_c*, int, int);
virtual void setForcePutPos(cXyz const&);
+1 -1
View File
@@ -10,7 +10,7 @@ public:
/* 80D5C01C */ ~daTagMwait_c();
/* 80D5C0A8 */ int execute();
bool checkEndMessage() {return fopAcM_isSwitch(this, mEnterSw); }
BOOL checkEndMessage() {return fopAcM_isSwitch(this, mEnterSw); }
/* 0x568 */ u8 mOnSw;
/* 0x569 */ u8 mEnterSw;
+3 -3
View File
@@ -213,9 +213,9 @@ public:
/* 8007378C */ fopAc_ac_c* CheckObjectTarget(s32);
/* 800737E4 */ bool LockonTruth();
/* 80073838 */ int checkDistance(cXyz*, s16, cXyz*, f32, f32, f32, f32);
/* 8016E424 */ void LockEdge();
/* 80182994 */ void GetCheckObjectCount();
/* 80182AD0 */ void keepLock(int);
/* 8016E424 */ bool LockEdge() { return chkFlag(8) || chkFlag(0x20); }
/* 80182994 */ int GetCheckObjectCount() { return mCheckObjectCount; }
/* 80182AD0 */ void keepLock(int timer) { mAttnBlockTimer = timer; }
/* 8014B010 */ static dist_entry& getDistTable(int i_no) { return dist_table[i_no]; }
fopAc_ac_c* getCatghTarget() { return mCatghTarget.getCatghTarget(); }
+1
View File
@@ -110,6 +110,7 @@ public:
bool WaterChk(dBgS_SplGrpChk* chk) { return SplGrpChk(chk); }
u32 GetMtrlSndId(const cBgS_PolyInfo& param_0) { return dKy_pol_sound_get(&param_0); }
void DebugDrawPoly(dBgW_Base *param_1) {}
fopAc_ac_c* GetActorPointer(cBgS_PolyInfo const& param_0) { return cBgS::GetActorPointer(param_0); }
}; // Size: 0x1404
bool dBgS_CheckBGroundPoly(cBgS_PolyInfo const&);
+21 -5
View File
@@ -37,6 +37,12 @@ public:
f32 FwdWeightL(s32 param_0) { return mChkInfo[param_0].mWeightL; }
f32 FwdBackMargin() { return mFwdBackMargin; }
f32 FwdCushion() { return mFwdCushion; }
f32 GazeBackMargin() { return mGazeBackMargin; }
f32 WallCushion() { return mWallCushion; }
f32 WallBackCushion() { return mWallBackCushion; }
f32 CornerCushion() { return mCornerCushion; }
f32 CornerAngleMax() { return mCornerAngleMax; }
f32 FloorMargin() { return mFloorMargin; }
// name is a guess for now
struct ChkInfo {
@@ -79,14 +85,14 @@ public:
/* 80088620 */ int SearchStyle(u32);
/* 80182C60 */ void Arg2(s16 val) { mMapToolArg2 = val; }
/* 80182C3C */ int Arg2() { return mMapToolArg2; }
/* 80182C3C */ s16 Arg2() { return mMapToolArg2; }
/* 80182C48 */ u8 Arg1() { return mMapToolArg1; }
/* 80182C6C */ void Arg1(u8 val) { mMapToolArg1 = val; }
/* 80182C50 */ u8 Arg0() { return mMapToolArg0; }
/* 80182C74 */ void Arg0(u8 val) { mMapToolArg0 = val; }
/* 80182C7C */ void Fovy(u8 val) { mMapToolFovy = val; }
/* 80182C58 */ u8 Fovy() { return mMapToolFovy; }
/* 80182CB4 */ bool CheckFlag(u16 flag) { return mCurrentStyle->field_0x6 & flag; }
/* 80182CB4 */ bool CheckFlag(u16 flag) { return (flag & mCurrentStyle->field_0x6) != 0; }
/* 80182CD0 */ f32 Val(s32 param_0, int param_1) {
return mCamStyleData[param_0].field_0x8[param_1];
}
@@ -104,7 +110,8 @@ public:
u32 Id(s32 i_style) { return mCamStyleData[i_style].field_0x0; }
int Algorythmn(s32 i_style) { return mCamStyleData[i_style].field_0x4; }
int Algorythmn() { return mCurrentStyle->field_0x4; }
bool Flag(s32 param_0, u16 param_1) { return mCamStyleData[param_0].field_0x6 & param_1; }
u16 Flag(s32 param_0, u16 param_1) { return mCamStyleData[param_0].field_0x6 & param_1; }
void SetFlag(u16 i_flag) { mCurrentStyle->field_0x6 |= i_flag; }
/* 8008858C */ virtual ~dCamParam_c();
};
@@ -115,7 +122,7 @@ public:
/* 80088918 */ bool CheckLatitudeRange(s16*);
/* 80088988 */ f32 PlayerHideDist();
/* 80182BB8 */ bool CheckFlag2(u16 i_flag) { return mFlags2 & i_flag; }
/* 80182BB8 */ bool CheckFlag2(u16 i_flag) { return (i_flag & mFlags2) != 0; }
/* 80182BE8 */ f32 WaitRollSpeed() { return mWaitRollSpeed; }
/* 80182BF0 */ int WaitRollTimer() { return mWaitRollTimer; }
/* 80182C1C */ int ThrowTimer() { return mThrowTimer; }
@@ -126,7 +133,7 @@ public:
/* 80182CF4 */ int ChargeTimer() { return mChargeTimer; }
/* 80182CFC */ f32 ChargeLatitude() { return mChargeLatitude; }
bool CheckFlag(u16 i_flag) { return mDebugFlags & i_flag; }
bool CheckFlag(u16 i_flag) { return (i_flag & mDebugFlags) != 0; }
f32 ManualEndVal() { return mManualEndVal; }
f32 CinemaScopeTrimHeight() { return mTrimCineScopeHeight; }
f32 VistaTrimHeight() { return mTrimVistaHeight; }
@@ -134,6 +141,15 @@ public:
f32 ForceLockOffDist() { return mForceLockOffDist; }
f32 USOValue() { return mFalseValue; }
f32 USOAngle() { return mFalseAngle; }
f32 WindShakeGap4Ctr() { return mWindShakeCtr; }
f32 WindShakeGap4Fvy() { return mWindShakeFvy; }
f32 LockonChangeCushion() { return mLockonChangeCushion; }
int LockonChangeTimer() { return mLockonChangeTimer; }
f32 Cushion4Base() { return mBaseCushion; }
f32 Cushion4Jump() { return mJumpCushion; }
f32 CusCus() { return mCusCus; }
f32 ParallelDist() { return mParallelDist; }
f32 CurveWeight() { return mCurveWeight; }
/* 0x000 */ f32 mDrawNear;
/* 0x004 */ f32 mDrawFar;
+267 -90
View File
@@ -6,10 +6,10 @@
#include "d/d_bg_s_gnd_chk.h"
#include "d/d_cam_param.h"
#include "d/d_drawlist.h"
#include "d/d_spline_path.h"
#include "d/d_stage.h"
#include "dolphin/types.h"
#include "f_op/f_op_actor.h"
class fopAc_ac_c;
dAttention_c& dComIfGp_getAttention();
struct dCamMapToolData {
@@ -84,27 +84,6 @@ struct dCamera_monitoring_things {
/* 0x14 */ cXyz field_0x14;
};
struct d2DBSplinePath {
/* 0x00 */ s32 field_0x0;
/* 0x04 */ s32 field_0x4;
/* 0x08 */ s32 field_0x8;
/* 0x0C */ s32 field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ u32 field_0x20;
/* 0x24 */ u32 field_0x24;
/* 0x28 */ u32 field_0x28;
/* 0x2C */ u32 field_0x2c;
d2DBSplinePath() { Init(0, 0); }
/* 80097878 */ void Init(s32, s32);
/* 80097B68 */ void Spot(f32*, f32);
/* 801828D4 */ virtual ~d2DBSplinePath() {}
};
struct dCamera_event_param {
/* 0x00 */ char name[16];
/* 0x10 */ int field_0x10;
@@ -190,13 +169,13 @@ public:
struct BG {
class {
public:
/* 0x00 */ u8 field_0x0;
/* 0x00 */ bool field_0x0;
/* 0x04 */ dBgS_CamGndChk field_0x4;
/* 0x58 */ f32 field_0x58;
} /* 0x000 */ field_0x0;
class {
public:
/* 0x00 */ u8 field_0x0;
/* 0x00 */ bool field_0x0;
/* 0x04 */ dBgS_CamGndChk field_0x4;
/* 0x58 */ f32 field_0x58;
} /* 0x05C */ field_0x5c;
@@ -209,7 +188,7 @@ public:
/* 0x10 */ cXyz field_0x10;
/* 0x1C */ cSAngle field_0x1c;
/* 0x1E */ cSAngle field_0x1e;
/* 0x20 */ int field_0x20;
/* 0x20 */ fopAc_ac_c* field_0x20;
/* 0x24 */ cSGlobe field_0x24;
/* 0x2C */ cSGlobe field_0x2c;
/* 0x34 */ int field_0x34;
@@ -255,42 +234,42 @@ public:
/* 8008933C */ bool getEvStringData(char*, char*, char*);
/* 800894C4 */ fopAc_ac_c* getEvActor(char*);
/* 800895F4 */ fopAc_ac_c* getEvActor(char*, char*);
/* 80089730 */ int pauseEvCamera();
/* 800897E8 */ int fixedFrameEvCamera();
/* 8008A510 */ int stokerEvCamera();
/* 8008A974 */ int rollingEvCamera();
/* 8008B9B0 */ int fixedPositionEvCamera();
/* 8008BE2C */ int uniformTransEvCamera();
/* 8008BE50 */ int uniformBrakeEvCamera();
/* 8008BE74 */ int uniformAcceleEvCamera();
/* 80089730 */ bool pauseEvCamera();
/* 800897E8 */ bool fixedFrameEvCamera();
/* 8008A510 */ bool stokerEvCamera();
/* 8008A974 */ bool rollingEvCamera();
/* 8008B9B0 */ bool fixedPositionEvCamera();
/* 8008BE2C */ bool uniformTransEvCamera();
/* 8008BE50 */ bool uniformBrakeEvCamera();
/* 8008BE74 */ bool uniformAcceleEvCamera();
/* 8008BE98 */ void transEvCamera(int);
/* 8008E938 */ int watchActorEvCamera();
/* 8008FAE8 */ int restorePosEvCamera();
/* 80090174 */ int talktoEvCamera();
/* 8008E938 */ bool watchActorEvCamera();
/* 8008FAE8 */ bool restorePosEvCamera();
/* 80090174 */ bool talktoEvCamera();
/* 80090230 */ bool maptoolIdEvCamera();
/* 80090478 */ int styleEvCamera();
/* 80090514 */ int gameOverEvCamera();
/* 80091468 */ int tactEvCamera();
/* 800923B8 */ int turnToActorEvCamera();
/* 800923C0 */ int stbWaitEvCamera();
/* 800924D0 */ int saveEvCamera();
/* 8009258C */ int loadEvCamera();
/* 800929AC */ int useItem0EvCamera();
/* 800937AC */ int useItem1EvCamera();
/* 80094240 */ int getItemEvCamera();
/* 80094A70 */ int possessedEvCamera();
/* 80095010 */ int fixedFramesEvCamera();
/* 8009544C */ int bSplineEvCamera();
/* 800956E4 */ int twoActor0EvCamera();
/* 80095E7C */ int peepHoleEvCamera();
/* 80095FD0 */ int digHoleEvCamera();
/* 800965AC */ int hintTalkEvCamera();
/* 80096EDC */ int bspTransEvCamera();
/* 80097694 */ int portalWarpEvCamera();
/* 80090478 */ bool styleEvCamera();
/* 80090514 */ bool gameOverEvCamera();
/* 80091468 */ bool tactEvCamera();
/* 800923B8 */ bool turnToActorEvCamera();
/* 800923C0 */ bool stbWaitEvCamera();
/* 800924D0 */ bool saveEvCamera();
/* 8009258C */ bool loadEvCamera();
/* 800929AC */ bool useItem0EvCamera();
/* 800937AC */ bool useItem1EvCamera();
/* 80094240 */ bool getItemEvCamera();
/* 80094A70 */ bool possessedEvCamera();
/* 80095010 */ bool fixedFramesEvCamera();
/* 8009544C */ bool bSplineEvCamera();
/* 800956E4 */ bool twoActor0EvCamera();
/* 80095E7C */ bool peepHoleEvCamera();
/* 80095FD0 */ bool digHoleEvCamera();
/* 800965AC */ bool hintTalkEvCamera();
/* 80096EDC */ bool bspTransEvCamera();
/* 80097694 */ bool portalWarpEvCamera();
/* 8009771C */ cXyz attentionPos(fopAc_ac_c*);
/* 80097738 */ cSAngle directionOf(fopAc_ac_c*);
/* 8009775C */ cXyz positionOf(fopAc_ac_c*);
/* 8009778C */ void eyePos(fopAc_ac_c*);
/* 8009778C */ cXyz eyePos(fopAc_ac_c*);
/* 8016008C */ dCamera_c(camera_class*);
/* 80160304 */ ~dCamera_c();
/* 80160470 */ void initialize(camera_class*, fopAc_ac_c*, u32, u32);
@@ -347,7 +326,7 @@ public:
/* 80165EF4 */ int defaultTriming();
/* 80165FB4 */ void setView(f32, f32, f32, f32);
/* 8016608C */ cSAngle forwardCheckAngle();
/* 80166764 */ void bumpCheck(u32);
/* 80166764 */ bool bumpCheck(u32);
/* 80167BF8 */ bool lineBGCheckBoth(cXyz*, cXyz*, dBgS_LinChk*, u32);
/* 80167CD8 */ BOOL jutOutCheck(cXyz*, f32);
/* 80167E3C */ void tooNearEscape(cXyz*);
@@ -355,13 +334,11 @@ public:
/* 80167FEC */ void checkGroundInfo();
/* 80168744 */ bool chaseCamera(s32);
/* 8016C384 */ bool lockonCamera(s32);
/* 8016E448 */ void getMsgCmdSpeaker();
/* 8016E4A4 */ void getMsgCmdCut(s32);
/* 8016E448 */ fopAc_ac_c* getMsgCmdSpeaker();
/* 8016E4A4 */ s32 getMsgCmdCut(s32);
/* 8016E4F4 */ bool talktoCamera(s32);
/* 80174E18 */ void talkBasePos(fopAc_ac_c*);
/* 80174E34 */ void talkEyePos(fopAc_ac_c*);
/* 80174EA4 */ bool CalcSubjectAngle(s16*, s16*);
/* 80174EAC */ void SaveZoomRatio();
/* 80174EAC */ bool SaveZoomRatio();
/* 80174ED4 */ bool subjectCamera(s32);
/* 80176074 */ bool magneCamera(s32);
/* 801767F8 */ bool colosseumCamera(s32);
@@ -378,7 +355,7 @@ public:
/* 8017E730 */ bool fixedPositionCamera(s32);
/* 8017F25C */ bool oneSideCamera(s32);
/* 8017F828 */ bool eventCamera(s32);
/* 8018050C */ int currentEvCamera();
/* 8018050C */ bool currentEvCamera();
/* 801806D4 */ bool letCamera(s32);
/* 801806DC */ void setEventRecoveryTrans(s16);
/* 80180738 */ void runEventRecoveryTrans();
@@ -407,8 +384,11 @@ public:
/* 80181E20 */ cXyz Up();
/* 80181E64 */ cXyz Eye();
/* 80181E98 */ cXyz Center();
/* 8018295C */ void footHeightOf(fopAc_ac_c*);
/* 8018295C */ f32 footHeightOf(fopAc_ac_c* i_actor) { return i_actor->current.pos.y; }
/* 801829AC */ cSAngle Bank() { return mBank + mShake.field_0x40; }
/* 80174E18 */ cXyz talkBasePos(fopAc_ac_c* i_actor) { return i_actor->current.pos; }
/* 80174E34 */ cXyz talkEyePos(fopAc_ac_c* i_actor) { return i_actor->eyePos; }
void debugDraw();
@@ -416,13 +396,13 @@ public:
f32 TrimHeight() { return mTrimHeight; }
int Type() { return mCurType; }
int Mode() { return mCurMode; }
f32 Fovy() { return mFovY + mShake.field_0x3c; }
f32 Fovy() { return mFovy + mShake.field_0x3c; }
bool isModeOK() { return field_0x158.field_0x0; }
bool push_any_key() { return field_0x224; }
bool chkFlag(u32 i_flag) { return mEventFlags & i_flag; }
void setFlag(u32 i_flag) { mEventFlags |= i_flag; }
void clrFlag(u32 i_flag) { mEventFlags &= ~i_flag; }
bool chkFlag(u32 i_flag) { return (mEventFlags & i_flag) != 0; }
u32 setFlag(u32 i_flag) { return mEventFlags |= i_flag; }
u32 clrFlag(u32 i_flag) { return mEventFlags &= ~i_flag; }
bool CheckFlag(u32 i_flag) { return mEventFlags & i_flag; }
@@ -450,7 +430,7 @@ public:
s16 U2() {
if (chkFlag(0x10)) {
return field_0x5c.field_0x0.U();
return field_0x5c.mDirection.U();
} else {
return field_0x8c;
}
@@ -469,27 +449,27 @@ public:
/* 0x021 */ u8 field_0x21;
/* 0x022 */ u8 field_0x22[2];
/* 0x024 */ int field_0x24;
/* 0x028 */ cSGlobe field_0x28;
/* 0x028 */ cSGlobe mDirection;
/* 0x030 */ cXyz mCenter;
/* 0x03C */ cXyz mEye;
/* 0x048 */ cXyz mUp;
/* 0x054 */ cSAngle mBank;
/* 0x058 */ f32 mFovY;
/* 0x058 */ f32 mFovy;
class {
public:
/* 0x00 */ cSGlobe field_0x0;
/* 0x08 */ cXyz field_0x8;
/* 0x14 */ cXyz field_0x14;
/* 0x20 */ cSAngle field_0x20;
/* 0x00 */ cSGlobe mDirection;
/* 0x08 */ cXyz mCenter;
/* 0x14 */ cXyz mEye;
/* 0x20 */ cSAngle mBank;
/* 0x24 */ f32 mFovy;
}
/* 0x05C */ field_0x5c;
/* 0x080 */ f32 field_0x80;
/* 0x084 */ f32 field_0x84;
/* 0x088 */ u32 field_0x88;
/* 0x08C */ cSAngle field_0x8c;
/* 0x090 */ cXyz field_0x90;
/* 0x09C */ cXyz field_0x9c;
/* 0x0A8 */ int field_0xa8;
/* 0x0A8 */ u32 field_0xa8;
/* 0x0AC */ u32 field_0xac;
/* 0x0B0 */ dCamInfo_c field_0xb0;
/* 0x0D0 */ dCamInfo_c field_0xd0[2];
@@ -514,19 +494,19 @@ public:
/* 0x4 */ cSAngle field_0x4;
}
/* 0x158 */ field_0x158;
/* 0x160 */ int field_0x160;
/* 0x160 */ u32 field_0x160;
/* 0x164 */ int field_0x164;
/* 0x168 */ u8 field_0x168;
/* 0x169 */ int field_0x16c;
/* 0x170 */ int field_0x170;
/* 0x174 */ u32 mCurCamTypeTimer;
/* 0x174 */ u32 mCurCamStyleTimer;
/* 0x178 */ u32 mCameraID;
/* 0x17C */ u32 mPadID;
/* 0x180 */ fopAc_ac_c* mpPlayerActor;
/* 0x184 */ fopAc_ac_c* mpLockonTarget;
/* 0x188 */ u32 field_0x188;
/* 0x18C */ u32 field_0x18c;
/* 0x190 */ int field_0x190;
/* 0x188 */ fopAc_ac_c* field_0x188;
/* 0x18C */ fopAc_ac_c* field_0x18c;
/* 0x190 */ int mIsWolf;
/* 0x194 */ bool field_0x194;
/* 0x198 */ fpc_ProcID mLockOnActorID;
/* 0x19C */ fopAc_ac_c* mpLockOnActor;
@@ -565,7 +545,7 @@ public:
/* 0x221 */ bool mTrigB;
/* 0x222 */ u8 field_0x222;
/* 0x223 */ u8 field_0x223;
/* 0x224 */ u8 field_0x224;
/* 0x224 */ bool field_0x224;
/* 0x228 */ dCamForcusLine mFocusLine;
/* 0x298 */ dCamera_FakeAngle_system mFakeAngleSys;
/* 0x2A0 */ dCamera_monitoring_things mMonitor;
@@ -573,10 +553,206 @@ public:
/* 0x2C4 */ int field_0x2c4;
/* 0x2C8 */ f32 field_0x2c8;
/* 0x2CC */ BG mBG;
/* 0x3E8 */ u8 field_0x3e8;
/* 0x3EC */ int field_0x3ec;
/* 0x3F0 */ int field_0x3f0;
/* 0x3F4 */ u8 field_0x3f4[0x4E8 - 0x3F4];
/* 0x3E8 */ union {
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ int field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ f32 field_0xc;
/* 0x10 */ int field_0x10;
/* 0x14 */ int field_0x14;
/* 0x18 */ s16 field_0x18;
/* 0x1A */ s16 field_0x1a;
/* 0x1C */ s16 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ f32 field_0x38;
/* 0x3C */ f32 field_0x3c;
/* 0x40 */ f32 field_0x40;
/* 0x44 */ int field_0x44;
/* 0x48 */ f32 field_0x48;
/* 0x4C */ f32 field_0x4c;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ cXyz field_0x58;
/* 0x64 */ cXyz field_0x64;
/* 0x70 */ bool field_0x70;
/* 0x71 */ bool field_0x71;
/* 0x72 */ bool field_0x72;
/* 0x73 */ bool field_0x73;
/* 0x74 */ f32 field_0x74;
/* 0x78 */ f32 field_0x78;
/* 0x7C */ f32 field_0x7c;
/* 0x80 */ f32 field_0x80;
/* 0x84 */ f32 field_0x84;
/* 0x88 */ f32 field_0x88;
/* 0x8C */ int field_0x8c;
/* 0x90 */ bool field_0x90;
/* 0x91 */ bool field_0x91;
/* 0x92 */ bool field_0x92;
/* 0x93 */ bool field_0x93;
/* 0x94 */ bool field_0x94;
/* 0x95 */ bool field_0x95;
/* 0x96 */ cSAngle field_0x96;
/* 0x98 */ cSAngle field_0x98;
/* 0x9A */ cSAngle field_0x9a;
/* 0x9C */ int field_0x9c;
/* 0xA0 */ int field_0xa0;
/* 0xA4 */ f32 field_0xa4;
/* 0xA8 */ int field_0xa8;
/* 0xAC */ f32 field_0xac;
} chase;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ u8 field_0x4[8];
/* 0x0C */ int field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ int field_0x14;
/* 0x18 */ bool field_0x18;
/* 0x1C */ cXyz field_0x1c;
/* 0x28 */ bool field_0x28;
/* 0x29 */ bool field_0x29;
/* 0x2A */ bool field_0x2a;
/* 0x2C */ int field_0x2c;
/* 0x30 */ int field_0x30;
/* 0x34 */ cSGlobe field_0x34;
/* 0x3C */ fpc_ProcID field_0x3c;
/* 0x40 */ bool field_0x40;
/* 0x42 */ cSAngle field_0x42;
/* 0x44 */ int field_0x44;
/* 0x48 */ f32 field_0x48;
/* 0x4C */ f32 field_0x4c;
/* 0x50 */ cSAngle field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ f32 field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ f32 field_0x60;
} lockon;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ cXyz field_0x4;
/* 0x10 */ cXyz field_0x10;
/* 0x1C */ cXyz field_0x1c;
/* 0x28 */ cSGlobe field_0x28;
/* 0x30 */ cSGlobe field_0x30;
/* 0x38 */ int field_0x38;
/* 0x3C */ int field_0x3c;
/* 0x40 */ int field_0x40;
/* 0x44 */ int field_0x44;
/* 0x48 */ int field_0x48;
/* 0x4C */ f32 field_0x4c;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ f32 field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ f32 field_0x60;
/* 0x64 */ f32 field_0x64;
/* 0x68 */ f32 field_0x68;
/* 0x6C */ f32 field_0x6c;
/* 0x70 */ fopAc_ac_c* field_0x70;
/* 0x74 */ fopAc_ac_c* field_0x74;
/* 0x78 */ fopAc_ac_c* field_0x78;
/* 0x7C */ f32 field_0x7c;
/* 0x80 */ f32 field_0x80;
/* 0x84 */ s16 field_0x84;
/* 0x86 */ s16 field_0x86;
/* 0x88 */ bool field_0x88;
/* 0x89 */ bool field_0x89;
/* 0x8C */ u32 field_0x8c;
/* 0x90 */ cXyz field_0x90;
/* 0x9C */ cXyz field_0x9c;
/* 0xA8 */ cSGlobe field_0xa8;
/* 0xB0 */ f32 field_0xb0;
/* 0xB4 */ cXyz field_0xb4;
/* 0xC0 */ cXyz field_0xc0;
/* 0xCC */ cXyz field_0xcc;
/* 0xD8 */ cXyz field_0xd8;
} talk;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ cXyz field_0x4;
/* 0x10 */ int field_0x10;
/* 0x14 */ int field_0x14;
/* 0x18 */ int field_0x18;
/* 0x1C */ bool field_0x1c;
/* 0x1D */ bool field_0x1d;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ cSAngle field_0x28;
/* 0x2A */ cSAngle field_0x2a;
/* 0x2C */ cSAngle field_0x2c;
/* 0x2E */ cSAngle field_0x2e;
/* 0x30 */ cXyz field_0x30;
/* 0x3C */ cXyz field_0x3c;
/* 0x48 */ cSGlobe field_0x48;
} subject;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ cXyz field_0x4;
/* 0x10 */ cXyz field_0x10;
/* 0x1C */ cSGlobe field_0x1c;
} magne;
struct {
/* 0x00 */ u8 field_0x0[8];
/* 0x08 */ cXyz field_0x8;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ int field_0x18;
} colosseum;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ int field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ f32 field_0xc;
/* 0x10 */ int field_0x10;
/* 0x14 */ int field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ cSAngle field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ int field_0x38;
/* 0x3C */ f32 field_0x3c;
/* 0x40 */ f32 field_0x40;
/* 0x44 */ f32 field_0x44;
/* 0x48 */ cXyz field_0x48;
/* 0x54 */ cXyz field_0x54;
/* 0x60 */ cSAngle field_0x60;
/* 0x64 */ int field_0x64;
/* 0x68 */ bool field_0x68;
/* 0x69 */ bool field_0x69;
/* 0x6A */ bool field_0x6a;
/* 0x6B */ bool field_0x6b;
/* 0x6C */ bool field_0x6c;
/* 0x70 */ f32 field_0x70;
/* 0x74 */ f32 field_0x74;
/* 0x78 */ f32 field_0x78;
/* 0x7C */ f32 field_0x7c;
/* 0x80 */ f32 field_0x80;
/* 0x84 */ f32 field_0x84;
} tower;
struct {
/* 0x00 */ int field_0x0;
/* 0x04 */ u8 field_0x4[4];
/* 0x08 */ cXyz field_0x8;
/* 0x14 */ cXyz field_0x14;
/* 0x20 */ bool field_0x20;
} hookshot;
struct {
/* 0x00 */ bool field_0x0;
/* 0x04 */ int field_0x4;
/* 0x08 */ int field_0x8;
} event;
struct {
u8 field_0x0[0x100];
} bytes;
} mWork;
/* 0x4E8 */ dCamera_event_data mEventData;
/* 0x60C */ u32 mEventFlags;
/* 0x610 */ u8 field_0x610;
@@ -652,7 +828,7 @@ public:
/* 0x92C */ f32 field_0x92c;
/* 0x930 */ u8 field_0x930[0x930 - 0x92c];
/* 0x934 */ f32 field_0x934;
/* 0x938 */ u8 field_0x938[0x93C - 0x938];
/* 0x938 */ int field_0x938;
/* 0x93C */ int field_0x93c;
/* 0x940 */ int field_0x940;
/* 0x944 */ u8 field_0x944;
@@ -662,7 +838,8 @@ public:
/* 0x954 */ u8 field_0x954[0x958 - 0x954];
/* 0x958 */ int field_0x958;
/* 0x95C */ cXyz field_0x95c;
/* 0x968 */ u8 field_0x968[0x970 - 0x968];
/* 0x968 */ f32 field_0x968;
/* 0x96C */ f32 field_0x96c;
/* 0x970 */ dCamSetup_c mCamSetup;
/* 0xAEC */ dCamParam_c mCamParam;
/* 0xB0C */ u8 field_0xb0c;
+1
View File
@@ -47,6 +47,7 @@ public:
void SetMass(cCcD_Obj* i_obj, u8 i_priority) { mMass_Mng.Set(i_obj, i_priority); }
void SetMassCam(cM3dGCps& i_cps) { mMass_Mng.SetCam(i_cps); }
u32 GetMassResultCam() { return mMass_Mng.GetResultCam(); }
void GetMassCamTopPos(Vec* o_pos) { mMass_Mng.GetCamTopPos(o_pos); }
void PrepareMass() { mMass_Mng.Prepare(); }
u32 ChkMass(cXyz* param_0, fopAc_ac_c** param_1, dCcMassS_HitInf* param_2) {
+31 -30
View File
@@ -85,6 +85,13 @@ class daAlink_c;
class dMsgObject_c;
class J2DOrthoGraph;
class dComIfG_MesgCamInfo_c {
public:
/* 0x00 */ int mID;
/* 0x04 */ int mBasicID;
/* 0x08 */ fopAc_ac_c* mActor[10];
};
class dComIfG_play_c {
public:
dComIfG_play_c() { this->ct(); }
@@ -361,10 +368,10 @@ public:
s32 getItemRupeeCount() { return mItemRupeeCount; }
s16 getItemKeyNumCount() { return mItemKeyNumCount; }
void clearNowAnimeID() { mNowAnimeID = -1; }
void clearMesgCamInfoID() { mMesgCamInfo = -1; }
void clearMesgCamInfoID() { mMesgCamInfo.mID = -1; }
void clearBaseAnimeID() { mBaseAnimeID = 0; }
void clearFaceAnimeID() { mFaceAnimeID = 0; }
void clearMesgCamInfoBasicID() { mMesgCamInfoBasicID = 0; }
void clearMesgCamInfoBasicID() { mMesgCamInfo.mBasicID = 0; }
void clearItemMaxLifeCount() { mItemMaxLifeCount = 0; }
void clearItemMaxOilCount() { mItemMaxOilCount = 0; }
void clearItemOilCount() { mItemOilCount = 0; }
@@ -463,23 +470,23 @@ public:
void setMsgCommonArchive(JKRArchive* arc) { mMsgCommonArchive = arc; }
void setMsgArchive(int i, JKRArchive* arc) { mMsgArchive[i] = arc; }
void setMsgObjectClass(dMsgObject_c* obj) { mMsgObjectClass = obj; }
void setMesgCamInfoBasicID(int id) { mMesgCamInfoBasicID = id; }
void setMesgCamInfoBasicID(int id) { mMesgCamInfo.mBasicID = id; }
void setMesgCamInfoActor(fopAc_ac_c* param_1, fopAc_ac_c* param_2, fopAc_ac_c* param_3,
fopAc_ac_c* param_4, fopAc_ac_c* param_5, fopAc_ac_c* param_6,
fopAc_ac_c* param_7, fopAc_ac_c* param_8, fopAc_ac_c* param_9,
fopAc_ac_c* param_10) {
mMesgCamInfoActor1 = param_1;
mMesgCamInfoActor2 = param_2;
mMesgCamInfoActor3 = param_3;
mMesgCamInfoActor4 = param_4;
mMesgCamInfoActor5 = param_5;
mMesgCamInfoActor6 = param_6;
mMesgCamInfoActor7 = param_7;
mMesgCamInfoActor8 = param_8;
mMesgCamInfoActor9 = param_9;
mMesgCamInfoActor10 = param_10;
mMesgCamInfo.mActor[0] = param_1;
mMesgCamInfo.mActor[1] = param_2;
mMesgCamInfo.mActor[2] = param_3;
mMesgCamInfo.mActor[3] = param_4;
mMesgCamInfo.mActor[4] = param_5;
mMesgCamInfo.mActor[5] = param_6;
mMesgCamInfo.mActor[6] = param_7;
mMesgCamInfo.mActor[7] = param_8;
mMesgCamInfo.mActor[8] = param_9;
mMesgCamInfo.mActor[9] = param_10;
}
int getMesgCamInfo() { return mMesgCamInfoBasicID; }
dComIfG_MesgCamInfo_c* getMesgCamInfo() { return &mMesgCamInfo; }
void setFontArchive(JKRArchive* arc) { mFontArchive = arc; }
void setRubyArchive(JKRArchive* arc) { mRubyArchive = arc; }
void setMain2DArchive(JKRArchive* arc) { mMain2DArchive = arc; }
@@ -494,7 +501,7 @@ public:
}
void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] |= flag; }
void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] &= ~flag; }
u32 checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[param_0][i]; }
u32 checkPlayerStatus(int param_0, int i, u32 flag) { return mPlayerStatus[param_0][i] & flag; }
int getPlayerCameraID(int i) { return mPlayerCameraID[i * 8]; }
int getCameraPlayer1ID(int i) { return mCameraInfo[i].field_0x5; }
@@ -521,6 +528,7 @@ public:
}
f32 getCameraZoomForcus(int i_no) { return mCameraInfo[i_no].mCameraZoomForcus; }
void setCameraZoomForcus(int i_no, f32 i_focus) { mCameraInfo[i_no].mCameraZoomForcus = i_focus; }
f32 getCameraZoomScale(int i_no) { return mCameraInfo[i_no].mCameraZoomScale; }
void setCameraZoomScale(int i_no, f32 i_scale) { mCameraInfo[i_no].mCameraZoomScale = i_scale; }
@@ -539,7 +547,7 @@ public:
*o_bank = mCameraInfo[i].mCameraBank;
}
void setMesgCamInfoID(int param_0) { mMesgCamInfo = param_0; }
void setMesgCamInfoID(int param_0) { mMesgCamInfo.mID = param_0; }
void setStatus(u16 status) { mStatus = status; }
s32 checkStatus(u16 flags) { return flags & mStatus; }
@@ -778,18 +786,7 @@ public:
/* 0x04FAB */ u8 field_0x4fab; // related to setWarpItemData
/* 0x04FAC */ u8 field_0x4fac; // related to setWarpItemData
/* 0x04FAD */ u8 field_0x4fad[3];
/* 0x04FB0 */ int mMesgCamInfo;
/* 0x04FB4 */ int mMesgCamInfoBasicID;
/* 0x04FB8 */ fopAc_ac_c* mMesgCamInfoActor1;
/* 0x04FBC */ fopAc_ac_c* mMesgCamInfoActor2;
/* 0x04FC0 */ fopAc_ac_c* mMesgCamInfoActor3;
/* 0x04FC4 */ fopAc_ac_c* mMesgCamInfoActor4;
/* 0x04FC8 */ fopAc_ac_c* mMesgCamInfoActor5;
/* 0x04FCC */ fopAc_ac_c* mMesgCamInfoActor6;
/* 0x04FD0 */ fopAc_ac_c* mMesgCamInfoActor7;
/* 0x04FD4 */ fopAc_ac_c* mMesgCamInfoActor8;
/* 0x04FD8 */ fopAc_ac_c* mMesgCamInfoActor9;
/* 0x04FDC */ fopAc_ac_c* mMesgCamInfoActor10;
/* 0x04FB0 */ dComIfG_MesgCamInfo_c mMesgCamInfo;
/* 0x04FE0 */ u32 mPlayerStatus[1][4];
/* 0x04FF0 */ u8 field_0x4ff0[0x8];
/* 0x04FF8 */ __d_timer_info_c mTimerInfo;
@@ -2792,6 +2789,10 @@ inline f32 dComIfGp_getCameraZoomScale(int i_no) {
return g_dComIfG_gameInfo.play.getCameraZoomScale(i_no);
}
inline void dComIfGp_setCameraZoomForcus(int i_no, f32 i_focus) {
g_dComIfG_gameInfo.play.setCameraZoomForcus(i_no, i_focus);
}
inline f32 dComIfGp_getCameraZoomForcus(int i_no) {
return g_dComIfG_gameInfo.play.getCameraZoomForcus(i_no);
}
@@ -3236,11 +3237,11 @@ inline void dComIfGp_setMesgCameraAttrInfo(int param_1) {
g_dComIfG_gameInfo.play.setMesgCamInfoBasicID(param_1);
}
inline int dComIfGp_getMesgCameraInfo() {
inline dComIfG_MesgCamInfo_c* dComIfGp_getMesgCameraInfo() {
return g_dComIfG_gameInfo.play.getMesgCamInfo();
}
inline s32 dComIfGp_roomControl_getStayNo() {
inline int dComIfGp_roomControl_getStayNo() {
return dStage_roomControl_c::getStayNo();
}
+2 -2
View File
@@ -14,7 +14,7 @@ class STControl;
class dNm_HIO_c {
public:
/* 8024E3E0 */ dNm_HIO_c();
/* 802511A4 */ virtual ~dNm_HIO_c();
/* 802511A4 */ virtual ~dNm_HIO_c() {}
/* 0x04 */ s8 field_0x4;
/* 0x08 */ f32 mMenuScale;
@@ -27,7 +27,7 @@ public:
dDlst_NameIN_c() {}
/* 80251094 */ virtual void draw();
/* 8025115C */ virtual ~dDlst_NameIN_c();
/* 8025115C */ virtual ~dDlst_NameIN_c() {}
/* 0x04 */ J2DScreen* NameInScr;
/* 0x08 */ JUTFont* font;
+10 -8
View File
@@ -6,6 +6,8 @@
#include "d/d_particle_name.h"
#include "d/d_kankyo.h"
void dPa_cleanupGX();
class J3DAnmTexPattern;
class J3DModel;
class J3DModelData;
@@ -114,8 +116,8 @@ public:
dPa_setColorEcallBack(const GXColor& color) { mColor = color; }
/* 800502E4 */ virtual ~dPa_setColorEcallBack() {}
/* 800502B0 */ virtual void draw(JPABaseEmitter*);
/* 800502E0 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
/* 800502B0 */ virtual void draw(JPABaseEmitter*) { GXSetTevColor(GX_TEVREG1, mColor); }
/* 800502E0 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8) {}
/* 0x4 */ GXColor mColor;
};
@@ -126,7 +128,7 @@ public:
/* 8004FF8C */ virtual ~dPa_selectTexEcallBack() {}
/* 8004ADC4 */ virtual void draw(JPABaseEmitter*);
/* 80050010 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
/* 80050010 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8) {}
/* 0x4 */ u8 field_0x4;
};
@@ -184,7 +186,7 @@ public:
/* 80050378 */ virtual ~dPa_modelEcallBack() {}
/* 8004AA34 */ virtual void draw(JPABaseEmitter*);
/* 80050014 */ virtual void drawAfter(JPABaseEmitter*);
/* 80050014 */ virtual void drawAfter(JPABaseEmitter* param_0) { cleanupModel(param_0); }
/* 8004AAA8 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
static void setModel(JPABaseEmitter* param_0, J3DModelData* param_1,
@@ -211,7 +213,7 @@ class dPa_light8EcallBack : public dPa_levelEcallBack {
public:
/* 8005015C */ virtual ~dPa_light8EcallBack() {}
/* 8004A340 */ virtual void draw(JPABaseEmitter*);
/* 800501E0 */ virtual void drawAfter(JPABaseEmitter*);
/* 800501E0 */ virtual void drawAfter(JPABaseEmitter*) { dPa_cleanupGX(); }
/* 8004979C */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
};
@@ -226,7 +228,7 @@ class dPa_gen_d_light8EcallBack : public dPa_levelEcallBack {
public:
/* 800503FC */ virtual ~dPa_gen_d_light8EcallBack() {}
/* 8004A388 */ virtual void draw(JPABaseEmitter*);
/* 80050098 */ virtual void drawAfter(JPABaseEmitter*);
/* 80050098 */ virtual void drawAfter(JPABaseEmitter*) { dPa_cleanupGX(); }
/* 800497CC */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
};
@@ -241,7 +243,7 @@ class dPa_gen_b_light8EcallBack : public dPa_levelEcallBack {
public:
/* 800500B8 */ virtual ~dPa_gen_b_light8EcallBack() {}
/* 8004A364 */ virtual void draw(JPABaseEmitter*);
/* 8005013C */ virtual void drawAfter(JPABaseEmitter*);
/* 8005013C */ virtual void drawAfter(JPABaseEmitter*) { dPa_cleanupGX(); }
/* 800497B0 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
};
@@ -452,7 +454,7 @@ public:
}
static dPa_selectTexEcallBack mTsubo[8];
static u8 mLifeBall[24];
static dPa_setColorEcallBack mLifeBall[3];
static Mtx mWindViewMatrix;
static JPAEmitterManager* mEmitterMng;
static dPa_wbPcallBack_c mWaterBubblePcallBack;
+1 -30
View File
@@ -1,7 +1,7 @@
#ifndef D_S_D_S_PLAY_H
#define D_S_D_S_PLAY_H
#include "SSystem/SComponent/c_xyz.h"
#include "d/d_s_play_env.h"
#include "f_op/f_op_scene.h"
#include "m_Do/m_Do_hostIO.h"
@@ -32,32 +32,6 @@ public:
void genMessage(JORMContext*);
};
class dScnPly_env_otherHIO_c {
public:
/* 80259440 */ dScnPly_env_otherHIO_c();
/* 8025AC0C */ virtual ~dScnPly_env_otherHIO_c() {}
/* 0x4 */ f32 mShadowDensity;
/* 0x8 */ u8 mLODBias;
/* 0x9 */ u8 field_0x9;
/* 0xA */ u8 mDispTransCylinder;
};
class dScnPly_env_debugHIO_c {
public:
/* 80259468 */ dScnPly_env_debugHIO_c();
/* 8025ABC4 */ virtual ~dScnPly_env_debugHIO_c() {}
private:
/* 0x04 */ u8 field_0x4;
/* 0x08 */ cXyz mBoxCullMinSize;
/* 0x14 */ cXyz mBoxCullMaxSize;
/* 0x20 */ cXyz mSphereCullCenter;
/* 0x2C */ f32 mSphereCullRadius;
};
class dScnPly_env_HIO_c {
public:
/* 8025AD04 */ virtual ~dScnPly_env_HIO_c() {}
@@ -67,9 +41,6 @@ public:
/* 0x14 */ dScnPly_env_debugHIO_c mDebug;
};
extern s8 pauseTimer__9dScnPly_c;
extern s8 nextPauseTimer__9dScnPly_c; // sPauseTimer
class dScnPly_c : public scene_class {
public:
/* 80259400 */ s8 calcPauseTimer();
+27
View File
@@ -0,0 +1,27 @@
#include "SSystem/SComponent/c_xyz.h"
class dScnPly_env_otherHIO_c {
public:
/* 80259440 */ dScnPly_env_otherHIO_c();
/* 8025AC0C */ virtual ~dScnPly_env_otherHIO_c() {}
/* 0x4 */ f32 mShadowDensity;
/* 0x8 */ u8 mLODBias;
/* 0x9 */ u8 field_0x9;
/* 0xA */ u8 mDispTransCylinder;
};
class dScnPly_env_debugHIO_c {
public:
/* 80259468 */ dScnPly_env_debugHIO_c();
/* 8025ABC4 */ virtual ~dScnPly_env_debugHIO_c() {}
private:
/* 0x04 */ u8 field_0x4;
/* 0x08 */ cXyz mBoxCullMinSize;
/* 0x14 */ cXyz mBoxCullMaxSize;
/* 0x20 */ cXyz mSphereCullCenter;
/* 0x2C */ f32 mSphereCullRadius;
};
+8 -7
View File
@@ -16,12 +16,6 @@ struct dPathCurve {
class d2DBSplinePath {
public:
/* 80097878 */ void Init(s32, s32);
/* 80097904 */ bool Step();
/* 80097B20 */ f32 Calc(f32*);
/* 80097A6C */ cXyz Calc(cXyz*);
/* 80097B68 */ f32 Spot(f32*, f32);
/* 0x00 */ s32 field_0x00;
/* 0x04 */ s32 field_0x04;
/* 0x08 */ s32 field_0x08;
@@ -30,7 +24,14 @@ public:
/* 0x14 */ f32 mCurveWeight[3];
/* 0x20 */ int mCurveKey[3];
/* 0x2C */ int field_0x2c;
/* 0x30 */ void* field_0x30;
d2DBSplinePath() { Init(0, 0); }
/* 80097878 */ void Init(s32, s32);
/* 80097904 */ bool Step();
/* 80097B20 */ f32 Calc(f32*);
/* 80097A6C */ cXyz Calc(cXyz*);
/* 80097B68 */ f32 Spot(f32*, f32);
/* 801828D4 */ virtual ~d2DBSplinePath() {}
};
#endif /* D_D_SPLINE_PATH_H */
+1 -1
View File
@@ -561,7 +561,7 @@ public:
void setTreasure(stage_tresure_class*);
s16 getWorldRollAngleX() { return mWorldRollAngleX; }
s16 getWorldRollAngleX() { return (s16)mWorldRollAngleX; }
s16 getWorldRollDirAngleY() { return mWorldRollDirAngleY; }
public:
+1
View File
@@ -8,6 +8,7 @@ class camera_class;
struct camera_process_profile_definition {
/* 0x00 */ view_process_profile_definition base;
/* 0x3C */ leafdraw_method_class* sub_method; // Subclass methods
/* 0x40 */ u32 unk_0x40;
};
static s32 fopCam_Draw(camera_class* i_this);