diff --git a/configure.py b/configure.py index 11712533c11..3d0617d5082 100755 --- a/configure.py +++ b/configure.py @@ -1966,7 +1966,7 @@ config.libs = [ ActorRel(Equivalent, "d_a_npc_ash"), # weak func order (sinShort) ActorRel(Equivalent, "d_a_npc_ashB"), # weak func order (sinShort) ActorRel(MatchingFor(ALL_GCN), "d_a_npc_bans"), - ActorRel(NonMatching, "d_a_npc_blue_ns"), + ActorRel(MatchingFor(ALL_GCN), "d_a_npc_blue_ns"), ActorRel(MatchingFor(ALL_GCN), "d_a_npc_bou"), ActorRel(Equivalent, "d_a_npc_bouS"), # weak func order (sinShort) ActorRel(Equivalent, "d_a_npc_cdn3"), # weak func order (~csXyz); vtable order diff --git a/include/d/actor/d_a_npc_blue_ns.h b/include/d/actor/d_a_npc_blue_ns.h index 86e52de71bd..6c6185c1f69 100644 --- a/include/d/actor/d_a_npc_blue_ns.h +++ b/include/d/actor/d_a_npc_blue_ns.h @@ -24,7 +24,7 @@ public: int isDelete(); int Delete(); int Execute(); - int _Execute(); + void _Execute(); void callEvt_changeYami(); fpc_ProcID create_Yamijin(int); BOOL col_check(); diff --git a/src/d/actor/d_a_npc_blue_ns.cpp b/src/d/actor/d_a_npc_blue_ns.cpp index 31a2848ca11..c0f4d5f0329 100644 --- a/src/d/actor/d_a_npc_blue_ns.cpp +++ b/src/d/actor/d_a_npc_blue_ns.cpp @@ -216,8 +216,7 @@ int daNpcBlueNS_c::Execute() { return 1; } -// NONMATCHING - small regalloc -int daNpcBlueNS_c::_Execute() { +void daNpcBlueNS_c::_Execute() { setParam(); if (main()) { @@ -255,7 +254,10 @@ int daNpcBlueNS_c::_Execute() { field_0x9f3 = 0; for (int i = 0; i < 5; i++) { - if ((mAttnChangeTimer == 0 || mAttnIdx != i) && mAttnActorTimer[i] != 0 && cLib_calcTimer(&mAttnActorTimer[i]) == 0) { + if (mAttnChangeTimer != 0 && mAttnIdx == i) { + continue; + } + if (mAttnActorTimer[i] != 0 && cLib_calcTimer(&mAttnActorTimer[i]) == 0) { mAttnActor[i].remove(); } }