npc_hoz done (#2775)

* npc_hoz done

* pr

* remove include
This commit is contained in:
TakaRikka 2025-11-07 05:26:52 -08:00 committed by GitHub
parent 1704a3acba
commit 1f701cd132
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
49 changed files with 1818 additions and 1818 deletions

View File

@ -1874,7 +1874,7 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_gwolf", extra_cflags=[DANPCF_C_HACK]),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_hanjo"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_henna0"),
ActorRel(NonMatching, "d_a_npc_hoz"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_hoz"),
ActorRel(NonMatching, "d_a_npc_impal", extra_cflags=[DANPCF_C_HACK]),
ActorRel(NonMatching, "d_a_npc_inko"),
ActorRel(Equivalent, "d_a_npc_ins", extra_cflags=[DANPCF_C_HACK]), # weak func order

View File

@ -799,6 +799,12 @@ public:
STATIC_ASSERT(sizeof(daNpcT_c) == 0xE40);
#define daNpcT_ct(ptr, ClassName, faceMotionAnmData, motionAnmData, faceMotionSequenceData, faceMotionStepNum, motionSequenceData, motionStepNum, evtData, arcNames) \
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
new (ptr) ClassName(faceMotionAnmData, motionAnmData, faceMotionSequenceData, faceMotionStepNum, motionSequenceData, motionStepNum, evtData, arcNames); \
fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \
}
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);

View File

@ -2,6 +2,7 @@
#define D_A_NPC_HOZ_H
#include "d/actor/d_a_npc.h"
#include "d/actor/d_a_startAndGoal.h"
/**
* @ingroup actors-npcs
@ -13,6 +14,9 @@
*/
class daNpc_Hoz_c : public daNpcT_c {
public:
typedef int (daNpc_Hoz_c::*actionFunc)(void*);
typedef int (daNpc_Hoz_c::*cutFunc)(int);
enum Type {
/* 0 */ TYPE_0,
/* 1 */ TYPE_1,
@ -23,80 +27,113 @@ public:
/* 6 */ TYPE_6,
};
/* 80A0150C */ ~daNpc_Hoz_c();
/* 80A01658 */ void create();
/* 80A01904 */ void CreateHeap();
/* 80A01D54 */ void Delete();
/* 80A01D88 */ void Execute();
/* 80A01DA8 */ void Draw();
/* 80A01E44 */ void createHeapCallBack(fopAc_ac_c*);
/* 80A01E64 */ void ctrlJointCallBack(J3DJoint*, int);
/* 80A01658 */ int create();
/* 80A01904 */ int CreateHeap();
/* 80A01D54 */ int Delete();
/* 80A01D88 */ int Execute();
/* 80A01DA8 */ int Draw();
/* 80A01E44 */ static int createHeapCallBack(fopAc_ac_c*);
/* 80A01E64 */ static int ctrlJointCallBack(J3DJoint*, int);
/* 80A01F54 */ u8 getType();
/* 80A01FC8 */ void getFlowNodeNo();
/* 80A01FE4 */ bool isDelete();
/* 80A01FC8 */ int getFlowNodeNo();
/* 80A01FE4 */ int isDelete();
/* 80A01FEC */ void reset();
/* 80A021DC */ void setParam();
/* 80A0236C */ void setAfterTalkMotion();
/* 80A02370 */ void srchActors();
/* 80A02374 */ BOOL checkChangeEvt();
/* 80A023EC */ BOOL evtTalk();
/* 80A024D0 */ BOOL evtEndProc();
/* 80A0260C */ BOOL evtCutProc();
/* 80A026D4 */ int evtProc();
/* 80A02918 */ void action();
/* 80A029A0 */ void beforeMove();
/* 80A02A18 */ void setAttnPos();
/* 80A02C50 */ void setCollision();
/* 80A02DD4 */ void evtOrder();
/* 80A02F78 */ int drawDbgInfo();
/* 80A02F80 */ void selectAction();
/* 80A030A8 */ void chkAction(int (daNpc_Hoz_c::*)(void*));
/* 80A030D4 */ void setAction(int (daNpc_Hoz_c::*)(void*));
/* 80A0317C */ void wait(void*);
/* 80A03304 */ void waitBattle(void*);
/* 80A03578 */ void waitTwilightBattle(void*);
/* 80A037E4 */ void waitBoat(void*);
/* 80A03BDC */ void waitBoat2(void*);
/* 80A03F8C */ void waitBoat1_5(void*);
/* 80A04400 */ void waitTw(void*);
/* 80A045FC */ void talk(void*);
/* 80A0487C */ void ECut_boatRace(int);
/* 80A04BE4 */ void ECut_beforeBattle(int);
/* 80A04CDC */ void ECut_afterBattle(int);
/* 80A04E24 */ void ECut_beforeBlast(int);
/* 80A04F6C */ void ECut_afterBlast(int);
/* 80A050B4 */ void ECut_yMushi(int);
/* 80A051C8 */ void ECut_talkBreak(int);
/* 80A064E4 */ daNpc_Hoz_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int,
daNpcT_evtData_c const*, char**);
/* 80A065A4 */ u16 getEyeballMaterialNo();
/* 80A065AC */ s32 getHeadJointNo();
/* 80A065B4 */ s32 getNeckJointNo();
/* 80A065BC */ s32 getBackboneJointNo();
/* 80A065C4 */ int checkChangeJoint(int);
/* 80A065D4 */ int checkRemoveJoint(int);
/* 80A02F80 */ int selectAction();
/* 80A030A8 */ int chkAction(int (daNpc_Hoz_c::*)(void*));
/* 80A030D4 */ int setAction(int (daNpc_Hoz_c::*)(void*));
/* 80A0317C */ int wait(void*);
/* 80A03304 */ int waitBattle(void*);
/* 80A03578 */ int waitTwilightBattle(void*);
/* 80A037E4 */ int waitBoat(void*);
/* 80A03BDC */ int waitBoat2(void*);
/* 80A03F8C */ int waitBoat1_5(void*);
/* 80A04400 */ int waitTw(void*);
/* 80A045FC */ int talk(void*);
/* 80A0487C */ int ECut_boatRace(int);
/* 80A04BE4 */ int ECut_beforeBattle(int);
/* 80A04CDC */ int ECut_afterBattle(int);
/* 80A04E24 */ int ECut_beforeBlast(int);
/* 80A04F6C */ int ECut_afterBlast(int);
/* 80A050B4 */ int ECut_yMushi(int);
/* 80A051C8 */ int ECut_talkBreak(int);
/* 80A064E4 */ daNpc_Hoz_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
daNpcT_motionAnmData_c const* i_motionAnmData,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames)
{
OS_REPORT("|%06d:%x|daNpc_Hoz_c -> コンストラクト\n", g_Counter.mCounter0, this);
}
/* 80A0150C */ virtual ~daNpc_Hoz_c();
/* 80A065C4 */ virtual int checkChangeJoint(int i_jointNo) { return i_jointNo == 4; }
/* 80A065D4 */ virtual int checkRemoveJoint(int i_jointNo) { return i_jointNo == 9; }
/* 80A065BC */ virtual s32 getBackboneJointNo() { return 1; }
/* 80A065B4 */ virtual s32 getNeckJointNo() { return 3; }
/* 80A065AC */ virtual s32 getHeadJointNo() { return 4; }
/* 80A065A4 */ virtual u16 getEyeballMaterialNo() { return 1; }
/* 80A021DC */ virtual void setParam();
/* 80A02374 */ virtual BOOL checkChangeEvt();
/* 80A023EC */ virtual BOOL evtTalk();
/* 80A024D0 */ virtual BOOL evtEndProc();
/* 80A0260C */ virtual BOOL evtCutProc();
/* 80A0236C */ virtual void setAfterTalkMotion();
/* 80A026D4 */ virtual int evtProc();
/* 80A02918 */ virtual void action();
/* 80A029A0 */ virtual void beforeMove();
/* 80A02A18 */ virtual void setAttnPos();
/* 80A02C50 */ virtual void setCollision();
/* 80A02DD4 */ virtual void evtOrder();
/* 80A02F78 */ virtual int drawDbgInfo();
#if DEBUG
int test(void*);
#endif
bool getGameStartFlag() { return mGameStartFlag; }
void setPotBreakFlag() { mPotBreakFlag = true; }
static char* mCutNameList[8];
static u8 mCutList[96];
static cutFunc mCutList[];
private:
/* 0xE40 */ u8 field_0xe40[0x14d];
/* 0xE40 */ u8 field_0xE40[0xE44 - 0xE40];
/* 0xE44 */ dCcD_Cyl mCyl;
/* 0xF80 */ u8 mType;
/* 0xF84 */ daStartAndGoal_c* field_0xf84;
/* 0xF88 */ u8 field_0xf88;
/* 0xF89 */ u8 field_0xf89;
/* 0xF8A */ u8 field_0xf8a;
/* 0xF8B */ u8 field_0xf8b;
/* 0xF8C */ u8 field_0xf8c;
/* 0xF8D */ bool mGameStartFlag;
/* 0xF8E */ bool mPotBreakFlag;
/* 0xF8F */ u8 field_0xf8f[0x39];
/* 0xF90 */ cXyz field_0xf90;
/* 0xF9C */ s16 field_0xf9c;
/* 0xFA0 */ daNpcT_ActorMngr_c field_0xfa0;
/* 0xFA8 */ int field_0xfa8;
/* 0xFAC */ int (daNpc_Hoz_c::*field_0xfac)(void*);
/* 0xFB8 */ int (daNpc_Hoz_c::*mAction)(void*);
/* 0xFC4 */ u8 field_0xfc4;
};
STATIC_ASSERT(sizeof(daNpc_Hoz_c) == 0xFC8);
struct daNpc_Hoz_Param_c {
/* 80A065E4 */ ~daNpc_Hoz_Param_c();
struct daNpc_Hoz_HIOParam {
/* 0x00 */ daNpcT_HIOParam common;
/* 0x8C */ f32 field_0x8c;
};
static u8 const m[144];
class daNpc_Hoz_Param_c {
public:
/* 80A065E4 */ virtual ~daNpc_Hoz_Param_c() {}
static const daNpc_Hoz_HIOParam m;
};
#endif /* D_A_NPC_HOZ_H */

View File

@ -1,5 +1,33 @@
#ifndef D_A_STARTANDGOAL_H
#define D_A_STARTANDGOAL_H
#include "d/actor/d_a_npc.h"
class daStartAndGoal_Path_c : public daNpcF_Path_c {
public:
/* 80D4D7B8 */ BOOL chkPassed2(cXyz);
/* 80D4D928 */ virtual ~daStartAndGoal_Path_c();
};
class daStartAndGoal_c : public fopAc_ac_c {
public:
/* 80D4D84C */ int getType();
/* 80D4D884 */ int Create();
/* 80D4D998 */ void init();
/* 80D4DA68 */ void actorPosCheck();
/* 80D4DB30 */ int readyStartTimer();
/* 80D4DBAC */ BOOL isStartCheck();
/* 80D4DBD0 */ BOOL isReadyCheck();
/* 80D4DC50 */ int Execute();
/* 80D4DCF4 */ int Draw();
/* 80D4DCFC */ int Delete();
/* 0x568 */ daStartAndGoal_Path_c mPath;
/* 0xB98 */ u8 field_0xb98;
/* 0xB99 */ u8 mType;
/* 0xB9C */ int mAction;
/* 0xBA0 */ bool mStarted;
};
#endif /* D_A_STARTANDGOAL_H */

View File

@ -206,6 +206,7 @@ public:
void resetWindowAccept() { mWindowAccept = 0xFFFF; }
void onWindowAccept(int param_0) { mWindowAccept |= (u16)(1 << param_0); }
void offWindowAccept(int param_0) { mWindowAccept &= ~(u16)(1 << param_0); }
void onMenuInForce(int param_0) { unk_0x98 |= (u16)(1 << param_0); }
public:
/* 0x04 */ u8 unk_0x4[4];
@ -853,4 +854,8 @@ inline void dMeter2Info_offWindowAccept(int param_0) {
g_meter2_info.offWindowAccept(param_0);
}
inline void dMeter2Info_onMenuInForce(int param_0) {
g_meter2_info.onMenuInForce(param_0);
}
#endif /* D_METER_D_METER2_INFO_H */

View File

@ -18,12 +18,6 @@
fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \
}
#define fopAcM_SetupActor2(ptr, ClassName, ...) \
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
new (ptr) ClassName(__VA_ARGS__); \
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"

