Merge commit '46da46b152472c668875d67c336f59ded62d3ecc' into compile

This commit is contained in:
kipcode66
2026-01-23 17:04:18 -05:00
495 changed files with 24331 additions and 21201 deletions
+1 -2
View File
@@ -24,8 +24,7 @@ public:
const JGeometry::TBox2<f32>* getOrtho() const { return &mOrtho; }
void setOrtho(f32 x, f32 y, f32 width, f32 height, f32 far, f32 near) {
JGeometry::TBox2<f32> ortho(x, y, x + width, y + height);
setOrtho(ortho, far, near);
setOrtho(JGeometry::TBox2<f32>(x, y, x + width, y + height), far, near);
}
private:
@@ -1,7 +1,6 @@
#ifndef J3DANIMATION_H
#define J3DANIMATION_H
#include "JSystem/J3DGraphAnimator/J3DJoint.h"
#include "JSystem/J3DGraphAnimator/J3DModelData.h"
#include "JSystem/JUtility/JUTAssert.h"
#include "JSystem/JUtility/JUTNameTab.h"
@@ -978,52 +977,4 @@ public:
/* 0x10 */ f32 mFrame;
}; // Size: 0x14
struct J3DMtxCalcAnmBase: public J3DMtxCalc {
J3DMtxCalcAnmBase(J3DAnmTransform* pAnmTransform) { mAnmTransform = pAnmTransform; }
~J3DMtxCalcAnmBase() {}
J3DAnmTransform* getAnmTransform() { return mAnmTransform; }
void setAnmTransform(J3DAnmTransform* pAnmTransform) { mAnmTransform = pAnmTransform; }
J3DAnmTransform* mAnmTransform;
};
struct J3DMtxCalcAnimationAdaptorBase {
J3DMtxCalcAnimationAdaptorBase() {}
void change(J3DAnmTransform*) {}
};
template <typename A0>
struct J3DMtxCalcAnimationAdaptorDefault : public J3DMtxCalcAnimationAdaptorBase {
J3DMtxCalcAnimationAdaptorDefault(J3DAnmTransform* pAnmTransform) {}
void calc(J3DMtxCalcAnmBase* pMtxCalc) {
J3DTransformInfo transform;
J3DTransformInfo* transform_p;
if (pMtxCalc->getAnmTransform() != NULL) {
pMtxCalc->getAnmTransform()->getTransform(J3DMtxCalc::getJoint()->getJntNo(), &transform);
transform_p = &transform;
} else {
transform_p = &J3DMtxCalc::getJoint()->getTransformInfo();
}
A0::calcTransform(*transform_p);
}
};
template <typename A0, typename B0>
struct J3DMtxCalcAnimation : public J3DMtxCalcAnmBase {
J3DMtxCalcAnimation(J3DAnmTransform* pAnmTransform) : J3DMtxCalcAnmBase(pAnmTransform), field_0x8(pAnmTransform) {}
~J3DMtxCalcAnimation() {}
void setAnmTransform(J3DAnmTransform* pAnmTransform) {
mAnmTransform = pAnmTransform;
field_0x8.change(pAnmTransform);
}
void init(const Vec& param_0, const Mtx& param_1) { B0::init(param_0, param_1); }
void calc() { field_0x8.calc(this); }
A0 field_0x8;
};
#endif /* J3DANIMATION_H */
@@ -145,6 +145,54 @@ public:
}
};
struct J3DMtxCalcAnmBase: public J3DMtxCalc {
J3DMtxCalcAnmBase(J3DAnmTransform* pAnmTransform) { mAnmTransform = pAnmTransform; }
~J3DMtxCalcAnmBase() {}
J3DAnmTransform* getAnmTransform() { return mAnmTransform; }
void setAnmTransform(J3DAnmTransform* pAnmTransform) { mAnmTransform = pAnmTransform; }
J3DAnmTransform* mAnmTransform;
};
struct J3DMtxCalcAnimationAdaptorBase {
J3DMtxCalcAnimationAdaptorBase() {}
void change(J3DAnmTransform*) {}
};
template <typename A0>
struct J3DMtxCalcAnimationAdaptorDefault : public J3DMtxCalcAnimationAdaptorBase {
J3DMtxCalcAnimationAdaptorDefault(J3DAnmTransform* pAnmTransform) {}
void calc(J3DMtxCalcAnmBase* pMtxCalc) {
J3DTransformInfo transform;
J3DTransformInfo* transform_p;
if (pMtxCalc->getAnmTransform() != NULL) {
pMtxCalc->getAnmTransform()->getTransform(J3DMtxCalc::getJoint()->getJntNo(), &transform);
transform_p = &transform;
} else {
transform_p = &J3DMtxCalc::getJoint()->getTransformInfo();
}
A0::calcTransform(*transform_p);
}
};
template <typename A0, typename B0>
struct J3DMtxCalcAnimation : public J3DMtxCalcAnmBase {
J3DMtxCalcAnimation(J3DAnmTransform* pAnmTransform) : J3DMtxCalcAnmBase(pAnmTransform), field_0x8(pAnmTransform) {}
~J3DMtxCalcAnimation() {}
void setAnmTransform(J3DAnmTransform* pAnmTransform) {
mAnmTransform = pAnmTransform;
field_0x8.change(pAnmTransform);
}
void init(const Vec& param_0, const Mtx& param_1) { B0::init(param_0, param_1); }
void calc() { field_0x8.calc(this); }
A0 field_0x8;
};
/**
* @ingroup jsystem-j3d
*
@@ -1,6 +1,7 @@
#ifndef J3DJOINTTREE_H
#define J3DJOINTTREE_H
#include "JSystem/J3DAssert.h"
#include "JSystem/J3DGraphBase/J3DTransform.h"
class J3DJoint;
+4 -1
View File
@@ -29,6 +29,8 @@
#define JORM_DEFAULT_WIDTH 0x200
#define JORM_DEFAULT_HEIGHT 0x18
#define JORM_DEFAULT_COMBOBOX_WIDTH 0x100
#define JORM_DEFAULT_COMBOBOX_HEIGHT 0x1a
#define DEFINE_GEN_CHECKBOX(T, kind) \
void genCheckBox(const char* label, T* pSrc, T mask, u32 style = 0, \
@@ -65,7 +67,8 @@
#define DEFINE_START_COMBO_BOX(T, kind) \
void startComboBox(const char* label, T* pSrc, u32 style = 0, \
JOREventListener* pListener = NULL, u16 posX = -1, u16 posY = -1, \
u16 width = JORM_DEFAULT_WIDTH, u16 height = JORM_DEFAULT_HEIGHT) { \
u16 width = JORM_DEFAULT_COMBOBOX_WIDTH, \
u16 height = JORM_DEFAULT_COMBOBOX_HEIGHT) { \
startSelectorSub('CMBX', kind, label, (uintptr_t)pSrc, style, *pSrc, pListener, posX, \
posY, width, height); \
}
+1 -1
View File
@@ -32,7 +32,7 @@ public:
static u32 fetchResource_subroutine(u8*, u32, u8*, u32, JKRCompression);
SArcHeader* getArcHeader() { return mArcHeader; }
private:
public:
/* 0x00 */ // vtable
/* 0x04 */ // JKRArchive
/* 0x64 */ SArcHeader* mArcHeader;
+23 -4
View File
@@ -65,7 +65,7 @@ public:
JKRThread(OSThread* thread, int message_count);
virtual ~JKRThread();
/* vt[03] */ virtual void* run();
/* vt[03] */ virtual void* run() { return NULL; }
void setCommon_mesgQueue(JKRHeap* heap, int message_count);
void setCommon_heapSpecified(JKRHeap* heap, u32 stack_size, int param_3);
@@ -134,6 +134,15 @@ public:
// static u8 sThreadList[12];
};
class JKRIdleThread : public JKRThread {
public:
virtual void destroy() {}
virtual ~JKRIdleThread() { sThread = NULL; }
virtual void* run() { while (true); }
static void* sThread;
};
typedef void (*JKRThreadSwitch_PreCallback)(OSThread* current, OSThread* next);
typedef void (*JKRThreadSwitch_PostCallback)(OSThread* current, OSThread* next);
@@ -145,8 +154,8 @@ class JKRThreadSwitch {
public:
JKRThreadSwitch(JKRHeap*);
virtual void draw(JKRThreadName_* param_1, JUTConsole* param_2);
virtual void draw(JKRThreadName_* param_1);
virtual ~JKRThreadSwitch();
virtual void draw(JKRThreadName_* thread_name_list) { draw(thread_name_list, NULL); }
virtual ~JKRThreadSwitch() {}
static JKRThreadSwitch* createManager(JKRHeap* heap);
@@ -176,9 +185,19 @@ private:
/* 0x24 */ u32 field_0x24;
};
struct JKRTask {
class JKRTask : public JKRThread {
public:
virtual ~JKRTask();
virtual void* run();
int check();
static JSUList<JKRTask> sTaskList;
static u8 sEndMesgQueue[32];
/* 0x7C */ JSULink<JKRTask> mTaskLink;
/* 0x8C */ u8 field_0x8c[0x94 - 0x8C];
/* 0x94 */ OSMessageQueue* field_0x94;
};
#endif /* JKRTHREAD_H */
+15 -12
View File
@@ -6,6 +6,20 @@
#include "JSystem/JUtility/JUTFont.h"
#include <cstdarg>
class JUTConsole;
extern "C" void JUTConsole_print_f_va_(JUTConsole*, const char*, va_list);
extern "C" void JUTSetReportConsole(JUTConsole*);
extern "C" JUTConsole* JUTGetReportConsole();
extern "C" void JUTSetWarningConsole(JUTConsole*);
extern "C" JUTConsole* JUTGetWarningConsole();
extern "C" void JUTWarningConsole_f_va(const char*, va_list);
extern "C" void JUTReportConsole_f_va(const char*, va_list);
extern "C" void JUTReportConsole_f(const char*, ...);
extern "C" void JUTWarningConsole(const char* message);
extern "C" void JUTWarningConsole_f(const char* message, ...);
extern "C" void JUTReportConsole(const char* message);
/**
* @ingroup jsystem-jutility
*
@@ -95,6 +109,7 @@ public:
void scrollToLastLine() { scroll(mMaxLines); }
void scrollToFirstLine() { scroll(-mMaxLines); }
void print_f_va(const char* fmt, va_list args) { JUTConsole_print_f_va_(this, fmt, args); }
/* 0x18 */ JGadget::TLinkListNode mListNode;
/* 0x20 */ unsigned int field_0x20;
@@ -154,16 +169,4 @@ private:
/* 0x10 */ JUTConsole* mDirectConsole;
}; // Size: 0x14
extern "C" void JUTConsole_print_f_va_(JUTConsole*, const char*, va_list);
extern "C" void JUTSetReportConsole(JUTConsole*);
extern "C" JUTConsole* JUTGetReportConsole();
extern "C" void JUTSetWarningConsole(JUTConsole*);
extern "C" JUTConsole* JUTGetWarningConsole();
extern "C" void JUTWarningConsole_f_va(const char*, va_list);
extern "C" void JUTReportConsole_f_va(const char*, va_list);
extern "C" void JUTReportConsole_f(const char*, ...);
extern "C" void JUTWarningConsole(const char* message);
extern "C" void JUTWarningConsole_f(const char* message, ...);
extern "C" void JUTReportConsole(const char* message);
#endif /* JUTCONSOLE_H */
+21 -9
View File
@@ -3,19 +3,31 @@
#include "SSystem/SComponent/c_xyz.h"
#define ADD_ANGLE(x, y) ((x) += (s16)(y))
#define SUB_ANGLE(x, y) ((x) -= (s16)(y))
#define MULT_ANGLE(x, y) ((x) *= (s16)(y))
#define ADD_VAR(x, y) ((x) += (y))
#define SUB_VAR(x, y) ((x) -= (y))
#define MULT_VAR(x, y) ((x) *= (y))
#define ADD_VAR_CAST(x, y, t) ((x) += (t)(y))
#define SUB_VAR_CAST(x, y, t) ((x) -= (t)(y))
#define MULT_VAR_CAST(x, y, t) ((x) *= (t)(y))
#define ADD_ANGLE(x, y) ADD_VAR_CAST(x, y, s16)
#define SUB_ANGLE(x, y) SUB_VAR_CAST(x, y, s16)
#define MULT_ANGLE(x, y) MULT_VAR_CAST(x, y, s16)
// There are some angles that weren't sign-extended until the shield version
#if !PLATFORM_SHIELD
#define ADD_ANGLE_2(x, y) ((x) += (y))
#define SUB_ANGLE_2(x, y) ((x) -= (y))
#define MULT_ANGLE_2(x, y) ((x) *= (y))
#define ADD_ANGLE_2 ADD_VAR
#define SUB_ANGLE_2 SUB_VAR
#define MULT_ANGLE_2 MULT_VAR
#define ADD_S8_2 ADD_VAR
#else
#define ADD_ANGLE_2(x, y) ADD_ANGLE(x, y)
#define SUB_ANGLE_2(x, y) SUB_ANGLE(x, y)
#define MULT_ANGLE_2(x, y) MULT_ANGLE(x, y)
#define ADD_ANGLE_2 ADD_ANGLE
#define SUB_ANGLE_2 SUB_ANGLE
#define MULT_ANGLE_2 MULT_ANGLE
#define ADD_S8_2(x, y) ADD_VAR_CAST(x, y, s8)
#endif
#define DEG2S_CONSTANT (0x8000 / 180.0f)
+1 -1
View File
@@ -221,7 +221,7 @@ public:
u32 MskRPrm(u32 mask) const { return mRPrm & mask; }
void OnSPrmBit(u32 flag) { mSPrm |= flag; }
void OffSPrmBit(u32 flag) { mSPrm &= ~flag; }
u32 ChkSPrm(u32 prm) const { return MskSPrm(prm); }
u32 ChkSPrm(u32 prm) const { return MskSPrm(prm) != 0; }
void Set(cCcD_SrcObjCommonBase const& src) { mSPrm = src.mSPrm; }
};
+2 -2
View File
@@ -4,14 +4,14 @@
#include "JSystem/JAudio2/JASAudioReseter.h"
#include "Z2AudioLib/Z2Audience.h"
#include "Z2AudioLib/Z2FxLineMgr.h"
#include "Z2AudioLib/Z2SceneMgr.h"
#include "Z2AudioLib/Z2SeMgr.h"
#include "Z2AudioLib/Z2SeqMgr.h"
#include "Z2AudioLib/Z2SceneMgr.h"
#include "Z2AudioLib/Z2StatusMgr.h"
#include "Z2AudioLib/Z2SoundInfo.h"
#include "Z2AudioLib/Z2SoundMgr.h"
#include "Z2AudioLib/Z2SoundObjMgr.h"
#include "Z2AudioLib/Z2SpeechMgr2.h"
#include "Z2AudioLib/Z2StatusMgr.h"
#include "Z2AudioLib/Z2DebugSys.h"
#include "global.h"
+2 -1
View File
@@ -58,6 +58,7 @@ public:
void setMarkState(u8 state) { mMarkState = state; }
static Z2CreatureLink* mLinkPtr;
static Z2CreatureLink* getLink() { return mLinkPtr; }
friend class Z2LinkSoundStarter;
friend class Z2RideSoundStarter;
@@ -96,7 +97,7 @@ private:
}; // Size: 0xD0
inline Z2CreatureLink* Z2GetLink() {
return Z2CreatureLink::mLinkPtr;
return Z2CreatureLink::getLink();
}
class Z2CreatureRide;
+3 -2
View File
@@ -82,7 +82,7 @@ enum Z2EnemyID {
/* 0x3F */ Z2_ENEMY_TN,
};
class Z2SoundObjMgr : public JASGlobalInstance<Z2SoundObjMgr>, protected JSUList<Z2CreatureEnemy> {
class Z2SoundObjMgr : public JASGlobalInstance<Z2SoundObjMgr> {
public:
Z2SoundObjMgr();
void setForceBattleArea(bool forceBattle, u16, u16, u16);
@@ -98,13 +98,14 @@ public:
u8 getEnemyNumNear() const { return enemuNumNear_; }
u8 getEnemyNumVeryFar() const { return enemuNumVeryFar_; }
bool isForceBattle() { return forceBattle_; }
JSUList<Z2CreatureEnemy>* getEnemyList() { return this; }
JSUList<Z2CreatureEnemy>* getEnemyList() { return &field_0x0; }
#if DEBUG
JSUList<Z2SoundObjBase>* getAllList() { return &allList_; }
#endif
private:
/* 0x00 */ JSUList<Z2CreatureEnemy> field_0x0;
#if DEBUG
/* 0x0C */ JSUList<Z2SoundObjBase> allList_;
#endif
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -79,8 +79,8 @@ public:
MtxP getMtx() { return mpModelMorf->getModel()->getAnmMtx(15); }
void onTarget() { mTarget = true; }
bool isBack() { return arg0; }
u8 onTarget() { return mTarget = true; }
u8 isBack() { return arg0; }
private:
/* 0x05AC */ request_of_phase_process_class mPhase;
+1 -1
View File
@@ -116,7 +116,7 @@ public:
void offStateFlg0(daBoomerang_FLG0 flag) { m_stateFlg0 &= ~flag; }
u32 getReturnFlg() const { return checkStateFlg0(FLG0_1); }
void onWindCatch() { onStateFlg0(WIND_CATCH); }
bool checkForceDelete() const { return m_forceDelete; }
u8 checkForceDelete() const { return m_forceDelete; }
void onForceDelete() { m_forceDelete = true; }
bool checkCharge() const { return true; }
void setThrow() { fopAcM_SetParam(this, 1); }
+1 -1
View File
@@ -34,7 +34,7 @@ public:
J3DModel* getModel() { return mpModel; }
MtxP getModelMtx() { return mpModel->getBaseTRMtx(); }
bool checkTandem() { return fopAcM_GetParam(this) == 2; }
bool checkJumpRideFlg() { return mJumpRideFlg; }
u8 checkJumpRideFlg() const { return mJumpRideFlg; }
void incShapeOffsetY(f32 offset) { mShapeOffsetY += offset; }
void incShapeAngleZ(s16 incZ) { shape_angle.z += incZ; }
void onRodID(fpc_ProcID i_rodID) { mRodID = i_rodID; }
+10 -10
View File
@@ -194,16 +194,16 @@ public:
daCow_c* getCowP() { return mCowP; }
// cLib_onBit<u16>(mFlags, (mask))
void setCrazyBeforeCatch() { mFlags |= Flag_CrazyBeforeCatch; }
void setCrazyCatch() { mFlags |= Flag_CrazyCatch; }
void setCrazyDash() { mFlags |= Flag_CrazyDash; }
void setCrazyThrowLeft() { mFlags |= Flag_CrazyThrowLeft; }
void setCrazyThrowRight() { mFlags |= Flag_CrazyThrowRight; }
void setCrazyReady() { mFlags |= Flag_CrazyReady; }
void setCrazyGo() { mFlags |= Flag_CrazyGo; }
void setNaderu() { mFlags |= Flag_Naderu; }
void setNaderuFinish() { mFlags |= Flag_NaderuFinish; }
void setCrazyReadyDrawOn() { mFlags |= Flag_CrazyReadyDrawOn; }
void setCrazyBeforeCatch() { mFlags |= (u16)Flag_CrazyBeforeCatch; }
void setCrazyCatch() { mFlags |= (u16)Flag_CrazyCatch; }
void setCrazyDash() { mFlags |= (u16)Flag_CrazyDash; }
void setCrazyThrowLeft() { mFlags |= (u16)Flag_CrazyThrowLeft; }
void setCrazyThrowRight() { mFlags |= (u16)Flag_CrazyThrowRight; }
void setCrazyReady() { mFlags |= (u16)Flag_CrazyReady; }
void setCrazyGo() { mFlags |= (u16)Flag_CrazyGo; }
void setNaderu() { mFlags |= (u16)Flag_Naderu; }
void setNaderuFinish() { mFlags |= (u16)Flag_NaderuFinish; }
void setCrazyReadyDrawOn() { mFlags |= (u16)Flag_CrazyReadyDrawOn; }
u8 getCowIn() { return mCowIn; }
u8 getNoNearCheckTimer() { return mNoNearCheckTimer; }
+16 -16
View File
@@ -5,22 +5,6 @@
#include "d/d_particle_copoly.h"
#include "f_op/f_op_actor.h"
enum daCstatue_FLG0 {
daCstatue_FLG0_1 = 0x1,
daCstatue_FLG0_2 = 0x2,
daCstatue_FLG0_4 = 0x4,
daCstatue_FLG0_8 = 0x8,
daCstatue_FLG0_10 = 0x10,
daCstatue_FLG0_20 = 0x20,
daCstatue_FLG0_Demo = 0x40,
daCstatue_FLG0_80 = 0x80,
daCstatue_FLG0_100 = 0x100,
daCstatue_FLG0_200 = 0x200,
daCstatue_FLG0_400 = 0x400,
daCstatue_FLG0_800 = 0x800,
daCstatue_FLG0_1000 = 0x1000,
};
enum daCstatue_MoveMode {
daCstatue_MoveMode_0,
daCstatue_MoveMode_1,
@@ -58,6 +42,22 @@ enum daCstatueType {
*
*/
class daCstatue_c : public fopAc_ac_c {
enum daCstatue_FLG0 {
daCstatue_FLG0_1 = 0x1,
daCstatue_FLG0_2 = 0x2,
daCstatue_FLG0_4 = 0x4,
daCstatue_FLG0_8 = 0x8,
daCstatue_FLG0_10 = 0x10,
daCstatue_FLG0_20 = 0x20,
daCstatue_FLG0_Demo = 0x40,
daCstatue_FLG0_80 = 0x80,
daCstatue_FLG0_100 = 0x100,
daCstatue_FLG0_200 = 0x200,
daCstatue_FLG0_400 = 0x400,
daCstatue_FLG0_800 = 0x800,
daCstatue_FLG0_1000 = 0x1000,
};
public:
void atHitCallback(fopAc_ac_c*);
int createHeap();
+1 -1
View File
@@ -277,7 +277,7 @@ public:
u32 checkCutTurnCancel() const { return checkEndResetStateFlg0(ERFLG0_CUT_TURN_CANCEL); }
u32 checkTurnCancelKeep() const { return checkStateFlg0(FLG0_TURN_CANCEL_KEEP); }
u32 checkRodeoLeft() const { return checkStateFlg0(FLG0_RODEO_LEFT); }
u32 checkHorseCallWait() const { return checkStateFlg0(FLG0_NO_DRAW_WAIT); }
u32 checkHorseCallWait() { return checkStateFlg0(FLG0_NO_DRAW_WAIT); }
BOOL checkTurn() const { return m_procID == PROC_TURN_e && field_0x1720 == 0; }
BOOL checkStop() const { return m_procID == PROC_STOP_e; }
BOOL checkJump() const { return m_procID == PROC_JUMP_e; }
+1 -2
View File
@@ -58,8 +58,7 @@ public:
mDoMtx_stack_c::multVecZero(&newPos);
current.pos = newPos;
old.pos = current.pos;
speed.y = 0.0f;
speedF = 0.0f;
speedF = speed.y = 0.0f;
mpMorf->getModel()->setBaseTRMtx(mtx);
}
+6
View File
@@ -817,6 +817,12 @@ STATIC_ASSERT(sizeof(daNpcT_c) == 0xE40);
fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \
}
#if DEBUG
#define NpcT_CHK_ACTION(ClassName) chkAction(&ClassName::test)
#else
#define NpcT_CHK_ACTION(ClassName) FALSE
#endif
BOOL daNpcT_chkEvtBit(u32 i_idx);
BOOL daNpcT_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3, BOOL param_4);
u8 daNpcT_getDistTableIdx(int param_0, int param_1);
+1 -1
View File
@@ -388,7 +388,7 @@ public:
}
BOOL checkHide() { return mHide || (mTwilight && !dComIfGs_wolfeye_effect_check()); }
void setIntDemander(fopAc_ac_c* i_actor) { field_0x824.entry(i_actor); }
void setIntFlowNodeNo(int i_flowNodeNo) { mFlowNodeNo = i_flowNodeNo; }
void setIntFlowNodeNo(s32 i_flowNodeNo) { mFlowNodeNo = i_flowNodeNo; }
void setCutType(int i_cutType) { mCutType = i_cutType; }
void onInterrupt(u8 param_0) { field_0x9ef = param_0; }
void onHide() { mHide = true; }
+5 -7
View File
@@ -153,7 +153,9 @@ public:
char** i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
i_arcNames) {
OS_REPORT("|%06d:%x|daNpc_Aru_c -> コンストラクト\n", g_Counter.mCounter0, this);
}
u16 getEyeballMaterialNo() { return ARU_EYEBALL_M; }
s32 getHeadJointNo() { return JNT_HEAD; }
s32 getNeckJointNo() { return JNT_NECK; }
@@ -165,13 +167,9 @@ public:
int getFlowNodeNo() {
u16 nodeNo = home.angle.x;
if (nodeNo == 0xffff) {
return -1;
}
return nodeNo;
return (nodeNo == 0xFFFF) ? -1 : nodeNo;
}
int getPathID() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
u8 getPathID() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
void setLastIn() { mLastGoatIn = true; }
static char* mCutNameList[7];
+1
View File
@@ -104,6 +104,7 @@ public:
int nurse(void*);
int giveHotWater(void*);
int talk(void*);
BOOL test(void* param_0);
daNpc_Besu_c(
daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
daNpcT_motionAnmData_c const* i_motionAnmData,
+1 -2
View File
@@ -152,8 +152,7 @@ public:
BOOL speakTo() {
if (mType == 4) {
if (current.pos.absXZ(daPy_getPlayerActorClass()->current.pos) < 1100.0f && strlen(mpEvtData[5].eventName) != 0) {
u32 len = strlen(mpArcNames[mpEvtData[5].num]);
if (len != 0) {
if (strlen(mpArcNames[mpEvtData[5].num]) != 0) {
eventInfo.setArchiveName(mpArcNames[mpEvtData[5].num]);
dComIfGp_getEventManager().setObjectArchive(eventInfo.getArchiveName());
}
+2
View File
@@ -217,6 +217,8 @@ public:
s8 getActionMode() { return mActionMode; }
void setTalkFlag(u8 i_flag) { field_0x15bd = i_flag; }
bool checkBattleMode() { return true; }
int create();
int CreateHeap();
+1 -2
View File
@@ -146,8 +146,7 @@ public:
}
if (strlen(mpEvtData[var_r29].eventName) != 0) {
u32 len = strlen(mpArcNames[mpEvtData[var_r29].num]);
if (len != 0) {
if (strlen(mpArcNames[mpEvtData[var_r29].num]) != 0) {
eventInfo.setArchiveName(mpArcNames[mpEvtData[var_r29].num]);
dComIfGp_getEventManager().setObjectArchive(eventInfo.getArchiveName());
}
+12 -6
View File
@@ -7,7 +7,7 @@
struct daNpc_Maro_HIOParam {
/* 0x00 */ daNpcT_HIOParam common;
/* 0x8C */ s16 field_0x8c;
/* 0x8C */ s16 tease_interval;
};
class daNpc_Maro_Param_c {
@@ -125,6 +125,7 @@ public:
int arrowTutorial(void*);
int talk(void*);
int shop(void*);
BOOL test(void*);
daNpc_Maro_c(
daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
daNpcT_motionAnmData_c const* i_motionAnmData,
@@ -169,16 +170,21 @@ public:
static char* mCutNameList[17];
static cutFunc mCutList[17];
u8 getGroupId() {
return (fopAcM_GetParam(this) & 0xF0000000) >> 28;
}
u8 getPathID() {
return (fopAcM_GetParam(this) & 0xFF00) >> 8;
}
int getFlowNodeNo() {
u16 nodeNo = home.angle.x;
if (nodeNo == 0xffff) {
return -1;
}
return nodeNo;
return (nodeNo == 0xFFFF) ? -1 : nodeNo;
}
u8 getMaxNumItem() {
return (fopAcM_GetParam(this) & 0xf000000) >> 0x18;
return (fopAcM_GetParam(this) & 0xF000000) >> 24;
}
private:
+5 -3
View File
@@ -44,9 +44,11 @@ public:
int Draw();
int Delete();
u32 getTime() { return fopAcM_GetParamBit(this, 8, 8); }
u32 getPos() { return fopAcM_GetParamBit(this, 0x14, 8); }
static BOOL checkFallStart(fopAc_ac_c* actor) { return actor->speed.y != 0.0f; }
u8 getTime() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getPos() { return fopAcM_GetParamBit(this, 0x14, 8); }
bool checkFallStart() {
return this->speed.y != 0.0f;
};
private:
/* 0x5A0 */ request_of_phase_process_class mPhaseReq;
+5 -5
View File
@@ -228,11 +228,11 @@ public:
cXyz getAttentionPos(fopAc_ac_c*);
int standWaitJump(void*);
bool checkNpcObjGra() { return mMode == 1; }
void setCrazyDash() { field_0xa48 |= 4; }
void setCrazyCatch() { field_0xa48 |= 2; }
void setCrazyThrowLeft() { field_0xa48 |= 8; }
void setCrazyThrowRight() { field_0xa48 |= 0x10; }
u8 checkNpcObjGra() { return mMode == 1; }
void setCrazyDash() { field_0xa48 |= (u16)4; }
void setCrazyCatch() { field_0xa48 |= (u16)2; }
void setCrazyThrowLeft() { field_0xa48 |= (u16)8; }
void setCrazyThrowRight() { field_0xa48 |= (u16)0x10; }
static MotionFunc mBaseMotionList[22];
static MotionFunc mFaceMotionList[14];
+3 -5
View File
@@ -99,13 +99,11 @@ public:
virtual ~daObj_KamHIO_c() {}
void genMessage(JORMContext* context) {
// Golden insect (stag beetle)
context->genLabel("黄金蟲(カブト)", 0x80000001, 0, NULL, -1, -1, 0x200, 0x18);
context->genLabel("黄金蟲(カブト)", 0x80000001);
// Model scale (male)
context->genSlider("モデルスケール(オス)", &mModelScaleMale, 0.1f, 4.0f, 0, NULL, -1, -1, 0x200,
0x18);
context->genSlider("モデルスケール(オス)", &mModelScaleMale, 0.1f, 4.0f);
// Model scale (female)
context->genSlider("モデルスケール(メス)", &mModelScaleFemale, 0.1f, 4.0f, 0, NULL, -1, -1, 0x200,
0x18);
context->genSlider("モデルスケール(メス)", &mModelScaleFemale, 0.1f, 4.0f);
}
s8 field_0x4;
+3 -5
View File
@@ -100,13 +100,11 @@ public:
void genMessage(JORMContext* ctx) {
// Golden Snail
ctx->genLabel("黄金蟲(カタツムリ)", 0x80000001, 0, NULL, -1, -1, 0x200, 24);
ctx->genLabel("黄金蟲(カタツムリ)", 0x80000001);
// Model scale (male)
ctx->genSlider("モデルスケール(オス)", &this->mScaleMale, 0.1f, 4.0f, 0, NULL, -1, -1,
0x200, 24);
ctx->genSlider("モデルスケール(オス)", &this->mScaleMale, 0.1f, 4.0f);
// Model scale (female)
ctx->genSlider("モデルスケール(メス)", &this->mScaleFemale, 0.1f, 4.0f, 0, NULL, -1, -1,
0x200, 24);
ctx->genSlider("モデルスケール(メス)", &this->mScaleFemale, 0.1f, 4.0f);
}
s8 field_0x4;
+14 -25
View File
@@ -229,45 +229,34 @@ public:
}
u8 getType() {
int prm = fopAcM_GetParam(this) >> 0x1C;
int prm = (fopAcM_GetParam(this) & 0xF0000000) >> 28;
u8 type;
switch (argument) {
case 0:
switch (prm) {
case 1:
type = 2;
break;
return 2;
case 2:
type = 4;
break;
return 4;
case 3:
type = 6;
break;
return 6;
default:
type = 0;
break;
return 0;
}
break;
case 1:
switch (prm) {
case 1:
type = 3;
break;
return 3;
case 2:
type = 5;
break;
return 5;
default:
type = 1;
break;
return 1;
}
break;
default:
type = 0;
break;
return 0;
}
return type;
}
u8 getBitSW() { return fopAcM_GetParam(this) & 0xff; }
@@ -304,11 +293,11 @@ public:
/* 0x1124 */ daNpcT_Path_c mPath;
/* 0x114C */ cXyz mCXyzJump;
/* 0x1158 */ int mLatencyTime;
/* 0x115C */ float mJumpHeight;
/* 0x1160 */ float mJumpSpeed;
/* 0x1164 */ float mColsetBlend;
/* 0x1168 */ float mGoalStatueTurnSpeed;
/* 0x116C */ float mGoalStatueAngle;
/* 0x115C */ f32 mJumpHeight;
/* 0x1160 */ f32 mJumpSpeed;
/* 0x1164 */ f32 mColsetBlend;
/* 0x1168 */ f32 mGoalStatueTurnSpeed;
/* 0x116C */ f32 mGoalStatueAngle;
/* 0x1170 */ s16 mPlayerDirection;
/* 0x1172 */ u8 mReset;
/* 0x1173 */ u8 mSetWolfHowling;
+2 -1
View File
@@ -65,7 +65,7 @@ public:
cXyz getHangPos() { return mHangPos; }
void setHangPlayer() { mHangPlayer = 1; }
u8 getType() { return mType; }
int getType() { return mType; }
u8 getType_private() { return fopAcM_GetParamBit(this, 28, 4); }
u8 checkType() { return fopAcM_GetParamBit(this, 25, 1); }
u8 getSwNo() { return fopAcM_GetParamBit(this, 0, 8); }
@@ -76,6 +76,7 @@ public:
void clrFlag() { mFlags = 0; }
void onFlag(u16 flag) { mFlags |= flag; }
u16 checkFlag(u16 flag) { return mFlags & flag; }
s16 getAngleY() { return shape_angle.y; }
private:
/* 0x5B0 */ request_of_phase_process_class mPhase;
+9 -13
View File
@@ -71,26 +71,22 @@ public:
#if DEBUG
void genMessage(JORMContext* ctx) {
// Speed
ctx->genLabel("--- 速 出現時---", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genLabel("--- 速 出現時---", 0);
// Initial speed
ctx->genSlider("初速", &mInitialSpeed, 0.0f, 10000.0f, 0, NULL, 0xffff, 0xffff, 0x200,
0x18);
ctx->genSlider("初速", &mInitialSpeed, 0.0f, 10000.0f);
// Max
ctx->genSlider("最大", &mMaxSpeed, 0.0f, 10000.0f, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genSlider("最大", &mMaxSpeed, 0.0f, 10000.0f);
// Speed when pulling
ctx->genLabel("--- 速度 引っ込み時---", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genSlider("初速", &mInitialDownSpeed, 0.0, 10000.0, 0, NULL, 0xffff, 0xffff, 0x200,
0x18);
ctx->genLabel("--- 速度 引っ込み時---", 0);
ctx->genSlider("初速", &mInitialDownSpeed, 0.0, 10000.0);
// Max
ctx->genSlider("最大", &mMaxDownSpeed, 0.0f, 10000.0f, 0, NULL, 0xffff, 0xffff, 0x200,
0x18);
ctx->genSlider("最大", &mMaxDownSpeed, 0.0f, 10000.0f);
// Range
ctx->genSlider("範囲", &mRange, 0.1f, 1000.0f, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genSlider("範囲", &mRange, 0.1f, 1000.0f);
// Spinner speed
ctx->genSlider("スピナー速度", &mSpinnerSpeed, 0.0f, 100.0f, 0, NULL, 0xffff, 0xffff, 0x200,
0x18);
ctx->genSlider("スピナー速度", &mSpinnerSpeed, 0.0f, 100.0f);
// Vibration
ctx->startComboBox("振動", &mVibration, 0, NULL, 0xffff, 0xffff, 0x100, 0x1a);
ctx->startComboBox("振動", &mVibration);
// Strength 1-8
ctx->genComboBoxItem("強さ1", 1);
ctx->genComboBoxItem("強さ2", 2);
+10 -6
View File
@@ -37,21 +37,25 @@ public:
cXyz& getJumpAimPos() { return eyePos; }
cXyz& getTopPos() { return mTopPos; }
cXyz& getRoofPos() { return mRoofPos; }
f32 getPullLength() { return mPullLength; }
f32 getPullLength() const { return mPullLength; }
void setPullLength(f32 i_length) { mPullLength = i_length; }
f32 getInitOutLength() { return mInitOutLength; }
f32 getInitOutLength() const { return mInitOutLength; }
f32 getRealRoofY() { return mRealRoofY; }
f32 getMoveDisRate() { return mPullLength * 0.01f; }
f32 getLastOffset() { return 6.0f; }
f32 getDownOffset() { return 100.0f; }
f32 getSwitchOffset() { return 94.0f; }
static f32 getLastOffset() { return 6.0f; }
static f32 getDownOffset() { return 100.0f; }
static f32 getSwitchOffset() { return 94.0f; }
u8 getSwitchNum() { return mSw; }
void onRide() { mRide = true; }
void offRide() { mRide = false; }
bool checkRideFlg() { return mRide; }
void onEndFlg() { mEnd = true; }
bool getEndFlg() { return mEnd; }
void onNowSwitchFlg() { mDown = mNowSwitch = true; }
void onNowSwitchFlg() {
mNowSwitch = true;
mDown = true;
}
private:
/* 0x568 */ request_of_phase_process_class mPhaseReq;
+1 -1
View File
@@ -31,7 +31,7 @@ public:
u8 getGoldWolfIdx();
s8 getTuneId() { return fopAcM_GetParamBit(this, 4, 4); }
int getNextSceneId() { return fopAcM_GetParamBit(this, 0, 4); }
s8 getNextSceneId() { return fopAcM_GetParamBit(this, 0, 4); }
u32 getSwBit1() { return home.angle.x & 0xff; }
u32 getSwBit2() { return fopAcM_GetParamBit(this, 8, 8); }
u32 getDelEveFlgId() { return fopAcM_GetParamBit(this, 0x10, 0x10); }
+4 -1
View File
@@ -82,7 +82,10 @@ public:
const attributes* attr() const { return &M_attr; }
int getType() { return argument & 0x7F; }
u8 getPathID() { return fopAcM_GetParam(this); }
bool isPlayerCorrect() { return (s8)(u8)(fopAcM_GetParam(this) >> 8) > 0; }
bool isPlayerCorrect() {
s8 var_r31 = (fopAcM_GetParam(this) >> 8) & 0xFF;
return var_r31 > 0;
}
private:
/* 0x568 */ J3DModel* mpActiveModel;
+256 -258
View File
@@ -14,28 +14,27 @@ public:
virtual ~daPy_sightPacket_c() {}
void setSight();
void setSightImage(ResTIMG*);
void setSightImage(ResTIMG* i_img);
bool getDrawFlg() { return mDrawFlag; }
u8 getDrawFlg() { return mDrawFlag; }
void onDrawFlg() { mDrawFlag = true; }
void offDrawFlg() { mDrawFlag = false; }
void setPos(const cXyz* i_pos) { mPos = *i_pos; }
cXyz* getPosP() { return &mPos; }
/* 0x04 */ bool mDrawFlag;
/* 0x05 */ u8 field_0x5[3];
/* 0x04 */ u8 mDrawFlag;
/* 0x08 */ cXyz mPos;
/* 0x14 */ Mtx field_0x14;
/* 0x14 */ Mtx mProjMtx;
/* 0x44 */ ResTIMG* mpImg;
/* 0x48 */ u8* mpData;
};
class daPy_boomerangMove_c {
public:
void initOffset(cXyz const*);
void initOffset(cXyz const* xyz, dCcD_GObjInf const*) { initOffset(xyz); }
int posMove(cXyz*, s16*, fopAc_ac_c*, s16);
void bgCheckAfterOffset(cXyz const*);
void initOffset(const cXyz* i_pos);
void initOffset(const cXyz* i_pos, const dCcD_GObjInf*) { initOffset(i_pos); }
int posMove(cXyz* o_pos, s16* o_rotY, fopAc_ac_c* i_objActor, s16 i_rotStep);
void bgCheckAfterOffset(const cXyz* i_pos);
static void initDropAngleY() { m_dropAngleY = 0x4000; }
static void offEventKeepFlg() { m_eventKeepFlg = 0; }
@@ -47,8 +46,8 @@ public:
private:
/* 0x0 */ u8 field_0x0;
/* 0x2 */ s16 field_0x2;
/* 0x4 */ f32 field_0x4;
/* 0x8 */ f32 field_0x8;
/* 0x4 */ f32 m_offsetY;
/* 0x8 */ f32 m_offsetXZ;
}; // Size: 0xC
class daPy_anmHeap_c {
@@ -61,24 +60,24 @@ public:
HEAP_TYPE_5,
};
daPy_anmHeap_c(u32 param_0 = 0);
daPy_anmHeap_c(u32 i_bufferSize = 0);
~daPy_anmHeap_c();
void initData();
void* mallocBuffer();
void createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE);
void* loadData(u16);
void* loadDataIdx(u16);
void* loadDataPriIdx(u16);
void* loadDataDemoRID(u16, u16);
void createHeap(daAlinkHEAP_TYPE i_heapType);
void* loadData(u16 i_resId);
void* loadDataIdx(u16 i_resId);
void* loadDataPriIdx(u16 i_resId);
void* loadDataDemoRID(u16 i_resID, u16 i_arcNo);
JKRHeap* setAnimeHeap();
u16 getIdx() const { return mIdx; }
void resetIdx() { mIdx = 0xffff; }
void resetPriIdx() { mPriIdx = 0xffff; }
void resetArcNo() { mArcNo = 0xffff; }
void resetIdx() { mIdx = 0xFFFF; }
void resetPriIdx() { mPriIdx = 0xFFFF; }
void resetArcNo() { mArcNo = 0xFFFF; }
bool checkNoSetArcNo() const { return mArcNo == 0xFFFF; }
void setBufferSize(u32 size) { mBufferSize = size; }
void setBuffer(u8* buf) { mBuffer = buf; }
void setBufferSize(u32 i_size) { mBufferSize = i_size; }
void setBuffer(u8* i_buffer) { mBuffer = i_buffer; }
u32 getBufferSize() { return mBufferSize; }
u8* getBuffer() { return mBuffer; }
bool checkNoSetIdx() const { return mIdx == 0xFFFF; }
@@ -86,11 +85,9 @@ public:
u16 getArcNo() const { return mArcNo; }
void setIdx(u16 i_idx) { mIdx = i_idx; }
private:
/* 0x00 */ u16 mIdx;
/* 0x02 */ u16 mPriIdx;
/* 0x04 */ u16 mArcNo;
/* 0x06 */ u16 field_0x06;
/* 0x08 */ u32 mBufferSize;
/* 0x0C */ u8* mBuffer;
/* 0x10 */ JKRSolidHeap* mAnimeHeap;
@@ -101,11 +98,11 @@ public:
daPy_actorKeep_c() { clearData(); }
void setActor();
void setData(fopAc_ac_c*);
void setData(fopAc_ac_c* i_actor);
void clearData();
fpc_ProcID getID() const { return mID; }
void setID(fpc_ProcID id) { mID = id; }
void setID(fpc_ProcID i_id) { mID = i_id; }
fopAc_ac_c* getActor() const { return mActor; }
fopAc_ac_c* getActorConst() const { return mActor; }
@@ -120,10 +117,10 @@ public:
daPy_frameCtrl_c() {}
bool checkAnmEnd();
void updateFrame();
void setFrameCtrl(u8, short, short, f32, f32);
void setFrameCtrl(u8 i_attribute, s16 i_start, s16 i_end, f32 i_rate, f32 i_frame);
u16 getEndFlg() { return mEndFlg; }
u16 getNowSetFlg() { return mNowSetFlg; }
u16 getEndFlg() const { return mEndFlg; }
u16 getNowSetFlg() const { return mNowSetFlg; }
void onEndFlg() { mEndFlg = 1; }
void onNowSetFlg() { mNowSetFlg = 1; }
void offNowSetFlg() { mNowSetFlg = 0; }
@@ -300,8 +297,7 @@ class daPy_py_c : public fopAc_ac_c {
public:
/* 0x0568 */ u8 mCutType;
/* 0x0569 */ u8 mComboCutCount;
/* 0x056A */ u8 mSpecialMode; // maybe needs better name
/* 0x056B */ u8 field_0x56b;
/* 0x056A */ u8 mMode;
/* 0x056C */ s16 mDamageTimer;
/* 0x056E */ u16 mSwordUpTimer;
/* 0x0570 */ u32 mNoResetFlg0;
@@ -313,8 +309,8 @@ public:
/* 0x0588 */ u32 mEndResetFlg0;
/* 0x058C */ u32 mEndResetFlg1;
/* 0x0590 */ u32 mEndResetFlg2;
/* 0x0594 */ f32 field_0x594;
/* 0x0598 */ f32 field_0x598;
/* 0x0594 */ f32 mMaxSpeed;
/* 0x0598 */ f32 mHeight;
/* 0x059C */ csXyz mBodyAngle;
/* 0x05A4 */ cXyz mHeadTopPos;
/* 0x05B0 */ cXyz mItemPos;
@@ -323,24 +319,24 @@ public:
/* 0x05D4 */ cXyz mRightHandPos;
/* 0x05E0 */ cXyz mLeftFootPos;
/* 0x05EC */ cXyz mRightFootPos;
/* 0x05F8 */ cXyz field_0x5f8;
/* 0x05F8 */ cXyz mViewerCurrentPos;
/* 0x0604 */ daPy_demo_c mDemo;
public:
enum daPy_FLG0 {
FLG0_UNK_40000000 = 0x40000000,
FLG0_HEAVY_STATE = 0x40000000,
FLG0_EQUIP_HVY_BOOTS = 0x2000000,
FLG0_PLAYER_NO_DRAW = 0x8000000,
FLG0_UNK_10000000 = 0x10000000,
FLG0_UNK_1000000 = 0x1000000,
FLG0_UNDERWATER = 0x800000,
FLG0_WATER_IN_MOVE = 0x800000,
FLG0_UNK_400000 = 0x400000,
FLG0_UNK_200000 = 0x200000,
FLG0_GORON_UP_STOP_CANCEL = 0x200000,
FLG0_UNK_100000 = 0x100000,
FLG0_UNK_80000 = 0x80000,
FLG0_FAST_SWORD_CUT = 0x80000,
FLG0_UNK_40000 = 0x40000,
FLG0_DK_CAUGHT = 0x20000,
FLG0_UNK_10000 = 0x10000,
FLG0_DK_CAUGHT2 = 0x20000,
FLG0_DEMO_STREAM_ACCEPT = 0x10000,
FLG0_UNK_8000 = 0x8000,
FLG0_UNK_4000 = 0x4000,
FLG0_UNK_2000 = 0x2000,
@@ -349,24 +345,20 @@ public:
FLG0_UNK_400 = 0x400,
FLG0_SWIM_UP = 0x100,
FLG0_UNK_80 = 0x80,
FLG0_UNK_40 = 0x40,
FLG0_CUT_AT_FLG = 0x40,
FLG0_UNK_20 = 0x20,
FLG0_UNK_10 = 0x10,
FLG0_UNK_8 = 0x8,
FLG0_MIDNA_RIDE = 4,
FLG0_UNK_2 = 2,
FLG0_HVY_STATE = FLG0_UNK_40000000 | FLG0_EQUIP_HVY_BOOTS | FLG0_DK_CAUGHT,
FLG0_UNK_14000 = 0x14000,
FLG0_UNK_10400 = 0x10400,
FLG0_UNK_18 = FLG0_UNK_10 | FLG0_UNK_8,
};
enum daPy_FLG1 {
FLG1_UNK_80000000 = 0x80000000,
FLG1_ICE_FREEZE = 0x40000000,
FLG1_FREEZE_DAMAGE = 0x40000000,
FLG1_UNK_20000000 = 0x20000000,
FLG1_UNK_10000000 = 0x10000000,
FLG1_UNK_8000000 = 0x8000000,
FLG1_UNK_4000000 = 0x4000000,
FLG1_IS_WOLF = 0x2000000,
FLG1_UNK_1000000 = 0x1000000,
@@ -378,7 +370,7 @@ public:
FLG1_UNK_40000 = 0x40000,
FLG1_UNK_20000 = 0x20000,
FLG1_UNK_10000 = 0x10000,
FLG1_UNK_8000 = 0x8000,
FLG1_FISHING_ROD_CASTING_END = 0x8000,
FLG1_THROW_DAMAGE = 0x4000,
FLG1_UNK_2000 = 0x2000,
FLG1_UNK_1000 = 0x1000,
@@ -393,22 +385,19 @@ public:
FLG1_UNK_4 = 4,
FLG1_UNK_2 = 2,
FLG1_DK_CAUGHT = 1,
FLG1_UNK_1800 = 0x1800,
FLG1_UNK_10100000 = FLG1_UNK_10000000 | FLG1_UNK_100000,
};
enum daPy_FLG2 {
FLG2_HORSE_ZELDA = 0x40000000,
FLG2_UNK_20000000 = 0x20000000,
FLG2_UNK_10000000 = 0x10000000,
FLG2_FISHING_CAST_WAIT = 0x20000000,
FLG2_KANDELAAR_LIGHT_OFF = 0x10000000,
FLG2_UNK_4080000 = 0x4080000,
FLG2_UNK_4000000 = 0x4000000,
FLG2_UNK_2080000 = 0x2080000,
FLG2_UNK_2000000 = 0x2000000,
FLG2_UNK_8000000 = 0x8000000,
FLG2_UNK_1000000 = 0x1000000,
FLG2_BOAR_SINGLE_BATTLE = 0x800000,
FLG2_BOAR_SINGLE_BATTLE_2ND = 0x1000000,
FLG2_BOAR_SINGLE_BATTLE_1ST = 0x800000,
FLG2_STATUS_WINDOW_DRAW = 0x400000,
FLG2_UNK_280000 = 0x280000,
FLG2_UNK_200000 = 0x200000,
@@ -417,12 +406,12 @@ public:
FLG2_FORCE_GAMEOVER = 0x40000,
FLG2_UNK_20000 = 0x20000,
FLG2_WOLF_DASH_AUTO_JUMP = 0x10000,
FLG2_SCN_CHG_START = 0x8000,
FLG2_UNK_4000 = 0x4000,
FLG2_SCENE_CHANGE_START = 0x8000,
FLG2_FOG_FADE = 0x4000,
FLG2_UNK_2000 = 0x2000,
FLG2_PRESSED_DAMAGE = 0x1000,
FLG2_UNK_800 = 0x800,
FLG2_PLAYER_SHADOW = 0x400,
FLG2_PLAYER_SHADOW_NO_DRAW = 0x400,
FLG2_UNK_200 = 0x200,
FLG2_UNK_100 = 0x100,
FLG2_UNK_80 = 0x80,
@@ -431,11 +420,8 @@ public:
FLG2_UNK_10 = 0x10,
FLG2_UNK_8 = 8,
FLG2_UNK_4 = 4,
FLG2_UNK_2 = 2,
FLG2_COMBO_RESERB = 2,
FLG2_UNK_1 = 1,
FLG2_UNK_58 = FLG2_WOLF_ENEMY_HANG_BITE | FLG2_UNK_10 | FLG2_UNK_8,
FLG2_UNK_10000001 = FLG2_UNK_10000000 | FLG2_UNK_1,
};
enum daPy_FLG3 {
@@ -460,13 +446,13 @@ public:
FLG3_UNK_1000 = 0x1000,
FLG3_UNK_800 = 0x800,
FLG3_UNK_400 = 0x400,
FLG3_UNK_200 = 0x200,
FLG3_UNK_100 = 0x100,
FLG3_UNK_80 = 0x80,
FLG3_UNK_40 = 0x40,
FL3_TRANING_CUT_BACK = 0x20,
FLG3_UNK_10 = 0x10,
FLG3_UNK_8 = 8,
FLG3_TRANING_CUT_LARGE_JUMP = 0x200,
FLG3_TRANING_CUT_LARGE_TURN = 0x100,
FLG3_TRANING_CUT_FAST = 0x80,
FLG3_TRANING_CUT_HEAD = 0x40,
FLG3_TRANING_CUT_BACK = 0x20,
FLG3_TRANING_CUT_DOWN = 0x10,
FLG3_TRANING_SHIELD_ATTACK = 8,
FLG3_UNK_4 = 4,
FLG3_UNK_1 = 1,
};
@@ -477,21 +463,21 @@ public:
ERFLG0_UNK_20000000 = 0x20000000,
ERFLG0_WOLF_FCHAIN_PULL = 0x10000000,
ERFLG0_UNK_8000000 = 0x8000000,
ERFLG0_UNK_4000000 = 0x4000000,
ERFLG0_FISHING_RELEASE = 0x4000000,
ERFLG0_BOSS_ROOM_WAIT = 0x2000000,
ERFLG0_ENEMY_DEAD = 0x1000000,
ERFLG0_UNK_800000 = 0x800000,
ERFLG0_BEE_FOLLOW = 0x400000,
ERFLG0_UNK_200000 = 0x200000,
ERFLG0_LEAF_SE = 0x200000,
ERFLG0_UNK_100000 = 0x100000,
ERFLG0_SINGLE_BOAR_AVOID = 0x80000,
ERFLG0_FISHING_ROD_GET_FISH = 0x40000,
ERFLG0_UNK_20000 = 0x20000,
ERFLG0_UNK_10000 = 0x10000,
ERFLG0_FISHING_ROD_REEL_END = 0x20000,
ERFLG0_FISHING_HIT = 0x10000,
ERFLG0_UNK_4000 = 0x4000,
ERFLG0_UNK_2000 = 0x2000,
ERFLG0_UNK_1000 = 0x1000,
ERFLG0_UNK_400 = 0x400,
ERFLG0_NECK_SEARCH_WIDE = 0x400,
ERFLG0_FORCE_AUTO_JUMP = 0x200,
ERFLG0_UNK_100 = 0x100,
ERFLG0_UNK_80 = 0x80,
@@ -500,31 +486,31 @@ public:
ERFLG0_NOT_HANG = 0x10,
ERFLG0_UNK_8 = 8,
ERFLG0_UNK_4 = 4,
ERFLG0_UNK_2 = 2,
ERFLG0_FORCE_WOLF_CHANGE = 2,
ERFLG0_UNK_1 = 1,
};
enum daPy_ERFLG1 {
ERFLG1_GANON_FINISH = 0x80000000,
ERFLG1_UNK_40000000 = 0x40000000,
ERFLG1_UNK_20000000 = 0x20000000,
ERFLG1_UNK_10000000 = 0x10000000,
ERFLG1_SHIELD_BACKBONE = 0x80000000,
ERFLG1_SWORD_TRIGGER_NON = 0x40000000,
ERFLG1_CANOE_ITEM_CANCEL = 0x20000000,
ERFLG1_DO_PUT_EMPHASYS = 0x10000000,
ERFLG1_LARGE_DAMAGE_UP_STOP = 0x8000000,
ERFLG1_UNK_4000000 = 0x4000000,
ERFLG1_UNK_2000000 = 0x2000000,
ERFLG1_UNK_1000000 = 0x1000000,
ERFLG1_DO_EXCHANGE_PUT_IN = 0x4000000,
ERFLG1_CHAIN_PULL_END = 0x2000000,
ERFLG1_CHAIN_FORCE_PULL = 0x1000000,
ERFLG1_UNK_400000 = 0x400000,
ERFLG1_UNK_200000 = 0x200000,
ERFLG1_UNK_100000 = 0x100000,
ERFLG1_UNK_80000 = 0x80000,
ERFLG1_UNK_40000 = 0x40000,
ERFLG1_UNK_20000 = 0x20000,
ERFLG1_WATER_DROP = 0x20000,
ERFLG1_UNK_10000 = 0x10000,
ERFLG1_UNK_8000 = 0x8000,
ERFLG1_UNK_4000 = 0x4000,
ERFLG1_UNK_2000 = 0x2000,
ERFLG1_UNK_1000 = 0x1000,
ERFLG1_UNK_800 = 0x800,
ERFLG1_WATERFALL_FRONT_HIT = 0x800,
ERFLG1_UNK_400 = 0x400,
ERFLG1_WOLF_EYE_KEEP = 0x200,
ERFLG1_UNK_100 = 0x100,
@@ -535,7 +521,7 @@ public:
ERFLG1_UNK_8 = 8,
ERFLG1_UNK_4 = 4,
ERFLG1_UNK_2 = 2,
ERFLG1_UNK_1 = 1,
ERFLG1_NS_SCREAM = 1,
};
enum daPy_ERFLG2 {
@@ -543,10 +529,10 @@ public:
ERFLG2_PORTAL_WARP_MIDNA_ATN_KEEP = 0x80,
ERFLG2_UNK_40 = 0x40,
ERFLG2_UNK_20 = 0x20,
ERFLG2_UNK_10 = 0x10,
ERFLG2_UNK_8 = 8,
ERFLG2_UNK_2 = 2,
ERFLG2_UNK_1 = 1,
ERFLG2_LIGHT_SWORD_GET_EFFECT = 0x10,
ERFLG2_FORCE_GRAB_REBOUND = 8,
ERFLG2_FORCE_HORSE_GETOFF = 2,
ERFLG2_FISHING_KEEP = 1,
};
enum daPy_RFLG0 {
@@ -556,20 +542,20 @@ public:
RFLG0_UNK_10000000 = 0x10000000,
RFLG0_UNK_8000000 = 0x8000000,
RFLG0_UNK_4000000 = 0x4000000,
RFLG0_UNK_2000000 = 0x2000000,
RFLG0_ITEM_SIGHT_BG_HIT = 0x2000000,
RFLG0_GRAB_PUT_START = 0x400000,
RFLG0_WOLF_GROWL = 0x200000,
RFLG0_UNK_80000 = 0x80000,
RFLG0_UNK_40000 = 0x40000,
RFLG0_UNK_20000 = 0x20000,
RFLG0_UNK_10000 = 0x10000,
RFLG0_UNK_8000 = 0x8000,
RFLG0_CLIMB_END_HANG = 0x40000,
RFLG0_WOLF_TAG_LOCK_JUMP_READY = 0x20000,
RFLG0_ATTENTION_LOCK = 0x10000,
RFLG0_GRAB_UP_START = 0x8000,
RFLG0_UNK_4000 = 0x4000,
RFLG0_FRONT_ROLL_CRASH = 0x2000,
RFLG0_ENEMY_ATTN_LOCK = 0x1000,
RFLG0_UNK_400 = 0x400,
RFLG0_COW_GAME_LEASH = 0x200,
RFLG0_UNK_100 = 0x100,
RFLG0_AUTO_JUMP_START = 0x100,
RFLG0_UNK_80 = 0x80,
RFLG0_UNK_40 = 0x40,
RFLG0_GRAB_UP_END = 0x20,
@@ -577,15 +563,15 @@ public:
RFLG0_UNK_8 = 0x8,
RFLG0_GRAB_THROW = 0x4,
RFLG0_UNK_2 = 0x2,
RFLG0_UNK_1 = 0x1,
RFLG0_STICK_ARROW_RESET = 0x1,
};
enum daPy_RFLG1 {
RFLG1_DAMAGE_IMPACT = 0x400,
RFLG1_UNK_200 = 0x200,
RFLG1_UNK_100 = 0x100,
RFLG1_UNK_80 = 0x80,
RFLG1_UNK_40 = 0x40,
RFLG0_FISHINGROD_USE_ACCEPT = 0x200,
RFLG1_INSECT_RELEASE = 0x100,
RFLG0_FISHINGROD_USE_START = 0x80,
RFLG1_BOARD_NO_FOOT_ANGLE = 0x40,
RFLG1_UNK_30 = 0x30,
RFLG1_UNK_20 = 0x20,
RFLG1_UNK_10 = 0x10,
@@ -593,11 +579,9 @@ public:
RFLG1_UNK_4 = 0x4,
RFLG1_UNK_2 = 0x2,
RFLG1_WOLF_ATTACK_REVERSE = 0x1,
RFLG1_UNK_C = 0xC,
};
enum {
enum daPy_MODE {
/* 0x01 */ SMODE_SUMO_READY = 1,
/* 0x25 */ SMODE_SUMO_LOSE = 37,
/* 0x27 */ SMODE_WOLF_PUZZLE = 39,
@@ -606,7 +590,7 @@ public:
/* 0x2C */ SMODE_CARGO_CARRY,
};
enum CutType {
enum daPy_CUT_TYPE {
/* 0x00 */ CUT_TYPE_NONE,
/* 0x01 */ CUT_TYPE_NM_VERTICAL,
/* 0x02 */ CUT_TYPE_NM_STAB,
@@ -618,13 +602,13 @@ public:
/* 0x08 */ CUT_TYPE_TURN_RIGHT,
/* 0x09 */ CUT_TYPE_UNK_9,
/* 0x0A */ CUT_TYPE_JUMP,
/* 0x0B */ CUT_TYPE_DASH_UNK_B,
/* 0x0C */ CUT_TYPE_DASH_UNK_C,
/* 0x0D */ CUT_TYPE_DASH_UNK_D,
/* 0x0B */ CUT_TYPE_DASH_LEFT_BOARD,
/* 0x0C */ CUT_TYPE_DASH_RIGHT_BOARD,
/* 0x0D */ CUT_TYPE_DASH_CHARGE_BOARD,
/* 0x0E */ CUT_TYPE_UNK_E,
/* 0x0F */ CUT_TYPE_UNK_F,
/* 0x10 */ CUT_TYPE_AIR,
/* 0x11 */ CUT_TYPE_DASH_UNK_11,
/* 0x10 */ CUT_TYPE_DASH_LEFT_SIDESTEP,
/* 0x11 */ CUT_TYPE_DASH_RIGHT_SIDESTEP,
/* 0x12 */ CUT_TYPE_LARGE_JUMP_INIT,
/* 0x13 */ CUT_TYPE_LARGE_JUMP,
/* 0x14 */ CUT_TYPE_LARGE_JUMP_FINISH,
@@ -641,15 +625,15 @@ public:
/* 0x1F */ CUT_TYPE_MORTAL_DRAW_B,
/* 0x20 */ CUT_TYPE_FINISH_STAB,
/* 0x21 */ CUT_TYPE_COMBO_STAB,
/* 0x22 */ CUT_TYPE_HORSE_UNK_22,
/* 0x23 */ CUT_TYPE_HORSE_UNK_23,
/* 0x22 */ CUT_TYPE_HORSE_LEFT_A,
/* 0x23 */ CUT_TYPE_HORSE_LEFT_B,
/* 0x24 */ CUT_TYPE_UNK_24,
/* 0x25 */ CUT_TYPE_DASH_UNK_25,
/* 0x26 */ CUT_TYPE_DASH_UNK_26,
/* 0x25 */ CUT_TYPE_DASH_LEFT,
/* 0x26 */ CUT_TYPE_DASH_RIGHT,
/* 0x27 */ CUT_TYPE_DOWN,
/* 0x28 */ CUT_TYPE_UNK_28,
/* 0x29 */ CUT_TYPE_GUARD_ATTACK,
/* 0x2A */ CUT_TYPE_HORSE_UNK_2A,
/* 0x2A */ CUT_TYPE_HORSE_RIGHT_A,
/* 0x2B */ CUT_TYPE_HORSE_TURN,
/* 0x2C */ CUT_TYPE_WOLF_B_LEFT,
/* 0x2D */ CUT_TYPE_WOLF_B_RIGHT,
@@ -663,32 +647,32 @@ public:
/* 0x35 */ CUT_TYPE_WOLF_UNK_35,
/* 0x36 */ CUT_TYPE_WOLF_LOCK,
/* 0x37 */ CUT_TYPE_WOLF_UNK_37,
/* 0x38 */ CUT_TYPE_DASH_UNK_38,
/* 0x38 */ CUT_TYPE_DASH_CHARGE,
/* 0x39 */ CUT_TYPE_WOLF_JUMP,
};
static u32 setParamData(int, int, int, int);
static BOOL checkFishingRodItem(int);
static BOOL checkBombItem(int);
static BOOL checkBottleItem(int);
static BOOL checkDrinkBottleItem(int);
static BOOL checkOilBottleItem(int);
static BOOL checkOpenBottleItem(int);
static BOOL checkBowItem(int);
static BOOL checkHookshotItem(int);
static BOOL checkTradeItem(int);
static BOOL checkDungeonWarpItem(int);
static u32 setParamData(int i_roomNo, int i_mode, int, int);
static BOOL checkFishingRodItem(int i_itemNo);
static BOOL checkBombItem(int i_itemNo);
static BOOL checkBottleItem(int i_itemNo);
static BOOL checkDrinkBottleItem(int i_itemNo);
static BOOL checkOilBottleItem(int i_itemNo);
static BOOL checkOpenBottleItem(int i_itemNo);
static BOOL checkBowItem(int i_itemNo);
static BOOL checkHookshotItem(int i_itemNo);
static BOOL checkTradeItem(int i_itemNo);
static BOOL checkDungeonWarpItem(int i_itemNo);
static BOOL checkMasterSwordEquip();
static BOOL checkWoodShieldEquip();
static f32 getAttentionOffsetY();
static int checkNowWolfEyeUp();
static void forceRestartRoom(int, u32, int);
static void forceRestartRoom(int i_dmgAmount, u32 i_mode, int);
static BOOL setFmChainPos(fopAc_ac_c*, cXyz*, int);
static void cancelFmChainGrab();
static void setLookPos(cXyz*);
static void setPlayerSe(u32);
static bool linkGrabSubjectNoDraw(fopAc_ac_c*);
static bool wolfGrabSubjectNoDraw(fopAc_ac_c*);
static void setLookPos(cXyz* i_pos);
static void setPlayerSe(u32 i_soundID);
static bool linkGrabSubjectNoDraw(fopAc_ac_c* i_actor);
static bool wolfGrabSubjectNoDraw(fopAc_ac_c* i_actor);
static bool checkRoomRestartStart();
static u32 checkCarryStartLightBallA();
static u32 checkCarryStartLightBallB();
@@ -697,16 +681,18 @@ public:
static bool checkBoomerangCharge();
static bool checkBoomerangChargeTime();
static daBoomerang_c* getThrowBoomerangActor();
static void cancelBoomerangLockActor(fopAc_ac_c*);
static void setPlayerDamage(int, int);
static void setMidnaMotionNum(int);
static void setMidnaFaceNum(int);
static void cancelBoomerangLockActor(fopAc_ac_c* i_actor);
static void setPlayerDamage(int i_dmgAmount, BOOL i_setDmgTimer);
static BOOL checkAcceptDungeonWarp();
static void setMidnaMotionNum(int i_motionNum);
static void setMidnaFaceNum(int i_faceNum);
static BOOL checkShieldGet() { return dComIfGs_getSelectEquipShield() != fpcNm_ITEM_NONE; }
static BOOL checkSwordGet() { return dComIfGs_getSelectEquipSword() != fpcNm_ITEM_NONE; }
cXyz getHeadTopPos() const { return mHeadTopPos; }
u32 checkThrowDamage() const { return checkNoResetFlg1(FLG1_THROW_DAMAGE); }
bool checkGoronSideMove() const { return mSpecialMode == 0x2B; }
bool checkGoronSideMove() const { return mMode == 0x2B; }
cXyz* getRightFootPosP() { return &mRightFootPos; }
cXyz* getLeftFootPosP() { return &mLeftFootPos; }
cXyz getLeftFootPos() const { return mLeftFootPos; }
@@ -717,7 +703,7 @@ public:
const cXyz getLeftHandPos() const { return mLeftHandPos; }
const cXyz getItemPos() const { return mItemPos; }
BOOL getDkCaught() const { return checkNoResetFlg1(FLG1_DK_CAUGHT); }
BOOL getDkCaught2() const { return checkNoResetFlg0(FLG0_DK_CAUGHT); }
BOOL getDkCaught2() const { return checkNoResetFlg0(FLG0_DK_CAUGHT2); }
BOOL getStCaught() const { return checkNoResetFlg1(FLG1_UNK_80000000); }
/* vt 0X008 */ virtual cXyz* getMidnaAtnPos() const { return NULL; }
@@ -790,7 +776,7 @@ public:
/* vt 0X114 */ virtual void voiceStart(u32) {}
/* vt 0X118 */ virtual void seStartOnlyReverb(u32) {}
/* vt 0X11C */ virtual void seStartOnlyReverbLevel(u32) {}
/* vt 0X120 */ virtual void setOutPower(f32, short, int) {}
/* vt 0X120 */ virtual void setOutPower(f32, s16, int) {}
/* vt 0X124 */ virtual void setGrabCollisionOffset(f32, f32, cBgS_PolyInfo*) {}
/* vt 0X128 */ virtual void onMagneGrab(f32, f32) {}
/* vt 0X12C */ virtual void onFrollCrashFlg(u8, int) {}
@@ -803,12 +789,12 @@ public:
/* vt 0X148 */ virtual BOOL checkSingleBoarBattleSecondBowReady() const { return FALSE; }
/* vt 0X14C */ virtual bool checkPointSubWindowMode() const { return FALSE; }
/* vt 0X150 */ virtual void setClothesChange(int) {}
/* vt 0X154 */ virtual void setPlayerPosAndAngle(cXyz const*, short, int) {}
/* vt 0X154 */ virtual void setPlayerPosAndAngle(cXyz const*, s16, int) {}
/* vt 0X158 */ virtual void setPlayerPosAndAngle(cXyz const*, csXyz const*) {}
/* vt 0X15C */ virtual void setPlayerPosAndAngle(f32 (*)[4]) {}
/* vt 0X160 */ virtual bool setThrowDamage(short, f32, f32, int, int, int) { return FALSE; }
/* vt 0X160 */ virtual bool setThrowDamage(s16, f32, f32, int, int, int) { return FALSE; }
/* vt 0X164 */ virtual bool checkSetNpcTks(cXyz*, int, int) { return FALSE; }
/* vt 0X168 */ virtual int setRollJump(f32, f32, short) { return FALSE; }
/* vt 0X168 */ virtual int setRollJump(f32, f32, s16) { return FALSE; }
/* vt 0X16C */ virtual void playerStartCollisionSE(u32, u32) {}
/* vt 0X170 */ virtual void changeTextureAnime(u16, u16, int) {}
/* vt 0X174 */ virtual void cancelChangeTextureAnime() {}
@@ -835,13 +821,13 @@ public:
/* vt 0X1C8 */ virtual cXyz* getKandelaarFlamePos() { return NULL; }
/* vt 0X1CC */ virtual bool checkUseKandelaar(int) { return FALSE; }
/* vt 0X1D0 */ virtual void setDkCaught(fopAc_ac_c*) {}
/* vt 0X1D4 */ virtual void onPressedDamage(cXyz const&, short) {}
/* vt 0X1D4 */ virtual void onPressedDamage(cXyz const&, s16) {}
/* vt 0X1D8 */ virtual bool checkPriActorOwn(fopAc_ac_c const*) const { return FALSE; }
/* vt 0X1DC */ virtual bool onWolfEnemyBiteAll(fopAc_ac_c*, daPy_FLG2) { return FALSE; }
/* vt 0X1E0 */ virtual bool checkWolfEnemyBiteAllOwn(fopAc_ac_c const*) const { return FALSE; }
/* vt 0X1E4 */ virtual void setWolfEnemyHangBiteAngle(short) {}
/* vt 0X1E4 */ virtual void setWolfEnemyHangBiteAngle(s16) {}
/* vt 0X1E8 */ virtual void setKandelaarMtx(f32 (*)[4], int, int) {}
/* vt 0X1EC */ virtual bool getStickAngleFromPlayerShape(short*) const { return FALSE; }
/* vt 0X1EC */ virtual bool getStickAngleFromPlayerShape(s16*) const { return FALSE; }
/* vt 0X1F0 */ virtual bool checkSpinnerPathMove() { return FALSE; }
/* vt 0X1F4 */ virtual bool checkSpinnerTriggerAttack() { return FALSE; }
/* vt 0X1F8 */ virtual void onSpinnerPathForceRemove() {}
@@ -858,7 +844,7 @@ public:
/* vt 0X224 */ virtual s16 checkSumouWithstand() const { return 0; }
/* vt 0X228 */ virtual void cancelGoronThrowEvent() {}
/* vt 0X22C */ virtual void setSumouGraspCancelCount(int) {}
/* vt 0X230 */ virtual void setSumouPushBackDirection(short) {}
/* vt 0X230 */ virtual void setSumouPushBackDirection(s16) {}
/* vt 0X234 */ virtual void setSumouLoseHeadUp() {}
/* vt 0X238 */ virtual s16 getGiantPuzzleAimAngle() const { return shape_angle.y; }
/* vt 0X23C */ virtual void setGoronSideMove(fopAc_ac_c*) {}
@@ -894,7 +880,7 @@ public:
bool getSumouCameraMode() const {
bool sumouCameraMode = false;
if (mSpecialMode != 0 && mSpecialMode < 0x26) {
if (mMode != 0 && mMode < 0x26) {
sumouCameraMode = true;
}
return sumouCameraMode;
@@ -903,7 +889,7 @@ public:
bool getSumouMode() const { return getSumouCameraMode(); }
void cancelOriginalDemo() {
mDemo.setSystemDemoType();
mDemo.setDemoMode(1);
mDemo.setDemoMode(daPy_demo_c::DEMO_UNK_1_e);
}
u32 getDemoMode() const { return mDemo.getDemoMode(); }
@@ -911,80 +897,82 @@ public:
u8 getCutCount() const { return mComboCutCount; }
BOOL checkStatusWindowDraw() const { return checkNoResetFlg2(FLG2_STATUS_WINDOW_DRAW); }
bool checkCargoCarry() const { return mSpecialMode == SMODE_CARGO_CARRY; }
BOOL getHeavyStateAndBoots() { return checkNoResetFlg0(FLG0_HVY_STATE); }
bool checkCargoCarry() const { return mMode == SMODE_CARGO_CARRY; }
BOOL getHeavyStateAndBoots() { return checkNoResetFlg0(daPy_FLG0(FLG0_HEAVY_STATE | FLG0_EQUIP_HVY_BOOTS | FLG0_DK_CAUGHT2)); }
BOOL checkEnemyAttentionLock() const { return checkResetFlg0(RFLG0_ENEMY_ATTN_LOCK); }
BOOL getGrabUpStart() const { return checkResetFlg0(RFLG0_UNK_8000); }
bool checkCanoeSlider() const { return mSpecialMode == 0x2D; }
bool checkGoatStopGame() const { return mSpecialMode == 0x2A; }
void onGoatStopGame() { mSpecialMode = 0x2A; }
BOOL getGrabUpStart() const { return checkResetFlg0(RFLG0_GRAB_UP_START); }
bool checkCanoeSlider() const { return mMode == 0x2D; }
bool checkGoatStopGame() const { return mMode == 0x2A; }
void onGoatStopGame() { mMode = 0x2A; }
u8 getCutType() const { return mCutType; }
u16 getSwordAtUpTime() const { return mSwordUpTimer; }
s16 getDamageWaitTimer() const { return mDamageTimer; }
BOOL checkWaterInMove() const { return checkNoResetFlg0(FLG0_UNDERWATER); }
BOOL checkSceneChangeAreaStart() const { return checkNoResetFlg2(FLG2_SCN_CHG_START); }
BOOL checkWaterInMove() const { return checkNoResetFlg0(FLG0_WATER_IN_MOVE); }
BOOL checkSceneChangeAreaStart() const { return checkNoResetFlg2(FLG2_SCENE_CHANGE_START); }
BOOL checkFrontRollCrash() const { return checkResetFlg0(RFLG0_FRONT_ROLL_CRASH); }
BOOL checkWolfAttackReverse() const { return checkResetFlg1(RFLG1_WOLF_ATTACK_REVERSE); }
BOOL checkFreezeDamage() const { return checkNoResetFlg1(FLG1_ICE_FREEZE); }
BOOL checkWolfTagLockJumpReady() const { return checkResetFlg0(RFLG0_UNK_20000); }
BOOL checkFreezeDamage() const { return checkNoResetFlg1(FLG1_FREEZE_DAMAGE); }
BOOL checkWolfTagLockJumpReady() const { return checkResetFlg0(RFLG0_WOLF_TAG_LOCK_JUMP_READY); }
BOOL checkDamageImpact() const { return checkResetFlg1(RFLG1_DAMAGE_IMPACT); }
BOOL getGrabUpEnd() const { return checkResetFlg0(RFLG0_GRAB_UP_END); }
BOOL getGrabPutStart() const { return checkResetFlg0(RFLG0_GRAB_PUT_START); }
BOOL checkSwimUp() const { return checkNoResetFlg0(FLG0_SWIM_UP); }
BOOL checkHorseZelda() const { return checkNoResetFlg2(FLG2_HORSE_ZELDA); }
BOOL checkSpecialHorseRide() { return checkNoResetFlg2(daPy_FLG2(FLG2_HORSE_ZELDA | FLG2_UNK_1000000 | FLG2_BOAR_SINGLE_BATTLE)); }
BOOL checkBoardNoFootAngle() const { return checkResetFlg1(RFLG1_UNK_40); }
BOOL checkSpecialHorseRide() { return checkNoResetFlg2(daPy_FLG2(FLG2_HORSE_ZELDA | FLG2_BOAR_SINGLE_BATTLE_2ND | FLG2_BOAR_SINGLE_BATTLE_1ST)); }
BOOL checkBoardNoFootAngle() const { return checkResetFlg1(RFLG1_BOARD_NO_FOOT_ANGLE); }
BOOL checkGrabThrow() const { return checkResetFlg0(RFLG0_GRAB_THROW); }
BOOL checkMidnaAtnPos() const { return checkNoResetFlg1(FLG1_MIDNA_ATN_POS); }
BOOL checkMidnaHairAtnPos() const { return checkNoResetFlg1(FLG1_MIDNA_HAIR_ATN_POS); }
BOOL checkAttentionLock() const { return checkResetFlg0(RFLG0_UNK_10000); }
BOOL checkFishingRodUseStart() const { return checkResetFlg1(RFLG1_UNK_80); }
BOOL checkFishingRodUseAccept() const { return checkResetFlg1(RFLG1_UNK_200); }
BOOL checkAttentionLock() const { return checkResetFlg0(RFLG0_ATTENTION_LOCK); }
BOOL checkFishingRodUseStart() const { return checkResetFlg1(RFLG0_FISHINGROD_USE_START); }
BOOL checkFishingRodUseAccept() const { return checkResetFlg1(RFLG0_FISHINGROD_USE_ACCEPT); }
void onBossRoomWait() { onEndResetFlg0(ERFLG0_BOSS_ROOM_WAIT); }
void onBeeFollow() { onEndResetFlg0(ERFLG0_BEE_FOLLOW); }
void onForceAutoJump() { onEndResetFlg0(ERFLG0_FORCE_AUTO_JUMP); }
void onNotAutoJump() { onEndResetFlg0(ERFLG0_NOT_AUTO_JUMP); }
void onNotHang() { onEndResetFlg0(ERFLG0_NOT_HANG); }
void onLeafSe() { onEndResetFlg0(ERFLG0_UNK_200000); }
void onLeafSe() { onEndResetFlg0(ERFLG0_LEAF_SE); }
void onWolfFchainPull() { onEndResetFlg0(ERFLG0_WOLF_FCHAIN_PULL); }
void onFishingRodGetFish() { onEndResetFlg0(ERFLG0_FISHING_ROD_GET_FISH); }
void onSingleBoarAvoid() { onEndResetFlg0(ERFLG0_SINGLE_BOAR_AVOID); }
void onShieldBackBone() { onEndResetFlg1(ERFLG1_GANON_FINISH); }
void onShieldBackBone() { onEndResetFlg1(ERFLG1_SHIELD_BACKBONE); }
void onWolfEyeKeep() { onEndResetFlg1(ERFLG1_WOLF_EYE_KEEP); }
void onPortalWarpMidnaAtnKeep() { onEndResetFlg2(ERFLG2_PORTAL_WARP_MIDNA_ATN_KEEP); }
void onFogFade() { onNoResetFlg2(FLG2_UNK_4000); }
void onDkCaught2() { onNoResetFlg0(FLG0_DK_CAUGHT); }
void onFishingRodCastingEnd() { onNoResetFlg1(FLG1_UNK_8000); }
void onFishingRodReelEnd() { onEndResetFlg0(ERFLG0_UNK_20000); }
void onFishingHit() { onEndResetFlg0(ERFLG0_UNK_10000); }
void onFishingKeep() { onEndResetFlg2(ERFLG2_UNK_1); }
void onTraningCutHead() { onNoResetFlg3(FLG3_UNK_40); }
void onTraningCutFast() { onNoResetFlg3(FLG3_UNK_80); }
void onTraningCutLargeJump() { onNoResetFlg3(FLG3_UNK_200); }
void onTraningCutLargeTurn() { onNoResetFlg3(FLG3_UNK_100); }
void onTraningCutDown() { onNoResetFlg3(FLG3_UNK_10); }
void onTraningShieldAttack() { onNoResetFlg3(FLG3_UNK_8); }
void onFogFade() { onNoResetFlg2(FLG2_FOG_FADE); }
void onDkCaught2() { onNoResetFlg0(FLG0_DK_CAUGHT2); }
void onFishingRodCastingEnd() { onNoResetFlg1(FLG1_FISHING_ROD_CASTING_END); }
void onFishingRodReelEnd() { onEndResetFlg0(ERFLG0_FISHING_ROD_REEL_END); }
void onFishingHit() { onEndResetFlg0(ERFLG0_FISHING_HIT); }
void onFishingKeep() { onEndResetFlg2(ERFLG2_FISHING_KEEP); }
void onTraningCutHead() { onNoResetFlg3(FLG3_TRANING_CUT_HEAD); }
void onTraningCutFast() { onNoResetFlg3(FLG3_TRANING_CUT_FAST); }
void onTraningCutLargeJump() { onNoResetFlg3(FLG3_TRANING_CUT_LARGE_JUMP); }
void onTraningCutLargeTurn() { onNoResetFlg3(FLG3_TRANING_CUT_LARGE_TURN); }
void onTraningCutDown() { onNoResetFlg3(FLG3_TRANING_CUT_DOWN); }
void onTraningShieldAttack() { onNoResetFlg3(FLG3_TRANING_SHIELD_ATTACK); }
void onDemoStreamAccept() { onNoResetFlg0(FLG0_DEMO_STREAM_ACCEPT); }
void offDemoStreamAccept() { offNoResetFlg0(FLG0_DEMO_STREAM_ACCEPT); }
BOOL checkStickArrowReset() const { return checkResetFlg0(RFLG0_UNK_1); }
BOOL getCutAtFlg() const { return checkNoResetFlg0(FLG0_UNK_40); }
BOOL checkBoarSingleBattleFirst() const { return checkNoResetFlg2(FLG2_BOAR_SINGLE_BATTLE); }
BOOL checkBoarSingleBattleSecond() const { return checkNoResetFlg2(FLG2_UNK_1000000); }
BOOL checkStickArrowReset() const { return checkResetFlg0(RFLG0_STICK_ARROW_RESET); }
BOOL getCutAtFlg() const { return checkNoResetFlg0(FLG0_CUT_AT_FLG); }
BOOL checkBoarSingleBattleFirst() const { return checkNoResetFlg2(FLG2_BOAR_SINGLE_BATTLE_1ST); }
BOOL checkBoarSingleBattleSecond() const { return checkNoResetFlg2(FLG2_BOAR_SINGLE_BATTLE_2ND); }
BOOL getFootOnGround() const { return checkResetFlg1(daPy_RFLG1(RFLG1_UNK_10 | RFLG1_UNK_20)); }
void offWolfEnemyHangBite() { offNoResetFlg2(FLG2_WOLF_ENEMY_HANG_BITE); }
bool onWolfEnemyHangBite(fopAc_ac_c* param_0) { return onWolfEnemyBiteAll(param_0, FLG2_WOLF_ENEMY_HANG_BITE); }
bool onWolfEnemyHangBite(fopAc_ac_c* i_enemy) { return onWolfEnemyBiteAll(i_enemy, FLG2_WOLF_ENEMY_HANG_BITE); }
void offHorseZelda() { offNoResetFlg2(FLG2_HORSE_ZELDA); }
void onHorseZelda() { onNoResetFlg2(FLG2_HORSE_ZELDA); }
BOOL checkItemSightBgHit() const { return checkResetFlg0(RFLG0_UNK_2000000); }
BOOL checkItemSightBgHit() const { return checkResetFlg0(RFLG0_ITEM_SIGHT_BG_HIT); }
void setCanoeSlider() { mSpecialMode = 0x2D; }
void setCanoeSlider() { mMode = 0x2D; }
void offCanoeSlider() {
if (checkCanoeSlider()) {
mSpecialMode = 0;
mMode = 0;
}
}
void onMidnaTalkPolySpeed() { onNoResetFlg3(FLG3_MIDNA_TALK_POLY_SPEED); }
@@ -992,28 +980,28 @@ public:
void offCargoCarry() {
if (checkCargoCarry()) {
mSpecialMode = 0;
mMode = 0;
}
}
bool onWolfEnemyCatch(fopAc_ac_c* i_actor) { return onWolfEnemyBiteAll(i_actor, FLG2_UNK_8); }
bool onWolfEnemyCatch(fopAc_ac_c* i_enemy) { return onWolfEnemyBiteAll(i_enemy, FLG2_UNK_8); }
void offGoronSideMove() {
if (checkGoronSideMove()) {
mSpecialMode = 0;
mMode = 0;
}
}
void offGoronUpStopCancel() {
offNoResetFlg0(FLG0_UNK_200000);
offNoResetFlg0(FLG0_GORON_UP_STOP_CANCEL);
}
s16 getBodyAngleX() const { return mBodyAngle.x; }
s16 getBodyAngleY() const { return mBodyAngle.y; }
f32 getHeight() const { return field_0x598; }
f32 getHeight() const { return mHeight; }
BOOL checkMidnaWarp() const { return 0; }
BOOL checkMidnaWarp() const { return FALSE; }
u32 checkNoResetFlg0(daPy_FLG0 i_flag) const { return mNoResetFlg0 & i_flag; }
u32 checkNoResetFlg1(daPy_FLG1 i_flag) const { return mNoResetFlg1 & i_flag; }
@@ -1030,10 +1018,10 @@ public:
void offNoResetFlg2(daPy_FLG2 i_flag) { mNoResetFlg2 &= ~i_flag; }
void offNoResetFlg3(daPy_FLG3 i_flag) { mNoResetFlg3 &= ~i_flag; }
void offResetFlg0(daPy_RFLG0 flag) { mResetFlg0 &= ~flag; }
void offResetFlg1(daPy_RFLG1 flag) { mResetFlg1 &= ~flag; }
void onResetFlg0(daPy_RFLG0 flag) { mResetFlg0 |= flag; }
void onResetFlg1(daPy_RFLG1 flag) { mResetFlg1 |= flag; }
void offResetFlg0(daPy_RFLG0 i_flag) { mResetFlg0 &= ~i_flag; }
void offResetFlg1(daPy_RFLG1 i_flag) { mResetFlg1 &= ~i_flag; }
void onResetFlg0(daPy_RFLG0 i_flag) { mResetFlg0 |= i_flag; }
void onResetFlg1(daPy_RFLG1 i_flag) { mResetFlg1 |= i_flag; }
void onEndResetFlg0(daPy_ERFLG0 i_flag) { mEndResetFlg0 |= i_flag; }
void onEndResetFlg2(daPy_ERFLG2 i_flag) { mEndResetFlg2 |= i_flag; }
@@ -1057,7 +1045,7 @@ public:
u32 checkWolf() const { return checkNoResetFlg1(FLG1_IS_WOLF); }
u32 checkEquipHeavyBoots() const { return checkNoResetFlg0(FLG0_EQUIP_HVY_BOOTS); }
u32 checkMagneBootsOn() const { return checkNoResetFlg0(FLG0_MAGNE_BOOTS_ON); }
BOOL checkFastSwordCut() const { return checkNoResetFlg0(FLG0_UNK_80000); }
BOOL checkFastSwordCut() const { return checkNoResetFlg0(FLG0_FAST_SWORD_CUT); }
u32 checkMidnaRide() const { return checkNoResetFlg0(FLG0_MIDNA_RIDE); }
BOOL checkWolfGrowl() const { return checkResetFlg0(RFLG0_WOLF_GROWL); }
BOOL checkWolfThreat() const { return checkWolfGrowl(); }
@@ -1072,28 +1060,28 @@ public:
void onMidnaRide() { onNoResetFlg0(FLG0_MIDNA_RIDE); }
void offMidnaRide() { offNoResetFlg0(FLG0_MIDNA_RIDE); }
void onMidnaRideShock() { onEndResetFlg1(ERFLG1_MIDNA_RIDE_SHOCK); }
void onPlayerShadowNoDraw() { onNoResetFlg2(FLG2_PLAYER_SHADOW); }
void offPlayerShadowNoDraw() { offNoResetFlg2(FLG2_PLAYER_SHADOW); }
void onLightSwordGetEffect() { onEndResetFlg2(ERFLG2_UNK_10); }
void onPlayerShadowNoDraw() { onNoResetFlg2(FLG2_PLAYER_SHADOW_NO_DRAW); }
void offPlayerShadowNoDraw() { offNoResetFlg2(FLG2_PLAYER_SHADOW_NO_DRAW); }
void onLightSwordGetEffect() { onEndResetFlg2(ERFLG2_LIGHT_SWORD_GET_EFFECT); }
void onForceGameOver() { onNoResetFlg2(FLG2_FORCE_GAMEOVER); }
void onForceWolfChange() { onEndResetFlg0(ERFLG0_UNK_2); }
void onDoPutEmphasys() { onEndResetFlg1(ERFLG1_UNK_10000000); }
void onDoExchangePutIn() { onEndResetFlg1(ERFLG1_UNK_4000000); }
void onNsScream() { onEndResetFlg1(ERFLG1_UNK_1); }
void onNsScreamAnm() { onEndResetFlg1(daPy_ERFLG1(ERFLG1_UNK_1 | ERFLG1_UNK_2)); }
void onForceWolfChange() { onEndResetFlg0(ERFLG0_FORCE_WOLF_CHANGE); }
void onDoPutEmphasys() { onEndResetFlg1(ERFLG1_DO_PUT_EMPHASYS); }
void onDoExchangePutIn() { onEndResetFlg1(ERFLG1_DO_EXCHANGE_PUT_IN); }
void onNsScream() { onEndResetFlg1(ERFLG1_NS_SCREAM); }
void onNsScreamAnm() { onEndResetFlg1(daPy_ERFLG1(ERFLG1_NS_SCREAM | ERFLG1_UNK_2)); }
void onLargeDamageUpStop() { onEndResetFlg1(ERFLG1_LARGE_DAMAGE_UP_STOP); }
void onTraningCutBack() { onNoResetFlg3(FL3_TRANING_CUT_BACK); }
void onNeckSearchWide() { onEndResetFlg0(ERFLG0_UNK_400); }
void onTraningCutBack() { onNoResetFlg3(FLG3_TRANING_CUT_BACK); }
void onNeckSearchWide() { onEndResetFlg0(ERFLG0_NECK_SEARCH_WIDE); }
void offPressedDamage() { offNoResetFlg2(FLG2_PRESSED_DAMAGE); }
void onForceSubjectCancel() { onEndResetFlg0(ERFLG0_FORCE_SUBJECT_CANCEL); }
void onEnemyDead() { onEndResetFlg0(ERFLG0_ENEMY_DEAD); }
void offDkCaught() { offNoResetFlg1(FLG1_DK_CAUGHT); }
void offDkCaught2() { offNoResetFlg0(FLG0_DK_CAUGHT); }
void onWaterFallFrontHit() { onEndResetFlg1(ERFLG1_UNK_800); }
void onCanoeItemCancel() { onEndResetFlg1(ERFLG1_UNK_20000000); }
void onSwordTriggerNon() { onEndResetFlg1(ERFLG1_UNK_40000000); }
void offDkCaught2() { offNoResetFlg0(FLG0_DK_CAUGHT2); }
void onWaterFallFrontHit() { onEndResetFlg1(ERFLG1_WATERFALL_FRONT_HIT); }
void onCanoeItemCancel() { onEndResetFlg1(ERFLG1_CANOE_ITEM_CANCEL); }
void onSwordTriggerNon() { onEndResetFlg1(ERFLG1_SWORD_TRIGGER_NON); }
u32 checkBoarSingleBattle() const { return checkNoResetFlg2(daPy_FLG2(FLG2_UNK_1000000 | FLG2_BOAR_SINGLE_BATTLE)); }
u32 checkBoarSingleBattle() const { return checkNoResetFlg2(daPy_FLG2(FLG2_BOAR_SINGLE_BATTLE_2ND | FLG2_BOAR_SINGLE_BATTLE_1ST)); }
u32 checkWolfDashAutoJump() const { return checkNoResetFlg2(FLG2_WOLF_DASH_AUTO_JUMP); }
void changeOriginalDemo() {
@@ -1108,8 +1096,8 @@ public:
mDemo.setParam2(i_param2);
}
void changeDemoParam0(int i_param1) {
mDemo.setParam0(i_param1);
void changeDemoParam0(int i_param0) {
mDemo.setParam0(i_param0);
}
void changeDemoParam1(int i_param1) {
@@ -1126,7 +1114,7 @@ public:
void setItemPos(cXyz* i_itemPos) { mItemPos = *i_itemPos; }
cXyz* getViewerCurrentPosP() { return &field_0x5f8; }
cXyz* getViewerCurrentPosP() { return &mViewerCurrentPos; }
static bool checkPeepEndSceneChange() { return getLastSceneMode() == 7; }
@@ -1163,8 +1151,17 @@ public:
return dComIfGs_getSelectEquipClothes() == fpcNm_ITEM_ARMOR;
}
/* dSv_event_flag_c::M_067 - Main Event - Midna riding / not riding (ON == riding) */
static BOOL checkFirstMidnaDemo() { return dComIfGs_isEventBit(0xc10); }
static bool checkCarvingWoodShieldEquip() {
return dComIfGs_getSelectEquipShield() == fpcNm_ITEM_WOOD_SHIELD;
}
static bool checkShopWoodShieldEquip() {
return dComIfGs_getSelectEquipShield() == fpcNm_ITEM_SHIELD;
}
static BOOL checkPowerGloveGet() { return false; }
static BOOL checkFirstMidnaDemo() { return dComIfGs_isEventBit(dSv_event_flag_c::M_067); }
static int checkNowWolfPowerUp() { return checkNowWolfEyeUp(); }
static daMidna_c* getMidnaActor() { return m_midnaActor; }
@@ -1180,10 +1177,10 @@ public:
}
BOOL checkCowGameLash() const { return checkResetFlg0(RFLG0_COW_GAME_LEASH); }
BOOL checkClimbEndHang() { return checkResetFlg0(RFLG0_UNK_40000); }
BOOL checkClimbEndHang() { return checkResetFlg0(RFLG0_CLIMB_END_HANG); }
void onForceHorseGetOff() {
onEndResetFlg2(ERFLG2_UNK_2);
onEndResetFlg2(ERFLG2_FORCE_HORSE_GETOFF);
}
s16 getFishingRodAngleY() const {
@@ -1191,71 +1188,72 @@ public:
}
void onFishingRelease() {
onEndResetFlg0(ERFLG0_UNK_4000000);
onEndResetFlg0(ERFLG0_FISHING_RELEASE);
}
static daMidna_c* m_midnaActor;
void setGiantPuzzle() { mSpecialMode = SMODE_WOLF_PUZZLE; }
void setGiantPuzzleEnd() { mSpecialMode = 0; }
void setGiantPuzzle() { mMode = SMODE_WOLF_PUZZLE; }
void setGiantPuzzleEnd() { mMode = 0; }
BOOL checkAutoJumpStart() const { return checkResetFlg0(RFLG0_UNK_100); }
BOOL checkAutoJumpStart() const { return checkResetFlg0(RFLG0_AUTO_JUMP_START); }
void onForceGrabRebound() {
onEndResetFlg2(ERFLG2_UNK_8);
onEndResetFlg2(ERFLG2_FORCE_GRAB_REBOUND);
}
void setSumouReadyAcceptButton() { mSpecialMode = 2; }
void setSumouForceStand() { mSpecialMode = 3; }
void setSumouPushFrontStop() { mSpecialMode = 9; }
void setSumouPunchWinEnd() { mSpecialMode = 0xB; }
void setSumouPunchLoseEnd() { mSpecialMode = 0xC; }
void setSumouMoveWinEnd() { mSpecialMode = 0xD; }
void setSumouMoveLoseEnd() { mSpecialMode = 0xE; }
void setSumouReadyAcceptButton() { mMode = 2; }
void setSumouForceStand() { mMode = 3; }
void setSumouPushFrontStop() { mMode = 9; }
void setSumouPunchWinEnd() { mMode = 0xB; }
void setSumouPunchLoseEnd() { mMode = 0xC; }
void setSumouMoveWinEnd() { mMode = 0xD; }
void setSumouMoveLoseEnd() { mMode = 0xE; }
void setSumouForcePunch() {
if (mSpecialMode == 0x1F) {
mSpecialMode = 0x21;
if (mMode == 0x1F) {
mMode = 0x21;
} else {
mSpecialMode = 0x1C;
mMode = 0x1C;
}
}
void setSumouForceTackle() { mSpecialMode = 0x1B; }
void setSumouForceGraspCancel() { mSpecialMode = 0x24; }
void setSumouForceTackle() { mMode = 0x1B; }
void setSumouForceGraspCancel() { mMode = 0x24; }
bool checkSumouPushFront() const { return mSpecialMode == 7; }
bool checkSumouPushBack() const { return mSpecialMode == 8; }
bool checkSumouTackleSuccess() const { return mSpecialMode == 0xF; }
bool checkSumouTackleSuccessPunch() const { return mSpecialMode == 0x10; }
bool checkSumouTackleMiss() const { return mSpecialMode == 0x11; }
bool checkSumouTackleDraw() const { return mSpecialMode == 0x12; }
bool checkSumouPunchSuccess() const { return mSpecialMode == 0x13; }
bool checkSumouPunchMiss() const { return mSpecialMode == 0x14; }
bool checkSumouPunchDraw() const { return mSpecialMode == 0x15; }
bool checkSumouWait() const { return mSpecialMode == 0x16; }
bool checkSumouLeftMove() const { return mSpecialMode == 0x17; }
bool checkSumouRightMove() const { return mSpecialMode == 0x18; }
bool checkSumouSlideLeft() const { return mSpecialMode == 0x19; }
bool checkSumouSlideRight() const { return mSpecialMode == 0x1A; }
bool checkSumouPunchStagger() const { return mSpecialMode == 0x1F; }
bool checkSumouTackleStagger() const { return mSpecialMode == 0x20; }
bool checkSumouGraspRelease() const { return mSpecialMode == 0x23; }
bool checkSumouPushFront() const { return mMode == 7; }
bool checkSumouPushBack() const { return mMode == 8; }
bool checkSumouTackleSuccess() const { return mMode == 0xF; }
bool checkSumouTackleSuccessPunch() const { return mMode == 0x10; }
bool checkSumouTackleMiss() const { return mMode == 0x11; }
bool checkSumouTackleDraw() const { return mMode == 0x12; }
bool checkSumouPunchSuccess() const { return mMode == 0x13; }
bool checkSumouPunchMiss() const { return mMode == 0x14; }
bool checkSumouPunchDraw() const { return mMode == 0x15; }
bool checkSumouWait() const { return mMode == 0x16; }
bool checkSumouLeftMove() const { return mMode == 0x17; }
bool checkSumouRightMove() const { return mMode == 0x18; }
bool checkSumouSlideLeft() const { return mMode == 0x19; }
bool checkSumouSlideRight() const { return mMode == 0x1A; }
bool checkSumouPunchStagger() const { return mMode == 0x1F; }
bool checkSumouTackleStagger() const { return mMode == 0x20; }
bool checkSumouGraspRelease() const { return mMode == 0x23; }
void onHeavyState() { onNoResetFlg0(FLG0_UNK_40000000); }
void onHeavyState() { onNoResetFlg0(FLG0_HEAVY_STATE); }
void onHeavyStateMidnaPanic() {
onHeavyState();
onEndResetFlg1(ERFLG1_UNK_40000);
}
BOOL checkInsectRelease() { return checkResetFlg1(RFLG1_UNK_100); }
BOOL checkInsectRelease() { return checkResetFlg1(RFLG1_INSECT_RELEASE); }
void onChainForcePull() { onEndResetFlg1(ERFLG1_UNK_1000000); }
void onChainPullEnd() { onEndResetFlg1(ERFLG1_UNK_2000000); }
void onChainForcePull() { onEndResetFlg1(ERFLG1_CHAIN_FORCE_PULL); }
void onChainPullEnd() { onEndResetFlg1(ERFLG1_CHAIN_PULL_END); }
void onWaterDrop() { onEndResetFlg1(ERFLG1_UNK_20000); }
void forceKandelaarLightOff() { onNoResetFlg2(FLG2_UNK_10000000); }
void onWaterDrop() { onEndResetFlg1(ERFLG1_WATER_DROP); }
void forceKandelaarLightOff() { onNoResetFlg2(FLG2_KANDELAAR_LIGHT_OFF); }
};
int daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, s16 param_4);
void daPy_aramBufferCheck(void* i_buffer, u32 i_size);
int daPy_addCalcShort(s16* i_value, s16 i_target, s16 i_scale, s16 i_maxStep, s16 i_minStep);
inline daPy_py_c* daPy_getPlayerActorClass() {
return (daPy_py_c*)dComIfGp_getPlayer(0);
+1
View File
@@ -48,6 +48,7 @@ public:
dPath* checkPathMoveNow() { return mpPathMove; }
static u32 getWaitArg() { return 0; }
static int getWaterSinkLimit() { return 50; }
BOOL getDeleteFlg() const { return mDeleteFlg; }
+3 -3
View File
@@ -14,7 +14,7 @@ public:
int Draw();
int Delete();
u8 getSw() { return fopAcM_GetParamBit(this, 0, 8); }
u32 getSw() { return fopAcM_GetParamBit(this, 0, 8); }
private:
/* 0x568 */ u8 mSwitch;
@@ -25,11 +25,11 @@ private:
class daTagCstaSw_HIO_c : public mDoHIO_entry_c {
public:
daTagCstaSw_HIO_c();
virtual ~daTagCstaSw_HIO_c();
virtual ~daTagCstaSw_HIO_c() {}
void genMessage(JORMContext*);
u8 unk_0x4;
u8 show_range;
};
#endif /* D_A_TAG_CSTASW_H */
+1 -1
View File
@@ -6,7 +6,7 @@
class daTagLv6Gate_c : public fopAc_ac_c {
public:
int createHeap();
inline int createHeap();
int create();
inline int execute();
int draw();
+6 -6
View File
@@ -6,23 +6,23 @@
class daTagLv7Gate_c : public fopAc_ac_c {
public:
int create();
void create_init();
int execute();
inline void create_init();
inline int execute();
void calcFly();
inline ~daTagLv7Gate_c();
inline int createHeap();
inline void setPath(u8 i_path_ID);
inline int setPath(int i_path_ID);
inline void initBaseMtx();
inline void setBaseMtx();
inline void flyAnime();
inline bool checkPoint(f32 i_speed);
inline bool checkPoint(cXyz& i_point, f32 i_speed);
inline bool setNextPoint();
inline int draw();
u8 getPathID() { return fopAcM_GetParam(this) >> 0x10; }
u16 getFlowNodeNo() { return fopAcM_GetParam(this); }
u8 getPathID() { return (fopAcM_GetParam(this) >> 16) & 0xFF; }
s16 getFlowNodeNo() { return (u16)fopAcM_GetParam(this); }
/* 0x568 */ J3DModel* mpModel;
/* 0x56C */ mDoExt_bckAnm* mpBck;
+2 -2
View File
@@ -10,8 +10,8 @@ class daTagLv8Gate_c : public fopAc_ac_c {
public:
inline ~daTagLv8Gate_c();
int createHeap();
int execute();
inline int createHeap();
inline int execute();
void initBaseMtx();
void create_init();
+43 -40
View File
@@ -8,6 +8,26 @@
class daTagTWGate_c;
typedef void (daTagTWGate_c::*actionFunc)();
struct daTagTWGate_Attr_c {
/* 0x00 */ u8 show_range;
};
class daTagTWGate_Hio_c : public mDoHIO_entry_c {
public:
daTagTWGate_Hio_c();
inline void ct();
inline void dt();
void default_set();
inline void genMessage(JORMContext*);
/* 0x08 */ int field_0x8;
/* 0x0C */ daTagTWGate_Attr_c attr;
};
class daTagTWGate_c : public fopAc_ac_c {
public:
enum EType {
@@ -31,6 +51,7 @@ public:
/* 0x0A */ ACT_DEMO_HYRAL_1,
/* 0x0B */ ACT_DEMO_HYRAL_2,
/* 0x0C */ ACT_DEMO_HYRAL_3,
/* 0x0D */ MODE_MAX_e,
};
inline ~daTagTWGate_c();
@@ -62,65 +83,47 @@ public:
void initDemoHyral3();
void executeDemoHyral3();
void initBaseMtx();
int downloadModels();
inline int downloadModels();
void initTalk(int, fopAc_ac_c**);
bool talkProc(int*, int, fopAc_ac_c**);
static int createHeapCallBack(fopAc_ac_c*);
int CreateHeap();
u8 getSwitch() { return fopAcM_GetParam(this) >> 8; }
u8 getSwitch() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
u8 getType() { return fopAcM_GetParam(this); }
inline int create();
void create_init() {
field_0x5e0 = 0;
mActionID = 0;
mAction = &ActionTable[mActionID][0];
(this->**mAction)();
inline void create_init();
inline void callExecute();
inline int execute();
inline int draw();
#if DEBUG
daTagTWGate_Attr_c& attr() const {
return mHio.attr;
}
#endif
void callExecute() {
(this->*mAction[1])();
mDoAud_seStartLevel(Z2SE_OBJ_DARK_GATE, &current.pos, 0, 0);
}
inline void callInit();
int execute() {
callExecute();
inline void setAction(Mode_e i_action);
if (field_0x5e0 != 0) {
mpMorf->play(0, 0);
mpMorf->modelCalc();
}
return 1;
}
int draw() {
if (field_0x5e0 != 0) {
mpMorf->entryDL();
}
return 1;
}
void callInit() {
(this->*(*mAction))();
}
void setAction(Mode_e action) {
mActionID = action;
mAction = ActionTable[mActionID];
callInit();
}
static u8 const mAttr[1];
static actionFunc ActionTable[13][2];
static daTagTWGate_Attr_c const mAttr;
#if DEBUG
static daTagTWGate_Hio_c mHio;
#endif
static const actionFunc ActionTable[][2];
private:
/* 0x568 */ mDoExt_McaMorfSO* mpMorf;
/* 0x56C */ request_of_phase_process_class mPhaseZevArc;
/* 0x574 */ request_of_phase_process_class mPhaseMdRes;
/* 0x57C */ request_of_phase_process_class mPhasePyRes;
/* 0x584 */ actionFunc* mAction;
/* 0x584 */ const actionFunc* mAction;
/* 0x588 */ int mActionID;
/* 0x58C */ dMsgFlow_c mMsgFlow;
/* 0x5D8 */ u8 field_0x5d8[4];
+3 -15
View File
@@ -5,21 +5,9 @@
class daTagAssist_c : public fopAc_ac_c {
public:
void create_init() {
attention_info.flags = 0;
field_0x570 = -1;
}
int create() {
fopAcM_ct(this, daTagAssist_c);
create_init();
return cPhs_COMPLEATE_e;
}
int execute() {
fopAcM_searchPlayerDistanceXZ(this);
return 1;
}
inline void create_init();
inline int create();
inline int execute();
u8 field_0x568[8];
s16 field_0x570;
+1
View File
@@ -16,6 +16,7 @@ public:
void action();
BOOL checkHit();
void createItem();
int draw();
int _delete();
virtual ~daTagAtkItem_c() {}
+33 -12
View File
@@ -4,6 +4,22 @@
#include "d/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
class daAttp_HIO_c : public mDoHIO_entry_c {
public:
daAttp_HIO_c();
void genMessage(JORMContext*);
/* 0x06 */ u8 enable_type_switching;
/* 0x07 */ u8 type_spec;
/* 0x08 */ u8 enable_distance_display;
/* 0x0C */ f32 dist_max;
/* 0x10 */ f32 dist_max_release;
/* 0x14 */ f32 dist_adjust;
/* 0x18 */ f32 upper_y;
/* 0x1C */ f32 lower_y;
};
class daAttp_c : public fopAc_ac_c {
public:
int Create();
@@ -11,28 +27,33 @@ public:
int execute();
int draw();
int _delete();
#if DEBUG
Mtx field_0x568;
u8 field_0x598;
#endif
}; // Size: 0x568
namespace daAttp_prm {
static inline u32 getArg0(daAttp_c* pActor) {
return fopAcM_GetParam(pActor) & 3;
static inline u8 getArg0(daAttp_c* pActor) {
return fopAcM_GetParam(pActor) & 0x3;
}
static inline u32 getArg1(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 2) & 3;
static inline u8 getArg1(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 2) & 0x3;
}
static inline u32 getArg2(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 4) & 7;
static inline u8 getArg2(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 4) & 0x7;
}
static inline u32 getArg3(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 7) & 1;
static inline u8 getArg3(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 7) & 0x1;
}
static inline u32 getArg4(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 8) & 1;
static inline u8 getArg4(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 8) & 0x1;
}
static inline u32 getSw1(daAttp_c* pActor) {
static inline u8 getSw1(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 0x10) & 0xff;
}
static inline u32 getSw2(daAttp_c* pActor) {
static inline u8 getSw2(daAttp_c* pActor) {
return (fopAcM_GetParam(pActor) >> 0x18);
}
} // namespace daAttp_prm
+6 -6
View File
@@ -14,18 +14,18 @@ private:
/* 0x0576 */ u8 mBottleItemType;
public:
s32 create();
s32 Delete();
s32 Execute();
s32 Draw();
int create();
int Delete();
int Execute();
int Draw();
void setTypeFromParam();
void restart();
void initialize();
int checkProcess(ProcessFunc);
int setProcess(ProcessFunc);
void setAttnPos();
s32 chkEvent();
s32 orderEvent();
int chkEvent();
int orderEvent();
void makeSoup();
int wait(void*);
virtual ~daTag_BottleItem_c();
+1
View File
@@ -14,6 +14,7 @@ public:
u16 getAreaType();
u16 getAreaNoChk();
int execute();
int draw();
inline int create();
+11 -6
View File
@@ -6,10 +6,11 @@
class daTagChgRestart_c : public fopAc_ac_c {
public:
daTagChgRestart_c() {}
s32 Create();
s32 create();
s32 execute();
s32 _delete();
int Create();
int create();
int execute();
int draw();
int _delete();
/* 0x0568 */ cXyz mVertices[4];
};
@@ -17,8 +18,12 @@ public:
STATIC_ASSERT(sizeof(daTagChgRestart_c) == 0x598);
namespace daTagChgRestart_prm {
inline u8 getSwNo(daTagChgRestart_c* p_chgRestart) { return fopAcM_GetParam(p_chgRestart) >> 8; }
inline u8 getPlayerNo(daTagChgRestart_c* p_chgRestart) { return fopAcM_GetParam(p_chgRestart); }
inline u8 getSwNo(daTagChgRestart_c* p_chgRestart) {
return (fopAcM_GetParam(p_chgRestart) >> 8) & 0xFF;
}
inline u8 getPlayerNo(daTagChgRestart_c* p_chgRestart) {
return fopAcM_GetParam(p_chgRestart);
}
}; // namespace daTagChgRestart_prm
#endif /* D_A_TAG_CHGRESTART_H */
+9 -5
View File
@@ -7,11 +7,12 @@
class daTag_Chk_c : public fopAc_ac_c {
public:
int execute();
int draw();
u16 getAreaType() { return home.angle.z & 0x100; }
u16 getHeight() { return fopAcM_GetParam(this) & 0xff; }
u8 getSwBit() { return fopAcM_GetParam(this) >> 8; }
u8 getSwBit2() { return fopAcM_GetParam(this) >> 16; }
u8 getHeight() { return fopAcM_GetParam(this) & 0xff; }
u8 getSwBit() { return (fopAcM_GetParam(this) & 0xff00) >> 8; }
u8 getSwBit2() { return (fopAcM_GetParam(this) & 0xff0000) >> 16; }
int create() {
fopAcM_ct(this, daTag_Chk_c);
@@ -34,8 +35,11 @@ public:
attention_info.position = current.pos;
u16 height = getHeight();
height != 0xff ? attention_info.position.y += height * 10.0f : attention_info.position.y += scale.y * 0.5f;
if (getHeight() != 0xff) {
attention_info.position.y += getHeight() * 10.0f;
} else {
attention_info.position.y += scale.y * 0.5f;
}
eyePos = attention_info.position;
return cPhs_COMPLEATE_e;
+1 -1
View File
@@ -23,7 +23,7 @@ struct daTagCsw_c : public fopAc_ac_c, public request_of_phase_process_class {
int getSw2() { return fopAcM_GetParamBit(this, 9, 8); }
int getType() { return fopAcM_GetParamBit(this, 0, 1); }
int getParam(int param_1, int param_2, int param_3) {
return (1 << param_3) - 1U & param_1 >> (param_2 & 0x3fU);
return (1 << param_3) - 1U & param_1 >> param_2;
}
int getArg0() { return getParam(current.angle.x, 0, 8); }
int getItemBit() { return fopAcM_GetParamBit(this, 17, 8); }
+1 -2
View File
@@ -5,8 +5,7 @@
class daTagEscape_c : public fopAc_ac_c {
public:
daTagEscape_c() {}
~daTagEscape_c() {}
inline int create();
u8 getPathID() { return fopAcM_GetParam(this) & 0xff; }
};
+1 -1
View File
@@ -9,7 +9,7 @@ public:
int getAppearPoint(Vec*);
void createGuard(u32);
u8 getPathID() { return fopAcM_GetParam(this) >> 8; }
u8 getPathID() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
inline int create();
inline void create_init();
+1 -1
View File
@@ -14,7 +14,7 @@ public:
int destroy();
int execute();
int draw();
u8 isAreaCheck();
bool isAreaCheck();
int getParam();
u8 getSwitchBit();
virtual ~daTag_Howl_c() {}
+2 -2
View File
@@ -45,9 +45,9 @@ public:
}
int getType() {
int param = fopAcM_GetParam(this) >> 0x18;
int type;
u32 param = (fopAcM_GetParam(this) & 0xFF000000) >> 0x18;
int type;
if (param == 0xFF) {
type = 0;
} else {
+1 -1
View File
@@ -5,7 +5,7 @@
#include "d/d_msg_flow.h"
struct daTag_Lantern_HIOParam {
u8 field_0x0;
u8 enable_debug_info;
};
class daTag_Lantern_Param_c {
+2 -2
View File
@@ -13,8 +13,8 @@ public:
int draw();
int _delete();
u8 getSwBit() { return fopAcM_GetParamBit(this, 0, 8); }
u32 getType() { return fopAcM_GetParamBit(this, 8, 4); }
u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getType() { return fopAcM_GetParamBit(this, 8, 4); }
/* 0x568 */ DALKMIST_INFLUENCE mInfluence;
/* 0x57C */ u8 field_0x57c;
+3 -3
View File
@@ -14,7 +14,7 @@ public:
int Draw();
int Delete();
u8 getSw() { return fopAcM_GetParamBit(this, 0, 8); }
u32 getSw() { return fopAcM_GetParamBit(this, 0, 8); }
private:
/* 0x568 */ u8 mSwitch;
@@ -24,11 +24,11 @@ private:
class daLv6CstaSw_HIO_c : public mDoHIO_entry_c {
public:
daLv6CstaSw_HIO_c();
virtual ~daLv6CstaSw_HIO_c();
virtual ~daLv6CstaSw_HIO_c() {}
void genMessage(JORMContext*);
u8 unk_0x4;
u8 show_range;
};
#endif /* D_A_TAG_LV6CSTASW_H */
+5 -4
View File
@@ -11,6 +11,7 @@ public:
int Create();
int create();
int execute();
int draw();
int _delete();
static u8 getPlayerNo();
@@ -28,18 +29,18 @@ public:
namespace daTagMist_prm {
inline u8 getSwNoNum(daTagMist_c* i_this) {
return fopAcM_GetParam(i_this) >> 0x10;
return (fopAcM_GetParam(i_this) >> 16) & 0xFF;
}
inline u8 getMySwNo(daTagMist_c* i_this) {
return fopAcM_GetParam(i_this) >> 0x8;
return (fopAcM_GetParam(i_this) >> 8) & 0xFF;
}
inline u8 getTopSwNo(daTagMist_c* i_this) {
return fopAcM_GetParam(i_this);
}
inline u8 getExitNo(daTagMist_c* i_this) {
return (fopAcM_GetParam(i_this) >> 0x18) & 0x3F;
return (fopAcM_GetParam(i_this) >> 24) & 0x3F;
}
inline int getSwNo2(daTagMist_c* i_this) {
inline u8 getSwNo2(daTagMist_c* i_this) {
return i_this->field_0x5a2 & 0xFF;
}
} // namespace daTagMist_prm
+2 -2
View File
@@ -12,13 +12,13 @@ public:
int execute();
void onUseFlg() { mUseFlg = true; }
bool checkNoAttention() { return mAttention == 0xFF; }
bool checkNoAttention() const { return mAttention == 0xFF; }
private:
/* 0x568 */ u8 field_0x568;
/* 0x569 */ u8 field_0x569;
/* 0x56A */ u8 mAttention;
/* 0x56B */ bool field_0x56b;
/* 0x56B */ u8 field_0x56b;
/* 0x56C */ bool mUseFlg;
/* 0x56D */ u8 field_0x56d[3];
/* 0x570 */ u16 field_0x570;
+20 -3
View File
@@ -16,6 +16,23 @@ public:
static const daTag_Msg_HIO_Param_c m;
};
#if DEBUG
class daTag_Msg_HIO_c : public JORReflexible {
public:
daTag_Msg_HIO_c();
~daTag_Msg_HIO_c();
void genMessage(JORMContext*);
s8 mChild;
daTag_Msg_HIO_Param_c m;
};
#define TAG_MSG_HIO_CLASS daTag_Msg_HIO_c
#else
#define TAG_MSG_HIO_CLASS daTag_Msg_Param_c
#endif
class daTag_Msg_c : public fopAc_ac_c {
public:
virtual ~daTag_Msg_c();
@@ -39,9 +56,9 @@ public:
/* 0x5CC */ int mOrderEvtNum;
/* 0x5D0 */ s16 mEventIdx;
/* 0x5D2 */ u8 field_0x5D2[0x5D8 - 0x5D2];
/* 0x5D8 */ daTag_Msg_Param_c* mParam;
/* 0x5DC */ u8 field_0x5dc;
/* 0x5DD */ u8 field_0x5dd;
/* 0x5D8 */ TAG_MSG_HIO_CLASS* mpHIO;
/* 0x5DC */ bool field_0x5dc;
/* 0x5DD */ bool field_0x5dd;
/* 0x5DE */ u8 mOnSwitch;
/* 0x5DF */ u8 mOffSwitch;
/* 0x5E0 */ u16 mOnSaveLabel;
+2 -2
View File
@@ -8,8 +8,8 @@ public:
s32 create();
s32 execute();
u8 getSwBit() { return fopAcM_GetParam(this) >> 8; }
u8 getMode() { return fopAcM_GetParam(this); }
u8 getSwBit() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
int getMode() { return fopAcM_GetParam(this) & 0xFF; }
f32 getExtent() { return scale.x * 100.0f;}
private:
+2 -2
View File
@@ -10,8 +10,8 @@ public:
int Execute();
int Draw();
bool setTurnOnOffChange();
u32 getTurnOnTime();
u32 getTurnOffTime();
u8 getTurnOnTime();
u8 getTurnOffTime();
void initialize();
virtual ~daTag_MynaLight_c();
+4 -7
View File
@@ -14,17 +14,14 @@ public:
int isDelete();
int chkPointInArea(cXyz);
u32 getId() {
u32 id = fopAcM_GetParam(this) >> 0x18;
if (id != 0xFF) {
return id;
}
return -1;
int getId() {
u16 id = (fopAcM_GetParam(this) & 0xFF000000) >> 24;
return id == 0xFF ? -1 : id;
}
u8 getBitSW() { return fopAcM_GetParam(this) & 0xFF; }
u8 getBitSW2() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
u8 getBitSW2() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
u32 getFlowNodeNo() {
if (home.angle.x != 0xFFFF) {
+1 -1
View File
@@ -17,7 +17,7 @@ public:
int execute();
int draw();
u8 getType() { return fopAcM_GetParamBit(this, 0, 1); }
u32 getType() { return fopAcM_GetParamBit(this, 0, 1); }
int getSwNo() { return fopAcM_GetParamBit(this, 1, 8); }
/* 0x568 */ f32 field_0x568;
+1 -1
View File
@@ -13,7 +13,7 @@ public:
int draw();
int execute();
void init();
u8 chkPlyrInTag();
bool chkPlyrInTag();
/* 0x56C */ f32 field_0x56c;
/* 0x570 */ f32 field_0x570;
+4 -2
View File
@@ -31,9 +31,11 @@ public:
void setAction(u8 i_action) { mAction = i_action; }
u8 getSwBit() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getSwbit() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getSwBit2() { return fopAcM_GetParamBit(this, 0x10, 8); }
u8 getSwbit2() { return fopAcM_GetParamBit(this, 0x10, 8); }
u8 getNextSceneNo() { return fopAcM_GetParamBit(this, 0, 8); }
/* 0x568 */ request_of_phase_process_class mPhase;
/* 0x570 */ u8 mTimer;
+2 -2
View File
@@ -12,13 +12,13 @@ public:
int draw();
int execute();
void init();
u8 chkPlyrInTag();
bool chkPlyrInTag();
s8 getArg0_RoomSaveTableNo() { return fopAcM_GetParamBit(this, 0, 8); }
s8 getArg1_RoomNo() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getArg2_CngBitVal() { return fopAcM_GetParamBit(this, 16, 1); }
u8 getArg3_CngBitFlg() { return fopAcM_GetParamBit(this, 17, 1); }
u8 getSwBit() { return fopAcM_GetParamBit(this, 24, 8); }
int getSwBit() { return fopAcM_GetParamBit(this, 24, 8); }
/* 0x56C */ f32 field_0x56c;
/* 0x570 */ f32 field_0x570;
+1
View File
@@ -8,6 +8,7 @@ public:
int Create();
int create();
int execute();
int draw();
int _delete();
/* 0x568 */ s8 mPlayerRoomNo;
+1
View File
@@ -14,6 +14,7 @@ public:
int CreateHeap();
int create();
int execute();
int draw();
int _delete();
f32 GetR() { return mRadius; }
};
+3 -2
View File
@@ -10,10 +10,11 @@ public:
int Create();
int create();
int execute();
u8 checkArea();
bool checkArea();
int draw();
int _delete();
u32 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
/* 0x568 */ u8 mTimer;
}; // Size: 0x56C
+1 -2
View File
@@ -14,7 +14,7 @@ public:
int Delete();
int Execute();
int Draw();
int getTypeFromParam();
u8 getTypeFromParam();
u8 getSwitchFromParam();
u16 getFlowNodeNum();
u16 getValue();
@@ -29,7 +29,6 @@ public:
int talk(void*);
~daTag_SSDrink_c();
s32 fopAcM_seenPlayerAngleY() { return fopAcM_seenActorAngleY(this, dComIfGp_getPlayer(0)); }
bool checkShopOil() const { return field_0x5D2 == 4; }
/* 0x578 */ dMsgFlow_c field_0x578;
+9 -5
View File
@@ -21,7 +21,7 @@ public:
void endParticle();
BOOL checkStartDemo();
BOOL checkOnEffect();
s32 getLetterCount();
int getLetterCount();
int draw();
int _delete();
@@ -38,7 +38,7 @@ private:
/* 0x596 */ u8 mMapToolId;
/* 0x597 */ u8 mSkyCharacterEventBitIdIndex;
/* 0x598 */ s16 mEventId;
/* 0x59C */ u32 mTreasureDemoItemId;
/* 0x59C */ u32 mItemId;
/* 0x5A0 */ s32 mOwlStatueId;
enum Action_e {
@@ -63,19 +63,23 @@ private:
TAG_LOCATION_RUINED_THEATRE
};
void setAction(Action_e action) {
void setAction(u8 action) {
mCurrentAction = action;
}
u32 getSwbit() {
u8 getSwbit() {
return fopAcM_GetParamBit(this, 0, 8);
}
// Returns whether player has obtained a Sky Character from the tag
u32 getSwbit2() {
u8 getSwbit2() {
return fopAcM_GetParamBit(this, 12, 8);
}
u8 getType() {
return fopAcM_GetParamBit(this, 8, 4);
}
};
#endif /* D_A_TAG_STATUE_EVT_H */
+1 -1
View File
@@ -5,7 +5,7 @@
class daTagStream_c : public fopAc_ac_c {
public:
u8 getPriority() {
u8 getPriority() const {
return mPriority;
}
+4 -75
View File
@@ -1,61 +1,16 @@
#ifndef D_A_TAG_THEB_HINT_H
#define D_A_TAG_THEB_HINT_H
// #include "d/actor/d_a_npc_theB.h"
#include "d/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
// needs to be pulled from d_a_npc_theB.h eventually
struct daNpcTheB_c {
daNpcTheB_c();
~daNpcTheB_c();
void create();
void CreateHeap();
void Delete();
void Execute();
void Draw();
void ctrlJoint(J3DJoint*, J3DModel*);
void createHeapCallBack(fopAc_ac_c*);
void ctrlJointCallBack(J3DJoint*, int);
void getHandPos1(int);
void getHandPos2(int);
void setHintEvent(s32, u16, int);
void main();
void setParam();
void ctrlBtk();
void setAttnPos();
void setExpressionAnm(int, bool);
void setExpressionBtp(int);
bool setMotionAnm(int, f32);
bool drawDbgInfo();
void reset();
void playExpression();
void playMotion();
void doNormalAction();
void doEvent();
void lookat();
void wait(void*);
void setMotion(int, f32, int);
void setExpression(int, f32);
void talk(void*);
void EvCut_PersonalCombatIntro(int);
void EvCut_PersonalCombatRevenge(int);
void EvCut_PersonalCombatAfter();
void EvCut_AnnulationFieldRace(int);
void EvCut_TheBHint(int);
void EvCut_CoachGuardGameOver(int);
static u8 mEvtSeqList[72];
};
class daTagTheBHint_c : public fopAc_ac_c {
public:
u8 getSwitchNo() {
u32 getSwitchNo() {
return shape_angle.x & 0xff;
}
u16 getMessageNo() {
u32 getMessageNo() {
return shape_angle.z & 0xffff;
}
@@ -65,37 +20,11 @@ public:
s8 getRoomNo() {
return fopAcM_GetParam(this) >> 24;
}
int create() {
fopAcM_ct(this, daTagTheBHint_c);
field_0x568 = pow(scale.x * 100.0f,2.0f);
return cPhs_COMPLEATE_e;
}
int execute() {
if (fopAcM_isSwitch(this,getSwitchNo())) {
fopAcM_delete(this);
return 1;
} else {
f32 distance = fopAcM_searchPlayerDistanceXZ2(this);
inline int create();
inline int execute();
if (distance < field_0x568) {
daNpcTheB_c* the_b = (daNpcTheB_c*)fpcM_SearchByName(PROC_NPC_THEB);
if (the_b) {
s8 roomNo = getRoomNo();
if (roomNo == 0xFF) {
roomNo = fopAcM_GetRoomNo(this);
}
the_b->setHintEvent(getMessageNo(),getLinkID(),roomNo);
}
}
}
return 1;
}
/* 0x568 */ f32 field_0x568;
};
+15 -15
View File
@@ -29,31 +29,31 @@ private:
/* 0x574 */ f32 mFogNear;
/* 0x578 */ f32 mFogFar;
/* 0x57C */ f32 mColorBlend;
/* 0x580 */ bool mPrevCameraInWaterfall;
/* 0x580 */ u8 mPrevCameraInWaterfall;
/* 0x581 */ u8 mFrameCountdown;
/* 0x582 */ u8 mColpat;
/* 0x583 */ u8 mIsMasterWaterfallTag;
};
struct daTagWaterFall_HIO_c {
struct daTagWaterFall_HIO_c : public JORReflexible {
public:
daTagWaterFall_HIO_c();
virtual ~daTagWaterFall_HIO_c();
virtual ~daTagWaterFall_HIO_c() {}
void genMessage(JORMContext*);
/* 0x00 */ /* vtable */
/* 0x04 */ s8 field_0x04;
/* 0x05 */ bool mShouldModifyFog;
/* 0x06 */ u8 pad0[2];
/* 0x08 */ f32 mBaseFogNear;
/* 0x0C */ f32 mBaseFogFar;
/* 0x10 */ f32 mColorBlendStepDivisor;
/* 0x14 */ u8 field_0x14;
/* 0x15 */ u8 field_0x15;
/* 0x16 */ u8 pad1[2];
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1C;
/* 0x20 */ f32 field_0x20;
/* 0x04 */ s8 child;
/* 0x05 */ u8 enable_fog_adjust;
/* 0x08 */ f32 base_fog_far;
/* 0x0C */ f32 base_fog_near;
/* 0x10 */ f32 color_blend_step_divisor;
/* 0x14 */ u8 draw_ellipse;
/* 0x15 */ u8 enable_ellipse_adjust;
/* 0x18 */ f32 ellipse_radius_a;
/* 0x1C */ f32 ellipse_radius_b;
/* 0x20 */ f32 ellipse_rotate;
};
#endif /* D_A_TAG_WATERFALL_H */
+2 -2
View File
@@ -16,8 +16,8 @@ public:
void offMidnaTagSw2();
void setCoC(cXyz i_coC) { mCoC = i_coC; }
u8 get_MTagSw() { return fopAcM_GetParamBit(this, 8, 8); }
u8 get_MTagSw2() { return fopAcM_GetParamBit(this, 16, 8); }
int get_MTagSw() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
int get_MTagSw2() { return (fopAcM_GetParam(this) >> 16) & 0xFF; }
s32 get_prm() { return fopAcM_GetParam(this) & 0xff; }
int is_CoHit() { return mIsCoHit; }
+2
View File
@@ -9,6 +9,8 @@ public:
void draw(fopAc_ac_c*);
int execute(bool);
void releaseBg();
static void setPointer(void*);
};
#endif /* D_D_BG_PARTS */
+18
View File
@@ -0,0 +1,18 @@
#ifndef _D_BG_S_CAPT_POLY_H
#define _D_BG_S_CAPT_POLY_H
#include "d/d_bg_s_chk.h"
#include "SSystem/SComponent/c_m3d_g_aab.h"
#include "SSystem/SComponent/c_xyz.h"
class dBgS_CaptPoly : public cBgS_Chk, public dBgS_Chk {
public:
dBgS_CaptPoly();
~dBgS_CaptPoly() {}
void Set(cXyz&, cXyz&);
/* 0x24 */ cM3dGAab aab;
/* 0x48 */ int field_0x48;
};
#endif /* _D_BG_S_CAPT_POLY_H */
+1 -1
View File
@@ -219,7 +219,7 @@ public:
MtxP GetBaseMtxP() { return pm_base; }
bool ChkNoCalcVtx() { return mFlags & NO_CALC_VTX_e; }
bool ChkFlush() { return field_0x91 & 8; }
void SetLock() { mFlags |= LOCK_e; }
void SetLock() { mFlags |= (u8)LOCK_e; }
void OffRoofRegist() { field_0x91 |= 0x4; }
void OnRoofRegist() { field_0x91 &= ~0x04; }
bool ChkRoofRegist() { return field_0x91 & 4;}
+4 -4
View File
@@ -1043,9 +1043,9 @@ public:
int Set(cXyz, cXyz);
int Set(cXyz, cXyz, f32, s16);
int Set(cXyz, cXyz, s16, f32);
void Reset(cXyz, cXyz);
int Reset(cXyz, cXyz);
int Reset();
void Reset(cXyz, cXyz, f32, s16);
int Reset(cXyz, cXyz, f32, s16);
f32 shakeCamera();
int StartShake(s32, u8*, s32, cXyz);
int StopShake();
@@ -1092,8 +1092,8 @@ public:
i_info->field_0x1e = param_1;
}
void EventFlag(int i_flag) {
mEventData.field_0x24 = i_flag;
int EventFlag(int i_flag) {
return mEventData.field_0x24 = i_flag;
}
void Att() {
+5 -5
View File
@@ -146,7 +146,7 @@ public:
u32 GetRPrm() const { return mRPrm; }
u32 MskSPrm(u32 mask) const { return mGFlag & mask; }
u32 MskRPrm(u32 mask) const { return mRPrm & mask; }
bool ChkSPrm(u32 mask) const { return MskSPrm(mask); }
bool ChkSPrm(u32 mask) { return MskSPrm(mask); }
void OnSPrm(u32 flag) { mGFlag |= flag; }
void OnRPrm(u32 flag) { mRPrm |= flag; }
void OffSPrm(u32 flag) { mGFlag &= ~flag; }
@@ -169,7 +169,7 @@ public:
void SetHitMark(u8 mark) { mHitMark = mark; }
void SetSe(u8 se) { mSe = se; }
void SetMtrl(u8 mtrl) { mMtrl = mtrl; }
void SetAtSpl(dCcG_At_Spl spl) { mSpl = spl; }
void SetSpl(dCcG_At_Spl spl) { mSpl = spl; }
u8 GetSe() { return mSe; }
dCcG_At_Spl GetSpl() { return (dCcG_At_Spl)mSpl; }
u8 GetMtrl() { return mMtrl; }
@@ -311,7 +311,7 @@ public:
void SetAtVec(cXyz& vec) { mGObjAt.SetVec(vec); }
void SetTgVec(cXyz& vec) { mGObjTg.SetVec(vec); }
bool ChkAtNoMass() const { return mGObjAt.ChkSPrm(8); }
bool ChkAtNoMass() { return mGObjAt.ChkSPrm(8); }
void OnAtNoHitMark() { mGObjAt.OnSPrm(2); }
void OffAtNoHitMark() { mGObjAt.OffSPrm(2); }
void OnTgNoHitMark() { mGObjTg.OnSPrm(4); }
@@ -331,7 +331,7 @@ public:
bool ChkAtShieldHit() { return mGObjAt.ChkRPrm(1); }
cXyz* GetAtVecP() { return mGObjAt.GetVecP(); }
cXyz* GetTgVecP() { return mGObjTg.GetVecP(); }
void SetAtSpl(dCcG_At_Spl spl) { mGObjAt.SetAtSpl(spl); }
void SetAtSpl(dCcG_At_Spl spl) { mGObjAt.SetSpl(spl); }
void SetAtHitCallback(dCcD_HitCallback callback) { mGObjAt.SetHitCallback(callback); }
void SetTgHitCallback(dCcD_HitCallback callback) { mGObjTg.SetHitCallback(callback); }
void SetCoHitCallback(dCcD_HitCallback callback) { mGObjCo.SetHitCallback(callback); }
@@ -415,7 +415,7 @@ public:
void SetTgHitPos(cXyz& pos) { mGObjTg.SetHitPos(pos); }
void SetAtHitPos(cXyz& pos) { mGObjAt.SetHitPos(pos); }
u8 GetTgSe() { return mGObjTg.GetSe(); }
u32 GetTgHitObjHitSeID(int i_soundID) { return getHitSeID(GetTgHitObjSe(),i_soundID); }
u32 GetTgHitObjHitSeID(BOOL i_isRebound) { return getHitSeID(GetTgHitObjSe(), i_isRebound); }
cXyz* GetAtHitPosP() { return mGObjAt.GetHitPosP(); }
cXyz* GetTgHitPosP() { return mGObjTg.GetHitPosP(); }
cXyz* GetTgRVecP() { return mGObjTg.GetRVecP(); }
+170 -7
View File
@@ -16,6 +16,169 @@
#include "m_Do/m_Do_controller_pad.h"
#include "m_Do/m_Do_graphic.h"
enum dComIfG_ButtonStatus {
/* 0x00 */ BUTTON_STATUS_NONE,
/* 0x01 */ BUTTON_STATUS_LET_GO,
/* 0x02 */ BUTTON_STATUS_PEEK,
/* 0x03 */ BUTTON_STATUS_ATTACK,
/* 0x04 */ BUTTON_STATUS_PUT_AWAY,
/* 0x05 */ BUTTON_STATUS_HOWL,
/* 0x06 */ BUTTON_STATUS_OPEN,
/* 0x07 */ BUTTON_STATUS_ENTER,
/* 0x08 */ BUTTON_STATUS_CHECK,
/* 0x09 */ BUTTON_STATUS_DASH,
/* 0x0A */ BUTTON_STATUS_CROUCH,
/* 0x0B */ BUTTON_STATUS_DEFEND,
/* 0x0C */ BUTTON_STATUS_PICK_UP,
/* 0x0D */ BUTTON_STATUS_DIG,
/* 0x0E */ BUTTON_STATUS_EAT,
/* 0x0F */ BUTTON_STATUS_SELECT,
/* 0x10 */ BUTTON_STATUS_LOCK,
/* 0x11 */ BUTTON_STATUS_SWITCH,
/* 0x12 */ BUTTON_STATUS_BACK,
/* 0x13 */ BUTTON_STATUS_THROW,
/* 0x14 */ BUTTON_STATUS_PLACE,
/* 0x15 */ BUTTON_STATUS_GRAB,
/* 0x16 */ BUTTON_STATUS_GET_OFF,
/* 0x17 */ BUTTON_STATUS_GET_ON,
/* 0x18 */ BUTTON_STATUS_PADDLE,
/* 0x19 */ BUTTON_STATUS_JUMP,
/* 0x1A */ BUTTON_STATUS_READ,
/* 0x1B */ BUTTON_STATUS_LOOK,
/* 0x1C */ BUTTON_STATUS_SPEAK,
/* 0x1D */ BUTTON_STATUS_LIFT,
/* 0x1E */ BUTTON_STATUS_SWING,
/* 0x1F */ BUTTON_STATUS_UNK_31,
/* 0x20 */ BUTTON_STATUS_UNK_32,
/* 0x21 */ BUTTON_STATUS_UNK_33,
/* 0x22 */ BUTTON_STATUS_CONFIRM,
/* 0x23 */ BUTTON_STATUS_NEXT,
/* 0x24 */ BUTTON_STATUS_INFO,
/* 0x25 */ BUTTON_STATUS_UNK_37,
/* 0x26 */ BUTTON_STATUS_UNK_38,
/* 0x27 */ BUTTON_STATUS_UNK_39,
/* 0x28 */ BUTTON_STATUS_WHOOP,
/* 0x29 */ BUTTON_STATUS_ZOOM,
/* 0x2A */ BUTTON_STATUS_QUIT,
/* 0x2B */ BUTTON_STATUS_PICK,
/* 0x2C */ BUTTON_STATUS_BLOW,
/* 0x2D */ BUTTON_STATUS_DODGE,
/* 0x2E */ BUTTON_STATUS_CUT,
/* 0x2F */ BUTTON_STATUS_HINT,
/* 0x30 */ BUTTON_STATUS_FINISH,
/* 0x31 */ BUTTON_STATUS_SET_FREE,
/* 0x32 */ BUTTON_STATUS_DISMOUNT,
/* 0x33 */ BUTTON_STATUS_DROP_DOWN,
/* 0x34 */ BUTTON_STATUS_UNK_52,
/* 0x35 */ BUTTON_STATUS_TAKE,
/* 0x36 */ BUTTON_STATUS_HURRY,
/* 0x37 */ BUTTON_STATUS_PULL_DOWN,
/* 0x38 */ BUTTON_STATUS_PET,
/* 0x39 */ BUTTON_STATUS_UNK_57,
/* 0x3A */ BUTTON_STATUS_SHIELD_ATTACK,
/* 0x3B */ BUTTON_STATUS_LISTEN,
/* 0x3C */ BUTTON_STATUS_DRINK,
/* 0x3D */ BUTTON_STATUS_UNK_61,
/* 0x3E */ BUTTON_STATUS_COVER,
/* 0x3F */ BUTTON_STATUS_PUSH,
/* 0x40 */ BUTTON_STATUS_RESIST,
/* 0x41 */ BUTTON_STATUS_DIVE,
/* 0x42 */ BUTTON_STATUS_PUT_TOGETHER,
/* 0x43 */ BUTTON_STATUS_SKIP,
/* 0x44 */ BUTTON_STATUS_SLAP,
/* 0x45 */ BUTTON_STATUS_SNIFF,
/* 0x46 */ BUTTON_STATUS_BITE,
/* 0x47 */ BUTTON_STATUS_ROLL,
/* 0x48 */ BUTTON_STATUS_FASTEN,
/* 0x49 */ BUTTON_STATUS_GET_DOWN,
/* 0x4A */ BUTTON_STATUS_HAWKEYE_OFF,
/* 0x4B */ BUTTON_STATUS_UNK_75,
/* 0x4C */ BUTTON_STATUS_SWIM,
/* 0x4D */ BUTTON_STATUS_CANT_SKIP,
/* 0x4E */ BUTTON_STATUS_SENSE,
/* 0x4F */ BUTTON_STATUS_UNK_79,
/* 0x50 */ BUTTON_STATUS_UNK_80,
/* 0x51 */ BUTTON_STATUS_LAND,
/* 0x52 */ BUTTON_STATUS_HOOK,
/* 0x53 */ BUTTON_STATUS_CHANGE_LOCKS,
/* 0x54 */ BUTTON_STATUS_EQUIP,
/* 0x55 */ BUTTON_STATUS_PULL,
/* 0x56 */ BUTTON_STATUS_REEL,
/* 0x57 */ BUTTON_STATUS_EXTRACT,
/* 0x58 */ BUTTON_STATUS_SPIN,
/* 0x59 */ BUTTON_STATUS_UNK_89,
/* 0x5A */ BUTTON_STATUS_SPIN_ATTACK,
/* 0x5B */ BUTTON_STATUS_REEL_FAST,
/* 0x5C */ BUTTON_STATUS_RAISE,
/* 0x5D */ BUTTON_STATUS_RELEASE,
/* 0x5E */ BUTTON_STATUS_UNK_94,
/* 0x5F */ BUTTON_STATUS_MAP,
/* 0x60 */ BUTTON_STATUS_ITEMS,
/* 0x61 */ BUTTON_STATUS_INSERT,
/* 0x62 */ BUTTON_STATUS_DRAW,
/* 0x63 */ BUTTON_STATUS_STRIKE,
/* 0x64 */ BUTTON_STATUS_BLANK,
/* 0x65 */ BUTTON_STATUS_UNK_101,
/* 0x66 */ BUTTON_STATUS_POINT_WII_REMOTE,
/* 0x67 */ BUTTON_STATUS_FLIP,
/* 0x68 */ BUTTON_STATUS_CHANGE_VIEW,
/* 0x69 */ BUTTON_STATUS_UNK_105,
/* 0x6A */ BUTTON_STATUS_UNK_106,
/* 0x6B */ BUTTON_STATUS_CHANCE,
/* 0x6C */ BUTTON_STATUS_SCOOP,
/* 0x6D */ BUTTON_STATUS_SURVEY,
/* 0x6E */ BUTTON_STATUS_CANCEL,
/* 0x6F */ BUTTON_STATUS_SEIZE,
/* 0x70 */ BUTTON_STATUS_COLLECTION,
/* 0x71 */ BUTTON_STATUS_AREA_MAP,
/* 0x72 */ BUTTON_STATUS_ACTION,
/* 0x73 */ BUTTON_STATUS_SET_HOOK,
/* 0x74 */ BUTTON_STATUS_TILT,
/* 0x75 */ BUTTON_STATUS_THRUST,
/* 0x76 */ BUTTON_STATUS_ROTATE,
/* 0x77 */ BUTTON_STATUS_HELM_SPLITTER,
/* 0x78 */ BUTTON_STATUS_MOVE,
/* 0x79 */ BUTTON_STATUS_UNK_121,
/* 0x7A */ BUTTON_STATUS_HOLD_ON,
/* 0x7B */ BUTTON_STATUS_UNK_123,
/* 0x7C */ BUTTON_STATUS_HELP,
/* 0x7D */ BUTTON_STATUS_ZOOM_IN,
/* 0x7E */ BUTTON_STATUS_ZOOM_OUT,
/* 0x7F */ BUTTON_STATUS_MOVE_CLOSER_TV,
/* 0x80 */ BUTTON_STATUS_UNK_128,
/* 0x81 */ BUTTON_STATUS_UNK_129,
/* 0x82 */ BUTTON_STATUS_UNK_130,
/* 0x83 */ BUTTON_STATUS_UNK_131,
/* 0x84 */ BUTTON_STATUS_UNK_132,
/* 0x85 */ BUTTON_STATUS_UNK_133,
/* 0x86 */ BUTTON_STATUS_UNK_134,
/* 0x87 */ BUTTON_STATUS_UNK_135,
/* 0x88 */ BUTTON_STATUS_UNK_136,
/* 0x89 */ BUTTON_STATUS_UNK_137,
/* 0x8A */ BUTTON_STATUS_UNK_138,
/* 0x8B */ BUTTON_STATUS_UNK_139,
/* 0x8C */ BUTTON_STATUS_UNK_140,
/* 0x8D */ BUTTON_STATUS_UNK_141,
/* 0x8E */ BUTTON_STATUS_UNK_142,
/* 0x8F */ BUTTON_STATUS_UNK_143,
/* 0x90 */ BUTTON_STATUS_UNK_144,
/* 0x91 */ BUTTON_STATUS_UNK_145,
/* 0x92 */ BUTTON_STATUS_UNK_146,
/* 0x93 */ BUTTON_STATUS_UNK_147,
/* 0x94 */ BUTTON_STATUS_UNK_148,
/* 0x95 */ BUTTON_STATUS_UNK_149,
/* 0x96 */ BUTTON_STATUS_UNK_150,
/* 0x97 */ BUTTON_STATUS_UNK_151,
/* 0x98 */ BUTTON_STATUS_UNK_152,
/* 0x99 */ BUTTON_STATUS_UNK_153,
};
enum dComIfG_ButtonStatusFlag {
/* 0x0 */ BUTTON_STATUS_FLAG_NONE,
/* 0x2 */ BUTTON_STATUS_FLAG_EMPHASIS = 2,
/* 0x4 */ BUTTON_STATUS_FLAG_CONTINUATION = 4,
};
class JKRAramArchive;
class dSmplMdl_draw_c;
class dTimer_c;
@@ -284,7 +447,7 @@ public:
dMsgObject_c* getMsgObjectClass() { return mItemInfo.mMsgObjectClass; }
dStage_roomControl_c* getRoomControl() { return &mRoomControl; }
dStage_dt_c& getStage() { return mStageData; }
dStage_stageDt_c& getStage() { return mStageData; }
dEvt_control_c* getEvent() { return &mEvent; }
daHorse_c* getHorseActor() { return (daHorse_c*)mPlayerPtr[1]; }
J2DGrafContext* getCurrentGrafPort() { return (J2DGrafContext*)mCurrentGrafPort; }
@@ -777,11 +940,11 @@ public:
/* 0x03F90 */ dEvt_control_c mEvent;
/* 0x040C0 */ dEvent_manager_c mEvtManager;
/* 0x04780 */ dAttention_c mAttention;
#if PLATFORM_WII || VERSION == VERSION_SHIELD
/* 0x04C9C */ u8 unk_0x4c9c[8];
#endif
/* 0x04C9C */ dVibration_c mVibration;
/* 0x04D2C */ u8 field_0x4d2c[4];
#if PLATFORM_WII || VERSION == VERSION_SHIELD
/* 0x04D38 */ u8 unk_0x4d38[8];
#endif
/* 0x04D30 */ JKRArchive* mFieldMapArchive2;
/* 0x04D34 */ JKRArchive* mMsgArchive[11];
/* 0x04D60 */ JKRArchive* mDemoMsgArchive;
@@ -1945,7 +2108,7 @@ inline u32 dComIfGs_getTurnRestartParam() {
return g_dComIfG_gameInfo.info.getTurnRestart().getParam();
}
inline cXyz& dComIfGs_getTurnRestartPos() {
inline const cXyz& dComIfGs_getTurnRestartPos() {
return g_dComIfG_gameInfo.info.getTurnRestart().getPos();
}
@@ -1961,7 +2124,7 @@ inline u32 dComIfGs_getRestartRoomParam() {
return g_dComIfG_gameInfo.info.getRestart().getRoomParam();
}
inline cXyz& dComIfGs_getRestartRoomPos() {
inline const cXyz& dComIfGs_getRestartRoomPos() {
return g_dComIfG_gameInfo.info.getRestart().getRoomPos();
}
@@ -2866,7 +3029,7 @@ inline void dComIfGp_setItem(u8 slot, u8 i_no) {
g_dComIfG_gameInfo.play.setItem(slot, i_no);
}
inline dStage_dt_c* dComIfGp_getStage() {
inline dStage_stageDt_c* dComIfGp_getStage() {
return &g_dComIfG_gameInfo.play.getStage();
}
+1 -1
View File
@@ -6,7 +6,7 @@
u8 daNpcKakashi_getSwdTutorialStep();
void daNpcKakashi_setSwdTutorialStep(u8 iEvtNum);
bool daNpcKakashi_getSwdTutorialResult();
u8 daNpcKakashi_chkSwdTutorialStage();
bool daNpcKakashi_chkSwdTutorialStage();
u8 daNpcKakashi_getSuccessCount();
void daNpcKakashi_clrSuccessCount();
void daNpcKakashi_setSwdTutorialResult(bool param_0);
+6 -2
View File
@@ -84,7 +84,7 @@ public:
fopAc_ac_c* getActor();
void setActor(fopAc_ac_c*);
f32 getPrm_Morf();
int getDemoIDData(int*, int*, int*, u16*, u8*);
int getDemoIDData(int* o_arg0, int* o_arg1, int* o_arg2, u16* o_resID, u8*);
virtual ~dDemo_actor_c();
virtual void JSGSetData(u32, void const*, u32);
@@ -381,13 +381,17 @@ public:
static s16 getBranchNum() { return m_branchNum; }
static jmessage_tControl* getMesgControl() { return m_mesgControl; }
static void setBranchNum(u16 num) {
m_branchNum = num;
}
static dDemo_camera_c* getCamera() {
JUT_ASSERT(0, m_object != NULL);
return m_object->getActiveCamera();
}
static s16 m_branchId;
static s16 m_branchNum;
static u16 m_branchNum;
static dDemo_system_c* m_system;
static JStudio::TControl* m_control;
static JStudio_JStage::TCreateObject* m_stage;
+1 -1
View File
@@ -26,7 +26,7 @@ public:
int getHitmarkPosAndAngle(cXyz const*, csXyz const*, cXyz*, csXyz*, int) const;
void setArrowPosAndAngle(cXyz const*, cXyz const*, int, cXyz*, csXyz*);
bool checkPassNum(int bit) { return field_0xc & (1 << bit); }
BOOL checkPassNum(int bit) { return field_0xc & (1 << bit); }
void onPassNum(int num) { field_0xc |= (1 << num); }
void offPassNum(int num) { field_0xc &= ~(1 << num); }
bool checkShieldType(int i) { return getType(i) == 3; }
-138
View File
@@ -10,144 +10,6 @@ class J2DAnmTransformKey;
class JKRExpHeap;
class JKRHeap;
enum dMeter2Draw_actionFlag {
/* 0x0 */ ACTION_FLG_DEFAULT,
/* 0x2 */ ACTION_FLG_EMPHASIS = 2,
/* 0x4 */ ACTION_FLG_CONTINUATION = 4,
};
enum dMeter2Draw_actionID {
/* 0x00 */ ACTION_STR_NONE,
/* 0x01 */ ACTION_STR_LET_GO,
/* 0x02 */ ACTION_STR_PEEK,
/* 0x03 */ ACTION_STR_ATTACK,
/* 0x04 */ ACTION_STR_PUT_AWAY,
/* 0x05 */ ACTION_STR_HOWL,
/* 0x06 */ ACTION_STR_OPEN,
/* 0x07 */ ACTION_STR_ENTER,
/* 0x08 */ ACTION_STR_CHECK,
/* 0x09 */ ACTION_STR_DASH,
/* 0x0A */ ACTION_STR_CROUCH,
/* 0x0B */ ACTION_STR_DEFEND,
/* 0x0C */ ACTION_STR_PICK_UP,
/* 0x0D */ ACTION_STR_DIG,
/* 0x0E */ ACTION_STR_EAT,
/* 0x0F */ ACTION_STR_SELECT,
/* 0x10 */ ACTION_STR_LOCK,
/* 0x11 */ ACTION_STR_SWITCH,
/* 0x12 */ ACTION_STR_BACK,
/* 0x13 */ ACTION_STR_THROW,
/* 0x14 */ ACTION_STR_PLACE,
/* 0x15 */ ACTION_STR_GRAB,
/* 0x16 */ ACTION_STR_GET_OFF,
/* 0x17 */ ACTION_STR_GET_ON,
/* 0x18 */ ACTION_STR_PADDLE,
/* 0x19 */ ACTION_STR_JUMP,
/* 0x1A */ ACTION_STR_READ,
/* 0x1B */ ACTION_STR_LOOK,
/* 0x1C */ ACTION_STR_SPEAK,
/* 0x1D */ ACTION_STR_LIFT,
/* 0x1E */ ACTION_STR_SWING,
/* 0x1F */ ACTION_STR_PICK_UP2,
/* 0x20 */ ACTION_STR_GET_ON2,
/* 0x21 */ ACTION_STR_GET_OFF2,
/* 0x22 */ ACTION_STR_CONFIRM,
/* 0x23 */ ACTION_STR_NEXT,
/* 0x24 */ ACTION_STR_INFO,
/* 0x25 */ ACTION_STR_NONE2,
/* 0x26 */ ACTION_STR_NONE3,
/* 0x27 */ ACTION_STR_NONE4,
/* 0x28 */ ACTION_STR_WHOOP,
/* 0x29 */ ACTION_STR_ZOOM,
/* 0x2A */ ACTION_STR_QUIT,
/* 0x2B */ ACTION_STR_PICK,
/* 0x2C */ ACTION_STR_BLOW,
/* 0x2D */ ACTION_STR_DODGE,
/* 0x2E */ ACTION_STR_CUT,
/* 0x2F */ ACTION_STR_HINT,
/* 0x30 */ ACTION_STR_FINISH,
/* 0x31 */ ACTION_STR_SET_FREE,
/* 0x32 */ ACTION_STR_DISMOUNT,
/* 0x33 */ ACTION_STR_DROP_DOWN,
/* 0x34 */ ACTION_STR_PICK_UP3,
/* 0x35 */ ACTION_STR_TAKE,
/* 0x36 */ ACTION_STR_HURRY,
/* 0x37 */ ACTION_STR_PULL_DOWN,
/* 0x38 */ ACTION_STR_PET,
/* 0x39 */ ACTION_STR_PICK_UP4,
/* 0x3A */ ACTION_STR_SHIELD_ATTACK,
/* 0x3B */ ACTION_STR_LISTEN,
/* 0x3C */ ACTION_STR_DRINK,
/* 0x3D */ ACTION_STR_ZOOM2,
/* 0x3E */ ACTION_STR_COVER,
/* 0x3F */ ACTION_STR_PUSH,
/* 0x40 */ ACTION_STR_RESIST,
/* 0x41 */ ACTION_STR_DIVE,
/* 0x42 */ ACTION_STR_PUT_TOGETHER,
/* 0x43 */ ACTION_STR_SKIP,
/* 0x44 */ ACTION_STR_SLAP,
/* 0x45 */ ACTION_STR_SNIFF,
/* 0x46 */ ACTION_STR_BITE,
/* 0x47 */ ACTION_STR_ROLL,
/* 0x48 */ ACTION_STR_FASTEN,
/* 0x49 */ ACTION_STR_GET_DOWN,
/* 0x4A */ ACTION_STR_HAWKEYE_OFF,
/* 0x4B */ ACTION_STR_DASH2,
/* 0x4C */ ACTION_STR_SWIM,
/* 0x4D */ ACTION_STR_CANT_SKIP,
/* 0x4E */ ACTION_STR_SENSE,
/* 0x4F */ ACTION_STR_NONE5,
/* 0x50 */ ACTION_STR_THROW2,
/* 0x51 */ ACTION_STR_LAND,
/* 0x52 */ ACTION_STR_HOOK,
/* 0x53 */ ACTION_STR_CHANGE_LOCKS,
/* 0x54 */ ACTION_STR_EQUIP,
/* 0x55 */ ACTION_STR_PULL,
/* 0x56 */ ACTION_STR_REEL,
/* 0x57 */ ACTION_STR_EXTRACT,
/* 0x58 */ ACTION_STR_SPIN,
/* 0x59 */ ACTION_STR_SWITCH2,
/* 0x5A */ ACTION_STR_SPIN_ATTACK,
/* 0x5B */ ACTION_STR_REEL_FAST,
/* 0x5C */ ACTION_STR_RAISE,
/* 0x5D */ ACTION_STR_RELEASE,
/* 0x5E */ ACTION_STR_CHECK2,
/* 0x5F */ ACTION_STR_MAP,
/* 0x60 */ ACTION_STR_ITEMS,
/* 0x61 */ ACTION_STR_INSERT,
/* 0x62 */ ACTION_STR_DRAW,
/* 0x63 */ ACTION_STR_STRIKE,
/* 0x64 */ ACTION_STR_BLANK,
/* 0x65 */ ACTION_STR_JUMP2,
/* 0x66 */ ACTION_STR_POINT_WII_REMOTE,
/* 0x67 */ ACTION_STR_FLIP,
/* 0x68 */ ACTION_STR_CHANGE_VIEW,
/* 0x69 */ ACTION_STR_ZOOM3,
/* 0x6A */ ACTION_STR_BACK2,
/* 0x6B */ ACTION_STR_CHANCE,
/* 0x6C */ ACTION_STR_SCOOP,
/* 0x6D */ ACTION_STR_SURVEY,
/* 0x6E */ ACTION_STR_CANCEL,
/* 0x6F */ ACTION_STR_SEIZE,
/* 0x70 */ ACTION_STR_COLLECTION,
/* 0x71 */ ACTION_STR_AREA_MAP,
/* 0x72 */ ACTION_STR_ACTION,
/* 0x73 */ ACTION_STR_SET_HOOK,
/* 0x74 */ ACTION_STR_TILT,
/* 0x75 */ ACTION_STR_THRUST,
/* 0x76 */ ACTION_STR_ROTATE,
/* 0x77 */ ACTION_STR_HELM_SPLITTER,
/* 0x78 */ ACTION_STR_MOVE,
/* 0x79 */ ACTION_STR_ROLL2,
/* 0x7A */ ACTION_STR_HOLD_ON,
/* 0x7B */ ACTION_STR_BITE2,
/* 0x7C */ ACTION_STR_HELP,
/* 0x7D */ ACTION_STR_ZOOM_IN,
/* 0x7E */ ACTION_STR_ZOOM_OUT,
/* 0x7F */ ACTION_STR_MOVE_CLOSER_TV,
/* 0x80 */ ACTION_STR_CHECK3,
};
class dKantera_icon_c;
class dMeter2Draw_c : public dDlst_base_c {
+16 -4
View File
@@ -33,6 +33,18 @@ enum dMeter2Info_warpStatus {
/* 0x3 */ WARP_STATUS_DECIDED_e = 3,
};
enum dMeter2Info_UseButton {
METER2_USEBUTTON_A = 0x1,
METER2_USEBUTTON_B = 0x2,
METER2_USEBUTTON_X = 0x4,
METER2_USEBUTTON_Y = 0x8,
METER2_USEBUTTON_C = 0x10,
METER2_USEBUTTON_R = 0x40,
METER2_USEBUTTON_Z = 0x800,
};
class dMeter2Info_c {
public:
class WarpInfo_c {
@@ -162,14 +174,14 @@ public:
void setTimeMs(s32 i_time) { mTimeMs = i_time; }
s32 getTimeMs() { return mTimeMs; }
u8 getNowCount() { return mNowCount; }
int getMaxCount() { return mMaxCount; }
u8 getMaxCount() { return mMaxCount; }
void setScopeZoomPointer(u8 param_0) { mScopeZoomPointer = param_0; }
u8 getItemExplainWindowStatus() { return mItemExplainWindowStatus; }
void setItemExplainWindowStatus(u8 i_value) { mItemExplainWindowStatus = i_value; }
void resetDirectUseItem() { mDirectUseItem = 0; }
u16 getFloatingFlowID() { return mFloatingFlowID; }
bool isFloatingMessageWakuVisible() { return mFloatingMessageWakuVisible; }
void onBlinkButton(int i_flag) { mBlinkButton |= i_flag; }
void onBlinkButton(int i_flag) { mBlinkButton |= (u16)i_flag; }
bool isBlinkButton(int i_flag) { return (mBlinkButton & (u16)i_flag) != 0 ? true : false; }
void resetBlinkButton() { mBlinkButton = 0; }
s16 getFloatingMessageTimer() { return mFloatingMessageTimer; }
@@ -193,7 +205,7 @@ public:
void set2DHeight(f32 i_height) { m2DHeight = i_height; }
void set2DPosH(f32 i_posH) { m2DPosH = i_posH; }
void set2DPosV(f32 i_posV) { m2DPosV = i_posV; }
void onUseButton(int i_button) { mUseButton |= i_button; }
void onUseButton(int i_button) { mUseButton |= (u16)i_button; }
f32 get2DWidth() { return m2DWidth; }
f32 get2DHeight() { return m2DHeight; }
u8 getTableMapRegionNo() { return mTableMapRegionNo; }
@@ -659,7 +671,7 @@ inline u8 dMeter2Info_getNowCount() {
return g_meter2_info.getNowCount();
}
inline int dMeter2Info_getMaxCount() {
inline u8 dMeter2Info_getMaxCount() {
return g_meter2_info.getMaxCount();
}
+3 -3
View File
@@ -356,7 +356,7 @@ inline void dMsgObject_demoMessageGroup() {
}
inline bool dMsgObject_isTalkNowCheck() {
return dMsgObject_getMsgObjectClass()->getStatus() != 1 ? true : false;
return dMsgObject_getMsgObjectClass()->getStatus() == 1 ? false : true;
}
inline bool dMsgObject_isKillMessageFlag() {
@@ -449,7 +449,7 @@ inline void dMsgObject_endFlowGroup() {
}
inline void dMsgObject_setSmellType(u8 type) {
dMsgObject_c::setSmellType(type);
dMsgObject_getMsgObjectClass()->setSmellType(type);
}
inline u8 dMsgObject_getSelectCursorPos() {
@@ -485,7 +485,7 @@ inline void dMsgObject_setEquipBombInfo() {
}
inline bool dMsgObject_isHowlHearingMode() {
return dMsgObject_c::isHowlHearingMode();
return dMsgObject_getMsgObjectClass()->isHowlHearingMode();
}
inline void dMsgObject_onMsgSend() {
+8 -8
View File
@@ -523,11 +523,11 @@ public:
void setPointer(bool i_mPointer) { mPointer = i_mPointer; }
enum dSv_config_language {
LANGAUGE_ENGLISH,
LANGAUGE_GERMAN,
LANGAUGE_FRENCH,
LANGAUGE_SPANISH,
LANGAUGE_ITALIAN,
LANGUAGE_ENGLISH,
LANGUAGE_GERMAN,
LANGUAGE_FRENCH,
LANGUAGE_SPANISH,
LANGUAGE_ITALIAN,
};
private:
@@ -819,7 +819,7 @@ public:
u32 getLastMode() const { return mLastMode; }
s8 getRoomNo() const { return mRoomNo; }
u32 getRoomParam() const { return mRoomParam; }
cXyz& getRoomPos() { return mRoomPos; }
const cXyz& getRoomPos() const { return mRoomPos; }
s16 getRoomAngleY() const { return mRoomAngleY; }
s16 getLastAngleY() const { return mLastAngleY; }
f32 getLastSpeedF() const { return mLastSpeedF; }
@@ -848,7 +848,7 @@ public:
void set(const cXyz& i_position, s16 i_angleY, s8, u32 i_param);
u32 getParam() const { return mParam; }
cXyz& getPos() { return mPosition; }
const cXyz& getPos() const { return mPosition; }
s16 getAngleY() const { return mAngleY; }
s8 getRoomNo() const { return unk18; }
@@ -996,7 +996,7 @@ public:
#if DEBUG
/* 0x000 */ u8 unk_0x0;
/* 0x001 */ u8 unk_0x1;
/* 0x001 */ char unk_0x1;
/* 0x000 */ u8 unk_0x2[0x48 - 0x2];
#endif
/* 0x000 */ dSv_save_c mSavedata;
+4 -4
View File
@@ -70,11 +70,11 @@ public:
/* 0x2c */ fopAc_ac_c* field_0x2c;
/* 0x30 */ fopAc_ac_c* field_0x30;
/* 0x34 */ fopAc_ac_c* field_0x34;
/* 0x38 */ cXyz field_0x38;
/* 0x44 */ cXyz field_0x44;
/* 0x38 */ Vec field_0x38;
/* 0x44 */ Vec field_0x44;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ cXyz field_0x54;
/* 0x60 */ cXyz field_0x60;
/* 0x54 */ Vec field_0x54;
/* 0x60 */ Vec field_0x60;
/* 0x6c */ f32 field_0x6c;
/* 0x70 */ cXyz field_0x70;
/* 0x7C */ cXyz field_0x7c;
+248 -194
View File
@@ -535,6 +535,10 @@ public:
/* vt[86] */ virtual stage_tgsc_class* getDrTg(void) const = 0;
/* vt[87] */ virtual void setDoor(stage_tgsc_class*) = 0;
/* vt[88] */ virtual stage_tgsc_class* getDoor(void) const = 0;
#if DEBUG
virtual void setUnit(void*) = 0;
virtual void* getUnit() = 0;
#endif
/* vt[89] */ virtual void setMapPath(void*) = 0;
/* vt[90] */ virtual void* getMapPath(void) = 0;
/* vt[91] */ virtual void setElst(dStage_Elst_c*) = 0;
@@ -547,194 +551,6 @@ private:
void dStage_SetErrorStage();
void dStage_SetErrorRoom();
class dStage_stageDt_c : public dStage_dt_c {
public:
dStage_stageDt_c() {}
/* vt[ 2] */ virtual void init(void);
/* vt[ 3] */ virtual void setCamera(stage_camera_class* i_Camera) { mCamera = i_Camera; }
/* vt[ 4] */ virtual stage_camera_class* getCamera(void) const { return mCamera; }
/* vt[ 5] */ virtual void setArrow(stage_arrow_class* i_Arrow) { mArrow = i_Arrow; }
/* vt[ 6] */ virtual stage_arrow_class* getArrow(void) const { return mArrow; }
/* vt[ 7] */ virtual void setPlayer(stage_actor_class* i_Player) { mPlayer = i_Player; }
/* vt[ 8] */ virtual stage_actor_class* getPlayer(void) const { return mPlayer; }
/* vt[ 9] */ virtual void setPlayerNum(u16 i_PlayerNum) { mPlayerNum = i_PlayerNum; }
/* vt[10] */ virtual u16 getPlayerNum(void) const { return mPlayerNum; }
/* vt[11] */ virtual void setRoom(roomRead_class* i_Room) { mRoom = i_Room; }
/* vt[12] */ virtual roomRead_class* getRoom(void) const { return mRoom; }
/* vt[13] */ virtual void setMapInfo(stage_map_info_class* i_MapInfo) { mMapInfo = i_MapInfo; }
/* vt[14] */ virtual stage_map_info_class* getMapInfo(void) const { return mMapInfo; }
/* vt[15] */ virtual stage_map_info_class* getMapInfo2(int) const;
/* vt[16] */ virtual void setMapInfoBase(stage_map_info_dummy_class* i_MapInfoBase) { mMapInfoBase = i_MapInfoBase; }
/* vt[17] */ virtual stage_map_info_dummy_class* getMapInfoBase(void) const { return mMapInfoBase; }
/* vt[18] */ virtual void setPaletteInfo(stage_palette_info_class* i_PaletteInfo) { mPaletteInfo = i_PaletteInfo; }
/* vt[19] */ virtual stage_palette_info_class* getPaletteInfo(void) const { return mPaletteInfo; }
/* vt[20] */ virtual void setPselectInfo(stage_pselect_info_class* i_PselectInfo) { mPselectInfo = i_PselectInfo; }
/* vt[21] */ virtual stage_pselect_info_class* getPselectInfo(void) const { return mPselectInfo; }
/* vt[22] */ virtual void setEnvrInfo(stage_envr_info_class* i_EnvrInfo) { mEnvrInfo = i_EnvrInfo; }
/* vt[23] */ virtual stage_envr_info_class* getEnvrInfo(void) const { return mEnvrInfo; }
/* vt[24] */ virtual void setVrboxInfo(stage_vrbox_info_class* i_VrboxInfo) { mVrboxInfo = i_VrboxInfo; }
/* vt[25] */ virtual stage_vrbox_info_class* getVrboxInfo(void) const { return mVrboxInfo; }
/* vt[26] */ virtual void setVrboxcolInfo(stage_vrboxcol_info_class* i_VrboxcolInfo) { mVrboxcolInfo = i_VrboxcolInfo; }
/* vt[27] */ virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const { return mVrboxcolInfo; }
/* vt[28] */ virtual void setPlightInfo(stage_plight_info_class* i_PlightInfo) { mPlightInfo = i_PlightInfo; }
/* vt[29] */ virtual stage_plight_info_class* getPlightInfo(void) const { return mPlightInfo; }
/* vt[30] */ virtual void setPaletteNumInfo(int i_PaletteNumInfo) { mPaletteNumInfo = i_PaletteNumInfo; }
/* vt[31] */ virtual int getPaletteNumInfo(void) const { return mPaletteNumInfo; }
/* vt[32] */ virtual void setPselectNumInfo(int i_PselectNumInfo) { mPselectNumInfo = i_PselectNumInfo; }
/* vt[33] */ virtual int getPselectNumInfo(void) const { return mPselectNumInfo; }
/* vt[34] */ virtual void setEnvrNumInfo(int i_EnvrNumInfo) { mEnvrNumInfo = i_EnvrNumInfo; }
/* vt[35] */ virtual int getEnvrNumInfo(void) const { return mEnvrNumInfo; }
/* vt[36] */ virtual void setVrboxNumInfo(int i_VrboxNumInfo) { mVrboxNumInfo = i_VrboxNumInfo; }
/* vt[37] */ virtual int getVrboxNumInfo(void) const { return mVrboxNumInfo; }
/* vt[38] */ virtual void setVrboxcolNumInfo(int i_VrboxcolNumInfo) { mVrboxcolNumInfo = i_VrboxcolNumInfo; }
/* vt[39] */ virtual int getVrboxcolNumInfo(void) const { return mVrboxcolNumInfo; }
/* vt[42] */ virtual void setLightVecInfo(stage_pure_lightvec_info_class* i_LightVecInfo) {
UNUSED(i_LightVecInfo);
dStage_SetErrorStage();
OSReport("stage non LightVec data !!\n");
JUT_ASSERT(3003, FALSE);
}
/* vt[43] */ virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const {
OSReport("stage non LightVec data !!\n");
JUT_ASSERT(3007, FALSE);
return NULL;
}
/* vt[44] */ virtual void setLightVecInfoNum(int i_LightVecInfoNum) {
UNUSED(i_LightVecInfoNum);
dStage_SetErrorStage();
OSReport("stage non LightVecNum data !!\n");
JUT_ASSERT(3014, FALSE);
}
/* vt[45] */ virtual int getLightVecInfoNum(void) const {
OSReport("stage non LightVecNum data !!\n");
JUT_ASSERT(3018, FALSE);
return NULL;
}
/* vt[40] */ virtual void setPlightNumInfo(int i_PlightNumInfo) { mPlightNumInfo = i_PlightNumInfo; }
/* vt[41] */ virtual int getPlightNumInfo(void) const { return mPlightNumInfo; }
/* vt[46] */ virtual void setStagInfo(stage_stag_info_class* i_StagInfo) { mStagInfo = i_StagInfo; }
/* vt[47] */ virtual stage_stag_info_class* getStagInfo(void) const { return mStagInfo; }
/* vt[48] */ virtual void setSclsInfo(stage_scls_info_dummy_class* i_SclsInfo) { mSclsInfo = i_SclsInfo; }
/* vt[49] */ virtual stage_scls_info_dummy_class* getSclsInfo(void) const { return mSclsInfo; }
/* vt[50] */ virtual void setPntInfo(dStage_dPnt_c* i_PntInfo) { mPntInfo = i_PntInfo; }
/* vt[51] */ virtual dStage_dPnt_c* getPntInf(void) const { return mPntInfo; }
/* vt[52] */ virtual void setPathInfo(dStage_dPath_c* i_PathInfo) { mPathInfo = i_PathInfo; }
/* vt[53] */ virtual dStage_dPath_c* getPathInf(void) const { return mPathInfo; }
/* vt[54] */ virtual void setPnt2Info(dStage_dPnt_c* i_Pnt2Info) { mPnt2Info = i_Pnt2Info; }
/* vt[55] */ virtual dStage_dPnt_c* getPnt2Inf(void) const { return mPnt2Info; }
/* vt[56] */ virtual void setPath2Info(dStage_dPath_c* i_Path2Info) { mPath2Info = i_Path2Info; }
/* vt[57] */ virtual dStage_dPath_c* getPath2Inf(void) const { return mPath2Info; }
/* vt[58] */ virtual void setSoundInf(dStage_SoundInfo_c* i_SoundInf) { mSoundInf = i_SoundInf; }
/* vt[59] */ virtual dStage_SoundInfo_c* getSoundInf(void) const { return mSoundInf; }
/* vt[60] */ virtual void setSoundInfCL(dStage_SoundInfo_c* i_SoundInfCL) { mSoundInfCL = i_SoundInfCL; }
/* vt[61] */ virtual dStage_SoundInfo_c* getSoundInfCL(void) const { return mSoundInfCL; }
/* vt[62] */ virtual void setMapEventInfo(dStage_MapEventInfo_c* i_MapEventInfo) { mMapEventInfo = i_MapEventInfo; }
/* vt[63] */ virtual dStage_MapEventInfo_c* getMapEventInfo(void) const { return mMapEventInfo; }
/* vt[64] */ virtual void setFileList2Info(dStage_FileList2_dt_c* list) {
UNUSED(list);
dStage_SetErrorStage();
OSReport("stage non filelist2 data!\n");
JUT_ASSERT(3123, FALSE);
}
/* vt[65] */ virtual dStage_FileList2_dt_c* getFileList2Info(void) const {
OSReport("stage non filelist2 data!\n");
JUT_ASSERT(3127, FALSE);
return NULL;
}
/* vt[66] */ virtual void setFileListInfo(dStage_FileList_dt_c* list) {
UNUSED(list);
dStage_SetErrorStage();
OSReport("stage non filelist data!\n");
JUT_ASSERT(3138, FALSE);
}
/* vt[67] */ virtual dStage_FileList_dt_c* getFileListInfo(void) const {
OSReport("stage non filelist data!\n");
JUT_ASSERT(3142, FALSE);
return NULL;
}
/* vt[68] */ virtual void setFloorInfo(dStage_FloorInfo_c* i_FloorInfo) { mFloorInfo = i_FloorInfo; }
/* vt[69] */ virtual dStage_FloorInfo_c* getFloorInfo(void) const { return mFloorInfo; }
/* vt[70] */ virtual void setMemoryConfig(dStage_MemoryConfig_c* i_MemoryConfig) { mMemoryConfig = i_MemoryConfig; }
/* vt[71] */ virtual dStage_MemoryConfig_c* getMemoryConfig(void) const { return mMemoryConfig; }
/* vt[72] */ virtual void setMemoryMap(dStage_MemoryMap_c* i_MemoryMap) { mMemoryMap = i_MemoryMap; }
/* vt[73] */ virtual dStage_MemoryMap_c* getMemoryMap(void) const { return mMemoryMap; }
/* vt[74] */ virtual void setMulti(dStage_Multi_c* i_Multi) { mMulti = i_Multi; }
/* vt[75] */ virtual dStage_Multi_c* getMulti(void) const { return mMulti; }
/* vt[76] */ virtual void setOldMulti(void);
/* vt[77] */ virtual void resetOldMulti(void);
/* vt[78] */ virtual dStage_Multi_c* getOldMulti(void) const { return mOldMulti; }
/* vt[79] */ virtual void setLbnk(dStage_Lbnk_c* lbnk) {
UNUSED(lbnk);
dStage_SetErrorStage();
OSReport("stage non Lbnk data!\n");
JUT_ASSERT(3231, FALSE);
}
/* vt[80] */ virtual dStage_Lbnk_c* getLbnk(void) const {
OSReport("stage non Lbnk data!\n");
JUT_ASSERT(3238, FALSE);
return NULL;
}
/* vt[81] */ virtual void setTresure(stage_tresure_class* i_Tresure) { mTresure = i_Tresure; }
/* vt[82] */ virtual stage_tresure_class* getTresure(void) const { return mTresure; }
/* vt[83] */ virtual void setDMap(dStage_DMap_c* i_DMap) { mDMap = i_DMap; }
/* vt[84] */ virtual dStage_DMap_c* getDMap(void) const { return mDMap; }
/* vt[85] */ virtual void setDrTg(stage_tgsc_class* i_DrTg) { mDrTg = i_DrTg; }
/* vt[86] */ virtual stage_tgsc_class* getDrTg(void) const { return mDrTg; }
/* vt[87] */ virtual void setDoor(stage_tgsc_class* i_Door) { mDoor = i_Door; }
/* vt[88] */ virtual stage_tgsc_class* getDoor(void) const { return mDoor; }
/* vt[89] */ virtual void setMapPath(void* i_MapPath) { return; }
/* vt[90] */ virtual void* getMapPath(void) { return NULL; }
/* vt[91] */ virtual void setElst(dStage_Elst_c* i_Elst) { mElst = i_Elst; }
/* vt[92] */ virtual dStage_Elst_c* getElst(void);
s16 getWorldRollAngleX() const { return (s16)mWorldRollAngleX; }
s16 getWorldRollDirAngleY() const { return mWorldRollDirAngleY; }
public:
/* 0x08 */ stage_camera_class* mCamera;
/* 0x0C */ stage_arrow_class* mArrow;
/* 0x10 */ stage_actor_class* mPlayer;
/* 0x14 */ roomRead_class* mRoom;
/* 0x18 */ stage_map_info_class* mMapInfo;
/* 0x1C */ stage_map_info_dummy_class* mMapInfoBase;
/* 0x20 */ stage_palette_info_class* mPaletteInfo;
/* 0x24 */ stage_pselect_info_class* mPselectInfo;
/* 0x28 */ stage_envr_info_class* mEnvrInfo;
/* 0x2C */ stage_vrbox_info_class* mVrboxInfo;
/* 0x30 */ stage_vrboxcol_info_class* mVrboxcolInfo;
/* 0x34 */ stage_plight_info_class* mPlightInfo;
/* 0x38 */ dStage_MapEventInfo_c* mMapEventInfo;
/* 0x3C */ u32 mPaletteNumInfo;
/* 0x40 */ u32 mPselectNumInfo;
/* 0x44 */ u32 mEnvrNumInfo;
/* 0x48 */ u32 mVrboxNumInfo;
/* 0x4C */ int mVrboxcolNumInfo;
/* 0x50 */ u32 mPlightNumInfo;
/* 0x54 */ u16 mPlayerNum;
/* 0x56 */ s16 mWorldRollAngleX;
/* 0x58 */ s16 mWorldRollDirAngleY;
/* 0x5A */ u16 field_0x5a;
/* 0x5C */ stage_stag_info_class* mStagInfo;
/* 0x60 */ stage_scls_info_dummy_class* mSclsInfo;
/* 0x64 */ dStage_dPnt_c* mPntInfo;
/* 0x68 */ dStage_dPath_c* mPathInfo;
/* 0x6C */ dStage_dPnt_c* mPnt2Info;
/* 0x70 */ dStage_dPath_c* mPath2Info;
/* 0x74 */ dStage_SoundInfo_c* mSoundInf;
/* 0x78 */ dStage_SoundInfo_c* mSoundInfCL;
/* 0x7C */ dStage_FloorInfo_c* mFloorInfo;
/* 0x80 */ dStage_MemoryConfig_c* mMemoryConfig;
/* 0x84 */ dStage_MemoryMap_c* mMemoryMap;
/* 0x88 */ dStage_Multi_c* mMulti;
/* 0x8C */ dStage_Multi_c* mOldMulti;
/* 0x90 */ stage_tresure_class* mTresure;
/* 0x94 */ dStage_DMap_c* mDMap;
/* 0x98 */ stage_tgsc_class* mDrTg;
/* 0x9C */ stage_tgsc_class* mDoor;
/* 0xA0 */ dStage_Elst_c* mElst;
};
class dStage_roomDt_c : public dStage_dt_c {
public:
dStage_roomDt_c() {}
@@ -977,6 +793,10 @@ public:
virtual stage_tgsc_class* getDrTg(void) const { return mDrTg; }
virtual void setDoor(stage_tgsc_class* i_Door) { mDoor = i_Door; }
virtual stage_tgsc_class* getDoor(void) const { return mDoor; }
#if DEBUG
virtual void setUnit(void* i_Unit) { mUnit = i_Unit; }
virtual void* getUnit() { return mUnit; }
#endif
virtual void setMapPath(void* i_MapPath) {
UNUSED(i_MapPath);
OSReport("stage non 2d map path data !!\n");
@@ -1023,7 +843,7 @@ public:
/* 0x58 */ stage_tgsc_class* mDoor;
/* 0x5C */ dStage_FloorInfo_c* mFloorInfo;
#if DEBUG
/* 0x60 */ int field_0x60;
/* 0x60 */ void* mUnit;
#endif
/* 0x60 */ u16 mPlayerNum;
/* 0x62 */ u16 field_0x62;
@@ -1031,6 +851,206 @@ public:
/* 0x68 */ int mVrboxcolNumInfo;
}; // Size: 0x6C
class dStage_stageDt_c : public dStage_dt_c {
public:
dStage_stageDt_c() {}
/* vt[ 2] */ virtual void init(void);
/* vt[ 3] */ virtual void setCamera(stage_camera_class* i_Camera) { mCamera = i_Camera; }
/* vt[ 4] */ virtual stage_camera_class* getCamera(void) const { return mCamera; }
/* vt[ 5] */ virtual void setArrow(stage_arrow_class* i_Arrow) { mArrow = i_Arrow; }
/* vt[ 6] */ virtual stage_arrow_class* getArrow(void) const { return mArrow; }
/* vt[ 7] */ virtual void setPlayer(stage_actor_class* i_Player) { mPlayer = i_Player; }
/* vt[ 8] */ virtual stage_actor_class* getPlayer(void) const { return mPlayer; }
/* vt[ 9] */ virtual void setPlayerNum(u16 i_PlayerNum) { mPlayerNum = i_PlayerNum; }
/* vt[10] */ virtual u16 getPlayerNum(void) const { return mPlayerNum; }
/* vt[11] */ virtual void setRoom(roomRead_class* i_Room) { mRoom = i_Room; }
/* vt[12] */ virtual roomRead_class* getRoom(void) const { return mRoom; }
/* vt[13] */ virtual void setMapInfo(stage_map_info_class* i_MapInfo) { mMapInfo = i_MapInfo; }
/* vt[14] */ virtual stage_map_info_class* getMapInfo(void) const { return mMapInfo; }
/* vt[15] */ virtual stage_map_info_class* getMapInfo2(int) const;
/* vt[16] */ virtual void setMapInfoBase(stage_map_info_dummy_class* i_MapInfoBase) { mMapInfoBase = i_MapInfoBase; }
/* vt[17] */ virtual stage_map_info_dummy_class* getMapInfoBase(void) const { return mMapInfoBase; }
/* vt[18] */ virtual void setPaletteInfo(stage_palette_info_class* i_PaletteInfo) { mPaletteInfo = i_PaletteInfo; }
/* vt[19] */ virtual stage_palette_info_class* getPaletteInfo(void) const { return mPaletteInfo; }
/* vt[20] */ virtual void setPselectInfo(stage_pselect_info_class* i_PselectInfo) { mPselectInfo = i_PselectInfo; }
/* vt[21] */ virtual stage_pselect_info_class* getPselectInfo(void) const { return mPselectInfo; }
/* vt[22] */ virtual void setEnvrInfo(stage_envr_info_class* i_EnvrInfo) { mEnvrInfo = i_EnvrInfo; }
/* vt[23] */ virtual stage_envr_info_class* getEnvrInfo(void) const { return mEnvrInfo; }
/* vt[24] */ virtual void setVrboxInfo(stage_vrbox_info_class* i_VrboxInfo) { mVrboxInfo = i_VrboxInfo; }
/* vt[25] */ virtual stage_vrbox_info_class* getVrboxInfo(void) const { return mVrboxInfo; }
/* vt[26] */ virtual void setVrboxcolInfo(stage_vrboxcol_info_class* i_VrboxcolInfo) { mVrboxcolInfo = i_VrboxcolInfo; }
/* vt[27] */ virtual stage_vrboxcol_info_class* getVrboxcolInfo(void) const { return mVrboxcolInfo; }
/* vt[28] */ virtual void setPlightInfo(stage_plight_info_class* i_PlightInfo) { mPlightInfo = i_PlightInfo; }
/* vt[29] */ virtual stage_plight_info_class* getPlightInfo(void) const { return mPlightInfo; }
/* vt[30] */ virtual void setPaletteNumInfo(int i_PaletteNumInfo) { mPaletteNumInfo = i_PaletteNumInfo; }
/* vt[31] */ virtual int getPaletteNumInfo(void) const { return mPaletteNumInfo; }
/* vt[32] */ virtual void setPselectNumInfo(int i_PselectNumInfo) { mPselectNumInfo = i_PselectNumInfo; }
/* vt[33] */ virtual int getPselectNumInfo(void) const { return mPselectNumInfo; }
/* vt[34] */ virtual void setEnvrNumInfo(int i_EnvrNumInfo) { mEnvrNumInfo = i_EnvrNumInfo; }
/* vt[35] */ virtual int getEnvrNumInfo(void) const { return mEnvrNumInfo; }
/* vt[36] */ virtual void setVrboxNumInfo(int i_VrboxNumInfo) { mVrboxNumInfo = i_VrboxNumInfo; }
/* vt[37] */ virtual int getVrboxNumInfo(void) const { return mVrboxNumInfo; }
/* vt[38] */ virtual void setVrboxcolNumInfo(int i_VrboxcolNumInfo) { mVrboxcolNumInfo = i_VrboxcolNumInfo; }
/* vt[39] */ virtual int getVrboxcolNumInfo(void) const { return mVrboxcolNumInfo; }
/* vt[42] */ virtual void setLightVecInfo(stage_pure_lightvec_info_class* i_LightVecInfo) {
UNUSED(i_LightVecInfo);
dStage_SetErrorStage();
OSReport("stage non LightVec data !!\n");
JUT_ASSERT(3003, FALSE);
}
/* vt[43] */ virtual stage_pure_lightvec_info_class* getLightVecInfo(void) const {
OSReport("stage non LightVec data !!\n");
JUT_ASSERT(3007, FALSE);
return NULL;
}
/* vt[44] */ virtual void setLightVecInfoNum(int i_LightVecInfoNum) {
UNUSED(i_LightVecInfoNum);
dStage_SetErrorStage();
OSReport("stage non LightVecNum data !!\n");
JUT_ASSERT(3014, FALSE);
}
/* vt[45] */ virtual int getLightVecInfoNum(void) const {
OSReport("stage non LightVecNum data !!\n");
JUT_ASSERT(3018, FALSE);
return NULL;
}
/* vt[40] */ virtual void setPlightNumInfo(int i_PlightNumInfo) { mPlightNumInfo = i_PlightNumInfo; }
/* vt[41] */ virtual int getPlightNumInfo(void) const { return mPlightNumInfo; }
/* vt[46] */ virtual void setStagInfo(stage_stag_info_class* i_StagInfo) { mStagInfo = i_StagInfo; }
/* vt[47] */ virtual stage_stag_info_class* getStagInfo(void) const { return mStagInfo; }
/* vt[48] */ virtual void setSclsInfo(stage_scls_info_dummy_class* i_SclsInfo) { mSclsInfo = i_SclsInfo; }
/* vt[49] */ virtual stage_scls_info_dummy_class* getSclsInfo(void) const { return mSclsInfo; }
/* vt[50] */ virtual void setPntInfo(dStage_dPnt_c* i_PntInfo) { mPntInfo = i_PntInfo; }
/* vt[51] */ virtual dStage_dPnt_c* getPntInf(void) const { return mPntInfo; }
/* vt[52] */ virtual void setPathInfo(dStage_dPath_c* i_PathInfo) { mPathInfo = i_PathInfo; }
/* vt[53] */ virtual dStage_dPath_c* getPathInf(void) const { return mPathInfo; }
/* vt[54] */ virtual void setPnt2Info(dStage_dPnt_c* i_Pnt2Info) { mPnt2Info = i_Pnt2Info; }
/* vt[55] */ virtual dStage_dPnt_c* getPnt2Inf(void) const { return mPnt2Info; }
/* vt[56] */ virtual void setPath2Info(dStage_dPath_c* i_Path2Info) { mPath2Info = i_Path2Info; }
/* vt[57] */ virtual dStage_dPath_c* getPath2Inf(void) const { return mPath2Info; }
/* vt[58] */ virtual void setSoundInf(dStage_SoundInfo_c* i_SoundInf) { mSoundInf = i_SoundInf; }
/* vt[59] */ virtual dStage_SoundInfo_c* getSoundInf(void) const { return mSoundInf; }
/* vt[60] */ virtual void setSoundInfCL(dStage_SoundInfo_c* i_SoundInfCL) { mSoundInfCL = i_SoundInfCL; }
/* vt[61] */ virtual dStage_SoundInfo_c* getSoundInfCL(void) const { return mSoundInfCL; }
/* vt[62] */ virtual void setMapEventInfo(dStage_MapEventInfo_c* i_MapEventInfo) { mMapEventInfo = i_MapEventInfo; }
/* vt[63] */ virtual dStage_MapEventInfo_c* getMapEventInfo(void) const { return mMapEventInfo; }
/* vt[64] */ virtual void setFileList2Info(dStage_FileList2_dt_c* list) {
UNUSED(list);
dStage_SetErrorStage();
OSReport("stage non filelist2 data!\n");
JUT_ASSERT(3123, FALSE);
}
/* vt[65] */ virtual dStage_FileList2_dt_c* getFileList2Info(void) const {
OSReport("stage non filelist2 data!\n");
JUT_ASSERT(3127, FALSE);
return NULL;
}
/* vt[66] */ virtual void setFileListInfo(dStage_FileList_dt_c* list) {
UNUSED(list);
dStage_SetErrorStage();
OSReport("stage non filelist data!\n");
JUT_ASSERT(3138, FALSE);
}
/* vt[67] */ virtual dStage_FileList_dt_c* getFileListInfo(void) const {
OSReport("stage non filelist data!\n");
JUT_ASSERT(3142, FALSE);
return NULL;
}
/* vt[68] */ virtual void setFloorInfo(dStage_FloorInfo_c* i_FloorInfo) { mFloorInfo = i_FloorInfo; }
/* vt[69] */ virtual dStage_FloorInfo_c* getFloorInfo(void) const { return mFloorInfo; }
/* vt[70] */ virtual void setMemoryConfig(dStage_MemoryConfig_c* i_MemoryConfig) { mMemoryConfig = i_MemoryConfig; }
/* vt[71] */ virtual dStage_MemoryConfig_c* getMemoryConfig(void) const { return mMemoryConfig; }
/* vt[72] */ virtual void setMemoryMap(dStage_MemoryMap_c* i_MemoryMap) { mMemoryMap = i_MemoryMap; }
/* vt[73] */ virtual dStage_MemoryMap_c* getMemoryMap(void) const { return mMemoryMap; }
/* vt[74] */ virtual void setMulti(dStage_Multi_c* i_Multi) { mMulti = i_Multi; }
/* vt[75] */ virtual dStage_Multi_c* getMulti(void) const { return mMulti; }
/* vt[76] */ virtual void setOldMulti(void) { mOldMulti = mMulti; }
/* vt[77] */ virtual void resetOldMulti(void) { mOldMulti = NULL; }
/* vt[78] */ virtual dStage_Multi_c* getOldMulti(void) const { return mOldMulti; }
/* vt[79] */ virtual void setLbnk(dStage_Lbnk_c* lbnk) {
UNUSED(lbnk);
dStage_SetErrorStage();
OSReport("stage non Lbnk data!\n");
JUT_ASSERT(3231, FALSE);
}
/* vt[80] */ virtual dStage_Lbnk_c* getLbnk(void) const {
OSReport("stage non Lbnk data!\n");
JUT_ASSERT(3238, FALSE);
return NULL;
}
/* vt[81] */ virtual void setTresure(stage_tresure_class* i_Tresure) { mTresure = i_Tresure; }
/* vt[82] */ virtual stage_tresure_class* getTresure(void) const { return mTresure; }
/* vt[83] */ virtual void setDMap(dStage_DMap_c* i_DMap) { mDMap = i_DMap; }
/* vt[84] */ virtual dStage_DMap_c* getDMap(void) const { return mDMap; }
/* vt[85] */ virtual void setDrTg(stage_tgsc_class* i_DrTg) { mDrTg = i_DrTg; }
/* vt[86] */ virtual stage_tgsc_class* getDrTg(void) const { return mDrTg; }
/* vt[87] */ virtual void setDoor(stage_tgsc_class* i_Door) { mDoor = i_Door; }
/* vt[88] */ virtual stage_tgsc_class* getDoor(void) const { return mDoor; }
#if DEBUG
virtual void setUnit(void* i_Unit) {
UNUSED(i_Unit);
OSReport("stage non unit list data !!\n");
JUT_ASSERT(3321, 0);
}
virtual void* getUnit() {
OSReport("stage non unit list data !!\n");
JUT_ASSERT(3325, 0);
return NULL;
}
#endif
/* vt[89] */ virtual void setMapPath(void* i_MapPath) { return; }
/* vt[90] */ virtual void* getMapPath(void) { return NULL; }
/* vt[91] */ virtual void setElst(dStage_Elst_c* i_Elst) { mElst = i_Elst; }
/* vt[92] */ virtual dStage_Elst_c* getElst(void);
s16 getWorldRollAngleX() const { return (s16)mWorldRollAngleX; }
s16 getWorldRollDirAngleY() const { return mWorldRollDirAngleY; }
public:
/* 0x08 */ stage_camera_class* mCamera;
/* 0x0C */ stage_arrow_class* mArrow;
/* 0x10 */ stage_actor_class* mPlayer;
/* 0x14 */ roomRead_class* mRoom;
/* 0x18 */ stage_map_info_class* mMapInfo;
/* 0x1C */ stage_map_info_dummy_class* mMapInfoBase;
/* 0x20 */ stage_palette_info_class* mPaletteInfo;
/* 0x24 */ stage_pselect_info_class* mPselectInfo;
/* 0x28 */ stage_envr_info_class* mEnvrInfo;
/* 0x2C */ stage_vrbox_info_class* mVrboxInfo;
/* 0x30 */ stage_vrboxcol_info_class* mVrboxcolInfo;
/* 0x34 */ stage_plight_info_class* mPlightInfo;
/* 0x38 */ dStage_MapEventInfo_c* mMapEventInfo;
/* 0x3C */ u32 mPaletteNumInfo;
/* 0x40 */ u32 mPselectNumInfo;
/* 0x44 */ u32 mEnvrNumInfo;
/* 0x48 */ u32 mVrboxNumInfo;
/* 0x4C */ int mVrboxcolNumInfo;
/* 0x50 */ u32 mPlightNumInfo;
/* 0x54 */ u16 mPlayerNum;
/* 0x56 */ s16 mWorldRollAngleX;
/* 0x58 */ s16 mWorldRollDirAngleY;
/* 0x5A */ u16 field_0x5a;
/* 0x5C */ stage_stag_info_class* mStagInfo;
/* 0x60 */ stage_scls_info_dummy_class* mSclsInfo;
/* 0x64 */ dStage_dPnt_c* mPntInfo;
/* 0x68 */ dStage_dPath_c* mPathInfo;
/* 0x6C */ dStage_dPnt_c* mPnt2Info;
/* 0x70 */ dStage_dPath_c* mPath2Info;
/* 0x74 */ dStage_SoundInfo_c* mSoundInf;
/* 0x78 */ dStage_SoundInfo_c* mSoundInfCL;
/* 0x7C */ dStage_FloorInfo_c* mFloorInfo;
/* 0x80 */ dStage_MemoryConfig_c* mMemoryConfig;
/* 0x84 */ dStage_MemoryMap_c* mMemoryMap;
/* 0x88 */ dStage_Multi_c* mMulti;
/* 0x8C */ dStage_Multi_c* mOldMulti;
/* 0x90 */ stage_tresure_class* mTresure;
/* 0x94 */ dStage_DMap_c* mDMap;
/* 0x98 */ stage_tgsc_class* mDrTg;
/* 0x9C */ stage_tgsc_class* mDoor;
/* 0xA0 */ dStage_Elst_c* mElst;
};
class dBgW_Base;
class dStage_roomStatus_c {
@@ -1113,7 +1133,10 @@ public:
static int getStayNo() { return mStayNo; }
static u8 getRegionNo(int i_roomNo) { return mStatus[i_roomNo].mRegionNo; }
static s8 getMemoryBlockID(int i_roomNo) { return mStatus[i_roomNo].mMemBlockID; }
static int getMemoryBlockID(int i_roomNo) {
JUT_ASSERT(2757, 0 <= i_roomNo && i_roomNo < 64);
return mStatus[i_roomNo].mMemBlockID;
}
dKy_tevstr_c* getTevStr(int i_roomNo) {
JUT_ASSERT(2675, 0 <= i_roomNo && i_roomNo < 64);
return &mStatus[i_roomNo].mKyTevStr;
@@ -1122,9 +1145,13 @@ public:
JUT_ASSERT(2679, 0 <= i_roomNo && i_roomNo < 64);
mStatus[i_roomNo].mFlag = flag;
}
static void onStatusDraw(int i_roomNo) { mStatus[i_roomNo].mDraw = true; }
static void onStatusDraw(int i_roomNo) {
JUT_ASSERT(2725, 0 <= i_roomNo && i_roomNo < 64);
mStatus[i_roomNo].mDraw = true;
}
static dStage_FileList2_dt_c* getFileList2(int i_roomNo) {
return mStatus[i_roomNo].mRoomDt.mFileList2Info;
JUT_ASSERT(2715, 0 <= i_roomNo && i_roomNo < 64);
return mStatus[i_roomNo].mRoomDt.getFileList2Info();
}
static char* getDemoArcName() { return mDemoArcName; }
static nameData* getArcBankName() { return mArcBankName; }
@@ -1266,6 +1293,33 @@ struct FuncTable {
dStage_Func function;
};
enum dStage_SaveTbl {
dStage_SaveTbl_ORDON,
dStage_SaveTbl_PRISON,
dStage_SaveTbl_FARON,
dStage_SaveTbl_ELDIN,
dStage_SaveTbl_LANAYRU,
dStage_SaveTbl_FIELD = 6,
dStage_SaveTbl_GROVE,
dStage_SaveTbl_SNOWPEAK,
dStage_SaveTbl_CASTLE_TOWN,
dStage_SaveTbl_DESERT,
dStage_SaveTbl_FISHING_POND,
dStage_SaveTbl_LV1 = 16,
dStage_SaveTbl_LV2,
dStage_SaveTbl_LV3,
dStage_SaveTbl_LV4,
dStage_SaveTbl_LV5,
dStage_SaveTbl_LV6,
dStage_SaveTbl_LV7,
dStage_SaveTbl_LV8,
dStage_SaveTbl_LV9,
dStage_SaveTbl_CAVE1,
dStage_SaveTbl_CAVE2,
dStage_SaveTbl_GROTTO,
};
const char* dStage_getName2(s16, s8);
dStage_objectNameInf* dStage_searchName(const char*);
static int dStage_stageKeepTresureInit(dStage_dt_c*, void*, int, void*);
@@ -1352,7 +1406,7 @@ inline s32 dStage_roomRead_dt_c_GetTimePass(roomRead_data_class& data) {
return data.field_0x2 & 3;
}
inline u8 dStage_roomRead_dt_c_GetLoadRoomIndex(u8 param_0) {
inline int dStage_roomRead_dt_c_GetLoadRoomIndex(u8 param_0) {
return param_0 & 0x3f;
}
@@ -1417,7 +1471,7 @@ inline u32 dStage_stagInfo_ChkKeyDisp(stage_stag_info_class* pstag) {
return pstag->field_0x09 & 1;
}
inline u8 dStage_stagInfo_GetWolfDashType(stage_stag_info_class* pstag) {
inline int dStage_stagInfo_GetWolfDashType(stage_stag_info_class* pstag) {
return (pstag->field_0x09 >> 6) & 3;
}
+2 -1
View File
@@ -6,6 +6,7 @@
// Fixes weak .data
#include <cmath> // IWYU pragma: export
#include <limits> // IWYU pragma: export
#include "JSystem/J3DGraphBase/J3DMatBlock.h" // IWYU pragma: export
#include "Z2AudioLib/Z2Calc.h" // IWYU pragma: export
@@ -17,11 +18,11 @@
#include "JSystem/JKernel/JKRDisposer.h" // IWYU pragma: export
#include "JSystem/JGadget/linklist.h" // IWYU pragma: export
#include "JSystem/J3DGraphBase/J3DPacket.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DJoint.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DMaterialAttach.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DShapeTable.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DAnimation.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DJoint.h" // IWYU pragma: export
#include "JSystem/JUtility/JUTGamePad.h" // IWYU pragma: export
#include "JSystem/J3DGraphBase/J3DSys.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DMaterialAttach.h" // IWYU pragma: export
+4
View File
@@ -185,6 +185,10 @@ inline u8 fapGmHIO_getGamma() {
}
#endif
inline u8 fapGmHIO_getMemoryBlockOff() {
return g_HIO.mMemBlockOff;
}
struct fapGm_dataMem {
enum HeapType_e {
HeapType_Error_e,
+37 -27
View File
@@ -91,38 +91,47 @@ enum fopAc_attention_type {
/* 0x2 */ fopAc_attn_BATTLE_e,
#if !PLATFORM_GCN
fopAc_attn_UNK_3,
fopAc_attn_UNK_4,
fopAc_attn_UNK_5,
/* 0x3 */ fopAc_attn_UNK_3,
/* 0x4 */ fopAc_attn_UNK_4,
/* 0x5 */ fopAc_attn_UNK_5,
#endif
/* 0x3 */ fopAc_attn_SPEAK_e,
/* 0x4 */ fopAc_attn_CARRY_e,
/* 0x5 */ fopAc_attn_DOOR_e,
/* 0x6 */ fopAc_attn_JUEL_e,
/* 0x3 (0x6) */ fopAc_attn_SPEAK_e,
/* 0x4 (0x7) */ fopAc_attn_CARRY_e,
/* 0x5 (0x8) */ fopAc_attn_DOOR_e,
/* 0x6 (0x9) */ fopAc_attn_JUEL_e,
#if !PLATFORM_GCN
fopAc_attn_UNK_10,
/* 0xA */ fopAc_attn_UNK_10,
#endif
/* 0x7 */ fopAc_attn_ETC_e,
/* 0x8 */ fopAc_attn_CHECK_e,
/* 0x7 (0xB) */ fopAc_attn_ETC_e,
/* 0x8 (0xC) */ fopAc_attn_CHECK_e,
fopAc_attn_MAX_e,
};
enum fopAc_AttentionFlag_e {
/* 0x00000001 */ fopAc_AttnFlag_LOCK_e = (1 << fopAc_attn_LOCK_e),
/* 0x00000002 */ fopAc_AttnFlag_TALK_e = (1 << fopAc_attn_TALK_e),
/* 0x00000004 */ fopAc_AttnFlag_BATTLE_e = (1 << fopAc_attn_BATTLE_e),
/* 0x00000001 */ fopAc_AttnFlag_LOCK_e = (1 << fopAc_attn_LOCK_e),
/* 0x00000002 */ fopAc_AttnFlag_TALK_e = (1 << fopAc_attn_TALK_e),
/* 0x00000004 */ fopAc_AttnFlag_BATTLE_e = (1 << fopAc_attn_BATTLE_e),
/* 0x00000008 */ fopAc_AttnFlag_SPEAK_e = (1 << fopAc_attn_SPEAK_e),
/* 0x00000010 */ fopAc_AttnFlag_CARRY_e = (1 << fopAc_attn_CARRY_e),
/* 0x00000020 */ fopAc_AttnFlag_DOOR_e = (1 << fopAc_attn_DOOR_e),
/* 0x00000040 */ fopAc_AttnFlag_JUEL_e = (1 << fopAc_attn_JUEL_e),
/* 0x00000080 */ fopAc_AttnFlag_ETC_e = (1 << fopAc_attn_ETC_e),
#if !PLATFORM_GCN
/* 0x00000008 */ fopAc_AttnFlag_UNK_3_e = (1 << fopAc_attn_UNK_3),
/* 0x00000010 */ fopAc_AttnFlag_UNK_4_e = (1 << fopAc_attn_UNK_4),
/* 0x00000020 */ fopAc_AttnFlag_UNK_5_e = (1 << fopAc_attn_UNK_5),
#endif
/* 0x00000100 */ fopAc_AttnFlag_CHECK_e = (1 << fopAc_attn_CHECK_e),
/* 0x00000008 (0x00000040) */ fopAc_AttnFlag_SPEAK_e = (1 << fopAc_attn_SPEAK_e),
/* 0x00000010 (0x00000080) */ fopAc_AttnFlag_CARRY_e = (1 << fopAc_attn_CARRY_e),
/* 0x00000020 (0x00000100) */ fopAc_AttnFlag_DOOR_e = (1 << fopAc_attn_DOOR_e),
/* 0x00000040 (0x00000200) */ fopAc_AttnFlag_JUEL_e = (1 << fopAc_attn_JUEL_e),
#if !PLATFORM_GCN
/* 0x00000400 */ fopAc_AttnFlag_UNK_10_e = (1 << fopAc_attn_UNK_10),
#endif
/* 0x00000080 (0x00000800) */ fopAc_AttnFlag_ETC_e = (1 << fopAc_attn_ETC_e),
/* 0x00000100 (0x00001000) */ fopAc_AttnFlag_CHECK_e = (1 << fopAc_attn_CHECK_e),
/* 0x00200000 */ fopAc_AttnFlag_UNK_0x200000 = 0x200000,
/* 0x00400000 */ fopAc_AttnFlag_UNK_0x400000 = 0x400000,
@@ -155,6 +164,7 @@ enum dEvt_Condition_e {
dEvtCnd_CANDEMO_e = 0x0002,
dEvtCnd_CANDOOR_e = 0x0004,
dEvtCnd_CANGETITEM_e = 0x0008,
dEvtCnd_10_e = 0x0010,
dEvtCnd_CANTALKITEM_e = 0x0020,
dEvtCnd_40_e = 0x0040,
dEvtCnd_DUMMY = 0x8000,
@@ -328,10 +338,10 @@ public:
cXyz& getDownPos() { return mDownPos; }
cXyz& getHeadLockPos() { return mHeadLockPos; }
void onCutDownHitFlg() { mFlags |= fopEn_flag_CutDownHit; }
void onWolfBiteDamage() { mFlags |= fopEn_flag_WolfBiteDamage; }
void onWolfDownStartFlg() { mFlags |= (fopEn_flag_WolfDownPull | fopEn_flag_WolfDownStart); }
void onWolfDownPullEndFlg() { mFlags |= fopEn_flag_WolfDownPullEnd; }
void onCutDownHitFlg() { mFlags |= (u16)fopEn_flag_CutDownHit; }
void onWolfBiteDamage() { mFlags |= (u16)fopEn_flag_WolfBiteDamage; }
void onWolfDownStartFlg() { mFlags |= (u16)(fopEn_flag_WolfDownPull | fopEn_flag_WolfDownStart); }
void onWolfDownPullEndFlg() { mFlags |= (u16)fopEn_flag_WolfDownPullEnd; }
void onWolfNoLock() { mFlags |= (u16)fopEn_flag_WolfNoLock; }
void onDownFlg() { mFlags |= (u16)fopEn_flag_Down; }
void onHeadLockFlg() { mFlags |= (u16)fopEn_flag_HeadLock; }
@@ -356,10 +366,10 @@ public:
void setMidnaBindMode(u8 i_bindMode) { mMidnaBindMode = i_bindMode; }
void setMidnaBindID(u8 i_idx, u32 i_bindID) { mMidnaBindID[i_idx] = i_bindID; }
void setThrowModeCatch() { mThrowMode |= fopEn_throwMode_Catch; }
void setThrowModeDash() { mThrowMode |= fopEn_throwMode_Dash; }
void setThrowModeThrowRight() { mThrowMode |= fopEn_throwMode_ThrowRight; }
void setThrowModeThrowLeft() { mThrowMode |= fopEn_throwMode_ThrowLeft; }
void setThrowModeCatch() { mThrowMode |= (u8)fopEn_throwMode_Catch; }
void setThrowModeDash() { mThrowMode |= (u8)fopEn_throwMode_Dash; }
void setThrowModeThrowRight() { mThrowMode |= (u8)fopEn_throwMode_ThrowRight; }
void setThrowModeThrowLeft() { mThrowMode |= (u8)fopEn_throwMode_ThrowLeft; }
void setDownPos(const cXyz* i_pos) { mDownPos = *i_pos; }
void setHeadLockPos(const cXyz* i_pos) { mHeadLockPos = *i_pos; }
+12 -19
View File
@@ -12,26 +12,23 @@
#include "f_pc/f_pc_manager.h"
#include "m_Do/m_Do_hostIO.h"
#define fopAcM_ct(ptr, ClassName) \
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
new (ptr) ClassName(); \
fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \
#define fopAcM_ct(ptr, ClassName) \
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
new (ptr) ClassName(); \
fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \
}
#define fopAcM_RegisterDeleteID(i_this, actor_name_str) \
const fpc_ProcID procID = fopAcM_GetID(i_this); \
"Delete -> " actor_name_str "(id=%d)\n"
#define fopAcM_RegisterDeleteID(i_this, actor_name_str) \
("Delete -> " actor_name_str "(id=%d)\n", fopAcM_GetID(i_this))
#define fopAcM_RegisterCreateID(actor_class, i_this, actor_name_str) \
actor_class* a_this = static_cast<actor_class*>(i_this); \
const fpc_ProcID procID = fopAcM_GetID(i_this); \
"Create -> " actor_name_str "(id=%d)\n"
#define fopAcM_RegisterCreateID(i_this, actor_name_str) \
("Create -> " actor_name_str "(id=%d)\n", fopAcM_GetID(i_this))
#define fopAcM_RegisterDelete(i_this, actor_name_str) "Delete -> " actor_name_str "\n"
#define fopAcM_RegisterDelete(i_this, actor_name_str) \
("Delete -> " actor_name_str "\n")
#define fopAcM_RegisterCreate(actor_class, i_this, actor_name_str) \
static_cast<actor_class*>(i_this); \
"Create -> " actor_name_str "\n"
#define fopAcM_RegisterCreate(i_this, actor_name_str) \
("Create -> " actor_name_str "\n")
class J3DModelData; // placeholder
class JKRHeap;
@@ -548,10 +545,6 @@ fpc_ProcID fopAcM_create(s16 i_procName, u16 i_setId, u32 i_parameters, const cX
fpc_ProcID fopAcM_create(s16 i_procName, u32 i_parameters, const cXyz* i_pos, int i_roomNo,
const csXyz* i_angle, const cXyz* i_scale, s8 i_argument);
inline fpc_ProcID fopAcM_create(s16 i_procName, createFunc i_createFunc, void* params) {
return fpcM_Create(i_procName, i_createFunc, params);
}
inline fpc_ProcID fopAcM_Create(s16 i_procName, createFunc i_createFunc, void* params) {
return fpcM_Create(i_procName, i_createFunc,params);
}
+4 -4
View File
@@ -23,16 +23,16 @@ public:
#endif
static void onInitFlag() { mInitFlag = true; }
static bool isInitFlag() { return mInitFlag; }
static bool isResetFlag() { return mResetFlag; }
static u8 isInitFlag() { return mInitFlag; }
static u8 isResetFlag() { return mResetFlag; }
static void onResetFlag() { mResetFlag = true; }
static void offResetFlag() { mResetFlag = false; }
static bool isBgmSet() { return mBgmSet; }
static void onBgmSet() { mBgmSet = true; }
static void offBgmSet() { mBgmSet = false; }
static bool mInitFlag;
static bool mResetFlag;
static u8 mInitFlag;
static u8 mResetFlag;
static bool mBgmSet;
};

Some files were not shown because too many files have changed in this diff Show More