summaryrefslogtreecommitdiff
path: root/src/d/actor
diff options
context:
space:
mode:
authorCaroline Madsen <69010899+randomsalience@users.noreply.github.com>2025-02-26 03:41:51 -0500
committerGitHub <noreply@github.com>2025-02-26 00:41:51 -0800
commit4453d0617ecf42e83e2266f0422ce3df25aa4216 (patch)
treece3b3420d3edb278b69d42f8d2cb427135ec5793 /src/d/actor
parente3d0b94122116ae1cd8188078ad6e710eb54a26c (diff)
d_a_npc_yelia equivalent (#2310)
Diffstat (limited to 'src/d/actor')
-rw-r--r--src/d/actor/d_a_demo_item.cpp8
-rw-r--r--src/d/actor/d_a_npc.cpp40
-rw-r--r--src/d/actor/d_a_npc_hanjo.cpp194
-rw-r--r--src/d/actor/d_a_npc_yelia.cpp3095
4 files changed, 1563 insertions, 1774 deletions
diff --git a/src/d/actor/d_a_demo_item.cpp b/src/d/actor/d_a_demo_item.cpp
index 71b5af7910..11aa20ecc2 100644
--- a/src/d/actor/d_a_demo_item.cpp
+++ b/src/d/actor/d_a_demo_item.cpp
@@ -350,14 +350,14 @@ void daDitem_c::set_pos() {
};
if (chkArgFlag(0x8)) {
- current.pos = field_0x92c;
+ current.pos = mOffsetPos;
return;
} else if (chkArgFlag(0x2)) {
offset = offset_tbl[1];
} else if (chkArgFlag(0x4)) {
offset = offset_tbl[1];
} else if (chkArgFlag(0x10)) {
- offset = field_0x92c;
+ offset = mOffsetPos;
} else {
offset = offset_tbl[0];
}
@@ -508,8 +508,8 @@ int daDitem_c::execute() {
if (chkDraw()) {
f32 target_scale_x = 1.0f;
- if (field_0x938 != 0.0f) {
- target_scale_x = field_0x938;
+ if (mMaxScale != 0.0f) {
+ target_scale_x = mMaxScale;
}
cLib_chaseF(&scale.x, target_scale_x, 0.35f);
diff --git a/src/d/actor/d_a_npc.cpp b/src/d/actor/d_a_npc.cpp
index c94d9d1717..2e6d87532e 100644
--- a/src/d/actor/d_a_npc.cpp
+++ b/src/d/actor/d_a_npc.cpp
@@ -595,16 +595,16 @@ void daNpcT_JntAnm_c::setParam(fopAc_ac_c* i_actor, J3DModel* i_model, cXyz* i_e
mAttnPos.setall(0.0f);
switch (mMode) {
- case 0:
+ case LOOK_NONE:
mAttnPosP = NULL;
break;
- case 1:
+ case LOOK_PLAYER:
mAttnPosP = &daPy_getPlayerActorClass()->attention_info.position;
mAttnPos = *mAttnPosP;
break;
- case 2: {
+ case LOOK_ACTOR: {
fopAc_ac_c* actor = mActrMngr.getActorP();
if (actor != NULL) {
mAttnPosP = &actor->attention_info.position;
@@ -616,13 +616,13 @@ void daNpcT_JntAnm_c::setParam(fopAc_ac_c* i_actor, J3DModel* i_model, cXyz* i_e
break;
}
- case 3:
+ case LOOK_POS:
if (mAttnPosP != NULL) {
mAttnPos = *mAttnPosP;
}
break;
- case 4: {
+ case LOOK_CAMERA: {
camera_class* camera = dComIfGp_getCamera(dComIfGp_getPlayerCameraID(0));
if (camera != NULL) {
mAttnPosP = fopCamM_GetEye_p(camera);
@@ -631,7 +631,7 @@ void daNpcT_JntAnm_c::setParam(fopAc_ac_c* i_actor, J3DModel* i_model, cXyz* i_e
break;
}
- case 5:
+ case LOOK_MODE_5:
if (mAttnPosP != NULL) {
mMinRad[2].y = 0.0f;
mMaxRad[2].y = 0.0f;
@@ -641,7 +641,7 @@ void daNpcT_JntAnm_c::setParam(fopAc_ac_c* i_actor, J3DModel* i_model, cXyz* i_e
}
break;
- case 6:
+ case LOOK_MODE_6:
if (mAttnPosP != NULL) {
mMinRad[2].y = 0.0f;
mMaxRad[2].y = 0.0f;
@@ -651,8 +651,8 @@ void daNpcT_JntAnm_c::setParam(fopAc_ac_c* i_actor, J3DModel* i_model, cXyz* i_e
}
break;
- case 7:
- case 8: {
+ case LOOK_MODE_7:
+ case LOOK_MODE_8: {
if (cLib_calcTimer(&mTimer) == 0) {
field_0x13c ^= 1;
mTimer = getTime();
@@ -1177,8 +1177,8 @@ int daNpcT_c::execute() {
}
/* 8014886C-80148C70 1431AC 0404+00 0/0 0/0 58/58 .text draw__8daNpcT_cFiifP11_GXColorS10fiii */
-int daNpcT_c::draw(int param_0, int i_setEffMtx, f32 param_2, GXColorS10* i_color, f32 param_4,
- int i_drawGhost, int i_noShadow, int i_simpleShadow) {
+int daNpcT_c::draw(BOOL param_0, BOOL i_setEffMtx, f32 param_2, GXColorS10* i_color, f32 param_4,
+ BOOL i_drawGhost, BOOL i_noShadow, BOOL i_simpleShadow) {
J3DModel* model = mpMorf[0]->getModel();
J3DModelData* modelData = model->getModelData();
field_0xe34 = 1;
@@ -1205,7 +1205,7 @@ int daNpcT_c::draw(int param_0, int i_setEffMtx, f32 param_2, GXColorS10* i_colo
if (cM3d_IsZero(r) == false) {
tevStr.TevColor.r = r * 20.0f;
}
- } else if (param_0 != 0) {
+ } else if (param_0) {
tevStr.TevColor.g = 20;
}
@@ -1517,11 +1517,11 @@ void daNpcT_c::ctrlMotion() {
restart = TRUE;
}
- setMotionAnm(anmIdx, morf < 0.0f ? field_0xa84 : morf, restart);
+ setMotionAnm(anmIdx, morf < 0.0f ? mMorfFrames : morf, restart);
field_0xdfc = 0.0f;
- if (field_0xa88) {
+ if (mCreating) {
mpMorf[0]->setMorf(0.0f);
field_0xdfc = 0.0f;
@@ -1538,7 +1538,7 @@ int daNpcT_c::ctrlMsgAnm(int* param_0, int* param_1, fopAc_ac_c* param_2, int pa
*param_0 = -1;
*param_1 = -1;
- if (param_3 != 0 || eventInfo.checkCommandTalk() || field_0xdac != -1) {
+ if (param_3 != 0 || eventInfo.checkCommandTalk() || mStaffId != -1) {
fopAc_ac_c* talk_partner = dComIfGp_event_getTalkPartner();
dMsgObject_c* talk_partner_conv = (dMsgObject_c*)talk_partner;
@@ -1691,9 +1691,9 @@ BOOL daNpcT_c::evtProc() {
field_0xe26 = true;
} else {
- if (field_0xdac != -1) {
- field_0xe22 = 1;
- field_0xdac = -1;
+ if (mStaffId != -1) {
+ mMode = MODE_INIT;
+ mStaffId = -1;
}
field_0xdb4 = 0;
field_0xe26 = true;
@@ -1718,7 +1718,7 @@ void daNpcT_c::setFootPos() {
mFootROffset = mFootRPos - current.pos;
}
- if (field_0xa88) {
+ if (mCreating) {
mOldFootLOffset = mFootLOffset;
mOldFootROffset = mFootROffset;
}
@@ -2325,7 +2325,7 @@ int daNpcT_c::getActorDistance(fopAc_ac_c* i_actor, int i_distIndex1, int i_dist
/* 8014BBF0-8014BC78 146530 0088+00 0/0 1/1 180/180 .text initTalk__8daNpcT_cFiPP10fopAc_ac_c */
BOOL daNpcT_c::initTalk(int i_flowID, fopAc_ac_c** param_1) {
mFlow.init(this, i_flowID, 0, param_1);
- field_0xdc8 = fopAcM_searchPlayerAngleY(this);
+ mPlayerAngle = fopAcM_searchPlayerAngleY(this);
if (checkStep()) {
mStepMode = 0;
}
diff --git a/src/d/actor/d_a_npc_hanjo.cpp b/src/d/actor/d_a_npc_hanjo.cpp
index cb3a5256eb..aeb53d4baa 100644
--- a/src/d/actor/d_a_npc_hanjo.cpp
+++ b/src/d/actor/d_a_npc_hanjo.cpp
@@ -768,7 +768,7 @@ int daNpc_Hanjo_c::create() {
(daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4,
l_motionSequenceData, 4, l_evtList, l_resNameList);
mType = getType();
- field_0xa7c = getFlowNodeNo();
+ mFlowNodeNo = getFlowNodeNo();
mTwilight = 0;
int rv = loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
if (rv == cPhs_COMPLEATE_e) {
@@ -789,7 +789,7 @@ int daNpc_Hanjo_c::create() {
field_0x9c0.init(&mAcch, 60.0f, 0.0f);
reset();
mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1,
- &field_0x8a0, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this),
+ &mAcchCir, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this),
fopAcM_GetShapeAngle_p(this));
mCcStts.Init(daNpc_Hanjo_Param_c::m.field_0x10, 0, this);
mCyl1.Set(mCcDCyl);
@@ -808,9 +808,9 @@ int daNpc_Hanjo_c::create() {
mStones[i].getSphP()->Set(*(dCcD_SrcSph*)&mStoneCcDSph);
mStones[i].getSphP()->SetStts(&mCcStts);
}
- field_0xa88 = 1;
+ mCreating = 1;
Execute();
- field_0xa88 = 0;
+ mCreating = 0;
}
return rv;
}
@@ -1020,11 +1020,11 @@ void daNpc_Hanjo_c::reset() {
/* 809F9FCC-809FA050 00102C 0084+00 1/0 0/0 0/0 .text afterJntAnm__13daNpc_Hanjo_cFi */
void daNpc_Hanjo_c::afterJntAnm(int param_1) {
if (param_1 == 1) {
- mDoMtx_stack_c::YrotM(field_0xd08.getAngleZ(1));
- mDoMtx_stack_c::ZrotM(-field_0xd08.getAngleX(1));
+ mDoMtx_stack_c::YrotM(mStagger.getAngleZ(1));
+ mDoMtx_stack_c::ZrotM(-mStagger.getAngleX(1));
} else if (param_1 == 4) {
- mDoMtx_stack_c::YrotM(field_0xd08.getAngleZ(0));
- mDoMtx_stack_c::ZrotM(field_0xd08.getAngleX(0));
+ mDoMtx_stack_c::YrotM(mStagger.getAngleZ(0));
+ mDoMtx_stack_c::ZrotM(mStagger.getAngleX(0));
}
}
@@ -1059,14 +1059,14 @@ void daNpc_Hanjo_c::setParam() {
scale.set(daNpc_Hanjo_Param_c::m.field_0x08, daNpc_Hanjo_Param_c::m.field_0x08,
daNpc_Hanjo_Param_c::m.field_0x08);
mCcStts.SetWeight(daNpc_Hanjo_Param_c::m.field_0x10);
- field_0xdec = daNpc_Hanjo_Param_c::m.field_0x14;
- field_0xdf0 = daNpc_Hanjo_Param_c::m.field_0x1c;
- field_0xdf8 = daNpc_Hanjo_Param_c::m.field_0x50;
- field_0x8a0.SetWallR(field_0xdf0);
- field_0x8a0.SetWallH(daNpc_Hanjo_Param_c::m.field_0x18);
+ mCylH = daNpc_Hanjo_Param_c::m.field_0x14;
+ mWallR = daNpc_Hanjo_Param_c::m.field_0x1c;
+ mAttnFovY = daNpc_Hanjo_Param_c::m.field_0x50;
+ mAcchCir.SetWallR(mWallR);
+ mAcchCir.SetWallH(daNpc_Hanjo_Param_c::m.field_0x18);
field_0xde8 = daNpc_Hanjo_Param_c::m.field_0x0c;
field_0xa80 = daNpc_Hanjo_Param_c::m.field_0x6c;
- field_0xa84 = daNpc_Hanjo_Param_c::m.field_0x44;
+ mMorfFrames = daNpc_Hanjo_Param_c::m.field_0x44;
gravity = daNpc_Hanjo_Param_c::m.field_0x04;
}
@@ -1074,7 +1074,7 @@ void daNpc_Hanjo_c::setParam() {
*/
BOOL daNpc_Hanjo_c::checkChangeEvt() {
if (!chkAction(&daNpc_Hanjo_c::talk)) {
- field_0xe2e[0] = 0;
+ mPreItemNo = 0;
if (dComIfGp_event_chkTalkXY()) {
if (dComIfGp_evmng_ChkPresentEnd()) {
mEvtNo = 1;
@@ -1189,11 +1189,11 @@ BOOL daNpc_Hanjo_c::evtTalk() {
BOOL daNpc_Hanjo_c::evtCutProc() {
int staffId = dComIfGp_getEventManager().getMyStaffId("Hanjo", this, -1);
if (staffId != -1) {
- field_0xdac = staffId;
+ mStaffId = staffId;
int actIdx =
- dComIfGp_getEventManager().getMyActIdx(field_0xdac, (char**)mCutNameList, 6, 0, 0);
- if ((this->*(mCutList[actIdx]))(field_0xdac) != 0) {
- dComIfGp_getEventManager().cutEnd(field_0xdac);
+ dComIfGp_getEventManager().getMyActIdx(mStaffId, (char**)mCutNameList, 6, 0, 0);
+ if ((this->*(mCutList[actIdx]))(mStaffId) != 0) {
+ dComIfGp_getEventManager().cutEnd(mStaffId);
}
return true;
}
@@ -1207,16 +1207,16 @@ void daNpc_Hanjo_c::action() {
cCcD_Obj* hitObj = mCyl1.GetTgHitObj();
if (hitObj->ChkAtType(AT_TYPE_THROW_OBJ) && (fopAcM_GetName(hitActor) != PROC_NPC_TK || mType != TYPE_1))
{
- field_0xd08.setParam(this,
+ mStagger.setParam(this,
hitActor, mCurAngle.y);
setDamage(0, 7, 0);
mDamageTimerStart = 0;
mJntAnm.lookNone(1);
}
}
- if (field_0xd08.checkRebirth()) {
- field_0xd08.initialize();
- field_0xe22 = 1;
+ if (mStagger.checkRebirth()) {
+ mStagger.initialize();
+ mMode = 1;
}
if (field_0x16e0) {
if (field_0x16ec == field_0x16e0) {
@@ -1381,7 +1381,7 @@ static u8 l_HIO[4];
void daNpc_Hanjo_c::setAttnPos() {
cXyz cStack_38(-10.0f, 10.0f, 0.0f);
cXyz cStack_44;
- field_0xd08.calc(0);
+ mStagger.calc(0);
f32 dVar8 = cM_s2rad(mCurAngle.y - field_0xd7e.y);
J3DModel* model = mpMorf[0]->getModel();
mJntAnm.setParam(this, model, &cStack_38, getBackboneJointNo(), getNeckJointNo(),
@@ -1423,14 +1423,14 @@ void daNpc_Hanjo_c::setAttnPos() {
/* 809FAF90-809FB2C4 001FF0 0334+00 1/0 0/0 0/0 .text setCollision__13daNpc_Hanjo_cFv */
void daNpc_Hanjo_c::setCollision() {
cXyz cStack_4c;
- if (field_0xe25 == 0) {
+ if (mHide == 0) {
u32 tgType = 0xd8fbfdff;
u32 tgSPrm = 0x1f;
if (mTwilight != 0) {
tgType = 0;
tgSPrm = 0;
} else {
- if (field_0xd08.checkStagger()) {
+ if (mStagger.checkStagger()) {
tgType = 0;
tgSPrm = 0;
}
@@ -1440,8 +1440,8 @@ void daNpc_Hanjo_c::setCollision() {
mCyl1.SetTgSPrm(tgSPrm);
mCyl1.OnTgNoHitMark();
cStack_4c.set(0.0f, 0.0f, 0.0f);
- f32 cylHeight = field_0xdec;
- f32 cylRadius = field_0xdf0;
+ f32 cylHeight = mCylH;
+ f32 cylRadius = mWallR;
mDoMtx_stack_c::YrotS(mCurAngle.y);
mDoMtx_stack_c::multVec(&cStack_4c, &cStack_4c);
cStack_4c += current.pos;
@@ -1566,11 +1566,11 @@ int daNpc_Hanjo_c::chkAction(int (daNpc_Hanjo_c::*action)(void*)) {
/* 809FB6F8-809FB7A0 002758 00A8+00 2/2 0/0 0/0 .text
* setAction__13daNpc_Hanjo_cFM13daNpc_Hanjo_cFPCvPvPv_i */
int daNpc_Hanjo_c::setAction(int (daNpc_Hanjo_c::*action)(void*)) {
- field_0xe22 = 3;
+ mMode = 3;
if (field_0x16ec != NULL) {
(this->*field_0x16ec)(NULL);
}
- field_0xe22 = 0;
+ mMode = 0;
field_0x16ec = action;
if (field_0x16ec != NULL) {
(this->*field_0x16ec)(NULL);
@@ -1659,7 +1659,7 @@ void daNpc_Hanjo_c::dive() {
speedF *= 0.5f;
field_0x1720 = 1;
} else if (field_0x171f == 0) {
- if (current.pos.y + field_0xdec < local_34) {
+ if (current.pos.y + mCylH < local_34) {
if (0.0f < speed.y) {
cLib_addCalc(&speed.y, 2.0f, 0.5f, 0.5f, 0.5f);
} else {
@@ -1784,7 +1784,7 @@ int daNpc_Hanjo_c::cutConversationAboutSaru(int staffIdx) {
if (dComIfGp_getEventManager().getIsAddvance(staffIdx)) {
switch(iVar4) {
case 0:
- field_0xdc8 = fopAcM_searchPlayerAngleY(this);
+ mPlayerAngle = fopAcM_searchPlayerAngleY(this);
if (checkStep()) {
mStepMode = 0;
}
@@ -1799,8 +1799,8 @@ int daNpc_Hanjo_c::cutConversationAboutSaru(int staffIdx) {
break;
case 1:
mJntAnm.lookPlayer(0);
- if (field_0xdc8 != mCurAngle.y) {
- step(field_0xdc8, 7, 14, 15, 0);
+ if (mPlayerAngle != mCurAngle.y) {
+ step(mPlayerAngle, 7, 14, 15, 0);
} else {
rv = 1;
}
@@ -1832,14 +1832,14 @@ int daNpc_Hanjo_c::cutConversation(int param_1) {
switch(iVar9) {
case 0:
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
- initTalk(field_0xa7c, NULL);
+ initTalk(mFlowNodeNo, NULL);
mPlayerActorMngr.entry(daPy_getPlayerActorClass());
break;
case 1:
case 2:
case 3:
if (iVar9 == 2) {
- initTalk(field_0xa7c, NULL);
+ initTalk(mFlowNodeNo, NULL);
mPlayerActorMngr.entry(daPy_getPlayerActorClass());
}
if (iVar6 == 1) {
@@ -1854,9 +1854,9 @@ int daNpc_Hanjo_c::cutConversation(int param_1) {
switch(iVar9) {
case 0:
mJntAnm.lookPlayer(0);
- if (field_0xdc8 == mCurAngle.y) {
+ if (mPlayerAngle == mCurAngle.y) {
rv = 1;
- } else if (step(field_0xdc8, 7, 0xe, 0xf, 0)) {
+ } else if (step(mPlayerAngle, 7, 0xe, 0xf, 0)) {
mFaceMotionSeqMngr.setNo(7, -1.0f, 0, 0);
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
}
@@ -1868,8 +1868,8 @@ int daNpc_Hanjo_c::cutConversation(int param_1) {
if (iVar9 == 2) {
mJntAnm.lookNone(0);
}
- if ((iVar9 == 3 && field_0xdc8 != mCurAngle.y) &&
- step(field_0xdc8, -1, -1, 15, 0))
+ if ((iVar9 == 3 && mPlayerAngle != mCurAngle.y) &&
+ step(mPlayerAngle, -1, -1, 15, 0))
{
mFaceMotionSeqMngr.setNo(7, -1.0f, 0, 0);
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
@@ -1919,14 +1919,14 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
field_0x170c = 0xffffffff;
break;
case 1:
- field_0xdc4 = 0;
+ mEventTimer = 0;
break;
case 3:
mFaceMotionSeqMngr.setNo(6, -1.0f, 0,
0);
mMotionSeqMngr.setNo(17, -1.0f,
0, 0);
- field_0xdc4 = 1;
+ mEventTimer = 1;
mSound.startCreatureVoice(Z2SE_M077_HANJO_05, -1);
break;
case 4:
@@ -1958,7 +1958,7 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
}
break;
case 1:
- if (field_0xdc4 != 0) {
+ if (mEventTimer != 0) {
rv = 1;
} else {
for (int i = 0; i < 4; i++) {
@@ -1966,7 +1966,7 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
fopAc_ac_c* hitActor = mStones[i].getSphP()->GetCoHitObj()->GetAc();
fopAc_ac_c* hitActor2 = dCc_GetAc(hitActor);
if (hitActor2 != NULL && fopAcM_GetName(hitActor2) == PROC_E_NEST) {
- field_0xdc4 = daNpc_Hanjo_Param_c::m.field_0xb0;
+ mEventTimer = daNpc_Hanjo_Param_c::m.field_0xb0;
}
mStones[i].initialize();
}
@@ -1974,7 +1974,7 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
}
break;
case 2:
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
rv = 1;
}
break;
@@ -1989,7 +1989,7 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
field_0xd7e.y = mCurAngle.y;
cLib_chaseF(&speedF,
daNpc_Hanjo_Param_c::m.field_0x90, 0.5f);
- if (field_0xdc4 != 0 &&
+ if (mEventTimer != 0 &&
mCyl1.ChkCoHit())
{
fopAc_ac_c* hitActor = mCyl1.GetCoHitAc();
@@ -2005,7 +2005,7 @@ int daNpc_Hanjo_c::cutPursuitBee(int param_1) {
}
daPy_getPlayerActorClass()->setThrowDamage(angle2, dVar17 * cM_scos(sVar11), dVar17 * cM_ssin(sVar11), 0, 1, 0);
field_0x1724 = 1;
- field_0xdc4 = 0;
+ mEventTimer = 0;
}
}
}
@@ -2062,7 +2062,7 @@ int daNpc_Hanjo_c::cutAppearHawker(int param_1) {
dComIfGp_getVibration().StartShock( 9, 15, cXyz(0.0f, 1.0f, 0.0f));
break;
case 1:
- field_0xdc4 = iVar7;
+ mEventTimer = iVar7;
break;
case 2:
initTalk(0xcf, NULL);
@@ -2071,16 +2071,16 @@ int daNpc_Hanjo_c::cutAppearHawker(int param_1) {
if (iVar7 < 1) {
iVar7 = 1;
}
- field_0xdc4 = iVar7;
+ mEventTimer = iVar7;
break;
case 4:
mMotionSeqMngr.setNo(13, -1.0f, 0, 0);
break;
case 5:
- field_0xdc4 = iVar7;
+ mEventTimer = iVar7;
break;
case 6:
- field_0xdc4 = iVar7;
+ mEventTimer = iVar7;
fopAc_ac_c* actor_p = field_0x10c8[2].getActorP();
JUT_ASSERT(3005, 0 != actor_p);
((daNPC_TK_c*)actor_p)->setAttackLink();
@@ -2108,7 +2108,7 @@ int daNpc_Hanjo_c::cutAppearHawker(int param_1) {
}
break;
case 1:
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
rv = 1;
}
break;
@@ -2119,8 +2119,8 @@ int daNpc_Hanjo_c::cutAppearHawker(int param_1) {
}
break;
case 3:
- if (field_0xdc4 != 0) {
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (mEventTimer != 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
mMotionSeqMngr.setNo(12, 8.0f, 0, 0);
actor_p = field_0x10c8[2].getActorP();
JUT_ASSERT(3068, 0 != actor_p);
@@ -2143,12 +2143,12 @@ int daNpc_Hanjo_c::cutAppearHawker(int param_1) {
break;
case 5:
mJntAnm.lookCamera(0);
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
rv = 1;
}
break;
case 6:
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
daNpcT_onEvtBit(0xcf);
rv = 1;
}
@@ -2192,7 +2192,7 @@ int daNpc_Hanjo_c::cutDive(int param_1) {
daPy_getPlayerActorClass()->setPlayerPosAndAngle(&cStack_2c, cStack_34.y, 0);
dComIfGp_evmng_setGoal(&cStack_2c);
initTalk(0xd0, NULL);
- field_0xdc4 = uVar4;
+ mEventTimer = uVar4;
break;
case 1:
fopAc_ac_c* actor_p = field_0x10c8[2].getActorP();
@@ -2214,14 +2214,14 @@ int daNpc_Hanjo_c::cutDive(int param_1) {
}
switch(iVar5) {
case 0:
- if (cLib_calcTimer(&field_0xdc4) == 0) {
+ if (cLib_calcTimer(&mEventTimer) == 0) {
mJntAnm.lookPlayer(0);
- if (field_0xdc8 == mCurAngle.y) {
+ if (mPlayerAngle == mCurAngle.y) {
rv = 1;
} else if (mType == TYPE_1) {
- step(field_0xdc8, 7, 10, 0xf, 0);
+ step(mPlayerAngle, 7, 10, 0xf, 0);
} else {
- step(field_0xdc8, 7, 0xe, 0xf, 0);
+ step(mPlayerAngle, 7, 0xe, 0xf, 0);
}
}
break;
@@ -2270,10 +2270,10 @@ int daNpc_Hanjo_c::cutDive(int param_1) {
/* 809FD86C-809FDEFC 0048CC 0690+00 2/0 0/0 0/0 .text wait__13daNpc_Hanjo_cFPv */
int daNpc_Hanjo_c::wait(void* param_0) {
- switch(field_0xe22) {
+ switch(mMode) {
case 0:
case 1:
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
switch (mType) {
case TYPE_0:
if (field_0x1721 != 0) {
@@ -2295,7 +2295,7 @@ int daNpc_Hanjo_c::wait(void* param_0) {
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
break;
}
- field_0xe22 = 2;
+ mMode = 2;
}
case 2:
switch(mType) {
@@ -2322,7 +2322,7 @@ int daNpc_Hanjo_c::wait(void* param_0) {
}
}
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (mType == TYPE_0) {
if ((daNpcT_chkEvtBit(0xab) ||
daNpcT_chkEvtBit(0xb7)) && field_0x1721 == 0 && mMotionSeqMngr.getNo() == 2)
@@ -2334,12 +2334,12 @@ int daNpc_Hanjo_c::wait(void* param_0) {
}
if (mPlayerActorMngr.getActorP() != NULL) {
mJntAnm.lookPlayer(0);
- if (!chkActorInSight(mPlayerActorMngr.getActorP(), field_0xdf8,
+ if (!chkActorInSight(mPlayerActorMngr.getActorP(), mAttnFovY,
mCurAngle.y)) {
mJntAnm.lookNone(0);
}
if (!srchPlayerActor() && home.angle.y == mCurAngle.y) {
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
mJntAnm.lookNone(0);
@@ -2347,16 +2347,16 @@ int daNpc_Hanjo_c::wait(void* param_0) {
if (field_0xe34 != 0) {
if (field_0x1721 != 0) {
if (step(home.angle.y, -1, -1, 15, 0)) {
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
if (step(home.angle.y, 7, 14, 15, 0)) {
- field_0xe22 = 1;
+ mMode = 1;
}
}
} else {
setAngle(home.angle.y);
- field_0xe22 = 1;
+ mMode = 1;
}
attention_info.flags = 0;
} else {
@@ -2395,10 +2395,10 @@ int daNpc_Hanjo_c::wait(void* param_0) {
/* 809FDEFC-809FE2E0 004F5C 03E4+00 1/0 0/0 0/0 .text throwStone__13daNpc_Hanjo_cFPv */
int daNpc_Hanjo_c::throwStone(void* param_0) {
int sVar4 = daNpc_Hanjo_Param_c::m.field_0xae;
- switch(field_0xe22) {
+ switch(mMode) {
case 0:
case 1:
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (daNpcT_chkEvtBit(0x8b)) {
mFaceMotionSeqMngr.setNo(7, -1.0f, 0, 0);
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
@@ -2407,7 +2407,7 @@ int daNpc_Hanjo_c::throwStone(void* param_0) {
mMotionSeqMngr.setNo(2, -1.0f, 0, 0);
field_0x1704 = cLib_getRndValue(sVar4 * 0.5f, sVar4 * 1.5f);
}
- field_0xe22 = 2;
+ mMode = 2;
}
case 2:
if (daNpcT_chkEvtBit(0x8b) && !daNpcT_chkEvtBit(0xad) && !daNpcT_chkEvtBit(0xb7)) {
@@ -2417,7 +2417,7 @@ int daNpc_Hanjo_c::throwStone(void* param_0) {
mEvtNo = 8;
}
}
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (daNpcT_chkEvtBit(0x8b)) {
mJntAnm.lookPlayer(0);
lookround(fopAcM_searchPlayerAngleY(this));
@@ -2426,11 +2426,11 @@ int daNpc_Hanjo_c::throwStone(void* param_0) {
if (home.angle.y != mCurAngle.y) {
if (field_0xe34 != 0) {
if (step(home.angle.y, 7, 14, 15, 0)) {
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
setAngle(home.angle.y);
- field_0xe22 = 1;
+ mMode = 1;
}
attention_info.flags = 0;
} else {
@@ -2447,7 +2447,7 @@ int daNpc_Hanjo_c::throwStone(void* param_0) {
cLib_calcTimer(&field_0x1708);
field_0x170c = 0xffffffff;
} else {
- field_0xe22 = 1;
+ mMode = 1;
}
}
}
@@ -2469,10 +2469,10 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
f32 dVar8 = daNpc_Hanjo_Param_c::m.field_0xae;
cXyz cStack_50;
cXyz cStack_5c;
- switch (field_0xe22) {
+ switch (mMode) {
case 0:
case 1:
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (mType == 1) {
if (daNpcT_chkEvtBit(0xcf)) {
mFaceMotionSeqMngr.setNo(0, -1.0f, 0, 0);
@@ -2492,7 +2492,7 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
}
field_0x1710 = cLib_getRndValue(dVar8 * 0.5f, dVar8 * 1.5f);
- field_0xe22 = 2;
+ mMode = 2;
}
case 2:
field_0xe2d = 0;
@@ -2521,28 +2521,28 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
mEvtNo = 10;
}
}
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (mType == 1) {
mPlayerActorMngr.remove();
}
if (mPlayerActorMngr.getActorP() != NULL) {
mJntAnm.lookPlayer(0);
- if (!chkActorInSight(mPlayerActorMngr.getActorP(), field_0xdf8, mCurAngle.y)) {
+ if (!chkActorInSight(mPlayerActorMngr.getActorP(), mAttnFovY, mCurAngle.y)) {
mJntAnm.lookNone(0);
}
if (!srchPlayerActor() && home.angle.y == mCurAngle.y) {
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
mJntAnm.lookNone(0);
if (home.angle.y != mCurAngle.y) {
if (field_0xe34 != 0) {
if (step(home.angle.y, 7, 14, 15, 0)) {
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
setAngle(home.angle.y);
- field_0xe22 = 1;
+ mMode = 1;
}
attention_info.flags = 0;
} else {
@@ -2561,14 +2561,14 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
} else {
if (dVar1 != 0) {
field_0x1714 = 0;
- field_0xe22 = 1;
+ mMode = 1;
} else {
if (field_0x1714 != 0) {
mJntAnm.lookNone(0);
if (mMotionSeqMngr.getStepNo() > 0) {
field_0x1714++;
field_0x1714 &= 1;
- field_0xe22 = 1;
+ mMode = 1;
}
} else {
mJntAnm.lookActor(actor_p, 0.0, 0);
@@ -2589,7 +2589,7 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
{
field_0x1714++;
field_0x1714 &= 1;
- field_0xe22 = 1;
+ mMode = 1;
}
}
}
@@ -2607,10 +2607,10 @@ int daNpc_Hanjo_c::takayose(void* param_0) {
/* 809FEAEC-809FED58 005B4C 026C+00 3/0 0/0 0/0 .text talk__13daNpc_Hanjo_cFPv */
int daNpc_Hanjo_c::talk(void* param_0) {
- switch(field_0xe22) {
+ switch(mMode) {
case 0:
case 1:
- if (!field_0xd08.checkStagger()) {
+ if (!mStagger.checkStagger()) {
if (mType == TYPE_0 && mMotionSeqMngr.getNo() == 2) {
mMotionSeqMngr.setNo(0, -1.0f, 0, 0);
}
@@ -2618,17 +2618,17 @@ int daNpc_Hanjo_c::talk(void* param_0) {
initTalk(44, NULL);
field_0x1723 = 0;
} else {
- initTalk(field_0xa7c, NULL);
+ initTalk(mFlowNodeNo, NULL);
}
- field_0xe22 = 2;
+ mMode = 2;
}
case 2:
- if (!field_0xd08.checkStagger()) {
- if (mTwilight != 0 || field_0xdc8 == mCurAngle.y) {
+ if (!mStagger.checkStagger()) {
+ if (mTwilight != 0 || mPlayerAngle == mCurAngle.y) {
if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) {
mPlayerActorMngr.entry(daPy_getPlayerActorClass());
dComIfGp_event_reset();
- field_0xe22 = 3;
+ mMode = 3;
}
mJntAnm.lookPlayer(0);
if (mTwilight != 0) {
@@ -2637,9 +2637,9 @@ int daNpc_Hanjo_c::talk(void* param_0) {
} else {
mJntAnm.lookPlayer(0);
if (field_0x1721 != 0) {
- step(field_0xdc8, -1, -1, 15, 0);
+ step(mPlayerAngle, -1, -1, 15, 0);
} else {
- step(field_0xdc8, 7, 14, 15, 0);
+ step(mPlayerAngle, 7, 14, 15, 0);
}
}
}
diff --git a/src/d/actor/d_a_npc_yelia.cpp b/src/d/actor/d_a_npc_yelia.cpp
index 46662d29d8..1644a83151 100644
--- a/src/d/actor/d_a_npc_yelia.cpp
+++ b/src/d/actor/d_a_npc_yelia.cpp
@@ -4,1852 +4,1641 @@
*/
#include "d/actor/d_a_npc_yelia.h"
-#include "dol2asm.h"
-
-//
-// Forward References:
-//
-
-extern "C" void __dt__13daNpc_Yelia_cFv();
-extern "C" void create__13daNpc_Yelia_cFv();
-extern "C" void CreateHeap__13daNpc_Yelia_cFv();
-extern "C" void __dt__15J3DTevKColorAnmFv();
-extern "C" void __ct__15J3DTevKColorAnmFv();
-extern "C" void __dt__14J3DTevColorAnmFv();
-extern "C" void __ct__14J3DTevColorAnmFv();
-extern "C" void __dt__11J3DTexNoAnmFv();
-extern "C" void __ct__11J3DTexNoAnmFv();
-extern "C" void __dt__12J3DTexMtxAnmFv();
-extern "C" void __ct__12J3DTexMtxAnmFv();
-extern "C" void __dt__14J3DMatColorAnmFv();
-extern "C" void __ct__14J3DMatColorAnmFv();
-extern "C" void Delete__13daNpc_Yelia_cFv();
-extern "C" void Execute__13daNpc_Yelia_cFv();
-extern "C" void Draw__13daNpc_Yelia_cFv();
-extern "C" void createHeapCallBack__13daNpc_Yelia_cFP10fopAc_ac_c();
-extern "C" void ctrlJointCallBack__13daNpc_Yelia_cFP8J3DJointi();
-extern "C" void getType__13daNpc_Yelia_cFv();
-extern "C" void isDelete__13daNpc_Yelia_cFv();
-extern "C" void reset__13daNpc_Yelia_cFv();
-extern "C" void afterJntAnm__13daNpc_Yelia_cFi();
-extern "C" void setParam__13daNpc_Yelia_cFv();
-extern "C" void checkChangeEvt__13daNpc_Yelia_cFv();
-extern "C" void setAfterTalkMotion__13daNpc_Yelia_cFv();
-extern "C" void srchActors__13daNpc_Yelia_cFv();
-extern "C" void evtTalk__13daNpc_Yelia_cFv();
-extern "C" void evtCutProc__13daNpc_Yelia_cFv();
-extern "C" void action__13daNpc_Yelia_cFv();
-extern "C" void beforeMove__13daNpc_Yelia_cFv();
-extern "C" void setAttnPos__13daNpc_Yelia_cFv();
-extern "C" void setCollision__13daNpc_Yelia_cFv();
-extern "C" bool drawDbgInfo__13daNpc_Yelia_cFv();
-extern "C" void selectAction__13daNpc_Yelia_cFv();
-extern "C" void chkAction__13daNpc_Yelia_cFM13daNpc_Yelia_cFPCvPvPv_i();
-extern "C" void setAction__13daNpc_Yelia_cFM13daNpc_Yelia_cFPCvPvPv_i();
-extern "C" void cutConversationAboutLoopHole__13daNpc_Yelia_cFi();
-extern "C" void cutTWResistance__13daNpc_Yelia_cFi();
-extern "C" void cutTakeWoodStatue__13daNpc_Yelia_cFi();
-extern "C" void cutClothTry__13daNpc_Yelia_cFi();
-extern "C" void cutThankYou__13daNpc_Yelia_cFi();
-extern "C" void wait__13daNpc_Yelia_cFPv();
-extern "C" void horseWait__13daNpc_Yelia_cFPv();
-extern "C" void reminiscence__13daNpc_Yelia_cFPv();
-extern "C" void talk__13daNpc_Yelia_cFPv();
-extern "C" static void daNpc_Yelia_Create__FPv();
-extern "C" static void daNpc_Yelia_Delete__FPv();
-extern "C" static void daNpc_Yelia_Execute__FPv();
-extern "C" static void daNpc_Yelia_Draw__FPv();
-extern "C" static bool daNpc_Yelia_IsDelete__FPv();
-extern "C" void calc__11J3DTexNoAnmCFPUs();
-extern "C" void __dt__10cCcD_GSttsFv();
-extern "C" void __dt__8daNpcT_cFv();
-extern "C" void __dt__4cXyzFv();
-extern "C" void __dt__5csXyzFv();
-extern "C" void __dt__18daNpcT_ActorMngr_cFv();
-extern "C" void __dt__13daNpcT_Path_cFv();
-extern "C" void __ct__18daNpcT_ActorMngr_cFv();
-extern "C" void __dt__8cM3dGCylFv();
-extern "C" void __dt__8cM3dGAabFv();
-extern "C" void
-__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc();
-extern "C" void __ct__5csXyzFv();
-extern "C" void __dt__15daNpcT_JntAnm_cFv();
-extern "C" void __ct__4cXyzFv();
-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 setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs();
-extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs();
-extern "C" void ctrlSubFaceMotion__8daNpcT_cFi();
-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" bool evtEndProc__8daNpcT_cFv();
-extern "C" void afterMoved__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_80B52004(void* _this, int*);
-extern "C" void __sinit_d_a_npc_yelia_cpp();
-extern "C" void
-__ct__13daNpc_Yelia_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc();
-extern "C" s32 getEyeballMaterialNo__13daNpc_Yelia_cFv();
-extern "C" s32 getHeadJointNo__13daNpc_Yelia_cFv();
-extern "C" s32 getNeckJointNo__13daNpc_Yelia_cFv();
-extern "C" bool getBackboneJointNo__13daNpc_Yelia_cFv();
-extern "C" void checkChangeJoint__13daNpc_Yelia_cFi();
-extern "C" void checkRemoveJoint__13daNpc_Yelia_cFi();
-extern "C" bool chkXYItems__13daNpc_Yelia_cFv();
-extern "C" void __dt__19daNpc_Yelia_Param_cFv();
-extern "C" static void func_80B52274();
-extern "C" static void func_80B5227C();
-extern "C" void setOffsetPos__9daDitem_cF4cXyz();
-extern "C" u8 const m__19daNpc_Yelia_Param_c[140];
-extern "C" extern char const* const d_a_npc_yelia__stringBase0;
-extern "C" void* mCutNameList__13daNpc_Yelia_c[6];
-extern "C" u8 mCutList__13daNpc_Yelia_c[72];
-
-//
-// 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
-__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 fopAc_IsActor__FPv();
-extern "C" void fopAcM_SearchByID__FUiPP10fopAc_ac_c();
-extern "C" void fopAcM_delete__FP10fopAc_ac_c();
-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 fopAcM_createItemForPresentDemo__FPC4cXyziUciiPC5csXyzPC4cXyz();
-extern "C" void fpcEx_IsExist__FUi();
-extern "C" void dStage_changeScene__FifUlScsi();
-extern "C" void getLayerNo__14dComIfG_play_cFi();
-extern "C" void dComIfGs_wolfeye_effect_check__Fv();
-extern "C" void setWarashibeItem__17dSv_player_item_cFUc();
-extern "C" void onSwitch__12dSv_memBit_cFi();
-extern "C" void hide__12daItemBase_cFv();
-extern "C" void show__12daItemBase_cFv();
-extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
-extern "C" void reset__14dEvt_control_cFv();
-extern "C" void setSkipZev__14dEvt_control_cFPvPc();
-extern "C" void onSkipFade__14dEvt_control_cFv();
-extern "C" void setPtT__14dEvt_control_cFPv();
-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 setGoal__16dEvent_manager_cFP4cXyz();
-extern "C" void getRunEventName__16dEvent_manager_cFv();
-extern "C" void ChkPresentEnd__16dEvent_manager_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 __ct__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 Set__8dCcD_CylFRC11dCcD_SrcCyl();
-extern "C" void initialize__18daNpcT_ActorMngr_cFv();
-extern "C" void entry__18daNpcT_ActorMngr_cFP10fopAc_ac_c();
-extern "C" void remove__18daNpcT_ActorMngr_cFv();
-extern "C" void getActorP__18daNpcT_ActorMngr_cFv();
-extern "C" void initialize__15daNpcT_MatAnm_cFv();
-extern "C" void initialize__22daNpcT_MotionSeqMngr_cFv();
-extern "C" void checkEndSequence__22daNpcT_MotionSeqMngr_cFv();
-extern "C" void initialize__13daNpcT_Path_cFv();
-extern "C" void initialize__15daNpcT_JntAnm_cFv();
-extern "C" void setParam__15daNpcT_JntAnm_cFP10fopAc_ac_cP8J3DModelP4cXyziiiffffffffffP4cXyz();
-extern "C" void calcJntRad__15daNpcT_JntAnm_cFfff();
-extern "C" void calc__19daNpcT_DmgStagger_cFi();
-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 ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel();
-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 setFaceMotionAnm__8daNpcT_cFib();
-extern "C" void setMotionAnm__8daNpcT_cFifi();
-extern "C" void setAngle__8daNpcT_cFs();
-extern "C" void hitChk__8daNpcT_cFP12dCcD_GObjInfUl();
-extern "C" void chkActorInSight__8daNpcT_cFP10fopAc_ac_cfs();
-extern "C" void srchPlayerActor__8daNpcT_cFv();
-extern "C" void step__8daNpcT_cFsiiii();
-extern "C" void initTalk__8daNpcT_cFiPP10fopAc_ac_c();
-extern "C" void talkProc__8daNpcT_cFPiiPP10fopAc_ac_ci();
-extern "C" void getNearestActorP__8daNpcT_cFs();
-extern "C" void daNpcT_getPlayerInfoFromPlayerList__FiiP4cXyzP5csXyz();
-extern "C" void daNpcT_getDistTableIdx__Fii();
-extern "C" void daNpcT_onEvtBit__FUl();
-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 remove__10dMsgFlow_cFv();
-extern "C" void Set__4cCcSFP8cCcD_Obj();
-extern "C" void __pl__4cXyzCFRC3Vec();
-extern "C" void __mi__4cXyzCFRC3Vec();
-extern "C" void cM_atan2s__Fff();
-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 cLib_addCalcAngleS2__FPssss();
-extern "C" void __ct__10Z2CreatureFv();
-extern "C" void __dt__10Z2CreatureFv();
-extern "C" void init__10Z2CreatureFP3VecP3VecUcUc();
-extern "C" void* __nw__FUl();
-extern "C" void __dl__FPv();
-extern "C" void init__12J3DFrameCtrlFs();
-extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs();
-extern "C" void initialize__14J3DMaterialAnmFv();
-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_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_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_Cyl[36];
-extern "C" extern void* __vt__9dCcD_Stts[11];
-extern "C" u8 mCcDCyl__8daNpcT_c[68];
-extern "C" extern void* __vt__8daNpcT_c[49];
-extern "C" extern void* __vt__15daNpcT_MatAnm_c[4 + 1 /* padding */];
-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__14J3DMaterialAnm[4];
-extern "C" u8 now__14mDoMtx_stack_c[48];
-extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
-extern "C" void __register_global_object();
-
-//
-// Declarations:
-//
-
-/* ############################################################################################## */
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80B52408 = "";
-SECTION_DEAD static char const* const stringBase_80B52409 = "NO_RESPONSE";
-SECTION_DEAD static char const* const stringBase_80B52415 = "TW_RESISTANCE1";
-SECTION_DEAD static char const* const stringBase_80B52424 = "TW_RESISTANCE2";
-SECTION_DEAD static char const* const stringBase_80B52433 = "TAKE_WOODSTATUE";
-SECTION_DEAD static char const* const stringBase_80B52443 = "THANK_YOU";
-SECTION_DEAD static char const* const stringBase_80B5244D = "Yelia";
-SECTION_DEAD static char const* const stringBase_80B52453 = "Yelia0";
-SECTION_DEAD static char const* const stringBase_80B5245A = "Yelia1";
-SECTION_DEAD static char const* const stringBase_80B52461 = "Yelia2";
-SECTION_DEAD static char const* const stringBase_80B52468 = "Yelia3";
-SECTION_DEAD static char const* const stringBase_80B5246F = "Yelia4";
-SECTION_DEAD static char const* const stringBase_80B52476 = "yelB_TW";
-SECTION_DEAD static char const* const stringBase_80B5247E = "CONVERSATION_ABOUT_LOOPHOLE";
-SECTION_DEAD static char const* const stringBase_80B5249A = "TW_RESISTANCE";
-SECTION_DEAD static char const* const stringBase_80B524A8 = "CLOTH_TRY";
-#pragma pop
-
-/* 80B524DC-80B524E8 000000 000C+00 4/4 0/0 0/0 .data cNullVec__6Z2Calc */
-SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
+#include "d/actor/d_a_demo_item.h"
-/* 80B524E8-80B524FC 00000C 0004+10 0/0 0/0 0/0 .data @1787 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
- 0x02000201,
- /* padding */
- 0x40080000,
- 0x00000000,
- 0x3FE00000,
- 0x00000000,
-};
-#pragma pop
+UNK_REL_DATA
/* 80B524FC-80B52514 000020 0018+00 1/1 0/0 0/0 .data l_bmdData */
-SECTION_DATA static u8 l_bmdData[24] = {
- 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03,
- 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x07,
+static daNpc_GetParam1 l_bmdData[3] = {
+ {3, 1},
+ {3, 4},
+ {8, 7},
};
/* 80B52514-80B52544 -00001 0030+00 1/2 0/0 0/0 .data l_evtList */
-SECTION_DATA static void* l_evtList[12] = {
- (void*)&d_a_npc_yelia__stringBase0,
- (void*)NULL,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x1),
- (void*)NULL,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0xD),
- (void*)0x00000007,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x1C),
- (void*)0x00000007,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x2B),
- (void*)0x00000006,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x3B),
- (void*)0x00000006,
+static daNpcT_evtData_c l_evtList[6] = {
+ {"", 0},
+ {"NO_RESPONSE", 0},
+ {"TW_RESISTANCE1", 7},
+ {"TW_RESISTANCE2", 7},
+ {"TAKE_WOODSTATUE", 6},
+ {"THANK_YOU", 6},
};
/* 80B52544-80B52564 -00001 0020+00 2/3 0/0 0/0 .data l_resNameList */
-SECTION_DATA static void* l_resNameList[8] = {
- (void*)&d_a_npc_yelia__stringBase0,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x45),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x4B),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x52),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x59),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x60),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x67),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x6E),
+static char* l_resNameList[8] = {
+ "",
+ "Yelia",
+ "Yelia0",
+ "Yelia1",
+ "Yelia2",
+ "Yelia3",
+ "Yelia4",
+ "yelB_TW",
};
/* 80B52564-80B52568 000088 0004+00 1/0 0/0 0/0 .data l_loadResPtrn0 */
-SECTION_DATA static u32 l_loadResPtrn0 = 0x010203FF;
+static s8 l_loadResPtrn0[4] = {1, 2, 3, -1};
/* 80B52568-80B5256C 00008C 0003+01 1/0 0/0 0/0 .data l_loadResPtrn1 */
-SECTION_DATA static u8 l_loadResPtrn1[3 + 1 /* padding */] = {
- 0x02,
- 0x04,
- 0xFF,
- /* padding */
- 0x00,
-};
+static s8 l_loadResPtrn1[3] = {2, 4, -1};
/* 80B5256C-80B52570 000090 0004+00 1/0 0/0 0/0 .data l_loadResPtrn2 */
-SECTION_DATA static u32 l_loadResPtrn2 = 0x010205FF;
+static s8 l_loadResPtrn2[4] = {1, 2, 5, -1};
/* 80B52570-80B52574 000094 0004+00 1/0 0/0 0/0 .data l_loadResPtrn3 */
-SECTION_DATA static u32 l_loadResPtrn3 = 0x020406FF;
+static s8 l_loadResPtrn3[4] = {2, 4, 6, -1};
/* 80B52574-80B52578 000098 0004+00 1/0 0/0 0/0 .data l_loadResPtrn4 */
-SECTION_DATA static u32 l_loadResPtrn4 = 0x020706FF;
+static s8 l_loadResPtrn4[4] = {2, 7, 6, -1};
/* 80B52578-80B52580 00009C 0005+03 1/0 0/0 0/0 .data l_loadResPtrn5 */
-SECTION_DATA static u8 l_loadResPtrn5[5 + 3 /* padding */] = {
- 0x02,
- 0x04,
- 0x07,
- 0x06,
- 0xFF,
- /* padding */
- 0x00,
- 0x00,
- 0x00,
-};
+static s8 l_loadResPtrn5[5] = {2, 4, 7, 6, -1};
/* 80B52580-80B52588 0000A4 0008+00 1/0 0/0 0/0 .data l_loadResPtrn9 */
-SECTION_DATA static u8 l_loadResPtrn9[8] = {
- 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0xFF,
-};
+static s8 l_loadResPtrn9[8] = {1, 2, 3, 4, 5, 6, 7, -1};
/* 80B52588-80B525B0 -00001 0028+00 1/2 0/0 0/0 .data l_loadResPtrnList */
-SECTION_DATA static void* l_loadResPtrnList[10] = {
- (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn1, (void*)&l_loadResPtrn2, (void*)&l_loadResPtrn3,
- (void*)&l_loadResPtrn4, (void*)&l_loadResPtrn5, (void*)&l_loadResPtrn3, (void*)&l_loadResPtrn3,
- (void*)&l_loadResPtrn9, (void*)&l_loadResPtrn0,
+static s8* l_loadResPtrnList[10] = {
+ l_loadResPtrn0, l_loadResPtrn1, l_loadResPtrn2, l_loadResPtrn3, l_loadResPtrn4,
+ l_loadResPtrn5, l_loadResPtrn3, l_loadResPtrn3, l_loadResPtrn9, l_loadResPtrn0,
};
/* 80B525B0-80B528C0 0000D4 0310+00 0/1 0/0 0/0 .data l_faceMotionAnmData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_faceMotionAnmData[784] = {
- 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 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, 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,
- 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x12,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
- 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x13,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x32,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x38,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2C,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x14,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
+static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[] = {
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, 19, J3DFrameCtrl::LOOP_REPEAT_e, 2, TRUE},
+ {7, J3DFrameCtrl::LOOP_ONCE_e, 2, 19, J3DFrameCtrl::LOOP_REPEAT_e, 2, TRUE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {5, J3DFrameCtrl::LOOP_ONCE_e, 3, 18, J3DFrameCtrl::LOOP_ONCE_e, 3, FALSE},
+ {6, J3DFrameCtrl::LOOP_ONCE_e, 3, 19, J3DFrameCtrl::LOOP_ONCE_e, 3, FALSE},
+ {6, J3DFrameCtrl::LOOP_REPEAT_e, 5, 20, J3DFrameCtrl::LOOP_REPEAT_e, 5, FALSE},
+ {5, J3DFrameCtrl::LOOP_ONCE_e, 5, 19, J3DFrameCtrl::LOOP_ONCE_e, 5, FALSE},
+ {7, J3DFrameCtrl::LOOP_REPEAT_e, 5, 19, J3DFrameCtrl::LOOP_REPEAT_e, 2, TRUE},
+ {8, J3DFrameCtrl::LOOP_ONCE_e, 5, 19, J3DFrameCtrl::LOOP_REPEAT_e, 2, TRUE},
+ {14, J3DFrameCtrl::LOOP_ONCE_e, 6, 49, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {16, J3DFrameCtrl::LOOP_ONCE_e, 6, 51, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {15, J3DFrameCtrl::LOOP_ONCE_e, 6, 50, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {12, J3DFrameCtrl::LOOP_ONCE_e, 6, 47, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {13, J3DFrameCtrl::LOOP_ONCE_e, 6, 48, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {10, J3DFrameCtrl::LOOP_ONCE_e, 6, 45, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {21, J3DFrameCtrl::LOOP_REPEAT_e, 6, 56, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {22, J3DFrameCtrl::LOOP_REPEAT_e, 6, 57, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {18, J3DFrameCtrl::LOOP_REPEAT_e, 6, 53, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {20, J3DFrameCtrl::LOOP_REPEAT_e, 6, 55, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {9, J3DFrameCtrl::LOOP_ONCE_e, 6, 44, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {17, J3DFrameCtrl::LOOP_REPEAT_e, 6, 52, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {11, J3DFrameCtrl::LOOP_ONCE_e, 6, 46, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {19, J3DFrameCtrl::LOOP_REPEAT_e, 6, 54, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {5, J3DFrameCtrl::LOOP_ONCE_e, 2, 20, J3DFrameCtrl::LOOP_ONCE_e, 2, FALSE},
+ {8, J3DFrameCtrl::LOOP_REPEAT_e, 2, 22, J3DFrameCtrl::LOOP_REPEAT_e, 2, FALSE},
+ {6, J3DFrameCtrl::LOOP_REPEAT_e, 2, 21, J3DFrameCtrl::LOOP_REPEAT_e, 2, FALSE},
+ {9, J3DFrameCtrl::LOOP_REPEAT_e, 2, 23, J3DFrameCtrl::LOOP_REPEAT_e, 2, FALSE},
};
-#pragma pop
/* 80B528C0-80B52C94 0003E4 03D4+00 0/1 0/0 0/0 .data l_motionAnmData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_motionAnmData[980] = {
- 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 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, 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, 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,
- 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0F,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
- 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
- 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, 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, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
- 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0F,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x29,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x07,
- 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1D,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06,
- 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x00, 0x01, 0x00, 0x00,
+static daNpcT_motionAnmData_c l_motionAnmData[] = {
+ {13, J3DFrameCtrl::LOOP_REPEAT_e, 2, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {10, J3DFrameCtrl::LOOP_REPEAT_e, 3, 15, J3DFrameCtrl::LOOP_REPEAT_e, 3, FALSE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {11, J3DFrameCtrl::LOOP_REPEAT_e, 3, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {9, J3DFrameCtrl::LOOP_ONCE_e, 3, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {-1, J3DFrameCtrl::LOOP_ONCE_e, 0, -1, J3DFrameCtrl::LOOP_ONCE_e, 0, FALSE},
+ {7, J3DFrameCtrl::LOOP_ONCE_e, 3, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {8, J3DFrameCtrl::LOOP_ONCE_e, 3, 14, J3DFrameCtrl::LOOP_ONCE_e, 3, FALSE},
+ {10, J3DFrameCtrl::LOOP_REPEAT_e, 5, 15, J3DFrameCtrl::LOOP_REPEAT_e, 5, FALSE},
+ {9, J3DFrameCtrl::LOOP_ONCE_e, 5, 14, J3DFrameCtrl::LOOP_ONCE_e, 5, FALSE},
+ {11, J3DFrameCtrl::LOOP_REPEAT_e, 5, 16, J3DFrameCtrl::LOOP_REPEAT_e, 5, FALSE},
+ {35, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {34, J3DFrameCtrl::LOOP_REPEAT_e, 6, 41, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {33, J3DFrameCtrl::LOOP_REPEAT_e, 6, 40, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {31, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {30, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {27, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {28, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {25, J3DFrameCtrl::LOOP_ONCE_e, 6, 38, J3DFrameCtrl::LOOP_ONCE_e, 6, FALSE},
+ {26, J3DFrameCtrl::LOOP_REPEAT_e, 6, 39, J3DFrameCtrl::LOOP_REPEAT_e, 6, FALSE},
+ {6, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {8, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {12, J3DFrameCtrl::LOOP_ONCE_e, 2, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {5, J3DFrameCtrl::LOOP_REPEAT_e, 7, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {32, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, FALSE},
+ {29, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {7, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, FALSE},
+ {23, J3DFrameCtrl::LOOP_ONCE_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, FALSE},
+ {24, J3DFrameCtrl::LOOP_REPEAT_e, 6, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, FALSE},
+ {10, J3DFrameCtrl::LOOP_ONCE_e, 2, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
+ {11, J3DFrameCtrl::LOOP_ONCE_e, 2, 16, J3DFrameCtrl::LOOP_ONCE_e, 2, TRUE},
};
-#pragma pop
/* 80B52C94-80B52E44 0007B8 01B0+00 0/1 0/0 0/0 .data l_faceMotionSequenceData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_faceMotionSequenceData[432] = {
- 0x00, 0x01, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x02, 0xFF, 0x01, 0x00, 0x03, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x07, 0xFF, 0x01, 0x00, 0x09, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0A, 0xFF, 0x01, 0x00, 0x10, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0B, 0xFF, 0x01, 0x00, 0x11, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0C, 0xFF, 0x01, 0x00, 0x11, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0D, 0xFF, 0x01, 0x00, 0x12, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0E, 0xFF, 0x01, 0x00, 0x13, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0F, 0xFF, 0x01, 0x00, 0x12, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x14, 0xFF, 0x01, 0x00, 0x15, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x18, 0xFF, 0x01, 0x00, 0x19, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1A, 0xFF, 0x01, 0x00, 0x1B, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x03, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x04, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x05, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x06, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x10, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x11, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x12, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x13, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x15, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x19, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x16, 0xFF, 0x00, 0x00, 0x17, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x17, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1B, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_faceMotionSequenceData[] = {
+ {1, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {2, -1, 1}, {3, -1, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {7, -1, 1}, {9, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {10, -1, 1}, {16, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {11, -1, 1}, {17, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {12, -1, 1}, {17, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {13, -1, 1}, {18, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {14, -1, 1}, {19, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {15, -1, 1}, {18, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {20, -1, 1}, {21, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {24, -1, 1}, {25, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {26, -1, 1}, {27, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {3, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {4, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {5, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {6, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {16, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {17, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {18, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {19, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {21, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {25, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {22, -1, 0}, {23, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {23, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {27, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
};
-#pragma pop
/* 80B52E44-80B53064 000968 0220+00 0/1 0/0 0/0 .data l_motionSequenceData */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 l_motionSequenceData[544] = {
- 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x02, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x03, 0xFF, 0x01, 0x00, 0x01, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0C, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x07, 0xFF, 0x01, 0x00, 0x06, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x06, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0D, 0xFF, 0x01, 0x00, 0x0E, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x10, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x11, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x12, 0xFF, 0x01, 0x00, 0x13, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x13, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x14, 0xFF, 0x01, 0x00, 0x15, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x15, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x16, 0xFF, 0x01, 0x00, 0x17, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x17, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x18, 0xFF, 0x01, 0x00, 0x19, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x19, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1B, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1D, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x21, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x22, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x04, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x05, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x08, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x09, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0A, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0B, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x0E, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1C, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1A, 0x04, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1E, 0x04, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x20, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
- 0x00, 0x20, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_motionSequenceData[] = {
+ {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {2, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {3, -1, 1}, {1, -1, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {12, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {7, -1, 1}, {6, -1, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {6, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {13, -1, 1}, {14, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {15, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {16, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {17, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {18, -1, 1}, {19, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {19, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {20, -1, 1}, {21, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {21, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {22, -1, 1}, {23, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {23, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {24, -1, 1}, {25, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {25, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {27, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {29, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {33, -1, 1}, {0, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {34, -1, 1}, {0, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {4, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {5, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {8, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {9, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {10, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {11, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {14, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {28, -1, 0}, {15, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {26, 4, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {30, 4, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {31, -1, 0}, {32, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
+ {32, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0},
};
-#pragma pop
/* 80B53064-80B5307C -00001 0018+00 1/1 0/0 0/0 .data mCutNameList__13daNpc_Yelia_c */
-SECTION_DATA void* daNpc_Yelia_c::mCutNameList[6] = {
- (void*)&d_a_npc_yelia__stringBase0,
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x76),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x92),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x2B),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0xA0),
- (void*)(((char*)&d_a_npc_yelia__stringBase0) + 0x3B),
+char* daNpc_Yelia_c::mCutNameList[6] = {
+ "",
+ "CONVERSATION_ABOUT_LOOPHOLE",
+ "TW_RESISTANCE",
+ "TAKE_WOODSTATUE",
+ "CLOTH_TRY",
+ "THANK_YOU",
};
-/* 80B5307C-80B53088 -00001 000C+00 0/1 0/0 0/0 .data @3926 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3926[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutConversationAboutLoopHole__13daNpc_Yelia_cFi,
-};
-#pragma pop
-
-/* 80B53088-80B53094 -00001 000C+00 0/1 0/0 0/0 .data @3927 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3927[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutTWResistance__13daNpc_Yelia_cFi,
-};
-#pragma pop
-
-/* 80B53094-80B530A0 -00001 000C+00 0/1 0/0 0/0 .data @3928 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3928[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutTakeWoodStatue__13daNpc_Yelia_cFi,
-};
-#pragma pop
-
-/* 80B530A0-80B530AC -00001 000C+00 0/1 0/0 0/0 .data @3929 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3929[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutClothTry__13daNpc_Yelia_cFi,
-};
-#pragma pop
-
-/* 80B530AC-80B530B8 -00001 000C+00 0/1 0/0 0/0 .data @3930 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3930[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)cutThankYou__13daNpc_Yelia_cFi,
-};
-#pragma pop
-
/* 80B530B8-80B53100 000BDC 0048+00 1/2 0/0 0/0 .data mCutList__13daNpc_Yelia_c */
-SECTION_DATA u8 daNpc_Yelia_c::mCutList[72] = {
- 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,
-};
-
-/* 80B53100-80B53124 -00001 0024+00 1/1 0/0 0/0 .data @4570 */
-SECTION_DATA static void* lit_4570[9] = {
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x28),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x30),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x38),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x40),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x48),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x50),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x58),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x60),
- (void*)(((char*)getType__13daNpc_Yelia_cFv) + 0x68),
-};
-
-/* 80B53124-80B53148 -00001 0024+00 1/1 0/0 0/0 .data @4592 */
-SECTION_DATA static void* lit_4592[9] = {
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x34),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x3C),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x44),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x4C),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x7C),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0x84),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0xB4),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0xE4),
- (void*)(((char*)isDelete__13daNpc_Yelia_cFv) + 0xF8),
-};
-
-/* 80B53148-80B53154 -00001 000C+00 1/1 0/0 0/0 .data @4704 */
-SECTION_DATA static void* lit_4704[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__13daNpc_Yelia_cFPv,
-};
-
-/* 80B53154-80B531B4 -00001 0060+00 1/1 0/0 0/0 .data @4804 */
-SECTION_DATA static void* lit_4804[24] = {
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x40),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x48),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x50),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x58),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x60),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x68),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x70),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x78),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x80),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x88),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x98),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x9C),
- (void*)(((char*)setAfterTalkMotion__13daNpc_Yelia_cFv) + 0x90),
-};
-
-/* 80B531B4-80B531C0 -00001 000C+00 1/1 0/0 0/0 .data @4833 */
-SECTION_DATA static void* lit_4833[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__13daNpc_Yelia_cFPv,
-};
-
-/* 80B531C0-80B531CC -00001 000C+00 1/1 0/0 0/0 .data @4838 */
-SECTION_DATA static void* lit_4838[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)talk__13daNpc_Yelia_cFPv,
-};
-
-/* 80B531CC-80B531D8 -00001 000C+00 0/1 0/0 0/0 .data @5091 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5091[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)horseWait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B531D8-80B531E4 -00001 000C+00 0/1 0/0 0/0 .data @5093 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5093[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)reminiscence__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B531E4-80B531F0 -00001 000C+00 0/1 0/0 0/0 .data @5095 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5095[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)wait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B531F0-80B531FC -00001 000C+00 0/1 0/0 0/0 .data @5906 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5906[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)horseWait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B531FC-80B53208 -00001 000C+00 0/1 0/0 0/0 .data @5912 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5912[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)horseWait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B53208-80B53214 -00001 000C+00 0/1 0/0 0/0 .data @5919 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5919[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)horseWait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B53214-80B53220 -00001 000C+00 0/1 0/0 0/0 .data @5931 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_5931[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)horseWait__13daNpc_Yelia_cFPv,
-};
-#pragma pop
-
-/* 80B53220-80B53240 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Yelia_MethodTable */
-static actor_method_class daNpc_Yelia_MethodTable = {
- (process_method_func)daNpc_Yelia_Create__FPv,
- (process_method_func)daNpc_Yelia_Delete__FPv,
- (process_method_func)daNpc_Yelia_Execute__FPv,
- (process_method_func)daNpc_Yelia_IsDelete__FPv,
- (process_method_func)daNpc_Yelia_Draw__FPv,
-};
-
-/* 80B53240-80B53270 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YELIA */
-extern actor_process_profile_definition g_profile_NPC_YELIA = {
- fpcLy_CURRENT_e, // mLayerID
- 7, // mListID
- fpcPi_CURRENT_e, // mListPrio
- PROC_NPC_YELIA, // mProcName
- &g_fpcLf_Method.base, // sub_method
- sizeof(daNpc_Yelia_c), // mSize
- 0, // mSizeOther
- 0, // mParameters
- &g_fopAc_Method.base, // sub_method
- 379, // mPriority
- &daNpc_Yelia_MethodTable, // sub_method
- 0x00040108, // mStatus
- fopAc_NPC_e, // mActorType
- fopAc_CULLBOX_CUSTOM_e, // cullType
-};
-
-/* 80B53270-80B5327C 000D94 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */
-SECTION_DATA extern void* __vt__11J3DTexNoAnm[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)calc__11J3DTexNoAnmCFPUs,
-};
-
-/* 80B5327C-80B53288 000DA0 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,
-};
-
-/* 80B53288-80B532AC 000DAC 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_80B5227C,
- (void*)NULL,
- (void*)NULL,
- (void*)func_80B52274,
-};
-
-/* 80B532AC-80B532B8 000DD0 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,
-};
-
-/* 80B532B8-80B532C4 000DDC 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,
-};
-
-/* 80B532C4-80B532D0 000DE8 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,
+BOOL (daNpc_Yelia_c::*daNpc_Yelia_c::mCutList[6])(int) = {
+ NULL,
+ &cutConversationAboutLoopHole,
+ &cutTWResistance,
+ &cutTakeWoodStatue,
+ &cutClothTry,
+ &cutThankYou,
};
-/* 80B532D0-80B532DC 000DF4 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,
+enum Type {
+ /* 0 */ TYPE_HORSE,
+ /* 1 */ TYPE_1,
+ /* 2 */ TYPE_REMINISCENCE,
+ /* 3 */ TYPE_KAKARIKO,
+ /* 4 */ TYPE_TWILIGHT,
+ /* 5 */ TYPE_AFTER_ESCORT,
+ /* 6 */ TYPE_WOOD_STATUE,
+ /* 7 */ TYPE_MEMORIES_RESTORED,
+ /* 8 */ TYPE_8,
};
-/* 80B532DC-80B532E8 000E00 000C+00 5/5 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,
+enum Event {
+ /* 0 */ EVENT_NONE,
+ /* 1 */ EVENT_NO_RESPONSE,
+ /* 2 */ EVENT_TW_RESISTANCE1,
+ /* 3 */ EVENT_TW_RESISTANCE2,
+ /* 4 */ EVENT_TAKE_WOODSTATUE,
+ /* 5 */ EVENT_THANK_YOU,
};
-/* 80B532E8-80B532F4 000E0C 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,
+enum FaceMotion {
+ /* 0x00 */ FACE_TALK_A,
+ /* 0x01 */ FACE_1,
+ /* 0x02 */ FACE_KAISOU_TALK,
+ /* 0x03 */ FACE_SAD,
+ /* 0x04 */ FACE_TO_THINK,
+ /* 0x05 */ FACE_THINK,
+ /* 0x06 */ FACE_REMEMBER,
+ /* 0x07 */ FACE_REMEMBERING,
+ /* 0x08 */ FACE_INTENSE,
+ /* 0x09 */ FACE_ASK,
+ /* 0x0A */ FACE_HAPPY_TALK,
+ /* 0x0B */ FACE_LISTEN,
+ /* 0x0C */ FACE_12,
+ /* 0x0D */ FACE_HORSE_LOOKBACK,
+ /* 0x0E */ FACE_HORSE_RETURN,
+ /* 0x0F */ FACE_H_KAISOU_TALK,
+ /* 0x10 */ FACE_KAISOU_WAIT_A,
+ /* 0x11 */ FACE_H_SAD,
+ /* 0x12 */ FACE_H_THINK,
+ /* 0x13 */ FACE_H_INTENSE,
+ /* 0x14 */ FACE_H_REMEMBERING,
+ /* 0x15 */ FACE_H_ASK,
+ /* 0x16 */ FACE_H_HAPPY_TALK,
+ /* 0x17 */ FACE_KIZUKU,
+ /* 0x18 */ FACE_H_KIZUKU,
+ /* 0x19 */ FACE_H_LISTEN,
+ /* 0x1A */ FACE_NONE,
};
-/* 80B532F4-80B53300 000E18 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGAab */
-SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGAabFv,
+enum Motion {
+ /* 0x00 */ MOTION_WAIT_A,
+ /* 0x01 */ MOTION_1,
+ /* 0x02 */ MOTION_2,
+ /* 0x03 */ MOTION_KAISOU_WAIT_A,
+ /* 0x04 */ MOTION_HORSE_TALK_A,
+ /* 0x05 */ MOTION_HORSE_WAIT_C,
+ /* 0x06 */ MOTION_KAISOU_TALK,
+ /* 0x07 */ MOTION_WAIT_WORRY,
+ /* 0x08 */ MOTION_WAIT_WONDER,
+ /* 0x09 */ MOTION_WAIT_UTUMUKU,
+ /* 0x0A */ MOTION_TO_THINK,
+ /* 0x0B */ MOTION_THINK,
+ /* 0x0C */ MOTION_REMEMBER,
+ /* 0x0D */ MOTION_REMEMBERING,
+ /* 0x0E */ MOTION_LOOK,
+ /* 0x0F */ MOTION_LOOKING,
+ /* 0x10 */ MOTION_ASK,
+ /* 0x11 */ MOTION_ASKING,
+ /* 0x12 */ MOTION_DEMO_WAIT_SIT,
+ /* 0x13 */ MOTION_SITTALK_A,
+ /* 0x14 */ MOTION_HAPPYTALK,
+ /* 0x15 */ MOTION_LISTEN,
+ /* 0x16 */ MOTION_HORSE_WAIT_A,
+ /* 0x17 */ MOTION_17,
+ /* 0x18 */ MOTION_18,
+ /* 0x19 */ MOTION_19,
+ /* 0x1A */ MOTION_HORSE_LOOKBACK,
+ /* 0x1B */ MOTION_HORSE_RETURN,
+ /* 0x1C */ MOTION_KAISOU_WAIT_B,
+ /* 0x1D */ MOTION_TO_WORRY,
+ /* 0x1E */ MOTION_STEP,
+ /* 0x1F */ MOTION_ASK_STEP,
+ /* 0x20 */ MOTION_KIZUKU,
+ /* 0x21 */ MOTION_KIZUKU_WAIT,
};
-/* 80B53300-80B5330C 000E24 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,
-};
-
-/* 80B5330C-80B53318 000E30 000C+00 3/3 0/0 0/0 .data __vt__13daNpcT_Path_c */
-SECTION_DATA extern void* __vt__13daNpcT_Path_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__13daNpcT_Path_cFv,
+daNpc_Yelia_Param_c::param const daNpc_Yelia_Param_c::m = {
+ 170.0f, // mAttnOffsetY
+ -3.0f, // mGravity
+ 1.0f, // mScale
+ 400.0f, // mShadowDepth
+ 255.0f, // mCcWeight
+ 160.0f, // mCylH
+ 35.0f, // mWallH
+ 30.0f, // mWallR
+ 0.0f, // mBodyUpAngle
+ 0.0f, // mBodyDownAngle
+ 10.0f, // mBodyLeftAngle
+ -10.0f, // mBodyRightAngle
+ 30.0f, // mHeadUpAngle
+ -10.0f, // mHeadDownAngle
+ 45.0f, // mHeadLeftAngle
+ -45.0f, // mHeadRightAngle
+ 0.6f, // mNeckAngleScl
+ 12.0f, // mMorfFrames
+ 3, // mSpeakDistIdx
+ 6, // mSpeakAngleIdx
+ 5, // mTalkDistIdx
+ 6, // mTalkAngleIdx
+ 110.0f, // mAttnFovY
+ 0.0f, // mAttnRadius
+ 0.0f, // mAttnUpperY
+ 0.0f, // mAttnLowerY
+ 60,
+ 8, // mDamageTimer
+ 0, // mTestExpression
+ 0, // mTestMotion
+ 0, // mTestLookMode
+ false, // mTest
+ 4.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
+ 0.0f,
};
-/* 80B53318-80B533DC 000E3C 00C4+00 2/2 0/0 0/0 .data __vt__13daNpc_Yelia_c */
-SECTION_DATA extern void* __vt__13daNpc_Yelia_c[49] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__13daNpc_Yelia_cFv,
- (void*)ctrlBtk__8daNpcT_cFv,
- (void*)ctrlSubFaceMotion__8daNpcT_cFi,
- (void*)checkChangeJoint__13daNpc_Yelia_cFi,
- (void*)checkRemoveJoint__13daNpc_Yelia_cFi,
- (void*)getBackboneJointNo__13daNpc_Yelia_cFv,
- (void*)getNeckJointNo__13daNpc_Yelia_cFv,
- (void*)getHeadJointNo__13daNpc_Yelia_cFv,
- (void*)getFootLJointNo__8daNpcT_cFv,
- (void*)getFootRJointNo__8daNpcT_cFv,
- (void*)getEyeballLMaterialNo__8daNpcT_cFv,
- (void*)getEyeballRMaterialNo__8daNpcT_cFv,
- (void*)getEyeballMaterialNo__13daNpc_Yelia_cFv,
- (void*)ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel,
- (void*)afterJntAnm__13daNpc_Yelia_cFi,
- (void*)setParam__13daNpc_Yelia_cFv,
- (void*)checkChangeEvt__13daNpc_Yelia_cFv,
- (void*)evtTalk__13daNpc_Yelia_cFv,
- (void*)evtEndProc__8daNpcT_cFv,
- (void*)evtCutProc__13daNpc_Yelia_cFv,
- (void*)setAfterTalkMotion__13daNpc_Yelia_cFv,
- (void*)evtProc__8daNpcT_cFv,
- (void*)action__13daNpc_Yelia_cFv,
- (void*)beforeMove__13daNpc_Yelia_cFv,
- (void*)afterMoved__8daNpcT_cFv,
- (void*)setAttnPos__13daNpc_Yelia_cFv,
- (void*)setFootPos__8daNpcT_cFv,
- (void*)setCollision__13daNpc_Yelia_cFv,
- (void*)setFootPrtcl__8daNpcT_cFP4cXyzff,
- (void*)checkCullDraw__8daNpcT_cFv,
- (void*)twilight__8daNpcT_cFv,
- (void*)chkXYItems__13daNpc_Yelia_cFv,
- (void*)evtOrder__8daNpcT_cFv,
- (void*)decTmr__8daNpcT_cFv,
- (void*)clrParam__8daNpcT_cFv,
- (void*)drawDbgInfo__13daNpc_Yelia_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,
-};
+/* 80B533FC-80B53400 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */
+static daNpc_Yelia_Param_c l_HIO;
/* 80B4D30C-80B4D458 0000EC 014C+00 1/0 0/0 0/0 .text __dt__13daNpc_Yelia_cFv */
daNpc_Yelia_c::~daNpc_Yelia_c() {
- // NONMATCHING
+ if (mpMorf[0] != NULL) {
+ mpMorf[0]->stopZelAnime();
+ }
+ deleteRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
}
-/* ############################################################################################## */
-/* 80B522B4-80B52340 000000 008C+00 7/7 0/0 0/0 .rodata m__19daNpc_Yelia_Param_c */
-SECTION_RODATA u8 const daNpc_Yelia_Param_c::m[140] = {
- 0x43, 0x2A, 0x00, 0x00, 0xC0, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x43, 0xC8, 0x00, 0x00,
- 0x43, 0x7F, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00,
- 0x41, 0xF0, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00, 0xC2, 0x34, 0x00, 0x00,
- 0x3F, 0x19, 0x99, 0x9A, 0x41, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x05, 0x00, 0x06,
- 0x42, 0xDC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x3C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 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,
-};
-COMPILER_STRIP_GATE(0x80B522B4, &daNpc_Yelia_Param_c::m);
-
-/* 80B52340-80B52368 00008C 0028+00 0/1 0/0 0/0 .rodata heapSize$4085 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const heapSize[40] = {
- 0x00, 0x00, 0x44, 0xD0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0xD0, 0x00, 0x00,
- 0x44, 0xD0, 0x00, 0x00, 0x44, 0x10, 0x00, 0x00, 0x44, 0xD0, 0x00, 0x00, 0x44, 0xD0,
- 0x00, 0x00, 0x44, 0xD0, 0x00, 0x00, 0x44, 0xD0, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B52340, &heapSize);
-#pragma pop
-
-/* 80B52368-80B5236C 0000B4 0004+00 0/1 0/0 0/0 .rodata @4164 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4164 = -200.0f;
-COMPILER_STRIP_GATE(0x80B52368, &lit_4164);
-#pragma pop
-
-/* 80B5236C-80B52370 0000B8 0004+00 0/1 0/0 0/0 .rodata @4165 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4165 = -100.0f;
-COMPILER_STRIP_GATE(0x80B5236C, &lit_4165);
-#pragma pop
-
-/* 80B52370-80B52374 0000BC 0004+00 0/1 0/0 0/0 .rodata @4166 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4166 = 200.0f;
-COMPILER_STRIP_GATE(0x80B52370, &lit_4166);
-#pragma pop
-
-/* 80B52374-80B52378 0000C0 0004+00 0/1 0/0 0/0 .rodata @4167 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4167 = 300.0f;
-COMPILER_STRIP_GATE(0x80B52374, &lit_4167);
-#pragma pop
-
-/* 80B52378-80B5237C 0000C4 0004+00 0/1 0/0 0/0 .rodata @4168 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4168 = -1000000000.0f;
-COMPILER_STRIP_GATE(0x80B52378, &lit_4168);
-#pragma pop
-
/* 80B4D458-80B4D754 000238 02FC+00 1/1 0/0 0/0 .text create__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::create() {
- // NONMATCHING
+cPhs__Step daNpc_Yelia_c::create() {
+ if (!fopAcM_CheckCondition(this, fopAcCnd_INIT_e)) {
+ new (this) daNpc_Yelia_c(l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4,
+ l_motionSequenceData, 4, l_evtList, l_resNameList);
+ fopAcM_OnCondition(this, fopAcCnd_INIT_e);
+ }
+
+ mType = getType();
+ mFlowNodeNo = getFlowNodeNo();
+ mTwilight = false;
+ if (mType == TYPE_TWILIGHT) {
+ mTwilight = true;
+ }
+
+ cPhs__Step step = (cPhs__Step)loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
+
+ if (step == cPhs_COMPLEATE_e) {
+ if (isDelete()) {
+ return cPhs_ERROR_e;
+ }
+
+ static const int heapSize[] = {0x44d0, 0, 0x44d0, 0x44d0, 0x4410,
+ 0x44d0, 0x44d0, 0x44d0, 0x44d0, 0};
+ if (!fopAcM_entrySolidHeap(this, createHeapCallBack, heapSize[mType])) {
+ return cPhs_ERROR_e;
+ }
+
+ fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx());
+ fopAcM_setCullSizeBox(this, -200.0f, -100.0f, -200.0f, 200.0f, 300.0, 200.0f);
+ mSound.init(&current.pos, &eyePos, 3, 1);
+ reset();
+ 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(l_HIO.m.mCcWeight, 0, this);
+ mCcCyl.Set(mCcDCyl);
+ mCcCyl.SetStts(&mCcStts);
+ mCcCyl.SetTgHitCallback(tgHitCallBack);
+ if (mType == TYPE_TWILIGHT || mType == TYPE_AFTER_ESCORT) {
+ mAcch.SetGrndNone();
+ mAcch.SetWallNone();
+ }
+ mAcch.CrrPos(dComIfG_Bgsp());
+ mGndChk = mAcch.m_gnd;
+ mGroundH = mAcch.GetGroundH();
+ if (mGroundH != -1.0e9f) {
+ setEnvTevColor();
+ setRoomNo();
+ }
+ reset();
+ mCreating = true;
+ Execute();
+ mCreating = false;
+ }
+
+ return step;
}
-/* ############################################################################################## */
-/* 80B5237C-80B52380 0000C8 0004+00 9/15 0/0 0/0 .rodata @4330 */
-SECTION_RODATA static u8 const lit_4330[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-COMPILER_STRIP_GATE(0x80B5237C, &lit_4330);
-
-/* 80B52380-80B52384 0000CC 0004+00 0/2 0/0 0/0 .rodata @4331 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4331 = 65536.0f;
-COMPILER_STRIP_GATE(0x80B52380, &lit_4331);
-#pragma pop
-
-/* 80B52384-80B52388 0000D0 0004+00 0/3 0/0 0/0 .rodata @4332 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4332 = 1.0f / 5.0f;
-COMPILER_STRIP_GATE(0x80B52384, &lit_4332);
-#pragma pop
-
-/* 80B52388-80B5238C 0000D4 0004+00 2/5 0/0 0/0 .rodata @4489 */
-SECTION_RODATA static f32 const lit_4489 = 1.0f;
-COMPILER_STRIP_GATE(0x80B52388, &lit_4489);
-
/* 80B4D754-80B4DA64 000534 0310+00 1/1 0/0 0/0 .text CreateHeap__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::CreateHeap() {
- // NONMATCHING
-}
-
-/* 80B4DA64-80B4DAA0 000844 003C+00 1/1 0/0 0/0 .text __dt__15J3DTevKColorAnmFv */
-// J3DTevKColorAnm::~J3DTevKColorAnm() {
-extern "C" void __dt__15J3DTevKColorAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DAA0-80B4DAB8 000880 0018+00 1/1 0/0 0/0 .text __ct__15J3DTevKColorAnmFv */
-// J3DTevKColorAnm::J3DTevKColorAnm() {
-extern "C" void __ct__15J3DTevKColorAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DAB8-80B4DAF4 000898 003C+00 1/1 0/0 0/0 .text __dt__14J3DTevColorAnmFv */
-// J3DTevColorAnm::~J3DTevColorAnm() {
-extern "C" void __dt__14J3DTevColorAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DAF4-80B4DB0C 0008D4 0018+00 1/1 0/0 0/0 .text __ct__14J3DTevColorAnmFv */
-// J3DTevColorAnm::J3DTevColorAnm() {
-extern "C" void __ct__14J3DTevColorAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DB0C-80B4DB54 0008EC 0048+00 1/1 0/0 0/0 .text __dt__11J3DTexNoAnmFv */
-// J3DTexNoAnm::~J3DTexNoAnm() {
-extern "C" void __dt__11J3DTexNoAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DB54-80B4DB78 000934 0024+00 1/1 0/0 0/0 .text __ct__11J3DTexNoAnmFv */
-// J3DTexNoAnm::J3DTexNoAnm() {
-extern "C" void __ct__11J3DTexNoAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DB78-80B4DBB4 000958 003C+00 1/1 0/0 0/0 .text __dt__12J3DTexMtxAnmFv */
-// J3DTexMtxAnm::~J3DTexMtxAnm() {
-extern "C" void __dt__12J3DTexMtxAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DBB4-80B4DBCC 000994 0018+00 1/1 0/0 0/0 .text __ct__12J3DTexMtxAnmFv */
-// J3DTexMtxAnm::J3DTexMtxAnm() {
-extern "C" void __ct__12J3DTexMtxAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DBCC-80B4DC08 0009AC 003C+00 1/1 0/0 0/0 .text __dt__14J3DMatColorAnmFv */
-// J3DMatColorAnm::~J3DMatColorAnm() {
-extern "C" void __dt__14J3DMatColorAnmFv() {
- // NONMATCHING
-}
-
-/* 80B4DC08-80B4DC20 0009E8 0018+00 1/1 0/0 0/0 .text __ct__14J3DMatColorAnmFv */
-// J3DMatColorAnm::J3DMatColorAnm() {
-extern "C" void __ct__14J3DMatColorAnmFv() {
- // NONMATCHING
+int daNpc_Yelia_c::CreateHeap() {
+ int bmd_idx = 1;
+ if (mTwilight) {
+ bmd_idx = 2;
+ } else if (mType == TYPE_HORSE || mType == TYPE_REMINISCENCE || mType == TYPE_8) {
+ bmd_idx = 0;
+ }
+
+ J3DModelData* model_data = static_cast<J3DModelData*>(
+ dComIfG_getObjectRes(l_resNameList[l_bmdData[bmd_idx].arcIdx], l_bmdData[bmd_idx].fileIdx));
+ if (model_data == NULL) {
+ return 0;
+ }
+
+ mpMorf[0] = new mDoExt_McaMorfSO(model_data, NULL, NULL, NULL, -1, 1.0f, 0, -1,
+ &mSound, 0x80000, 0x11020284);
+ if (mpMorf[0] == NULL || mpMorf[0]->getModel() == NULL) {
+ return 0;
+ }
+
+ J3DModel* model = mpMorf[0]->getModel();
+ for (u16 i = 0; i < model_data->getJointNum(); i++) {
+ model_data->getJointNodePointer(i)->setCallBack(ctrlJointCallBack);
+ }
+ model->setUserArea((u32)this);
+
+ mpMatAnm = new daNpcT_MatAnm_c();
+ if (mpMatAnm == NULL) {
+ return 0;
+ }
+
+ if (mTwilight) {
+ if (setFaceMotionAnm(1, false) && setMotionAnm(0, 0.0f, 0)) {
+ return 1;
+ } else {
+ return 0;
+ }
+ } else {
+ if (setFaceMotionAnm(1, false) && setMotionAnm(0, 0.0f, 0)) {
+ return 1;
+ } else {
+ return 0;
+ }
+ }
}
/* 80B4DC20-80B4DC54 000A00 0034+00 1/1 0/0 0/0 .text Delete__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::Delete() {
- // NONMATCHING
+int daNpc_Yelia_c::Delete() {
+ this->~daNpc_Yelia_c();
+ return 1;
}
/* 80B4DC54-80B4DC74 000A34 0020+00 2/2 0/0 0/0 .text Execute__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::Execute() {
- // NONMATCHING
+int daNpc_Yelia_c::Execute() {
+ return execute();
}
-/* ############################################################################################## */
-/* 80B5238C-80B52390 0000D8 0004+00 1/1 0/0 0/0 .rodata @4538 */
-SECTION_RODATA static f32 const lit_4538 = 100.0f;
-COMPILER_STRIP_GATE(0x80B5238C, &lit_4538);
-
/* 80B4DC74-80B4DD08 000A54 0094+00 1/1 0/0 0/0 .text Draw__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::Draw() {
- // NONMATCHING
+int daNpc_Yelia_c::Draw() {
+ if (mpMatAnm != NULL) {
+ J3DModelData* model_data = mpMorf[0]->getModel()->getModelData();
+ model_data->getMaterialNodePointer(getEyeballMaterialNo())->setMaterialAnm(mpMatAnm);
+ }
+ return draw(FALSE, FALSE, field_0xde8, NULL, 100.0f, FALSE, FALSE, FALSE);
}
/* 80B4DD08-80B4DD28 000AE8 0020+00 1/1 0/0 0/0 .text
* createHeapCallBack__13daNpc_Yelia_cFP10fopAc_ac_c */
-void daNpc_Yelia_c::createHeapCallBack(fopAc_ac_c* param_0) {
- // NONMATCHING
+int daNpc_Yelia_c::createHeapCallBack(fopAc_ac_c* i_this) {
+ return static_cast<daNpc_Yelia_c*>(i_this)->CreateHeap();
}
/* 80B4DD28-80B4DD80 000B08 0058+00 1/1 0/0 0/0 .text
* ctrlJointCallBack__13daNpc_Yelia_cFP8J3DJointi */
-void daNpc_Yelia_c::ctrlJointCallBack(J3DJoint* param_0, int param_1) {
- // NONMATCHING
+int daNpc_Yelia_c::ctrlJointCallBack(J3DJoint* i_joint, int param_1) {
+ if (param_1 == 0) {
+ J3DModel* model = j3dSys.getModel();
+ daNpc_Yelia_c* _this = (daNpc_Yelia_c*)model->getUserArea();
+ if (_this != NULL) {
+ _this->ctrlJoint(i_joint, model);
+ }
+ }
+ return 1;
}
/* 80B4DD80-80B4DDF8 000B60 0078+00 2/1 0/0 0/0 .text getType__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::getType() {
- // NONMATCHING
+u8 daNpc_Yelia_c::getType() {
+ switch (fopAcM_GetParam(this) & 0xff) {
+ case 0:
+ return TYPE_HORSE;
+ case 1:
+ return TYPE_1;
+ case 2:
+ return TYPE_REMINISCENCE;
+ case 3:
+ return TYPE_KAKARIKO;
+ case 4:
+ return TYPE_TWILIGHT;
+ case 5:
+ return TYPE_AFTER_ESCORT;
+ case 6:
+ return TYPE_WOOD_STATUE;
+ case 7:
+ return TYPE_MEMORIES_RESTORED;
+ case 8:
+ return TYPE_8;
+ default:
+ return TYPE_REMINISCENCE;
+ }
}
/* 80B4DDF8-80B4DF10 000BD8 0118+00 2/1 0/0 0/0 .text isDelete__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::isDelete() {
- // NONMATCHING
+BOOL daNpc_Yelia_c::isDelete() {
+ switch (mType) {
+ case TYPE_HORSE:
+ return false;
+ case TYPE_1:
+ return false;
+ case TYPE_REMINISCENCE:
+ return false;
+ case TYPE_KAKARIKO:
+ return !daNpcT_chkEvtBit(0x108) || daNpcT_chkEvtBit(0x11f);
+ case TYPE_TWILIGHT:
+ return false;
+ case TYPE_AFTER_ESCORT:
+ return !daNpcT_chkEvtBit(0x44) || daNpcT_chkEvtBit(0x108);
+ case TYPE_WOOD_STATUE:
+ return !daNpcT_chkEvtBit(0x11f) || daNpcT_chkEvtBit(0x120);
+ case TYPE_MEMORIES_RESTORED:
+ return !daNpcT_chkEvtBit(0x120);
+ case TYPE_8:
+ return false;
+ default:
+ return false;
+ }
}
/* 80B4DF10-80B4E068 000CF0 0158+00 1/1 0/0 0/0 .text reset__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::reset() {
- // NONMATCHING
+ u32 size = (u32)&field_0xfec - (u32)&mpNextAction;
+ if (mpMatAnm != NULL) {
+ mpMatAnm->initialize();
+ }
+ initialize();
+ for (int i = 0; i < 4; i++) {
+ mActorMngr[i].initialize();
+ }
+ memset(&mpNextAction, 0, size);
+ mItemId = -1;
+ setAngle(home.angle.y);
}
/* 80B4E068-80B4E0F4 000E48 008C+00 1/0 0/0 0/0 .text afterJntAnm__13daNpc_Yelia_cFi */
-void daNpc_Yelia_c::afterJntAnm(int param_0) {
- // NONMATCHING
+void daNpc_Yelia_c::afterJntAnm(int i_jointNo) {
+ if (i_jointNo == 1) {
+ mDoMtx_stack_c::YrotM(-mStagger.getAngleZ(1));
+ mDoMtx_stack_c::ZrotM(mStagger.getAngleX(1));
+ } else if (i_jointNo == 4) {
+ mDoMtx_stack_c::YrotM(-mStagger.getAngleZ(0));
+ mDoMtx_stack_c::ZrotM(mStagger.getAngleX(0));
+ }
}
-/* ############################################################################################## */
-/* 80B52390-80B52394 0000DC 0004+00 0/1 0/0 0/0 .rodata @4697 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4697 = 135.0f;
-COMPILER_STRIP_GATE(0x80B52390, &lit_4697);
-#pragma pop
-
/* 80B4E0F4-80B4E2C0 000ED4 01CC+00 1/0 0/0 0/0 .text setParam__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::setParam() {
- // NONMATCHING
+ selectAction();
+ srchActors();
+
+ s16 speak_dist_idx = l_HIO.m.mSpeakDistIdx;
+ s16 speak_angle_idx = l_HIO.m.mSpeakAngleIdx;
+ s16 talk_dist_idx = l_HIO.m.mTalkDistIdx;
+ s16 talk_angle_idx = l_HIO.m.mTalkAngleIdx;
+ if (mType == TYPE_8) {
+ speak_dist_idx = 16;
+ speak_angle_idx = 6;
+ talk_dist_idx = 19;
+ talk_angle_idx = 6;
+ } else if (mType == TYPE_KAKARIKO && !daNpcT_chkEvtBit(0x11f)) {
+ speak_angle_idx = 3;
+ talk_angle_idx = 3;
+ }
+ if (daPy_getPlayerActorClass()->checkHorseRide()) {
+ if (speak_dist_idx < 7) {
+ speak_dist_idx = 7;
+ }
+ if (talk_dist_idx < 9) {
+ talk_dist_idx = 9;
+ }
+ }
+ attention_info.distances[fopAc_attn_LOCK_e] =
+ daNpcT_getDistTableIdx(talk_dist_idx, talk_angle_idx);
+ attention_info.distances[fopAc_attn_TALK_e] = attention_info.distances[fopAc_attn_LOCK_e];
+ attention_info.distances[fopAc_attn_SPEAK_e] =
+ daNpcT_getDistTableIdx(speak_dist_idx, speak_angle_idx);
+ attention_info.flags = 0xa;
+
+ scale.set(l_HIO.m.mScale, l_HIO.m.mScale, l_HIO.m.mScale);
+ mCcStts.SetWeight(l_HIO.m.mCcWeight);
+ mCylH = l_HIO.m.mCylH;
+ mWallR = l_HIO.m.mWallR;
+ mAttnFovY = l_HIO.m.mAttnFovY;
+ if (mType == TYPE_8) {
+ mAttnFovY = 135.0f;
+ }
+ mAcchCir.SetWallR(mWallR);
+ mAcchCir.SetWallH(l_HIO.m.mWallH);
+ field_0xde8 = l_HIO.m.mShadowDepth;
+ gravity = l_HIO.m.mGravity;
+ field_0xa80 = l_HIO.m.field_0x6c;
+ mMorfFrames = l_HIO.m.mMorfFrames;
+ if (mType == TYPE_TWILIGHT || mType == TYPE_AFTER_ESCORT) {
+ mAcch.SetGrndNone();
+ mAcch.SetWallNone();
+ gravity = 0.0f;
+ }
}
-/* ############################################################################################## */
-/* 80B52394-80B52398 0000E0 0004+00 7/8 0/0 0/0 .rodata @4778 */
-SECTION_RODATA static f32 const lit_4778 = -1.0f;
-COMPILER_STRIP_GATE(0x80B52394, &lit_4778);
-
/* 80B4E2C0-80B4E5BC 0010A0 02FC+00 1/0 0/0 0/0 .text checkChangeEvt__13daNpc_Yelia_cFv
*/
-void daNpc_Yelia_c::checkChangeEvt() {
- // NONMATCHING
+BOOL daNpc_Yelia_c::checkChangeEvt() {
+ if (!chkAction(&talk)) {
+ mPreItemNo = 0;
+ if (dComIfGp_event_chkTalkXY()) {
+ if (dComIfGp_evmng_ChkPresentEnd()) {
+ mPreItemNo = dComIfGp_event_getPreItemNo();
+ if (mType == TYPE_WOOD_STATUE && daNpcT_chkEvtBit(0x11f)
+ && mPreItemNo == fpcNm_ITEM_IRIAS_PENDANT)
+ {
+ if (mPendantTimer >= 70) {
+ dStage_changeScene(10, 0.0f, 0, fopAcM_GetRoomNo(this), 0,
+ dComIfG_play_c::getLayerNo(0));
+ } else {
+ if (mPendantTimer == 0) {
+ mSound.startCreatureVoice(Z2SE_YELIA_V_LOOK_KIBORI, -1);
+ } else if (mPendantTimer == 8) {
+ mFaceMotionSeqMngr.setNo(FACE_KIZUKU, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_KIZUKU, -1.0f, FALSE, 0);
+ }
+ mJntAnm.lookPlayer(false);
+ cLib_addCalcAngleS2(&current.angle.y, fopAcM_searchPlayerAngleY(this),
+ 4, 0x800);
+ shape_angle.y = current.angle.y;
+ mCurAngle.y = shape_angle.y;
+ }
+ mPendantTimer++;
+ }
+ else if (mType == TYPE_KAKARIKO && !daNpcT_chkEvtBit(0x11f)
+ && mPreItemNo == fpcNm_ITEM_WOOD_STATUE)
+ {
+ mEvtNo = EVENT_TAKE_WOODSTATUE;
+ evtChange();
+ } else {
+ mEvtNo = EVENT_NO_RESPONSE;
+ evtChange();
+ }
+ }
+ return TRUE;
+ }
+
+ switch (mType) {
+ case TYPE_TWILIGHT:
+ if (daNpcT_chkEvtBit(0x115)) {
+ mEvtNo = 3;
+ } else {
+ mEvtNo = 2;
+ }
+ evtChange();
+ return TRUE;
+ case TYPE_AFTER_ESCORT:
+ mEvtNo = EVENT_THANK_YOU;
+ evtChange();
+ return TRUE;
+ case TYPE_HORSE:
+ case TYPE_1:
+ case TYPE_REMINISCENCE:
+ case TYPE_KAKARIKO:
+ case TYPE_WOOD_STATUE:
+ case TYPE_MEMORIES_RESTORED:
+ case TYPE_8:
+ break;
+ }
+ }
+
+ return FALSE;
}
/* 80B4E5BC-80B4E6A0 00139C 00E4+00 2/0 0/0 0/0 .text setAfterTalkMotion__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::setAfterTalkMotion() {
- // NONMATCHING
+ int no = FACE_NONE;
+ switch (mFaceMotionSeqMngr.getNo()) {
+ case FACE_1:
+ no = FACE_12;
+ break;
+ case FACE_KAISOU_TALK:
+ no = FACE_H_KAISOU_TALK;
+ break;
+ case FACE_SAD:
+ no = FACE_H_SAD;
+ break;
+ case FACE_TO_THINK:
+ no = FACE_H_THINK;
+ break;
+ case FACE_THINK:
+ no = FACE_H_THINK;
+ break;
+ case FACE_REMEMBER:
+ no = FACE_H_INTENSE;
+ break;
+ case FACE_REMEMBERING:
+ no = FACE_H_REMEMBERING;
+ break;
+ case FACE_INTENSE:
+ no = FACE_H_INTENSE;
+ break;
+ case FACE_ASK:
+ no = FACE_H_ASK;
+ break;
+ case FACE_HAPPY_TALK:
+ no = FACE_H_HAPPY_TALK;
+ break;
+ case FACE_KIZUKU:
+ no = FACE_H_KIZUKU;
+ break;
+ case FACE_LISTEN:
+ no = FACE_H_LISTEN;
+ break;
+ }
+ mFaceMotionSeqMngr.setNo(no, -1.0f, FALSE, 0);
}
/* 80B4E6A0-80B4E7C8 001480 0128+00 1/1 0/0 0/0 .text srchActors__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::srchActors() {
- // NONMATCHING
+ switch (mType) {
+ case TYPE_KAKARIKO:
+ if (mActorMngr[2].getActorP() == NULL) {
+ mActorMngr[2].entry(getNearestActorP(PROC_NPC_GRD));
+ }
+ if (mActorMngr[3].getActorP() == NULL) {
+ mActorMngr[3].entry(getNearestActorP(PROC_NPC_GRZ));
+ }
+ break;
+ case TYPE_TWILIGHT:
+ if (mActorMngr[0].getActorP() == NULL) {
+ mActorMngr[0].entry(getNearestActorP(PROC_NPC_THE));
+ }
+ if (mActorMngr[1].getActorP() == NULL) {
+ mActorMngr[1].entry(getNearestActorP(PROC_NPC_ZRC));
+ }
+ break;
+ case TYPE_AFTER_ESCORT:
+ if (mActorMngr[1].getActorP() == NULL) {
+ mActorMngr[1].entry(getNearestActorP(PROC_NPC_KOLINB));
+ }
+ break;
+ case TYPE_HORSE:
+ case TYPE_1:
+ case TYPE_REMINISCENCE:
+ case TYPE_WOOD_STATUE:
+ case TYPE_MEMORIES_RESTORED:
+ case TYPE_8:
+ break;
+ }
}
/* 80B4E7C8-80B4E868 0015A8 00A0+00 1/0 0/0 0/0 .text evtTalk__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::evtTalk() {
- // NONMATCHING
+BOOL daNpc_Yelia_c::evtTalk() {
+ if (chkAction(&talk)) {
+ (this->*mpAction)(NULL);
+ } else {
+ setAction(&talk);
+ }
+ return TRUE;
}
/* 80B4E868-80B4E930 001648 00C8+00 1/0 0/0 0/0 .text evtCutProc__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::evtCutProc() {
- // NONMATCHING
+BOOL daNpc_Yelia_c::evtCutProc() {
+ int staff_id = dComIfGp_getEventManager().getMyStaffId("Yelia", this, -1);
+ if (staff_id != -1) {
+ mStaffId = staff_id;
+ int act_idx = dComIfGp_getEventManager().getMyActIdx(mStaffId, mCutNameList, 6, 0, 0);
+ if ((this->*mCutList[act_idx])(mStaffId)) {
+ dComIfGp_getEventManager().cutEnd(mStaffId);
+ }
+ return TRUE;
+ } else {
+ return FALSE;
+ }
}
/* 80B4E930-80B4EA28 001710 00F8+00 1/0 0/0 0/0 .text action__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::action() {
- // NONMATCHING
+ hitChk(&mCcCyl, -1);
+ if (mStagger.checkRebirth()) {
+ mStagger.initialize();
+ mMode = MODE_INIT;
+ }
+ if (mpNextAction != NULL) {
+ if (mpAction == mpNextAction) {
+ (this->*mpAction)(NULL);
+ } else {
+ setAction(mpNextAction);
+ }
+ }
}
/* 80B4EA28-80B4EAEC 001808 00C4+00 1/0 0/0 0/0 .text beforeMove__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::beforeMove() {
- // NONMATCHING
+ fopAcM_OffStatus(this, 0x8000000);
+ if (checkHide()) {
+ fopAcM_OnStatus(this, 0x8000000);
+ }
+ if (checkHide() || mNoDraw) {
+ attention_info.flags = 0;
+ }
}
-/* ############################################################################################## */
-/* 80B52398-80B5239C 0000E4 0004+00 0/2 0/0 0/0 .rodata @4977 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4977 = 30.0f;
-COMPILER_STRIP_GATE(0x80B52398, &lit_4977);
-#pragma pop
-
-/* 80B5239C-80B523A0 0000E8 0004+00 0/1 0/0 0/0 .rodata @4978 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4978 = -5.0f;
-COMPILER_STRIP_GATE(0x80B5239C, &lit_4978);
-#pragma pop
-
-/* 80B523A0-80B523A4 0000EC 0004+00 0/1 0/0 0/0 .rodata @4979 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u32 const lit_4979 = 0x38C90FDB;
-COMPILER_STRIP_GATE(0x80B523A0, &lit_4979);
-#pragma pop
-
-/* 80B523A4-80B523A8 0000F0 0004+00 0/1 0/0 0/0 .rodata @4980 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4980 = 150.0f;
-COMPILER_STRIP_GATE(0x80B523A4, &lit_4980);
-#pragma pop
-
-/* 80B523A8-80B523AC 0000F4 0004+00 0/1 0/0 0/0 .rodata @4981 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4981 = 20.0f;
-COMPILER_STRIP_GATE(0x80B523A8, &lit_4981);
-#pragma pop
-
-/* 80B523AC-80B523B4 0000F8 0004+04 0/1 0/0 0/0 .rodata @4982 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4982[1 + 1 /* padding */] = {
- 10.0f,
- /* padding */
- 0.0f,
-};
-COMPILER_STRIP_GATE(0x80B523AC, &lit_4982);
-#pragma pop
-
-/* 80B523B4-80B523BC 000100 0008+00 1/3 0/0 0/0 .rodata @4984 */
-SECTION_RODATA static u8 const lit_4984[8] = {
- 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523B4, &lit_4984);
-
/* 80B4EAEC-80B4EE4C 0018CC 0360+00 1/0 0/0 0/0 .text setAttnPos__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::setAttnPos() {
- // NONMATCHING
+ cXyz eye_offset(30.0f, -5.0f, 0.0f);
+ cXyz vec(0.0f, -5.0f, 0.0f);
+ mStagger.calc(FALSE);
+
+ f32 angle_diff = cM_s2rad(mCurAngle.y - field_0xd7e.y);
+ if (mType == TYPE_TWILIGHT || mType == TYPE_AFTER_ESCORT) {
+ mJntAnm.setParam(this, mpMorf[0]->getModel(), &eye_offset, getBackboneJointNo(),
+ getNeckJointNo(), getHeadJointNo(), 0.0f, 0.0f, 0.0f, 0.0f,
+ l_HIO.m.mHeadDownAngle, l_HIO.m.mHeadUpAngle, l_HIO.m.mHeadRightAngle,
+ l_HIO.m.mHeadLeftAngle, l_HIO.m.mNeckAngleScl, angle_diff, &vec);
+ } else {
+ mJntAnm.setParam(this, mpMorf[0]->getModel(), &eye_offset, getBackboneJointNo(),
+ getNeckJointNo(), getHeadJointNo(), l_HIO.m.mBodyDownAngle,
+ l_HIO.m.mBodyUpAngle, l_HIO.m.mBodyRightAngle, l_HIO.m.mBodyLeftAngle,
+ l_HIO.m.mHeadDownAngle, l_HIO.m.mHeadUpAngle, l_HIO.m.mHeadRightAngle,
+ l_HIO.m.mHeadLeftAngle, l_HIO.m.mNeckAngleScl, angle_diff, &vec);
+ }
+ mJntAnm.calcJntRad(0.2f, 1.0f, angle_diff);
+
+ setMtx();
+ mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(getHeadJointNo()));
+ mDoMtx_stack_c::multVec(&eye_offset, &eyePos);
+ mJntAnm.setEyeAngleX(eyePos, 1.0f, -0x1000);
+ mJntAnm.setEyeAngleY(eyePos, mCurAngle.y, TRUE, 1.0f, 0);
+
+ if (mType == TYPE_TWILIGHT || mType == TYPE_AFTER_ESCORT) {
+ vec.set(0.0f, 150.0f, 20.0f);
+ } else {
+ vec.set(0.0f, l_HIO.m.mAttnOffsetY, 10.0f);
+ }
+ mDoMtx_stack_c::YrotS(mCurAngle.y);
+ mDoMtx_stack_c::multVec(&vec, &vec);
+ attention_info.position = vec + current.pos;
}
/* 80B4EE4C-80B4EFA4 001C2C 0158+00 1/0 0/0 0/0 .text setCollision__13daNpc_Yelia_cFv */
void daNpc_Yelia_c::setCollision() {
- // NONMATCHING
+ cXyz vec;
+
+ if (!mHide) {
+ u32 tg_type = 0xd8fbfdff;
+ u32 tg_sprm = 0x1f;
+ if (mTwilight) {
+ tg_type = 0;
+ tg_sprm = 0;
+ } else if (mStagger.checkStagger()) {
+ tg_type = 0;
+ tg_sprm = 0;
+ }
+ mCcCyl.SetCoSPrm(0x79);
+ mCcCyl.SetTgType(tg_type);
+ mCcCyl.SetTgSPrm(tg_sprm);
+ mCcCyl.OnTgNoHitMark();
+
+ vec.set(0.0f, 0.0f, 0.0f);
+ f32 height = mCylH;
+ f32 radius = mWallR;
+ mDoMtx_stack_c::YrotS(mCurAngle.y);
+ mDoMtx_stack_c::multVec(&vec, &vec);
+ vec += current.pos;
+ mCcCyl.SetH(height);
+ mCcCyl.SetR(radius);
+ mCcCyl.SetC(vec);
+ dComIfG_Ccsp()->Set(&mCcCyl);
+ }
+
+ mCcCyl.ClrCoHit();
+ mCcCyl.ClrTgHit();
}
/* 80B4EFA4-80B4EFAC 001D84 0008+00 1/0 0/0 0/0 .text drawDbgInfo__13daNpc_Yelia_cFv */
-bool daNpc_Yelia_c::drawDbgInfo() {
- return false;
+BOOL daNpc_Yelia_c::drawDbgInfo() {
+ return FALSE;
}
/* 80B4EFAC-80B4F054 001D8C 00A8+00 1/1 0/0 0/0 .text selectAction__13daNpc_Yelia_cFv */
-void daNpc_Yelia_c::selectAction() {
- // NONMATCHING
+BOOL daNpc_Yelia_c::selectAction() {
+ mpNextAction = NULL;
+ switch (mType) {
+ case TYPE_HORSE:
+ mpNextAction = &horseWait;
+ break;
+ case TYPE_REMINISCENCE:
+ mpNextAction = &reminiscence;
+ break;
+ default:
+ mpNextAction = &wait;
+ break;
+ }
+ return TRUE;
}
/* 80B4F054-80B4F080 001E34 002C+00 2/2 0/0 0/0 .text
* chkAction__13daNpc_Yelia_cFM13daNpc_Yelia_cFPCvPvPv_i */
-void daNpc_Yelia_c::chkAction(int (daNpc_Yelia_c::*param_0)(void*)) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::chkAction(BOOL (daNpc_Yelia_c::*i_action)(void*)) {
+ return mpAction == i_action;
}
/* 80B4F080-80B4F128 001E60 00A8+00 2/2 0/0 0/0 .text
* setAction__13daNpc_Yelia_cFM13daNpc_Yelia_cFPCvPvPv_i */
-void daNpc_Yelia_c::setAction(int (daNpc_Yelia_c::*param_0)(void*)) {
- // NONMATCHING
-}
+BOOL daNpc_Yelia_c::setAction(BOOL (daNpc_Yelia_c::*i_action)(void*)) {
+ mMode = MODE_EXIT;
+ if (mpAction != NULL) {
+ (this->*mpAction)(NULL);
+ }
-/* ############################################################################################## */
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80B524B2 = "prm";
-SECTION_DEAD static char const* const stringBase_80B524B6 = "msgNo";
-#pragma pop
+ mMode = MODE_ENTER;
+ mpAction = i_action;
+ if (mpAction != NULL) {
+ (this->*mpAction)(NULL);
+ }
+
+ return TRUE;
+}
/* 80B4F128-80B4F3E0 001F08 02B8+00 1/0 0/0 0/0 .text
* cutConversationAboutLoopHole__13daNpc_Yelia_cFi */
-void daNpc_Yelia_c::cutConversationAboutLoopHole(int param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::cutConversationAboutLoopHole(int i_staffId) {
+ BOOL ret = FALSE;
+ int prm = -1;
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
+ dComIfGp_evmng_getMyIntegerP(i_staffId, "msgNo");
+
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
+ switch (prm) {
+ case 0:
+ break;
+
+ case 1:
+ mFaceMotionSeqMngr.setNo(FACE_HORSE_LOOKBACK, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_LOOKBACK, -1.0f, FALSE, 0);
+ break;
+
+ case 2:
+ mFaceMotionSeqMngr.setNo(FACE_HORSE_RETURN, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_RETURN, -1.0f, FALSE, 0);
+ break;
+ }
+ }
+
+ switch (prm) {
+ case 0:
+ ret = TRUE;
+ break;
+
+ case 1:
+ if (mMotionSeqMngr.getNo() == MOTION_HORSE_LOOKBACK) {
+ if (mMotionSeqMngr.checkEndSequence()) {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_C, -1.0f, FALSE, 0);
+ }
+ } else {
+ ret = TRUE;
+ }
+ break;
+
+ case 2:
+ if (mMotionSeqMngr.getNo() == MOTION_HORSE_RETURN) {
+ if (mMotionSeqMngr.checkEndSequence()) {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_A, -1.0f, FALSE, 0);
+ }
+ } else {
+ ret = TRUE;
+ }
+ break;
+ }
+
+ return ret;
}
-/* ############################################################################################## */
-/* 80B523BC-80B523C4 000108 0008+00 0/1 0/0 0/0 .rodata @5042 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5042[8] = {
- 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523BC, &lit_5042);
-#pragma pop
-
-/* 80B523C4-80B523CC 000110 0008+00 0/1 0/0 0/0 .rodata @5043 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5043[8] = {
- 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523C4, &lit_5043);
-#pragma pop
-
-/* 80B523CC-80B523D4 000118 0008+00 0/1 0/0 0/0 .rodata @5044 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5044[8] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523CC, &lit_5044);
-#pragma pop
-
-/* 80B523D4-80B523DC 000120 0008+00 1/1 0/0 0/0 .rodata @5202 */
-SECTION_RODATA static u8 const lit_5202[8] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523D4, &lit_5202);
-
/* 80B4F3E0-80B4F534 0021C0 0154+00 1/0 0/0 0/0 .text cutTWResistance__13daNpc_Yelia_cFi
*/
-void daNpc_Yelia_c::cutTWResistance(int param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::cutTWResistance(int i_staffId) {
+ BOOL ret = FALSE;
+ int prm = -1;
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
+
+ fopAc_ac_c* actors[2] = {this, mActorMngr[0].getActorP()};
+ dComIfGp_setMesgCameraInfoActor(actors[0], actors[1], NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL);
+
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
+ switch (prm) {
+ case 0:
+ break;
+
+ case 1:
+ initTalk(mFlowNodeNo, NULL);
+ break;
+ }
+ }
+
+ switch (prm) {
+ case 0:
+ ret = TRUE;
+ break;
+
+ case 1:
+ if (talkProc(NULL, TRUE, actors, FALSE) && mFlow.checkEndFlow()) {
+ ret = TRUE;
+ }
+ break;
+ }
+
+ return ret;
}
-/* ############################################################################################## */
-/* 80B523DC-80B523E4 000128 0008+00 0/1 0/0 0/0 .rodata @5237 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5237[8] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523DC, &lit_5237);
-#pragma pop
-
-/* 80B523E4-80B523EC 000130 0008+00 0/1 0/0 0/0 .rodata @5277 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5277[8] = {
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-};
-COMPILER_STRIP_GATE(0x80B523E4, &lit_5277);
-#pragma pop
-
-/* 80B523EC-80B523F0 000138 0004+00 0/1 0/0 0/0 .rodata @5490 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_5490 = 11.0f / 20.0f;
-COMPILER_STRIP_GATE(0x80B523EC, &lit_5490);
-#pragma pop
-
-/* 80B523F0-80B523F4 00013C 0004+00 0/1 0/0 0/0 .rodata @5491 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_5491 = 110.0f;
-COMPILER_STRIP_GATE(0x80B523F0, &lit_5491);
-#pragma pop
-
-/* 80B523F4-80B523FC 000140 0008+00 0/1 0/0 0/0 .rodata @5493 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_5493[8] = {
- 0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80B523F4, &lit_5493);
-#pragma pop
-
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80B524BC = "timer";
-SECTION_DEAD static char const* const stringBase_80B524C2 = "send";
-SECTION_DEAD static char const* const stringBase_80B524C7 = "@";
-#pragma pop
-
/* 80B4F534-80B4FDD8 002314 08A4+00 1/0 0/0 0/0 .text cutTakeWoodStatue__13daNpc_Yelia_cFi */
-void daNpc_Yelia_c::cutTakeWoodStatue(int param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::cutTakeWoodStatue(int i_staffId) {
+ daDitem_c* item = NULL;
+ cXyz pos;
+ csXyz angle;
+ char name[0x68];
+ BOOL ret = FALSE;
+ int prm = -1;
+ int timer = 0;
+ int msgNo = 0;
+ int send = 0;
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
+ int* timer_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "timer");
+ if (timer_p != NULL) {
+ timer = *timer_p;
+ }
+ int* msgNo_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "msgNo");
+ if (msgNo_p != NULL) {
+ msgNo = *msgNo_p;
+ }
+ int* send_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "send");
+ if (send_p != NULL) {
+ send = *send_p;
+ }
+
+ fopAc_ac_c* actors[2] = {this, mActorMngr[2].getActorP()};
+ dComIfGp_setMesgCameraInfoActor(actors[0], actors[1], NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL);
+
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
+ switch (prm) {
+ case 0:
+ mFaceMotionSeqMngr.setNo(FACE_H_INTENSE, 0.0f, TRUE, 0);
+ mMotionSeqMngr.setNo(MOTION_LOOKING, 0.0f, TRUE, 0);
+ mSound.startCreatureVoice(Z2SE_YELIA_V_LOOK_KIBORI, -1);
+ daNpcT_offTmpBit(0xb);
+ daNpcT_offTmpBit(0xc);
+ dComIfGs_onSaveSwitch(6, 0x40);
+ if (daNpcT_getPlayerInfoFromPlayerList(10, fopAcM_GetRoomNo(this), &pos, &angle)) {
+ daPy_getPlayerActorClass()->setPlayerPosAndAngle(&pos, angle.y, 0);
+ dComIfGp_evmng_setGoal(&pos);
+ }
+ if (fopAcM_SearchByID(mItemId, (fopAc_ac_c**)&item)
+ && item != NULL && fopAc_IsActor(item)) {
+ item->scale.setall(0.55f);
+ item->show();
+ }
+ break;
+
+ case 1:
+ case 8:
+ initTalk(0x26, NULL);
+ break;
+
+ case 4:
+ mFaceMotionSeqMngr.setNo(FACE_NONE, 0.0f, TRUE, 0);
+ mMotionSeqMngr.setNo(MOTION_ASKING, 0.0f, TRUE, 0);
+ break;
+
+ case 5:
+ if (mFaceMotionSeqMngr.getNo() != FACE_H_ASK) {
+ mFaceMotionSeqMngr.setNo(FACE_H_ASK, -1.0f, TRUE, 0);
+ }
+ if (mMotionSeqMngr.getNo() != MOTION_TO_WORRY) {
+ mMotionSeqMngr.setNo(MOTION_TO_WORRY, -1.0f, TRUE, 0);
+ }
+ break;
+
+ case 7:
+ mEventTimer = timer;
+ break;
+
+ case 9:
+ mFaceMotionSeqMngr.setNo(FACE_H_ASK, 0.0f, TRUE, 0);
+ mMotionSeqMngr.setNo(MOTION_ASKING, 0.0f, TRUE, 0);
+ mEventTimer = timer;
+ break;
+
+ case 11:
+ case 99:
+ mFaceMotionSeqMngr.setNo(FACE_H_INTENSE, 0.0f, TRUE, 0);
+ mMotionSeqMngr.setNo(MOTION_ASKING, 0.0f, TRUE, 0);
+ pos = daPy_getPlayerActorClass()->current.pos;
+ daPy_getPlayerActorClass()->setPlayerPosAndAngle(&pos, 0, 0);
+ dComIfGp_evmng_setGoal(&pos);
+ Z2GetAudioMgr()->unMuteSceneBgm(60);
+ if (prm == 99) {
+ daNpcT_onEvtBit(0x11f);
+ daNpcT_onEvtBit(0x17a);
+ dComIfGs_setWarashibeItem(0xff);
+ daNpcT_offTmpBit(0xb);
+ daNpcT_offTmpBit(0xc);
+ dComIfGs_onSaveSwitch(6, 0x40);
+ dComIfGs_onSaveSwitch(6, 0x1c);
+ mFlow.remove();
+ }
+ break;
+
+ case 13:
+ mItemId = fpcM_ERROR_PROCESS_ID_e;
+ mEventTimer = timer;
+ Z2GetAudioMgr()->muteSceneBgm(90, 0.0f);
+ strcpy(name, l_evtList[EVENT_TAKE_WOODSTATUE].eventName);
+ strcat(name, "@");
+ dComIfGp_getEvent().setSkipZev(this, name);
+ dComIfGp_getEvent().onSkipFade();
+ break;
+ }
+
+ if ((prm == 6 || prm == 99) && mItemId != fpcM_ERROR_PROCESS_ID_e
+ && fopAcM_IsExecuting(mItemId)
+ && fopAcM_SearchByID(mItemId, (fopAc_ac_c**)&item)
+ && item != NULL && fopAc_IsActor(item)) {
+ fopAcM_delete(item);
+ }
+ }
+
+ int msgs[2] = {-1, -1};
+
+ switch (prm) {
+ case 0:
+ ret = TRUE;
+ break;
+
+ case 1:
+ case 2:
+ case 4:
+ case 6:
+ msgs[0] = msgNo;
+ if (talkProc(msgs, send, actors, FALSE)) {
+ if (msgNo == 0) {
+ if (mFlow.checkEndFlow()) {
+ ret = TRUE;
+ }
+ } else {
+ ret = TRUE;
+ }
+ }
+ if (prm == 6 && !send) {
+ ret = TRUE;
+ }
+ break;
+
+ case 3:
+ case 5:
+ case 8:
+ if (talkProc(NULL, send, actors, FALSE) && mFlow.checkEndFlow()) {
+ ret = TRUE;
+ }
+ break;
+
+ case 7:
+ case 9:
+ case 13:
+ if (cLib_calcTimer(&mEventTimer) == 0) {
+ if (prm == 13) {
+ if (mItemId == fpcM_ERROR_PROCESS_ID_e) {
+ mItemId = fopAcM_createItemForPresentDemo(&current.pos,
+ fpcNm_ITEM_WOOD_STATUE, 9, -1, fopAcM_GetRoomNo(this), &mCurAngle, &scale);
+ }
+ if (fopAcM_SearchByID(mItemId, (fopAc_ac_c**)&item)
+ && item != NULL && fopAc_IsActor(item)) {
+ pos.set(0.0f, 110.0f, 30.0f);
+ mDoMtx_stack_c::YrotS(mCurAngle.y);
+ mDoMtx_stack_c::multVec(&pos, &pos);
+ pos += current.pos;
+ item->setOffsetPos(pos);
+ item->setMaxScale(0.55f);
+ item->scale.setall(0.0f);
+ item->hide();
+ ret = TRUE;
+ }
+ } else {
+ ret = TRUE;
+ }
+ }
+ break;
+
+ case 10:
+ case 11:
+ case 99:
+ ret = TRUE;
+ break;
+
+ case 12:
+ ret = TRUE;
+ break;
+ }
+
+ return ret;
}
/* 80B4FDD8-80B4FE78 002BB8 00A0+00 1/0 0/0 0/0 .text cutClothTry__13daNpc_Yelia_cFi */
-void daNpc_Yelia_c::cutClothTry(int param_0) {
- // NONMATCHING
-}
+BOOL daNpc_Yelia_c::cutClothTry(int i_staffId) {
+ BOOL ret = 0;
+ int prm = -1;
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
-/* ############################################################################################## */
-/* 80B523FC-80B52408 000148 000C+00 1/1 0/0 0/0 .rodata @5534 */
-SECTION_RODATA static u8 const lit_5534[12] = {
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-};
-COMPILER_STRIP_GATE(0x80B523FC, &lit_5534);
+ dComIfGp_getEventManager().getIsAddvance(i_staffId);
+
+ switch (prm) {
+ case 0:
+ action();
+ ret = TRUE;
+ break;
+ }
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80B524C9 = "msgNo2";
-#pragma pop
+ return ret;
+}
/* 80B4FE78-80B50084 002C58 020C+00 1/0 0/0 0/0 .text cutThankYou__13daNpc_Yelia_cFi */
-void daNpc_Yelia_c::cutThankYou(int param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::cutThankYou(int i_staffId) {
+ BOOL ret = 0;
+ int prm = -1;
+ int msgNo = 0;
+ int msgNo2 = 0;
+ int* prm_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm");
+ if (prm_p != NULL) {
+ prm = *prm_p;
+ }
+ int* msgNo_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "msgNo");
+ if (msgNo_p != NULL) {
+ msgNo = *msgNo_p;
+ }
+ int* msgNo2_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "msgNo2");
+ if (msgNo2_p != NULL) {
+ msgNo2 = *msgNo2_p;
+ }
+
+ if (dComIfGp_getEventManager().getIsAddvance(i_staffId)) {
+ switch (prm) {
+ case 0:
+ break;
+
+ case 1:
+ mJntAnm.lookPlayer(false);
+ initTalk(mFlowNodeNo, NULL);
+ break;
+
+ case 2:
+ break;
+ }
+ }
+
+ int msgs[3] = {-1, -1, -1};
+ switch (prm) {
+ case 0:
+ ret = TRUE;
+ break;
+
+ case 1:
+ msgs[0] = msgNo;
+ msgs[1] = msgNo2;
+ if (talkProc(msgs, FALSE, NULL, FALSE)) {
+ if (msgNo == 0 || msgNo2 == 0) {
+ if (mFlow.checkEndFlow()) {
+ ret = TRUE;
+ }
+ } else {
+ ret = TRUE;
+ }
+ }
+ break;
+
+ case 2:
+ if (talkProc(NULL, FALSE, NULL, FALSE) && mFlow.checkEndFlow()) {
+ ret = TRUE;
+ }
+ break;
+ }
+
+ return ret;
}
/* 80B50084-80B5080C 002E64 0788+00 1/0 0/0 0/0 .text wait__13daNpc_Yelia_cFPv */
-void daNpc_Yelia_c::wait(void* param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::wait(void* param_0) {
+ switch (mMode) {
+ case MODE_ENTER:
+ case MODE_INIT:
+ if (!mStagger.checkStagger()) {
+ switch (mType) {
+ case TYPE_HORSE:
+ case TYPE_1:
+ case TYPE_REMINISCENCE:
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_WAIT_A, -1.0f, FALSE, 0);
+ break;
+
+ case TYPE_KAKARIKO:
+ if (daNpcT_chkEvtBit(0x11f)) {
+ mFaceMotionSeqMngr.setNo(FACE_H_INTENSE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_ASKING, -1.0f, FALSE, 0);
+ } else {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_WAIT_UTUMUKU, -1.0f, FALSE, 0);
+ }
+ break;
+
+ case TYPE_TWILIGHT:
+ mFaceMotionSeqMngr.setNo(FACE_H_SAD, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_DEMO_WAIT_SIT, -1.0f, FALSE, 0);
+ break;
+
+ case TYPE_AFTER_ESCORT:
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_DEMO_WAIT_SIT, -1.0f, FALSE, 0);
+ break;
+
+ case TYPE_WOOD_STATUE:
+ mFaceMotionSeqMngr.setNo(FACE_H_INTENSE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_ASKING, -1.0f, FALSE, 0);
+ break;
+
+ case TYPE_MEMORIES_RESTORED:
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_WAIT_A, -1.0f, FALSE, 0);
+ break;
+
+ default:
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_WAIT_A, -1.0f, FALSE, 0);
+ break;
+ }
+
+ mMode = MODE_RUN;
+ }
+ // fallthrough
+
+ case MODE_RUN:
+ if (mType == TYPE_MEMORIES_RESTORED && !daNpcT_chkEvtBit(0x30c)) {
+ mSpeakEvent = true;
+ field_0xe33 = true;
+ }
+
+ if (!mStagger.checkStagger()) {
+ if (mType == TYPE_TWILIGHT) {
+ fopAc_ac_c* ralis = mActorMngr[1].getActorP();
+ if (ralis != NULL) {
+ mJntAnm.lookPos(&ralis->eyePos, false);
+ } else {
+ mJntAnm.lookNone(false);
+ }
+ } else {
+ if ((mType == TYPE_KAKARIKO && !daNpcT_chkEvtBit(0x11f))
+ || mType == TYPE_AFTER_ESCORT) {
+ mPlayerActorMngr.remove();
+ }
+ if (mPlayerActorMngr.getActorP() != NULL && !mTwilight) {
+ mJntAnm.lookPlayer(false);
+ if (!chkActorInSight(mPlayerActorMngr.getActorP(), mAttnFovY, mCurAngle.y)) {
+ mJntAnm.lookNone(false);
+ }
+ if (!srchPlayerActor() && home.angle.y == mCurAngle.y) {
+ mMode = MODE_INIT;
+ }
+ } else {
+ mJntAnm.lookNone(false);
+ if (mType != TYPE_AFTER_ESCORT) {
+ if (home.angle.y != mCurAngle.y) {
+ if (field_0xe34) {
+ if ((mType == TYPE_KAKARIKO && daNpcT_chkEvtBit(0x11f))
+ || mType == TYPE_WOOD_STATUE) {
+ if (step(home.angle.y, FACE_H_ASK, MOTION_ASK_STEP, 15, 0)) {
+ mMode = MODE_INIT;
+ }
+ } else if (step(home.angle.y, FACE_NONE, MOTION_STEP, 15, 0)) {
+ mMode = MODE_INIT;
+ }
+ } else {
+ setAngle(home.angle.y);
+ mMode = MODE_INIT;
+ }
+ attention_info.flags = 0;
+ } else {
+ srchPlayerActor();
+ }
+ }
+ }
+ }
+
+ switch (mJntAnm.getMode()) {
+ case daNpcT_JntAnm_c::LOOK_NONE:
+ switch (mType) {
+ case TYPE_AFTER_ESCORT:
+ fopAc_ac_c* colin = mActorMngr[1].getActorP();
+ if (colin != NULL) {
+ mJntAnm.lookPos(&colin->eyePos, false);
+ }
+ break;
+ }
+ break;
+ }
+ }
+ break;
+
+ case MODE_EXIT:
+ break;
+ }
+
+ return TRUE;
}
/* 80B5080C-80B50A0C 0035EC 0200+00 5/0 0/0 0/0 .text horseWait__13daNpc_Yelia_cFPv */
-void daNpc_Yelia_c::horseWait(void* param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::horseWait(void* param_0) {
+ switch (mMode) {
+ case MODE_ENTER:
+ case MODE_INIT:
+ mMode = MODE_RUN;
+ // fallthrough
+
+ case MODE_RUN:
+ if (!mStagger.checkStagger()) {
+ switch (mMotionSeqMngr.getNo()) {
+ case MOTION_HORSE_RETURN:
+ if (mMotionSeqMngr.checkEndSequence()) {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_A, -1.0f, FALSE, 0);
+ }
+ break;
+ case MOTION_HORSE_WAIT_C:
+ mFaceMotionSeqMngr.setNo(FACE_HORSE_RETURN, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_RETURN, -1.0f, FALSE, 0);
+ break;
+ default:
+ if (mMotionSeqMngr.getNo() != MOTION_HORSE_WAIT_A) {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_A, -1.0f, FALSE, 0);
+ }
+ break;
+ }
+ mJntAnm.lookNone(false);
+ attention_info.flags = 0;
+ }
+ break;
+
+ case MODE_EXIT:
+ break;
+ }
+
+ return TRUE;
}
-/* ############################################################################################## */
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80B524D0 = "SMELL_1st";
-#pragma pop
-
/* 80B50A0C-80B50B60 0037EC 0154+00 1/0 0/0 0/0 .text reminiscence__13daNpc_Yelia_cFPv */
-void daNpc_Yelia_c::reminiscence(void* param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::reminiscence(void* param_0) {
+ switch (mMode) {
+ case MODE_ENTER:
+ case MODE_INIT:
+ mFaceMotionSeqMngr.setNo(FACE_KAISOU_WAIT_A, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_KAISOU_WAIT_A, -1.0f, FALSE, 0);
+ mMode = MODE_RUN;
+ // fallthrough
+
+ case MODE_RUN:
+ field_0xe2d = false;
+ if (dComIfGp_event_runCheck() != FALSE
+ && !strcmp("SMELL_1st", dComIfGp_getEventManager().getRunEventName()))
+ {
+ dComIfGp_event_setTalkPartner(this);
+ field_0xe2d = true;
+ }
+ if (!mStagger.checkStagger()) {
+ mJntAnm.lookNone(false);
+ }
+ break;
+
+ case MODE_EXIT:
+ break;
+ }
+
+ return TRUE;
}
/* 80B50B60-80B50EE0 003940 0380+00 3/0 0/0 0/0 .text talk__13daNpc_Yelia_cFPv */
-void daNpc_Yelia_c::talk(void* param_0) {
- // NONMATCHING
+BOOL daNpc_Yelia_c::talk(void* param_0) {
+ switch (mMode) {
+ case MODE_ENTER:
+ case MODE_INIT:
+ if (!mStagger.checkStagger()) {
+ if (&horseWait == mpNextAction) {
+ mFaceMotionSeqMngr.setNo(FACE_HORSE_LOOKBACK, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_LOOKBACK, -1.0f, FALSE, 0);
+ }
+ initTalk(mFlowNodeNo, NULL);
+ mMode = 2;
+ }
+ // fallthrough
+
+ case MODE_RUN:
+ if (!mStagger.checkStagger()) {
+ if (&horseWait == mpNextAction && mMotionSeqMngr.getNo() == MOTION_HORSE_LOOKBACK) {
+ if (mMotionSeqMngr.checkEndSequence()) {
+ mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
+ mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_C, -1.0f, FALSE, 0);
+ }
+ return FALSE;
+ } else if (mTwilight || mPlayerAngle == mCurAngle.y || &horseWait == mpNextAction
+ || (mType == TYPE_KAKARIKO && !daNpcT_chkEvtBit(0x11f))
+ || mType == TYPE_AFTER_ESCORT)
+ {
+ if (talkProc(NULL, FALSE, NULL, FALSE) && mFlow.checkEndFlow()) {
+ mPlayerActorMngr.entry(daPy_getPlayerActorClass());
+ dComIfGp_event_reset();
+ mMode = MODE_EXIT;
+ }
+ mJntAnm.lookPlayer(false);
+ if (mTwilight || &horseWait == mpNextAction) {
+ mJntAnm.lookNone(false);
+ }
+ } else {
+ mJntAnm.lookPlayer(false);
+ if ((mType == TYPE_KAKARIKO && daNpcT_chkEvtBit(0x11f))
+ || mType == TYPE_WOOD_STATUE)
+ {
+ step(mPlayerAngle, FACE_H_ASK, MOTION_ASK_STEP, 15, 0);
+ } else {
+ step(mPlayerAngle, FACE_NONE, MOTION_STEP, 15, 0);
+ }
+ }
+ }
+ break;
+
+ case MODE_EXIT:
+ break;
+ }
+
+ return FALSE;
}
/* 80B50EE0-80B50F00 003CC0 0020+00 1/0 0/0 0/0 .text daNpc_Yelia_Create__FPv */
-static void daNpc_Yelia_Create(void* param_0) {
- // NONMATCHING
+static cPhs__Step daNpc_Yelia_Create(void* i_this) {
+ return static_cast<daNpc_Yelia_c*>(i_this)->create();
}
/* 80B50F00-80B50F20 003CE0 0020+00 1/0 0/0 0/0 .text daNpc_Yelia_Delete__FPv */
-static void daNpc_Yelia_Delete(void* param_0) {
- // NONMATCHING
+static int daNpc_Yelia_Delete(void* i_this) {
+ return static_cast<daNpc_Yelia_c*>(i_this)->Delete();
}
/* 80B50F20-80B50F40 003D00 0020+00 1/0 0/0 0/0 .text daNpc_Yelia_Execute__FPv */
-static void daNpc_Yelia_Execute(void* param_0) {
- // NONMATCHING
+static int daNpc_Yelia_Execute(void* i_this) {
+ return static_cast<daNpc_Yelia_c*>(i_this)->Execute();
}
/* 80B50F40-80B50F60 003D20 0020+00 1/0 0/0 0/0 .text daNpc_Yelia_Draw__FPv */
-static void daNpc_Yelia_Draw(void* param_0) {
- // NONMATCHING
+static int daNpc_Yelia_Draw(void* i_this) {
+ return static_cast<daNpc_Yelia_c*>(i_this)->Draw();
}
/* 80B50F60-80B50F68 003D40 0008+00 1/0 0/0 0/0 .text daNpc_Yelia_IsDelete__FPv */
-static bool daNpc_Yelia_IsDelete(void* param_0) {
- return true;
-}
-
-/* 80B50F68-80B50F98 003D48 0030+00 1/0 0/0 0/0 .text calc__11J3DTexNoAnmCFPUs */
-// void J3DTexNoAnm::calc(u16* param_0) const {
-extern "C" void calc__11J3DTexNoAnmCFPUs() {
- // NONMATCHING
+static int daNpc_Yelia_IsDelete(void* i_this) {
+ return 1;
}
-/* 80B50F98-80B50FE0 003D78 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
-// cCcD_GStts::~cCcD_GStts() {
-extern "C" void __dt__10cCcD_GSttsFv() {
- // NONMATCHING
-}
-
-/* 80B50FE0-80B51368 003DC0 0388+00 1/1 0/0 0/0 .text __dt__8daNpcT_cFv */
-// daNpcT_c::~daNpcT_c() {
-extern "C" void __dt__8daNpcT_cFv() {
- // NONMATCHING
-}
-
-/* 80B51368-80B513A4 004148 003C+00 3/3 0/0 0/0 .text __dt__4cXyzFv */
-// cXyz::~cXyz() {
-extern "C" void __dt__4cXyzFv() {
- // NONMATCHING
-}
-
-/* 80B513A4-80B513E0 004184 003C+00 2/2 0/0 0/0 .text __dt__5csXyzFv */
-// csXyz::~csXyz() {
-extern "C" void __dt__5csXyzFv() {
- // NONMATCHING
-}
-
-/* 80B513E0-80B51428 0041C0 0048+00 3/2 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */
-// daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() {
-extern "C" void __dt__18daNpcT_ActorMngr_cFv() {
- // NONMATCHING
-}
-
-/* 80B51428-80B51470 004208 0048+00 1/0 0/0 0/0 .text __dt__13daNpcT_Path_cFv */
-// daNpcT_Path_c::~daNpcT_Path_c() {
-extern "C" void __dt__13daNpcT_Path_cFv() {
- // NONMATCHING
-}
-
-/* 80B51470-80B514AC 004250 003C+00 1/1 0/0 0/0 .text __ct__18daNpcT_ActorMngr_cFv */
-// daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() {
-extern "C" void __ct__18daNpcT_ActorMngr_cFv() {
- // NONMATCHING
-}
-
-/* 80B514AC-80B514F4 00428C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
-// cM3dGCyl::~cM3dGCyl() {
-extern "C" void __dt__8cM3dGCylFv() {
- // NONMATCHING
-}
-
-/* 80B514F4-80B5153C 0042D4 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
-// cM3dGAab::~cM3dGAab() {
-extern "C" void __dt__8cM3dGAabFv() {
- // NONMATCHING
-}
-
-/* 80B5153C-80B51940 00431C 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
-}
-
-/* 80B51940-80B51944 004720 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */
-// csXyz::csXyz() {
-extern "C" void __ct__5csXyzFv() {
- /* empty function */
-}
-
-/* 80B51944-80B51A40 004724 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
-}
-
-/* 80B51A40-80B51A44 004820 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */
-// cXyz::cXyz() {
-extern "C" void __ct__4cXyzFv() {
- /* empty function */
-}
-
-/* 80B51A44-80B51A8C 004824 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
-}
-
-/* 80B51A8C-80B51AFC 00486C 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */
-// dBgS_AcchCir::~dBgS_AcchCir() {
-extern "C" void __dt__12dBgS_AcchCirFv() {
- // NONMATCHING
-}
-
-/* 80B51AFC-80B51B58 0048DC 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
-// dCcD_GStts::~dCcD_GStts() {
-extern "C" void __dt__10dCcD_GSttsFv() {
- // NONMATCHING
-}
-
-/* 80B51B58-80B51BC8 004938 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */
-// dBgS_ObjAcch::~dBgS_ObjAcch() {
-extern "C" void __dt__12dBgS_ObjAcchFv() {
- // NONMATCHING
-}
-
-/* 80B51BC8-80B51C10 0049A8 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */
-// J3DFrameCtrl::~J3DFrameCtrl() {
-extern "C" void __dt__12J3DFrameCtrlFv() {
- // NONMATCHING
-}
-
-/* 80B51C10-80B51D2C 0049F0 011C+00 1/1 0/0 0/0 .text setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs */
-// void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3,
-// s16 param_4) {
-extern "C" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() {
- // NONMATCHING
-}
-
-/* 80B51D2C-80B51F34 004B0C 0208+00 1/1 0/0 0/0 .text setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs */
-// void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) {
-extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() {
- // NONMATCHING
-}
-
-/* 80B51F34-80B51F38 004D14 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 */
-}
-
-/* 80B51F48-80B51F50 004D28 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv
- */
-// bool daNpcT_c::getEyeballLMaterialNo() {
-extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() {
- return false;
-}
-
-/* 80B51F50-80B51F58 004D30 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv
- */
-// bool daNpcT_c::getEyeballRMaterialNo() {
-extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() {
- return false;
-}
-
-/* 80B51F58-80B51F60 004D38 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */
-// bool daNpcT_c::evtEndProc() {
-extern "C" bool evtEndProc__8daNpcT_cFv() {
- return true;
-}
-
-/* 80B51F64-80B51F7C 004D44 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */
-// void daNpcT_c::decTmr() {
-extern "C" void decTmr__8daNpcT_cFv() {
- // NONMATCHING
-}
-
-/* 80B51F7C-80B51F80 004D5C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */
-// void daNpcT_c::drawOtherMdl() {
-extern "C" void drawOtherMdl__8daNpcT_cFv() {
- /* empty function */
-}
-
-/* 80B51F80-80B51F84 004D60 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */
-// void daNpcT_c::drawGhost() {
-extern "C" void drawGhost__8daNpcT_cFv() {
- /* empty function */
-}
-
-/* 80B51F84-80B51F8C 004D64 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;
-}
-
-/* 80B51F8C-80B51F94 004D6C 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi
- */
-// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) {
-extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() {
- return true;
-}
-
-/* 80B51F94-80B51FC4 004D74 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
-}
-
-/* 80B51FC4-80B51FF4 004DA4 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
-}
-
-/* 80B51FF4-80B51FF8 004DD4 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 */
-}
-
-/* 80B51FF8-80B51FFC 004DD8 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 */
-}
-
-/* 80B51FFC-80B52000 004DDC 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 */
-}
-
-/* 80B52000-80B52004 004DE0 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 */
-}
-
-/* 80B52004-80B52020 004DE4 001C+00 1/1 0/0 0/0 .text cLib_calcTimer<i>__FPi */
-extern "C" void func_80B52004(void* _this, int* param_0) {
- // NONMATCHING
-}
-
-/* ############################################################################################## */
-/* 80B533DC-80B533E8 000F00 000C+00 2/2 0/0 0/0 .data __vt__19daNpc_Yelia_Param_c */
-SECTION_DATA extern void* __vt__19daNpc_Yelia_Param_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__19daNpc_Yelia_Param_cFv,
+/* 80B53220-80B53240 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Yelia_MethodTable */
+static actor_method_class daNpc_Yelia_MethodTable = {
+ (process_method_func)daNpc_Yelia_Create,
+ (process_method_func)daNpc_Yelia_Delete,
+ (process_method_func)daNpc_Yelia_Execute,
+ (process_method_func)daNpc_Yelia_IsDelete,
+ (process_method_func)daNpc_Yelia_Draw,
};
-/* 80B533F0-80B533FC 000008 000C+00 1/1 0/0 0/0 .bss @3931 */
-static u8 lit_3931[12];
-
-/* 80B533FC-80B53400 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */
-static u8 l_HIO[4];
-
-/* 80B52020-80B52104 004E00 00E4+00 0/0 1/0 0/0 .text __sinit_d_a_npc_yelia_cpp */
-void __sinit_d_a_npc_yelia_cpp() {
- // NONMATCHING
-}
-
-#pragma push
-#pragma force_active on
-REGISTER_CTORS(0x80B52020, __sinit_d_a_npc_yelia_cpp);
-#pragma pop
-
-/* 80B52104-80B521E4 004EE4 00E0+00 1/1 0/0 0/0 .text
- * __ct__13daNpc_Yelia_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc
- */
-daNpc_Yelia_c::daNpc_Yelia_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
-}
-
-/* 80B521E4-80B521EC 004FC4 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Yelia_cFv */
-s32 daNpc_Yelia_c::getEyeballMaterialNo() {
- return true;
-}
-
-/* 80B521EC-80B521F4 004FCC 0008+00 1/0 0/0 0/0 .text getHeadJointNo__13daNpc_Yelia_cFv
- */
-s32 daNpc_Yelia_c::getHeadJointNo() {
- return 4;
-}
-
-/* 80B521F4-80B521FC 004FD4 0008+00 1/0 0/0 0/0 .text getNeckJointNo__13daNpc_Yelia_cFv
- */
-s32 daNpc_Yelia_c::getNeckJointNo() {
- return 3;
-}
-
-/* 80B521FC-80B52204 004FDC 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__13daNpc_Yelia_cFv */
-bool daNpc_Yelia_c::getBackboneJointNo() {
- return true;
-}
-
-/* 80B52204-80B52214 004FE4 0010+00 1/0 0/0 0/0 .text checkChangeJoint__13daNpc_Yelia_cFi
- */
-void daNpc_Yelia_c::checkChangeJoint(int param_0) {
- // NONMATCHING
-}
-
-/* 80B52214-80B52224 004FF4 0010+00 1/0 0/0 0/0 .text checkRemoveJoint__13daNpc_Yelia_cFi
- */
-void daNpc_Yelia_c::checkRemoveJoint(int param_0) {
- // NONMATCHING
-}
-
-/* 80B52224-80B5222C 005004 0008+00 1/0 0/0 0/0 .text chkXYItems__13daNpc_Yelia_cFv */
-bool daNpc_Yelia_c::chkXYItems() {
- return true;
-}
-
-/* 80B5222C-80B52274 00500C 0048+00 2/1 0/0 0/0 .text __dt__19daNpc_Yelia_Param_cFv */
-daNpc_Yelia_Param_c::~daNpc_Yelia_Param_c() {
- // NONMATCHING
-}
-
-/* 80B52274-80B5227C 005054 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */
-static void func_80B52274() {
- // NONMATCHING
-}
-
-/* 80B5227C-80B52284 00505C 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */
-static void func_80B5227C() {
- // NONMATCHING
-}
-
-/* 80B52284-80B522A0 005064 001C+00 1/1 0/0 0/0 .text setOffsetPos__9daDitem_cF4cXyz */
-// void daDitem_c::setOffsetPos(cXyz param_0) {
-extern "C" void setOffsetPos__9daDitem_cF4cXyz() {
- // NONMATCHING
-}
-
-/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
+/* 80B53240-80B53270 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_YELIA */
+extern actor_process_profile_definition g_profile_NPC_YELIA = {
+ fpcLy_CURRENT_e, // mLayerID
+ 7, // mListID
+ fpcPi_CURRENT_e, // mListPrio
+ PROC_NPC_YELIA, // mProcName
+ &g_fpcLf_Method.base, // sub_method
+ sizeof(daNpc_Yelia_c), // mSize
+ 0, // mSizeOther
+ 0, // mParameters
+ &g_fopAc_Method.base, // sub_method
+ 379, // mPriority
+ &daNpc_Yelia_MethodTable, // sub_method
+ 0x00040108, // mStatus
+ fopAc_NPC_e, // mActorType
+ fopAc_CULLBOX_CUSTOM_e, // cullType
+};