Link npc_guard (#2859)

This commit is contained in:
hev7 2025-11-24 23:30:01 +00:00 committed by GitHub
parent c4df6a5771
commit cd3d634133
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 26 additions and 26 deletions

View File

@ -1885,7 +1885,7 @@ config.libs = [
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_grr"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_grs"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_grz"),
ActorRel(NonMatching, "d_a_npc_guard"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_guard"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_gwolf"),
ActorRel(MatchingFor(ALL_GCN), "d_a_npc_hanjo"),
ActorRel(MatchingFor(ALL_GCN, "Shield"), "d_a_npc_henna0"),

View File

@ -44,13 +44,13 @@ public:
/* 809F0A50 */ void initEscape();
/* 809F0B20 */ void executeEscape();
/* 809F0DD4 */ void setAngle();
/* 809F0DE0 */ void setSpeed(f32, f32, f32*, int);
/* 809F0DE0 */ inline void setSpeed(f32, f32, f32*, int);
/* 809F0ED4 */ void pathMoveF();
/* 809F12F0 */ int create();
/* 809F14CC */ void create_init();
/* 809F17D0 */ void setMtx();
/* 809F1878 */ void lookat();
/* 809F1F74 */ virtual ~daNpcGuard_c();
/* 809F14CC */ inline void create_init();
/* 809F17D0 */ inline void setMtx();
/* 809F1878 */ inline void lookat();
/* 809F1F74 */ inline virtual ~daNpcGuard_c();
/* 809F2044 */ int execute();
inline int createHeap();

View File

@ -336,7 +336,7 @@ void daNpcGuard_c::setAngle() {
}
/* 809F0DE0-809F0ED4 001100 00F4+00 1/1 0/0 0/0 .text setSpeed__12daNpcGuard_cFffPfi */
inline void daNpcGuard_c::setSpeed(f32 param_1, f32 param_2, f32* i_speed, int param_4) {
void daNpcGuard_c::setSpeed(f32 param_1, f32 param_2, f32* i_speed, int param_4) {
f32 target = field_0xd8c * (param_2 * field_0xd8c);
f32 step = field_0xd8c * (param_1 * field_0xd8c);
@ -410,25 +410,6 @@ static int daNpcGuard_Create(void* i_this) {
return static_cast<daNpcGuard_c*>(i_this)->create();
}
/* 809F12F0-809F14CC 001610 01DC+00 1/1 0/0 0/0 .text create__12daNpcGuard_cFv */
int daNpcGuard_c::create() {
fopAcM_ct(this, daNpcGuard_c);
m_type = cLib_getRndValue(0, 2);
mObjNum = 2;
int phase = loadResrc(m_type, mObjNum);
if (phase == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0x2220)) {
// Failed to create actor!
OS_REPORT("アクター生成失敗しました!\n");
return cPhs_ERROR_e;
}
create_init();
}
return phase;
}
void daNpcGuard_c::initCollision() {
dCcD_SrcSph sph = {
{
@ -543,6 +524,25 @@ void daNpcGuard_c::lookat() {
mLookat.action(cStack_80, eyePos, this, afStack_38, NULL != mActorMngr.getActorP());
}
/* 809F12F0-809F14CC 001610 01DC+00 1/1 0/0 0/0 .text create__12daNpcGuard_cFv */
int daNpcGuard_c::create() {
fopAcM_ct(this, daNpcGuard_c);
m_type = cLib_getRndValue(0, 2);
mObjNum = 2;
int phase = loadResrc(m_type, mObjNum);
if (phase == cPhs_COMPLEATE_e) {
if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0x2220)) {
// Failed to create actor!
OS_REPORT("アクター生成失敗しました!\n");
return cPhs_ERROR_e;
}
create_init();
}
return phase;
}
/* 809F1F40-809F1F74 002260 0034+00 1/0 0/0 0/0 .text daNpcGuard_Delete__FPv */
static int daNpcGuard_Delete(void* i_this) {
static_cast<daNpcGuard_c*>(i_this)->~daNpcGuard_c();