summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2025-09-12 14:29:20 -0700
committerGitHub <noreply@github.com>2025-09-13 00:29:20 +0300
commitf91257cc6206ab4b47c2509b3a747e2dc4fa84f9 (patch)
tree3dee331bd06fccb27db6a9adcee9062f2dcba7c1 /src/d
parent8a3a6d29971e37c01025303af9931feea651af9c (diff)
npc_kakashi done (#2651)
Diffstat (limited to 'src/d')
-rw-r--r--src/d/actor/d_a_cow.cpp10
-rw-r--r--src/d/actor/d_a_e_bi.cpp2
-rw-r--r--src/d/actor/d_a_e_dn.cpp4
-rw-r--r--src/d/actor/d_a_e_fz.cpp2
-rw-r--r--src/d/actor/d_a_e_mf.cpp4
-rw-r--r--src/d/actor/d_a_e_po.cpp6
-rw-r--r--src/d/actor/d_a_e_rd.cpp8
-rw-r--r--src/d/actor/d_a_e_sm.cpp4
-rw-r--r--src/d/actor/d_a_e_sm2.cpp2
-rw-r--r--src/d/actor/d_a_e_sw.cpp2
-rw-r--r--src/d/actor/d_a_e_ww.cpp8
-rw-r--r--src/d/actor/d_a_e_ymb.cpp2
-rw-r--r--src/d/actor/d_a_e_zh.cpp4
-rw-r--r--src/d/actor/d_a_npc.cpp2
-rw-r--r--src/d/actor/d_a_npc_coach.cpp4
-rw-r--r--src/d/actor/d_a_npc_kakashi.cpp2431
-rw-r--r--src/d/actor/d_a_npc_kasi_hana.cpp16
-rw-r--r--src/d/actor/d_a_npc_kasi_kyu.cpp2
-rw-r--r--src/d/actor/d_a_npc_kasi_mich.cpp2
-rw-r--r--src/d/actor/d_a_npc_kn.cpp2
-rw-r--r--src/d/actor/d_a_npc_kolin.cpp6
-rw-r--r--src/d/actor/d_a_npc_kolinb.cpp4
-rw-r--r--src/d/actor/d_a_npc_maro.cpp4
-rw-r--r--src/d/actor/d_a_npc_moir.cpp2
-rw-r--r--src/d/actor/d_a_npc_shad.cpp6
-rw-r--r--src/d/actor/d_a_npc_taro.cpp4
-rw-r--r--src/d/actor/d_a_npc_tk.cpp6
-rw-r--r--src/d/actor/d_a_npc_yamid.cpp2
-rw-r--r--src/d/actor/d_a_npc_ykm.cpp18
-rw-r--r--src/d/actor/d_a_npc_ykw.cpp20
-rw-r--r--src/d/actor/d_a_npc_zelda.cpp2
-rw-r--r--src/d/actor/d_a_obj_batta.cpp2
-rw-r--r--src/d/actor/d_a_obj_crvfence.cpp2
-rw-r--r--src/d/actor/d_a_obj_gomikabe.cpp2
-rw-r--r--src/d/actor/d_a_obj_gra2.cpp2
-rw-r--r--src/d/actor/d_a_obj_gra2_soldier.inc10
-rw-r--r--src/d/actor/d_a_obj_kag.cpp2
-rw-r--r--src/d/actor/d_a_obj_kamakiri.cpp2
-rw-r--r--src/d/actor/d_a_obj_kshutter.cpp2
-rw-r--r--src/d/actor/d_a_obj_scannon.cpp2
-rw-r--r--src/d/actor/d_a_obj_scannon_ten.cpp4
-rw-r--r--src/d/actor/d_a_obj_ten.cpp2
-rw-r--r--src/d/actor/d_a_obj_tombo.cpp2
-rw-r--r--src/d/d_com_static.cpp4
44 files changed, 1128 insertions, 1501 deletions
diff --git a/src/d/actor/d_a_cow.cpp b/src/d/actor/d_a_cow.cpp
index 2c5fe45003..d2c057621e 100644
--- a/src/d/actor/d_a_cow.cpp
+++ b/src/d/actor/d_a_cow.cpp
@@ -1957,7 +1957,7 @@ void daCow_c::executeCrazyWait() {
mAcchCir.SetWall(100.0f, 110.0f);
mTimer1 = 30;
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
}
}
@@ -2471,7 +2471,7 @@ void daCow_c::executeCrazyBack() {
}
break;
case daCow_c::Action_4:
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
if (fopAcM_CheckCondition(this, fopAcCnd_NODRAW_e)) {
fopAcM_delete(this);
}
@@ -2547,19 +2547,19 @@ void daCow_c::action_crazy() {
dComIfGoat_SetThrow(this);
mMode = daCow_c::Mode_1;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
break;
case daCow_c::Mode_1:
TICK_TIMER(mForgetCowPTimer);
TICK_TIMER(mTimer1);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
if (dComIfGp_event_runCheck() &&
strcmp(dComIfGp_getEventManager().getRunEventName(), "WILDGOAT") &&
strcmp(dComIfGp_getEventManager().getRunEventName(), "WILDGOAT_SUCCESS") &&
strcmp(dComIfGp_getEventManager().getRunEventName(), "WILDGOAT_FAILURE"))
{
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x4000);
}
switch (mCrazy) {
diff --git a/src/d/actor/d_a_e_bi.cpp b/src/d/actor/d_a_e_bi.cpp
index 1a5fbb8c4d..1cae415594 100644
--- a/src/d/actor/d_a_e_bi.cpp
+++ b/src/d/actor/d_a_e_bi.cpp
@@ -805,7 +805,7 @@ static int daE_BI_Execute(e_bi_class* i_this) {
a_this->attention_info.position.y += KREG_F(3) + 45.0f;
f32 fVar1 = 0.0f;
- if (dComIfGp_checkPlayerStatus0(0, fopAcM_STATUS_UNK_800000)) {
+ if (dComIfGp_checkPlayerStatus0(0, fopAcM_STATUS_UNK_0x80000)) {
fVar1 = 100.0f;
}
diff --git a/src/d/actor/d_a_e_dn.cpp b/src/d/actor/d_a_e_dn.cpp
index 969c24b7c8..6611af1ab0 100644
--- a/src/d/actor/d_a_e_dn.cpp
+++ b/src/d/actor/d_a_e_dn.cpp
@@ -3372,7 +3372,7 @@ static cPhs__Step daE_DN_Create(fopAc_ac_c* a_this) {
l_HIO.field_0x4 = -1;
}
- fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_0x100);
a_this->attention_info.flags = fopAc_AttnFlag_BATTLE_e;
fopAcM_SetMtx(a_this, i_this->mpModelMorf->getModel()->getBaseTRMtx());
fopAcM_SetMin(a_this, -200.0f, -200.0f, -200.0f);
@@ -3444,7 +3444,7 @@ static cPhs__Step daE_DN_Create(fopAc_ac_c* a_this) {
if ((i_this->field_0x5b6 == 13 || i_this->field_0x5b6 == 14) || (i_this->field_0x5b6 == 15 || i_this->field_0x5b6 == 16)) {
i_this->field_0x10d8 = 1;
i_this->mAction = ACTION_REG;
- fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_0x4000);
i_this->mAcchCir.SetWall(80.0f, 2.0f);
}
diff --git a/src/d/actor/d_a_e_fz.cpp b/src/d/actor/d_a_e_fz.cpp
index 8d97c62c28..bd08802607 100644
--- a/src/d/actor/d_a_e_fz.cpp
+++ b/src/d/actor/d_a_e_fz.cpp
@@ -993,7 +993,7 @@ s32 daE_FZ_c::create() {
speedF = rng + 4.0f;
field_0x6fc = rng + 4.0f;
if (field_0x714 == 1) {
- fopAcM_OnStatus(this,fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this,fopAcM_STATUS_UNK_0x4000);
}
}
diff --git a/src/d/actor/d_a_e_mf.cpp b/src/d/actor/d_a_e_mf.cpp
index 4560dccc87..05fe2eb811 100644
--- a/src/d/actor/d_a_e_mf.cpp
+++ b/src/d/actor/d_a_e_mf.cpp
@@ -3234,7 +3234,7 @@ static cPhs__Step daE_MF_Create(fopAc_ac_c* a_this) {
l_HIO.field_0x4 = -1;
}
- fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_0x100);
a_this->attention_info.flags = fopAc_AttnFlag_BATTLE_e;
fopAcM_SetMtx(a_this, i_this->mpModelMorf->getModel()->getBaseTRMtx());
fopAcM_SetMin(a_this, -200.0f, -200.0f, -200.0f);
@@ -3302,7 +3302,7 @@ static cPhs__Step daE_MF_Create(fopAc_ac_c* a_this) {
i_this->mAtInfo.mpSound = &i_this->mSound;
if (strcmp(dComIfGp_getStartStageName(), "D_MN09") == 0) {
- fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_0x4000);
}
c_start = 1;
diff --git a/src/d/actor/d_a_e_po.cpp b/src/d/actor/d_a_e_po.cpp
index 055e4cc761..3919daec07 100644
--- a/src/d/actor/d_a_e_po.cpp
+++ b/src/d/actor/d_a_e_po.cpp
@@ -1513,7 +1513,7 @@ static void e_po_limbering(e_po_class* i_this) {
dComIfGp_event_reset();
daPy_getPlayerActorClass()->cancelOriginalDemo();
mRollDemoFlag = 2;
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x4000);
i_this->field_0x74A[2] = 0;
i_this->mActionID = ACT_ROLL_MOVE;
i_this->mType = 0;
@@ -1571,7 +1571,7 @@ static void e_po_roll_move(e_po_class* i_this) {
if (mRollDemoFlag != 0) {
anm_init(i_this, ANM_WAIT02, 10.0f, 2, 1.0f);
i_this->field_0x74A[1] = 2;
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x4000);
} else {
anm_init(i_this, ANM_RUN_AFTER2, 10.0f, 2, 1.0f);
i_this->field_0x74A[1] = 20;
@@ -1602,7 +1602,7 @@ static void e_po_roll_move(e_po_class* i_this) {
if (mRollPlus != 0) {
if (i_this->mAnmID == ANM_AWAKE) {
anm_init(i_this, ANM_WAIT02, 10.0f, 2, 1.0f);
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x4000);
}
i_this->field_0x7D4 = 0.0f;
i_this->mType = 2;
diff --git a/src/d/actor/d_a_e_rd.cpp b/src/d/actor/d_a_e_rd.cpp
index d5b440a5a3..9d10f6fdca 100644
--- a/src/d/actor/d_a_e_rd.cpp
+++ b/src/d/actor/d_a_e_rd.cpp
@@ -7285,7 +7285,7 @@ static cPhs__Step daE_RD_Create(fopAc_ac_c* a_this) {
i_this->field_0x12a0 = 0;
}
- fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(a_this, fopAcM_STATUS_UNK_0x100);
a_this->attention_info.flags = fopAc_AttnFlag_BATTLE_e;
if (i_this->field_0x5b6 == 6) {
@@ -7333,7 +7333,7 @@ static cPhs__Step daE_RD_Create(fopAc_ac_c* a_this) {
i_this->mAction = ACTION_REG;
i_this->mMode = 0;
i_this->field_0xafb = 1;
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x100);
}
if (i_this->field_0x5b6 > 2) {
@@ -7445,10 +7445,10 @@ static cPhs__Step daE_RD_Create(fopAc_ac_c* a_this) {
if (data_80519200 != 0 || strcmp(dComIfGp_getStartStageName(), "F_SP115") == 0 ||
(strcmp(dComIfGp_getStartStageName(), "F_SP121") == 0 && fopAcM_GetRoomNo(a_this) == 0)) {
// Lake Hylia or Hyrule Field
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x4000);
}
} else if (i_this->mBossMode != 4) {
- fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(a_this, fopAcM_STATUS_UNK_0x4000);
}
if (strcmp(dComIfGp_getStartStageName(), "F_SP121") == 0 && fopAcM_GetRoomNo(a_this) == 0) {
diff --git a/src/d/actor/d_a_e_sm.cpp b/src/d/actor/d_a_e_sm.cpp
index 70359f3e51..c05d196e67 100644
--- a/src/d/actor/d_a_e_sm.cpp
+++ b/src/d/actor/d_a_e_sm.cpp
@@ -1641,7 +1641,7 @@ void daE_SM_c::CoreAction() {
}
field_0xa60.CrrPos(dComIfG_Bgsp());
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
}
}
@@ -1714,7 +1714,7 @@ int daE_SM_c::Execute() {
field_0x6d6--;
}
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
Action();
CoreAction();
cXyz i_effSize(1.0f, 1.0f, 1.0f);
diff --git a/src/d/actor/d_a_e_sm2.cpp b/src/d/actor/d_a_e_sm2.cpp
index 47d48c5236..d1d7fd07f2 100644
--- a/src/d/actor/d_a_e_sm2.cpp
+++ b/src/d/actor/d_a_e_sm2.cpp
@@ -955,7 +955,7 @@ static void damage_check(e_sm2_class* i_this) {
i_this->isPiece = TRUE;
actor->speed.y = 20.0f + BREG_F(6);
i_this->field_0xfd4 = 1;
- fopAcM_OffStatus(actor, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(actor, fopAcM_STATUS_UNK_0x100);
}
return;
}
diff --git a/src/d/actor/d_a_e_sw.cpp b/src/d/actor/d_a_e_sw.cpp
index 77911c334e..73370c6b91 100644
--- a/src/d/actor/d_a_e_sw.cpp
+++ b/src/d/actor/d_a_e_sw.cpp
@@ -1198,7 +1198,7 @@ static void* s_child_sub(void* i_actor, void* i_data) {
void daE_SW_c::executeMaster() {
camera_class* camera = dComIfGp_getCamera(dComIfGp_getPlayerCameraID(0));
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
attention_info.flags = 0;
field_0x98c.OffTgSetBit();
field_0x98c.OffCoSetBit();
diff --git a/src/d/actor/d_a_e_ww.cpp b/src/d/actor/d_a_e_ww.cpp
index 53c676837e..e9e4ec976f 100644
--- a/src/d/actor/d_a_e_ww.cpp
+++ b/src/d/actor/d_a_e_ww.cpp
@@ -682,7 +682,7 @@ void daE_WW_c::executeMaster() {
f32 temp_f30 = sp48.absXZ(current.pos);
cXyz sp3C;
cXyz sp30;
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x4000);
field_0x724 = 10;
switch (mActionMode) {
case ACTION_MODE_0:
@@ -814,7 +814,7 @@ void daE_WW_c::executeMaster() {
void daE_WW_c::executeWait() {
switch (mActionMode) {
case ACTION_MODE_0:
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
setBck(BCK_WW_APPEAR, J3DFrameCtrl::EMode_NONE, 0.0f, 1.0f);
mActionMode = ACTION_MODE_1;
break;
@@ -854,7 +854,7 @@ void daE_WW_c::executeWait() {
}
}
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x4000);
if (var_r28) {
setActionMode(ACTION_ATTACK, ACTION_MODE_0);
field_0x756 = 1;
@@ -1511,7 +1511,7 @@ void daE_WW_c::executeMoveOut() {
mActionMode = ACTION_MODE_11;
}
} else if (fVar1 > nREG_F(18) + 3000.0f + mDistCheckModifier) {
- if (fopAcM_CheckCondition(this, fopAcM_STATUS_UNK_000004)) {
+ if (fopAcM_CheckCondition(this, fopAcM_STATUS_UNK_0x4)) {
fopAcM_delete(this);
break;
}
diff --git a/src/d/actor/d_a_e_ymb.cpp b/src/d/actor/d_a_e_ymb.cpp
index b3f7ce1c8b..8b3e7dbdda 100644
--- a/src/d/actor/d_a_e_ymb.cpp
+++ b/src/d/actor/d_a_e_ymb.cpp
@@ -2112,7 +2112,7 @@ void daE_YMB_c::setCreateDrop() {
mDoMtx_stack_c::multVecZero(&sp1c);
drop->setPos(sp1c);
drop->setAppear();
- fopAcM_OnStatus(drop, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(drop, fopAcM_STATUS_UNK_0x4000);
}
field_0x721 = 1;
diff --git a/src/d/actor/d_a_e_zh.cpp b/src/d/actor/d_a_e_zh.cpp
index cdd60bf0d0..e8b90ebfd4 100644
--- a/src/d/actor/d_a_e_zh.cpp
+++ b/src/d/actor/d_a_e_zh.cpp
@@ -803,7 +803,7 @@ void daE_ZH_c::executeStartDemo() {
camera->mCamera.SetTrimSize(0);
dComIfGp_event_reset();
fopAcM_onSwitch(this, 0x12);
- fopAcM_OffStatus(this , fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this , fopAcM_STATUS_UNK_0x4000);
setActionMode(ACTION_EXECUTE_WAIT, 1);
}
break;
@@ -2326,7 +2326,7 @@ cPhs__Step daE_ZH_c::create() {
attention_info.flags &= ~fopAc_AttnFlag_BATTLE_e;
if (fopAcM_GetRoomNo(this) == 0x33 && !fopAcM_isSwitch(this, 18)) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
setActionMode(ACTION_EXECUTE_START_DEMO, 0);
} else {
setActionMode(ACTION_EXECUTE_WAIT, 1);
diff --git a/src/d/actor/d_a_npc.cpp b/src/d/actor/d_a_npc.cpp
index 8b8c7d51ab..3383c1b0f9 100644
--- a/src/d/actor/d_a_npc.cpp
+++ b/src/d/actor/d_a_npc.cpp
@@ -2605,7 +2605,7 @@ void daNpcT_c::setHitodamaPrtcl() {
/* 8014C200-8014C384 146B40 0184+00 0/0 0/0 2/2 .text
* daNpcT_chkActorInScreen__FP10fopAc_ac_cfffffffi */
-bool daNpcT_chkActorInScreen(fopAc_ac_c* i_ActorP, f32 param_1, f32 param_2, f32 param_3,
+BOOL daNpcT_chkActorInScreen(fopAc_ac_c* i_ActorP, f32 param_1, f32 param_2, f32 param_3,
f32 param_4, f32 param_5, f32 param_6, f32 param_7, int param_8) {
cXyz proj;
cXyz pos_array[8];
diff --git a/src/d/actor/d_a_npc_coach.cpp b/src/d/actor/d_a_npc_coach.cpp
index 97157fcf51..19c9472995 100644
--- a/src/d/actor/d_a_npc_coach.cpp
+++ b/src/d/actor/d_a_npc_coach.cpp
@@ -795,7 +795,7 @@ void daNpcCoach_c::checkCoachDamage() {
((daCoach2D_c*)fpcM_SearchByID(field_0x2554))->setHitCount((field_0x24c4 / (attr().damage_durability / 20)));
if (field_0x24c4 >= attr().damage_durability) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
mChHorse.field_0x784 = 0.0f;
daNpcTheB_c* telmaB_p = (daNpcTheB_c*)fpcM_SearchByID(parentActorID);
@@ -1989,7 +1989,7 @@ cPhs__Step daNpcCoach_c::create() {
void daNpcCoach_c::create_init() {
// NONMATCHING
if (strcmp(dComIfGp_getStartStageName(), "F_SP123") == 0) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
fopAcM_setStageLayer(this);
diff --git a/src/d/actor/d_a_npc_kakashi.cpp b/src/d/actor/d_a_npc_kakashi.cpp
index 479302011b..067d6e1829 100644
--- a/src/d/actor/d_a_npc_kakashi.cpp
+++ b/src/d/actor/d_a_npc_kakashi.cpp
@@ -6,1601 +6,1228 @@
#include "d/dolzel_rel.h"
#include "d/actor/d_a_npc_kakashi.h"
-#include "dol2asm.h"
-
-//
-// Forward References:
-//
-
-extern "C" void __dt__15daNpc_Kakashi_cFv();
-extern "C" void create__15daNpc_Kakashi_cFv();
-extern "C" void CreateHeap__15daNpc_Kakashi_cFv();
-extern "C" void Delete__15daNpc_Kakashi_cFv();
-extern "C" void Execute__15daNpc_Kakashi_cFv();
-extern "C" void Draw__15daNpc_Kakashi_cFv();
-extern "C" void ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel();
-extern "C" void createHeapCallBack__15daNpc_Kakashi_cFP10fopAc_ac_c();
-extern "C" void ctrlJointCallBack__15daNpc_Kakashi_cFP8J3DJointi();
-extern "C" void getType__15daNpc_Kakashi_cFv();
-extern "C" void isDelete__15daNpc_Kakashi_cFv();
-extern "C" void reset__15daNpc_Kakashi_cFv();
-extern "C" void setParam__15daNpc_Kakashi_cFv();
-extern "C" void srchActors__15daNpc_Kakashi_cFv();
-extern "C" void checkChangeEvt__15daNpc_Kakashi_cFv();
-extern "C" void evtTalk__15daNpc_Kakashi_cFv();
-extern "C" void evtEndProc__15daNpc_Kakashi_cFv();
-extern "C" void evtCutProc__15daNpc_Kakashi_cFv();
-extern "C" void action__15daNpc_Kakashi_cFv();
-extern "C" void beforeMove__15daNpc_Kakashi_cFv();
-extern "C" void setAttnPos__15daNpc_Kakashi_cFv();
-extern "C" void setCollision__15daNpc_Kakashi_cFv();
-extern "C" bool drawDbgInfo__15daNpc_Kakashi_cFv();
-extern "C" void selectAction__15daNpc_Kakashi_cFv();
-extern "C" void chkAction__15daNpc_Kakashi_cFM15daNpc_Kakashi_cFPCvPvPv_i();
-extern "C" void setAction__15daNpc_Kakashi_cFM15daNpc_Kakashi_cFPCvPvPv_i();
-extern "C" void hitChk__15daNpc_Kakashi_cFv();
-extern "C" void setStaggerParam__15daNpc_Kakashi_cFP10fopAc_ac_c();
-extern "C" void setPrtcls__15daNpc_Kakashi_cFi();
-extern "C" void judgeSwdTutorial__15daNpc_Kakashi_cFv();
-extern "C" void cutSwdTutorial__15daNpc_Kakashi_cFi();
-extern "C" void cutGetWoodSwd__15daNpc_Kakashi_cFi();
-extern "C" void cutMarosWhisper__15daNpc_Kakashi_cFi();
-extern "C" void wait__15daNpc_Kakashi_cFPv();
-extern "C" void swdTutorial__15daNpc_Kakashi_cFPv();
-extern "C" void talk__15daNpc_Kakashi_cFPv();
-extern "C" static void daNpc_Kakashi_Create__FPv();
-extern "C" static void daNpc_Kakashi_Delete__FPv();
-extern "C" static void daNpc_Kakashi_Execute__FPv();
-extern "C" static void daNpc_Kakashi_Draw__FPv();
-extern "C" static bool daNpc_Kakashi_IsDelete__FPv();
-extern "C" void __dt__10cCcD_GSttsFv();
-extern "C" void __dt__8daNpcT_cFv();
-extern "C" void __dt__4cXyzFv();
-extern "C" void __dt__8dCcD_SphFv();
-extern "C" void __dt__5csXyzFv();
-extern "C" void
-__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc();
-extern "C" void __dt__15daNpcT_JntAnm_cFv();
-extern "C" void __ct__4cXyzFv();
-extern "C" void __dt__18daNpcT_ActorMngr_cFv();
-extern "C" void __dt__22daNpcT_MotionSeqMngr_cFv();
-extern "C" void __dt__12dBgS_AcchCirFv();
-extern "C" void __dt__10dCcD_GSttsFv();
-extern "C" void __dt__12dBgS_ObjAcchFv();
-extern "C" void __dt__12J3DFrameCtrlFv();
-extern "C" void ctrlSubFaceMotion__8daNpcT_cFi();
-extern "C" bool checkChangeJoint__8daNpcT_cFi();
-extern "C" bool checkRemoveJoint__8daNpcT_cFi();
-extern "C" s32 getBackboneJointNo__8daNpcT_cFv();
-extern "C" s32 getNeckJointNo__8daNpcT_cFv();
-extern "C" s32 getHeadJointNo__8daNpcT_cFv();
-extern "C" s32 getFootLJointNo__8daNpcT_cFv();
-extern "C" s32 getFootRJointNo__8daNpcT_cFv();
-extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv();
-extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv();
-extern "C" u16 getEyeballMaterialNo__8daNpcT_cFv();
-extern "C" void afterJntAnm__8daNpcT_cFi();
-extern "C" void setAfterTalkMotion__8daNpcT_cFv();
-extern "C" void afterMoved__8daNpcT_cFv();
-extern "C" bool chkXYItems__8daNpcT_cFv();
-extern "C" void decTmr__8daNpcT_cFv();
-extern "C" void drawOtherMdl__8daNpcT_cFv();
-extern "C" void drawGhost__8daNpcT_cFv();
-extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi();
-extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi();
-extern "C" void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c();
-extern "C" void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c();
-extern "C" void changeAnm__8daNpcT_cFPiPi();
-extern "C" void changeBck__8daNpcT_cFPiPi();
-extern "C" void changeBtp__8daNpcT_cFPiPi();
-extern "C" void changeBtk__8daNpcT_cFPiPi();
-extern "C" void func_8054E734(void* _this, s16*);
-extern "C" void __sinit_d_a_npc_kakashi_cpp();
-extern "C" void
-__ct__15daNpc_Kakashi_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc();
-extern "C" void __ct__5csXyzFv();
-extern "C" void __ct__8dCcD_SphFv();
-extern "C" void __dt__8cM3dGSphFv();
-extern "C" void __dt__8cM3dGCylFv();
-extern "C" void __dt__8cM3dGAabFv();
-extern "C" void __dt__21daNpc_Kakashi_Param_cFv();
-extern "C" static void func_8054EAA0();
-extern "C" static void func_8054EAA8();
-extern "C" u8 const m__21daNpc_Kakashi_Param_c[152];
-extern "C" extern char const* const d_a_npc_kakashi__stringBase0;
-extern "C" void* mCutNameList__15daNpc_Kakashi_c[4];
-extern "C" u8 mCutList__15daNpc_Kakashi_c[48];
-
-//
-// External References:
-//
-
-extern "C" void mDoMtx_YrotS__FPA4_fs();
-extern "C" void mDoMtx_YrotM__FPA4_fs();
-extern "C" void mDoMtx_ZrotM__FPA4_fs();
-extern "C" void scaleM__14mDoMtx_stack_cFfff();
-extern "C" void
-__ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl();
-extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv();
-extern "C" void __ct__10fopAc_ac_cFv();
-extern "C" void __dt__10fopAc_ac_cFv();
-extern "C" void fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i();
-extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
-extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
-extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c();
-extern "C" void dComIfGp_getReverb__Fi();
-extern "C" void dComIfGs_wolfeye_effect_check__Fv();
-extern "C" void daNpcKakashi_chkSwdTutorialStage__Fv();
-extern "C" void daNpcKakashi_setSwdTutorialStep__FUc();
-extern "C" void daNpcKakashi_getSwdTutorialStep__Fv();
-extern "C" void daNpcKakashi_setSwdTutorialResult__Fb();
-extern "C" void daNpcKakashi_getSuccessCount__Fv();
-extern "C" void daNpcKakashi_incSuccessCount__Fv();
-extern "C" void daNpcKakashi_clrSuccessCount__Fv();
-extern "C" void setEventReg__11dSv_event_cFUsUc();
-extern "C" void getEventReg__11dSv_event_cCFUs();
-extern "C" void onSwitch__10dSv_info_cFii();
-extern "C" void isSwitch__10dSv_info_cCFii();
-extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
-extern "C" void reset__14dEvt_control_cFv();
-extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci();
-extern "C" void getIsAddvance__16dEvent_manager_cFi();
-extern "C" void getMyActIdx__16dEvent_manager_cFiPCPCciii();
-extern "C" void getMySubstanceP__16dEvent_manager_cFiPCci();
-extern "C" void cutEnd__16dEvent_manager_cFi();
-extern "C" void
-set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
-extern "C" void GetLockonList__12dAttention_cFl();
-extern "C" void LockonTruth__12dAttention_cFv();
-extern "C" void getActor__10dAttList_cFv();
-extern "C" void __ct__12dBgS_AcchCirFv();
-extern "C" void SetWallR__12dBgS_AcchCirFf();
-extern "C" void __dt__9dBgS_AcchFv();
-extern "C" void __ct__9dBgS_AcchFv();
-extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz();
-extern "C" void CrrPos__9dBgS_AcchFR4dBgS();
-extern "C" void __ct__11dBgS_GndChkFv();
-extern "C" void __dt__11dBgS_GndChkFv();
-extern "C" void __ct__11dBgS_LinChkFv();
-extern "C" void __dt__11dBgS_LinChkFv();
-extern "C" void SetObj__16dBgS_PolyPassChkFv();
-extern "C" void GetAc__22dCcD_GAtTgCoCommonBaseFv();
-extern "C" void __ct__10dCcD_GSttsFv();
-extern "C" void Move__10dCcD_GSttsFv();
-extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
-extern "C" void __ct__12dCcD_GObjInfFv();
-extern "C" void __dt__12dCcD_GObjInfFv();
-extern "C" void ChkTgHit__12dCcD_GObjInfFv();
-extern "C" void GetTgHitObj__12dCcD_GObjInfFv();
-extern "C" void getHitSeID__12dCcD_GObjInfFUci();
-extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl();
-extern "C" void Set__8dCcD_SphFRC11dCcD_SrcSph();
-extern "C" void initialize__18daNpcT_ActorMngr_cFv();
-extern "C" void initialize__15daNpcT_MatAnm_cFv();
-extern "C" void initialize__22daNpcT_MotionSeqMngr_cFv();
-extern "C" void initialize__15daNpcT_JntAnm_cFv();
-extern "C" void tgHitCallBack__8daNpcT_cFP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf();
-extern "C" void loadRes__8daNpcT_cFPCScPPCc();
-extern "C" void deleteRes__8daNpcT_cFPCScPPCc();
-extern "C" void execute__8daNpcT_cFv();
-extern "C" void draw__8daNpcT_cFiifP11_GXColorS10fiii();
-extern "C" void setEnvTevColor__8daNpcT_cFv();
-extern "C" void setRoomNo__8daNpcT_cFv();
-extern "C" void ctrlBtk__8daNpcT_cFv();
-extern "C" void setMtx__8daNpcT_cFv();
-extern "C" void evtProc__8daNpcT_cFv();
-extern "C" void setFootPos__8daNpcT_cFv();
-extern "C" void setFootPrtcl__8daNpcT_cFP4cXyzff();
-extern "C" bool checkCullDraw__8daNpcT_cFv();
-extern "C" void twilight__8daNpcT_cFv();
-extern "C" void evtOrder__8daNpcT_cFv();
-extern "C" void evtChange__8daNpcT_cFv();
-extern "C" void clrParam__8daNpcT_cFv();
-extern "C" void setMotionAnm__8daNpcT_cFifi();
-extern "C" void setAngle__8daNpcT_cF5csXyz();
-extern "C" void setDamage__8daNpcT_cFiii();
-extern "C" void initTalk__8daNpcT_cFiPP10fopAc_ac_c();
-extern "C" void talkProc__8daNpcT_cFPiiPP10fopAc_ac_ci();
-extern "C" void daNpcT_chkActorInScreen__FP10fopAc_ac_cfffffffi();
-extern "C" void daNpcT_chkEvtBit__FUl();
-extern "C" void daNpcT_offTmpBit__FUl();
-extern "C" void __ct__10dMsgFlow_cFv();
-extern "C" void __dt__10dMsgFlow_cFv();
-extern "C" void Set__4cCcSFP8cCcD_Obj();
-extern "C" void cM_rndF__Ff();
-extern "C" void __ct__11cBgS_GndChkFv();
-extern "C" void __dt__11cBgS_GndChkFv();
-extern "C" void __dt__13cBgS_PolyInfoFv();
-extern "C" void __dt__8cM3dGCirFv();
-extern "C" void SetC__8cM3dGCylFRC4cXyz();
-extern "C" void SetH__8cM3dGCylFf();
-extern "C" void SetR__8cM3dGCylFf();
-extern "C" void SetC__8cM3dGSphFRC4cXyz();
-extern "C" void SetR__8cM3dGSphFf();
-extern "C" void cLib_addCalc2__FPffff();
-extern "C" void __dt__14Z2SoundObjBaseFv();
-extern "C" void deleteObject__14Z2SoundObjBaseFv();
-extern "C" void startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase();
-extern "C" void __ct__16Z2SoundObjSimpleFv();
-extern "C" void __ct__10Z2CreatureFv();
-extern "C" void __dt__10Z2CreatureFv();
-extern "C" void* __nw__FUl();
-extern "C" void __dl__FPv();
-extern "C" void init__12J3DFrameCtrlFs();
-extern "C" void __destroy_arr();
-extern "C" void __construct_array();
-extern "C" void __ptmf_test();
-extern "C" void __ptmf_cmpr();
-extern "C" void __ptmf_scall();
-extern "C" void _savegpr_22();
-extern "C" void _savegpr_24();
-extern "C" void _savegpr_25();
-extern "C" void _savegpr_26();
-extern "C" void _savegpr_27();
-extern "C" void _savegpr_28();
-extern "C" void _savegpr_29();
-extern "C" void _restgpr_22();
-extern "C" void _restgpr_24();
-extern "C" void _restgpr_25();
-extern "C" void _restgpr_26();
-extern "C" void _restgpr_27();
-extern "C" void _restgpr_28();
-extern "C" void _restgpr_29();
-extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */];
-extern "C" extern void* __vt__8dCcD_Sph[36];
-extern "C" extern void* __vt__8dCcD_Cyl[36];
-extern "C" extern void* __vt__9dCcD_Stts[11];
-extern "C" u8 mCcDCyl__8daNpcT_c[68];
-extern "C" u8 mCcDSph__8daNpcT_c[64];
-extern "C" extern void* __vt__8daNpcT_c[49];
-extern "C" extern void* __vt__12cCcD_SphAttr[25];
-extern "C" extern void* __vt__12cCcD_CylAttr[25];
-extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
-extern "C" extern void* __vt__9cCcD_Stts[8];
-extern "C" extern void* __vt__16Z2SoundObjSimple[8];
-extern "C" u8 now__14mDoMtx_stack_c[48];
-extern "C" u8 mCurrentMtx__6J3DSys[48];
-extern "C" u8 sincosTable___5JMath[65536];
-extern "C" extern u8 pauseTimer__9dScnPly_c[4];
-extern "C" void __register_global_object();
-
-//
-// Declarations:
-//
-
-/* ############################################################################################## */
-/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8054EBD0 = "";
-SECTION_DEAD static char const* const stringBase_8054EBD1 = "NO_RESPONSE";
-SECTION_DEAD static char const* const stringBase_8054EBDD = "MAROS_WHISPER";
-SECTION_DEAD static char const* const stringBase_8054EBEB = "SWDTUTORIAL_DESCRIPTION";
-SECTION_DEAD static char const* const stringBase_8054EC03 = "SWDTUTORIAL_YOKOGIRI_FAILURE";
-SECTION_DEAD static char const* const stringBase_8054EC20 = "SWDTUTORIAL_YOKOGIRI_CLEAR";
-SECTION_DEAD static char const* const stringBase_8054EC3B = "SWDTUTORIAL_TATEGIRI_SUCCESS";
-SECTION_DEAD static char const* const stringBase_8054EC58 = "SWDTUTORIAL_TATEGIRI_FAILURE";
-SECTION_DEAD static char const* const stringBase_8054EC75 = "SWDTUTORIAL_TATEGIRI_FAILURE2";
-SECTION_DEAD static char const* const stringBase_8054EC93 = "SWDTUTORIAL_TATEGIRI_CLEAR";
-SECTION_DEAD static char const* const stringBase_8054ECAE = "SWDTUTORIAL_TUKI_FAILURE";
-SECTION_DEAD static char const* const stringBase_8054ECC7 = "SWDTUTORIAL_TUKI_CLEAR";
-SECTION_DEAD static char const* const stringBase_8054ECDE = "SWDTUTORIAL_KAITENGIRI_FAILURE";
-SECTION_DEAD static char const* const stringBase_8054ECFD = "SWDTUTORIAL_KAITENGIRI_CLEAR";
-SECTION_DEAD static char const* const stringBase_8054ED1A = "SWDTUTORIAL_JUMPGIRI_FAILURE";
-SECTION_DEAD static char const* const stringBase_8054ED37 = "SWDTUTORIAL_JUMPGIRI_CLEAR";
-SECTION_DEAD static char const* const stringBase_8054ED52 = "SWDTUTORIAL_JUMPGIRI_CLEAR2";
-SECTION_DEAD static char const* const stringBase_8054ED6E = "Kakashi";
-SECTION_DEAD static char const* const stringBase_8054ED76 = "SWDTUTORIAL";
-SECTION_DEAD static char const* const stringBase_8054ED82 = "GET_WOODSWD";
-#pragma pop
+#include "d/d_com_static.h"
+#include "d/d_s_play.h"
+#include "Z2AudioLib/Z2Instances.h"
/* 8054EDBC-8054EDD4 000020 0018+00 1/1 0/0 0/0 .data l_bmdData */
-SECTION_DATA static u8 l_bmdData[24] = {
- 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01,
+static int l_bmdData[3][2] = {
+ {10, 1},
+ {8, 1},
+ {9, 1},
};
/* 8054EDD4-8054EE7C -00001 00A8+00 0/1 0/0 0/0 .data l_evtList */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* l_evtList[42] = {
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)NULL,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x1),
- (void*)NULL,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xD),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x1B),
- (void*)0x00000001,
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x33),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x50),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x6B),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x88),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xA5),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xC3),
- (void*)0x00000001,
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xDE),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xF7),
- (void*)0x00000001,
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x10E),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x12D),
- (void*)0x00000001,
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x14A),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x167),
- (void*)0x00000001,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x182),
- (void*)0x00000001,
+static daNpcT_evtData_c l_evtList[21] = {
+ {"", 0},
+ {"NO_RESPONSE", 0},
+ {"MAROS_WHISPER", 1},
+ {"SWDTUTORIAL_DESCRIPTION", 1},
+ {"", 1},
+ {"SWDTUTORIAL_YOKOGIRI_FAILURE", 1},
+ {"SWDTUTORIAL_YOKOGIRI_CLEAR", 1},
+ {"SWDTUTORIAL_TATEGIRI_SUCCESS", 1},
+ {"SWDTUTORIAL_TATEGIRI_FAILURE", 1},
+ {"SWDTUTORIAL_TATEGIRI_FAILURE2", 1},
+ {"SWDTUTORIAL_TATEGIRI_CLEAR", 1},
+ {"", 1},
+ {"SWDTUTORIAL_TUKI_FAILURE", 1},
+ {"SWDTUTORIAL_TUKI_CLEAR", 1},
+ {"", 1},
+ {"SWDTUTORIAL_KAITENGIRI_FAILURE", 1},
+ {"SWDTUTORIAL_KAITENGIRI_CLEAR", 1},
+ {"", 1},
+ {"SWDTUTORIAL_JUMPGIRI_FAILURE", 1},
+ {"SWDTUTORIAL_JUMPGIRI_CLEAR", 1},
+ {"SWDTUTORIAL_JUMPGIRI_CLEAR2", 1},
};
-#pragma pop
/* 8054EE7C-8054EE84 -00001 0008+00 2/3 0/0 0/0 .data l_resNameList */
-SECTION_DATA static void* l_resNameList[2] = {
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x19E),
+static char* l_resNameList[2] = {
+ "",
+ "Kakashi",
};
/* 8054EE84-8054EE88 0000E8 0002+02 1/0 0/0 0/0 .data l_loadResPtrn0 */
-SECTION_DATA static u16 l_loadResPtrn0[1 + 1 /* padding */] = {
- 0x01FF,
- /* padding */
- 0x0000,
-};
+static s8 l_loadResPtrn0[] = {1, -1};
/* 8054EE88-8054EEA0 -00001 0018+00 1/2 0/0 0/0 .data l_loadResPtrnList */
-SECTION_DATA static void* l_loadResPtrnList[6] = {
- (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn0,
- (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn0, (void*)NULL,
+static s8* l_loadResPtrnList[6] = {
+ l_loadResPtrn0, l_loadResPtrn0, l_loadResPtrn0,
+ l_loadResPtrn0, l_loadResPtrn0, NULL,
};
/* 8054EEA0-8054EEBC 000104 001C+00 0/1 0/0 0/0 .data l_faceMotionAnmData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_faceMotionAnmData[28] = {
- 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
- 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[1] = {
+ {-1, 0, 0, -1, 0, 0, 0},
};
-#pragma pop
/* 8054EEBC-8054EED8 000120 001C+00 0/1 0/0 0/0 .data l_motionAnmData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_motionAnmData[28] = {
- 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
- 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+static daNpcT_motionAnmData_c l_motionAnmData[1] = {
+ {-1, 0, 0, -1, 0, 0, 0, 0},
};
-#pragma pop
/* 8054EED8-8054EEE8 00013C 0010+00 0/1 0/0 0/0 .data l_faceMotionSequenceData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_faceMotionSequenceData[16] = {
- 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_faceMotionSequenceData[4] = {
+ {-1, 0, 0},
+ {-1, 0, 0},
+ {-1, 0, 0},
+ {-1, 0, 0},
};
-#pragma pop
/* 8054EEE8-8054EEF8 00014C 0010+00 0/1 0/0 0/0 .data l_motionSequenceData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_motionSequenceData[16] = {
- 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_motionSequenceData[4] = {
+ {-1, 0, 0},
+ {-1, 0, 0},
+ {-1, 0, 0},
+ {-1, 0, 0},
};
-#pragma pop
/* 8054EEF8-8054EF08 -00001 0010+00 1/1 0/0 0/0 .data mCutNameList__15daNpc_Kakashi_c */
-SECTION_DATA void* daNpc_Kakashi_c::mCutNameList[4] = {
- (void*)&d_a_npc_kakashi__stringBase0,
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x1A6),
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0x1B2),
- (void*)(((char*)&d_a_npc_kakashi__stringBase0) + 0xD),
-};
-
-/* 8054EF08-8054EF14 -00001 000C+00 0/1 0/0 0/0 .data @3832 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3832[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutSwdTutorial__15daNpc_Kakashi_cFi,
-};
-#pragma pop
-
-/* 8054EF14-8054EF20 -00001 000C+00 0/1 0/0 0/0 .data @3833 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3833[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutGetWoodSwd__15daNpc_Kakashi_cFi,
+char* daNpc_Kakashi_c::mCutNameList[4] = {
+ "",
+ "SWDTUTORIAL",
+ "GET_WOODSWD",
+ "MAROS_WHISPER",
};
-#pragma pop
-
-/* 8054EF20-8054EF2C -00001 000C+00 0/1 0/0 0/0 .data @3834 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3834[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutMarosWhisper__15daNpc_Kakashi_cFi,
-};
-#pragma pop
/* 8054EF2C-8054EF5C 000190 0030+00 1/2 0/0 0/0 .data mCutList__15daNpc_Kakashi_c */
-SECTION_DATA u8 daNpc_Kakashi_c::mCutList[48] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+int (daNpc_Kakashi_c::*daNpc_Kakashi_c::mCutList[])(int) = {
+ NULL,
+ &daNpc_Kakashi_c::cutSwdTutorial,
+ &daNpc_Kakashi_c::cutGetWoodSwd,
+ &daNpc_Kakashi_c::cutMarosWhisper,
};
-/* 8054EF5C-8054EF7C -00001 0020+00 1/1 0/0 0/0 .data @4460 */
-SECTION_DATA static void* lit_4460[8] = {
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0x5C),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0x80),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0x114),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0xA4),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0xD0),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0xD0),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0x114),
- (void*)(((char*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel) + 0xF4),
-};
+/* 8054B36C-8054B4E8 0000EC 017C+00 1/0 0/0 0/0 .text __dt__15daNpc_Kakashi_cFv */
+daNpc_Kakashi_c::~daNpc_Kakashi_c() {
+ OS_REPORT("|%06d:%x|daNpc_Kakashi_c -> デストラクト\n", g_Counter.mCounter0, this);
-/* 8054EF7C-8054EF88 -00001 000C+00 1/1 0/0 0/0 .data @4583 */
-SECTION_DATA static void* lit_4583[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__15daNpc_Kakashi_cFPv,
-};
+ if (heap != NULL) {
+ mpMorf[0]->stopZelAnime();
+ mSound.deleteObject();
+ }
-/* 8054EF88-8054EF94 -00001 000C+00 1/1 0/0 0/0 .data @4607 */
-SECTION_DATA static void* lit_4607[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__15daNpc_Kakashi_cFPv,
-};
+ deleteRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
+}
-/* 8054EF94-8054EFA0 -00001 000C+00 1/1 0/0 0/0 .data @4612 */
-SECTION_DATA static void* lit_4612[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__15daNpc_Kakashi_cFPv,
+/* 8054EAC4-8054EB5C 000000 0098+00 7/7 0/0 0/0 .rodata m__21daNpc_Kakashi_Param_c */
+const daNpc_Kakashi_HIOParam daNpc_Kakashi_Param_c::m = {
+ 190.0f,
+ -6.0f,
+ 1.0f,
+ 700.0f,
+ 255.0f,
+ 40.0f,
+ 0.0f,
+ 30.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 30.0f,
+ 30.0f,
+ 27.0f,
};
-/* 8054EFA0-8054EFAC -00001 000C+00 0/1 0/0 0/0 .data @4847 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_4847[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)swdTutorial__15daNpc_Kakashi_cFPv,
-};
-#pragma pop
-
-/* 8054EFAC-8054EFB8 -00001 000C+00 0/1 0/0 0/0 .data @4849 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_4849[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)wait__15daNpc_Kakashi_cFPv,
-};
-#pragma pop
-
-/* 8054EFB8-8054EFC4 -00001 000C+00 0/1 0/0 0/0 .data @4854 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_4854[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)wait__15daNpc_Kakashi_cFPv,
-};
-#pragma pop
-
-/* 8054EFC4-8054EFD0 -00001 000C+00 0/1 0/0 0/0 .data @4856 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_4856[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)wait__15daNpc_Kakashi_cFPv,
-};
-#pragma pop
+/* 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,
+ l_faceMotionSequenceData, 4, l_motionSequenceData, 4,
+ l_evtList, l_resNameList);
-/* 8054EFD0-8054EFDC -00001 000C+00 1/1 0/0 0/0 .data @5060 */
-SECTION_DATA static void* lit_5060[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)swdTutorial__15daNpc_Kakashi_cFPv,
-};
+ mType = getType();
+ mFlowNodeNo = getFlowNodeNo();
+ mTwilight = FALSE;
-/* 8054EFDC-8054EFFC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kakashi_MethodTable */
-static actor_method_class daNpc_Kakashi_MethodTable = {
- (process_method_func)daNpc_Kakashi_Create__FPv,
- (process_method_func)daNpc_Kakashi_Delete__FPv,
- (process_method_func)daNpc_Kakashi_Execute__FPv,
- (process_method_func)daNpc_Kakashi_IsDelete__FPv,
- (process_method_func)daNpc_Kakashi_Draw__FPv,
-};
+ int phase_state = loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
+ if (phase_state == cPhs_COMPLEATE_e) {
+ OS_REPORT("\t(%s:%d) flowNo:%d, SWBit:%02x, SWBit2:%02x<%08x> ",
+ fopAcM_getProcNameString(this), mType, mFlowNodeNo, getBitSW(), getBitSW2(), fopAcM_GetParam(this), fopAcM_GetRoomNo(this));
-/* 8054EFFC-8054F02C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KAKASHI */
-extern actor_process_profile_definition g_profile_NPC_KAKASHI = {
- fpcLy_CURRENT_e, // mLayerID
- 7, // mListID
- fpcPi_CURRENT_e, // mListPrio
- PROC_NPC_KAKASHI, // mProcName
- &g_fpcLf_Method.base, // sub_method
- sizeof(daNpc_Kakashi_c), // mSize
- 0, // mSizeOther
- 0, // mParameters
- &g_fopAc_Method.base, // sub_method
- 319, // mPriority
- &daNpc_Kakashi_MethodTable, // sub_method
- 0x00044000, // mStatus
- fopAc_NPC_e, // mActorType
- fopAc_CULLBOX_CUSTOM_e, // cullType
-};
-
-/* 8054F02C-8054F038 000290 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */
-SECTION_DATA extern void* __vt__8cM3dGSph[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGSphFv,
-};
+ if (isDelete()) {
+ OS_REPORT("===>isDelete:TRUE\n");
+ return cPhs_ERROR_e;
+ }
-/* 8054F038-8054F044 00029C 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */
-SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__12J3DFrameCtrlFv,
-};
-
-/* 8054F044-8054F068 0002A8 0024+00 3/3 0/0 0/0 .data __vt__12dBgS_ObjAcch */
-SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__12dBgS_ObjAcchFv,
- (void*)NULL,
- (void*)NULL,
- (void*)func_8054EAA8,
- (void*)NULL,
- (void*)NULL,
- (void*)func_8054EAA0,
-};
+ OS_REPORT("\n");
-/* 8054F068-8054F074 0002CC 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */
-SECTION_DATA extern void* __vt__12dBgS_AcchCir[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__12dBgS_AcchCirFv,
-};
+ if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0xDA0)) {
+ return cPhs_ERROR_e;
+ }
-/* 8054F074-8054F080 0002D8 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */
-SECTION_DATA extern void* __vt__10cCcD_GStts[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__10cCcD_GSttsFv,
-};
+ J3DModelData* modelData = mpMorf[0]->getModel()->getModelData();
+ fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx());
+ fopAcM_setCullSizeBox(this, -300.0f, -50.0f, -300.0f, 300.0f, 450.0f, 300.0f);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
+
+ mSound.init(&current.pos, 3);
-/* 8054F080-8054F08C 0002E4 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */
-SECTION_DATA extern void* __vt__10dCcD_GStts[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__10dCcD_GSttsFv,
-};
+ reset();
-/* 8054F08C-8054F098 0002F0 000C+00 3/3 0/0 0/0 .data __vt__22daNpcT_MotionSeqMngr_c */
-SECTION_DATA extern void* __vt__22daNpcT_MotionSeqMngr_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__22daNpcT_MotionSeqMngr_cFv,
-};
+ mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this), fopAcM_GetShapeAngle_p(this));
+
+ mCcStts.Init(daNpc_Kakashi_Param_c::m.common.weight, 0, this);
+ for (int i = 0; i < 3; i++) {
+ mCcSph[i].Set(mCcDSph);
+ mCcSph[i].SetStts(&mCcStts);
+ }
-/* 8054F098-8054F0A4 0002FC 000C+00 4/4 0/0 0/0 .data __vt__18daNpcT_ActorMngr_c */
-SECTION_DATA extern void* __vt__18daNpcT_ActorMngr_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__18daNpcT_ActorMngr_cFv,
-};
+ mCcCyl.Set(mCcDCyl);
+ mCcCyl.SetStts(&mCcStts);
+ mCcCyl.SetTgHitCallback(tgHitCallBack);
-/* 8054F0A4-8054F0B0 000308 000C+00 3/3 0/0 0/0 .data __vt__15daNpcT_JntAnm_c */
-SECTION_DATA extern void* __vt__15daNpcT_JntAnm_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__15daNpcT_JntAnm_cFv,
-};
+ mAcch.CrrPos(dComIfG_Bgsp());
+ mGndChk = mAcch.m_gnd;
+ mGroundH = mAcch.GetGroundH();
-/* 8054F0B0-8054F0BC 000314 000C+00 5/5 0/0 0/0 .data __vt__8cM3dGAab */
-SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGAabFv,
-};
+ if (mGroundH != -1000000000.0f) {
+ setEnvTevColor();
+ setRoomNo();
+ }
-/* 8054F0BC-8054F0C8 000320 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGCyl */
-SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGCylFv,
-};
+ mCreating = TRUE;
+ Execute();
+ mCreating = FALSE;
+ }
-/* 8054F0C8-8054F18C 00032C 00C4+00 2/2 0/0 0/0 .data __vt__15daNpc_Kakashi_c */
-SECTION_DATA extern void* __vt__15daNpc_Kakashi_c[49] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__15daNpc_Kakashi_cFv,
- (void*)ctrlBtk__8daNpcT_cFv,
- (void*)ctrlSubFaceMotion__8daNpcT_cFi,
- (void*)checkChangeJoint__8daNpcT_cFi,
- (void*)checkRemoveJoint__8daNpcT_cFi,
- (void*)getBackboneJointNo__8daNpcT_cFv,
- (void*)getNeckJointNo__8daNpcT_cFv,
- (void*)getHeadJointNo__8daNpcT_cFv,
- (void*)getFootLJointNo__8daNpcT_cFv,
- (void*)getFootRJointNo__8daNpcT_cFv,
- (void*)getEyeballLMaterialNo__8daNpcT_cFv,
- (void*)getEyeballRMaterialNo__8daNpcT_cFv,
- (void*)getEyeballMaterialNo__8daNpcT_cFv,
- (void*)ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel,
- (void*)afterJntAnm__8daNpcT_cFi,
- (void*)setParam__15daNpc_Kakashi_cFv,
- (void*)checkChangeEvt__15daNpc_Kakashi_cFv,
- (void*)evtTalk__15daNpc_Kakashi_cFv,
- (void*)evtEndProc__15daNpc_Kakashi_cFv,
- (void*)evtCutProc__15daNpc_Kakashi_cFv,
- (void*)setAfterTalkMotion__8daNpcT_cFv,
- (void*)evtProc__8daNpcT_cFv,
- (void*)action__15daNpc_Kakashi_cFv,
- (void*)beforeMove__15daNpc_Kakashi_cFv,
- (void*)afterMoved__8daNpcT_cFv,
- (void*)setAttnPos__15daNpc_Kakashi_cFv,
- (void*)setFootPos__8daNpcT_cFv,
- (void*)setCollision__15daNpc_Kakashi_cFv,
- (void*)setFootPrtcl__8daNpcT_cFP4cXyzff,
- (void*)checkCullDraw__8daNpcT_cFv,
- (void*)twilight__8daNpcT_cFv,
- (void*)chkXYItems__8daNpcT_cFv,
- (void*)evtOrder__8daNpcT_cFv,
- (void*)decTmr__8daNpcT_cFv,
- (void*)clrParam__8daNpcT_cFv,
- (void*)drawDbgInfo__15daNpc_Kakashi_cFv,
- (void*)drawOtherMdl__8daNpcT_cFv,
- (void*)drawGhost__8daNpcT_cFv,
- (void*)afterSetFaceMotionAnm__8daNpcT_cFiifi,
- (void*)afterSetMotionAnm__8daNpcT_cFiifi,
- (void*)getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c,
- (void*)getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c,
- (void*)changeAnm__8daNpcT_cFPiPi,
- (void*)changeBck__8daNpcT_cFPiPi,
- (void*)changeBtp__8daNpcT_cFPiPi,
- (void*)changeBtk__8daNpcT_cFPiPi,
- (void*)setMotionAnm__8daNpcT_cFifi,
-};
+ return phase_state;
+}
-/* 8054B36C-8054B4E8 0000EC 017C+00 1/0 0/0 0/0 .text __dt__15daNpc_Kakashi_cFv */
-daNpc_Kakashi_c::~daNpc_Kakashi_c() {
- // NONMATCHING
+static f32 dummyFloat(int _) {
+ switch (_) {
+ case 0: return 0.0f;
+ case 1: return 65536.0f;
+ default: return 1.0f / 5.0f;
+ }
}
-/* ############################################################################################## */
-/* 8054EAC4-8054EB5C 000000 0098+00 7/7 0/0 0/0 .rodata m__21daNpc_Kakashi_Param_c */
-SECTION_RODATA u8 const daNpc_Kakashi_Param_c::m[152] = {
- 0x43, 0x3E, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x44, 0x2F, 0x00, 0x00,
- 0x43, 0x7F, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
- 0x41, 0xF0, 0x00, 0x00, 0x41, 0xD8, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8054EAC4, &daNpc_Kakashi_Param_c::m);
-
-/* 8054EB5C-8054EB60 000098 0004+00 0/1 0/0 0/0 .rodata @4078 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4078 = -300.0f;
-COMPILER_STRIP_GATE(0x8054EB5C, &lit_4078);
-#pragma pop
-
-/* 8054EB60-8054EB64 00009C 0004+00 0/1 0/0 0/0 .rodata @4079 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4079 = -50.0f;
-COMPILER_STRIP_GATE(0x8054EB60, &lit_4079);
-#pragma pop
-
-/* 8054EB64-8054EB68 0000A0 0004+00 0/1 0/0 0/0 .rodata @4080 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4080 = 300.0f;
-COMPILER_STRIP_GATE(0x8054EB64, &lit_4080);
-#pragma pop
-
-/* 8054EB68-8054EB6C 0000A4 0004+00 0/1 0/0 0/0 .rodata @4081 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4081 = 450.0f;
-COMPILER_STRIP_GATE(0x8054EB68, &lit_4081);
-#pragma pop
-
-/* 8054EB6C-8054EB70 0000A8 0004+00 0/1 0/0 0/0 .rodata @4082 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4082 = -1000000000.0f;
-COMPILER_STRIP_GATE(0x8054EB6C, &lit_4082);
-#pragma pop
+/* 8054B7D8-8054B908 000558 0130+00 1/1 0/0 0/0 .text CreateHeap__15daNpc_Kakashi_cFv */
+int daNpc_Kakashi_c::CreateHeap() {
+ void* mdlData_p = NULL;
+ J3DModel* mdl_p = NULL;
+ int var_r25 = 0;
+ const char* arcname = l_resNameList[l_bmdData[var_r25][1]];
+ int bmd_index = l_bmdData[var_r25][0];
-/* 8054B4E8-8054B7D8 000268 02F0+00 1/1 0/0 0/0 .text create__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::create() {
- // NONMATCHING
-}
+ mdlData_p = dComIfG_getObjectRes(arcname, bmd_index);
+ if (mdlData_p == NULL) {
+ return 0;
+ }
-/* ############################################################################################## */
-/* 8054EB70-8054EB74 0000AC 0004+00 1/5 0/0 0/0 .rodata @4269 */
-SECTION_RODATA static u8 const lit_4269[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-COMPILER_STRIP_GATE(0x8054EB70, &lit_4269);
-
-/* 8054EB74-8054EB78 0000B0 0004+00 0/2 0/0 0/0 .rodata @4270 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4270 = 65536.0f;
-COMPILER_STRIP_GATE(0x8054EB74, &lit_4270);
-#pragma pop
-
-/* 8054EB78-8054EB7C 0000B4 0004+00 0/2 0/0 0/0 .rodata @4271 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4271 = 1.0f / 5.0f;
-COMPILER_STRIP_GATE(0x8054EB78, &lit_4271);
-#pragma pop
-
-/* 8054EB7C-8054EB80 0000B8 0004+00 2/3 0/0 0/0 .rodata @4400 */
-SECTION_RODATA static f32 const lit_4400 = 1.0f;
-COMPILER_STRIP_GATE(0x8054EB7C, &lit_4400);
+ u32 diff_flags = J3D_DIFF_FLAG(FALSE, FALSE, TRUE, 8, 2, FALSE, 2, 0, TRUE, FALSE, FALSE, FALSE, TRUE, FALSE);
+ mpMorf[0] = new mDoExt_McaMorfSO((J3DModelData*)mdlData_p, NULL, NULL, NULL, -1, 1.0f, 0, -1, NULL, J3DMdlFlag_DifferedDLBuffer, diff_flags);
+ if (mpMorf[0] == NULL || mpMorf[0]->getModel() == NULL) {
+ return 0;
+ }
-/* 8054B7D8-8054B908 000558 0130+00 1/1 0/0 0/0 .text CreateHeap__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::CreateHeap() {
- // NONMATCHING
+ mdl_p = mpMorf[0]->getModel();
+ for (u16 i = 0; i < ((J3DModelData*)mdlData_p)->getJointNum(); i++) {
+ ((J3DModelData*)mdlData_p)->getJointNodePointer(i)->setCallBack(ctrlJointCallBack);
+ }
+
+ mdl_p->setUserArea((uintptr_t)this);
+ return 1;
}
/* 8054B908-8054B93C 000688 0034+00 1/1 0/0 0/0 .text Delete__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::Delete() {
- // NONMATCHING
+int daNpc_Kakashi_c::Delete() {
+ OS_REPORT("|%06d:%x|daNpc_Kakashi_c -> Delete\n", g_Counter.mCounter0, this);
+ fopAcM_GetID(this);
+ this->~daNpc_Kakashi_c();
+ return 1;
}
/* 8054B93C-8054B994 0006BC 0058+00 2/2 0/0 0/0 .text Execute__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::Execute() {
- // NONMATCHING
+int daNpc_Kakashi_c::Execute() {
+ execute();
+ mSound.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
+ return 1;
}
-/* ############################################################################################## */
-/* 8054EB80-8054EB84 0000BC 0004+00 1/2 0/0 0/0 .rodata @4416 */
-SECTION_RODATA static f32 const lit_4416 = 100.0f;
-COMPILER_STRIP_GATE(0x8054EB80, &lit_4416);
-
/* 8054B994-8054B9D8 000714 0044+00 1/1 0/0 0/0 .text Draw__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::Draw() {
- // NONMATCHING
+int daNpc_Kakashi_c::Draw() {
+ return draw(FALSE, FALSE, mRealShadowSize, NULL, 100.0f, FALSE, FALSE, FALSE);
}
/* 8054B9D8-8054BB34 000758 015C+00 2/0 0/0 0/0 .text
* ctrlJoint__15daNpc_Kakashi_cFP8J3DJointP8J3DModel */
-void daNpc_Kakashi_c::ctrlJoint(J3DJoint* param_0, J3DModel* param_1) {
- // NONMATCHING
+int daNpc_Kakashi_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
+ u16 jnt_no = i_joint->getJntNo();
+ mDoMtx_stack_c::copy(i_model->getAnmMtx(jnt_no));
+
+ switch (jnt_no) {
+ case 0:
+ mDoMtx_stack_c::YrotM(field_0x1364[0].x);
+ mDoMtx_stack_c::ZrotM(field_0x1364[0].z);
+ break;
+ case 1:
+ mDoMtx_stack_c::YrotM(field_0x1364[1].x);
+ mDoMtx_stack_c::ZrotM(field_0x1364[1].z);
+ break;
+ case 3:
+ mDoMtx_stack_c::YrotM(field_0x1364[2].x);
+ mDoMtx_stack_c::ZrotM(-field_0x1364[2].z);
+ break;
+ case 4:
+ case 5:
+ if (health <= 1) {
+ mDoMtx_stack_c::scaleM(0.0f, 0.0f, 0.0f);
+ }
+ break;
+ case 7:
+ if (health == 0) {
+ mDoMtx_stack_c::scaleM(0.0f, 0.0f, 0.0f);
+ }
+ break;
+ }
+
+ i_model->setAnmMtx(jnt_no, mDoMtx_stack_c::get());
+ cMtx_copy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
+ return 1;
}
/* 8054BB34-8054BB54 0008B4 0020+00 1/1 0/0 0/0 .text
* createHeapCallBack__15daNpc_Kakashi_cFP10fopAc_ac_c */
-void daNpc_Kakashi_c::createHeapCallBack(fopAc_ac_c* param_0) {
- // NONMATCHING
+int daNpc_Kakashi_c::createHeapCallBack(fopAc_ac_c* i_this) {
+ return ((daNpc_Kakashi_c*)i_this)->CreateHeap();
}
/* 8054BB54-8054BBAC 0008D4 0058+00 1/1 0/0 0/0 .text
* ctrlJointCallBack__15daNpc_Kakashi_cFP8J3DJointi */
-void daNpc_Kakashi_c::ctrlJointCallBack(J3DJoint* param_0, int param_1) {
- // NONMATCHING
+int daNpc_Kakashi_c::ctrlJointCallBack(J3DJoint* i_joint, int param_1) {
+ if (param_1 == 0) {
+ J3DModel* mdl_p = j3dSys.getModel();
+ daNpc_Kakashi_c* i_this = (daNpc_Kakashi_c*)mdl_p->getUserArea();
+ if (i_this != NULL) {
+ i_this->ctrlJoint(i_joint, mdl_p);
+ }
+ }
+
+ return 1;
}
/* 8054BBAC-8054BC10 00092C 0064+00 1/1 0/0 0/0 .text getType__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::getType() {
- // NONMATCHING
+int daNpc_Kakashi_c::getType() {
+ switch (fopAcM_GetParam(this) & 0xFF) {
+ case 0:
+ return 0;
+ case 1:
+ return 1;
+ case 2:
+ return 2;
+ case 3:
+ return 3;
+ case 4:
+ return 4;
+ default:
+ return 5;
+ }
}
/* 8054BC10-8054BC98 000990 0088+00 1/1 0/0 0/0 .text isDelete__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::isDelete() {
- // NONMATCHING
+int daNpc_Kakashi_c::isDelete() {
+ switch (mType) {
+ case 0:
+ return daNpcT_chkEvtBit(0x12);
+ case 1:
+ return daNpcT_chkEvtBit(0x12) == FALSE;
+ case 2:
+ return FALSE;
+ case 3:
+ return FALSE;
+ case 4:
+ return FALSE;
+ default:
+ return FALSE;
+ }
}
-/* ############################################################################################## */
-/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8054ED8E = "F_SP108";
-#pragma pop
-
/* 8054BC98-8054BEA8 000A18 0210+00 1/1 0/0 0/0 .text reset__15daNpc_Kakashi_cFv */
void daNpc_Kakashi_c::reset() {
- // NONMATCHING
+ csXyz angle;
+ u32 var_r30 = (uintptr_t)&field_0x1394 - (uintptr_t)&mSelectAction;
+
+ if (mpMatAnm[0] != NULL) {
+ mpMatAnm[0]->initialize();
+ }
+
+ initialize();
+ memset(&mSelectAction, 0, var_r30);
+
+ angle.setall(0);
+ angle.y = home.angle.y;
+
+ switch (mType) {
+ case 0:
+ daNpcKakashi_setSwdTutorialStep(0);
+ daNpcKakashi_clrSuccessCount();
+ daNpcT_offTmpBit(0x11);
+ daNpcT_offTmpBit(0x12);
+ health = 2;
+ break;
+ case 1:
+ health = 1;
+ break;
+ case 2:
+ health = 2;
+ break;
+ case 3:
+ health = 2;
+ break;
+ case 4:
+ health = 2;
+ break;
+ }
+
+ if (health == 2) {
+ if (strcmp(dComIfGp_getStartStageName(), "F_SP108") == 0) {
+ health = 1;
+ }
+ }
+
+ setAngle(angle);
}
/* 8054BEA8-8054BF88 000C28 00E0+00 1/0 0/0 0/0 .text setParam__15daNpc_Kakashi_cFv */
void daNpc_Kakashi_c::setParam() {
- // NONMATCHING
+ selectAction();
+ srchActors();
+
+ attention_info.distances[fopAc_attn_LOCK_e] = 3;
+
+ u32 attn_flags = fopAc_AttnFlag_LOCK_e;
+ if (mType == 4 && health < 2) {
+ attn_flags = 0;
+ }
+
+ attention_info.flags = attn_flags;
+
+ scale.setall(daNpc_Kakashi_Param_c::m.common.scale);
+
+ mCcStts.SetWeight(daNpc_Kakashi_Param_c::m.common.weight);
+ mCylH = daNpc_Kakashi_Param_c::m.common.height;
+ mWallR = daNpc_Kakashi_Param_c::m.common.width;
+ mAttnFovY = daNpc_Kakashi_Param_c::m.common.fov;
+ mAcchCir.SetWallR(mWallR);
+ mAcchCir.SetWallH(daNpc_Kakashi_Param_c::m.common.knee_length);
+ mRealShadowSize = daNpc_Kakashi_Param_c::m.common.real_shadow_size;
+ mExpressionMorfFrame = daNpc_Kakashi_Param_c::m.common.expression_morf_frame;
+ mMorfFrames = daNpc_Kakashi_Param_c::m.common.morf_frame;
+ gravity = daNpc_Kakashi_Param_c::m.common.gravity;
}
/* 8054BF88-8054BF8C 000D08 0004+00 1/1 0/0 0/0 .text srchActors__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::srchActors() {
- /* empty function */
-}
+void daNpc_Kakashi_c::srchActors() {}
/* 8054BF8C-8054C034 000D0C 00A8+00 1/0 0/0 0/0 .text checkChangeEvt__15daNpc_Kakashi_cFv
*/
-void daNpc_Kakashi_c::checkChangeEvt() {
- // NONMATCHING
+BOOL daNpc_Kakashi_c::checkChangeEvt() {
+ if (!chkAction(&daNpc_Kakashi_c::talk)) {
+ switch (mType) {
+ case 0:
+ if (getTalkPattern() == 2) {
+ mEvtNo = 2;
+ evtChange();
+ return 1;
+ }
+ break;
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ break;
+ }
+ }
+
+ return 0;
}
/* 8054C034-8054C0D4 000DB4 00A0+00 1/0 0/0 0/0 .text evtTalk__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::evtTalk() {
- // NONMATCHING
+BOOL daNpc_Kakashi_c::evtTalk() {
+ if (chkAction(&daNpc_Kakashi_c::talk)) {
+ (this->*mAction)(NULL);
+ } else {
+ setAction(&daNpc_Kakashi_c::talk);
+ }
+
+ return TRUE;
}
/* 8054C0D4-8054C0E8 000E54 0014+00 1/0 0/0 0/0 .text evtEndProc__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::evtEndProc() {
- // NONMATCHING
+BOOL daNpc_Kakashi_c::evtEndProc() {
+ field_0x138e = 0;
+ field_0x138f = 0;
+ return TRUE;
}
/* 8054C0E8-8054C1B0 000E68 00C8+00 1/0 0/0 0/0 .text evtCutProc__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::evtCutProc() {
- // NONMATCHING
+BOOL daNpc_Kakashi_c::evtCutProc() {
+ int staffId = dComIfGp_getEventManager().getMyStaffId("Kakashi", this, -1);
+ if (staffId != -1) {
+ mStaffId = staffId;
+ int actIdx = dComIfGp_getEventManager().getMyActIdx(mStaffId, mCutNameList, ARRAY_SIZE(mCutNameList), 0, 0);
+
+ if ((this->*mCutList[actIdx])(mStaffId)) {
+ dComIfGp_getEventManager().cutEnd(mStaffId);
+ }
+
+ return TRUE;
+ }
+
+ return FALSE;
}
/* 8054C1B0-8054C268 000F30 00B8+00 1/0 0/0 0/0 .text action__15daNpc_Kakashi_cFv */
void daNpc_Kakashi_c::action() {
- // NONMATCHING
+ fopAc_ac_c* hit_actor = hitChk();
+ if (hit_actor != NULL) {
+ setStaggerParam(hit_actor);
+ setDamage(0, -1, -1);
+ mDamageTimerStart = 0;
+ }
+
+ if (mSelectAction != NULL) {
+ if (mAction == mSelectAction) {
+ (this->*mAction)(NULL);
+ } else {
+ setAction(mSelectAction);
+ }
+ }
}
/* 8054C268-8054C2E0 000FE8 0078+00 1/0 0/0 0/0 .text beforeMove__15daNpc_Kakashi_cFv */
void daNpc_Kakashi_c::beforeMove() {
- // NONMATCHING
+ if (checkHide() || mNoDraw) {
+ attention_info.flags = 0;
+ }
}
-/* ############################################################################################## */
-/* 8054EB84-8054EB88 0000C0 0004+00 0/1 0/0 0/0 .rodata @4725 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4725 = 3.0f / 40.0f;
-COMPILER_STRIP_GATE(0x8054EB84, &lit_4725);
-#pragma pop
-
-/* 8054EB88-8054EB8C 0000C4 0004+00 0/1 0/0 0/0 .rodata @4726 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4726 = 50.0f;
-COMPILER_STRIP_GATE(0x8054EB88, &lit_4726);
-#pragma pop
-
-/* 8054EB8C-8054EB90 0000C8 0004+00 0/1 0/0 0/0 .rodata @4727 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4727 = 1.0f / 10.0f;
-COMPILER_STRIP_GATE(0x8054EB8C, &lit_4727);
-#pragma pop
-
-/* 8054EB90-8054EB94 0000CC 0004+00 0/1 0/0 0/0 .rodata @4728 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4728 = 125.0f;
-COMPILER_STRIP_GATE(0x8054EB90, &lit_4728);
-#pragma pop
-
-/* 8054EB94-8054EB98 0000D0 0004+00 0/2 0/0 0/0 .rodata @4729 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4729 = 40.0f;
-COMPILER_STRIP_GATE(0x8054EB94, &lit_4729);
-#pragma pop
-
/* 8054C2E0-8054C584 001060 02A4+00 1/0 0/0 0/0 .text setAttnPos__15daNpc_Kakashi_cFv */
void daNpc_Kakashi_c::setAttnPos() {
- // NONMATCHING
-}
+ cXyz sp20(0.0f, 0.0f, 0.0f);
+ cXyz sp14;
+ cXyz sp8;
+
+ f32 attn_offset = daNpc_Kakashi_Param_c::m.common.attention_offset;
+
+ if (field_0x1392 == 0) {
+ mDoMtx_stack_c::YrotS(field_0x138c);
+ }
+
+ for (int i = 0; i < 3; i++) {
+ if (field_0x1392 != 0) {
+ mDoMtx_stack_c::YrotS(field_0x1384[i]);
+
+ sp14.set(0.0f, 0.0f, field_0x1378[i]);
+ mDoMtx_stack_c::multVec(&sp14, &sp8);
+
+ field_0x1364[i].x = -sp8.z;
+ field_0x1364[i].z = -sp8.x;
+
+ if (i == 2) {
+ field_0x1384[i] += cM_deg2s(45.0f);
+ } else {
+ field_0x1384[i] -= cM_deg2s(45.0f);
+ }
+ } else {
+ sp14.set(0.0f, 0.0f, field_0x1378[i] * cM_ssin(field_0x1384[i]));
+ mDoMtx_stack_c::multVec(&sp14, &sp8);
+
+ field_0x1364[i].x = -sp8.z;
+ field_0x1364[i].z = -sp8.x;
+
+ field_0x1384[i] += cM_deg2s(45.0f);
+ }
+ }
-/* ############################################################################################## */
-/* 8054EB98-8054EB9C 0000D4 0004+00 0/1 0/0 0/0 .rodata @4831 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4831 = 80.0f;
-COMPILER_STRIP_GATE(0x8054EB98, &lit_4831);
-#pragma pop
-
-/* 8054EB9C-8054EBA0 0000D8 0004+00 0/1 0/0 0/0 .rodata @4832 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4832 = -80.0f;
-COMPILER_STRIP_GATE(0x8054EB9C, &lit_4832);
-#pragma pop
-
-/* 8054EBA0-8054EBA4 0000DC 0004+00 0/1 0/0 0/0 .rodata @4833 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4833 = 20.0f;
-COMPILER_STRIP_GATE(0x8054EBA0, &lit_4833);
-#pragma pop
-
-/* 8054EBA4-8054EBA8 0000E0 0004+00 0/1 0/0 0/0 .rodata @4834 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4834 = 30.0f;
-COMPILER_STRIP_GATE(0x8054EBA4, &lit_4834);
-#pragma pop
-
-/* 8054EBA8-8054EBAC 0000E4 0004+00 0/1 0/0 0/0 .rodata @4835 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4835 = -20.0f;
-COMPILER_STRIP_GATE(0x8054EBA8, &lit_4835);
-#pragma pop
-
-/* 8054F1E0-8054F1EC 000048 000C+00 1/1 0/0 0/0 .bss @3835 */
-static u8 lit_3835[12];
+ cLib_addCalc2(&field_0x1378[2], 0.0f, 0.075f, 50.0f);
+ cLib_addCalc2(&field_0x1378[0], 0.0f, 0.1f, 125.0f);
+ cLib_addCalc2(&field_0x1378[1], 0.0f, 0.1f, 125.0f);
+
+ setMtx();
+
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(7));
+ mDoMtx_stack_c::multVec(&sp20, &eyePos);
+
+ if (health == 0) {
+ eyePos.y -= 40.0f;
+ }
+
+ attention_info.position = current.pos;
+ attention_info.position.y += attn_offset;
+
+ if (health == 2) {
+ attention_info.position.y += 50.0f;
+ }
+}
/* 8054F1EC-8054F1F0 000054 0004+00 1/1 0/0 0/0 .bss l_HIO */
-static u8 l_HIO[4];
-
-/* 8054F1F0-8054F200 000058 000C+04 0/1 0/0 0/0 .bss @4738 */
-#pragma push
-#pragma force_active on
-static u8 lit_4738[12 + 4 /* padding */];
-#pragma pop
-
-/* 8054F200-8054F20C 000068 000C+00 0/1 0/0 0/0 .bss armROfst$4737 */
-#pragma push
-#pragma force_active on
-static u8 armROfst[12];
-#pragma pop
-
-/* 8054F20C-8054F21C 000074 000C+04 0/1 0/0 0/0 .bss @4742 */
-#pragma push
-#pragma force_active on
-static u8 lit_4742[12 + 4 /* padding */];
-#pragma pop
-
-/* 8054F21C-8054F228 000084 000C+00 0/1 0/0 0/0 .bss armLOfst$4741 */
-#pragma push
-#pragma force_active on
-static u8 armLOfst[12];
-#pragma pop
-
-/* 8054F228-8054F238 000090 000C+04 0/1 0/0 0/0 .bss @4746 */
-#pragma push
-#pragma force_active on
-static u8 lit_4746[12 + 4 /* padding */];
-#pragma pop
-
-/* 8054F238-8054F244 0000A0 000C+00 0/1 0/0 0/0 .bss headOfst$4745 */
-#pragma push
-#pragma force_active on
-static u8 headOfst[12];
-#pragma pop
+static daNpc_Kakashi_Param_c l_HIO;
/* 8054C584-8054C924 001304 03A0+00 1/0 0/0 0/0 .text setCollision__15daNpc_Kakashi_cFv
*/
void daNpc_Kakashi_c::setCollision() {
- // NONMATCHING
+ if (!mHide) {
+ static cXyz armROfst(80.0f, 0.0f, 0.0f);
+ static cXyz armLOfst(-80.0f, 0.0f, 0.0f);
+ static cXyz headOfst(20.0f, 0.0f, 0.0f);
+
+ cXyz sp8;
+ for (int i = 0; i < 3; i++) {
+ if (i == 0) {
+ mCcSph[i].SetCoSPrm(0);
+ mCcSph[i].SetTgType(0x4060A0);
+ mCcSph[i].SetTgSPrm(7);
+ } else {
+ mCcSph[i].SetTgType(0);
+ mCcSph[i].SetTgSPrm(0);
+ }
+ }
+
+ if (health != 0) {
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(7));
+ mDoMtx_stack_c::multVec(&headOfst, &sp8);
+ mCcSph[0].SetC(sp8);
+ mCcSph[0].SetR(30.0f);
+ dComIfG_Ccsp()->Set(&mCcSph[0]);
+ }
+
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(2));
+
+ mDoMtx_stack_c::multVec(&armROfst, &sp8);
+ mCcSph[1].SetCoSPrm(0x19);
+ mCcSph[1].SetC(sp8);
+ mCcSph[1].SetR(30.0f);
+ dComIfG_Ccsp()->Set(&mCcSph[1]);
+
+ mDoMtx_stack_c::multVec(&armLOfst, &sp8);
+ mCcSph[2].SetCoSPrm(0x19);
+ mCcSph[2].SetC(sp8);
+ mCcSph[2].SetR(30.0f);
+ dComIfG_Ccsp()->Set(&mCcSph[2]);
+
+ for (int i = 0; i < 3; i++) {
+ mCcSph[i].ClrCoHit();
+ mCcSph[i].ClrTgHit();
+ }
+
+ field_0x1393 = 0;
+
+ mCcCyl.SetTgType(0);
+ mCcCyl.SetTgSPrm(0);
+
+ if (mDamageTimer == 0 && daNpcT_chkActorInScreen(this, -20.0f, 0.0f, -20.0f, 20.0f, 100.0f, 20.0f, 80.0f, 0)) {
+ mCcCyl.SetTgType(0xD8FBFDFF);
+ mCcCyl.SetTgHitMark(CcG_Tg_UNK_MARK_1);
+ mCcCyl.SetTgSPrm(0x1F);
+ }
+
+ sp8 = current.pos;
+ sp8.y += 80.0f;
+
+ mCcCyl.SetH(mCylH);
+ mCcCyl.SetR(mWallR);
+ mCcCyl.SetC(sp8);
+ dComIfG_Ccsp()->Set(&mCcCyl);
+ }
+
+ mCcCyl.ClrCoHit();
+ mCcCyl.ClrTgHit();
}
/* 8054C924-8054C92C 0016A4 0008+00 1/0 0/0 0/0 .text drawDbgInfo__15daNpc_Kakashi_cFv */
-bool daNpc_Kakashi_c::drawDbgInfo() {
- return false;
+int daNpc_Kakashi_c::drawDbgInfo() {
+ return 0;
}
/* 8054C92C-8054CA1C 0016AC 00F0+00 1/1 0/0 0/0 .text selectAction__15daNpc_Kakashi_cFv
*/
-void daNpc_Kakashi_c::selectAction() {
- // NONMATCHING
+int daNpc_Kakashi_c::selectAction() {
+ mSelectAction = NULL;
+
+ switch (mType) {
+ case 0:
+ if (daNpcKakashi_chkSwdTutorialStage()) {
+ mSelectAction = &daNpc_Kakashi_c::swdTutorial;
+ } else {
+ mSelectAction = &daNpc_Kakashi_c::wait;
+ }
+ break;
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ mSelectAction = &daNpc_Kakashi_c::wait;
+ break;
+ default:
+ mSelectAction = &daNpc_Kakashi_c::wait;
+ break;
+ }
+
+ return 1;
}
/* 8054CA1C-8054CA48 00179C 002C+00 2/2 0/0 0/0 .text
* chkAction__15daNpc_Kakashi_cFM15daNpc_Kakashi_cFPCvPvPv_i */
-void daNpc_Kakashi_c::chkAction(int (daNpc_Kakashi_c::*param_0)(void*)) {
- // NONMATCHING
+int daNpc_Kakashi_c::chkAction(int (daNpc_Kakashi_c::*i_action)(void*)) {
+ return mAction == i_action;
}
/* 8054CA48-8054CAF0 0017C8 00A8+00 2/2 0/0 0/0 .text
* setAction__15daNpc_Kakashi_cFM15daNpc_Kakashi_cFPCvPvPv_i */
-void daNpc_Kakashi_c::setAction(int (daNpc_Kakashi_c::*param_0)(void*)) {
- // NONMATCHING
+int daNpc_Kakashi_c::setAction(int (daNpc_Kakashi_c::*i_action)(void*)) {
+ mMode = 3;
+ if (mAction != NULL) {
+ (this->*mAction)(NULL);
+ }
+
+ mMode = 0;
+ mAction = i_action;
+ if (mAction != NULL) {
+ (this->*mAction)(NULL);
+ }
+
+ return 1;
}
/* 8054CAF0-8054CEA0 001870 03B0+00 1/1 0/0 0/0 .text hitChk__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::hitChk() {
- // NONMATCHING
+fopAc_ac_c* daNpc_Kakashi_c::hitChk() {
+ dCcD_GObjInf* hit_obj = NULL;
+ fopAc_ac_c* hit_actor = NULL;
+
+ mCcStts.Move();
+
+ if (mDamageTimer == 0) {
+ if (mCcSph[0].ChkTgHit()) {
+ hit_actor = mCcSph[0].GetTgHitAc();
+ hit_obj = (dCcD_GObjInf*)mCcSph[0].GetTgHitObj();
+ field_0x1393 = 1;
+ } else if (mCcCyl.ChkTgHit()) {
+ hit_actor = mCcCyl.GetTgHitAc();
+ hit_obj = (dCcD_GObjInf*)mCcCyl.GetTgHitObj();
+ }
+ }
+
+ if (hit_obj != NULL) {
+ field_0x1390 = 0;
+
+ switch (mType) {
+ case 0:
+ if (hit_obj->ChkAtType(AT_TYPE_NORMAL_SWORD)) {
+ field_0x1390 = 1;
+ }
+ break;
+ case 2:
+ if (hit_obj->ChkAtType(AT_TYPE_NORMAL_SWORD) && getBitSW() != 0xFF) {
+ if (!dComIfGs_isSwitch(getBitSW(), fopAcM_GetRoomNo(this))) {
+ dComIfGs_onSwitch(getBitSW(), fopAcM_GetRoomNo(this));
+ }
+ }
+ break;
+ case 3:
+ if (hit_obj->ChkAtType(AT_TYPE_ARROW) && getBitSW() != 0xFF) {
+ if (!dComIfGs_isSwitch(getBitSW(), fopAcM_GetRoomNo(this))) {
+ dComIfGs_onSwitch(getBitSW(), fopAcM_GetRoomNo(this));
+ }
+ }
+ break;
+ case 4:
+ u8 var_r28;
+ if (field_0x1393 != 0) {
+ if (getBitSW2() != 0xFF) {
+ if (!dComIfGs_isSwitch(getBitSW2(), fopAcM_GetRoomNo(this))) {
+ dComIfGs_onSwitch(getBitSW2(), fopAcM_GetRoomNo(this));
+ }
+ }
+ var_r28 = 1;
+ dComIfGs_setTmpReg(0xF4FF, dComIfGs_getTmpReg(0xF4FF) + 1);
+ } else {
+ if (getBitSW() != 0xFF) {
+ if (!dComIfGs_isSwitch(getBitSW(), fopAcM_GetRoomNo(this))) {
+ dComIfGs_onSwitch(getBitSW(), fopAcM_GetRoomNo(this));
+ }
+ }
+ var_r28 = 2;
+ }
+
+ if (dComIfGp_getAttention()->GetLockonList(0) != NULL && dComIfGp_getAttention()->LockonTruth() && this == dComIfGp_getAttention()->GetLockonList(0)->getActor()) {
+ var_r28 |= 0x80;
+ }
+
+ dComIfGs_setTmpReg(0xF3FF, var_r28);
+ break;
+ }
+
+ u32 hit_se = dCcD_GObjInf::getHitSeID(hit_obj->GetAtSe(), 0);
+ u32 var_r27 = 0x2E;
+ if (mCutType == daPy_py_c::CUT_TYPE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_INIT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_FINISH ||
+ field_0x1393 != 0)
+ {
+ switch (health) {
+ case 2:
+ if (field_0x1391 != 0) {
+ var_r27 = 0x31;
+ } else {
+ var_r27 = 0x30;
+ }
+ break;
+ case 1:
+ var_r27 = 0x33;
+ break;
+ }
+ } else if (mCutType == daPy_py_c::CUT_TYPE_TURN_RIGHT ||
+ mCutType == daPy_py_c::CUT_TYPE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_RIGHT)
+ {
+ var_r27 = 0x2F;
+ }
+
+ mSound.startCollisionSE(hit_se, var_r27, NULL);
+ }
+
+ return hit_actor;
}
-/* ############################################################################################## */
-/* 8054EBAC-8054EBB8 0000E8 000C+00 0/1 0/0 0/0 .rodata @5025 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5025[12] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8054EBAC, &lit_5025);
-#pragma pop
-
-/* 8054EBB8-8054EBBC 0000F4 0004+00 0/1 0/0 0/0 .rodata @5166 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_5166 = 3.0f / 5.0f;
-COMPILER_STRIP_GATE(0x8054EBB8, &lit_5166);
-#pragma pop
-
-/* 8054EBBC-8054EBC4 0000F8 0004+04 0/1 0/0 0/0 .rodata @5167 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u32 const lit_5167[1 + 1 /* padding */] = {
- 0x43360B61,
- /* padding */
- 0x00000000,
-};
-COMPILER_STRIP_GATE(0x8054EBBC, &lit_5167);
-#pragma pop
-
-/* 8054EBC4-8054EBCC 000100 0008+00 0/1 0/0 0/0 .rodata @5170 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5170[8] = {
- 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x8054EBC4, &lit_5170);
-#pragma pop
-
/* 8054CEA0-8054D26C 001C20 03CC+00 1/1 0/0 0/0 .text
* setStaggerParam__15daNpc_Kakashi_cFP10fopAc_ac_c */
-void daNpc_Kakashi_c::setStaggerParam(fopAc_ac_c* param_0) {
- // NONMATCHING
+void daNpc_Kakashi_c::setStaggerParam(fopAc_ac_c* i_hitActor) {
+ csXyz sp14;
+ f32 var_f31 = 1.0f;
+ f32 sp28[3] = {daNpc_Kakashi_Param_c::m.field_0x8c, daNpc_Kakashi_Param_c::m.field_0x90, daNpc_Kakashi_Param_c::m.field_0x94};
+
+ field_0x138c = 0;
+
+ if (i_hitActor != NULL) {
+ field_0x138c = (fopAcM_searchActorAngleY(this, i_hitActor) - mCurAngle.y) + 0x8000;
+ }
+
+ field_0x1392 = 0;
+
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_RIGHT ||
+ mCutType == daPy_py_c::CUT_TYPE_NM_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_FINISH_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_FINISH_VERTICAL)
+ {
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_RIGHT) {
+ field_0x138c -= 0x4000;
+ } else if (mCutType == daPy_py_c::CUT_TYPE_NM_LEFT) {
+ field_0x138c += 0x4000;
+ }
+
+ dScnPly_c::setPauseTimer(5);
+ var_f31 = 0.6f;
+ } else if (mCutType == daPy_py_c::CUT_TYPE_TURN_RIGHT ||
+ mCutType == daPy_py_c::CUT_TYPE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_RIGHT)
+ {
+ dScnPly_c::setPauseTimer(8);
+ field_0x1392 = 1;
+ } else {
+ if (daPy_getPlayerActorClass() == i_hitActor) {
+ dScnPly_c::setPauseTimer(5);
+ }
+ var_f31 = 0.6f;
+ }
+
+ for (int i = 0; i < 3; i++) {
+ field_0x1378[i] = cM_deg2s(sp28[i]);
+
+ if (i != 2) {
+ field_0x1378[i] *= var_f31;
+ }
+
+ field_0x1384[i] = 0x4000;
+ }
+
+ if ((mCutType == daPy_py_c::CUT_TYPE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_INIT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_FINISH || field_0x1393 != 0) &&
+ (&daNpc_Kakashi_c::swdTutorial != mSelectAction || daNpcKakashi_getSwdTutorialStep() == 6))
+ {
+ cXyz pos;
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(7));
+ mDoMtx_stack_c::multVecZero(&pos);
+ pos.y += 40.0f;
+
+ switch (health) {
+ case 2:
+ sp14 = mCurAngle;
+ setPrtcls(0);
+ sp14.y = fopAcM_searchPlayerAngleY(this);
+
+ fopAcM_createChild(PROC_OBJ_KBACKET, fopAcM_GetID(this), 0x80000000, &pos, fopAcM_GetRoomNo(this), &sp14, NULL, -1, NULL);
+ fopAcM_createChild(PROC_OBJ_KBACKET, fopAcM_GetID(this), 0x80000001, &pos, fopAcM_GetRoomNo(this), &sp14, NULL, -1, NULL);
+
+ if (field_0x1393 == 0) {
+ break;
+ }
+
+ health = 1;
+ case 1:
+ setPrtcls(1);
+ }
+
+ cLib_calcTimer<s16>(&health);
+ }
+
+ mSound.startSound(Z2SE_OBJ_KAKASHI_SHAKE, 0, -1);
}
-/* ############################################################################################## */
-/* 8054EBCC-8054EBD0 000108 0004+00 1/1 0/0 0/0 .rodata id$5174 */
-SECTION_RODATA static u8 const id[4] = {
- 0x82,
- 0x3F,
- 0x82,
- 0x3E,
-};
-COMPILER_STRIP_GATE(0x8054EBCC, &id);
-
/* 8054D26C-8054D374 001FEC 0108+00 1/1 0/0 0/0 .text setPrtcls__15daNpc_Kakashi_cFi */
-void daNpc_Kakashi_c::setPrtcls(int param_0) {
- // NONMATCHING
+void daNpc_Kakashi_c::setPrtcls(int i_type) {
+ cXyz pos;
+ if (i_type == 0 || i_type == 1) {
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(7));
+ mDoMtx_stack_c::multVecZero(&pos);
+ } else {
+ pos = current.pos;
+ }
+
+ if (i_type >= 0 && i_type < 2) {
+ static const u16 id[] = {
+ dPa_RM(ID_ZI_S_KAKASHI_WARA_A),
+ dPa_RM(ID_ZI_S_KAKASHI_PUMP_A),
+ };
+ dComIfGp_particle_set(id[i_type], &pos, &mCurAngle, NULL);
+ }
}
/* 8054D374-8054D490 0020F4 011C+00 1/1 0/0 0/0 .text judgeSwdTutorial__15daNpc_Kakashi_cFv */
-void daNpc_Kakashi_c::judgeSwdTutorial() {
- // NONMATCHING
+int daNpc_Kakashi_c::judgeSwdTutorial() {
+ switch (daNpcKakashi_getSwdTutorialStep()) {
+ case 2:
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_RIGHT ||
+ mCutType == daPy_py_c::CUT_TYPE_NM_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_FINISH_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_FINISH_VERTICAL)
+ {
+ return TRUE;
+ }
+ case 3:
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_VERTICAL) {
+ return TRUE;
+ }
+ break;
+ case 4:
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_STAB ||
+ mCutType == daPy_py_c::CUT_TYPE_FINISH_STAB ||
+ mCutType == daPy_py_c::CUT_TYPE_COMBO_STAB)
+ {
+ return TRUE;
+ }
+ break;
+ case 5:
+ if (mCutType == daPy_py_c::CUT_TYPE_TURN_RIGHT ||
+ mCutType == daPy_py_c::CUT_TYPE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_LEFT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_TURN_RIGHT)
+ {
+ return TRUE;
+ }
+ break;
+ case 6:
+ if (mCutType == daPy_py_c::CUT_TYPE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_INIT ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP ||
+ mCutType == daPy_py_c::CUT_TYPE_LARGE_JUMP_FINISH)
+ {
+ return TRUE;
+ }
+ break;
+ }
+
+ return FALSE;
}
-/* ############################################################################################## */
-/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_8054ED96 = "prm";
-#pragma pop
-
/* 8054D490-8054D57C 002210 00EC+00 1/0 0/0 0/0 .text cutSwdTutorial__15daNpc_Kakashi_cFi
*/
-void daNpc_Kakashi_c::cutSwdTutorial(int param_0) {
- // NONMATCHING
+int daNpc_Kakashi_c::cutSwdTutorial(int i_staffId) {
+ int rt = 0;
+ int prm = -1;
+
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
+
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
+ switch (prm) {
+ case 0:
+ break;
+ case 1:
+ s16 angle = fopAcM_searchActorAngleY(daPy_getPlayerActorClass(), this);
+ daPy_getPlayerActorClass()->setPlayerPosAndAngle(&daPy_getPlayerActorClass()->current.pos, angle, 0);
+ daNpcKakashi_setSwdTutorialStep(2);
+ daNpcKakashi_clrSuccessCount();
+ }
+ }
+
+ switch (prm) {
+ case 0:
+ case 1:
+ rt = 1;
+ }
+
+ return rt;
}
/* 8054D57C-8054D604 0022FC 0088+00 1/0 0/0 0/0 .text cutGetWoodSwd__15daNpc_Kakashi_cFi
*/
-void daNpc_Kakashi_c::cutGetWoodSwd(int param_0) {
- // NONMATCHING
-}
+int daNpc_Kakashi_c::cutGetWoodSwd(int i_staffId) {
+ int rt = 0;
+ int prm = -1;
-/* 8054D604-8054D668 002384 0064+00 1/0 0/0 0/0 .text cutMarosWhisper__15daNpc_Kakashi_cFi */
-void daNpc_Kakashi_c::cutMarosWhisper(int param_0) {
- // NONMATCHING
-}
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
-/* 8054D668-8054D694 0023E8 002C+00 3/0 0/0 0/0 .text wait__15daNpc_Kakashi_cFPv */
-void daNpc_Kakashi_c::wait(void* param_0) {
- // NONMATCHING
-}
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
-/* 8054D694-8054D8BC 002414 0228+00 2/0 0/0 0/0 .text swdTutorial__15daNpc_Kakashi_cFPv
- */
-void daNpc_Kakashi_c::swdTutorial(void* param_0) {
- // NONMATCHING
-}
+ }
-/* 8054D8BC-8054D978 00263C 00BC+00 3/0 0/0 0/0 .text talk__15daNpc_Kakashi_cFPv */
-void daNpc_Kakashi_c::talk(void* param_0) {
- // NONMATCHING
-}
+ switch (prm) {
+ case 0:
+ rt = 1;
+ }
-/* 8054D978-8054D998 0026F8 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Create__FPv */
-static void daNpc_Kakashi_Create(void* param_0) {
- // NONMATCHING
+ return rt;
}
-/* 8054D998-8054D9B8 002718 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Delete__FPv */
-static void daNpc_Kakashi_Delete(void* param_0) {
- // NONMATCHING
-}
-
-/* 8054D9B8-8054D9D8 002738 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Execute__FPv */
-static void daNpc_Kakashi_Execute(void* param_0) {
- // NONMATCHING
-}
-
-/* 8054D9D8-8054D9F8 002758 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Draw__FPv */
-static void daNpc_Kakashi_Draw(void* param_0) {
- // NONMATCHING
-}
-
-/* 8054D9F8-8054DA00 002778 0008+00 1/0 0/0 0/0 .text daNpc_Kakashi_IsDelete__FPv */
-static bool daNpc_Kakashi_IsDelete(void* param_0) {
- return true;
-}
-
-/* 8054DA00-8054DA48 002780 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
-// cCcD_GStts::~cCcD_GStts() {
-extern "C" void __dt__10cCcD_GSttsFv() {
- // NONMATCHING
-}
-
-/* 8054DA48-8054DDD0 0027C8 0388+00 1/1 0/0 0/0 .text __dt__8daNpcT_cFv */
-// daNpcT_c::~daNpcT_c() {
-extern "C" void __dt__8daNpcT_cFv() {
- // NONMATCHING
-}
-
-/* 8054DDD0-8054DE0C 002B50 003C+00 4/4 0/0 0/0 .text __dt__4cXyzFv */
-// cXyz::~cXyz() {
-extern "C" void __dt__4cXyzFv() {
- // NONMATCHING
-}
-
-/* 8054DE0C-8054DED8 002B8C 00CC+00 2/2 0/0 0/0 .text __dt__8dCcD_SphFv */
-// dCcD_Sph::~dCcD_Sph() {
-extern "C" void __dt__8dCcD_SphFv() {
- // NONMATCHING
-}
-
-/* 8054DED8-8054DF14 002C58 003C+00 4/4 0/0 0/0 .text __dt__5csXyzFv */
-// csXyz::~csXyz() {
-extern "C" void __dt__5csXyzFv() {
- // NONMATCHING
-}
-
-/* 8054DF14-8054E318 002C94 0404+00 1/1 0/0 0/0 .text
- * __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc
- */
-// daNpcT_c::daNpcT_c(daNpcT_faceMotionAnmData_c const* param_0,
-// daNpcT_motionAnmData_c const* param_1,
-// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3,
-// daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5,
-// daNpcT_evtData_c const* param_6, char** param_7) {
-extern "C" void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() {
- // NONMATCHING
-}
-
-/* 8054E318-8054E414 003098 00FC+00 1/0 0/0 0/0 .text __dt__15daNpcT_JntAnm_cFv */
-// daNpcT_JntAnm_c::~daNpcT_JntAnm_c() {
-extern "C" void __dt__15daNpcT_JntAnm_cFv() {
- // NONMATCHING
-}
-
-/* 8054E414-8054E418 003194 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */
-// cXyz::cXyz() {
-extern "C" void __ct__4cXyzFv() {
- /* empty function */
-}
-
-/* 8054E418-8054E460 003198 0048+00 1/0 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */
-// daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() {
-extern "C" void __dt__18daNpcT_ActorMngr_cFv() {
- // NONMATCHING
-}
-
-/* 8054E460-8054E4A8 0031E0 0048+00 1/0 0/0 0/0 .text __dt__22daNpcT_MotionSeqMngr_cFv */
-// daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() {
-extern "C" void __dt__22daNpcT_MotionSeqMngr_cFv() {
- // NONMATCHING
-}
-
-/* 8054E4A8-8054E518 003228 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */
-// dBgS_AcchCir::~dBgS_AcchCir() {
-extern "C" void __dt__12dBgS_AcchCirFv() {
- // NONMATCHING
-}
-
-/* 8054E518-8054E574 003298 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
-// dCcD_GStts::~dCcD_GStts() {
-extern "C" void __dt__10dCcD_GSttsFv() {
- // NONMATCHING
-}
-
-/* 8054E574-8054E5E4 0032F4 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */
-// dBgS_ObjAcch::~dBgS_ObjAcch() {
-extern "C" void __dt__12dBgS_ObjAcchFv() {
- // NONMATCHING
-}
-
-/* 8054E5E4-8054E62C 003364 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */
-// J3DFrameCtrl::~J3DFrameCtrl() {
-extern "C" void __dt__12J3DFrameCtrlFv() {
- // NONMATCHING
-}
-
-/* 8054E62C-8054E630 0033AC 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */
-// void daNpcT_c::ctrlSubFaceMotion(int param_0) {
-extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() {
- /* empty function */
-}
-
-/* 8054E668-8054E670 0033E8 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv
- */
-// bool daNpcT_c::getEyeballLMaterialNo() {
-extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() {
- return false;
-}
+/* 8054D604-8054D668 002384 0064+00 1/0 0/0 0/0 .text cutMarosWhisper__15daNpc_Kakashi_cFi */
+int daNpc_Kakashi_c::cutMarosWhisper(int i_staffId) {
+ int rt = 0;
+ int prm = -1;
-/* 8054E670-8054E678 0033F0 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv
- */
-// bool daNpcT_c::getEyeballRMaterialNo() {
-extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() {
- return false;
-}
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
-/* 8054E68C-8054E694 00340C 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */
-// bool daNpcT_c::chkXYItems() {
-extern "C" bool chkXYItems__8daNpcT_cFv() {
- return false;
-}
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
-/* 8054E694-8054E6AC 003414 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */
-// void daNpcT_c::decTmr() {
-extern "C" void decTmr__8daNpcT_cFv() {
- // NONMATCHING
-}
+ }
-/* 8054E6AC-8054E6B0 00342C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */
-// void daNpcT_c::drawOtherMdl() {
-extern "C" void drawOtherMdl__8daNpcT_cFv() {
- /* empty function */
+ return rt;
}
-/* 8054E6B0-8054E6B4 003430 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */
-// void daNpcT_c::drawGhost() {
-extern "C" void drawGhost__8daNpcT_cFv() {
- /* empty function */
-}
+/* 8054D668-8054D694 0023E8 002C+00 3/0 0/0 0/0 .text wait__15daNpc_Kakashi_cFPv */
+int daNpc_Kakashi_c::wait(void*) {
+ switch (mMode) {
+ case 0:
+ case 1:
+ mMode = 2;
+ break;
+ case 2:
+ case 3:
+ break;
+ }
-/* 8054E6B4-8054E6BC 003434 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */
-// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) {
-extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() {
- return true;
+ return 1;
}
-/* 8054E6BC-8054E6C4 00343C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi
+/* 8054D694-8054D8BC 002414 0228+00 2/0 0/0 0/0 .text swdTutorial__15daNpc_Kakashi_cFPv
*/
-// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) {
-extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() {
- return true;
-}
-
-/* 8054E6C4-8054E6F4 003444 0030+00 1/0 0/0 0/0 .text
- * getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c */
-// void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) {
-extern "C" void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() {
- // NONMATCHING
+int daNpc_Kakashi_c::swdTutorial(void*) {
+ switch (mMode) {
+ case 0:
+ case 1:
+ mMode = 2;
+ case 2: {
+ u8 tutorial_step = daNpcKakashi_getSwdTutorialStep();
+ if (tutorial_step == 0) {
+ mEvtNo = 3;
+ field_0xe33 = 1;
+ } else {
+ if (field_0x1390 != 0 && mCutType != 0) {
+ if (judgeSwdTutorial()) {
+ daNpcKakashi_setSwdTutorialResult(1);
+ daNpcKakashi_clrSuccessCount();
+
+ if ((tutorial_step == 2 || tutorial_step == 3) && mCutType != daPy_py_c::CUT_TYPE_NM_VERTICAL) {
+ daNpcKakashi_incSuccessCount();
+ }
+
+ field_0x138e = 1;
+ } else {
+ daNpcKakashi_setSwdTutorialResult(0);
+ field_0x138f = 1;
+ }
+ }
+
+ u8 tutorial_step = daNpcKakashi_getSwdTutorialStep();
+ daNpcKakashi_getSuccessCount();
+
+ if (field_0x138e != 0) {
+ switch (tutorial_step) {
+ case 0:
+ case 1:
+ field_0x138e = 0;
+ break;
+ case 2:
+ case 3:
+ if (mCutType == daPy_py_c::CUT_TYPE_NM_VERTICAL) {
+ mEvtNo = 10;
+ } else {
+ mEvtNo = 6;
+ }
+ break;
+ case 4:
+ mEvtNo = 13;
+ break;
+ case 5:
+ mEvtNo = 16;
+ field_0x1391 = 1;
+ break;
+ case 6:
+ mEvtNo = 19;
+ break;
+ default:
+ field_0x138e = 0;
+ }
+ }
+
+ if (field_0x138f != 0) {
+ switch (tutorial_step) {
+ case 0:
+ case 1:
+ field_0x138f = 0;
+ break;
+ case 2:
+ case 3:
+ mEvtNo = 5;
+ break;
+ case 4:
+ mEvtNo = 12;
+ break;
+ case 5:
+ mEvtNo = 15;
+ break;
+ case 6:
+ mEvtNo = 18;
+ break;
+ default:
+ field_0x138f = 0;
+ }
+ }
+ }
+ break;
+ }
+ case 3:
+ break;
+ }
+
+ return 1;
}
-/* 8054E6F4-8054E724 003474 0030+00 1/0 0/0 0/0 .text
- * getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c */
-// void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) {
-extern "C" void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() {
- // NONMATCHING
+/* 8054D8BC-8054D978 00263C 00BC+00 3/0 0/0 0/0 .text talk__15daNpc_Kakashi_cFPv */
+int daNpc_Kakashi_c::talk(void*) {
+ switch (mMode) {
+ case 0:
+ case 1:
+ if (!mStagger.checkStagger()) {
+ initTalk(mFlowNodeNo, NULL);
+ mMode = 2;
+ }
+ case 2:
+ if (!mStagger.checkStagger() && talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) {
+ dComIfGp_event_reset();
+ mMode = 3;
+ }
+ break;
+ case 3:
+ break;
+ }
+
+ return 0;
}
-/* 8054E724-8054E728 0034A4 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */
-// void daNpcT_c::changeAnm(int* param_0, int* param_1) {
-extern "C" void changeAnm__8daNpcT_cFPiPi() {
- /* empty function */
+/* 8054D978-8054D998 0026F8 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Create__FPv */
+static int daNpc_Kakashi_Create(void* i_this) {
+ return ((daNpc_Kakashi_c*)i_this)->create();
}
-/* 8054E728-8054E72C 0034A8 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */
-// void daNpcT_c::changeBck(int* param_0, int* param_1) {
-extern "C" void changeBck__8daNpcT_cFPiPi() {
- /* empty function */
+/* 8054D998-8054D9B8 002718 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Delete__FPv */
+static int daNpc_Kakashi_Delete(void* i_this) {
+ return ((daNpc_Kakashi_c*)i_this)->Delete();
}
-/* 8054E72C-8054E730 0034AC 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */
-// void daNpcT_c::changeBtp(int* param_0, int* param_1) {
-extern "C" void changeBtp__8daNpcT_cFPiPi() {
- /* empty function */
+/* 8054D9B8-8054D9D8 002738 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Execute__FPv */
+static int daNpc_Kakashi_Execute(void* i_this) {
+ return ((daNpc_Kakashi_c*)i_this)->Execute();
}
-/* 8054E730-8054E734 0034B0 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */
-// void daNpcT_c::changeBtk(int* param_0, int* param_1) {
-extern "C" void changeBtk__8daNpcT_cFPiPi() {
- /* empty function */
+/* 8054D9D8-8054D9F8 002758 0020+00 1/0 0/0 0/0 .text daNpc_Kakashi_Draw__FPv */
+static int daNpc_Kakashi_Draw(void* i_this) {
+ return ((daNpc_Kakashi_c*)i_this)->Draw();
}
-/* 8054E734-8054E750 0034B4 001C+00 1/1 0/0 0/0 .text cLib_calcTimer<s>__FPs */
-extern "C" void func_8054E734(void* _this, s16* param_0) {
- // NONMATCHING
+/* 8054D9F8-8054DA00 002778 0008+00 1/0 0/0 0/0 .text daNpc_Kakashi_IsDelete__FPv */
+static int daNpc_Kakashi_IsDelete(void* i_this) {
+ return 1;
}
-/* ############################################################################################## */
-/* 8054F18C-8054F198 0003F0 000C+00 2/2 0/0 0/0 .data __vt__21daNpc_Kakashi_Param_c */
-SECTION_DATA extern void* __vt__21daNpc_Kakashi_Param_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__21daNpc_Kakashi_Param_cFv,
+/* 8054EFDC-8054EFFC -00001 0020+00 1/0 0/0 0/0 .data daNpc_Kakashi_MethodTable */
+static actor_method_class daNpc_Kakashi_MethodTable = {
+ (process_method_func)daNpc_Kakashi_Create,
+ (process_method_func)daNpc_Kakashi_Delete,
+ (process_method_func)daNpc_Kakashi_Execute,
+ (process_method_func)daNpc_Kakashi_IsDelete,
+ (process_method_func)daNpc_Kakashi_Draw,
};
-/* 8054E750-8054E804 0034D0 00B4+00 0/0 1/0 0/0 .text __sinit_d_a_npc_kakashi_cpp */
-void __sinit_d_a_npc_kakashi_cpp() {
- // NONMATCHING
-}
-
-#pragma push
-#pragma force_active on
-REGISTER_CTORS(0x8054E750, __sinit_d_a_npc_kakashi_cpp);
-#pragma pop
-
-/* 8054E804-8054E8F8 003584 00F4+00 1/1 0/0 0/0 .text
- * __ct__15daNpc_Kakashi_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc
- */
-daNpc_Kakashi_c::daNpc_Kakashi_c(daNpcT_faceMotionAnmData_c const* param_0,
- daNpcT_motionAnmData_c const* param_1,
- daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2,
- int param_3,
- daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4,
- int param_5, daNpcT_evtData_c const* param_6, char** param_7) {
- // NONMATCHING
-}
-
-/* 8054E8F8-8054E8FC 003678 0004+00 2/2 0/0 0/0 .text __ct__5csXyzFv */
-// csXyz::csXyz() {
-extern "C" void __ct__5csXyzFv() {
- /* empty function */
-}
-
-/* 8054E8FC-8054E980 00367C 0084+00 1/1 0/0 0/0 .text __ct__8dCcD_SphFv */
-// dCcD_Sph::dCcD_Sph() {
-extern "C" void __ct__8dCcD_SphFv() {
- // NONMATCHING
-}
-
-/* 8054E980-8054E9C8 003700 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */
-// cM3dGSph::~cM3dGSph() {
-extern "C" void __dt__8cM3dGSphFv() {
- // NONMATCHING
-}
-
-/* 8054E9C8-8054EA10 003748 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
-// cM3dGCyl::~cM3dGCyl() {
-extern "C" void __dt__8cM3dGCylFv() {
- // NONMATCHING
-}
-
-/* 8054EA10-8054EA58 003790 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
-// cM3dGAab::~cM3dGAab() {
-extern "C" void __dt__8cM3dGAabFv() {
- // NONMATCHING
-}
-
-/* 8054EA58-8054EAA0 0037D8 0048+00 2/1 0/0 0/0 .text __dt__21daNpc_Kakashi_Param_cFv */
-daNpc_Kakashi_Param_c::~daNpc_Kakashi_Param_c() {
- // NONMATCHING
-}
-
-/* 8054EAA0-8054EAA8 003820 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */
-static void func_8054EAA0() {
- // NONMATCHING
-}
-
-/* 8054EAA8-8054EAB0 003828 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */
-static void func_8054EAA8() {
- // NONMATCHING
-}
-
-/* ############################################################################################## */
-/* 8054F244-8054F248 0000AC 0004+00 0/0 0/0 0/0 .bss
- * sInstance__40JASGlobalInstance<19JASDefaultBankTable> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F244[4];
-#pragma pop
-
-/* 8054F248-8054F24C 0000B0 0004+00 0/0 0/0 0/0 .bss
- * sInstance__35JASGlobalInstance<14JASAudioThread> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F248[4];
-#pragma pop
-
-/* 8054F24C-8054F250 0000B4 0004+00 0/0 0/0 0/0 .bss sInstance__27JASGlobalInstance<7Z2SeMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F24C[4];
-#pragma pop
-
-/* 8054F250-8054F254 0000B8 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8Z2SeqMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F250[4];
-#pragma pop
-
-/* 8054F254-8054F258 0000BC 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SceneMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F254[4];
-#pragma pop
-
-/* 8054F258-8054F25C 0000C0 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2StatusMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F258[4];
-#pragma pop
-
-/* 8054F25C-8054F260 0000C4 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2DebugSys>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F25C[4];
-#pragma pop
-
-/* 8054F260-8054F264 0000C8 0004+00 0/0 0/0 0/0 .bss
- * sInstance__36JASGlobalInstance<15JAISoundStarter> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F260[4];
-#pragma pop
-
-/* 8054F264-8054F268 0000CC 0004+00 0/0 0/0 0/0 .bss
- * sInstance__35JASGlobalInstance<14Z2SoundStarter> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F264[4];
-#pragma pop
-
-/* 8054F268-8054F26C 0000D0 0004+00 0/0 0/0 0/0 .bss
- * sInstance__33JASGlobalInstance<12Z2SpeechMgr2> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F268[4];
-#pragma pop
-
-/* 8054F26C-8054F270 0000D4 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8JAISeMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F26C[4];
-#pragma pop
-
-/* 8054F270-8054F274 0000D8 0004+00 0/0 0/0 0/0 .bss sInstance__29JASGlobalInstance<9JAISeqMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F270[4];
-#pragma pop
-
-/* 8054F274-8054F278 0000DC 0004+00 0/0 0/0 0/0 .bss
- * sInstance__33JASGlobalInstance<12JAIStreamMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F274[4];
-#pragma pop
-
-/* 8054F278-8054F27C 0000E0 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SoundMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F278[4];
-#pragma pop
-
-/* 8054F27C-8054F280 0000E4 0004+00 0/0 0/0 0/0 .bss
- * sInstance__33JASGlobalInstance<12JAISoundInfo> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F27C[4];
-#pragma pop
-
-/* 8054F280-8054F284 0000E8 0004+00 0/0 0/0 0/0 .bss
- * sInstance__34JASGlobalInstance<13JAUSoundTable> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F280[4];
-#pragma pop
-
-/* 8054F284-8054F288 0000EC 0004+00 0/0 0/0 0/0 .bss
- * sInstance__38JASGlobalInstance<17JAUSoundNameTable> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F284[4];
-#pragma pop
-
-/* 8054F288-8054F28C 0000F0 0004+00 0/0 0/0 0/0 .bss
- * sInstance__33JASGlobalInstance<12JAUSoundInfo> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F288[4];
-#pragma pop
-
-/* 8054F28C-8054F290 0000F4 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SoundInfo>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F28C[4];
-#pragma pop
-
-/* 8054F290-8054F294 0000F8 0004+00 0/0 0/0 0/0 .bss
- * sInstance__34JASGlobalInstance<13Z2SoundObjMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F290[4];
-#pragma pop
-
-/* 8054F294-8054F298 0000FC 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2Audience>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F294[4];
-#pragma pop
-
-/* 8054F298-8054F29C 000100 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2FxLineMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F298[4];
-#pragma pop
-
-/* 8054F29C-8054F2A0 000104 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2EnvSeMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F29C[4];
-#pragma pop
+/* 8054EFFC-8054F02C -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_KAKASHI */
+extern actor_process_profile_definition g_profile_NPC_KAKASHI = {
+ fpcLy_CURRENT_e, // mLayerID
+ 7, // mListID
+ fpcPi_CURRENT_e, // mListPrio
+ PROC_NPC_KAKASHI, // mProcName
+ &g_fpcLf_Method.base, // sub_method
+ sizeof(daNpc_Kakashi_c), // mSize
+ 0, // mSizeOther
+ 0, // mParameters
+ &g_fopAc_Method.base, // sub_method
+ 319, // mPriority
+ &daNpc_Kakashi_MethodTable, // sub_method
+ 0x00044000, // mStatus
+ fopAc_NPC_e, // mActorType
+ fopAc_CULLBOX_CUSTOM_e, // cullType
+};
-/* 8054F2A0-8054F2A4 000108 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SpeechMgr>
- */
-#pragma push
-#pragma force_active on
-static u8 data_8054F2A0[4];
-#pragma pop
-
-/* 8054F2A4-8054F2A8 00010C 0004+00 0/0 0/0 0/0 .bss
- * sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> */
-#pragma push
-#pragma force_active on
-static u8 data_8054F2A4[4];
-#pragma pop
-
-/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
+AUDIO_INSTANCES
diff --git a/src/d/actor/d_a_npc_kasi_hana.cpp b/src/d/actor/d_a_npc_kasi_hana.cpp
index 39497000fe..8e5856fada 100644
--- a/src/d/actor/d_a_npc_kasi_hana.cpp
+++ b/src/d/actor/d_a_npc_kasi_hana.cpp
@@ -399,7 +399,7 @@ BOOL daNpcKasi_Mng_c::createHearts() {
&i_scale, &i_speedF, &i_speedY, -1, 0, NULL);
if (heart_p != NULL) {
Z2GetAudioMgr()->seStart(Z2SE_GIRLS_HEART, &i_pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
- fopAcM_OnStatus(heart_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(heart_p, fopAcM_STATUS_UNK_0x4000);
}
}
}
@@ -411,17 +411,17 @@ BOOL daNpcKasi_Mng_c::createHearts() {
void daNpcKasi_Mng_c::allDemoMove() {
daNpcKasiHana_c* hana_p = (daNpcKasiHana_c*)mHanaActorMngr.getActorP();
if (hana_p != NULL) {
- fopAcM_OnStatus(hana_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(hana_p, fopAcM_STATUS_UNK_0x4000);
}
daNpcKasiKyu_c* kyu_p = (daNpcKasiKyu_c*)mKyuActorMngr.getActorP();
if (kyu_p != NULL) {
- fopAcM_OnStatus(kyu_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(kyu_p, fopAcM_STATUS_UNK_0x4000);
}
daNpcKasiMich_c* mich_p = (daNpcKasiMich_c*)mMichActorMngr.getActorP();
if (mich_p != NULL) {
- fopAcM_OnStatus(mich_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(mich_p, fopAcM_STATUS_UNK_0x4000);
}
}
@@ -429,17 +429,17 @@ void daNpcKasi_Mng_c::allDemoMove() {
void daNpcKasi_Mng_c::allDemoNotMove() {
daNpcKasiHana_c* hana_p = (daNpcKasiHana_c*)mHanaActorMngr.getActorP();
if (hana_p != NULL) {
- fopAcM_OffStatus(hana_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(hana_p, fopAcM_STATUS_UNK_0x4000);
}
daNpcKasiKyu_c* kyu_p = (daNpcKasiKyu_c*)mKyuActorMngr.getActorP();
if (kyu_p != NULL) {
- fopAcM_OffStatus(kyu_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(kyu_p, fopAcM_STATUS_UNK_0x4000);
}
daNpcKasiMich_c* mich_p = (daNpcKasiMich_c*)mMichActorMngr.getActorP();
if (mich_p != NULL) {
- fopAcM_OffStatus(mich_p, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(mich_p, fopAcM_STATUS_UNK_0x4000);
}
}
@@ -953,7 +953,7 @@ void daNpcKasiHana_c::reset() {
mPath.setPathInfo(getRailNo(), fopAcM_GetRoomNo(this), 0);
mPath.setIdx(6);
} else if (mType == TYPE_CHEER) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
field_0x1441 = 0;
diff --git a/src/d/actor/d_a_npc_kasi_kyu.cpp b/src/d/actor/d_a_npc_kasi_kyu.cpp
index 16ad9ac9dd..31f17316a8 100644
--- a/src/d/actor/d_a_npc_kasi_kyu.cpp
+++ b/src/d/actor/d_a_npc_kasi_kyu.cpp
@@ -491,7 +491,7 @@ void daNpcKasiKyu_c::reset() {
mPath.setPathInfo(getRailNo(), fopAcM_GetRoomNo(this), 0);
mPath.setIdx(6);
} else if (mType == 1) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
field_0x1430 = 0;
diff --git a/src/d/actor/d_a_npc_kasi_mich.cpp b/src/d/actor/d_a_npc_kasi_mich.cpp
index b8b08a0a10..58d5bd1488 100644
--- a/src/d/actor/d_a_npc_kasi_mich.cpp
+++ b/src/d/actor/d_a_npc_kasi_mich.cpp
@@ -491,7 +491,7 @@ void daNpcKasiMich_c::reset() {
mPath.setPathInfo(getRailNo(), fopAcM_GetRoomNo(this), 0);
mPath.setIdx(6);
} else if (mType == 1) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
field_0x1430 = 0;
diff --git a/src/d/actor/d_a_npc_kn.cpp b/src/d/actor/d_a_npc_kn.cpp
index be42a4b7f3..fbbc18c54e 100644
--- a/src/d/actor/d_a_npc_kn.cpp
+++ b/src/d/actor/d_a_npc_kn.cpp
@@ -469,7 +469,7 @@ int daNpc_Kn_c::create() {
J3DModelData* model_data = mpModelMorf[0]->getModel()->getModelData();
fopAcM_SetMtx(this, mpModelMorf[0]->getModel()->getBaseTRMtx());
fopAcM_setCullSizeBox(this, -300.0f, -50.0f, -300.0f, 300.0f, 450.0f, 300.0f);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
mSound.init(&current.pos, &eyePos, 3, 1);
dKy_tevstr_init(&mTevStr, fopAcM_GetRoomNo(this), 0xFF);
diff --git a/src/d/actor/d_a_npc_kolin.cpp b/src/d/actor/d_a_npc_kolin.cpp
index dc548e8710..3d7b2dcc2c 100644
--- a/src/d/actor/d_a_npc_kolin.cpp
+++ b/src/d/actor/d_a_npc_kolin.cpp
@@ -796,7 +796,7 @@ void daNpc_Kolin_c::setParam() {
attention_info.flags = fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e;
if (mType == 4) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
}
scale.set(daNpc_Kolin_Param_c::m.common.scale, daNpc_Kolin_Param_c::m.common.scale, daNpc_Kolin_Param_c::m.common.scale);
@@ -981,10 +981,10 @@ void daNpc_Kolin_c::action() {
/* 8055574C-80555810 00184C 00C4+00 1/0 0/0 0/0 .text beforeMove__13daNpc_Kolin_cFv */
void daNpc_Kolin_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw) {
diff --git a/src/d/actor/d_a_npc_kolinb.cpp b/src/d/actor/d_a_npc_kolinb.cpp
index 6874676124..b125ac8b9b 100644
--- a/src/d/actor/d_a_npc_kolinb.cpp
+++ b/src/d/actor/d_a_npc_kolinb.cpp
@@ -576,10 +576,10 @@ void daNpc_Kolinb_c::action() {
/* 80A46824-80A468E8 000F84 00C4+00 1/0 0/0 0/0 .text beforeMove__14daNpc_Kolinb_cFv */
void daNpc_Kolinb_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw) {
diff --git a/src/d/actor/d_a_npc_maro.cpp b/src/d/actor/d_a_npc_maro.cpp
index fb53f1ef7e..081f016e45 100644
--- a/src/d/actor/d_a_npc_maro.cpp
+++ b/src/d/actor/d_a_npc_maro.cpp
@@ -1003,9 +1003,9 @@ void daNpc_Maro_c::action() {
/* 8055D5C4-8055D688 002124 00C4+00 1/0 0/0 0/0 .text beforeMove__12daNpc_Maro_cFv */
void daNpc_Maro_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw) {
attention_info.flags = 0;
diff --git a/src/d/actor/d_a_npc_moir.cpp b/src/d/actor/d_a_npc_moir.cpp
index 3418eba05e..239e46837a 100644
--- a/src/d/actor/d_a_npc_moir.cpp
+++ b/src/d/actor/d_a_npc_moir.cpp
@@ -305,7 +305,7 @@ cPhs__Step daNpcMoiR_c::Create() {
return cPhs_ERROR_e;
}
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
mMode = MODE_2;
}
diff --git a/src/d/actor/d_a_npc_shad.cpp b/src/d/actor/d_a_npc_shad.cpp
index 79935086b9..bdae693e3e 100644
--- a/src/d/actor/d_a_npc_shad.cpp
+++ b/src/d/actor/d_a_npc_shad.cpp
@@ -390,7 +390,7 @@ cPhs__Step daNpcShad_c::Create() {
return cPhs_ERROR_e;
}
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
mMode = 2;
}
}
@@ -845,7 +845,7 @@ void daNpcShad_c::reset() {
mMotionMorfOverride = 0.0f;
if (isSneaking()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
setWaitAction();
@@ -1886,7 +1886,7 @@ BOOL daNpcShad_c::EvCut_ToChantSpell2(int i_cutIndex) {
actor = NULL;
fopAcM_SearchByName(PROC_CSTAF, (fopAc_ac_c**)&actor);
if (actor != NULL) {
- fopAcM_OnStatus(actor, fopAcM_STATUS_UNK_000800);
+ fopAcM_OnStatus(actor, fopAcM_STATUS_UNK_0x800);
}
dComIfGp_getEvent().startCheckSkipEdge(this);
diff --git a/src/d/actor/d_a_npc_taro.cpp b/src/d/actor/d_a_npc_taro.cpp
index eca445682f..fd790f0856 100644
--- a/src/d/actor/d_a_npc_taro.cpp
+++ b/src/d/actor/d_a_npc_taro.cpp
@@ -993,9 +993,9 @@ void daNpc_Taro_c::action() {
/* 80567EB4-80567F78 002114 00C4+00 1/0 0/0 0/0 .text beforeMove__12daNpc_Taro_cFv */
void daNpc_Taro_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw) {
attention_info.flags = 0;
diff --git a/src/d/actor/d_a_npc_tk.cpp b/src/d/actor/d_a_npc_tk.cpp
index 8aa2274315..e37710d87a 100644
--- a/src/d/actor/d_a_npc_tk.cpp
+++ b/src/d/actor/d_a_npc_tk.cpp
@@ -147,7 +147,7 @@ void daNPC_TK_c::setActionMode(int param_0) {
field_0x694 = 0;
field_0x6c5 = 0;
current.angle.y = shape_angle.y;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
}
}
@@ -1547,7 +1547,7 @@ void daNPC_TK_c::executeAttackLink() {
field_0x694 = 1;
setBck(8, 2, 10.0f, 1.0f);
mSound.startCreatureVoice(Z2SE_HAWK_V_TAKE_OFF, -1);
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x4000);
field_0x6b4 = 0x1e;
break;
}
@@ -1653,7 +1653,7 @@ void daNPC_TK_c::executeAttackLink() {
cLib_chaseF(&speedF, 30.0f, 3.0f);
if (field_0x6b0 == 0) {
if (dComIfGp_checkPlayerStatus0(0, fopAcM_STATUS_HOOK_CARRY_NOW) ||
- dComIfGp_checkPlayerStatus0(0, fopAcM_STATUS_UNK_000100) ||
+ dComIfGp_checkPlayerStatus0(0, fopAcM_STATUS_UNK_0x100) ||
daPy_getPlayerActorClass()->checkWolfTagLockJumpReady())
{
field_0x6b0 = 10;
diff --git a/src/d/actor/d_a_npc_yamid.cpp b/src/d/actor/d_a_npc_yamid.cpp
index b4efe97fcc..9dbb17f057 100644
--- a/src/d/actor/d_a_npc_yamid.cpp
+++ b/src/d/actor/d_a_npc_yamid.cpp
@@ -189,7 +189,7 @@ cPhs__Step daNpc_yamiD_c::create() {
fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx());
fopAcM_setCullSizeFar(this, 3.0f);
fopAcM_setCullSizeBox(this, -300.0f, -50.0f, -300.0f, 300.0f, 450.0f, 300.0f);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
mSound.init(&current.pos, &eyePos, 3, 1);
diff --git a/src/d/actor/d_a_npc_ykm.cpp b/src/d/actor/d_a_npc_ykm.cpp
index e079214598..0096d18966 100644
--- a/src/d/actor/d_a_npc_ykm.cpp
+++ b/src/d/actor/d_a_npc_ykm.cpp
@@ -902,7 +902,7 @@ void daNpc_ykM_c::reset() {
case TYPE_3:
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
break;
case TYPE_4:
@@ -911,13 +911,13 @@ void daNpc_ykM_c::reset() {
case TYPE_5:
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
eventInfo.setIdx(1);
break;
case TYPE_6:
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
eventInfo.setIdx(2);
break;
}
@@ -991,15 +991,15 @@ void daNpc_ykM_c::setParam() {
mAcchCir.SetWallR(mWallR);
mAcchCir.SetWallH(daNpc_ykM_Param_c::m.common.knee_length);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
mRealShadowSize = daNpc_ykM_Param_c::m.common.real_shadow_size;
if (field_0x157b != 0) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
}
if (mType == TYPE_3) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
mRealShadowSize = 1800.0f;
}
@@ -1221,10 +1221,10 @@ void daNpc_ykM_c::action() {
/* 80B55658-80B5571C 002258 00C4+00 1/0 0/0 0/0 .text beforeMove__11daNpc_ykM_cFv */
void daNpc_ykM_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw) {
@@ -2422,7 +2422,7 @@ int daNpc_ykM_c::cutLv5DungeonClear(int i_cutIndex) {
mMotionSeqMngr.setNo(MOTION_WAIT_X, 0.0f, FALSE, 0);
mJntAnm.lookNone(1);
mHide = false;
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
break;
case 1:
diff --git a/src/d/actor/d_a_npc_ykw.cpp b/src/d/actor/d_a_npc_ykw.cpp
index 931e3a98c5..c34a17ae4c 100644
--- a/src/d/actor/d_a_npc_ykw.cpp
+++ b/src/d/actor/d_a_npc_ykw.cpp
@@ -700,14 +700,14 @@ void daNpc_ykW_c::reset() {
}
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
break;
case 5:
case 6:
eventInfo.setIdx(1);
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
break;
default:
@@ -790,7 +790,7 @@ void daNpc_ykW_c::setParam() {
mRealShadowSize = HIO_PARAM(this)->common.real_shadow_size;
if (field_0xf80 == 4) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
mRealShadowSize = 1500.0f;
}
@@ -939,9 +939,9 @@ void daNpc_ykW_c::action() {
/* 80B60AFC-80B60BC0 001CDC 00C4+00 1/0 0/0 0/0 .text beforeMove__11daNpc_ykW_cFv */
void daNpc_ykW_c::beforeMove() {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (checkHide()) {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
}
if (checkHide() || mNoDraw != 0) {
attention_info.flags = 0;
@@ -1666,7 +1666,7 @@ BOOL daNpc_ykW_c::cutLv5DungeonClear(int param_0) {
mHide = false;
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x8000000);
newPlayerPos.setall(0.0f);
@@ -1864,7 +1864,7 @@ BOOL daNpc_ykW_c::cutLv5DungeonClear(int param_0) {
mFindCount = 0;
fpcM_Search(srchItemHeart, this);
for (unkInt1 = 0; unkInt1 < mFindCount; unkInt1++) {
- fopAcM_OffStatus(mFindActorPtrs[unkInt1], fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(mFindActorPtrs[unkInt1], fopAcM_STATUS_UNK_0x4000);
}
}
}
@@ -1905,7 +1905,7 @@ BOOL daNpc_ykW_c::cutLv5DungeonClear(int param_0) {
&unkXyz1, &unkFloat2, &unkFloat3, -1, NULL, NULL);
if (unkActor1 != NULL) {
mDoAud_seStart(Z2SE_OBJ_YO_HEART_S, &itemPos, 0, 0);
- fopAcM_OnStatus(unkActor1, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(unkActor1, fopAcM_STATUS_UNK_0x4000);
}
mEventTimer = (int)(unkFloat1 * 1.8000001f) + 6;
field_0x1038++;
@@ -2380,7 +2380,7 @@ int daNpc_ykW_c::cutHug(int param_0) {
&heartScale, &heartSpeed, &heartSpeedY, -1, 0, 0);
if (itemActor != NULL) {
mDoAud_seStart(Z2SE_OBJ_YO_HEART_S, &heartPos, 0, 0);
- fopAcM_OnStatus(itemActor, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(itemActor, fopAcM_STATUS_UNK_0x4000);
}
mEventTimer = timer;
@@ -2489,7 +2489,7 @@ int daNpc_ykW_c::wait(void* param_0) {
case 2:
if (field_0x106f != 0) {
mHide = true;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
if (putUtuwaHeart(0, 0.0f, 0.0f, 0x5000, 0)) {
fopAcM_delete(this);
}
diff --git a/src/d/actor/d_a_npc_zelda.cpp b/src/d/actor/d_a_npc_zelda.cpp
index e83c09e439..f2519b17bf 100644
--- a/src/d/actor/d_a_npc_zelda.cpp
+++ b/src/d/actor/d_a_npc_zelda.cpp
@@ -201,7 +201,7 @@ int daNpc_Zelda_c::create() {
J3DModelData* unusedModelData = mpMorf[0]->getModel()->getModelData();
fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx());
fopAcM_setCullSizeBox(this, -200.0f, -100.0f, -200.0f, 200.0f, 300.0f, 200.0f);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_80000000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x8000000);
mSound.init(&current.pos, &eyePos, 3, 1);
#if DEBUG
diff --git a/src/d/actor/d_a_obj_batta.cpp b/src/d/actor/d_a_obj_batta.cpp
index 041406965e..41cf4c2882 100644
--- a/src/d/actor/d_a_obj_batta.cpp
+++ b/src/d/actor/d_a_obj_batta.cpp
@@ -336,7 +336,7 @@ void daObjBATTA_c::bin_wait() {
if (field_0x9e8 == 0) {
J3DAnmTransform* anm = (J3DAnmTransform*)dComIfG_getObjectRes("Bat", 8);
mpMorf->setAnm(anm, 2, 4.0f, 1.0f, 0.0f, -1.0f);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
mDraw = false;
gravity = 0.0f;
maxFallSpeed = 0.0f;
diff --git a/src/d/actor/d_a_obj_crvfence.cpp b/src/d/actor/d_a_obj_crvfence.cpp
index 35c212ecb9..4192d25dd4 100644
--- a/src/d/actor/d_a_obj_crvfence.cpp
+++ b/src/d/actor/d_a_obj_crvfence.cpp
@@ -184,7 +184,7 @@ void daObjCRVFENCE_c::NormalAction() {
if (!field_0x5f4) {
e_wb_class* wb_p = (e_wb_class*)fpcM_Search(s_obj_sub, this);
if (wb_p != NULL && wb_p->mActionID == ACT_PL_RIDE2) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
fopAcM_seStartCurrent(this, Z2SE_OBJ_SAKU_BREAK, 0);
cXyz sp5c(fopAcM_GetPosition(&wb_p->mEnemy));
Mtx mtx;
diff --git a/src/d/actor/d_a_obj_gomikabe.cpp b/src/d/actor/d_a_obj_gomikabe.cpp
index 1adbff182f..014e5182fb 100644
--- a/src/d/actor/d_a_obj_gomikabe.cpp
+++ b/src/d/actor/d_a_obj_gomikabe.cpp
@@ -133,7 +133,7 @@ void daObjGOMIKABE_c::BreakSet() {
field_0x5a2++;
mAction++;
Z2GetAudioMgr()->seStart(Z2SE_OBJ_G_KABE_BRK, &current.pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
if (mpBgW != NULL && mpBgW->ChkUsed()) {
dComIfG_Bgsp().Release(mpBgW);
}
diff --git a/src/d/actor/d_a_obj_gra2.cpp b/src/d/actor/d_a_obj_gra2.cpp
index ee641a5ba2..bd8c694986 100644
--- a/src/d/actor/d_a_obj_gra2.cpp
+++ b/src/d/actor/d_a_obj_gra2.cpp
@@ -639,7 +639,7 @@ int daObj_GrA_c::init() {
setRoomNo();
if (mMode == 2) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x4000);
}
field_0x1528.setPathInfo(getPathNo(), fopAcM_GetRoomNo(this), 1);
diff --git a/src/d/actor/d_a_obj_gra2_soldier.inc b/src/d/actor/d_a_obj_gra2_soldier.inc
index 98fbc6b4b5..c094a575f1 100644
--- a/src/d/actor/d_a_obj_gra2_soldier.inc
+++ b/src/d/actor/d_a_obj_gra2_soldier.inc
@@ -1411,7 +1411,7 @@ int daObj_GrA_c::thrown(void* param_1) {
switch (field_0xa7c) {
case 0:
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
field_0x1ff0 = 1;
mDemoCamMode = 0;
field_0x209c = 1;
@@ -2229,9 +2229,9 @@ int daObj_GrA_c::waitDemo(void* param_1) {
} else {
#ifdef DEBUG
if (daObj_GrA_Param_c::m.field_0x8a) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
} else {
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
}
#endif
@@ -2245,7 +2245,7 @@ int daObj_GrA_c::waitDemo(void* param_1) {
case 2:
#ifdef DEBUG
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x100);
#endif
break;
}
@@ -2318,7 +2318,7 @@ int daObj_GrA_c::startDemo(void* param_1) {
player->changeOriginalDemo();
gra_p->field_0x204c.entry(this);
gra_p->setProcess(&daObj_GrA_c::soldierDemo);
- fopAcM_OnStatus(gra_p, fopAcM_STATUS_UNK_008000);
+ fopAcM_OnStatus(gra_p, fopAcM_STATUS_UNK_0x8000);
field_0x2056 = 0;
dComIfGp_getEvent().setSkipProc(this, skipCallBack, 0);
dComIfGp_getEvent().onSkipFade();
diff --git a/src/d/actor/d_a_obj_kag.cpp b/src/d/actor/d_a_obj_kag.cpp
index 31a6d61ddd..9e208624b0 100644
--- a/src/d/actor/d_a_obj_kag.cpp
+++ b/src/d/actor/d_a_obj_kag.cpp
@@ -395,7 +395,7 @@ void daObjKAG_c::walk() {
void daObjKAG_c::bin_wait() {
if (field_0x83c == 0) {
mpModelMorf->setAnm((J3DAnmTransform*)dComIfG_getObjectRes("I_Kag", BCK_KAG_FLY), J3DFrameCtrl::EMode_LOOP, 5.0f, 0.0f, 0.0f, -1.0f);
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
mDraw = false;
gravity = 0.0f;
maxFallSpeed = 0.0f;
diff --git a/src/d/actor/d_a_obj_kamakiri.cpp b/src/d/actor/d_a_obj_kamakiri.cpp
index cfafa0705a..58cdc78758 100644
--- a/src/d/actor/d_a_obj_kamakiri.cpp
+++ b/src/d/actor/d_a_obj_kamakiri.cpp
@@ -804,7 +804,7 @@ int daObjKAM_c::create() {
if (field_0x9c0 == 2) {
field_0x56c = 0;
shape_angle.x -= (s16)0x2000;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
} else {
mDraw = true;
}
diff --git a/src/d/actor/d_a_obj_kshutter.cpp b/src/d/actor/d_a_obj_kshutter.cpp
index 68aef05a50..2f532c757f 100644
--- a/src/d/actor/d_a_obj_kshutter.cpp
+++ b/src/d/actor/d_a_obj_kshutter.cpp
@@ -214,7 +214,7 @@ int daObjKshtr_c::Create() {
}
if (mType == TYPE_V_SHUTTER) {
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000100);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x100);
}
initBaseMtx();
diff --git a/src/d/actor/d_a_obj_scannon.cpp b/src/d/actor/d_a_obj_scannon.cpp
index deaa184f66..9bd5e01163 100644
--- a/src/d/actor/d_a_obj_scannon.cpp
+++ b/src/d/actor/d_a_obj_scannon.cpp
@@ -754,7 +754,7 @@ void daSCannon_c::changeScene() {
dComIfGp_getVibration().StopQuake(0x1F);
}
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000080);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x80);
if (field_0x619 == 0) {
field_0x619 = 1;
diff --git a/src/d/actor/d_a_obj_scannon_ten.cpp b/src/d/actor/d_a_obj_scannon_ten.cpp
index 034e81dc32..3bff6a5e37 100644
--- a/src/d/actor/d_a_obj_scannon_ten.cpp
+++ b/src/d/actor/d_a_obj_scannon_ten.cpp
@@ -371,7 +371,7 @@ void daObjSCannonTen_c::demoInitFinish() {
mDoAud_seStart(Z2SE_AL_V_CANON_JUMP, NULL, 0, 0);
initEmtLine();
- fopAcM_OffStatus(this, fopAcM_STATUS_UNK_000080);
+ fopAcM_OffStatus(this, fopAcM_STATUS_UNK_0x80);
int* timer_p = dComIfGp_evmng_getMyIntegerP(mStaffId, "Timer");
if (timer_p != NULL) {
@@ -414,7 +414,7 @@ void daObjSCannonTen_c::changeScene() {
dComIfGp_getVibration().StopQuake(0x1F);
}
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_000080);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x80);
dStage_changeScene(1, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1);
}
diff --git a/src/d/actor/d_a_obj_ten.cpp b/src/d/actor/d_a_obj_ten.cpp
index 287c72a8ef..aac5051ad6 100644
--- a/src/d/actor/d_a_obj_ten.cpp
+++ b/src/d/actor/d_a_obj_ten.cpp
@@ -737,7 +737,7 @@ int daObjTEN_c::create() {
if (field_0x624 == 2) {
field_0x56c = 0;
shape_angle.x -= 0x2000;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
} else {
mDraw = true;
}
diff --git a/src/d/actor/d_a_obj_tombo.cpp b/src/d/actor/d_a_obj_tombo.cpp
index 0d51208c58..af7e401f0a 100644
--- a/src/d/actor/d_a_obj_tombo.cpp
+++ b/src/d/actor/d_a_obj_tombo.cpp
@@ -656,7 +656,7 @@ int daObjTOMBO_c::create() {
if (field_0x75c == 2) {
field_0x56c = 0;
shape_angle.x -= 0x2000;
- fopAcM_OnStatus(this, fopAcM_STATUS_UNK_004000);
+ fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x4000);
} else {
mDraw = true;
}
diff --git a/src/d/d_com_static.cpp b/src/d/d_com_static.cpp
index 6160cfd0aa..3f63771a17 100644
--- a/src/d/d_com_static.cpp
+++ b/src/d/d_com_static.cpp
@@ -230,8 +230,8 @@ int daNpcMsg_setEvtNum(u8 iEvtNum) {
}
/* 80031648-800316A8 02BF88 0060+00 0/0 0/0 6/6 .text daNpcKakashi_chkSwdTutorialStage__Fv */
-BOOL daNpcKakashi_chkSwdTutorialStage() {
- return !strcmp(dComIfGp_getStartStageName(), "F_SP103") && dComIfG_play_c::getLayerNo(0) == 8;
+u8 daNpcKakashi_chkSwdTutorialStage() {
+ return strcmp(dComIfGp_getStartStageName(), "F_SP103") == 0 && dComIfG_play_c::getLayerNo(0) == 8;
}
/* 800316A8-800316E0 02BFE8 0038+00 0/0 0/0 3/3 .text daNpcKakashi_setSwdTutorialStep__FUc */