mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-05 20:59:13 -04:00
Finished porting all actor classes to headers
This commit is contained in:
@@ -87,7 +87,7 @@ namespace daBomb2 {
|
||||
void set_no_hit();
|
||||
bool chk_explode();
|
||||
|
||||
static int solidHeapCB(fopAc_ac_c*);
|
||||
static BOOL solidHeapCB(fopAc_ac_c*);
|
||||
bool create_heap_nut();
|
||||
bool create_heap();
|
||||
void crr_init();
|
||||
|
||||
@@ -8,6 +8,10 @@
|
||||
#include "JSystem/JParticle/JPAEmitter.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
struct ep_ga_s {
|
||||
|
||||
};
|
||||
|
||||
class ep_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhsLoad_Ep;
|
||||
|
||||
@@ -9,6 +9,20 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
struct mo_ga_s {
|
||||
/* 0x00 */ J3DModel* mpModel;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ cXyz m10;
|
||||
/* 0x1C */ s16 mRotX;
|
||||
/* 0x1E */ s16 mRotY;
|
||||
/* 0x20 */ u8 m20[0x24 - 0x20];
|
||||
/* 0x24 */ f32 mScale;
|
||||
/* 0x28 */ f32 mScaleY;
|
||||
/* 0x2C */ s16 m2C;
|
||||
/* 0x2E */ u8 m2E;
|
||||
/* 0x2F */ u8 m2F;
|
||||
};
|
||||
|
||||
class kantera_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
|
||||
@@ -2,28 +2,71 @@
|
||||
#define D_A_MOZO_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
class daMozo_c : public fopAc_ac_c {
|
||||
public:
|
||||
typedef void(daMozo_c::*proc_t)(void);
|
||||
|
||||
void setProcess(void (daMozo_c::*)()) {}
|
||||
|
||||
void set_mtx();
|
||||
s32 _create();
|
||||
bool _delete();
|
||||
bool _draw();
|
||||
bool _execute();
|
||||
void anime_proc();
|
||||
void wait_proc_init();
|
||||
void wait_proc();
|
||||
void checkRange(int);
|
||||
BOOL CreateHeap();
|
||||
s32 CreateInit();
|
||||
void event_move();
|
||||
void getBeamActor(u32);
|
||||
void search_beam_proc_init();
|
||||
void search_beam_proc();
|
||||
void search_fire_proc_init();
|
||||
void search_fire_proc();
|
||||
void towait_proc_init();
|
||||
void towait_proc();
|
||||
void checkRange(int);
|
||||
void wait_proc_init();
|
||||
void wait_proc();
|
||||
void set_mtx();
|
||||
void setAnm(int, float);
|
||||
void getBeamActor(u32);
|
||||
void event_move();
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
// TODO: add offset comments
|
||||
proc_t mCurrentProc;
|
||||
request_of_phase_process_class mPhs;
|
||||
mDoExt_McaMorf* mAnimMorf;
|
||||
mDoExt_brkAnm mBrkAnm;
|
||||
J3DAnmTevRegKey* m_brk;
|
||||
mDoExt_btkAnm mBtkAnm;
|
||||
J3DAnmTextureSRTKey* m_btk;
|
||||
// TODO: insert missing members
|
||||
Quaternion mQuatRotation;
|
||||
dCcD_Stts mColStatus;
|
||||
dCcD_Cps mCapsuleCol;
|
||||
};
|
||||
|
||||
class daMozo_HIO_c {
|
||||
public:
|
||||
daMozo_HIO_c();
|
||||
~daMozo_HIO_c() {}
|
||||
};
|
||||
|
||||
class daMozo_childHIO_c {
|
||||
public:
|
||||
~daMozo_childHIO_c() {}
|
||||
};
|
||||
|
||||
class daMozo_FireChildHIO_c {
|
||||
public:
|
||||
~daMozo_FireChildHIO_c() {}
|
||||
};
|
||||
|
||||
class daMozo_BeamChildHIO_c {
|
||||
public:
|
||||
~daMozo_BeamChildHIO_c() {}
|
||||
};
|
||||
|
||||
#endif /* D_A_MOZO_H */
|
||||
|
||||
@@ -106,7 +106,7 @@ class daNh_HIO_c : public JORReflexible {
|
||||
|
||||
public:
|
||||
daNh_HIO_c();
|
||||
virtual ~daNh_HIO_c();
|
||||
virtual ~daNh_HIO_c() {}
|
||||
|
||||
public:
|
||||
/* 0x04 */ s8 mChildID;
|
||||
|
||||
@@ -7,11 +7,19 @@
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
class daObjAjavW_c : public fopAc_ac_c {
|
||||
public:
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel* mModel;
|
||||
/* 0x29C */ mDoExt_btkAnm mBtk;
|
||||
/* 0x2B0 */ dBgW* mBgW;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ mDoExt_btkAnm mBtkAnm;
|
||||
/* 0x2B0 */ dBgW * mpBgW;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_AJAVW_H */
|
||||
|
||||
@@ -9,13 +9,20 @@
|
||||
class daObjVteng_c : public fopAc_ac_c {
|
||||
public:
|
||||
void init_mtx();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
bool jokai_demo();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel* mpModel;
|
||||
/* 0x29C */ mDoExt_McaMorf* mpMorf;
|
||||
/* 0x2A0 */ dBgW* mpBgW;
|
||||
/* 0x2A4 */ Mtx mMtx;
|
||||
/* 0x2A4 */ Mtx mtx;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_VTENG_H */
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
#define D_A_OBJ_DRAGONHEAD_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_bg_w.h"
|
||||
|
||||
class daObjDragonhead_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -10,11 +13,21 @@ public:
|
||||
inline BOOL _draw();
|
||||
inline BOOL _execute();
|
||||
|
||||
BOOL CreateHeap();
|
||||
void CreateInit();
|
||||
void set_mtx();
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ dCcD_Stts mStts;
|
||||
/* 0x2D8 */ dCcD_Sph mSph;
|
||||
/* 0x404 */ u8 mAlpha;
|
||||
/* 0x405 */ bool mSwitchOn;
|
||||
/* 0x408 */ dBgW * mpBgW;
|
||||
/* 0x40C */ u8 field_0x40c;
|
||||
/* 0x410 */ cXyz mSphCenter;
|
||||
/* 0x41C */ Mtx mtx;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_DRAGONHEAD_H */
|
||||
|
||||
@@ -2,15 +2,29 @@
|
||||
#define D_A_OBJ_EAYOGN_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "d/d_bg_w.h"
|
||||
// #include "d/d_com_inf_game.h"
|
||||
|
||||
class daObjEayogn_c : public fopAc_ac_c {
|
||||
public:
|
||||
void check_ev_bit() const {}
|
||||
// TODO: this function is marked as weak in the REL symbol map, but it does not get inlined for some reason?
|
||||
// BOOL check_ev_bit() const { return dComIfGs_isSymbol(1); }
|
||||
BOOL check_ev_bit() const;
|
||||
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
BOOL create_heap();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
void init_mtx();
|
||||
static const char M_arcname[7];
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x290 */ J3DModel * mpModel;
|
||||
/* 0x294 */ request_of_phase_process_class mPhs;
|
||||
/* 0x2A0 */ dBgW * mpBgW;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_EAYOGN_H */
|
||||
|
||||
@@ -2,13 +2,28 @@
|
||||
#define D_A_OBJ_HFUCK1_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "d/d_bg_w.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
class daObjHfuck1_c : public fopAc_ac_c {
|
||||
public:
|
||||
void init_mtx();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
bool checkCollision();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ dBgW * mpBgW;
|
||||
/* 0x2A0 */ dCcD_Stts mStts;
|
||||
/* 0x408 */ dCcD_Sph mSph;
|
||||
/* 0x40C */ fopAc_ac_c * mpHookshotActor;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_HFUCK1_H */
|
||||
|
||||
@@ -3,10 +3,24 @@
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/d_bg_s_lin_chk.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
|
||||
class daObj_Hole_c : public fopAc_ac_c {
|
||||
public:
|
||||
void modeProcInit(int) {}
|
||||
enum Proc_e {
|
||||
PROC_INIT = 0,
|
||||
PROC_EXEC = 1
|
||||
};
|
||||
|
||||
enum Mode {
|
||||
MODE_WAIT = 0,
|
||||
MODE_EVENT = 1,
|
||||
MODE_NULL,
|
||||
};
|
||||
|
||||
static const char m_arc_name[];
|
||||
|
||||
void modeProcInit(int newMode) { modeProc(PROC_INIT, newMode); }
|
||||
|
||||
void setMtx();
|
||||
void getPosAndAngle();
|
||||
@@ -14,22 +28,39 @@ public:
|
||||
void modeWait();
|
||||
void modeEventInit();
|
||||
void modeEvent();
|
||||
void modeProc(daObj_Hole_c::Proc_e mode, int i_nextState);
|
||||
void modeProc(Proc_e proc, int newMode);
|
||||
void debugDraw();
|
||||
void createInit();
|
||||
void getArg();
|
||||
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
BOOL _createHeap();
|
||||
s32 _create();
|
||||
bool _delete();
|
||||
|
||||
public:
|
||||
/* 0x290 */ int mState;
|
||||
/* 0x294 */ u8 mbHasModel;
|
||||
/* 0x295 */ u8 mSclsNum;
|
||||
/* 0x296 */ s16 mScale;
|
||||
/* 0x298 */ u8 m298[0x2A0 - 0x298];
|
||||
/* 0x2A0 */ J3DModel* mpModel;
|
||||
/* 0x2A4 */ dBgS_LinChk mLinChk;
|
||||
/* 0x310 */ u8 m310[0x338 - 0x310];
|
||||
/* 0x338 */ int m338;
|
||||
/* 0x33C */ u8 m33C[0x800 - 0x33C];
|
||||
/* 0x0290 */ s32 mMode;
|
||||
/* 0x0294 */ u8 mHasModel;
|
||||
/* 0x0295 */ u8 mExitIdx;
|
||||
/* 0x0296 */ u16 mScaleLocal;
|
||||
/* 0x0298 */ request_of_phase_process_class mPhs;
|
||||
/* 0x02A0 */ J3DModel* mpMdl;
|
||||
/* 0x02A4 */ dBgS_ObjLinChk mLinChk;
|
||||
/* 0x0310 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x04D4 */ dBgS_AcchCir mAcchCir;
|
||||
};
|
||||
|
||||
class daObj_Hole_HIO_c {
|
||||
public:
|
||||
daObj_Hole_HIO_c();
|
||||
virtual ~daObj_Hole_HIO_c() {}
|
||||
|
||||
/* 0x04 */ s8 m04;
|
||||
/* 0x05 */ u8 m05;
|
||||
/* 0x08 */ f32 m08;
|
||||
/* 0x0C */ s16 m0C;
|
||||
/* 0x10 */ f32 m10;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_HOLE_H */
|
||||
|
||||
@@ -5,24 +5,65 @@
|
||||
#include "d/d_cc_d.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "f_op/f_op_msg.h"
|
||||
#include "d/d_a_obj.h"
|
||||
|
||||
namespace daObjPaper {
|
||||
enum Type_e {
|
||||
Opaper_e,
|
||||
Ppos_e,
|
||||
Piwa_e,
|
||||
};
|
||||
|
||||
class Act_c : public fopAc_ac_c {
|
||||
public:
|
||||
void prm_get_msgNo() const {}
|
||||
void prm_get_type() const {}
|
||||
enum Prm_e {
|
||||
PRM_MSG_NO_W = 0x10,
|
||||
PRM_MSG_NO_S = 0x00,
|
||||
|
||||
PRM_TYPE_W = 0x04,
|
||||
PRM_TYPE_S = 0x10,
|
||||
};
|
||||
|
||||
enum Act_Mode_e {
|
||||
ActMode_WAIT_e,
|
||||
ActMode_TALKBEGIN_e,
|
||||
ActMode_GETMSG_e,
|
||||
ActMode_TALKWAIT_e,
|
||||
};
|
||||
|
||||
u32 prm_get_msgNo() const { return daObj::PrmAbstract<Prm_e>(this, PRM_MSG_NO_W, PRM_MSG_NO_S); }
|
||||
Type_e prm_get_type() const { return (Type_e)daObj::PrmAbstract<Prm_e>(this, PRM_TYPE_W, PRM_TYPE_S); }
|
||||
|
||||
static const dCcD_SrcCyl M_cyl_src;
|
||||
|
||||
static int solidHeapCB(fopAc_ac_c*);
|
||||
bool create_heap();
|
||||
s32 _create();
|
||||
bool _delete();
|
||||
void mode_wait_init();
|
||||
void mode_wait();
|
||||
void mode_talk0_init();
|
||||
void mode_talk0();
|
||||
void mode_talk1_init();
|
||||
void mode_talk1();
|
||||
void mode_talk2_init();
|
||||
void mode_talk2();
|
||||
void set_mtx();
|
||||
void init_mtx();
|
||||
void damage_cc_proc();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel* mpModel;
|
||||
/* 0x29C */ dCcD_Cyl mCyl;
|
||||
/* 0x3CC */ dCcD_Stts mStts;
|
||||
/* 0x408 */ u8 mbHasCc;
|
||||
/* 0x409 */ u8 m409[0x40C - 0x409];
|
||||
/* 0x29C */ dCcD_Cyl mCylinderCol;
|
||||
/* 0x3CC */ dCcD_Stts mColStatus;
|
||||
/* 0x408 */ bool mbHasCc;
|
||||
/* 0x40C */ int mMode;
|
||||
/* 0x410 */ int mMsgId;
|
||||
/* 0x410 */ u32 mMsgId;
|
||||
/* 0x414 */ msg_class* mpMsg;
|
||||
/* 0x418 */ int mType;
|
||||
/* 0x418 */ Type_e mType;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -5,7 +5,19 @@
|
||||
|
||||
class d_a_scene_change_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* Place member variables here */
|
||||
/* 0x290 */ Mtx mTransformMtx;
|
||||
};
|
||||
|
||||
class daSceneChgHIO_c {
|
||||
public:
|
||||
daSceneChgHIO_c();
|
||||
virtual ~daSceneChgHIO_c() {
|
||||
m0004 = -1;
|
||||
}
|
||||
|
||||
s8 m0004;
|
||||
s8 m0005;
|
||||
f32 m0008;
|
||||
};
|
||||
|
||||
#endif /* D_A_SCENE_CHANGE_H */
|
||||
|
||||
@@ -8,10 +8,18 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "c/c_damagereaction.h"
|
||||
|
||||
struct st_p {
|
||||
|
||||
};
|
||||
|
||||
struct st_ke_s {
|
||||
|
||||
};
|
||||
|
||||
class st_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x02AC */ u8 m02AC[0x02B4 - 0x02AC];
|
||||
/* 0x02B4 */ daSt__BehaviorTypes mBehaviorType;
|
||||
/* 0x02B4 */ u8 mBehaviorType;
|
||||
/* 0x02B5 */ u8 mAmbushSightRange;
|
||||
/* 0x02B6 */ u8 mUnusedParam;
|
||||
/* 0x02B7 */ u8 mAmbushSwitch;
|
||||
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
s32 getTimer();
|
||||
s32 getSwNo2();
|
||||
|
||||
s32 CreateHeap();
|
||||
BOOL CreateHeap();
|
||||
void decisionRtType();
|
||||
|
||||
s32 CreateInit();
|
||||
|
||||
@@ -3,15 +3,30 @@
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daSwItem_c : public fopAc_ac_c {
|
||||
public:
|
||||
bool _delete();
|
||||
BOOL CreateInit();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
BOOL isRupeeInAllCreateTable(int);
|
||||
bool _draw();
|
||||
|
||||
public:
|
||||
/* 0x290 */ u8 m290[0x29C - 0x290];
|
||||
/* 0x29C */ dCcD_Stts mStts;
|
||||
/* 0x2D8 */ dCcD_Cyl mCyl;
|
||||
/* 0x408 */ u8 mAtTypeTrigger;
|
||||
/* 0x409 */ bool m409;
|
||||
/* 0x409 */ bool mSpawnedItem;
|
||||
/* 0x40A */ u8 m40A[0x40C - 0x40A];
|
||||
};
|
||||
|
||||
namespace daSwItem_prm {
|
||||
inline u32 getAtType(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x00) & 0xFF; }
|
||||
inline u32 getItemTbl(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x08) & 0x3F; }
|
||||
inline u32 getItemBitNo(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x0E) & 0x7F; }
|
||||
}
|
||||
|
||||
#endif /* D_A_SWITEM_H */
|
||||
|
||||
@@ -3,23 +3,40 @@
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daSwTact_c : public fopAc_ac_c {
|
||||
public:
|
||||
void getR() {}
|
||||
f32 getR() { return mRadius * mScale.x; }
|
||||
|
||||
bool _delete();
|
||||
BOOL CreateHeap();
|
||||
void CreateInit();
|
||||
void set_mtx();
|
||||
s32 getAnswer();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
|
||||
static const char * m_arcname;
|
||||
static const f32 mDefaultR;
|
||||
static const f32 mDefaultRwM;
|
||||
static const u32 m_heapsize;
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel* mpModel;
|
||||
/* 0x298 */ J3DModel * model;
|
||||
/* 0x29C */ f32 mRadius;
|
||||
/* 0x2A0 */ u32 m2A0;
|
||||
/* 0x2A0 */ u32 mSwitchNo;
|
||||
/* 0x2A4 */ u8 mAnswer;
|
||||
/* 0x2A5 */ u8 m2A5;
|
||||
/* 0x2A6 */ u8 m2A6;
|
||||
/* 0x2A7 */ u8 m2A7[0x2A8 - 0x2A7];
|
||||
/* 0x2A5 */ bool mTrigger;
|
||||
/* 0x2A6 */ u8 mPlayerStatus;
|
||||
};
|
||||
|
||||
namespace daSwTact_prm {
|
||||
inline u32 getSwitchNo(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 0) & 0xFF; }
|
||||
inline u32 getAnswer(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 8) & 0xFF; }
|
||||
inline u32 getModel(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 16) & 0x0F; }
|
||||
}
|
||||
|
||||
#endif /* D_A_SWTACT_H */
|
||||
|
||||
@@ -5,13 +5,29 @@
|
||||
|
||||
class daTag_Msg_c : public fopAc_ac_c {
|
||||
public:
|
||||
typedef BOOL (ActionFunc)(daTag_Msg_c*);
|
||||
|
||||
inline s32 create();
|
||||
inline BOOL draw();
|
||||
inline BOOL execute();
|
||||
void setActio(unsigned char) {}
|
||||
void setActio(u8 action) { mAction = action; }
|
||||
|
||||
u32 getEventNo();
|
||||
u32 getSwbit();
|
||||
u32 getSwbit2();
|
||||
u32 getType2();
|
||||
const char* myDemoName();
|
||||
u16 getMessage();
|
||||
u16 getEventFlag();
|
||||
BOOL arrivalTerms();
|
||||
int rangeCheck();
|
||||
int otherCheck();
|
||||
|
||||
public:
|
||||
/* 0x290 */ u8 m290[0x294 - 0x290];
|
||||
/* 0x290 */ u8 mAction;
|
||||
/* 0x291 */ u8 field_0x291;
|
||||
/* 0x292 */ u8 field_0x292;
|
||||
/* 0x293 */ u8 field_0x293;
|
||||
};
|
||||
|
||||
#endif /* D_A_TAG_MSG_H */
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "d/d_particle.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
|
||||
class daTbox_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -54,7 +55,7 @@ public:
|
||||
s32 getShapeType();
|
||||
s32 getFuncType();
|
||||
BOOL checkNormal();
|
||||
s32 CreateHeap();
|
||||
BOOL CreateHeap();
|
||||
void CreateInit();
|
||||
s32 boxCheck();
|
||||
void lightUpProc();
|
||||
@@ -120,7 +121,7 @@ public:
|
||||
/* 0x76C */ u8 mOpenedSwitch;
|
||||
};
|
||||
|
||||
class daTbox_HIO_c {
|
||||
class daTbox_HIO_c : public JORReflexible {
|
||||
public:
|
||||
daTbox_HIO_c();
|
||||
virtual ~daTbox_HIO_c() { }
|
||||
|
||||
@@ -344,7 +344,6 @@ public:
|
||||
bool ChkCoHitNoActor() const { return mGObjCo.ChkRPrm(1); }
|
||||
bool ChkAtHitNoActor() const { return mGObjAt.ChkRPrm(2); }
|
||||
bool ChkTgHitNoActor() const { return mGObjTg.ChkRPrm(1); }
|
||||
bool ChkTgWolfSpNoDamage() { return mGObjTg.ChkSPrm(0x800); }
|
||||
bool ChkAtNoHitMark() { return mGObjAt.ChkSPrm(2); }
|
||||
bool ChkTgNoHitMark() { return mGObjTg.ChkSPrm(4); }
|
||||
bool ChkTgHookShotNoHitMark() { return mGObjTg.ChkSPrm(0x400); }
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
#ifndef D_THROWSTONE_H
|
||||
#define D_THROWSTONE_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
class daThrowstone_c : public fopAc_ac_c {
|
||||
public:
|
||||
BOOL CreateHeap();
|
||||
inline s32 _create();
|
||||
inline BOOL _delete();
|
||||
inline BOOL _execute();
|
||||
inline bool _draw();
|
||||
|
||||
static const char M_arcname[5];
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ Mtx mMtx;
|
||||
};
|
||||
|
||||
#endif /* D_THROWSTONE_H */
|
||||
@@ -382,8 +382,6 @@ s32 fopAcM_createChildFromOffset(s16 procName, unsigned int parentProcID, u32 ac
|
||||
|
||||
void fopAcM_DeleteHeap(fopAc_ac_c* p_actor);
|
||||
|
||||
s32 fopAcM_callCallback(fopAc_ac_c* p_actor, heapCallbackFunc p_callbackFunc, JKRHeap* p_heap);
|
||||
|
||||
bool fopAcM_entrySolidHeap(fopAc_ac_c* p_actor, heapCallbackFunc p_heapCallback, u32 size);
|
||||
|
||||
inline void fopAcM_SetMin(fopAc_ac_c* p_actor, f32 minX, f32 minY, f32 minZ) {
|
||||
@@ -428,7 +426,6 @@ f32 fopAcM_searchActorDistanceXZ2(fopAc_ac_c* p_actorA, fopAc_ac_c* p_actorB);
|
||||
s32 fopAcM_rollPlayerCrash(fopAc_ac_c* i_this, f32 distAdjust, u32 flag);
|
||||
s32 fopAcM_checkCullingBox(Mtx, f32, f32, f32, f32, f32, f32);
|
||||
s32 fopAcM_cullingCheck(fopAc_ac_c*);
|
||||
void* event_second_actor(u16);
|
||||
s32 fopAcM_orderTalkEvent(fopAc_ac_c*, fopAc_ac_c*);
|
||||
s32 fopAcM_orderSpeakEvent(fopAc_ac_c* i_actor);
|
||||
s32 fopAcM_orderDoorEvent(fopAc_ac_c*, fopAc_ac_c*);
|
||||
|
||||
@@ -1149,7 +1149,7 @@ BOOL daBomb_Delete(daBomb_c* i_this) {
|
||||
|
||||
#include "d/actor/d_a_bomb3.inc"
|
||||
|
||||
int daBomb_createHeap(fopAc_ac_c* i_this) {
|
||||
BOOL daBomb_createHeap(fopAc_ac_c* i_this) {
|
||||
static_cast<daBomb_c*>(i_this)->createHeap();
|
||||
}
|
||||
|
||||
@@ -1176,7 +1176,7 @@ int daBomb_c::create() {
|
||||
}
|
||||
|
||||
if(status == cPhs_COMPLEATE_e) {
|
||||
if(fopAcM_entrySolidHeap(this, &daBomb_createHeap, m_attrType[mType].heapSize)) {
|
||||
if(fopAcM_entrySolidHeap(this, daBomb_createHeap, m_attrType[mType].heapSize)) {
|
||||
create_init();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -186,7 +186,7 @@ namespace daBomb2 {
|
||||
mpEmitter = param_1;
|
||||
}
|
||||
|
||||
int Act_c::solidHeapCB(fopAc_ac_c* i_this) {
|
||||
BOOL Act_c::solidHeapCB(fopAc_ac_c* i_this) {
|
||||
return static_cast<Act_c*>(i_this)->create_heap();
|
||||
}
|
||||
|
||||
@@ -310,7 +310,7 @@ namespace daBomb2 {
|
||||
int status = dComIfG_resLoad(&mPhs, L_attr.resName);
|
||||
|
||||
if(status == cPhs_COMPLEATE_e) {
|
||||
if(fopAcM_entrySolidHeap(this, &solidHeapCB, L_attr.heapSize)) {
|
||||
if(fopAcM_entrySolidHeap(this, solidHeapCB, L_attr.heapSize)) {
|
||||
create_init();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -242,7 +242,7 @@ s32 daItem_c::_daItem_create() {
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
// Note: The demo version calls getHeapSize instead of getFieldHeapSize here.
|
||||
u32 heap_size = dItem_data::getFieldHeapSize(m_itemNo);
|
||||
if (!fopAcM_entrySolidHeap(this, &CheckFieldItemCreateHeap, heap_size)) {
|
||||
if (!fopAcM_entrySolidHeap(this, CheckFieldItemCreateHeap, heap_size)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
CreateInit();
|
||||
|
||||
@@ -46,7 +46,7 @@ s32 daKaji_c::_create() {
|
||||
|
||||
s32 phase_state = dComIfG_resLoad(&mPhs, M_arcname);
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)&CheckCreateHeap, 0x660)) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x660)) {
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mDoMtx_stack_c::YrotM(shape_angle.y);
|
||||
mDoMtx_stack_c::scaleM(mScale);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_mozo.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_mozo.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -14,95 +15,13 @@
|
||||
#include "m_do/m_Do_mtx.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
|
||||
|
||||
/*** HIO ***/
|
||||
class daMozo_HIO_c {
|
||||
public:
|
||||
daMozo_HIO_c();
|
||||
~daMozo_HIO_c();
|
||||
};
|
||||
|
||||
static daMozo_HIO_c l_HIO;
|
||||
|
||||
class daMozo_childHIO_c {
|
||||
public:
|
||||
~daMozo_childHIO_c();
|
||||
};
|
||||
|
||||
class daMozo_FireChildHIO_c {
|
||||
public:
|
||||
~daMozo_FireChildHIO_c();
|
||||
};
|
||||
|
||||
class daMozo_BeamChildHIO_c {
|
||||
public:
|
||||
~daMozo_BeamChildHIO_c();
|
||||
};
|
||||
|
||||
/*** Actor ***/
|
||||
class daMozo_c : public fopAc_ac_c {
|
||||
public:
|
||||
s32 _create();
|
||||
bool _delete();
|
||||
bool _draw();
|
||||
bool _execute();
|
||||
void anime_proc();
|
||||
void checkRange(int);
|
||||
s32 CreateHeap();
|
||||
s32 CreateInit();
|
||||
void event_move();
|
||||
void getBeamActor(u32);
|
||||
void search_beam_proc();
|
||||
void search_beam_proc_init();
|
||||
void search_fire_proc();
|
||||
void search_fire_proc_init();
|
||||
void set_mtx();
|
||||
void setAnm(int, float);
|
||||
void towait_proc();
|
||||
void towait_proc_init();
|
||||
void wait_proc();
|
||||
void wait_proc_init();
|
||||
|
||||
typedef void(daMozo_c::*proc_t)(void);
|
||||
proc_t mCurrentProc;
|
||||
request_of_phase_process_class mPhs;
|
||||
|
||||
mDoExt_McaMorf* mAnimMorf;
|
||||
|
||||
mDoExt_brkAnm mBrkAnm;
|
||||
J3DAnmTevRegKey* m_brk;
|
||||
|
||||
mDoExt_btkAnm mBtkAnm;
|
||||
J3DAnmTextureSRTKey* m_btk;
|
||||
|
||||
// TODO: insert missing members
|
||||
|
||||
Quaternion mQuatRotation;
|
||||
|
||||
dCcD_Stts mColStatus;
|
||||
dCcD_Cps mCapsuleCol;
|
||||
};
|
||||
|
||||
/* 000000EC-000001D0 .text __ct__12daMozo_HIO_cFv */
|
||||
daMozo_HIO_c::daMozo_HIO_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 000001D0-0000022C .text __dt__21daMozo_FireChildHIO_cFv */
|
||||
daMozo_FireChildHIO_c::~daMozo_FireChildHIO_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 0000022C-00000288 .text __dt__21daMozo_BeamChildHIO_cFv */
|
||||
daMozo_BeamChildHIO_c::~daMozo_BeamChildHIO_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 00000288-000002D0 .text __dt__17daMozo_childHIO_cFv */
|
||||
daMozo_childHIO_c::~daMozo_childHIO_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 000002D0-00000568 .text daMozo_nodeCallBackBeam__FP8daMozo_cP8J3DModelP7J3DNodei */
|
||||
void daMozo_nodeCallBackBeam(daMozo_c*, J3DModel*, J3DNode*, int) {
|
||||
/* Nonmatching */
|
||||
@@ -119,12 +38,12 @@ void daMozo_nodeCallBack(J3DNode*, int) {
|
||||
}
|
||||
|
||||
/* 0000078C-000007AC .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
s32 CheckCreateHeap(fopAc_ac_c* i_this) {
|
||||
BOOL CheckCreateHeap(fopAc_ac_c* i_this) {
|
||||
return static_cast<daMozo_c*>(i_this)->CreateHeap();
|
||||
}
|
||||
|
||||
/* 000007AC-00000A24 .text CreateHeap__8daMozo_cFv */
|
||||
s32 daMozo_c::CreateHeap() {
|
||||
BOOL daMozo_c::CreateHeap() {
|
||||
/* Nonmatching */
|
||||
J3DModelData* mdlData = (J3DModelData*)dComIfG_getObjectRes("Mozo", 9);
|
||||
|
||||
@@ -269,7 +188,7 @@ s32 daMozo_c::_create() {
|
||||
s32 result = dComIfG_resLoad(&mPhs, "Mozo");
|
||||
|
||||
if (result == cPhs_COMPLEATE_e) {
|
||||
s32 solidHeapResult = fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x1AA0);
|
||||
s32 solidHeapResult = fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x1AA0);
|
||||
|
||||
if (solidHeapResult & 0xFF == 0) {
|
||||
result = cPhs_ERROR_e;
|
||||
@@ -324,22 +243,22 @@ bool daMozo_c::_draw() {
|
||||
}
|
||||
|
||||
/* 0000267C-000026A0 .text daMozo_Draw__FP8daMozo_c */
|
||||
s32 daMozo_Draw(daMozo_c* i_this) {
|
||||
BOOL daMozo_Draw(daMozo_c* i_this) {
|
||||
return i_this->_draw();
|
||||
}
|
||||
|
||||
/* 000026A0-000026C4 .text daMozo_Execute__FP8daMozo_c */
|
||||
s32 daMozo_Execute(daMozo_c* i_this) {
|
||||
BOOL daMozo_Execute(daMozo_c* i_this) {
|
||||
return i_this->_execute();
|
||||
}
|
||||
|
||||
/* 000026C4-000026CC .text daMozo_IsDelete__FP8daMozo_c */
|
||||
s32 daMozo_IsDelete(daMozo_c*) {
|
||||
BOOL daMozo_IsDelete(daMozo_c*) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 000026CC-000026F0 .text daMozo_Delete__FP8daMozo_c */
|
||||
s32 daMozo_Delete(daMozo_c* i_this) {
|
||||
BOOL daMozo_Delete(daMozo_c* i_this) {
|
||||
return i_this->_delete();
|
||||
}
|
||||
|
||||
@@ -348,11 +267,6 @@ s32 daMozo_Create(fopAc_ac_c* i_this) {
|
||||
return static_cast<daMozo_c*>(i_this)->_create();
|
||||
}
|
||||
|
||||
/* 00002710-000027AC .text __dt__12daMozo_HIO_cFv */
|
||||
daMozo_HIO_c::~daMozo_HIO_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static actor_method_class l_daMozo_Method = {
|
||||
(process_method_func)daMozo_Create,
|
||||
(process_method_func)daMozo_Delete,
|
||||
|
||||
@@ -129,7 +129,7 @@ s32 daNh_c::create() {
|
||||
|
||||
fopAcM_SetupActor(this, daNh_c);
|
||||
|
||||
if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)&checkCreateHeap, a_heap_size_tbl)) {
|
||||
if (!fopAcM_entrySolidHeap(this, checkCreateHeap, a_heap_size_tbl)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
@@ -499,9 +499,6 @@ s32 daNh_Create(fopAc_ac_c* i_this) {
|
||||
return ((daNh_c*)i_this)->create();
|
||||
}
|
||||
|
||||
/* 800FAEAC-800FAEF4 .text __dt__10daNh_HIO_cFv */
|
||||
daNh_HIO_c::~daNh_HIO_c() {}
|
||||
|
||||
actor_method_class l_daNh_Method = {
|
||||
(process_method_func)daNh_Create,
|
||||
(process_method_func)daNh_Delete,
|
||||
|
||||
@@ -289,7 +289,7 @@ s32 daNpc_kam_c::create() {
|
||||
s32 phase_state = dComIfG_resLoad(&mPhs, "Kamome");
|
||||
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (!fopAcM_entrySolidHeap(this, &checkCreateHeap, l_heap_size)) {
|
||||
if (!fopAcM_entrySolidHeap(this, checkCreateHeap, l_heap_size)) {
|
||||
mpMorf = NULL;
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_AjavW.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_AjavW.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -12,22 +13,6 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class daObjAjavW_c : public fopAc_ac_c {
|
||||
public:
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ mDoExt_btkAnm mBtkAnm;
|
||||
/* 0x2B0 */ dBgW * mpBgW;
|
||||
};
|
||||
|
||||
namespace {
|
||||
static const char l_arcname[] = "AjavW";
|
||||
};
|
||||
@@ -66,7 +51,7 @@ s32 daObjAjavW_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, l_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x8c0) == 1) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x8c0) == 1) {
|
||||
if (dComIfG_Bgsp()->Regist(mpBgW, this)) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_Vteng.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_Vteng.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -12,25 +13,6 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class daObjVteng_c : public fopAc_ac_c {
|
||||
public:
|
||||
void init_mtx();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
bool jokai_demo();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ mDoExt_McaMorf* mpMorf;
|
||||
/* 0x2A0 */ dBgW * mpBgW;
|
||||
/* 0x2A4 */ Mtx mtx;
|
||||
};
|
||||
|
||||
namespace {
|
||||
static const char l_arcname[] = "Vteng";
|
||||
};
|
||||
@@ -93,7 +75,7 @@ s32 daObjVteng_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, l_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x72a0)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x72a0)) {
|
||||
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
|
||||
init_mtx();
|
||||
if (dComIfG_Bgsp()->Regist(mpBgW, this)) {
|
||||
|
||||
@@ -71,7 +71,7 @@ s32 daObjYgush00_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, l_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x740) == 1) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x740) == 1) {
|
||||
mpModel->setBaseScale(mScale);
|
||||
mDoMtx_stack_c::transS(current.pos);
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
|
||||
@@ -67,7 +67,7 @@ s32 daObjAdnno_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, "Adnno");
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x9C00) == 0) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x9C00) == 0) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
CreateInit();
|
||||
|
||||
@@ -68,7 +68,7 @@ namespace daObjAkabe {
|
||||
init_mtx();
|
||||
|
||||
static const u32 heap_size[4] = { 0x200, 0x200, 0x200, 0x3E0, };
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, heap_size[mType])) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, heap_size[mType])) {
|
||||
dComIfG_Bgsp()->Regist(mpBgW, this);
|
||||
mpBgW->SetCrrFunc(NULL);
|
||||
mpBgW->SetPriority(1);
|
||||
|
||||
@@ -66,7 +66,7 @@ s32 daObj_Bscurtain_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, M_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x10000)) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x10000)) {
|
||||
ret = CreateInit();
|
||||
} else {
|
||||
ret = cPhs_ERROR_e;
|
||||
|
||||
@@ -51,7 +51,7 @@ s32 daObjCafelmp_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, "Cafelmp");
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x680) == 0) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x680) == 0) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
CreateInit();
|
||||
|
||||
@@ -56,7 +56,7 @@ s32 daObjDmgroom_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, "Dmgroom");
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x1460) == 0) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x1460) == 0) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
CreateInit();
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_dragonhead.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_dragonhead.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -13,29 +14,6 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class daObjDragonhead_c : public fopAc_ac_c {
|
||||
public:
|
||||
inline s32 _create();
|
||||
inline bool _execute();
|
||||
inline bool _draw();
|
||||
inline bool _delete();
|
||||
BOOL CreateHeap();
|
||||
void CreateInit();
|
||||
void set_mtx();
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ dCcD_Stts mStts;
|
||||
/* 0x2D8 */ dCcD_Sph mSph;
|
||||
/* 0x404 */ u8 mAlpha;
|
||||
/* 0x405 */ bool mSwitchOn;
|
||||
/* 0x408 */ dBgW * mpBgW;
|
||||
/* 0x40C */ u8 field_0x40c;
|
||||
/* 0x410 */ cXyz mSphCenter;
|
||||
/* 0x41C */ Mtx mtx;
|
||||
};
|
||||
|
||||
static dCcD_SrcSph sph_check_src = {
|
||||
// dCcD_SrcGObjInf
|
||||
{
|
||||
@@ -138,7 +116,7 @@ s32 daObjDragonhead_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, "Qdghd");
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x10500) == 0) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x10500) == 0) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
CreateInit();
|
||||
@@ -148,16 +126,16 @@ s32 daObjDragonhead_c::_create() {
|
||||
return ret;
|
||||
}
|
||||
|
||||
bool daObjDragonhead_c::_delete() {
|
||||
BOOL daObjDragonhead_c::_delete() {
|
||||
if (heap != NULL && field_0x40c == 1)
|
||||
dComIfG_Bgsp()->Release(mpBgW);
|
||||
|
||||
mDoAud_seDeleteObject(&mSphCenter);
|
||||
dComIfG_resDelete(&mPhs, "Qdghd");
|
||||
return true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool daObjDragonhead_c::_execute() {
|
||||
BOOL daObjDragonhead_c::_execute() {
|
||||
dComIfG_Ccsp()->Set(&mSph);
|
||||
if (!mSwitchOn) {
|
||||
mDoAud_seStart(JA_SE_OBJ_ICEBERG_BREATH, &mSphCenter, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
@@ -200,10 +178,10 @@ bool daObjDragonhead_c::_execute() {
|
||||
}
|
||||
|
||||
set_mtx();
|
||||
return true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool daObjDragonhead_c::_draw() {
|
||||
BOOL daObjDragonhead_c::_draw() {
|
||||
g_env_light.settingTevStruct(TEV_TYPE_BG0, ¤t.pos, &mTevStr);
|
||||
g_env_light.setLightTevColorType(mpModel, &mTevStr);
|
||||
dComIfGd_setListBG();
|
||||
@@ -215,7 +193,7 @@ bool daObjDragonhead_c::_draw() {
|
||||
}
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
return true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 000003CC-000004FC .text daObjDragonhead_Create__FPv */
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_eayogn.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_eayogn.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -12,34 +13,16 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class daObjEayogn_c : public fopAc_ac_c {
|
||||
public:
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
static bool solidHeapCB(fopAc_ac_c *i_this);
|
||||
void init_mtx();
|
||||
BOOL check_ev_bit() const;
|
||||
static const char M_arcname[7];
|
||||
|
||||
public:
|
||||
/* 0x290 */ J3DModel * mpModel;
|
||||
/* 0x294 */ request_of_phase_process_class mPhs;
|
||||
/* 0x2A0 */ dBgW * mpBgW;
|
||||
};
|
||||
|
||||
const char daObjEayogn_c::M_arcname[7] = "Eayogn";
|
||||
|
||||
/* 00000078-00000098 .text solidHeapCB__13daObjEayogn_cFP10fopAc_ac_c */
|
||||
bool daObjEayogn_c::solidHeapCB(fopAc_ac_c* i_this) {
|
||||
BOOL daObjEayogn_c::solidHeapCB(fopAc_ac_c* i_this) {
|
||||
return ((daObjEayogn_c*)i_this)->create_heap();
|
||||
}
|
||||
|
||||
/* 00000098-00000198 .text create_heap__13daObjEayogn_cFv */
|
||||
bool daObjEayogn_c::create_heap() {
|
||||
bool ret = false;
|
||||
BOOL daObjEayogn_c::create_heap() {
|
||||
BOOL ret = FALSE;
|
||||
|
||||
J3DModelData* mdl_data = static_cast<J3DModelData*>(dComIfG_getObjectRes(M_arcname, 0x04));
|
||||
JUT_ASSERT(0x5c, mdl_data != 0);
|
||||
@@ -49,7 +32,7 @@ bool daObjEayogn_c::create_heap() {
|
||||
if (mpModel != NULL) {
|
||||
mpBgW = dBgW_NewSet((cBgD_t*)dComIfG_getObjectRes(M_arcname, 0x07), cBgW::MOVE_BG_e, &mpModel->getBaseTRMtx());
|
||||
if (mpBgW != NULL)
|
||||
ret = true;
|
||||
ret = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,7 +50,7 @@ s32 daObjEayogn_c::_create() {
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
ret = cPhs_ERROR_e;
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x0)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x0)) {
|
||||
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
|
||||
init_mtx();
|
||||
dComIfG_Bgsp()->Regist(mpBgW, this);
|
||||
|
||||
@@ -57,7 +57,7 @@ s32 daObjGbed_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, l_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x13e0)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x13e0)) {
|
||||
if (dComIfG_Bgsp()->Regist(mpBgW, this)) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
|
||||
@@ -67,7 +67,7 @@ s32 daObjGong::Act_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, M_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0x0)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0x0)) {
|
||||
fopAcM_SetMtx(this, mpMorf->getModel()->getBaseTRMtx());
|
||||
init_mtx();
|
||||
fopAcM_setCullSizeBox(this, -100.0f, -1.0f, -50.0f, 100.0f, 230.0f, 50.0f);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_hfuck1.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_hfuck1.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -13,26 +14,6 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class daObjHfuck1_c : public fopAc_ac_c {
|
||||
public:
|
||||
void init_mtx();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
bool _delete();
|
||||
bool create_heap();
|
||||
bool checkCollision();
|
||||
static BOOL solidHeapCB(fopAc_ac_c *i_this);
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ dBgW * mpBgW;
|
||||
/* 0x2A0 */ dCcD_Stts mStts;
|
||||
/* 0x408 */ dCcD_Sph mSph;
|
||||
/* 0x40C */ fopAc_ac_c * mpHookshotActor;
|
||||
};
|
||||
|
||||
namespace {
|
||||
static const char l_arcname[] = "Hfuck1";
|
||||
|
||||
@@ -122,7 +103,7 @@ s32 daObjHfuck1_c::_create() {
|
||||
s32 ret = dComIfG_resLoad(&mPhs, l_arcname);
|
||||
|
||||
if (ret == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, 0xc20)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, 0xc20)) {
|
||||
if (dComIfG_Bgsp()->Regist(mpBgW, this)) {
|
||||
ret = cPhs_ERROR_e;
|
||||
} else {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_hole.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_hole.h"
|
||||
#include "d/d_bg_s_lin_chk.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
@@ -23,86 +24,22 @@ static f32 dummy2[3] = {1.0f, 1.0f, 1.0f};
|
||||
static u8 dummy3[4] = {0x02, 0x00, 0x02, 0x01};
|
||||
static f64 dummy4[2] = {3.0, 0.5};
|
||||
|
||||
|
||||
class daObj_Hole_HIO_c {
|
||||
public:
|
||||
daObj_Hole_HIO_c();
|
||||
virtual ~daObj_Hole_HIO_c() {}
|
||||
|
||||
/* 0x0004 */ s8 m0004;
|
||||
/* 0x0005 */ u8 m0005;
|
||||
/* 0x0008 */ float m0008;
|
||||
/* 0x000C */ s16 m000C;
|
||||
/* 0x0010 */ float m0010;
|
||||
};
|
||||
|
||||
static daObj_Hole_HIO_c l_HIO;
|
||||
|
||||
class daObj_Hole_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum Proc_e {
|
||||
PROC_INIT = 0,
|
||||
PROC_EXEC = 1
|
||||
};
|
||||
|
||||
enum Mode {
|
||||
MODE_WAIT = 0,
|
||||
MODE_EVENT = 1,
|
||||
MODE_NULL,
|
||||
};
|
||||
|
||||
void modeProcInit(int newMode) { modeProc(PROC_INIT, newMode); }
|
||||
|
||||
void setMtx();
|
||||
void getPosAndAngle();
|
||||
|
||||
void modeWaitInit();
|
||||
void modeWait();
|
||||
void modeEventInit();
|
||||
void modeEvent();
|
||||
void modeProc(Proc_e, int);
|
||||
|
||||
s32 _execute();
|
||||
|
||||
void debugDraw();
|
||||
s32 _draw();
|
||||
|
||||
void createInit();
|
||||
s32 _createHeap();
|
||||
void getArg();
|
||||
|
||||
s32 _create();
|
||||
s32 _delete();
|
||||
|
||||
static const char m_arc_name[];
|
||||
|
||||
/* 0x0290 */ s32 mMode;
|
||||
/* 0x0294 */ u8 mHasModel;
|
||||
/* 0x0295 */ u8 mExitIdx;
|
||||
/* 0x0296 */ u16 mScaleLocal;
|
||||
/* 0x0298 */ request_of_phase_process_class mPhs;
|
||||
|
||||
/* 0x02A0 */ J3DModel* mpMdl;
|
||||
|
||||
/* 0x02A4 */ dBgS_ObjLinChk mLinChk;
|
||||
/* 0x0310 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x04D4 */ dBgS_AcchCir mAcchCir;
|
||||
};
|
||||
|
||||
const char daObj_Hole_c::m_arc_name[] = "Aana";
|
||||
|
||||
/* 000000EC-0000010C .text createHeap_CB__FP10fopAc_ac_c */
|
||||
static s32 createHeap_CB(fopAc_ac_c* i_actor) {
|
||||
static BOOL createHeap_CB(fopAc_ac_c* i_actor) {
|
||||
return static_cast<daObj_Hole_c*>(i_actor)->_createHeap();
|
||||
}
|
||||
|
||||
/* 0000010C-00000148 .text __ct__16daObj_Hole_HIO_cFv */
|
||||
daObj_Hole_HIO_c::daObj_Hole_HIO_c() {
|
||||
m0004 = -1;
|
||||
m0005 = 0;
|
||||
m0008 = 65.0f;
|
||||
m000C = 0;
|
||||
m0010 = 2.0f;
|
||||
m04 = -1;
|
||||
m05 = 0;
|
||||
m08 = 65.0f;
|
||||
m0C = 0;
|
||||
m10 = 2.0f;
|
||||
}
|
||||
|
||||
/* 00000148-000002BC .text setMtx__12daObj_Hole_cFv */
|
||||
@@ -111,23 +48,23 @@ void daObj_Hole_c::setMtx() {
|
||||
adjustPos.x = current.pos.x;
|
||||
adjustPos.y = current.pos.y;
|
||||
adjustPos.z = current.pos.z;
|
||||
adjustPos.y += l_HIO.m0010;
|
||||
adjustPos.y += l_HIO.m10;
|
||||
|
||||
if (mMode != MODE_EVENT) {
|
||||
shape_angle.y = fopCamM_GetAngleY(dComIfGp_getCamera(0)) + 0x8000;
|
||||
}
|
||||
|
||||
if (mHasModel == 0xFF) {
|
||||
float scale = l_HIO.m0008 * mScale.x;
|
||||
float scale = l_HIO.m08 * mScale.x;
|
||||
|
||||
if (l_HIO.m000C != 0) {
|
||||
scale += l_HIO.m000C * 10;
|
||||
if (l_HIO.m0C != 0) {
|
||||
scale += l_HIO.m0C * 10;
|
||||
}
|
||||
else {
|
||||
scale += mScaleLocal * 10;
|
||||
}
|
||||
|
||||
scale /= l_HIO.m0008;
|
||||
scale /= l_HIO.m08;
|
||||
|
||||
cXyz scaleVec;
|
||||
scaleVec.setall(scale);
|
||||
@@ -167,10 +104,10 @@ void daObj_Hole_c::modeWaitInit() {
|
||||
|
||||
/* 00000410-000004F0 .text modeWait__12daObj_Hole_cFv */
|
||||
void daObj_Hole_c::modeWait() {
|
||||
float scale = l_HIO.m0008 * mScale.x;
|
||||
float scale = l_HIO.m08 * mScale.x;
|
||||
|
||||
if (l_HIO.m000C != 0) {
|
||||
scale += l_HIO.m000C * 10;
|
||||
if (l_HIO.m0C != 0) {
|
||||
scale += l_HIO.m0C * 10;
|
||||
}
|
||||
else {
|
||||
scale += mScaleLocal * 10;
|
||||
@@ -241,21 +178,21 @@ void daObj_Hole_c::modeProc(daObj_Hole_c::Proc_e proc, int newMode) {
|
||||
}
|
||||
|
||||
/* 000006C0-00000700 .text _execute__12daObj_Hole_cFv */
|
||||
s32 daObj_Hole_c::_execute() {
|
||||
bool daObj_Hole_c::_execute() {
|
||||
modeProc(PROC_EXEC, MODE_NULL);
|
||||
setMtx();
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 00000700-00000738 .text debugDraw__12daObj_Hole_cFv */
|
||||
void daObj_Hole_c::debugDraw() {
|
||||
cXyz pos = current.pos;
|
||||
pos.y += l_HIO.m0010;
|
||||
pos.y += l_HIO.m10;
|
||||
}
|
||||
|
||||
/* 00000738-000007BC .text _draw__12daObj_Hole_cFv */
|
||||
s32 daObj_Hole_c::_draw() {
|
||||
if (l_HIO.m0005 != 0) {
|
||||
bool daObj_Hole_c::_draw() {
|
||||
if (l_HIO.m05 != 0) {
|
||||
debugDraw();
|
||||
}
|
||||
|
||||
@@ -266,7 +203,7 @@ s32 daObj_Hole_c::_draw() {
|
||||
mDoExt_modelUpdateDL(mpMdl);
|
||||
}
|
||||
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 000007BC-00000864 .text createInit__12daObj_Hole_cFv */
|
||||
@@ -286,7 +223,7 @@ void daObj_Hole_c::createInit() {
|
||||
}
|
||||
|
||||
/* 00000864-00000928 .text _createHeap__12daObj_Hole_cFv */
|
||||
s32 daObj_Hole_c::_createHeap() {
|
||||
BOOL daObj_Hole_c::_createHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(m_arc_name, 3);
|
||||
|
||||
JUT_ASSERT(0x13D, modelData != 0);
|
||||
@@ -294,10 +231,10 @@ s32 daObj_Hole_c::_createHeap() {
|
||||
mpMdl = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000022);
|
||||
|
||||
if (mpMdl == NULL) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -326,7 +263,7 @@ s32 daObj_Hole_c::_create() {
|
||||
getArg();
|
||||
|
||||
if (mHasModel == 0xFF) {
|
||||
u32 heapResult = fopAcM_entrySolidHeap(this, (heapCallbackFunc)createHeap_CB, 0x1000);
|
||||
u32 heapResult = fopAcM_entrySolidHeap(this, createHeap_CB, 0x1000);
|
||||
|
||||
if (heapResult == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
@@ -340,9 +277,9 @@ s32 daObj_Hole_c::_create() {
|
||||
}
|
||||
|
||||
/* 0000122C-0000125C .text _delete__12daObj_Hole_cFv */
|
||||
s32 daObj_Hole_c::_delete() {
|
||||
bool daObj_Hole_c::_delete() {
|
||||
dComIfG_resDelete(&mPhs, m_arc_name);
|
||||
return 1;
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 0000125C-0000127C .text daObj_HoleCreate__FPv */
|
||||
@@ -351,22 +288,22 @@ static s32 daObj_HoleCreate(void* i_actor) {
|
||||
}
|
||||
|
||||
/* 0000127C-000012A0 .text daObj_HoleDelete__FPv */
|
||||
static u8 daObj_HoleDelete(void* i_actor) {
|
||||
static BOOL daObj_HoleDelete(void* i_actor) {
|
||||
return static_cast<daObj_Hole_c*>(i_actor)->_delete();
|
||||
}
|
||||
|
||||
/* 000012A0-000012C4 .text daObj_HoleExecute__FPv */
|
||||
static u8 daObj_HoleExecute(void* i_actor) {
|
||||
static BOOL daObj_HoleExecute(void* i_actor) {
|
||||
return static_cast<daObj_Hole_c*>(i_actor)->_execute();
|
||||
}
|
||||
|
||||
/* 000012C4-000012E8 .text daObj_HoleDraw__FPv */
|
||||
static u8 daObj_HoleDraw(void* i_actor) {
|
||||
static BOOL daObj_HoleDraw(void* i_actor) {
|
||||
return static_cast<daObj_Hole_c*>(i_actor)->_draw();
|
||||
}
|
||||
|
||||
/* 000012E8-000012F0 .text daObj_HoleIsDelete__FPv */
|
||||
static u8 daObj_HoleIsDelete(void* i_actor) {
|
||||
static BOOL daObj_HoleIsDelete(void* i_actor) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_obj_paper.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_obj_paper.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
@@ -27,12 +28,6 @@ static f64 dummy4[2] = {3.0f, 0.5f};
|
||||
|
||||
namespace daObjPaper {
|
||||
namespace {
|
||||
enum Type_e {
|
||||
Opaper_e,
|
||||
Ppos_e,
|
||||
Piwa_e,
|
||||
};
|
||||
|
||||
struct Attr_c {
|
||||
/* 0x00 */ char* mResName;
|
||||
/* 0x04 */ s32 mHeapSize;
|
||||
@@ -59,7 +54,7 @@ namespace daObjPaper {
|
||||
inline const Attr_c & attr(Type_e type) { return L_attr[type]; }
|
||||
}
|
||||
|
||||
static const dCcD_SrcCyl M_cyl_src = {
|
||||
const dCcD_SrcCyl Act_c::M_cyl_src = {
|
||||
// dCcD_SrcGObjInf
|
||||
{
|
||||
/* Flags */ 0,
|
||||
@@ -89,64 +84,6 @@ namespace daObjPaper {
|
||||
},
|
||||
};
|
||||
|
||||
enum Act_Mode_e {
|
||||
ActMode_WAIT_e,
|
||||
ActMode_TALKBEGIN_e,
|
||||
ActMode_GETMSG_e,
|
||||
ActMode_TALKWAIT_e,
|
||||
};
|
||||
|
||||
class Act_c : public fopAc_ac_c {
|
||||
public:
|
||||
static int solidHeapCB(fopAc_ac_c*);
|
||||
bool create_heap();
|
||||
s32 _create();
|
||||
bool _delete();
|
||||
|
||||
void mode_wait_init();
|
||||
void mode_wait();
|
||||
|
||||
void mode_talk0_init();
|
||||
void mode_talk0();
|
||||
|
||||
void mode_talk1_init();
|
||||
void mode_talk1();
|
||||
|
||||
void mode_talk2_init();
|
||||
void mode_talk2();
|
||||
|
||||
void set_mtx();
|
||||
void init_mtx();
|
||||
|
||||
void damage_cc_proc();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel* mpModel;
|
||||
|
||||
/* 0x29C */ dCcD_Cyl mCylinderCol;
|
||||
/* 0x3CC */ dCcD_Stts mColStatus;
|
||||
/* 0x408 */ bool mbHasCc;
|
||||
|
||||
/* 0x40C */ int mMode;
|
||||
/* 0x410 */ u32 mMsgId;
|
||||
/* 0x414 */ msg_class* mpMsg;
|
||||
/* 0x418 */ Type_e mType;
|
||||
|
||||
enum Prm_e {
|
||||
PRM_MSG_NO_W = 0x10,
|
||||
PRM_MSG_NO_S = 0x00,
|
||||
|
||||
PRM_TYPE_W = 0x04,
|
||||
PRM_TYPE_S = 0x10,
|
||||
};
|
||||
|
||||
u32 prm_get_msgNo() const { return daObj::PrmAbstract<Prm_e>(this, PRM_MSG_NO_W, PRM_MSG_NO_S); }
|
||||
Type_e prm_get_type() const { return (Type_e)daObj::PrmAbstract<Prm_e>(this, PRM_TYPE_W, PRM_TYPE_S); }
|
||||
};
|
||||
|
||||
/* 00000078-0000009C .text solidHeapCB__Q210daObjPaper5Act_cFP10fopAc_ac_c */
|
||||
int Act_c::solidHeapCB(fopAc_ac_c* i_this) {
|
||||
return static_cast<Act_c*>(i_this)->create_heap();
|
||||
@@ -177,7 +114,7 @@ namespace daObjPaper {
|
||||
s32 result = dComIfG_resLoad(&mPhs, attr(mType).mResName);
|
||||
|
||||
if (result == cPhs_COMPLEATE_e) {
|
||||
if (fopAcM_entrySolidHeap(this, (heapCallbackFunc)solidHeapCB, attr(mType).mHeapSize)) {
|
||||
if (fopAcM_entrySolidHeap(this, solidHeapCB, attr(mType).mHeapSize)) {
|
||||
mEyePos.y += attr(mType).mEyeOffset;
|
||||
|
||||
mAttentionInfo.mPosition.y += attr(mType).mAttentionOffset;
|
||||
|
||||
@@ -61,7 +61,7 @@ static cPhs__Step daObjPbka_Create(void* i_this) {
|
||||
|
||||
cPhsStep = dComIfG_resLoad(&a_this->mPhase, "Pbka");
|
||||
if (cPhsStep == cPhs_COMPLEATE_e) {
|
||||
if ((fopAcM_entrySolidHeap(a_this, CheckCreateHeap, 0x680) & 0xff) == 0) {
|
||||
if (fopAcM_entrySolidHeap(a_this, CheckCreateHeap, 0x680) == 0) {
|
||||
cPhsStep = cPhs_ERROR_e;
|
||||
} else {
|
||||
a_this->CreateInit();
|
||||
|
||||
@@ -102,7 +102,7 @@ static u8 dummy3[] = {
|
||||
0
|
||||
};
|
||||
|
||||
static int createHeap_CB(fopAc_ac_c* i_this) {
|
||||
static BOOL createHeap_CB(fopAc_ac_c* i_this) {
|
||||
return static_cast<daObjTpost_c*>(i_this)->_createHeap();
|
||||
}
|
||||
|
||||
@@ -113,12 +113,12 @@ BOOL daObjTpost_c::_createHeap() {
|
||||
mMorf = new mDoExt_McaMorf(modelData, 0, 0, 0, -1, 1.0f, 0, -1, 1, 0, 0x80000, 0x11000022);
|
||||
|
||||
if(mMorf == 0 || mMorf->getModel() == 0) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
mMorf->getModel()->setUserArea((u32)this);
|
||||
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -947,7 +947,7 @@ int daObjTpost_c::_create() {
|
||||
getArg();
|
||||
int step = dComIfG_resLoad(&mPhs, m_arc_name);
|
||||
if(step == cPhs_COMPLEATE_e) {
|
||||
if(fopAcM_entrySolidHeap(this, &createHeap_CB, 0x7E0) == 0) {
|
||||
if(fopAcM_entrySolidHeap(this, createHeap_CB, 0x7E0) == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
|
||||
@@ -4507,7 +4507,7 @@ J3DModelData* daPy_lk_c::initModel(J3DModel** i_model, int i_fileIndex, u32 i_di
|
||||
|
||||
/* 80124C98-80125CC8 .text playerInit__9daPy_lk_cFv */
|
||||
void daPy_lk_c::playerInit() {
|
||||
if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)&daPy_createHeap, 0xB0000)) {
|
||||
if (!fopAcM_entrySolidHeap(this, daPy_createHeap, 0xB0000)) {
|
||||
JUT_ASSERT(0x53B6, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_scene_change.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_scene_change.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
@@ -11,23 +12,8 @@
|
||||
#include "d/d_procname.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class daSceneChgHIO_c {
|
||||
public:
|
||||
daSceneChgHIO_c();
|
||||
virtual ~daSceneChgHIO_c();
|
||||
|
||||
s8 m0004;
|
||||
s8 m0005;
|
||||
f32 m0008;
|
||||
};
|
||||
|
||||
static daSceneChgHIO_c l_HIO;
|
||||
|
||||
class d_a_scene_change_c : public fopAc_ac_c {
|
||||
public:
|
||||
Mtx mTransformMtx;
|
||||
};
|
||||
|
||||
/* 000000EC-00000118 .text __ct__15daSceneChgHIO_cFv */
|
||||
daSceneChgHIO_c::daSceneChgHIO_c() {
|
||||
m0004 = 0xFF;
|
||||
@@ -68,11 +54,6 @@ BOOL daSceneChgIsDelete(void* i_this) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 000001C8-00000218 .text __dt__15daSceneChgHIO_cFv */
|
||||
daSceneChgHIO_c::~daSceneChgHIO_c() {
|
||||
m0004 = 0xFF;
|
||||
}
|
||||
|
||||
static actor_method_class daSceneChgMethodTable = {
|
||||
(process_method_func)daSceneChgCreate,
|
||||
(process_method_func)daSceneChgDelete,
|
||||
|
||||
@@ -347,7 +347,7 @@ void daSea_packet_c::execute(cXyz&) {
|
||||
}
|
||||
|
||||
/* 8015C75C-8015D80C .text draw__14daSea_packet_cFv */
|
||||
BOOL daSea_packet_c::draw() {
|
||||
void daSea_packet_c::draw() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -386,7 +386,7 @@ BOOL CheckCreateHeap(fopAc_ac_c* i_this) {
|
||||
/* 8015D924-8015D99C .text daSea_Create__FP10fopAc_ac_c */
|
||||
s32 daSea_Create(fopAc_ac_c* i_this) {
|
||||
fopAcM_SetupActor(i_this, sea_class);
|
||||
if (!fopAcM_entrySolidHeap(i_this, (heapCallbackFunc)CheckCreateHeap, 0xA000))
|
||||
if (!fopAcM_entrySolidHeap(i_this, CheckCreateHeap, 0xA000))
|
||||
return cPhs_ERROR_e;
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
@@ -196,17 +196,17 @@ int daShopItem_c::_create() {
|
||||
else if(result == cPhs_COMPLEATE_e && result2 == cPhs_COMPLEATE_e) {
|
||||
u8 type = fopAcM_GetParamBit(fopAcM_GetParam(this), 8, 4);
|
||||
if(type == 2 || (type == 0 && mModelType[m_itemNo] == 0x02)) {
|
||||
if(fopAcM_entrySolidHeap(this, &CheckItemCreateHeap, dItem_data::getHeapSize(m_itemNo)) == 0) {
|
||||
if(fopAcM_entrySolidHeap(this, CheckItemCreateHeap, dItem_data::getHeapSize(m_itemNo)) == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
else if(type == 1 || (type == 0 && mModelType[m_itemNo] == 0x01)) {
|
||||
if(fopAcM_entrySolidHeap(this, &CheckFieldItemCreateHeap, dItem_data::getFieldHeapSize(m_itemNo)) == 0) {
|
||||
if(fopAcM_entrySolidHeap(this, CheckFieldItemCreateHeap, dItem_data::getFieldHeapSize(m_itemNo)) == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if(fopAcM_entrySolidHeap(this, &CheckItemCreateHeap, dItem_data::getHeapSize(m_itemNo)) == 0) {
|
||||
if(fopAcM_entrySolidHeap(this, CheckItemCreateHeap, dItem_data::getHeapSize(m_itemNo)) == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,7 +102,7 @@ s32 daSwhit0_c::getSwNo2() {
|
||||
}
|
||||
|
||||
/* 000000C4-00000230 .text CreateHeap__10daSwhit0_cFv */
|
||||
s32 daSwhit0_c::CreateHeap() {
|
||||
BOOL daSwhit0_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("Always", 0x35);
|
||||
JUT_ASSERT(0xD5, modelData != 0);
|
||||
|
||||
@@ -184,7 +184,7 @@ s32 daSwhit0_c::CreateInit() {
|
||||
}
|
||||
|
||||
/* 000004E8-00000508 .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
static s32 CheckCreateHeap(fopAc_ac_c* i_actr) {
|
||||
static BOOL CheckCreateHeap(fopAc_ac_c* i_actr) {
|
||||
return static_cast<daSwhit0_c*>(i_actr)->CreateHeap();
|
||||
}
|
||||
|
||||
@@ -195,7 +195,7 @@ s32 daSwhit0_c::create() {
|
||||
shape_angle.z = 0;
|
||||
current.angle.z = 0;
|
||||
|
||||
if ((fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x34A0) & 0xFF) == 0) {
|
||||
if (fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x34A0) == 0) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_switem.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_switem.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "d/d_procname.h"
|
||||
@@ -12,30 +13,6 @@
|
||||
#include "d/d_item.h"
|
||||
#include "d/actor/d_a_item.h"
|
||||
|
||||
class daSwItem_c : public fopAc_ac_c {
|
||||
public:
|
||||
bool _delete();
|
||||
BOOL CreateInit();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
BOOL isRupeeInAllCreateTable(int);
|
||||
bool _draw();
|
||||
|
||||
public:
|
||||
/* 0x290 */ u8 m290[0x29C - 0x290];
|
||||
/* 0x29C */ dCcD_Stts mStts;
|
||||
/* 0x2D8 */ dCcD_Cyl mCyl;
|
||||
/* 0x408 */ u8 mAtTypeTrigger;
|
||||
/* 0x409 */ bool mSpawnedItem;
|
||||
/* 0x40A */ u8 field_40A[0x40C - 0x40A];
|
||||
};
|
||||
|
||||
namespace daSwItem_prm {
|
||||
inline u32 getAtType(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x00) & 0xFF; }
|
||||
inline u32 getItemTbl(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x08) & 0x3F; }
|
||||
inline u32 getItemBitNo(daSwItem_c* item) { return (fopAcM_GetParam(item) >> 0x0E) & 0x7F; }
|
||||
}
|
||||
|
||||
static dCcD_SrcCyl l_cyl_src = {
|
||||
// dCcD_SrcGObjInf
|
||||
{
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_a_swtact.cpp
|
||||
//
|
||||
|
||||
#include "d/actor/d_a_swtact.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
@@ -12,41 +13,6 @@
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
|
||||
class daSwTact_c : public fopAc_ac_c {
|
||||
public:
|
||||
bool _delete();
|
||||
BOOL CreateHeap();
|
||||
void CreateInit();
|
||||
void set_mtx();
|
||||
s32 getAnswer();
|
||||
s32 _create();
|
||||
bool _execute();
|
||||
bool _draw();
|
||||
|
||||
inline f32 getR() { return mRadius * mScale.x; }
|
||||
|
||||
static const char * m_arcname;
|
||||
static const f32 mDefaultR;
|
||||
static const f32 mDefaultRwM;
|
||||
static const u32 m_heapsize;
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * model;
|
||||
/* 0x29C */ f32 mRadius;
|
||||
/* 0x2A0 */ u32 mSwitchNo;
|
||||
/* 0x2A4 */ u8 mAnswer;
|
||||
/* 0x2A5 */ bool mTrigger;
|
||||
/* 0x2A6 */ u8 mPlayerStatus;
|
||||
/* 0x2A7 */ u8 pad;
|
||||
};
|
||||
|
||||
namespace daSwTact_prm {
|
||||
inline u32 getSwitchNo(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 0) & 0xFF; }
|
||||
inline u32 getAnswer(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 8) & 0xFF; }
|
||||
inline u32 getModel(daSwTact_c * i_this) { return (fopAcM_GetParam(i_this) >> 16) & 0x0F; }
|
||||
}
|
||||
|
||||
const char * daSwTact_c::m_arcname = "Itact";
|
||||
const f32 daSwTact_c::mDefaultR = 50.0f;
|
||||
const f32 daSwTact_c::mDefaultRwM = 100.0f;
|
||||
@@ -59,7 +25,7 @@ bool daSwTact_c::_delete() {
|
||||
}
|
||||
|
||||
/* 000000AC-000000CC .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
s32 CheckCreateHeap(fopAc_ac_c* i_ac) {
|
||||
BOOL CheckCreateHeap(fopAc_ac_c* i_ac) {
|
||||
return ((daSwTact_c *)i_ac)->CreateHeap();
|
||||
}
|
||||
|
||||
@@ -111,7 +77,7 @@ s32 daSwTact_c::_create() {
|
||||
result = dComIfG_resLoad(&this->mPhs, m_arcname);
|
||||
|
||||
if (result == cPhs_COMPLEATE_e) {
|
||||
if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x3000)) {
|
||||
if (!fopAcM_entrySolidHeap(this, CheckCreateHeap, 0x3000)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
|
||||
+59
-79
@@ -2,53 +2,33 @@
|
||||
// Generated by dtk
|
||||
// Translation Unit: d_a_tag_msg.cpp
|
||||
//
|
||||
#include "d/actor/d_a_tag_msg.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "d/actor/d_a_player_main.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
struct daTag_Msg_c : public fopAc_ac_c {
|
||||
public:
|
||||
u32 getEventNo();
|
||||
u32 getSwbit();
|
||||
u32 getSwbit2();
|
||||
u32 getType2();
|
||||
const char* myDemoName();
|
||||
u16 getMessage();
|
||||
u16 getEventFlag();
|
||||
s32 arrivalTerms();
|
||||
int rangeCheck();
|
||||
int otherCheck();
|
||||
|
||||
inline s32 execute();
|
||||
inline s32 create();
|
||||
public:
|
||||
/* 0x00 */ u8 mAction;
|
||||
/* 0x01 */ u8 field_0x291;
|
||||
/* 0x02 */ u8 field_0x292;
|
||||
/* 0x03 */ u8 field_0x293;
|
||||
}; // Size = 0x294
|
||||
|
||||
u8 bss_3569;
|
||||
u8 bss_1036;
|
||||
u8 bss_1034;
|
||||
u8 bss_1032;
|
||||
u8 bss_1031;
|
||||
u8 bss_1026;
|
||||
u8 bss_1024;
|
||||
u8 bss_1022;
|
||||
u8 bss_1021;
|
||||
u8 bss_984;
|
||||
u8 bss_982;
|
||||
u8 bss_980;
|
||||
u8 bss_979;
|
||||
u8 bss_941;
|
||||
u8 bss_939;
|
||||
u8 bss_937;
|
||||
u32 bss_936[15];
|
||||
u32 l_msgId;
|
||||
msg_class* l_msg;
|
||||
u8 msg_mode;
|
||||
static Vec bss_3569;
|
||||
// Not sure what these are, but they have size 1, and alignment 1 in the debug maps, but alignment 4 in the non-debug maps.
|
||||
static u8 bss_1036 __attribute__((aligned(4)));
|
||||
static u8 bss_1034 __attribute__((aligned(4)));
|
||||
static u8 bss_1032 __attribute__((aligned(4)));
|
||||
static u8 bss_1031 __attribute__((aligned(4)));
|
||||
static u8 bss_1026 __attribute__((aligned(4)));
|
||||
static u8 bss_1024 __attribute__((aligned(4)));
|
||||
static u8 bss_1022 __attribute__((aligned(4)));
|
||||
static u8 bss_1021 __attribute__((aligned(4)));
|
||||
static u8 bss_984 __attribute__((aligned(4)));;
|
||||
static u8 bss_982 __attribute__((aligned(4)));;
|
||||
static u8 bss_980 __attribute__((aligned(4)));;
|
||||
static u8 bss_979 __attribute__((aligned(4)));;
|
||||
static u8 bss_941 __attribute__((aligned(4)));;
|
||||
static u8 bss_939 __attribute__((aligned(4)));;
|
||||
static u8 bss_937 __attribute__((aligned(4)));;
|
||||
static u8 bss_936 __attribute__((aligned(4)));;
|
||||
static u32 l_msgId;
|
||||
static msg_class* l_msg;
|
||||
static u8 msg_mode;
|
||||
|
||||
u32 daTag_Msg_c::getEventNo() {
|
||||
return mBase.mParameters >> 0x18;
|
||||
@@ -90,24 +70,24 @@ u16 daTag_Msg_c::getEventFlag() {
|
||||
return orig.angle.z;
|
||||
}
|
||||
|
||||
s32 daTag_Msg_c::arrivalTerms() {
|
||||
BOOL daTag_Msg_c::arrivalTerms() {
|
||||
int swBit;
|
||||
u16 eventFlag;
|
||||
swBit = (int)(getSwbit2() & 0xFF);
|
||||
eventFlag = getEventFlag();
|
||||
if ((s32)swBit != 0xff && dComIfGs_isSwitch(swBit, current.roomNo) == 0) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
else if (eventFlag != 0xffff && dComIfGs_isEventBit(eventFlag) == 0) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
/* 0000021C-000002FC .text rangeCheck__11daTag_Msg_cFv */
|
||||
int daTag_Msg_c::rangeCheck() {
|
||||
BOOL daTag_Msg_c::rangeCheck() {
|
||||
daPy_lk_c* link;
|
||||
cXyz diff;
|
||||
|
||||
@@ -119,13 +99,13 @@ int daTag_Msg_c::rangeCheck() {
|
||||
}
|
||||
if (diff.abs2XZ() < mScale.x * mScale.x * 10000.0f) {
|
||||
if(diff.y <= mScale.y * 100.0f) {
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
int daTag_Msg_c::otherCheck() {
|
||||
BOOL daTag_Msg_c::otherCheck() {
|
||||
daPy_lk_c *player;
|
||||
short diff;
|
||||
short actorAngle;
|
||||
@@ -133,7 +113,7 @@ int daTag_Msg_c::otherCheck() {
|
||||
actorAngle = fopAcM_searchActorAngleY(this, daPy_getPlayerActorClass());
|
||||
player = daPy_getPlayerLinkActorClass();
|
||||
if ((getType2() & 1) != 0) {
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
JUT_ASSERT(0xC8, player);
|
||||
if (getMessage() == 0x1902) {
|
||||
@@ -142,7 +122,7 @@ int daTag_Msg_c::otherCheck() {
|
||||
diff = -diff;
|
||||
}
|
||||
if (0x3000 < diff) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
actorAngle = (short)(actorAngle + 0x7fff) - player->current.angle.y;
|
||||
@@ -150,13 +130,13 @@ int daTag_Msg_c::otherCheck() {
|
||||
actorAngle = (short)-actorAngle;
|
||||
}
|
||||
if (actorAngle > 0x1000) {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_actionEvent(daTag_Msg_c* a_this) {
|
||||
static BOOL daTag_Msg_actionEvent(daTag_Msg_c* a_this) {
|
||||
int message = a_this->getMessage();
|
||||
switch (msg_mode / 1) {
|
||||
case 0:
|
||||
@@ -197,19 +177,19 @@ static s32 daTag_Msg_actionEvent(daTag_Msg_c* a_this) {
|
||||
daPy_getPlayerLinkActorClass()->offPlayerNoDraw();
|
||||
}
|
||||
if (a_this->getType2() & 1) {
|
||||
a_this->mAction = 0;
|
||||
a_this->setActio(0);
|
||||
} else {
|
||||
a_this->mAction = 2;
|
||||
a_this->setActio(2);
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_actionHunt(daTag_Msg_c* a_this) {
|
||||
static BOOL daTag_Msg_actionHunt(daTag_Msg_c* a_this) {
|
||||
u8 swBit;
|
||||
|
||||
if (a_this->mEvtInfo.mCommand == dEvtCmd_INTALK_e) {
|
||||
a_this->mAction = 3;
|
||||
a_this->setActio(3);
|
||||
swBit = a_this->getSwbit();
|
||||
if ((swBit & 0xff) != 0xff) {
|
||||
dComIfGs_onSwitch(swBit,a_this->current.roomNo);
|
||||
@@ -226,39 +206,39 @@ static s32 daTag_Msg_actionHunt(daTag_Msg_c* a_this) {
|
||||
}
|
||||
a_this->mEvtInfo.mCondition |= dEvtCnd_CANTALK_e;
|
||||
}
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* 00000754-000007B0 .text daTag_Msg_actionArrival__FP11daTag_Msg_c */
|
||||
static s32 daTag_Msg_actionArrival(daTag_Msg_c* a_this) {
|
||||
static BOOL daTag_Msg_actionArrival(daTag_Msg_c* a_this) {
|
||||
char *cutsceneName;
|
||||
|
||||
if (a_this->arrivalTerms() != 0) {
|
||||
cutsceneName = (char*)a_this->myDemoName();
|
||||
a_this->mEvtInfo.setEventName(cutsceneName);
|
||||
a_this->mAction = 2;
|
||||
a_this->setActio(2);
|
||||
daTag_Msg_actionHunt(a_this);
|
||||
}
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_actionWait(daTag_Msg_c*) {
|
||||
return true;
|
||||
static BOOL daTag_Msg_actionWait(daTag_Msg_c*) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_Draw(daTag_Msg_c*) {
|
||||
return true;
|
||||
static BOOL daTag_Msg_Draw(daTag_Msg_c*) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
s32 daTag_Msg_c::execute() {
|
||||
static s32 (*l_action[4])(daTag_Msg_c*) = {
|
||||
BOOL daTag_Msg_c::execute() {
|
||||
static ActionFunc* l_action[4] = {
|
||||
daTag_Msg_actionWait,
|
||||
daTag_Msg_actionArrival,
|
||||
daTag_Msg_actionHunt,
|
||||
daTag_Msg_actionEvent,
|
||||
};
|
||||
l_action[mAction](this);
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
s32 daTag_Msg_c::create() {
|
||||
@@ -266,11 +246,11 @@ s32 daTag_Msg_c::create() {
|
||||
fopAcM_SetupActor(this, daTag_Msg_c);
|
||||
swBit = (int)(getSwbit() & 0xFF);
|
||||
if ((getMessage() == 0x9c5) && dComIfGs_isEventBit(0x502)) {
|
||||
mAction = 0;
|
||||
setActio(0);
|
||||
} else if ((s32)swBit != 0xff && dComIfGs_isSwitch(swBit, current.roomNo) != 0) {
|
||||
mAction = 0;
|
||||
setActio(0);
|
||||
} else {
|
||||
mAction = 1;
|
||||
setActio(1);
|
||||
}
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
@@ -281,20 +261,20 @@ s32 daTag_Msg_c::create() {
|
||||
mAttentionInfo.mPosition.y += 150;
|
||||
mEyePos.y += 150.0f;
|
||||
}
|
||||
return 4;
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_Execute(daTag_Msg_c* a_this) {
|
||||
static BOOL daTag_Msg_Execute(daTag_Msg_c* a_this) {
|
||||
return a_this->execute();
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_IsDelete(daTag_Msg_c*) {
|
||||
return true;
|
||||
static BOOL daTag_Msg_IsDelete(daTag_Msg_c*) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static BOOL daTag_Msg_Delete(daTag_Msg_c* a_this) {
|
||||
a_this->~daTag_Msg_c();
|
||||
return true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static s32 daTag_Msg_Create(fopAc_ac_c* i_this) {
|
||||
|
||||
@@ -408,12 +408,12 @@ BOOL daTbox_c::checkNormal() {
|
||||
}
|
||||
|
||||
/* 0000108C-000010AC .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
static s32 CheckCreateHeap(fopAc_ac_c* i_actor) {
|
||||
static BOOL CheckCreateHeap(fopAc_ac_c* i_actor) {
|
||||
return static_cast<daTbox_c*>(i_actor)->CreateHeap();
|
||||
}
|
||||
|
||||
/* 000010AC-0000114C .text CreateHeap__8daTbox_cFv */
|
||||
s32 daTbox_c::CreateHeap() {
|
||||
BOOL daTbox_c::CreateHeap() {
|
||||
if (commonShapeSet() != cPhs_COMPLEATE_e) {
|
||||
return FALSE;
|
||||
}
|
||||
@@ -511,7 +511,7 @@ void daTbox_c::CreateInit() {
|
||||
mAllColRatio = 1.0f;
|
||||
|
||||
if (l_HIO.mHioId < 0) {
|
||||
l_HIO.mHioId = mDoHIO_root.mDoHIO_createChild("宝箱", (JORReflexible*)(&l_HIO));
|
||||
l_HIO.mHioId = mDoHIO_root.mDoHIO_createChild("宝箱", &l_HIO);
|
||||
}
|
||||
|
||||
shape_angle.z = 0;
|
||||
@@ -1241,7 +1241,7 @@ static s32 daTbox_Create(fopAc_ac_c* i_actor) {
|
||||
heapSize += opensize_tbl[shapeType];
|
||||
}
|
||||
|
||||
u32 heapResult = fopAcM_entrySolidHeap(i_actor, (heapCallbackFunc)CheckCreateHeap, heapSize);
|
||||
u32 heapResult = fopAcM_entrySolidHeap(i_actor, CheckCreateHeap, heapSize);
|
||||
if (!heapResult) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ static s32 daVrbox_Create(fopAc_ac_c* i_actor) {
|
||||
i_this->m29C = 0;
|
||||
|
||||
s32 phase_state = cPhs_COMPLEATE_e;
|
||||
if (fopAcM_entrySolidHeap(i_this, (heapCallbackFunc)&daVrbox_solidHeapCB, 0xC60)) {
|
||||
if (fopAcM_entrySolidHeap(i_this, daVrbox_solidHeapCB, 0xC60)) {
|
||||
dComIfGp_onStatus(1);
|
||||
g_env_light.mbVrboxInvisible = 0;
|
||||
} else {
|
||||
|
||||
@@ -281,7 +281,7 @@ s32 daVrbox2_Create(fopAc_ac_c* i_actor) {
|
||||
vrbox2_class* i_this = static_cast<vrbox2_class*>(i_actor);
|
||||
|
||||
s32 phase_state = cPhs_COMPLEATE_e;
|
||||
if (!fopAcM_entrySolidHeap(i_this, (heapCallbackFunc)&daVrbox2_solidHeapCB, 0x21a0))
|
||||
if (!fopAcM_entrySolidHeap(i_this, daVrbox2_solidHeapCB, 0x21a0))
|
||||
phase_state = cPhs_ERROR_e;
|
||||
|
||||
return phase_state;
|
||||
|
||||
@@ -89,7 +89,7 @@ void daItemBase_c::setLoadError() {
|
||||
}
|
||||
|
||||
/* 80068748-800687B4 .text CheckItemCreateHeap__FP10fopAc_ac_c */
|
||||
int CheckItemCreateHeap(fopAc_ac_c* i_ac) {
|
||||
BOOL CheckItemCreateHeap(fopAc_ac_c* i_ac) {
|
||||
daItemBase_c * i_this = (daItemBase_c *)i_ac;
|
||||
u8 itemNo = i_this->getItemNo();
|
||||
return i_this->CreateItemHeap(
|
||||
@@ -105,7 +105,7 @@ int CheckItemCreateHeap(fopAc_ac_c* i_ac) {
|
||||
}
|
||||
|
||||
/* 800687B4-80068820 .text CheckFieldItemCreateHeap__FP10fopAc_ac_c */
|
||||
int CheckFieldItemCreateHeap(fopAc_ac_c* i_ac) {
|
||||
BOOL CheckFieldItemCreateHeap(fopAc_ac_c* i_ac) {
|
||||
daItemBase_c * i_this = (daItemBase_c *)i_ac;
|
||||
u8 itemNo = i_this->getItemNo();
|
||||
return i_this->CreateItemHeap(
|
||||
|
||||
+2
-16
@@ -3,6 +3,7 @@
|
||||
// Translation Unit: d_throwstone.cpp
|
||||
//
|
||||
|
||||
#include "d/d_throwstone.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
@@ -11,21 +12,6 @@
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
|
||||
class daThrowstone_c : fopAc_ac_c {
|
||||
public:
|
||||
s32 CreateHeap();
|
||||
inline s32 _create();
|
||||
inline BOOL _delete();
|
||||
inline BOOL _execute();
|
||||
inline bool _draw();
|
||||
static const char M_arcname[5];
|
||||
|
||||
public:
|
||||
/* 0x290 */ request_of_phase_process_class mPhs;
|
||||
/* 0x298 */ J3DModel * mpModel;
|
||||
/* 0x29C */ Mtx mMtx;
|
||||
};
|
||||
|
||||
const char daThrowstone_c::M_arcname[] = "Aisi";
|
||||
|
||||
/* 8023B544-8023B564 .text CheckCreateHeap__FP10fopAc_ac_c */
|
||||
@@ -35,7 +21,7 @@ static BOOL CheckCreateHeap(fopAc_ac_c* i_actor) {
|
||||
}
|
||||
|
||||
/* 8023B564-8023B5DC .text CreateHeap__14daThrowstone_cFv */
|
||||
s32 daThrowstone_c::CreateHeap() {
|
||||
BOOL daThrowstone_c::CreateHeap() {
|
||||
J3DModelData* pModelData = (J3DModelData*)dComIfG_getObjectRes(M_arcname, 0x03);
|
||||
if (pModelData == NULL)
|
||||
return FALSE;
|
||||
|
||||
Reference in New Issue
Block a user