summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMax Roncace <me@caseif.net>2026-01-05 06:58:09 -0500
committerGitHub <noreply@github.com>2026-01-05 03:58:09 -0800
commite15ba03caac09f55e3055cbd2bf6d214e9d94372 (patch)
treed2b1a5e387d6b1d73c341c1833315c37f54859ff /src
parent22dc7a37dbc844b0eccba65025cf7f0950b98259 (diff)
Link d_a_npc and d_a_npc_cd2 (#3019)
Diffstat (limited to 'src')
-rw-r--r--src/d/actor/d_a_npc4.cpp21
-rw-r--r--src/d/actor/d_a_npc_cd2.cpp94
2 files changed, 68 insertions, 47 deletions
diff --git a/src/d/actor/d_a_npc4.cpp b/src/d/actor/d_a_npc4.cpp
index a8f6db90d5..9e59ae820f 100644
--- a/src/d/actor/d_a_npc4.cpp
+++ b/src/d/actor/d_a_npc4.cpp
@@ -2137,6 +2137,27 @@ static void dummyVirtual() {
daNpcF_MoveBgActor_c dummy;
}
+// see note in header, this fixes weak function order for daNpcF_MoveBgActor_c functions
+int daNpcF_MoveBgActor_c::MoveBGCreateHeap() {
+ return CreateHeap();
+}
+
+int daNpcF_MoveBgActor_c::MoveBGCreate() {
+ return Create();
+}
+
+int daNpcF_MoveBgActor_c::MoveBGDelete() {
+ return Delete();
+}
+
+int daNpcF_MoveBgActor_c::MoveBGExecute() {
+ return Execute((Mtx**)NULL);
+}
+
+int daNpcF_MoveBgActor_c::MoveBGDraw() {
+ return Draw();
+}
+
dCcD_SrcGObjInf const daBaseNpc_c::mCcDObj = {
{0, {{0, 0, 0}, {0x0, 0x0}, {0x79}}},
{dCcD_SE_NONE, 0, 0, 0, 0},
diff --git a/src/d/actor/d_a_npc_cd2.cpp b/src/d/actor/d_a_npc_cd2.cpp
index 721afc93f3..227ea5703b 100644
--- a/src/d/actor/d_a_npc_cd2.cpp
+++ b/src/d/actor/d_a_npc_cd2.cpp
@@ -195,6 +195,53 @@ dCcD_SrcCyl const daNpcCd2_c::m_cylDat = {
}
};
+static char* const* l_resNameTbl[30] = {
+ l_resMANa, l_resMADa, l_resMCNa, l_resMONa, l_resMANb, l_resMANc, l_resMASa, l_resMBNa,
+ l_resMANa2, l_resMADa2, l_resMCNa2, l_resMONa2, l_resMANb2, l_resMANc2, l_resMASa2, l_resMBNa2,
+ l_resWANa, l_resWADa, l_resMATa, l_resWCNa, l_resWONa, l_resWGNa, l_resWANb, l_resWANa2,
+ l_resWADa2, l_resMATa2, l_resWCNa2, l_resWONa2, l_resWGNa2, l_resWANb2,
+};
+
+static anmTblPrm const l_bmdTbl[30] = {
+ l_resMANa[0], 3, l_resMADa[0], 3, l_resMCNa[0], 4, l_resMONa[0], 4, l_resMANb[0], 3,
+ l_resMANc[0], 4, l_resMASa[0], 4, l_resMBNa[0], 4, l_resMANa2[0], 4, l_resMADa2[0], 4,
+ l_resMCNa2[0], 4, l_resMONa2[0], 4, l_resMANb2[0], 3, l_resMANc2[0], 4, l_resMASa2[0], 4,
+ l_resMBNa2[0], 4, l_resWANa[0], 4, l_resWADa[0], 4, l_resMATa[0], 3, l_resWCNa[0], 4,
+ l_resWONa[0], 4, l_resWGNa[0], 4, l_resWANb[0], 4, l_resWANa2[0], 4, l_resWADa2[0], 4,
+ l_resMATa2[0], 3, l_resWCNa2[0], 4, l_resWONa2[0], 4, l_resWGNa2[0], 4, l_resWANb2[0], 4,
+};
+
+static anmTblPrm const l_bmdTWTbl[30] = {
+ l_resMANa[1], 3, l_resMADa[1], 3, l_resMCNa[1], 4, l_resMONa[1], 4, l_resMANb[1], 3,
+ l_resMANc[1], 4, l_resMASa[1], 4, l_resMBNa[1], 4, l_resMANa2[1], 4, l_resMADa2[1], 3,
+ l_resMCNa2[1], 4, l_resMONa2[1], 4, l_resMANb2[1], 3, l_resMANc2[1], 4, l_resMASa2[1], 4,
+ l_resMBNa2[1], 4, l_resWANa[1], 4, l_resWADa[1], 4, l_resMATa[1], 3, l_resWCNa[1], 4,
+ l_resWONa[1], 4, l_resWGNa[1], 4, l_resWANb[1], 4, l_resWANa2[1], 4, l_resWADa2[1], 4,
+ l_resMATa2[1], 3, l_resWCNa2[1], 4, l_resWONa2[1], 4, l_resWGNa2[1], 4, l_resWANb2[1], 4,
+};
+
+static anmTblPrm const l_btpTbl[30] = {
+ l_resMANa[0], -1, l_resMADa[0], -1, l_resMCNa[0], 7, l_resMONa[0], 7, l_resMANb[0], -1,
+ l_resMANc[0], 7, l_resMASa[0], 7, l_resMBNa[0], 7, l_resMANa2[0], 7, l_resMADa2[0], 7,
+ l_resMCNa2[0], 7, l_resMONa2[0], 7, l_resMANb2[0], -1, l_resMANc2[0], 7, l_resMASa2[0], 7,
+ l_resMBNa2[0], 7, l_resWANa[0], 7, l_resWADa[0], 7, l_resMATa[0], -1, l_resWCNa[0], 7,
+ l_resWONa[0], 7, l_resWGNa[0], 7, l_resWANb[0], 7, l_resWANa2[0], 7, l_resWADa2[0], 7,
+ l_resMATa2[0], -1, l_resWCNa2[0], 7, l_resWONa2[0], 7, l_resWGNa2[0], 7, l_resWANb2[0], 7,
+};
+
+static anmTblPrm const l_btpTWTbl[30] = {
+ l_resMANa[1], -1, l_resMADa[1], -1, l_resMCNa[1], 7, l_resMONa[1], 7, l_resMANb[1], -1,
+ l_resMANc[1], 7, l_resMASa[1], 7, l_resMBNa[1], 7, l_resMANa2[1], 7, l_resMADa2[1], -1,
+ l_resMCNa2[1], 7, l_resMONa2[1], 7, l_resMANb2[1], -1, l_resMANc2[1], 7, l_resMASa2[1], 7,
+ l_resMBNa2[1], 7, l_resWANa[1], 7, l_resWADa[1], 7, l_resMATa[1], -1, l_resWCNa[1], 7,
+ l_resWONa[1], 7, l_resWGNa[1], 7, l_resWANb[1], 7, l_resWANa2[1], 7, l_resWADa2[1], 7,
+ l_resMATa2[1], -1, l_resWCNa2[1], 7, l_resWONa2[1], 7, l_resWGNa2[1], 7, l_resWANb2[1], 7,
+};
+
+#include "d/actor/d_a_npc_cd2_HIO.inc"
+
+daNpcCd2_HIO_c l_Cd2_HIO;
+
int daNpcCd2_c::NpcCreate(int param_1) {
J3DModelData* a_mdlData_p = getNpcMdlDataP(param_1);
JUT_ASSERT(590, NULL != a_mdlData_p);
@@ -292,51 +339,6 @@ bool daNpcCd2_c::isM_() {
return a_jntNum == JntM_NUM_e;
}
-static char* const* l_resNameTbl[30] = {
- l_resMANa, l_resMADa, l_resMCNa, l_resMONa, l_resMANb, l_resMANc, l_resMASa, l_resMBNa,
- l_resMANa2, l_resMADa2, l_resMCNa2, l_resMONa2, l_resMANb2, l_resMANc2, l_resMASa2, l_resMBNa2,
- l_resWANa, l_resWADa, l_resMATa, l_resWCNa, l_resWONa, l_resWGNa, l_resWANb, l_resWANa2,
- l_resWADa2, l_resMATa2, l_resWCNa2, l_resWONa2, l_resWGNa2, l_resWANb2,
-};
-
-static anmTblPrm const l_bmdTbl[30] = {
- l_resMANa[0], 3, l_resMADa[0], 3, l_resMCNa[0], 4, l_resMONa[0], 4, l_resMANb[0], 3,
- l_resMANc[0], 4, l_resMASa[0], 4, l_resMBNa[0], 4, l_resMANa2[0], 4, l_resMADa2[0], 4,
- l_resMCNa2[0], 4, l_resMONa2[0], 4, l_resMANb2[0], 3, l_resMANc2[0], 4, l_resMASa2[0], 4,
- l_resMBNa2[0], 4, l_resWANa[0], 4, l_resWADa[0], 4, l_resMATa[0], 3, l_resWCNa[0], 4,
- l_resWONa[0], 4, l_resWGNa[0], 4, l_resWANb[0], 4, l_resWANa2[0], 4, l_resWADa2[0], 4,
- l_resMATa2[0], 3, l_resWCNa2[0], 4, l_resWONa2[0], 4, l_resWGNa2[0], 4, l_resWANb2[0], 4,
-};
-
-static anmTblPrm const l_bmdTWTbl[30] = {
- l_resMANa[1], 3, l_resMADa[1], 3, l_resMCNa[1], 4, l_resMONa[1], 4, l_resMANb[1], 3,
- l_resMANc[1], 4, l_resMASa[1], 4, l_resMBNa[1], 4, l_resMANa2[1], 4, l_resMADa2[1], 3,
- l_resMCNa2[1], 4, l_resMONa2[1], 4, l_resMANb2[1], 3, l_resMANc2[1], 4, l_resMASa2[1], 4,
- l_resMBNa2[1], 4, l_resWANa[1], 4, l_resWADa[1], 4, l_resMATa[1], 3, l_resWCNa[1], 4,
- l_resWONa[1], 4, l_resWGNa[1], 4, l_resWANb[1], 4, l_resWANa2[1], 4, l_resWADa2[1], 4,
- l_resMATa2[1], 3, l_resWCNa2[1], 4, l_resWONa2[1], 4, l_resWGNa2[1], 4, l_resWANb2[1], 4,
-};
-
-static anmTblPrm const l_btpTbl[30] = {
- l_resMANa[0], -1, l_resMADa[0], -1, l_resMCNa[0], 7, l_resMONa[0], 7, l_resMANb[0], -1,
- l_resMANc[0], 7, l_resMASa[0], 7, l_resMBNa[0], 7, l_resMANa2[0], 7, l_resMADa2[0], 7,
- l_resMCNa2[0], 7, l_resMONa2[0], 7, l_resMANb2[0], -1, l_resMANc2[0], 7, l_resMASa2[0], 7,
- l_resMBNa2[0], 7, l_resWANa[0], 7, l_resWADa[0], 7, l_resMATa[0], -1, l_resWCNa[0], 7,
- l_resWONa[0], 7, l_resWGNa[0], 7, l_resWANb[0], 7, l_resWANa2[0], 7, l_resWADa2[0], 7,
- l_resMATa2[0], -1, l_resWCNa2[0], 7, l_resWONa2[0], 7, l_resWGNa2[0], 7, l_resWANb2[0], 7,
-};
-
-static anmTblPrm const l_btpTWTbl[30] = {
- l_resMANa[1], -1, l_resMADa[1], -1, l_resMCNa[1], 7, l_resMONa[1], 7, l_resMANb[1], -1,
- l_resMANc[1], 7, l_resMASa[1], 7, l_resMBNa[1], 7, l_resMANa2[1], 7, l_resMADa2[1], -1,
- l_resMCNa2[1], 7, l_resMONa2[1], 7, l_resMANb2[1], -1, l_resMANc2[1], 7, l_resMASa2[1], 7,
- l_resMBNa2[1], 7, l_resWANa[1], 7, l_resWADa[1], 7, l_resMATa[1], -1, l_resWCNa[1], 7,
- l_resWONa[1], 7, l_resWGNa[1], 7, l_resWANb[1], 7, l_resWANa2[1], 7, l_resWADa2[1], 7,
- l_resMATa2[1], -1, l_resWCNa2[1], 7, l_resWONa2[1], 7, l_resWGNa2[1], 7, l_resWANb2[1], 7,
-};
-
-#include "d/actor/d_a_npc_cd2_HIO.inc"
-
J3DAnmTransform* daNpcCd2_c::getAnmP(int param_1, int param_2) {
int a_anmNum = param_1;
switch (a_anmNum) {
@@ -597,8 +599,6 @@ J3DAnmTransform* daNpcCd2_c::getAnmP(int param_1, int param_2) {
return (J3DAnmTransform*)dComIfG_getObjectRes(name, index);
}
-daNpcCd2_HIO_c l_Cd2_HIO;
-
int daNpcCd2_c::setAttention(int param_1) {
static cXyz a_eyeOfsTbl[30] = {
cXyz(0.0f, 10.0f, 0.0f),