View File

@ -331,7 +331,7 @@ const daNpc_Aru_HIOParam daNpc_Aru_Param_c::m = {
/* 809518C4-80951BB0 000224 02EC+00 1/1 0/0 0/0 .text create__11daNpc_Aru_cFv */
cPhs__Step daNpc_Aru_c::create() {
fopAcM_SetupActor2(this, daNpc_Aru_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Aru_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -392,7 +392,7 @@ static NPC_BANS_HIO_CLASS l_HIO;
/* 80962AA0-80962D6C 0002C0 02CC+00 1/1 0/0 0/0 .text create__12daNpc_Bans_cFv */
cPhs__Step daNpc_Bans_c::create() {
fopAcM_SetupActor2(this, daNpc_Bans_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Bans_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);
mType = getType();

View File

@ -620,7 +620,7 @@ int daNpc_Besu_c::create() {
0x35C0, 0x35C0, 0x35D0, 0x35C0,
0x35C0, 0x35C0, 0x0,
};
fopAcM_SetupActor2(this, daNpc_Besu_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Besu_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -183,7 +183,7 @@ daNpc_Bou_Param_c::Data const daNpc_Bou_Param_c::m= {
/* 8096D0D8-8096D38C 000238 02B4+00 1/1 0/0 0/0 .text create__11daNpc_Bou_cFv */
int daNpc_Bou_c::create() {
static int const heapSize[6] = {15696, 15696, 15696, 15696, 15696, 0};
fopAcM_SetupActor2(this, daNpc_Bou_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Bou_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -88,7 +88,7 @@ const f32 daNpc_FairySeirei_Param_c::m[37] = {
/* 8054006C-80540298 0001EC 022C+00 1/1 0/0 0/0 .text create__19daNpc_FairySeirei_cFv */
int daNpc_FairySeirei_c::create() {
fopAcM_SetupActor2(this, daNpc_FairySeirei_c, &l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_FairySeirei_c, &l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList,
l_resNameList);
mType = getType();

View File

@ -131,7 +131,7 @@ daNpc_Gnd_c::~daNpc_Gnd_c() {
/* 809BB730-809BB9D4 000210 02A4+00 1/1 0/0 0/0 .text create__11daNpc_Gnd_cFv */
int daNpc_Gnd_c::create() {
fopAcM_SetupActor2(this, daNpc_Gnd_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Gnd_c, l_faceMotionAnmData,
l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);

View File

@ -222,7 +222,7 @@ daNpc_grMC_HIOParam const daNpc_grMC_Param_c::m = {
/* 809D7534-809D77BC 000214 0288+00 1/1 0/0 0/0 .text create__12daNpc_grMC_cFv */
cPhs__Step daNpc_grMC_c::create() {
fopAcM_SetupActor2(this, daNpc_grMC_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
daNpcT_ct(this, daNpc_grMC_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -194,7 +194,7 @@ dCcD_SrcGObjInf const daNpc_Hanjo_c::mStoneCcDObjInfo = {
/* 809F9278-809F9578 0002D8 0300+00 1/1 0/0 0/0 .text create__13daNpc_Hanjo_cFv */
int daNpc_Hanjo_c::create() {
static int const heapSize[5] = {0x61B0, 0x41D0, 0x39D0, 0x39C0, 0};
fopAcM_SetupActor2(this, daNpc_Hanjo_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Hanjo_c, l_faceMotionAnmData,
(daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

File diff suppressed because it is too large Load Diff

View File

@ -363,7 +363,7 @@ daNpc_Jagar_c::~daNpc_Jagar_c() {
/* 80A14858-80A14B20 000238 02C8+00 1/1 0/0 0/0 .text create__13daNpc_Jagar_cFv */
int daNpc_Jagar_c::create() {
static int const heapSize[4] = {14416, 14448, 14448, 0};
fopAcM_SetupActor2(this, daNpc_Jagar_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Jagar_c, l_faceMotionAnmData,
(const daNpcT_motionAnmData_c *)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c *) l_faceMotionSequenceData, 4,
(const daNpcT_MotionSeqMngr_c::sequenceStepData_c *)l_motionSequenceData, 4, (const daNpcT_evtData_c *)l_evtList, (char **)l_resNameList
);

View File

@ -161,7 +161,7 @@ const daNpc_Kakashi_HIOParam daNpc_Kakashi_Param_c::m = {
/* 8054B4E8-8054B7D8 000268 02F0+00 1/1 0/0 0/0 .text create__15daNpc_Kakashi_cFv */
int daNpc_Kakashi_c::create() {
fopAcM_SetupActor2(this, daNpc_Kakashi_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Kakashi_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);

View File

@ -303,7 +303,7 @@ const daNpc_Kkri_HIOParam daNpc_Kkri_Param_c::m = {
/* 8054F4F8-8054F7D0 000238 02D8+00 1/1 0/0 0/0 .text create__12daNpc_Kkri_cFv */
int daNpc_Kkri_c::create() {
fopAcM_SetupActor2(this, daNpc_Kkri_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Kkri_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);

View File

@ -441,7 +441,7 @@ const daNpc_Kn_HIOParam daNpc_Kn_Param_c::m = {
/* 80A2AFD4-80A2B278 0006B4 02A4+00 1/1 0/0 0/0 .text create__10daNpc_Kn_cFv */
int daNpc_Kn_c::create() {
fopAcM_SetupActor2(this, daNpc_Kn_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Kn_c, l_faceMotionAnmData,
(daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);

View File

@ -412,7 +412,7 @@ daNpc_Kolin_HIOParam const daNpc_Kolin_Param_c::m = {
/* 80554138-80554414 000238 02DC+00 1/1 0/0 0/0 .text create__13daNpc_Kolin_cFv */
cPhs__Step daNpc_Kolin_c::create() {
fopAcM_SetupActor2(this, daNpc_Kolin_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
daNpcT_ct(this, daNpc_Kolin_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();
mFlowNodeNo = getFlowNodeNo();

View File

@ -267,7 +267,7 @@ daNpc_Kolinb_HIOParam const daNpc_Kolinb_Param_c::m = {
/* 80A45ADC-80A45DC4 00023C 02E8+00 1/1 0/0 0/0 .text create__14daNpc_Kolinb_cFv */
cPhs__Step daNpc_Kolinb_c::create() {
fopAcM_SetupActor2(this, daNpc_Kolinb_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
daNpcT_ct(this, daNpc_Kolinb_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();
mFlowNodeNo = getFlowNodeNo();

View File

@ -185,7 +185,7 @@ int daNpc_Len_c::create() {
0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x0,
};
fopAcM_SetupActor2(this, daNpc_Len_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Len_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
(const daNpcT_motionAnmData_c*)l_motionAnmData,
(const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData,
4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData,

View File

@ -266,7 +266,7 @@ int daNpc_Lud_c::create() {
0x3EF0, 0x3EF0, 0x3EF0, 0x3EF0, 0x46D0, 0x5000, 0x46E0, 0x3EF0, 0x0,
};
fopAcM_SetupActor2(this, daNpc_Lud_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Lud_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
(const daNpcT_motionAnmData_c*)l_motionAnmData,
(const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData,
4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData,

View File

@ -243,7 +243,7 @@ int daNpc_Maro_c::create() {
0x3310, 0x3310, 0x3310, 0x3310,
0,
};
fopAcM_SetupActor2(this, daNpc_Maro_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Maro_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -132,7 +132,7 @@ daNpc_midP_HIOParam const daNpc_midP_Param_c::m = {
/* 80A70D90-80A71074 000210 02E4+00 1/1 0/0 0/0 .text create__12daNpc_midP_cFv */
int daNpc_midP_c::create() {
fopAcM_SetupActor2(this, daNpc_midP_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4,
daNpcT_ct(this, daNpc_midP_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -271,7 +271,7 @@ daNpc_Moi_c::~daNpc_Moi_c() {
int daNpc_Moi_c::create() {
static const int heapSize[] = {0, 0x5C70, 0x7CB0, 0x7CA0, 0x5C70, 0x5C80, 0};
fopAcM_SetupActor2(this, daNpc_Moi_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Moi_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData,
(const daNpcT_motionAnmData_c*)l_motionAnmData,
(const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData,
4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData,

View File

@ -539,7 +539,7 @@ daNpc_Pachi_Besu_HIOParam const daNpc_Pachi_Besu_Param_c::m = {
/* 80A92EA4-80A9317C 000224 02D8+00 1/1 0/0 0/0 .text create__18daNpc_Pachi_Besu_cFv */
cPhs__Step daNpc_Pachi_Besu_c::create() {
fopAcM_SetupActor2(this, daNpc_Pachi_Besu_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Pachi_Besu_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);

View File

@ -222,7 +222,7 @@ daNpc_Raca_HIOParam const daNpc_Raca_Param_c::m = {
/* 80AB5DFC-80AB60B8 00023C 02BC+00 1/1 0/0 0/0 .text create__12daNpc_Raca_cFv */
cPhs__Step daNpc_Raca_c::create() {
fopAcM_SetupActor2(this, daNpc_Raca_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
daNpcT_ct(this, daNpc_Raca_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -300,7 +300,7 @@ int daNpc_Saru_c::create() {
14480, 14480, 14464, 0,
};
fopAcM_SetupActor2(this, daNpc_Saru_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Saru_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, (char**)l_resNameList);
mType = getType();

View File

@ -114,7 +114,7 @@ daNpc_seiB_Param_c::Data const daNpc_seiB_Param_c::m = {
/* 80AC5188-80AC53C8 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiB_cFv */
int daNpc_seiB_c::create() {
fopAcM_SetupActor2(this, daNpc_seiB_c, &l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_seiB_c, &l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList,
l_resNameList);

View File

@ -128,7 +128,7 @@ static daNpc_seiC_Param_c l_HIO;
/* 80AC75E8-80AC7828 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiC_cFv */
int daNpc_seiC_c::create() {
fopAcM_SetupActor2(this, daNpc_seiC_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData,
daNpcT_ct(this, daNpc_seiC_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData,
4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -129,7 +129,7 @@ static daNpc_seiD_Param_c l_HIO;
/* 80AC9728-80AC9968 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiD_cFv */
int daNpc_seiD_c::create() {
fopAcM_SetupActor2(this, daNpc_seiD_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData,
daNpcT_ct(this, daNpc_seiD_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData,
4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -197,7 +197,7 @@ const daNpc_Seira_HIOParam daNpc_Seira_Param_c::m = {
/* 80ACB918-80ACBBD4 000238 02BC+00 1/1 0/0 0/0 .text create__13daNpc_Seira_cFv */
int daNpc_Seira_c::create() {
fopAcM_SetupActor2(this, daNpc_Seira_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Seira_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -182,7 +182,7 @@ const daNpc_Seira2_HIOParam daNpc_Seira2_Param_c::m = {
/* 80AD0D58-80AD0FF8 000238 02A0+00 1/1 0/0 0/0 .text create__14daNpc_Seira2_cFv */
int daNpc_Seira2_c::create() {
fopAcM_SetupActor2(this, daNpc_Seira2_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Seira2_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -220,7 +220,7 @@ daNpc_Seirei_HIOParam const daNpc_Seirei_Param_c::m = {
/* 80AD57C4-80AD5A7C 000184 02B8+00 1/1 0/0 0/0 .text create__14daNpc_Seirei_cFv */
cPhs__Step daNpc_Seirei_c::create() {
fopAcM_SetupActor2(this, daNpc_Seirei_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
daNpcT_ct(this, daNpc_Seirei_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -285,7 +285,7 @@ daNpc_Taro_HIOParam const daNpc_Taro_Param_c::m = {
/* 8056604C-80566340 0002AC 02F4+00 1/1 0/0 0/0 .text create__12daNpc_Taro_cFv */
int daNpc_Taro_c::create() {
fopAcM_SetupActor2(this, daNpc_Taro_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Taro_c, l_faceMotionAnmData,
l_motionAnmData, l_faceMotionSequenceData,
4, l_motionSequenceData,
4, l_evtList, l_resNameList);

View File

@ -141,7 +141,7 @@ const daNpc_Tkj_HIOParam daNpc_Tkj_Param_c::m = {
/* 80573850-80573B18 000210 02C8+00 1/1 0/0 0/0 .text create__10daNpcTkj_cFv */
int daNpcTkj_c::create() {
fopAcM_SetupActor2(this, daNpcTkj_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpcTkj_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);

View File

@ -304,7 +304,7 @@ int daNpc_Toby_c::create() {
0x3BC0, 0x3B10, 0x3B10, 0x43C0,
0x0, 0x3BD0, 0x0,
};
fopAcM_SetupActor2(this, daNpc_Toby_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_Toby_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList
);

View File

@ -238,7 +238,7 @@ daNpc_Uri_c::~daNpc_Uri_c() {
int daNpc_Uri_c::create() {
static const int heapSize[] = {0, 0x3F20, 0, 0, 0x3740, 0x3740, 0};
fopAcM_SetupActor2(this, daNpc_Uri_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Uri_c, l_faceMotionAnmData,
(const daNpcT_motionAnmData_c*)l_motionAnmData,
(const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData,
4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData,

View File

@ -206,7 +206,7 @@ static NPC_YAMID_HIO_CLASS l_HIO;
/* 80B43084-80B43338 000224 02B4+00 1/1 0/0 0/0 .text create__13daNpc_yamiD_cFv */
cPhs__Step daNpc_yamiD_c::create() {
fopAcM_SetupActor2(this, daNpc_yamiD_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_yamiD_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
l_evtList, l_resNameList);

View File

@ -491,7 +491,7 @@ daNpc_ykM_HIOParam const daNpc_ykM_Param_c::m = {
/* 80B53698-80B53990 000298 02F8+00 1/1 0/0 0/0 .text create__11daNpc_ykM_cFv */
cPhs__Step daNpc_ykM_c::create() {
fopAcM_SetupActor2(this, daNpc_ykM_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData,
daNpcT_ct(this, daNpc_ykM_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData,
4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();
mFlowNodeNo = getFlowNodeNo();

View File

@ -324,7 +324,7 @@ static u32 const heapSize[8] = {
/* 80B5F084-80B5F34C 000264 02C8+00 1/1 0/0 0/0 .text create__11daNpc_ykW_cFv */
int daNpc_ykW_c::create() {
fopAcM_SetupActor2(this, daNpc_ykW_c, l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daNpc_ykW_c, l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList,
(char**)l_resNameList);
field_0xf80 = getType();

View File

@ -93,7 +93,7 @@ daNpc_Zant_Param_c::Data const daNpc_Zant_Param_c::m = {
int daNpc_Zant_c::create() {
int rv;
fopAcM_SetupActor2(this, daNpc_Zant_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData,
daNpcT_ct(this, daNpc_Zant_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData,
4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -131,7 +131,7 @@ daNpc_ZelR_HIOParam const daNpc_ZelR_Param_c::m = {
/* 80B6EF64-80B6F1F8 000224 0294+00 1/1 0/0 0/0 .text create__12daNpc_ZelR_cFv */
int daNpc_ZelR_c::create() {
fopAcM_SetupActor2(this, daNpc_ZelR_c, l_faceMotionAnmData,
daNpcT_ct(this, daNpc_ZelR_c, l_faceMotionAnmData,
&l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();

View File

@ -155,7 +155,7 @@ const daNpc_ZelRo_HIOParam daNpc_ZelRo_Param_c::m = {
/* 80B720E4-80B72378 000224 0294+00 1/1 0/0 0/0 .text create__13daNpc_ZelRo_cFv */
cPhs__Step daNpc_ZelRo_c::create() {
fopAcM_SetupActor2(this, daNpc_ZelRo_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
daNpcT_ct(this, daNpc_ZelRo_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();
mFlowNodeNo = getFlowNodeNo();

View File

@ -171,7 +171,7 @@ int daNpc_Zelda_c::create() {
0x8FE0,
};
fopAcM_SetupActor2(this, daNpc_Zelda_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData,
daNpcT_ct(this, daNpc_Zelda_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData,
(daNpcT_motionAnmData_c*)l_motionAnmData,
(daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4,
(daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4,

View File

@ -167,7 +167,7 @@ int daObj_Sekizoa_c::create() {
0x2390, 0x2380, 0x2390, 0x2380, 0x2350, 0x2340, 0x33E0, 0,
};
fopAcM_SetupActor2(this, daObj_Sekizoa_c, &l_faceMotionAnmData, l_motionAnmData,
daNpcT_ct(this, daObj_Sekizoa_c, &l_faceMotionAnmData, l_motionAnmData,
l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList,
l_resNameList);

View File

@ -170,7 +170,7 @@ PeruParams const daPeru_Param_c::m = {
/* 80D46FCC-80D4720C 0001CC 0240+00 1/1 0/0 0/0 .text create__8daPeru_cFv */
int daPeru_c::create() {
fopAcM_SetupActor2(this, daPeru_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4, l_evtList, l_resNameList);
daNpcT_ct(this, daPeru_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4, l_evtList, l_resNameList);
OS_REPORT("------------ ルイーズ生成処理開始\n");
mType = getType();
OS_REPORT("type=%d\n", mType);

View File

@ -6,38 +6,10 @@
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_startAndGoal.h"
#include "d/actor/d_a_npc.h"
#include "d/d_timer.h"
#include "d/d_meter2_info.h"
#include "f_op/f_op_actor_mng.h"
class daStartAndGoal_Path_c : public daNpcF_Path_c {
public:
/* 80D4D7B8 */ BOOL chkPassed2(cXyz);
/* 80D4D928 */ virtual ~daStartAndGoal_Path_c() {}
};
class daStartAndGoal_c : public fopAc_ac_c {
public:
/* 80D4D84C */ int getType();
/* 80D4D884 */ int Create();
/* 80D4D998 */ void init();
/* 80D4DA68 */ void actorPosCheck();
/* 80D4DB30 */ int readyStartTimer();
/* 80D4DBAC */ BOOL isStartCheck();
/* 80D4DBD0 */ BOOL isReadyCheck();
/* 80D4DC50 */ int Execute();
/* 80D4DCF4 */ int Draw();
/* 80D4DCFC */ int Delete();
/* 0x568 */ daStartAndGoal_Path_c mPath;
/* 0xB98 */ u8 field_0xb98;
/* 0xB99 */ u8 mType;
/* 0xB9C */ int mAction;
/* 0xBA0 */ bool mStarted;
};
/* 80D4D7B8-80D4D84C 000078 0094+00 1/1 0/0 0/0 .text chkPassed2__21daStartAndGoal_Path_cF4cXyz */
BOOL daStartAndGoal_Path_c::chkPassed2(cXyz i_checkPos) {
int var_r31 = 0;
@ -89,6 +61,8 @@ int daStartAndGoal_c::Create() {
return cPhs_COMPLEATE_e;
}
daStartAndGoal_Path_c::~daStartAndGoal_Path_c() {}
/* 80D4DEB8-80D4DEBC 000000 0001+03 1/1 0/0 0/0 .rodata l_DATA */
static const u8 l_DATA[1] = {0}; // unused