mirror of https://github.com/zeldaret/tp.git
d_camera work (#2226)
This commit is contained in:
parent
606178dc88
commit
f5e80cf9fd
|
|
@ -63,6 +63,9 @@ struct cAngle {
|
|||
/* Converts Radian value into Degree value */
|
||||
static f32 r2d(f32 r) { return Radian_to_Degree(r); }
|
||||
|
||||
/* Converts Degree value into Radian value */
|
||||
static f32 d2r(f32 d) { return Degree_to_Radian(d); }
|
||||
|
||||
/* Converts Degree value to s16 angle */
|
||||
static s16 d2s(f32 d) { return Degree_to_SAngle(d); }
|
||||
|
||||
|
|
@ -111,16 +114,23 @@ public:
|
|||
void Val(const cXyz&);
|
||||
cXyz Xyz(void) const;
|
||||
void Globe(class cSGlobe*) const;
|
||||
|
||||
void R(f32 i_radial) { mRadial = i_radial; }
|
||||
void U(cSAngle const& i_angle) { mAngle2 = i_angle.Val(); }
|
||||
void V(cSAngle const& i_angle) { mAngle1 = i_angle.Val(); }
|
||||
};
|
||||
|
||||
class cSGlobe {
|
||||
public:
|
||||
float mRadius;
|
||||
cSAngle mAzimuth; // original: V
|
||||
cSAngle mInclination; // original: U
|
||||
cSAngle mInclination; // original: V
|
||||
cSAngle mAzimuth; // original: U
|
||||
|
||||
cSGlobe() {}
|
||||
|
||||
void R(f32 i_radius) { mRadius = i_radius; }
|
||||
void U(cSAngle const& i_azimuth) { mAzimuth = i_azimuth.Val(); }
|
||||
|
||||
cSGlobe(const cSGlobe&);
|
||||
cSGlobe(float, short, short);
|
||||
cSGlobe(float, const cSAngle&, const cSAngle&);
|
||||
|
|
@ -132,8 +142,8 @@ public:
|
|||
void Val(float, const cSAngle&, const cSAngle&);
|
||||
void Val(const cXyz&);
|
||||
float R(void) const { return mRadius; }
|
||||
const cSAngle& V(void) const { return mAzimuth; }
|
||||
const cSAngle& U(void) const { return mInclination; }
|
||||
const cSAngle& V(void) const { return mInclination; }
|
||||
const cSAngle& U(void) const { return mAzimuth; }
|
||||
cXyz Xyz(void) const;
|
||||
void Polar(cSPolar*) const;
|
||||
cXyz Norm(void) const;
|
||||
|
|
|
|||
|
|
@ -9,13 +9,20 @@ class cBgS_LinChk : public cBgS_Chk, public cBgS_PolyInfo {
|
|||
public:
|
||||
/* 0x024 */ cM3dGLin mLin;
|
||||
/* 0x040 */ cXyz field_0x40;
|
||||
/* 0x04C */ u32 field_0x4c;
|
||||
/* 0x04C */ u32 mStts;
|
||||
/* 0x050 */ bool mPreWallChk;
|
||||
/* 0x051 */ bool mPreGroundChk;
|
||||
/* 0x052 */ bool mPreRoofChk;
|
||||
/* 0x053 */ bool mFrontFlag;
|
||||
/* 0x054 */ bool mBackFlag;
|
||||
|
||||
enum Status {
|
||||
STTS_HIT = 0x10,
|
||||
STTS_ROOF_OFF = 0x20000000,
|
||||
STTS_WALL_OFF = 0x40000000,
|
||||
STTS_GROUND_OFF = 0x80000000,
|
||||
};
|
||||
|
||||
public:
|
||||
cBgS_LinChk();
|
||||
void ct();
|
||||
|
|
@ -25,9 +32,9 @@ public:
|
|||
|
||||
virtual ~cBgS_LinChk();
|
||||
|
||||
void ClrHit() { field_0x4c &= ~16; }
|
||||
void SetHit() { field_0x4c |= 16; }
|
||||
u32 ChkHit() const { return field_0x4c & 16; }
|
||||
void ClrHit() { mStts &= ~STTS_HIT; }
|
||||
void SetHit() { mStts |= STTS_HIT; }
|
||||
u32 ChkHit() const { return mStts & STTS_HIT; }
|
||||
void SetCross(const cXyz& pos) { mLin.SetEnd(pos); }
|
||||
cXyz& i_GetCross() { return mLin.GetEnd(); }
|
||||
cXyz* GetCrossP() { return &mLin.GetEndP(); }
|
||||
|
|
@ -40,8 +47,12 @@ public:
|
|||
bool GetPreGroundChk() const { return mPreGroundChk; }
|
||||
bool GetPreRoofChk() const { return mPreRoofChk; }
|
||||
cXyz* GetStartP() { return &mLin.GetStartP(); }
|
||||
void ClrSttsRoofOff() { field_0x4c &= ~0x20000000; }
|
||||
void ClrSttsWallOff() { field_0x4c &= ~0x40000000; }
|
||||
void ClrSttsRoofOff() { mStts &= ~STTS_ROOF_OFF; }
|
||||
void SetSttsRoofOff() { mStts |= STTS_ROOF_OFF; }
|
||||
void ClrSttsWallOff() { mStts &= ~STTS_WALL_OFF; }
|
||||
void SetSttsWallOff() { mStts |= STTS_WALL_OFF; }
|
||||
void ClrSttsGroundOff() { mStts &= ~STTS_GROUND_OFF; }
|
||||
void SetSttsGroundOff() { mStts |= STTS_GROUND_OFF; }
|
||||
};
|
||||
|
||||
#endif /* C_BG_S_LIN_CHK_H */
|
||||
|
|
|
|||
|
|
@ -3082,7 +3082,7 @@ public:
|
|||
virtual BOOL checkHorseRideNotReady() const;
|
||||
virtual bool checkArrowChargeEnd() const;
|
||||
virtual f32 getSearchBallScale() const;
|
||||
virtual s16 checkFastShotTime();
|
||||
virtual int checkFastShotTime();
|
||||
virtual bool checkNoEquipItem() const;
|
||||
virtual bool checkKandelaarSwing(int) const;
|
||||
virtual s16 getBoardCutTurnOffsetAngleY() const;
|
||||
|
|
@ -3334,6 +3334,12 @@ public:
|
|||
bool checkHorseGetOffMode() const { return mProcID == PROC_HORSE_GETOFF; }
|
||||
bool checkHorseRideOn() const { return mProcID == PROC_HORSE_RIDE; }
|
||||
bool checkGrabUp() const { return mProcID == PROC_GRAB_UP; }
|
||||
bool checkSpinnerRideWait() const {
|
||||
return mProcID == PROC_SPINNER_WAIT && mProcVar2.field_0x300c == 0;
|
||||
}
|
||||
|
||||
fopAc_ac_c* getCopyRodActor() { return mCopyRodAcKeep.getActor(); }
|
||||
fopAc_ac_c* getHookshotRoofWaitActor() { return mCargoCarryAcKeep.getActor(); }
|
||||
|
||||
BOOL checkRideOn() const { return mRideStatus != 0; }
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public:
|
|||
|
||||
enum daMidna_FLG0 {
|
||||
FLG0_UNK_80000000 = 0x80000000,
|
||||
FLG0_UNK_8000000 = 0x8000000,
|
||||
FLG0_PORTAL_OBJ_CALL = 0x8000000,
|
||||
FLG0_NPC_NEAR = 0x100000,
|
||||
FLG0_NPC_FAR = 0x40000,
|
||||
FLG0_UNK_20000 = 0x20000,
|
||||
|
|
@ -112,6 +112,7 @@ public:
|
|||
bool checkDemoTypeNone() const { return mDemoType == 0; }
|
||||
void changeOriginalDemo() { mDemoType = 3; }
|
||||
void changeDemoMode(u32 mode) { mDemoMode = mode; }
|
||||
BOOL checkPortalObjCall() { return checkStateFlg0(FLG0_PORTAL_OBJ_CALL); }
|
||||
BOOL checkNpcNear() { return checkStateFlg0(FLG0_NPC_NEAR); }
|
||||
BOOL checkNpcFar() { return checkStateFlg0(FLG0_NPC_FAR); }
|
||||
BOOL checkNoDraw() const { return checkStateFlg0(FLG0_NO_DRAW); }
|
||||
|
|
@ -137,7 +138,7 @@ public:
|
|||
}
|
||||
|
||||
void offTagWaitPos() {
|
||||
offStateFlg0((daMidna_FLG0)(FLG0_UNK_80000000 | FLG0_UNK_8000000 | FLG0_UNK_400));
|
||||
offStateFlg0((daMidna_FLG0)(FLG0_UNK_80000000 | FLG0_PORTAL_OBJ_CALL | FLG0_UNK_400));
|
||||
}
|
||||
|
||||
void onTagNoHairLead() {
|
||||
|
|
@ -176,7 +177,7 @@ public:
|
|||
|
||||
|
||||
bool checkPortalObjRide() const {
|
||||
return checkStateFlg0(FLG0_UNK_8000000) && checkStateFlg0(FLG0_UNK_200);
|
||||
return checkStateFlg0(FLG0_PORTAL_OBJ_CALL) && checkStateFlg0(FLG0_UNK_200);
|
||||
}
|
||||
|
||||
inline static BOOL checkMidnaRealBody();
|
||||
|
|
@ -191,6 +192,11 @@ public:
|
|||
|
||||
void resetRatBody() {}
|
||||
|
||||
bool checkFlyWaitAnime() {
|
||||
return field_0x5e4[0].getIdx() == 0x1CB || field_0x5e4[0].getIdx() == 0x1C7
|
||||
|| field_0x5e4[0].getIdx() == 0x1C8 || field_0x5e4[0].getIdx() == 0x1C9;
|
||||
}
|
||||
|
||||
static u8 const m_texDataTable[84];
|
||||
static u8 const m_anmDataTable[636];
|
||||
|
||||
|
|
|
|||
|
|
@ -325,6 +325,8 @@ public:
|
|||
FLG3_UNK_80000000 = 0x80000000,
|
||||
FLG3_UNK_40000000 = 0x40000000,
|
||||
FLG3_UNK_20000000 = 0x20000000,
|
||||
FLG3_COPY_ROD_ATN_KEEP = 0x10000000,
|
||||
FLG3_BOOMERANG_ATN_KEEP = 0x8000000,
|
||||
FLG3_UNK_4000000 = 0x4000000,
|
||||
FLG3_UNK_2000000 = 0x2000000,
|
||||
FLG3_UNK_1000000 = 0x1000000,
|
||||
|
|
@ -445,6 +447,7 @@ public:
|
|||
RFLG0_GRAB_UP_END = 0x20,
|
||||
RFLG0_UNK_10 = 0x10,
|
||||
RFLG0_UNK_8 = 0x8,
|
||||
RFLG0_GRAB_THROW = 0x4,
|
||||
RFLG0_UNK_2 = 0x2,
|
||||
RFLG0_UNK_1 = 0x1,
|
||||
};
|
||||
|
|
@ -595,8 +598,8 @@ public:
|
|||
virtual MtxP getBottleMtx();
|
||||
virtual BOOL checkPlayerGuard() const;
|
||||
virtual u32 checkPlayerFly() const { return 0; }
|
||||
virtual BOOL checkFrontRoll() const; // weak
|
||||
virtual BOOL checkWolfDash() const; // weak
|
||||
virtual BOOL checkFrontRoll() const { return FALSE; }
|
||||
virtual BOOL checkWolfDash() const { return FALSE; }
|
||||
virtual BOOL checkAutoJump() const;
|
||||
virtual bool checkSideStep() const;
|
||||
virtual bool checkWolfTriggerJump() const;
|
||||
|
|
@ -640,7 +643,7 @@ public:
|
|||
virtual bool cancelWolfLock(fopAc_ac_c*);
|
||||
virtual s32 getAtnActorID() const { return -1; }
|
||||
virtual s32 getItemID() const;
|
||||
virtual s32 getGrabActorID() const; // weak
|
||||
virtual s32 getGrabActorID() const { return -1; }
|
||||
virtual BOOL exchangeGrabActor(fopAc_ac_c*);
|
||||
virtual BOOL setForceGrab(fopAc_ac_c*, int, int);
|
||||
virtual void setForcePutPos(cXyz const&);
|
||||
|
|
@ -652,7 +655,7 @@ public:
|
|||
virtual void setOutPower(f32, short, int);
|
||||
virtual void setGrabCollisionOffset(f32, f32, cBgS_PolyInfo*);
|
||||
virtual void onMagneGrab(f32, f32);
|
||||
virtual void onFrollCrashFlg(u8, int); // weak
|
||||
virtual void onFrollCrashFlg(u8, int) {}
|
||||
virtual MtxP getModelJointMtx(u16);
|
||||
virtual MtxP getHeadMtx();
|
||||
virtual bool setHookshotCarryOffset(fpc_ProcID, cXyz const*);
|
||||
|
|
@ -684,7 +687,7 @@ public:
|
|||
virtual BOOL checkHorseRideNotReady() const;
|
||||
virtual bool checkArrowChargeEnd() const;
|
||||
virtual f32 getSearchBallScale() const;
|
||||
virtual s16 checkFastShotTime();
|
||||
virtual int checkFastShotTime();
|
||||
virtual bool checkNoEquipItem() const;
|
||||
virtual bool checkFireMaterial() const;
|
||||
virtual bool checkKandelaarSwing(int) const;
|
||||
|
|
@ -788,6 +791,7 @@ public:
|
|||
BOOL checkHorseZelda() const { return checkNoResetFlg2(FLG2_HORSE_ZELDA); }
|
||||
BOOL checkSpecialHorseRide() { return checkNoResetFlg2(daPy_FLG2(FLG2_HORSE_ZELDA | FLG2_UNK_1000000 | FLG2_UNK_800000)); }
|
||||
BOOL checkBoardNoFootAngle() const { return checkResetFlg1(RFLG1_UNK_40); }
|
||||
bool checkGrabThrow() const { return checkResetFlg0(RFLG0_GRAB_THROW); }
|
||||
|
||||
void onBossRoomWait() { onEndResetFlg0(ERFLG0_BOSS_ROOM_WAIT); }
|
||||
void onBeeFollow() { onEndResetFlg0(ERFLG0_BEE_FOLLOW); }
|
||||
|
|
@ -875,6 +879,8 @@ public:
|
|||
BOOL checkWolfGrowl() const { return checkResetFlg0(RFLG0_WOLF_GROWL); }
|
||||
BOOL checkWolfThreat() const { return checkWolfGrowl(); }
|
||||
BOOL checkWolfBark() const { return checkResetFlg0(RFLG0_WOLF_BARK); }
|
||||
u32 checkBoomerangAtnKeep() const { return checkNoResetFlg3(FLG3_BOOMERANG_ATN_KEEP); }
|
||||
u32 checkCopyRodAtnKeep() const { return checkNoResetFlg3(FLG3_COPY_ROD_ATN_KEEP); }
|
||||
|
||||
void onPlayerNoDraw() { onNoResetFlg0(FLG0_PLAYER_NO_DRAW); }
|
||||
void offPlayerNoDraw() { offNoResetFlg0(FLG0_PLAYER_NO_DRAW); }
|
||||
|
|
|
|||
|
|
@ -216,6 +216,8 @@ public:
|
|||
void clrFlag(u32 flag) { mFlags &= ~flag; }
|
||||
int GetActionCount() { return mActionCount; }
|
||||
int GetLockonCount() { return mLockonCount; }
|
||||
void LockSoundOn() { clrFlag(0x400000); }
|
||||
void LockSoundOff() { setFlag(0x400000); }
|
||||
bool Lockon() { return LockonTruth() || chkFlag(0x20000000); } // only matches with -O2?
|
||||
int ZHintRequest(fopAc_ac_c* param_1, int param_2) {
|
||||
return mZHintTarget.request(param_1, param_2);
|
||||
|
|
|
|||
|
|
@ -17,12 +17,13 @@ public:
|
|||
|
||||
void OnWaterGrp() { mGrp |= WATER_GRP; }
|
||||
void OnSpl() { mGrp |= WATER_GRP; }
|
||||
void OffWaterGrp() { mGrp &= ~WATER_GRP; }
|
||||
void OnNormalGrp() { mGrp |= NORMAL_GRP; }
|
||||
void OffNormalGrp() { mGrp &= ~NORMAL_GRP; }
|
||||
void OffFullGrp() { mGrp &= ~FULL_GRP; }
|
||||
void OnAll() { mGrp |= FULL_GRP; }
|
||||
u32 MaskNormalGrp() const {return mGrp & 1; }
|
||||
u32 MaskWaterGrp() const {return mGrp & 2; }
|
||||
u32 MaskNormalGrp() const {return mGrp & NORMAL_GRP; }
|
||||
u32 MaskWaterGrp() const {return mGrp & WATER_GRP; }
|
||||
private:
|
||||
/* 0x4 */ u32 mGrp;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -15,7 +15,15 @@ public:
|
|||
/* 80078A14 */ dBgS_SphChk();
|
||||
/* 80078AC0 */ virtual ~dBgS_SphChk();
|
||||
|
||||
void SetCallback(SphChk_Callback i_callback) { mCallback = i_callback; }
|
||||
|
||||
/* 0x50 */ SphChk_Callback mCallback;
|
||||
};
|
||||
|
||||
class dBgS_CamSphChk : public dBgS_SphChk {
|
||||
public:
|
||||
dBgS_CamSphChk() { SetCam(); }
|
||||
/* 80165E74 */ virtual ~dBgS_CamSphChk() {}
|
||||
};
|
||||
|
||||
#endif /* D_BG_D_BG_S_SPH_CHK_H */
|
||||
|
|
|
|||
|
|
@ -31,6 +31,12 @@ public:
|
|||
/* 80088464 */ dCamBGChk_c();
|
||||
|
||||
f32 WallUpDistance() { return mWallUpDistance; }
|
||||
f32 FwdDistance(s32 param_0) { return mChkInfo[param_0].mDistance; }
|
||||
s16 FwdChkAngle(s32 param_0) { return cAngle::d2s(mChkInfo[param_0].mChkAngle); }
|
||||
f32 FwdWeightH(s32 param_0) { return mChkInfo[param_0].mWeightH; }
|
||||
f32 FwdWeightL(s32 param_0) { return mChkInfo[param_0].mWeightL; }
|
||||
f32 FwdBackMargin() { return mFwdBackMargin; }
|
||||
f32 FwdCushion() { return mFwdCushion; }
|
||||
|
||||
// name is a guess for now
|
||||
struct ChkInfo {
|
||||
|
|
@ -79,7 +85,7 @@ public:
|
|||
/* 80182C74 */ void Arg0(u8);
|
||||
/* 80182C7C */ void Fovy(u8);
|
||||
/* 80182C58 */ void Fovy();
|
||||
/* 80182CB4 */ void CheckFlag(u16);
|
||||
/* 80182CB4 */ bool CheckFlag(u16 flag) { return mCurrentStyle->field_0x6 & flag; }
|
||||
/* 80182CD0 */ void Val(s32, int);
|
||||
|
||||
/* 0x00 */ u8 mMapToolFovy;
|
||||
|
|
@ -108,7 +114,7 @@ public:
|
|||
/* 80182BB8 */ void CheckFlag2(u16);
|
||||
/* 80182BE8 */ void WaitRollSpeed();
|
||||
/* 80182BF0 */ void WaitRollTimer();
|
||||
/* 80182C1C */ void ThrowTimer();
|
||||
/* 80182C1C */ // void ThrowTimer();
|
||||
/* 80182C24 */ void ThrowCushion();
|
||||
/* 80182C2C */ void ThrowVAngle();
|
||||
/* 80182C34 */ void ThrowCtrAdjust();
|
||||
|
|
@ -120,6 +126,11 @@ public:
|
|||
f32 ManualEndVal() { return mManualEndVal; }
|
||||
f32 CinemaScopeTrimHeight() { return mTrimCineScopeHeight; }
|
||||
f32 VistaTrimHeight() { return mTrimVistaHeight; }
|
||||
f32 ForceLockOffTimer() { return mForceLockOffTimer; }
|
||||
f32 ForceLockOffDist() { return mForceLockOffDist; }
|
||||
int ThrowTimer() { return mThrowTimer; }
|
||||
f32 USOValue() { return mFalseValue; }
|
||||
f32 USOAngle() { return mFalseAngle; }
|
||||
|
||||
/* 0x000 */ f32 mDrawNear;
|
||||
/* 0x004 */ f32 mDrawFar;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#ifndef D_D_CAMERA_H
|
||||
#define D_D_CAMERA_H
|
||||
|
||||
#include "d/d_attention.h"
|
||||
#include "d/d_bg_s_lin_chk.h"
|
||||
#include "d/d_bg_s_gnd_chk.h"
|
||||
#include "d/d_cam_param.h"
|
||||
|
|
@ -9,12 +10,25 @@
|
|||
#include "dolphin/types.h"
|
||||
|
||||
class fopAc_ac_c;
|
||||
dAttention_c& dComIfGp_getAttention();
|
||||
|
||||
struct dCamMapToolData {
|
||||
dCamMapToolData() { Clr(); }
|
||||
|
||||
/* 8015FEB8 */ int Set(s32, s32, fopAc_ac_c*, u16, u8);
|
||||
|
||||
dCamMapToolData& operator=(dCamMapToolData const& other) {
|
||||
__memcpy(&field_0x0, &other.field_0x0, sizeof(stage_camera2_data_class));
|
||||
__memcpy(&field_0x18, &other.field_0x18, sizeof(stage_arrow_data_class));
|
||||
field_0x2c = other.field_0x2c;
|
||||
field_0x30 = other.field_0x30;
|
||||
field_0x34 = other.field_0x34;
|
||||
field_0x38 = other.field_0x38;
|
||||
field_0x3a = other.field_0x3a;
|
||||
field_0x3b = other.field_0x3b;
|
||||
return *this;
|
||||
}
|
||||
|
||||
void Clr() {
|
||||
field_0x2c = 0xFF;
|
||||
field_0x30 = 0xFF;
|
||||
|
|
@ -119,6 +133,29 @@ struct dCamera_type_data {
|
|||
/* 0x18 */ s16 field_0x18[2][11];
|
||||
}; // Size: 0x44
|
||||
|
||||
struct camSphChkdata {
|
||||
camSphChkdata(cXyz* i_center, cXyz* param_1, f32 i_radius) {
|
||||
field_0x0 = i_center;
|
||||
field_0x8 = param_1;
|
||||
field_0xc = *i_center;
|
||||
field_0x4 = i_radius;
|
||||
field_0x1c = false;
|
||||
field_0x18 = i_radius;
|
||||
}
|
||||
|
||||
void Base(cXyz* param_0) {
|
||||
field_0x0 = param_0;
|
||||
field_0xc = *param_0;
|
||||
}
|
||||
|
||||
/* 0x00 */ cXyz* field_0x0;
|
||||
/* 0x04 */ f32 field_0x4;
|
||||
/* 0x08 */ cXyz* field_0x8;
|
||||
/* 0x0C */ cXyz field_0xc;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ bool field_0x1c;
|
||||
};
|
||||
|
||||
class camera_class;
|
||||
|
||||
class dCamera_c;
|
||||
|
|
@ -143,7 +180,7 @@ public:
|
|||
/* 0x0C */ f32 mPosXDelta;
|
||||
/* 0x10 */ f32 mPosYDelta;
|
||||
/* 0x14 */ f32 mValueDelta;
|
||||
/* 0x18 */ cSAngle field_0x18;
|
||||
/* 0x18 */ cSAngle mAngle;
|
||||
};
|
||||
|
||||
/* 0x00 */ _stick mMainStick;
|
||||
|
|
@ -179,7 +216,7 @@ public:
|
|||
/* 0x38 */ f32 field_0x38;
|
||||
/* 0x3C */ int field_0x3c;
|
||||
/* 0x40 */ int field_0x40;
|
||||
/* 0x44 */ int field_0x44;
|
||||
/* 0x44 */ u8 field_0x44;
|
||||
} /* 0x0C0 */ field_0xc0;
|
||||
class {
|
||||
public:
|
||||
|
|
@ -264,10 +301,10 @@ public:
|
|||
/* 801617B0 */ void updatePad();
|
||||
/* 80161D84 */ void initMonitor();
|
||||
/* 80161E34 */ void updateMonitor();
|
||||
/* 80162088 */ void checkForceLockTarget();
|
||||
/* 80162088 */ bool checkForceLockTarget();
|
||||
/* 801622B0 */ void infoReport();
|
||||
/* 801622B4 */ void Run();
|
||||
/* 80162D38 */ void NotRun();
|
||||
/* 801622B4 */ bool Run();
|
||||
/* 80162D38 */ bool NotRun();
|
||||
/* 80162FB8 */ s16 V();
|
||||
/* 80162FD4 */ s16 U();
|
||||
/* 8016300C */ bool SetTrimSize(s32);
|
||||
|
|
@ -277,13 +314,13 @@ public:
|
|||
/* 8016317C */ void setStageMapToolData();
|
||||
/* 80163340 */ void setMapToolData();
|
||||
/* 80163558 */ void SetTagData(fopAc_ac_c*, s32, u16, u8);
|
||||
/* 801635AC */ void setRoomMapToolData(dCamMapToolData*, s32, s32);
|
||||
/* 801635E4 */ void nextMode(s32);
|
||||
/* 80163C38 */ void onModeChange(s32, s32);
|
||||
/* 801635AC */ inline void setRoomMapToolData(dCamMapToolData*, s32, s32);
|
||||
/* 801635E4 */ s32 nextMode(s32);
|
||||
/* 80163C38 */ bool onModeChange(s32, s32);
|
||||
/* 80163D50 */ int ModeFix(s32);
|
||||
/* 80163D5C */ void nextType(s32);
|
||||
/* 8016444C */ void onTypeChange(s32, s32);
|
||||
/* 8016469C */ int onStyleChange(s32, s32);
|
||||
/* 80163D5C */ s32 nextType(s32);
|
||||
/* 8016444C */ bool onTypeChange(s32, s32);
|
||||
/* 8016469C */ bool onStyleChange(s32, s32);
|
||||
/* 801647B0 */ int onRoomChange(s32);
|
||||
/* 80164878 */ fopAc_ac_c* getParamTargetActor(s32);
|
||||
/* 80164944 */ int GetCameraTypeFromMapToolID(s32, s32);
|
||||
|
|
@ -292,27 +329,27 @@ public:
|
|||
/* 80164C64 */ void pushInfo(dCamera_c::dCamInfo_c*, s16);
|
||||
/* 80164CAC */ void popInfo(dCamera_c::dCamInfo_c*);
|
||||
/* 80164D2C */ f32 heightOf(fopAc_ac_c*);
|
||||
/* 80164E20 */ void relationalPos(fopAc_ac_c*, fopAc_ac_c*, cXyz*, f32);
|
||||
/* 80164D6C */ void relationalPos(fopAc_ac_c*, cXyz*);
|
||||
/* 80164E20 */ cXyz relationalPos(fopAc_ac_c*, fopAc_ac_c*, cXyz*, f32);
|
||||
/* 80164D6C */ cXyz relationalPos(fopAc_ac_c*, cXyz*);
|
||||
/* 80165104 */ void setUSOAngle();
|
||||
/* 80165158 */ cSAngle getUSOAngle(cSAngle);
|
||||
/* 8016517C */ void pointInSight(cXyz*);
|
||||
/* 8016517C */ bool pointInSight(cXyz*);
|
||||
/* 80167C24 */ void radiusActorInSight(fopAc_ac_c*, fopAc_ac_c*, fopAc_ac_c*);
|
||||
/* 80165238 */ void radiusActorInSight(fopAc_ac_c*, fopAc_ac_c*, cXyz*, cXyz*, f32, s16, f32);
|
||||
/* 80165238 */ f32 radiusActorInSight(fopAc_ac_c*, fopAc_ac_c*, cXyz*, cXyz*, f32, s16, f32);
|
||||
/* 801657EC */ f32 groundHeight(cXyz*);
|
||||
/* 801658C0 */ void lineBGCheck(cXyz*, cXyz*, dBgS_LinChk*, u32);
|
||||
/* 80165AF0 */ void lineBGCheck(cXyz*, cXyz*, u32);
|
||||
/* 801659F4 */ void lineBGCheck(cXyz*, cXyz*, cXyz*, u32);
|
||||
/* 80165B60 */ void lineCollisionCheckBush(cXyz*, cXyz*);
|
||||
/* 80165CE0 */ void compWallMargin(cXyz*, cXyz*, f32);
|
||||
/* 80165EF4 */ void defaultTriming();
|
||||
/* 801658C0 */ bool lineBGCheck(cXyz*, cXyz*, dBgS_LinChk*, u32);
|
||||
/* 80165AF0 */ bool lineBGCheck(cXyz*, cXyz*, u32);
|
||||
/* 801659F4 */ bool lineBGCheck(cXyz*, cXyz*, cXyz*, u32);
|
||||
/* 80165B60 */ u32 lineCollisionCheckBush(cXyz*, cXyz*);
|
||||
/* 80165CE0 */ cXyz compWallMargin(cXyz*, cXyz*, f32);
|
||||
/* 80165EF4 */ int defaultTriming();
|
||||
/* 80165FB4 */ void setView(f32, f32, f32, f32);
|
||||
/* 8016608C */ void forwardCheckAngle();
|
||||
/* 8016608C */ cSAngle forwardCheckAngle();
|
||||
/* 80166764 */ void bumpCheck(u32);
|
||||
/* 80167BF8 */ void lineBGCheckBoth(cXyz*, cXyz*, dBgS_LinChk*, u32);
|
||||
/* 80167CD8 */ void jutOutCheck(cXyz*, f32);
|
||||
/* 80167E3C */ void tooNearEscape(cXyz*);
|
||||
/* 80167EF4 */ void getWaterSurfaceHeight(cXyz*);
|
||||
/* 80167EF4 */ f32 getWaterSurfaceHeight(cXyz*);
|
||||
/* 80167FEC */ void checkGroundInfo();
|
||||
/* 80168744 */ bool chaseCamera(s32);
|
||||
/* 8016C384 */ bool lockonCamera(s32);
|
||||
|
|
@ -374,7 +411,7 @@ public:
|
|||
bool Active() { return field_0x24 == 0; }
|
||||
f32 TrimHeight() { return mTrimHeight; }
|
||||
int Type() { return mCurType; }
|
||||
int Mode() { return mNextMode; }
|
||||
int Mode() { return mCurMode; }
|
||||
f32 Fovy() { return mFovY + mShake.field_0x3c; }
|
||||
bool isModeOK() { return field_0x158.field_0x0; }
|
||||
bool push_any_key() { return field_0x224; }
|
||||
|
|
@ -395,6 +432,12 @@ public:
|
|||
mEventData.field_0x24 = i_flag;
|
||||
}
|
||||
|
||||
void Att() {
|
||||
dAttention_c& attn = dComIfGp_getAttention();
|
||||
mpLockonTarget = attn.LockonTruth() ? attn.LockonTarget(0) : NULL;
|
||||
attn.LockSoundOn();
|
||||
}
|
||||
|
||||
static engine_fn engine_tbl[];
|
||||
|
||||
/* 0x000 */ camera_class* field_0x0;
|
||||
|
|
@ -431,7 +474,7 @@ public:
|
|||
class {
|
||||
public:
|
||||
/* 0x00 */ int field_0x0;
|
||||
/* 0x04 */ u16 field_0x4;
|
||||
/* 0x04 */ s16 field_0x4;
|
||||
/* 0x08 */ dCamInfo_c field_0x8;
|
||||
/* 0x28 */ cXyz field_0x28;
|
||||
}
|
||||
|
|
@ -450,21 +493,24 @@ public:
|
|||
}
|
||||
/* 0x158 */ field_0x158;
|
||||
/* 0x160 */ int field_0x160;
|
||||
/* 0x164 */ u8 field_0x164[0x170 - 0x164];
|
||||
/* 0x164 */ int field_0x164;
|
||||
/* 0x168 */ u8 field_0x168;
|
||||
/* 0x169 */ int field_0x16c;
|
||||
/* 0x170 */ int field_0x170;
|
||||
/* 0x174 */ u32 mCurCamTypeTimer;
|
||||
/* 0x178 */ u32 mCameraID;
|
||||
/* 0x17C */ u32 mPadID;
|
||||
/* 0x180 */ fopAc_ac_c* mpPlayerActor;
|
||||
/* 0x184 */ fopAc_ac_c* mpLockonTarget;
|
||||
/* 0x188 */ u8 field_0x188[0x190 - 0x188];
|
||||
/* 0x188 */ u32 field_0x188;
|
||||
/* 0x18C */ u32 field_0x18c;
|
||||
/* 0x190 */ int field_0x190;
|
||||
/* 0x194 */ u8 field_0x194;
|
||||
/* 0x198 */ u32 field_0x198;
|
||||
/* 0x19C */ u32 field_0x19c;
|
||||
/* 0x1A0 */ int mCurMode;
|
||||
/* 0x1A4 */ int mNextMode;
|
||||
/* 0x1A8 */ int field_0x1a8;
|
||||
/* 0x194 */ bool field_0x194;
|
||||
/* 0x198 */ u32 mLockOnActorID;
|
||||
/* 0x19C */ fopAc_ac_c* mpLockOnActor;
|
||||
/* 0x1A0 */ int mForceLockTimer;
|
||||
/* 0x1A4 */ int mCurMode;
|
||||
/* 0x1A8 */ int mNextMode;
|
||||
/* 0x1AC */ int field_0x1ac;
|
||||
/* 0x1B0 */ cSAngle field_0x1b0;
|
||||
/* 0x1B4 */ f32 field_0x1b4;
|
||||
|
|
@ -485,16 +531,16 @@ public:
|
|||
/* 0x215 */ u8 field_0x215;
|
||||
/* 0x216 */ u8 field_0x216;
|
||||
/* 0x217 */ u8 field_0x217;
|
||||
/* 0x218 */ u8 mHoldX;
|
||||
/* 0x219 */ u8 mTrigX;
|
||||
/* 0x21A */ u8 mHoldY;
|
||||
/* 0x21B */ u8 mTrigY;
|
||||
/* 0x218 */ bool mHoldX;
|
||||
/* 0x219 */ bool mTrigX;
|
||||
/* 0x21A */ bool mHoldY;
|
||||
/* 0x21B */ bool mTrigY;
|
||||
/* 0x21C */ bool mHoldZ;
|
||||
/* 0x21D */ u8 mTrigZ;
|
||||
/* 0x21D */ bool mTrigZ;
|
||||
/* 0x21E */ u8 field_0x21e;
|
||||
/* 0x21F */ u8 field_0x21f;
|
||||
/* 0x220 */ u8 mHoldB;
|
||||
/* 0x221 */ u8 mTrigB;
|
||||
/* 0x220 */ bool mHoldB;
|
||||
/* 0x221 */ bool mTrigB;
|
||||
/* 0x222 */ u8 field_0x222;
|
||||
/* 0x223 */ u8 field_0x223;
|
||||
/* 0x224 */ u8 field_0x224;
|
||||
|
|
@ -580,13 +626,14 @@ public:
|
|||
/* 0x920 */ f32 mTrimHeight;
|
||||
/* 0x924 */ int mTrimSize;
|
||||
/* 0x928 */ int mTrimTypeForce;
|
||||
/* 0x92C */ u8 field_0x92c[0x934 - 0x92c];
|
||||
/* 0x92C */ f32 field_0x92c;
|
||||
/* 0x930 */ u8 field_0x930[0x930 - 0x92c];
|
||||
/* 0x934 */ f32 field_0x934;
|
||||
/* 0x938 */ u8 field_0x938[0x93C - 0x938];
|
||||
/* 0x93C */ int field_0x93c;
|
||||
/* 0x940 */ int field_0x940;
|
||||
/* 0x944 */ u8 field_0x944;
|
||||
/* 0x948 */ int field_0x948;
|
||||
/* 0x948 */ int mThrowTimer;
|
||||
/* 0x94C */ cSAngle field_0x94c;
|
||||
/* 0x950 */ int field_0x950;
|
||||
/* 0x954 */ u8 field_0x954[0x958 - 0x954];
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ public:
|
|||
/* 80085CF0 */ void Clear();
|
||||
/* 80085D98 */ void Set(cCcD_Obj* p_obj, u8 priority);
|
||||
/* 80085E6C */ void SetCam(cM3dGCps const& cps);
|
||||
/* 80085EB0 */ u8 GetResultCam() const;
|
||||
/* 80085EB0 */ u32 GetResultCam() const;
|
||||
/* 80085EB8 */ void GetCamTopPos(Vec* p_out);
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -45,6 +45,8 @@ public:
|
|||
/* 80086754 */ virtual void CalcParticleAngle(dCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, csXyz*);
|
||||
|
||||
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 PrepareMass() { mMass_Mng.Prepare(); }
|
||||
|
||||
static bool m_mtrl_hit_tbl[64];
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
#ifndef D_COM_D_COM_INF_ACTOR_H
|
||||
#define D_COM_D_COM_INF_ACTOR_H
|
||||
|
||||
class fopAc_ac_c;
|
||||
|
||||
class dComIfGoat_info_c {
|
||||
public:
|
||||
/* 0x0 */ int field_0x0;
|
||||
/* 0x0 */ fopAc_ac_c* field_0x0;
|
||||
};
|
||||
|
||||
class dComIfAc_info_c {
|
||||
|
|
@ -20,4 +21,8 @@ inline bool dComIfA_PauseCheck() {
|
|||
return g_dComIfAc_gameInfo.mPause;
|
||||
}
|
||||
|
||||
inline fopAc_ac_c* dComIfGoat_GetThrow() {
|
||||
return g_dComIfGoat_gameInfo.field_0x0;
|
||||
}
|
||||
|
||||
#endif /* D_COM_D_COM_INF_ACTOR_H */
|
||||
|
|
|
|||
|
|
@ -2622,6 +2622,14 @@ inline int dComIfGp_getStagePlightNumInfo() {
|
|||
return g_dComIfG_gameInfo.play.getStage().getPlightNumInfo();
|
||||
}
|
||||
|
||||
inline s16 dComIfGp_getStageWorldRollAngleX() {
|
||||
return g_dComIfG_gameInfo.play.getStage().getWorldRollAngleX();
|
||||
}
|
||||
|
||||
inline s16 dComIfGp_getStageWorldRollDirAngleY() {
|
||||
return g_dComIfG_gameInfo.play.getStage().getWorldRollDirAngleY();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_isHeapLockFlag() {
|
||||
return g_dComIfG_gameInfo.play.isHeapLockFlag();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -249,6 +249,7 @@ public:
|
|||
s8 getCameraID() { return mCameraID; }
|
||||
void setMode(int mode) { mMode = mode; }
|
||||
view_port_class* getViewPort() { return &mViewport; }
|
||||
scissor_class* getScissor() { return &mViewport.mScissor; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ view_port_class mViewport;
|
||||
|
|
|
|||
|
|
@ -603,6 +603,6 @@ void dKy_ParticleColor_get_bg(cXyz* param_0, dKy_tevstr_c* param_1, _GXColor* pa
|
|||
_GXColor dKy_light_influence_col(_GXColor* param_0, f32 param_1);
|
||||
static void dKy_WaterIn_Light_set();
|
||||
void dKy_SordFlush_set(cXyz param_0, int param_1);
|
||||
|
||||
void dKy_camera_water_in_status_set(u8 status);
|
||||
|
||||
#endif /* D_KANKYO_D_KANKYO_H */
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ struct stage_scls_info_class {
|
|||
/* 0x9 */ s8 mRoom;
|
||||
/* 0xA */ u8 field_0xa;
|
||||
/* 0xB */ u8 field_0xb;
|
||||
/* 0xC */ s8 mWipe;
|
||||
/* 0xC */ u8 mWipe;
|
||||
|
||||
char* getStage() { return mStage; }
|
||||
|
||||
|
|
@ -567,6 +567,9 @@ public:
|
|||
|
||||
void setTreasure(stage_tresure_class*);
|
||||
|
||||
s16 getWorldRollAngleX() { return mWorldRollAngleX; }
|
||||
s16 getWorldRollDirAngleY() { return mWorldRollDirAngleY; }
|
||||
|
||||
public:
|
||||
/* 0x08 */ stage_camera_class* mCamera;
|
||||
/* 0x0C */ stage_arrow_class* mArrow;
|
||||
|
|
@ -588,8 +591,8 @@ public:
|
|||
/* 0x4C */ int mVrboxcolNumInfo;
|
||||
/* 0x50 */ u32 mPlightNumInfo;
|
||||
/* 0x54 */ u16 mPlayerNum;
|
||||
/* 0x56 */ u16 field_0x56;
|
||||
/* 0x58 */ u16 field_0x58;
|
||||
/* 0x56 */ s16 mWorldRollAngleX;
|
||||
/* 0x58 */ s16 mWorldRollDirAngleY;
|
||||
/* 0x5A */ u16 field_0x5a;
|
||||
/* 0x5C */ stage_stag_info_class* mStagInfo;
|
||||
/* 0x60 */ stage_scls_info_dummy_class* mSclsInfo;
|
||||
|
|
@ -1109,7 +1112,7 @@ inline u8 dStage_stagInfo_DefaultCameraType(stage_stag_info_class* pstag) {
|
|||
return pstag->mCameraType;
|
||||
}
|
||||
|
||||
inline u32 dStage_sclsInfo_getSceneLayer(stage_scls_info_class* p_info) {
|
||||
inline u8 dStage_sclsInfo_getSceneLayer(stage_scls_info_class* p_info) {
|
||||
return p_info->field_0xb & 0xF;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -14,4 +14,6 @@ static s32 fopCam_Draw(camera_class* param_1);
|
|||
static int fopCam_Execute(camera_class* pCamera);
|
||||
int fopCam_IsDelete(camera_class* pCamera);
|
||||
|
||||
extern leafdraw_method_class g_fopCam_Method;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -56,4 +56,6 @@ struct view_class : public leafdraw_class {
|
|||
/* 0x1E0 */ Mtx mViewMtxNoTrans;
|
||||
};
|
||||
|
||||
#endif
|
||||
extern leafdraw_method_class g_fopVw_Method;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -264,13 +264,13 @@ cSGlobe::cSGlobe(const cXyz& xyz) {
|
|||
cSGlobe& cSGlobe::Formal() {
|
||||
if (mRadius < 0.0f) {
|
||||
mRadius = -mRadius;
|
||||
mAzimuth = -mAzimuth;
|
||||
mInclination.Val(mInclination.Inv());
|
||||
mInclination = -mInclination;
|
||||
mAzimuth.Val(mAzimuth.Inv());
|
||||
}
|
||||
|
||||
if (mAzimuth.Val() < -0x4000 || 0x4000 < mAzimuth.Val()) {
|
||||
mAzimuth = cSAngle((s16)-0x8000) - mAzimuth;
|
||||
mInclination.Val(mInclination.Inv());
|
||||
if (mInclination.Val() < -0x4000 || 0x4000 < mInclination.Val()) {
|
||||
mInclination = cSAngle((s16)-0x8000) - mInclination;
|
||||
mAzimuth.Val(mAzimuth.Inv());
|
||||
}
|
||||
|
||||
return *this;
|
||||
|
|
@ -279,24 +279,24 @@ cSGlobe& cSGlobe::Formal() {
|
|||
/* 8027196C-802719A4 0038+00 s=1 e=0 z=0 None .text Val__7cSGlobeFRC7cSGlobe */
|
||||
void cSGlobe::Val(const cSGlobe& other) {
|
||||
mRadius = other.mRadius;
|
||||
mAzimuth = other.mAzimuth;
|
||||
mInclination = other.mInclination;
|
||||
mAzimuth = other.mAzimuth;
|
||||
Formal();
|
||||
}
|
||||
|
||||
/* 802719A4-80271A08 0064+00 s=2 e=3 z=0 None .text Val__7cSGlobeFfss */
|
||||
void cSGlobe::Val(f32 f, s16 s1, s16 s2) {
|
||||
mRadius = f;
|
||||
mAzimuth = cSAngle(s1);
|
||||
mInclination = cSAngle(s2);
|
||||
mInclination = cSAngle(s1);
|
||||
mAzimuth = cSAngle(s2);
|
||||
Formal();
|
||||
}
|
||||
|
||||
/* 80271A08-80271A70 0068+00 s=1 e=11 z=0 None .text Val__7cSGlobeFfRC7cSAngleRC7cSAngle */
|
||||
void cSGlobe::Val(f32 f, const cSAngle& a1, const cSAngle& a2) {
|
||||
mRadius = f;
|
||||
mAzimuth = cSAngle(a1.Val());
|
||||
mInclination = cSAngle(a2.Val());
|
||||
mInclination = cSAngle(a1.Val());
|
||||
mAzimuth = cSAngle(a2.Val());
|
||||
Formal();
|
||||
}
|
||||
|
||||
|
|
@ -316,12 +316,12 @@ cXyz cSGlobe::Xyz() const {
|
|||
|
||||
/* 80271AF4-80271B30 003C+00 s=1 e=0 z=0 None .text Polar__7cSGlobeCFP7cSPolar */
|
||||
void cSGlobe::Polar(cSPolar* csp) const {
|
||||
csp->Val(mRadius, 0x4000 - mAzimuth.Val(), mInclination.Val());
|
||||
csp->Val(mRadius, 0x4000 - mInclination.Val(), mAzimuth.Val());
|
||||
}
|
||||
|
||||
/* 80271B30-80271B7C 004C+00 s=0 e=3 z=0 None .text Norm__7cSGlobeCFv */
|
||||
cXyz cSGlobe::Norm() const {
|
||||
cSGlobe glob(1.0f, mAzimuth, mInclination);
|
||||
cSGlobe glob(1.0f, mInclination, mAzimuth);
|
||||
return glob.Xyz();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ void cBgS_LinChk::ct() {
|
|||
field_0x40 = start_end;
|
||||
|
||||
SetActorPid(UINT32_MAX);
|
||||
field_0x4c = 0;
|
||||
mStts = 0;
|
||||
mFrontFlag = 1;
|
||||
mBackFlag = 0;
|
||||
}
|
||||
|
|
@ -30,13 +30,13 @@ void cBgS_LinChk::Set2(cXyz const* startPos, cXyz const* endPos, unsigned int ac
|
|||
mLin.SetStartEnd(*startPos, *endPos);
|
||||
field_0x40 = *endPos;
|
||||
SetActorPid(actorPid);
|
||||
field_0x4c &= ~0x10;
|
||||
mStts &= ~STTS_HIT;
|
||||
ClearPi();
|
||||
}
|
||||
|
||||
/* 80267F40-80267F80 262880 0040+00 0/0 1/1 0/0 .text PreCalc__11cBgS_LinChkFv */
|
||||
void cBgS_LinChk::PreCalc() {
|
||||
mPreWallChk = !(field_0x4c & 0x40000000);
|
||||
mPreGroundChk = !(field_0x4c & 0x80000000);
|
||||
mPreRoofChk = !(field_0x4c & 0x20000000);
|
||||
}
|
||||
mPreWallChk = !(mStts & STTS_WALL_OFF);
|
||||
mPreGroundChk = !(mStts & STTS_GROUND_OFF);
|
||||
mPreRoofChk = !(mStts & STTS_ROOF_OFF);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4735,7 +4735,7 @@ extern "C" f32 getSearchBallScale__9daAlink_cCFv(daAlink_c* this_) {
|
|||
}
|
||||
|
||||
/* 800D079C-800D07A4 0CB0DC 0008+00 1/0 0/0 0/0 .text checkFastShotTime__9daAlink_cFv */
|
||||
extern "C" s16 checkFastShotTime__9daAlink_cFv(daAlink_c* this_) {
|
||||
extern "C" int checkFastShotTime__9daAlink_cFv(daAlink_c* this_) {
|
||||
return this_->mFastShotTime;
|
||||
}
|
||||
|
||||
|
|
|
|||
2815
src/d/d_camera.cpp
2815
src/d/d_camera.cpp
File diff suppressed because it is too large
Load Diff
|
|
@ -267,7 +267,7 @@ void dCcMassS_Mng::SetCam(cM3dGCps const& cps) {
|
|||
}
|
||||
|
||||
/* 80085EB0-80085EB8 0807F0 0008+00 0/0 1/1 0/0 .text GetResultCam__12dCcMassS_MngCFv */
|
||||
u8 dCcMassS_Mng::GetResultCam() const {
|
||||
u32 dCcMassS_Mng::GetResultCam() const {
|
||||
return mResultCam;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
*/
|
||||
|
||||
#include "d/d_com_inf_actor.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450610-80450618 000090 0008+00 0/0 1/1 0/0 .sdata g_dComIfAc_gameInfo */
|
||||
|
|
@ -14,5 +15,5 @@ dComIfAc_info_c g_dComIfAc_gameInfo = {
|
|||
|
||||
/* 80450618-80450620 000098 0004+04 0/0 2/2 7/7 .sdata g_dComIfGoat_gameInfo */
|
||||
dComIfGoat_info_c g_dComIfGoat_gameInfo = {
|
||||
0, // field_0x0
|
||||
};
|
||||
NULL, // field_0x0
|
||||
};
|
||||
|
|
|
|||
|
|
@ -155,10 +155,10 @@ static int dEvDt_Next_Stage(int index, int wipe_type) {
|
|||
point = stgInfo->mStart;
|
||||
roomNo = (s8)stgInfo->mRoom;
|
||||
layer = dStage_sclsInfo_getSceneLayer(stgInfo);
|
||||
wipe = (s8)stgInfo->mWipe;
|
||||
wipe = dStage_sclsInfo_getWipe(stgInfo);
|
||||
wipe_time = dStage_sclsInfo_getWipeTime(stgInfo);
|
||||
|
||||
if (stgInfo->mWipe == 15) {
|
||||
if (wipe == 15) {
|
||||
wipe = 0;
|
||||
}
|
||||
|
||||
|
|
@ -1285,4 +1285,4 @@ BOOL dEvDtBase_c::advanceCutLocal(dEvDtStaff_c* p_staff) {
|
|||
}
|
||||
p_staff->field_0x40 = false;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,394 +22,6 @@
|
|||
#include "global.h"
|
||||
#include "m_Do/m_Do_Reset.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void set__18dStage_nextStage_cFPCcScsScScUc();
|
||||
extern "C" static void dStage_SetErrorRoom__Fv();
|
||||
extern "C" static void dStage_SetErrorStage__Fv();
|
||||
extern "C" void dStage_GetKeepDoorInfo__Fv();
|
||||
extern "C" static void dStage_isBossStage__FP11dStage_dt_c();
|
||||
extern "C" static void dStage_KeepDoorInfoInit__FP11dStage_dt_c();
|
||||
extern "C" static void dStage_KeepDoorInfoProc__FP11dStage_dt_cP16stage_tgsc_class();
|
||||
extern "C" void dStage_GetRoomKeepDoorInfo__Fv();
|
||||
extern "C" static void dStage_initRoomKeepDoorInfo__Fv();
|
||||
extern "C" static void dStage_RoomKeepDoorInfoProc__FP11dStage_dt_cP16stage_tgsc_class();
|
||||
extern "C" static void dStage_RoomKeepDoorInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" void set__19dStage_startStage_cFPCcScsSc();
|
||||
extern "C" void init__20dStage_roomControl_cFv();
|
||||
extern "C" void initZone__20dStage_roomControl_cFv();
|
||||
extern "C" void getStatusRoomDt__20dStage_roomControl_cFi();
|
||||
extern "C" void getMemoryBlock__20dStage_roomControl_cFi();
|
||||
extern "C" void setStayNo__20dStage_roomControl_cFi();
|
||||
extern "C" void setNextStayNo__20dStage_roomControl_cFi();
|
||||
extern "C" static void stayRoomCheck__FiPUci();
|
||||
extern "C" static void createRoomScene__Fi();
|
||||
extern "C" void checkRoomDisp__20dStage_roomControl_cCFi();
|
||||
extern "C" void loadRoom__20dStage_roomControl_cFiPUcb();
|
||||
extern "C" void zoneCountCheck__20dStage_roomControl_cCFi();
|
||||
extern "C" void getStagInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void createMemoryBlock__20dStage_roomControl_cFiUl();
|
||||
extern "C" void destroyMemoryBlock__20dStage_roomControl_cFv();
|
||||
extern "C" void setArcBank__20dStage_roomControl_cFiPCc();
|
||||
extern "C" void getArcBank__20dStage_roomControl_cFi();
|
||||
extern "C" void resetArchiveBank__20dStage_roomControl_cFi();
|
||||
extern "C" void create__Q220dStage_roomControl_c9roomDzs_cFUc();
|
||||
extern "C" void remove__Q220dStage_roomControl_c9roomDzs_cFv();
|
||||
extern "C" void add__Q220dStage_roomControl_c9roomDzs_cFUcUc();
|
||||
extern "C" void init__16dStage_stageDt_cFv();
|
||||
extern "C" void initFileList2__15dStage_roomDt_cFv();
|
||||
extern "C" void init__15dStage_roomDt_cFv();
|
||||
extern "C" static void dStage_roomInit__Fi();
|
||||
extern "C" void SetTimePass__20dStage_roomControl_cFi();
|
||||
extern "C" void getRoom__16dStage_stageDt_cCFv();
|
||||
extern "C" void dStage_searchName__FPCc();
|
||||
extern "C" static void dStage_getName__FsSc();
|
||||
extern "C" void dStage_getName2__FsSc();
|
||||
extern "C" static void dStage_actorCreate__FP22stage_actor_data_classP16fopAcM_prm_class();
|
||||
extern "C" static void dStage_cameraCreate__FP24stage_camera2_data_classii();
|
||||
extern "C" void getPlayer__15dStage_roomDt_cCFv();
|
||||
extern "C" void getPlayer__16dStage_stageDt_cCFv();
|
||||
extern "C" static void dStage_playerInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_cameraInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_RoomCameraInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_arrowInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" void getMapInfo2__15dStage_roomDt_cCFi();
|
||||
extern "C" void getMapInfoBase__15dStage_roomDt_cCFv();
|
||||
extern "C" void getMapInfo2__16dStage_stageDt_cCFi();
|
||||
extern "C" void getMapInfoBase__16dStage_stageDt_cCFv();
|
||||
extern "C" static void dStage_paletteInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_pselectInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_envrInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_filiInfo2Init__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_fieldMapFiliInfo2Init__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_filiInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_vrboxInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_vrboxcolInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_plightInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_lgtvInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" void dStage_stagInfo_GetParticleNo__FP21stage_stag_info_classi();
|
||||
extern "C" static void dStage_stagInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" void resetOldMulti__16dStage_stageDt_cFv();
|
||||
extern "C" static void dStage_sclsInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_actorCommonLayerInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_tgscCommonLayerInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_actorInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_actorInit_always__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_tgscInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_doorInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_roomReadInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" void dStage_roomRead_dt_c_GetReverbStage__FR14roomRead_classi();
|
||||
extern "C" static void dStage_ppntInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_pathInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_rppnInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_rpatInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_soundInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_soundInfoInitCL__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_setLayerTagName__FP9FuncTableii();
|
||||
extern "C" static void dStage_dt_c_decode__FPvP11dStage_dt_cP9FuncTablei();
|
||||
extern "C" static void dStage_stEventInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_mapEventInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_floorInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_memaInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_mecoInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_stageKeepTresureInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_fieldMapTresureInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_dt_c_offsetToPtr__FPv();
|
||||
extern "C" static void dStage_mapPathInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_mapPathInitCommonLayer__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_fieldMapMapPathInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void readMult__FP11dStage_dt_cP14dStage_Multi_cb();
|
||||
extern "C" static void dStage_multInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_lbnkInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_roomTresureInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_layerTresureInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_dmapInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_stageDrtgInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_roomDrtgInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dStage_elstInfoInit__FP11dStage_dt_cPviPv();
|
||||
extern "C" static void dKankyo_create__Fv();
|
||||
extern "C" static void layerMemoryInfoLoader__FPvP11dStage_dt_ci();
|
||||
extern "C" static void dStage_dt_c_stageInitLoader__FPvP11dStage_dt_c();
|
||||
extern "C" static void layerTableLoader__FPvP11dStage_dt_ci();
|
||||
extern "C" void getElst__16dStage_stageDt_cFv();
|
||||
extern "C" static void layerActorLoader__FPvP11dStage_dt_ci();
|
||||
extern "C" static void dStage_dt_c_stageLoader__FPvP11dStage_dt_c();
|
||||
extern "C" void dStage_dt_c_roomLoader__FPvP11dStage_dt_ci();
|
||||
extern "C" void dStage_dt_c_roomReLoader__FPvP11dStage_dt_ci();
|
||||
extern "C" void dStage_dt_c_fieldMapLoader__FPvP11dStage_dt_c();
|
||||
extern "C" void dStage_infoCreate__Fv();
|
||||
extern "C" void dStage_Create__Fv();
|
||||
extern "C" void dStage_Delete__Fv();
|
||||
extern "C" void setOldMulti__16dStage_stageDt_cFv();
|
||||
extern "C" void dStage_RoomCheck__FP11cBgS_GndChk();
|
||||
extern "C" void dStage_changeSceneExitId__FR13cBgS_PolyInfofUlScs();
|
||||
extern "C" void dStage_changeScene__FifUlScsi();
|
||||
extern "C" void getSclsInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void getSclsInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void dStage_changeScene4Event__FiScibfUlsi();
|
||||
extern "C" void dStage_restartRoom__FUlUli();
|
||||
extern "C" void setCamera__15dStage_roomDt_cFP18stage_camera_class();
|
||||
extern "C" void getCamera__15dStage_roomDt_cCFv();
|
||||
extern "C" void setArrow__15dStage_roomDt_cFP17stage_arrow_class();
|
||||
extern "C" void getArrow__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPlayer__15dStage_roomDt_cFP17stage_actor_class();
|
||||
extern "C" void setPlayerNum__15dStage_roomDt_cFUs();
|
||||
extern "C" void getPlayerNum__15dStage_roomDt_cCFv();
|
||||
extern "C" void setRoom__15dStage_roomDt_cFP14roomRead_class();
|
||||
extern "C" void getRoom__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMapInfo__15dStage_roomDt_cFP20stage_map_info_class();
|
||||
extern "C" void getMapInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMapInfoBase__15dStage_roomDt_cFP26stage_map_info_dummy_class();
|
||||
extern "C" void setPaletteInfo__15dStage_roomDt_cFP24stage_palette_info_class();
|
||||
extern "C" void getPaletteInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPselectInfo__15dStage_roomDt_cFP24stage_pselect_info_class();
|
||||
extern "C" void getPselectInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setEnvrInfo__15dStage_roomDt_cFP21stage_envr_info_class();
|
||||
extern "C" void getEnvrInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setVrboxInfo__15dStage_roomDt_cFP22stage_vrbox_info_class();
|
||||
extern "C" void getVrboxInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setVrboxcolInfo__15dStage_roomDt_cFP25stage_vrboxcol_info_class();
|
||||
extern "C" void getVrboxcolInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPlightInfo__15dStage_roomDt_cFP23stage_plight_info_class();
|
||||
extern "C" void getPlightInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPaletteNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getPaletteNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPselectNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getPselectNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setEnvrNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getEnvrNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setVrboxNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getVrboxNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setVrboxcolNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getVrboxcolNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPlightNumInfo__15dStage_roomDt_cFi();
|
||||
extern "C" void getPlightNumInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setLightVecInfo__15dStage_roomDt_cFP30stage_pure_lightvec_info_class();
|
||||
extern "C" void getLightVecInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setLightVecInfoNum__15dStage_roomDt_cFi();
|
||||
extern "C" void getLightVecInfoNum__15dStage_roomDt_cCFv();
|
||||
extern "C" void setStagInfo__15dStage_roomDt_cFP21stage_stag_info_class();
|
||||
extern "C" void getStagInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setSclsInfo__15dStage_roomDt_cFP27stage_scls_info_dummy_class();
|
||||
extern "C" void setPntInfo__15dStage_roomDt_cFP13dStage_dPnt_c();
|
||||
extern "C" void getPntInf__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPathInfo__15dStage_roomDt_cFP14dStage_dPath_c();
|
||||
extern "C" void getPathInf__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPnt2Info__15dStage_roomDt_cFP13dStage_dPnt_c();
|
||||
extern "C" void getPnt2Inf__15dStage_roomDt_cCFv();
|
||||
extern "C" void setPath2Info__15dStage_roomDt_cFP14dStage_dPath_c();
|
||||
extern "C" void getPath2Inf__15dStage_roomDt_cCFv();
|
||||
extern "C" void setSoundInf__15dStage_roomDt_cFP18dStage_SoundInfo_c();
|
||||
extern "C" void getSoundInf__15dStage_roomDt_cCFv();
|
||||
extern "C" void setSoundInfCL__15dStage_roomDt_cFP18dStage_SoundInfo_c();
|
||||
extern "C" void getSoundInfCL__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMapEventInfo__15dStage_roomDt_cFP21dStage_MapEventInfo_c();
|
||||
extern "C" void getMapEventInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setFileList2Info__15dStage_roomDt_cFP21dStage_FileList2_dt_c();
|
||||
extern "C" void getFileList2Info__15dStage_roomDt_cCFv();
|
||||
extern "C" void setFileListInfo__15dStage_roomDt_cFP20dStage_FileList_dt_c();
|
||||
extern "C" void setFloorInfo__15dStage_roomDt_cFP18dStage_FloorInfo_c();
|
||||
extern "C" void getFloorInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMemoryConfig__15dStage_roomDt_cFP21dStage_MemoryConfig_c();
|
||||
extern "C" void getMemoryConfig__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMemoryMap__15dStage_roomDt_cFP18dStage_MemoryMap_c();
|
||||
extern "C" void getMemoryMap__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMulti__15dStage_roomDt_cFP14dStage_Multi_c();
|
||||
extern "C" void getMulti__15dStage_roomDt_cCFv();
|
||||
extern "C" void setOldMulti__15dStage_roomDt_cFv();
|
||||
extern "C" void resetOldMulti__15dStage_roomDt_cFv();
|
||||
extern "C" void getOldMulti__15dStage_roomDt_cCFv();
|
||||
extern "C" void setLbnk__15dStage_roomDt_cFP13dStage_Lbnk_c();
|
||||
extern "C" void getLbnk__15dStage_roomDt_cCFv();
|
||||
extern "C" void setTresure__15dStage_roomDt_cFP19stage_tresure_class();
|
||||
extern "C" void getTresure__15dStage_roomDt_cCFv();
|
||||
extern "C" void setDMap__15dStage_roomDt_cFP13dStage_DMap_c();
|
||||
extern "C" bool getDMap__15dStage_roomDt_cCFv();
|
||||
extern "C" void setDrTg__15dStage_roomDt_cFP16stage_tgsc_class();
|
||||
extern "C" void getDrTg__15dStage_roomDt_cCFv();
|
||||
extern "C" void setDoor__15dStage_roomDt_cFP16stage_tgsc_class();
|
||||
extern "C" void getDoor__15dStage_roomDt_cCFv();
|
||||
extern "C" void setMapPath__15dStage_roomDt_cFPv();
|
||||
extern "C" void getMapPath__15dStage_roomDt_cFv();
|
||||
extern "C" void setElst__15dStage_roomDt_cFP13dStage_Elst_c();
|
||||
extern "C" void getElst__15dStage_roomDt_cFv();
|
||||
extern "C" void setCamera__16dStage_stageDt_cFP18stage_camera_class();
|
||||
extern "C" void getCamera__16dStage_stageDt_cCFv();
|
||||
extern "C" void setArrow__16dStage_stageDt_cFP17stage_arrow_class();
|
||||
extern "C" void getArrow__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPlayer__16dStage_stageDt_cFP17stage_actor_class();
|
||||
extern "C" void setPlayerNum__16dStage_stageDt_cFUs();
|
||||
extern "C" void getPlayerNum__16dStage_stageDt_cCFv();
|
||||
extern "C" void setRoom__16dStage_stageDt_cFP14roomRead_class();
|
||||
extern "C" void setMapInfo__16dStage_stageDt_cFP20stage_map_info_class();
|
||||
extern "C" void getMapInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMapInfoBase__16dStage_stageDt_cFP26stage_map_info_dummy_class();
|
||||
extern "C" void setPaletteInfo__16dStage_stageDt_cFP24stage_palette_info_class();
|
||||
extern "C" void getPaletteInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPselectInfo__16dStage_stageDt_cFP24stage_pselect_info_class();
|
||||
extern "C" void getPselectInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setEnvrInfo__16dStage_stageDt_cFP21stage_envr_info_class();
|
||||
extern "C" void getEnvrInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setVrboxInfo__16dStage_stageDt_cFP22stage_vrbox_info_class();
|
||||
extern "C" void getVrboxInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setVrboxcolInfo__16dStage_stageDt_cFP25stage_vrboxcol_info_class();
|
||||
extern "C" void getVrboxcolInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPlightInfo__16dStage_stageDt_cFP23stage_plight_info_class();
|
||||
extern "C" void getPlightInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPaletteNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getPaletteNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPselectNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getPselectNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setEnvrNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getEnvrNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setVrboxNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getVrboxNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setVrboxcolNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getVrboxcolNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setLightVecInfo__16dStage_stageDt_cFP30stage_pure_lightvec_info_class();
|
||||
extern "C" void getLightVecInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setLightVecInfoNum__16dStage_stageDt_cFi();
|
||||
extern "C" void getLightVecInfoNum__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPlightNumInfo__16dStage_stageDt_cFi();
|
||||
extern "C" void getPlightNumInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setStagInfo__16dStage_stageDt_cFP21stage_stag_info_class();
|
||||
extern "C" void setSclsInfo__16dStage_stageDt_cFP27stage_scls_info_dummy_class();
|
||||
extern "C" void setPntInfo__16dStage_stageDt_cFP13dStage_dPnt_c();
|
||||
extern "C" void getPntInf__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPathInfo__16dStage_stageDt_cFP14dStage_dPath_c();
|
||||
extern "C" void getPathInf__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPnt2Info__16dStage_stageDt_cFP13dStage_dPnt_c();
|
||||
extern "C" void getPnt2Inf__16dStage_stageDt_cCFv();
|
||||
extern "C" void setPath2Info__16dStage_stageDt_cFP14dStage_dPath_c();
|
||||
extern "C" void getPath2Inf__16dStage_stageDt_cCFv();
|
||||
extern "C" void setSoundInf__16dStage_stageDt_cFP18dStage_SoundInfo_c();
|
||||
extern "C" void getSoundInf__16dStage_stageDt_cCFv();
|
||||
extern "C" void setSoundInfCL__16dStage_stageDt_cFP18dStage_SoundInfo_c();
|
||||
extern "C" void getSoundInfCL__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMapEventInfo__16dStage_stageDt_cFP21dStage_MapEventInfo_c();
|
||||
extern "C" void getMapEventInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setFileList2Info__16dStage_stageDt_cFP21dStage_FileList2_dt_c();
|
||||
extern "C" void getFileList2Info__16dStage_stageDt_cCFv();
|
||||
extern "C" void setFileListInfo__16dStage_stageDt_cFP20dStage_FileList_dt_c();
|
||||
extern "C" void getFileListInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setFloorInfo__16dStage_stageDt_cFP18dStage_FloorInfo_c();
|
||||
extern "C" void getFloorInfo__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMemoryConfig__16dStage_stageDt_cFP21dStage_MemoryConfig_c();
|
||||
extern "C" void getMemoryConfig__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMemoryMap__16dStage_stageDt_cFP18dStage_MemoryMap_c();
|
||||
extern "C" void getMemoryMap__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMulti__16dStage_stageDt_cFP14dStage_Multi_c();
|
||||
extern "C" void getMulti__16dStage_stageDt_cCFv();
|
||||
extern "C" void getOldMulti__16dStage_stageDt_cCFv();
|
||||
extern "C" void setLbnk__16dStage_stageDt_cFP13dStage_Lbnk_c();
|
||||
extern "C" void getLbnk__16dStage_stageDt_cCFv();
|
||||
extern "C" void setTresure__16dStage_stageDt_cFP19stage_tresure_class();
|
||||
extern "C" void getTresure__16dStage_stageDt_cCFv();
|
||||
extern "C" void setDMap__16dStage_stageDt_cFP13dStage_DMap_c();
|
||||
extern "C" void getDMap__16dStage_stageDt_cCFv();
|
||||
extern "C" void setDrTg__16dStage_stageDt_cFP16stage_tgsc_class();
|
||||
extern "C" void getDrTg__16dStage_stageDt_cCFv();
|
||||
extern "C" void setDoor__16dStage_stageDt_cFP16stage_tgsc_class();
|
||||
extern "C" void getDoor__16dStage_stageDt_cCFv();
|
||||
extern "C" void setMapPath__16dStage_stageDt_cFPv();
|
||||
extern "C" bool getMapPath__16dStage_stageDt_cFv();
|
||||
extern "C" void setElst__16dStage_stageDt_cFP13dStage_Elst_c();
|
||||
extern "C" void __sinit_d_stage_cpp();
|
||||
extern "C" void func_80028328();
|
||||
extern "C" void __dt__19dStage_roomStatus_cFv();
|
||||
extern "C" void __ct__19dStage_roomStatus_cFv();
|
||||
extern "C" void __dt__19dStage_KeepDoorInfoFv();
|
||||
extern "C" void __dt__21stage_tgsc_data_classFv();
|
||||
extern "C" void __ct__21stage_tgsc_data_classFv();
|
||||
extern "C" extern char const* const d_d_stage__stringBase0;
|
||||
extern "C" u8 mMemoryBlock__20dStage_roomControl_c[76];
|
||||
extern "C" u8 mArcBank__20dStage_roomControl_c[320];
|
||||
extern "C" u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" u8 mProcID__20dStage_roomControl_c[4];
|
||||
extern "C" u8 mArcBankName__20dStage_roomControl_c[4];
|
||||
extern "C" u8 mArcBankData__20dStage_roomControl_c[4];
|
||||
extern "C" u8 m_roomDzs__20dStage_roomControl_c[8];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" JKRHeap* mDoExt_getArchiveHeap__Fv();
|
||||
extern "C" void mDoExt_destroyExpHeap__FP10JKRExpHeap(JKRExpHeap*);
|
||||
extern "C" void __ct__11J3DLightObjFv();
|
||||
extern "C" void getFileListInfo__15dStage_roomDt_cCFv();
|
||||
extern "C" void fopAcM_FastCreate__FsPFPv_iPvPv();
|
||||
extern "C" void fopAcM_CreateAppend__Fv();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void fopCamM_Create__FisPv();
|
||||
extern "C" void fopScnM_SearchByID__FUi();
|
||||
extern "C" void fopScnM_CreateReq__FssUsUl();
|
||||
extern "C" void fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i();
|
||||
extern "C" void fopMsgM_Create__FsPFPv_iPv();
|
||||
extern "C" void fpcLy_CurrentLayer__Fv();
|
||||
extern "C" void fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv();
|
||||
extern "C" void getLayerNo__14dComIfG_play_cFi();
|
||||
extern "C" void dComIfGp_setNextStage__FPCcsScScfUliScsii();
|
||||
extern "C" void dComIfG_getStageRes__FPCc();
|
||||
extern "C" void dComIfG_getOldStageRes__FPCc();
|
||||
extern "C" void check__7daSus_cFScRC4cXyz();
|
||||
extern "C" void execute__7daSus_cFv();
|
||||
extern "C" void dLib_getExpandSizeFromAramArchive__FP14JKRAramArchivePCc();
|
||||
extern "C" void init__12dSv_danBit_cFSc();
|
||||
extern "C" void clearRoomSwitch__13dSv_zoneBit_cFv();
|
||||
extern "C" void clearRoomItem__13dSv_zoneBit_cFv();
|
||||
extern "C" void getSave__10dSv_info_cFi();
|
||||
extern "C" void putSave__10dSv_info_cFi();
|
||||
extern "C" void initZone__10dSv_info_cFv();
|
||||
extern "C" void isActor__10dSv_info_cCFii();
|
||||
extern "C" void syncRes__14dRes_control_cFPCcP11dRes_info_ci();
|
||||
extern "C" void deleteRes__14dRes_control_cFPCcP11dRes_info_ci();
|
||||
extern "C" void getResInfo__14dRes_control_cFPCcP11dRes_info_ci();
|
||||
extern "C" void setPointer__8dMpath_cFPQ211dDrawPath_c10room_classPScPSc();
|
||||
extern "C" void setPointer__8dMpath_cFScPvi();
|
||||
extern "C" void create__16dEvent_manager_cFv();
|
||||
extern "C" void remove__16dEvent_manager_cFv();
|
||||
extern "C" void GetExitId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetRoomId__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void addData__7dTres_cFPQ27dTres_c10list_classSc();
|
||||
extern "C" void dKy_set_nexttime__Ff();
|
||||
extern "C" void init__12dSvBit_HIO_cFv();
|
||||
extern "C" void memalignB__3cMlFiUl();
|
||||
extern "C" void alloc__7JKRHeapFUliP7JKRHeap();
|
||||
extern "C" void alloc__7JKRHeapFUli();
|
||||
extern "C" void free__7JKRHeapFPvP7JKRHeap();
|
||||
extern "C" void free__7JKRHeapFPv();
|
||||
extern "C" void* __nwa__FUlP7JKRHeapi();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __dla__FPv();
|
||||
extern "C" void create__10JKRExpHeapFUlP7JKRHeapb();
|
||||
extern "C" void __as__12J3DLightInfoFRC12J3DLightInfo();
|
||||
extern "C" void __register_global_object();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern J3DLightInfo const j3dDefaultLightInfo;
|
||||
extern "C" extern dSvBit_HIO_c g_save_bit_HIO;
|
||||
extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
void dStage_nextStage_c::set(const char* i_stage, s8 i_roomId, s16 i_point, s8 i_layer, s8 i_wipe,
|
||||
u8 i_speed) {
|
||||
if (!enabled) {
|
||||
|
|
@ -1692,15 +1304,6 @@ char* dStage_roomControl_c::getArcBank(int i_bank) {
|
|||
return mArcBank[i_bank];
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80378AEF = "";
|
||||
SECTION_DEAD static char const* const stringBase_80378AF0 =
|
||||
"Bank[%d] : %s.arc Sync Read Error !!\n";
|
||||
#pragma pop
|
||||
|
||||
/* 80024954-80024A34 01F294 00E0+00 0/0 2/2 0/2 .text resetArchiveBank__20dStage_roomControl_cFi
|
||||
*/
|
||||
bool dStage_roomControl_c::resetArchiveBank(int i_bank) {
|
||||
|
|
@ -1811,8 +1414,8 @@ void dStage_stageDt_c::init() {
|
|||
mDrTg = NULL;
|
||||
mDoor = NULL;
|
||||
mElst = NULL;
|
||||
field_0x56 = 0;
|
||||
field_0x58 = 0;
|
||||
mWorldRollAngleX = 0;
|
||||
mWorldRollDirAngleY = 0;
|
||||
}
|
||||
|
||||
void dStage_roomDt_c::initFileList2() {
|
||||
|
|
@ -3074,13 +2677,6 @@ int dStage_changeSceneExitId(cBgS_PolyInfo& param_0, f32 speed, u32 mode, s8 roo
|
|||
return dStage_changeScene(dComIfG_Bgsp().GetExitId(param_0), speed, mode, roomNo, angle, -1);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C94-80451C98 000294 0004+00 2/2 0/0 0/0 .sdata2 @5315 */
|
||||
SECTION_SDATA2 static f32 lit_5315 = 15.0f;
|
||||
|
||||
/* 80451C98-80451CA0 000298 0008+00 2/2 0/0 0/0 .sdata2 @5317 */
|
||||
SECTION_SDATA2 static f64 lit_5317 = 4503601774854144.0 /* cast s32 to float */;
|
||||
|
||||
/* 80027170-800272E0 021AB0 0170+00 1/1 10/10 63/63 .text dStage_changeScene__FifUlScsi
|
||||
*/
|
||||
int dStage_changeScene(int i_exitId, f32 speed, u32 mode, s8 room_no, s16 angle, int param_5) {
|
||||
|
|
@ -3132,16 +2728,8 @@ stage_scls_info_dummy_class* dStage_stageDt_c::getSclsInfo() const {
|
|||
return mSclsInfo;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80378B8F = "%s: %d: シーンリストがありません。\n";
|
||||
SECTION_DEAD static char const* const stringBase_80378BB3 = "d_stage.cpp";
|
||||
#pragma pop
|
||||
|
||||
/* 800272F0-800274B0 021C30 01C0+00 0/0 1/1 0/0 .text dStage_changeScene4Event__FiScibfUlsi */
|
||||
#ifdef NONMATCHING
|
||||
// NONMATCHING regalloc
|
||||
int dStage_changeScene4Event(int i_exitId, s8 room_no, int i_wipe, bool param_3, f32 speed,
|
||||
u32 mode, s16 angle, int param_7) {
|
||||
stage_scls_info_dummy_class* scls;
|
||||
|
|
@ -3189,17 +2777,11 @@ int dStage_changeScene4Event(int i_exitId, s8 room_no, int i_wipe, bool param_3,
|
|||
dKy_set_nexttime(15.0f * timeH);
|
||||
}
|
||||
|
||||
dComIfGp_setNextStage(scls_info->mStage, scls_info->mStart, (s8)scls_info->mRoom, (s8)layer,
|
||||
dComIfGp_setNextStage(scls_info->mStage, scls_info->mStart, (s8)scls_info->mRoom, layer,
|
||||
speed, mode, 1, wipe == 15 ? 0 : wipe, angle, param_3 ? 1 : 0,
|
||||
wipe_time);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
int dStage_changeScene4Event(int param_0, s8 param_1, int param_2, bool param_3, f32 param_4,
|
||||
u32 param_5, s16 param_6, int param_7) {
|
||||
// NONMATCHING
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 800274B0-80027524 021DF0 0074+00 0/0 1/1 0/0 .text dStage_restartRoom__FUlUli */
|
||||
void dStage_restartRoom(u32 roomParam, u32 mode, int param_2) {
|
||||
|
|
@ -3921,4 +3503,4 @@ void dStage_stageDt_c::setElst(dStage_Elst_c* i_Elst) {
|
|||
static u8 pad_80450D7C[4];
|
||||
#pragma pop
|
||||
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
/* 80378A50-80378A50 0050B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
|
|
|||
|
|
@ -22,253 +22,6 @@
|
|||
#define MAKE_ITEM_PARAMS(itemNo, itemBitNo, param_2, param_3) \
|
||||
((itemNo & 0xFF) << 0 | (itemBitNo & 0xFF) << 0x8 | param_2 << 0x10 | (param_3 & 0xF) << 0x18)
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void fopAcM_FastCreate__FsPFPv_iPvPv();
|
||||
extern "C" void fopAcM_setStageLayer__FPv();
|
||||
extern "C" void fopAcM_setRoomLayer__FPvi();
|
||||
extern "C" void fopAcM_SearchByID__FUiPP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_SearchByName__FsPP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_CreateAppend__Fv();
|
||||
extern "C" static void createAppend__FUsUlPC4cXyziPC5csXyzPC4cXyzScUi();
|
||||
extern "C" void fopAcM_Log__FPC10fopAc_ac_cPCc();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_delete__FUi();
|
||||
extern "C" void fopAcM_create__FsUsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i();
|
||||
extern "C" void fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc();
|
||||
extern "C" void fopAcM_fastCreate__FsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_iPv();
|
||||
extern "C" void fopAcM_fastCreate__FPCcUlPC4cXyziPC5csXyzPC4cXyzPFPv_iPv();
|
||||
extern "C" void fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i();
|
||||
extern "C" void fopAcM_createChildFromOffset__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i();
|
||||
extern "C" void fopAcM_DeleteHeap__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_callCallback__FP10fopAc_ac_cPFP10fopAc_ac_c_iP7JKRHeap();
|
||||
extern "C" void fopAcM_entrySolidHeap___FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void fopAcM_SetMin__FP10fopAc_ac_cfff();
|
||||
extern "C" void fopAcM_SetMax__FP10fopAc_ac_cfff();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void fopAcM_setCullSizeSphere__FP10fopAc_ac_cffff();
|
||||
extern "C" void fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
|
||||
extern "C" void fopAcM_addAngleY__FP10fopAc_ac_css();
|
||||
extern "C" void fopAcM_calcSpeed__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_posMove__FP10fopAc_ac_cPC4cXyz();
|
||||
extern "C" void fopAcM_posMoveF__FP10fopAc_ac_cPC4cXyz();
|
||||
extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_searchActorAngleX__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_seenActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_searchActorDistance2__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_searchActorDistanceXZ__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_searchActorDistanceXZ2__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_rollPlayerCrash__FPC10fopAc_ac_cfUlffif();
|
||||
extern "C" void fopAcM_checkCullingBox__FPA4_fffffff();
|
||||
extern "C" void fopAcM_cullingCheck__FPC10fopAc_ac_c();
|
||||
extern "C" void event_second_actor__FUs();
|
||||
extern "C" void fopAcM_orderTalkEvent__FP10fopAc_ac_cP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderTalkItemBtnEvent__FUsP10fopAc_ac_cP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderDoorEvent__FP10fopAc_ac_cP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderCatchEvent__FP10fopAc_ac_cP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderOtherEvent__FP10fopAc_ac_cPCcUsUsUs();
|
||||
extern "C" void fopAcM_orderOtherEvent__FP10fopAc_ac_cP10fopAc_ac_cPCcUsUsUs();
|
||||
extern "C" void fopAcM_orderChangeEventId__FP10fopAc_ac_csUsUs();
|
||||
extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs();
|
||||
extern "C" void fopAcM_orderMapToolEvent__FP10fopAc_ac_cUcsUsUsUs();
|
||||
extern "C" void fopAcM_orderMapToolAutoNextEvent__FP10fopAc_ac_cUcsUsUsUs();
|
||||
extern "C" void fopAcM_orderPotentialEvent__FP10fopAc_ac_cUsUsUs();
|
||||
extern "C" void fopAcM_orderItemEvent__FP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_orderTreasureEvent__FP10fopAc_ac_cP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_getTalkEventPartner__FPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_getItemEventPartner__FPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_getEventPartner__FPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_createItemForPresentDemo__FPC4cXyziUciiPC5csXyzPC4cXyz();
|
||||
extern "C" void fopAcM_createItemForTrBoxDemo__FPC4cXyziiiPC5csXyzPC4cXyz();
|
||||
extern "C" void fopAcM_getItemNoFromTableNo__FUc();
|
||||
extern "C" void fopAcM_createItemFromEnemyID__FUcPC4cXyziiPC5csXyzPC4cXyzPfPf();
|
||||
extern "C" void fopAcM_createItemFromTable__FPC4cXyziiiPC5csXyziPC4cXyzPfPfb();
|
||||
extern "C" void fopAcM_createDemoItem__FPC4cXyziiPC5csXyziPC4cXyzUc();
|
||||
extern "C" void fopAcM_createItemForBoss__FPC4cXyziiPC5csXyzPC4cXyzffi();
|
||||
extern "C" void fopAcM_createItemForMidBoss__FPC4cXyziiPC5csXyzPC4cXyzii();
|
||||
extern "C" void fopAcM_createItemForDirectGet__FPC4cXyziiPC5csXyzPC4cXyzff();
|
||||
extern "C" void fopAcM_createItemForSimpleDemo__FPC4cXyziiPC5csXyzPC4cXyzff();
|
||||
extern "C" void fopAcM_createItem__FPC4cXyziiiPC5csXyzPC4cXyzi();
|
||||
extern "C" void fopAcM_fastCreateItem2__FPC4cXyziiiiPC5csXyzPC4cXyz();
|
||||
extern "C" void fopAcM_fastCreateItem__FPC4cXyziiPC5csXyzPC4cXyzPfPfiiPFPv_i();
|
||||
extern "C" void fopAcM_createBokkuri__FUsPC4cXyziiiPC4cXyzii();
|
||||
extern "C" void fopAcM_createWarpHole__FPC4cXyzPC5csXyziUcUcUc();
|
||||
extern "C" void enemySearchJugge__FPvPv();
|
||||
extern "C" void fopAcM_myRoomSearchEnemy__FSc();
|
||||
extern "C" void fopAcM_createDisappear__FPC10fopAc_ac_cPC4cXyzUcUcUc();
|
||||
extern "C" void fopAcM_setCarryNow__FP10fopAc_ac_ci();
|
||||
extern "C" void fopAcM_cancelCarryNow__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_otoCheck__FPC10fopAc_ac_cf();
|
||||
extern "C" void fopAcM_otherBgCheck__FPC10fopAc_ac_cPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_wayBgCheck__FPC10fopAc_ac_cff();
|
||||
extern "C" void fopAcM_plAngleCheck__FPC10fopAc_ac_cs();
|
||||
extern "C" void fopAcM_effSmokeSet1__FPUlPUlPC4cXyzPC5csXyzfPC12dKy_tevstr_ci();
|
||||
extern "C" void fopAcM_effHamonSet__FPUlPC4cXyzff();
|
||||
extern "C" void fopAcM_carryOffRevise__FP10fopAc_ac_c();
|
||||
extern "C" static void vectle_calc__FPC10DOUBLE_POSP4cXyz();
|
||||
extern "C" static void get_vectle_calc__FPC4cXyzPC4cXyzP4cXyz();
|
||||
extern "C" void fopAcM_setEffectMtx__FPC10fopAc_ac_cPC12J3DModelData();
|
||||
extern "C" void fopAcM_getProcNameString__FPC10fopAc_ac_c();
|
||||
extern "C" void fopAcM_findObjectCB__FPC10fopAc_ac_cPv();
|
||||
extern "C" void fopAcM_searchFromName__FPCcUlUl();
|
||||
extern "C" void fopAcM_findObject4EventCB__FP10fopAc_ac_cPv();
|
||||
extern "C" void fopAcM_searchFromName4Event__FPCcs();
|
||||
extern "C" void fopAcM_getWaterY__FPC4cXyzPf();
|
||||
extern "C" void fpoAcM_relativePos__FPC10fopAc_ac_cPC4cXyzP4cXyz();
|
||||
extern "C" void fopAcM_getWaterStream__FPC4cXyzRC13cBgS_PolyInfoP4cXyzPii();
|
||||
extern "C" void fopAcM_getPolygonAngle__FRC13cBgS_PolyInfos();
|
||||
extern "C" void __dt__8cM3dGPlaFv();
|
||||
extern "C" void fopAcM_getPolygonAngle__FPC8cM3dGPlas();
|
||||
extern "C" void lineCheck__11fopAcM_lc_cFPC4cXyzPC4cXyzPC10fopAc_ac_c();
|
||||
extern "C" void gndCheck__11fopAcM_gc_cFPC4cXyz();
|
||||
extern "C" void roofCheck__11fopAcM_rc_cFPC4cXyz();
|
||||
extern "C" void waterCheck__11fopAcM_wt_cFPC4cXyz();
|
||||
extern "C" void fopAcM_initManager__Fv();
|
||||
extern "C" void __sinit_f_op_actor_mng_cpp();
|
||||
extern "C" void __dt__11dBgS_WtrChkFv();
|
||||
extern "C" void __dt__15dBgS_ObjRoofChkFv();
|
||||
extern "C" void __dt__14dBgS_ObjGndChkFv();
|
||||
extern "C" void __dt__5l_HIOFv();
|
||||
extern "C" static void func_8001E0D4();
|
||||
extern "C" static void func_8001E0DC();
|
||||
extern "C" static void func_8001E0E4();
|
||||
extern "C" static void func_8001E0EC();
|
||||
extern "C" static void func_8001E0F4();
|
||||
extern "C" static void func_8001E0FC();
|
||||
extern "C" static void func_8001E104();
|
||||
extern "C" static void func_8001E10C();
|
||||
extern "C" static void func_8001E114();
|
||||
extern "C" void onFrollCrashFlg__9daPy_py_cFUci();
|
||||
extern "C" int checkWolfDash__9daPy_py_cCFv();
|
||||
extern "C" int checkFrontRoll__9daPy_py_cCFv();
|
||||
extern "C" u32 checkHorseRide__9daPy_py_cCFv();
|
||||
extern "C" s32 getGrabActorID__9daPy_py_cCFv();
|
||||
extern "C" extern char const* const f_op_f_op_actor_mng__stringBase0;
|
||||
extern "C" u8 mLineCheck__11fopAcM_lc_c[112];
|
||||
extern "C" u8 mGndCheck__11fopAcM_gc_c[84];
|
||||
extern "C" u8 mRoofCheck__11fopAcM_rc_c[80];
|
||||
extern "C" u8 mWaterCheck__11fopAcM_wt_c[84 + 4 /* padding */];
|
||||
extern "C" f32 mGroundY__11fopAcM_gc_c;
|
||||
extern "C" f32 mRoofY__11fopAcM_rc_c;
|
||||
extern "C" f32 mWaterY__11fopAcM_wt_c[1 + 1 /* padding */];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_YrotS__FPA4_fs();
|
||||
extern "C" void fopAcIt_Judge__FPFPvPv_PvPv();
|
||||
extern "C" void fopScnM_SearchByID__FUi();
|
||||
extern "C" void fpcBs_Is_JustOfType__Fii();
|
||||
extern "C" void fpcEx_IsExist__FUi();
|
||||
extern "C" void fpcLy_CurrentLayer__Fv();
|
||||
extern "C" void fpcM_Delete__FPv();
|
||||
extern "C" void fpcM_IsCreating__FUi();
|
||||
extern "C" void fpcM_FastCreate__FsPFPv_iPvPv();
|
||||
extern "C" void fpcM_JudgeInLayer__FUiPFPvPv_PvPv();
|
||||
extern "C" void fpcPi_Change__FP22process_priority_classUiUsUs();
|
||||
extern "C" void fpcSch_JudgeForPName__FPvPv();
|
||||
extern "C" void fpcSch_JudgeByID__FPvPv();
|
||||
extern "C" void fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv();
|
||||
extern "C" void dStage_searchName__FPCc();
|
||||
extern "C" void dStage_getName2__FsSc();
|
||||
extern "C" void checkArea__13daTagStream_cFPC4cXyz();
|
||||
extern "C" void onActor__10dSv_info_cFii();
|
||||
extern "C" void order__14dEvt_control_cFUsUsUsUsPvPvsUc();
|
||||
extern "C" void convPId__14dEvt_control_cFUi();
|
||||
extern "C" void searchMapEventData__14dEvt_control_cFUcl();
|
||||
extern "C" void setGtItm__14dEvt_control_cFUc();
|
||||
extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cUc();
|
||||
extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc();
|
||||
extern "C" void getEventPrio__16dEvent_manager_cFP10fopAc_ac_cs();
|
||||
extern "C" void getEmitter__Q213dPa_control_c7level_cFUl();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void
|
||||
setSimpleFoot__13dPa_control_cFUlPUlR13cBgS_PolyInfoPC4cXyzPC12dKy_tevstr_ciPC5csXyzPC4cXyzP18dPa_levelEcallBackScPC4cXyz();
|
||||
extern "C" void dPath_GetPolyRoomPathVec__FRC13cBgS_PolyInfoP4cXyzPi();
|
||||
extern "C" void LineCross__4cBgSFP11cBgS_LinChk();
|
||||
extern "C" void GroundCross__4cBgSFP11cBgS_GndChk();
|
||||
extern "C" void ChkPolySafe__4cBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void GetTriPla__4cBgSCFRC13cBgS_PolyInfoP8cM3dGPla();
|
||||
extern "C" void GetPolyAtt0__4dBgSFRC13cBgS_PolyInfo();
|
||||
extern "C" void RoofChk__4dBgSFP12dBgS_RoofChk();
|
||||
extern "C" void SplGrpChk__4dBgSFP14dBgS_SplGrpChk();
|
||||
extern "C" void __ct__11dBgS_GndChkFv();
|
||||
extern "C" void __dt__11dBgS_GndChkFv();
|
||||
extern "C" void __ct__11dBgS_LinChkFv();
|
||||
extern "C" void __dt__11dBgS_LinChkFv();
|
||||
extern "C" void Set__11dBgS_LinChkFPC4cXyzPC4cXyzPC10fopAc_ac_c();
|
||||
extern "C" void __ct__14dBgS_ObjLinChkFv();
|
||||
extern "C" void __dt__14dBgS_ObjLinChkFv();
|
||||
extern "C" void Set__14dBgS_SplGrpChkFR4cXyzf();
|
||||
extern "C" void __dt__14dBgS_SplGrpChkFv();
|
||||
extern "C" void SetObj__16dBgS_PolyPassChkFv();
|
||||
extern "C" void __ct__12dBgS_RoofChkFv();
|
||||
extern "C" void __dt__12dBgS_RoofChkFv();
|
||||
extern "C" void __ct__11dBgS_WtrChkFv();
|
||||
extern "C" void isHeart__FUc();
|
||||
extern "C" void check_itemno__Fi();
|
||||
extern "C" void dCam_getCamera__Fv();
|
||||
extern "C" void dKy_Sound_get__Fv();
|
||||
extern "C" void memalignB__3cMlFiUl();
|
||||
extern "C" void __mi__4cXyzCFRC3Vec();
|
||||
extern "C" void normalizeZP__4cXyzFv();
|
||||
extern "C" void atan2sX_Z__4cXyzCFv();
|
||||
extern "C" void __ct__5csXyzFsss();
|
||||
extern "C" void cM_atan2s__Fff();
|
||||
extern "C" void cM_rndF__Ff();
|
||||
extern "C" void cM_rndFX__Ff();
|
||||
extern "C" void SetPos__11cBgS_GndChkFPC4cXyz();
|
||||
extern "C" void cLib_memSet__FPviUl();
|
||||
extern "C" void cLib_chaseAngleS__FPsss();
|
||||
extern "C" void cLib_targetAngleY__FPC3VecPC3Vec();
|
||||
extern "C" void MtxPosition__FP4cXyzP4cXyz();
|
||||
extern "C" void calcViewFrustum__11J3DUClipperFv();
|
||||
extern "C" void clip__11J3DUClipperCFPA4_Cf3Vecf();
|
||||
extern "C" void clip__11J3DUClipperCFPA4_CfP3VecP3Vec();
|
||||
extern "C" void getFreeSize__7JKRHeapFv();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void setEffectMtx__13J3DTexMtxInfoFPA4_f();
|
||||
extern "C" void __register_global_object();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _savegpr_23();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" void _restgpr_23();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" f32 Zero__4cXyz[3];
|
||||
extern "C" u8 BaseY__4cXyz[12];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" f32 mSystemFar__14mDoLib_clipper;
|
||||
extern "C" u8 mProcID__20dStage_roomControl_c[4];
|
||||
extern "C" void* mClipper__14mDoLib_clipper;
|
||||
extern "C" u8 m_top__13daTagStream_c[4];
|
||||
extern "C" u8 mData__12dEnemyItem_c[4 + 4 /* padding */];
|
||||
extern "C" u8 Zero__5csXyz[4];
|
||||
extern "C" extern u8 data_80451164[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 800198A4-800198C4 0141E4 0020+00 0/0 1/1 0/0 .text fopAcM_FastCreate__FsPFPv_iPvPv */
|
||||
void* fopAcM_FastCreate(s16 i_procName, FastCreateReqFunc i_createFunc, void* i_createData,
|
||||
void* i_data) {
|
||||
|
|
@ -792,15 +545,6 @@ s16 fopAcM_searchActorAngleY(const fopAc_ac_c* i_actorA, const fopAc_ac_c* i_act
|
|||
return cLib_targetAngleY(fopAcM_GetPosition_p(i_actorA), fopAcM_GetPosition_p(i_actorB));
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C04-80451C08 000204 0004+00 13/13 0/0 0/0 .sdata2 @4645 */
|
||||
SECTION_SDATA2 static u8 lit_4645[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
|
||||
/* 8001A738-8001A79C 015078 0064+00 0/0 0/0 13/13 .text
|
||||
* fopAcM_searchActorAngleX__FPC10fopAc_ac_cPC10fopAc_ac_c */
|
||||
s16 fopAcM_searchActorAngleX(const fopAc_ac_c* i_actorA, const fopAc_ac_c* i_actorB) {
|
||||
|
|
@ -821,25 +565,13 @@ s32 fopAcM_seenActorAngleY(const fopAc_ac_c* i_actorA, const fopAc_ac_c* i_actor
|
|||
return abs((s16)(target_angle - i_actorA->shape_angle.y));
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C08-80451C10 000208 0008+00 3/3 0/0 0/0 .sdata2 @4745 */
|
||||
SECTION_SDATA2 static f64 lit_4745 = 0.5;
|
||||
|
||||
/* 80451C10-80451C18 000210 0008+00 3/3 0/0 0/0 .sdata2 @4746 */
|
||||
SECTION_SDATA2 static f64 lit_4746 = 3.0;
|
||||
|
||||
/* 80451C18-80451C20 000218 0008+00 4/4 0/0 0/0 .sdata2 @4747 */
|
||||
SECTION_SDATA2 static u8 lit_4747[8] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
inline f32 local_sqrtf(f32 mag) {
|
||||
if (mag > FLOAT_LABEL(lit_4645)) {
|
||||
if (mag > 0.0f) {
|
||||
f64 tmpd = __frsqrte(mag);
|
||||
tmpd = DOUBLE_LABEL(lit_4745) * tmpd * (DOUBLE_LABEL(lit_4746) - tmpd * tmpd * mag);
|
||||
tmpd = DOUBLE_LABEL(lit_4745) * tmpd * (DOUBLE_LABEL(lit_4746) - tmpd * tmpd * mag);
|
||||
return DOUBLE_LABEL(lit_4745) * tmpd * (DOUBLE_LABEL(lit_4746) - tmpd * tmpd * mag) * mag;
|
||||
} else if (mag < DOUBLE_LABEL(lit_4747)) {
|
||||
tmpd = 0.5 * tmpd * (3.0f - tmpd * tmpd * mag);
|
||||
tmpd = 0.5 * tmpd * (3.0f - tmpd * tmpd * mag);
|
||||
return 0.5 * tmpd * (3.0f - tmpd * tmpd * mag) * mag;
|
||||
} else if (mag < 0.0) {
|
||||
return NAN;
|
||||
} else if (fpclassify(mag) == 1) {
|
||||
return NAN;
|
||||
|
|
@ -1020,8 +752,7 @@ static cull_sphere l_cullSizeSphere[] = {
|
|||
};
|
||||
|
||||
/* 8001ACEC-8001B058 01562C 036C+00 0/0 1/1 1/1 .text fopAcM_cullingCheck__FPC10fopAc_ac_c */
|
||||
// some stack / extra instructions regarding mDoLib_clipper::clip
|
||||
#ifdef NONMATCHING
|
||||
// NONMATCHING some stack / extra instructions regarding mDoLib_clipper::clip
|
||||
s32 fopAcM_cullingCheck(fopAc_ac_c const* i_actor) {
|
||||
MtxP mtx_p;
|
||||
if (fopAcM_GetMtx(i_actor) == NULL) {
|
||||
|
|
@ -1056,11 +787,11 @@ s32 fopAcM_cullingCheck(fopAc_ac_c const* i_actor) {
|
|||
|
||||
if (fopAcM_getCullSizeFar(i_actor) > 0.0f) {
|
||||
mDoLib_clipper::changeFar(cullsize_far * mDoLib_clipper::getFar());
|
||||
u32 ret = mDoLib_clipper::clip(mtx_p, &box->mMax, &box->mMin);
|
||||
u32 ret = mDoLib_clipper::clip(mtx_p, &box->max, &box->min);
|
||||
mDoLib_clipper::resetFar();
|
||||
return ret;
|
||||
} else {
|
||||
return mDoLib_clipper::clip(mtx_p, &box->mMax, &box->mMin);
|
||||
return mDoLib_clipper::clip(mtx_p, &box->max, &box->min);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
@ -1069,22 +800,22 @@ s32 fopAcM_cullingCheck(fopAc_ac_c const* i_actor) {
|
|||
mDoLib_clipper::changeFar(cullsize_far * mDoLib_clipper::getFar());
|
||||
|
||||
f32 radius = fopAcM_getCullSizeSphereR(i_actor);
|
||||
const Vec* center_p = fopAcM_getCullSizeSphereCenter(i_actor);
|
||||
const Vec& center_p = fopAcM_getCullSizeSphereCenter(i_actor);
|
||||
Vec center;
|
||||
center.x = center_p->x;
|
||||
center.y = center_p->y;
|
||||
center.z = center_p->z;
|
||||
center.x = center_p.x;
|
||||
center.y = center_p.y;
|
||||
center.z = center_p.z;
|
||||
|
||||
u32 ret = mDoLib_clipper::clip(mtx_p, center, radius);
|
||||
mDoLib_clipper::resetFar();
|
||||
return ret;
|
||||
} else {
|
||||
f32 radius = fopAcM_getCullSizeSphereR(i_actor);
|
||||
const Vec* center_p = fopAcM_getCullSizeSphereCenter(i_actor);
|
||||
const Vec& center_p = fopAcM_getCullSizeSphereCenter(i_actor);
|
||||
Vec center;
|
||||
center.x = center_p->x;
|
||||
center.y = center_p->y;
|
||||
center.z = center_p->z;
|
||||
center.x = center_p.x;
|
||||
center.y = center_p.y;
|
||||
center.z = center_p.z;
|
||||
return mDoLib_clipper::clip(mtx_p, center, radius);
|
||||
}
|
||||
} else {
|
||||
|
|
@ -1092,20 +823,15 @@ s32 fopAcM_cullingCheck(fopAc_ac_c const* i_actor) {
|
|||
|
||||
if (fopAcM_getCullSizeFar(i_actor) > 0.0f) {
|
||||
mDoLib_clipper::changeFar(cullsize_far * mDoLib_clipper::getFar());
|
||||
u32 ret = mDoLib_clipper::clip(mtx_p, sphere->mCenter, sphere->mRadius);
|
||||
u32 ret = mDoLib_clipper::clip(mtx_p, sphere->center, sphere->radius);
|
||||
mDoLib_clipper::resetFar();
|
||||
return ret;
|
||||
} else {
|
||||
return mDoLib_clipper::clip(mtx_p, sphere->mCenter, sphere->mRadius);
|
||||
return mDoLib_clipper::clip(mtx_p, sphere->center, sphere->radius);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
s32 fopAcM_cullingCheck(fopAc_ac_c const* param_0) {
|
||||
// NONMATCHING
|
||||
}
|
||||
#endif
|
||||
|
||||
/* 8001B058-8001B068 015998 0010+00 5/5 0/0 0/0 .text event_second_actor__FUs */
|
||||
void* event_second_actor(u16) {
|
||||
|
|
@ -1541,7 +1267,6 @@ s32 fopAcM_createItemFromEnemyID(u8 i_enemyID, cXyz const* i_pos, int i_itemBitN
|
|||
speedF, speedY, false);
|
||||
}
|
||||
|
||||
|
||||
/* 8001BF64-8001C078 0168A4 0114+00 1/1 0/0 11/11 .text
|
||||
* fopAcM_createItemFromTable__FPC4cXyziiiPC5csXyziPC4cXyzPfPfb */
|
||||
s32 fopAcM_createItemFromTable(cXyz const* i_pos, int i_tableNo, int i_itemBitNo, int i_roomNo,
|
||||
|
|
@ -1585,7 +1310,6 @@ s32 fopAcM_createItemFromTable(cXyz const* i_pos, int i_tableNo, int i_itemBitNo
|
|||
return fopAcM_GetID(ac);
|
||||
}
|
||||
|
||||
|
||||
/* 8001C078-8001C0D4 0169B8 005C+00 2/2 0/0 0/0 .text
|
||||
* fopAcM_createDemoItem__FPC4cXyziiPC5csXyziPC4cXyzUc */
|
||||
s32 fopAcM_createDemoItem(const cXyz* i_pos, int i_itemNo, int i_itemBitNo, const csXyz* i_angle,
|
||||
|
|
@ -1759,16 +1483,6 @@ void* fopAcM_fastCreateItem2(const cXyz* i_pos, int i_itemNo, int i_itemBitNo, i
|
|||
}
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C30-80451C34 000230 0004+00 1/1 0/0 0/0 .sdata2 @5808 */
|
||||
SECTION_SDATA2 static f32 lit_5808 = 2.0f;
|
||||
|
||||
/* 80451C34-80451C38 000234 0004+00 1/1 0/0 0/0 .sdata2 @5809 */
|
||||
SECTION_SDATA2 static f32 lit_5809 = 8192.0f;
|
||||
|
||||
/* 80451C38-80451C3C 000238 0004+00 4/4 0/0 0/0 .sdata2 @5810 */
|
||||
SECTION_SDATA2 static f32 lit_5810 = 1.0f;
|
||||
|
||||
/* 8001C5B0-8001C870 016EF0 02C0+00 3/3 0/0 4/4 .text
|
||||
* fopAcM_fastCreateItem__FPC4cXyziiPC5csXyzPC4cXyzPfPfiiPFPv_i */
|
||||
void* fopAcM_fastCreateItem(const cXyz* i_pos, int i_itemNo, int i_roomNo, const csXyz* i_angle,
|
||||
|
|
@ -1788,7 +1502,7 @@ void* fopAcM_fastCreateItem(const cXyz* i_pos, int i_itemNo, int i_roomNo, const
|
|||
u32 params = MAKE_ITEM_PARAMS(item_no, item_bit_no, 0xFF, param_9);
|
||||
|
||||
if (p_speedF != NULL && isHeart(i_itemNo)) {
|
||||
*p_speedF = lit_5808 * *p_speedF;
|
||||
*p_speedF = 2.0f * *p_speedF;
|
||||
}
|
||||
|
||||
switch (i_itemNo) {
|
||||
|
|
@ -1824,18 +1538,18 @@ void* fopAcM_fastCreateItem(const cXyz* i_pos, int i_itemNo, int i_roomNo, const
|
|||
angle = csXyz::Zero;
|
||||
}
|
||||
angle.z = 0xFF;
|
||||
angle.y += (s16)cM_rndFX(lit_5809);
|
||||
angle.y += (s16)cM_rndFX(0x2000);
|
||||
|
||||
fopAc_ac_c* actor = (fopAc_ac_c*)fopAcM_fastCreate(
|
||||
PROC_ITEM, params, i_pos, i_roomNo, &angle, i_scale, -1, i_createFunc, NULL);
|
||||
|
||||
if (actor != NULL) {
|
||||
if (p_speedF != NULL) {
|
||||
actor->speedF = *p_speedF * (lit_5810 + cM_rndFX(0.3f));
|
||||
actor->speedF = *p_speedF * (1.0f + cM_rndFX(0.3f));
|
||||
}
|
||||
|
||||
if (p_speedY != NULL) {
|
||||
actor->speed.y = *p_speedY * (lit_5810 + cM_rndFX(0.2f));
|
||||
actor->speed.y = *p_speedY * (1.0f + cM_rndFX(0.2f));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1871,7 +1585,7 @@ s32 fopAcM_createBokkuri(u16 i_enemyNo, const cXyz* i_pos, int param_3, int para
|
|||
csXyz angle(0, 0, 0);
|
||||
if (param_6 != NULL) {
|
||||
angle.y = param_6->atan2sX_Z();
|
||||
angle.y += static_cast<s16>(2048.0f * cM_rndFX(FLOAT_LABEL(/* 1.0f */ lit_5810)));
|
||||
angle.y += static_cast<s16>(2048.0f * cM_rndFX(1.0f));
|
||||
param_8 = 1;
|
||||
}
|
||||
u32 actorParams = 0;
|
||||
|
|
@ -1984,11 +1698,6 @@ s32 fopAcM_otoCheck(fopAc_ac_c const* i_actor, f32 param_1) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C48-80451C4C 000248 0004+00 2/2 0/0 0/0 .sdata2 @6035 */
|
||||
SECTION_SDATA2 static f32 lit_6035 = 100.0f;
|
||||
|
||||
/* 8001CDFC-8001CED0 01773C 00D4+00 0/0 0/0 49/49 .text
|
||||
* fopAcM_otherBgCheck__FPC10fopAc_ac_cPC10fopAc_ac_c */
|
||||
s32 fopAcM_otherBgCheck(fopAc_ac_c const* param_0, fopAc_ac_c const* param_1) {
|
||||
|
|
@ -1997,7 +1706,7 @@ s32 fopAcM_otherBgCheck(fopAc_ac_c const* param_0, fopAc_ac_c const* param_1) {
|
|||
cXyz end;
|
||||
|
||||
end = param_1->current.pos;
|
||||
end.y += lit_6035;
|
||||
end.y += 100.0f;
|
||||
|
||||
start = param_0->current.pos;
|
||||
start.y = param_0->eyePos.y;
|
||||
|
|
@ -2022,7 +1731,7 @@ s32 fopAcM_wayBgCheck(fopAc_ac_c const* param_0, f32 param_1, f32 param_2) {
|
|||
start.y += param_2;
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, param_0->shape_angle.y);
|
||||
|
||||
offset.x = FLOAT_LABEL(lit_4645);
|
||||
offset.x = 0.0f;
|
||||
offset.y = 50.0f;
|
||||
offset.z = param_1;
|
||||
|
||||
|
|
@ -2090,35 +1799,21 @@ f32 fopAcM_gc_c::mGroundY;
|
|||
* fopAcM_effSmokeSet1__FPUlPUlPC4cXyzPC5csXyzfPC12dKy_tevstr_ci */
|
||||
void fopAcM_effSmokeSet1(u32* param_0, u32* param_1, cXyz const* param_2, csXyz const* param_3,
|
||||
f32 param_4, dKy_tevstr_c const* param_5, int param_6) {
|
||||
cXyz p2;
|
||||
f32 z = param_2->z;
|
||||
f32 y = FLOAT_LABEL(lit_6035) + param_2->y;
|
||||
p2.x = param_2->x;
|
||||
p2.y = y;
|
||||
p2.z = z;
|
||||
cXyz p2(param_2->x, param_2->y + 100.0f, param_2->z);
|
||||
if (fopAcM_gc_c::gndCheck(&p2)) {
|
||||
p2.y = fopAcM_gc_c::getGroundY();
|
||||
cXyz stack_18;
|
||||
stack_18.x = param_4;
|
||||
stack_18.y = param_4;
|
||||
stack_18.z = param_4;
|
||||
cXyz stack_18(param_4, param_4, param_4);
|
||||
*param_0 =
|
||||
dComIfGp_particle_setSimpleFoot(*param_0, param_1, *fopAcM_gc_c::getGroundCheck(), &p2,
|
||||
param_5, param_6, param_3, &stack_18, NULL, 0xff, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451C50-80451C54 000250 0004+00 1/1 0/0 0/0 .sdata2 hamon_name$6107 */
|
||||
SECTION_SDATA2 static u16 hamon_name[2] = {
|
||||
0x01B2,
|
||||
0x01B3,
|
||||
};
|
||||
|
||||
/* 8001D10C-8001D1F4 017A4C 00E8+00 0/0 1/1 41/41 .text fopAcM_effHamonSet__FPUlPC4cXyzff
|
||||
*/
|
||||
void fopAcM_effHamonSet(u32* param_0, cXyz const* param_1, f32 param_2, f32 emitRate) {
|
||||
cXyz tmp(param_2, param_2, param_2);
|
||||
static u16 const hamon_name[2] = {0x01B2, 0x01B3};
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
*param_0 = dComIfGp_particle_set(*param_0, hamon_name[i], param_1, NULL, &tmp);
|
||||
|
|
@ -2131,7 +1826,6 @@ void fopAcM_effHamonSet(u32* param_0, cXyz const* param_1, f32 param_2, f32 emit
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/* 8001D1F4-8001D1FC 017B34 0008+00 0/0 0/0 7/7 .text fopAcM_riverStream__FP4cXyzPsPff */
|
||||
s32 fopAcM_riverStream(cXyz* param_0, s16* param_1, f32* param_2, f32 param_3) {
|
||||
return 0;
|
||||
|
|
@ -2149,7 +1843,7 @@ s32 fopAcM_carryOffRevise(fopAc_ac_c* param_0) {
|
|||
start.y = param_0->current.pos.y;
|
||||
mDoMtx_YrotS((MtxP)calc_mtx, player->shape_angle.y);
|
||||
|
||||
offset.x = FLOAT_LABEL(lit_4645);
|
||||
offset.x = 0.0f;
|
||||
offset.y = param_0->current.pos.y - player->current.pos.y;
|
||||
offset.z = 150.0f;
|
||||
|
||||
|
|
@ -2162,7 +1856,7 @@ s32 fopAcM_carryOffRevise(fopAc_ac_c* param_0) {
|
|||
param_0->current.pos.x = player->current.pos.x;
|
||||
param_0->current.pos.z = player->current.pos.z;
|
||||
param_0->old.pos = param_0->current.pos;
|
||||
param_0->speedF = FLOAT_LABEL(lit_4645);
|
||||
param_0->speedF = 0.0f;
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -2173,15 +1867,14 @@ s32 fopAcM_carryOffRevise(fopAc_ac_c* param_0) {
|
|||
*/
|
||||
static void vectle_calc(const DOUBLE_POS* pDpos, cXyz* pOut) {
|
||||
f64 len = sqrt(pDpos->x * pDpos->x + pDpos->y * pDpos->y + pDpos->z * pDpos->z);
|
||||
if (DOUBLE_LABEL(/* 0.0 */ lit_4747) != len) {
|
||||
if (len != 0.0) {
|
||||
pOut->x = pDpos->x / len;
|
||||
pOut->y = pDpos->y / len;
|
||||
pOut->z = pDpos->z / len;
|
||||
} else {
|
||||
f32 tmp0 = FLOAT_LABEL(/* 0.0f */ lit_4645); // temp not needed when data is moved
|
||||
pOut->x = tmp0;
|
||||
pOut->y = tmp0;
|
||||
pOut->z = tmp0;
|
||||
pOut->x = 0.0f;
|
||||
pOut->y = 0.0f;
|
||||
pOut->z = 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2194,15 +1887,6 @@ static void get_vectle_calc(const cXyz* pXyzA, const cXyz* pXyzB, cXyz* pOut) {
|
|||
vectle_calc(&dPos, pOut);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80378898-803788C8 004EF8 0030+00 1/1 0/0 0/0 .rodata mtx_adj$6195 */
|
||||
SECTION_RODATA static Mtx const mtx_adj = {
|
||||
{0.5f, 0.0f, 0.0f, 0.5f},
|
||||
{0.0f, -0.5f, 0.0f, 0.5f},
|
||||
{0.0f, 0.0f, 1.0f, 0.0f},
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80378898, &mtx_adj);
|
||||
|
||||
/* 8001D42C-8001D5A4 017D6C 0178+00 0/0 3/3 40/40 .text
|
||||
* fopAcM_setEffectMtx__FPC10fopAc_ac_cPC12J3DModelData */
|
||||
void fopAcM_setEffectMtx(const fopAc_ac_c* i_actor, const J3DModelData* modelData) {
|
||||
|
|
@ -2216,6 +1900,11 @@ void fopAcM_setEffectMtx(const fopAc_ac_c* i_actor, const J3DModelData* modelDat
|
|||
Mtx mtx;
|
||||
C_MTXLookAt(mtx, &cXyz::Zero, &cXyz::BaseY, &half);
|
||||
mDoMtx_stack_c::scaleS(1.0, 1.0, 1.0);
|
||||
static Mtx const mtx_adj = {
|
||||
{0.5f, 0.0f, 0.0f, 0.5f},
|
||||
{0.0f, -0.5f, 0.0f, 0.5f},
|
||||
{0.0f, 0.0f, 1.0f, 0.0f},
|
||||
};
|
||||
mDoMtx_stack_c::concat(mtx_adj);
|
||||
mDoMtx_stack_c::concat(mtx);
|
||||
MtxP currentMtx = mDoMtx_stack_c::get();
|
||||
|
|
@ -2240,7 +1929,6 @@ void fopAcM_setEffectMtx(const fopAc_ac_c* i_actor, const J3DModelData* modelDat
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/* 8001D5A4-8001D5EC 017EE4 0048+00 1/1 0/0 0/0 .text fopAcM_getProcNameString__FPC10fopAc_ac_c */
|
||||
static const char* fopAcM_getProcNameString(const fopAc_ac_c* i_actor) {
|
||||
const char* name = dStage_getName2(i_actor->mBase.mBsTypeId, i_actor->subtype);
|
||||
|
|
@ -2420,10 +2108,11 @@ s16 fopAcM_getPolygonAngle(cM3dGPla const* p_plane, s16 param_1) {
|
|||
}
|
||||
|
||||
f32 cos = cM_scos(p_plane->mNormal.atan2sX_Z() - param_1);
|
||||
return cM_atan2s(JMAFastSqrt(p_plane->mNormal.x * p_plane->mNormal.x + p_plane->mNormal.z * p_plane->mNormal.z) * cos, p_plane->mNormal.y);
|
||||
f32 xz = JMAFastSqrt(p_plane->mNormal.x * p_plane->mNormal.x + p_plane->mNormal.z * p_plane->mNormal.z);
|
||||
xz *= cos;
|
||||
return cM_atan2s(xz, p_plane->mNormal.y);
|
||||
}
|
||||
|
||||
|
||||
/* 8001DC68-8001DCBC 0185A8 0054+00 0/0 5/5 21/21 .text
|
||||
* lineCheck__11fopAcM_lc_cFPC4cXyzPC4cXyzPC10fopAc_ac_c */
|
||||
bool fopAcM_lc_c::lineCheck(cXyz const* i_start, cXyz const* i_end, fopAc_ac_c const* i_actor) {
|
||||
|
|
|
|||
|
|
@ -219,11 +219,10 @@ void mDoMtx_lookAt(Mtx mtx, Vec const* param_1, Vec const* param_2, s16 param_3)
|
|||
|
||||
/* 8000C710-8000C8D0 007050 01C0+00 0/0 10/10 1/1 .text mDoMtx_lookAt__FPA4_fPC3VecPC3VecPC3Vecs
|
||||
*/
|
||||
void mDoMtx_lookAt(Mtx mtx, Vec const* param_1, Vec const* param_2, Vec const* param_3,
|
||||
s16 param_4) {
|
||||
cXyz local_4c(*(cXyz*)param_1);
|
||||
cXyz local_58(*(cXyz*)param_2);
|
||||
cXyz local_64(*(cXyz*)param_3);
|
||||
void mDoMtx_lookAt(Mtx mtx, Vec const* i_eye, Vec const* i_center, Vec const* i_up, s16 i_bank) {
|
||||
cXyz local_4c(*(cXyz*)i_eye);
|
||||
cXyz local_58(*(cXyz*)i_center);
|
||||
cXyz local_64(*(cXyz*)i_up);
|
||||
cXyz local_70 = local_4c - local_58;
|
||||
if (!local_70.normalizeRS()) {
|
||||
local_58.z += 1.0f;
|
||||
|
|
@ -233,14 +232,14 @@ void mDoMtx_lookAt(Mtx mtx, Vec const* param_1, Vec const* param_2, Vec const* p
|
|||
}
|
||||
C_MTXLookAt(mtx, &local_4c, &local_64, &local_58);
|
||||
Mtx local_40;
|
||||
mDoMtx_ZrotS(local_40, param_4);
|
||||
mDoMtx_ZrotS(local_40, i_bank);
|
||||
mDoMtx_concat(local_40, mtx, mtx);
|
||||
JGeometry::TVec3<f32> local_7c;
|
||||
local_7c.set(0.0f, mtx[1][1], mtx[2][1]);
|
||||
if (local_7c.isZero()) {
|
||||
local_58.y += 1.0f;
|
||||
C_MTXLookAt(mtx, &local_4c, &local_64, &local_58);
|
||||
mDoMtx_ZrotS(local_40, param_4);
|
||||
mDoMtx_ZrotS(local_40, i_bank);
|
||||
mDoMtx_concat(local_40, mtx, mtx);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue