summaryrefslogtreecommitdiff
path: root/src/d/d_cc_d.cpp
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2024-10-10 07:29:58 -0700
committerGitHub <noreply@github.com>2024-10-10 08:29:58 -0600
commit12eb254d769d84743b5cc6cd5424057c57eaf0ad (patch)
tree4509be332b2ccfc6fe939f47740d68f7746eca3e /src/d/d_cc_d.cpp
parent2fd702c0ac170a789af879b8b92a82d4dcc9080c (diff)
switch to dtk setup (#2203)
* switch to dtk setup * some cleanup / fixes * cleanup d_a_alink literals * Restore doxygen, update CI & README.md (#1) * Fix build image ref (#2) --------- Co-authored-by: Luke Street <luke@street.dev>
Diffstat (limited to 'src/d/d_cc_d.cpp')
-rw-r--r--src/d/d_cc_d.cpp464
1 files changed, 464 insertions, 0 deletions
diff --git a/src/d/d_cc_d.cpp b/src/d/d_cc_d.cpp
new file mode 100644
index 0000000000..f37704a578
--- /dev/null
+++ b/src/d/d_cc_d.cpp
@@ -0,0 +1,464 @@
+//
+// Generated By: dol2asm
+// Translation Unit: d/d_cc_d
+//
+
+#include "d/d_cc_d.h"
+#include "f_pc/f_pc_searcher.h"
+#include "f_op/f_op_actor_mng.h"
+
+//
+// Declarations:
+//
+
+/* 8008364C-80083660 07DF8C 0014+00 3/3 0/0 0/0 .text ClrActorInfo__22dCcD_GAtTgCoCommonBaseFv */
+void dCcD_GAtTgCoCommonBase::ClrActorInfo() {
+ mApid = -1;
+ mAc = NULL;
+}
+
+/* 80083660-80083678 07DFA0 0018+00 1/1 0/0 0/0 .text ct__22dCcD_GAtTgCoCommonBaseFv */
+void dCcD_GAtTgCoCommonBase::ct() {
+ mGFlag = 0;
+ mRPrm = 0;
+ mHitCallback = NULL;
+ mEffCounter = 0;
+}
+
+/* 80083678-80083688 07DFB8 0010+00 0/0 2/2 0/0 .text SetHitApid__22dCcD_GAtTgCoCommonBaseFUi */
+void dCcD_GAtTgCoCommonBase::SetHitApid(unsigned int hitApid) {
+ mApid = hitApid;
+ mAc = NULL;
+}
+
+/* 80083688-80083704 07DFC8 007C+00 6/6 17/17 43/43 .text GetAc__22dCcD_GAtTgCoCommonBaseFv */
+fopAc_ac_c* dCcD_GAtTgCoCommonBase::GetAc() {
+ if (mApid == -1) {
+ return NULL;
+ }
+ if (mAc == NULL) {
+ mAc = fopAcM_SearchByID(mApid);
+ if (mAc == NULL) {
+ mApid = -1;
+ }
+ }
+ return mAc;
+}
+
+/* 80083704-80083718 07E044 0014+00 3/3 0/0 0/0 .text
+ * Set__22dCcD_GAtTgCoCommonBaseFRC25dCcD_SrcGAtTgCoCommonBase */
+void dCcD_GAtTgCoCommonBase::Set(dCcD_SrcGAtTgCoCommonBase const& src) {
+ mGFlag = src.mGFlag;
+ mEffCounter = 0;
+}
+
+/* 80083718-80083724 07E058 000C+00 0/0 1/1 0/0 .text
+ * SetEffCounterTimer__22dCcD_GAtTgCoCommonBaseFv */
+void dCcD_GAtTgCoCommonBase::SetEffCounterTimer() {
+ mEffCounter = 5;
+}
+
+/* 80083724-80083748 07E064 0024+00 3/3 0/0 0/0 .text
+ * SubtractEffCounter__22dCcD_GAtTgCoCommonBaseFv */
+void dCcD_GAtTgCoCommonBase::SubtractEffCounter() {
+ mEffCounter--;
+ if (mEffCounter < 0) {
+ mEffCounter = 0;
+ }
+}
+
+/* 80083748-80083760 07E088 0018+00 0/0 1/1 0/0 .text ChkEffCounter__22dCcD_GAtTgCoCommonBaseFv */
+bool dCcD_GAtTgCoCommonBase::ChkEffCounter() {
+ return mEffCounter > 0;
+}
+
+/* 80083760-800837B0 07E0A0 0050+00 0/0 3/3 446/446 .text __ct__10dCcD_GSttsFv */
+dCcD_GStts::dCcD_GStts() {
+ mAt = 0;
+ mTg = 0;
+ mRoomId = 0;
+ field_0x08 = -1;
+ mAtApid = -1;
+ mAtOldApid = -1;
+ mTgApid = -1;
+ mTgOldApid = -1;
+ field_0x1C = 0;
+}
+
+/* 800837F8-80083830 07E138 0038+00 1/1 0/0 0/0 .text Ct__10dCcD_GSttsFv */
+void dCcD_GStts::Ct() {
+ mAt = 0;
+ mTg = 0;
+ mRoomId = 0;
+ field_0x08 = -1;
+ mAtApid = -1;
+ mAtOldApid = -1;
+ mTgApid = -1;
+ mTgOldApid = -1;
+ field_0x1C = 0;
+}
+
+/* 80083830-80083850 07E170 0020+00 0/0 3/3 160/160 .text Move__10dCcD_GSttsFv */
+void dCcD_GStts::Move() {
+ mAtOldApid = mAtApid;
+ mAtApid = 0;
+ mTgOldApid = mTgApid;
+ mTgApid = 0;
+}
+
+/* 80083850-80083860 07E190 0010+00 1/0 0/0 0/0 .text GetGStts__9dCcD_SttsFv */
+cCcD_GStts* dCcD_Stts::GetGStts() {
+ return this;
+}
+
+/* 80083860-800838F4 07E1A0 0094+00 0/0 3/3 416/416 .text Init__9dCcD_SttsFiiP10fopAc_ac_c */
+void dCcD_Stts::Init(int param_0, int param_1, fopAc_ac_c* pActor) {
+ u32 actorPid;
+ if (pActor != NULL) {
+ actorPid = fopAcM_GetID(pActor);
+ } else {
+ actorPid = -1;
+ }
+
+ cCcD_Stts::Init(param_0, param_1, pActor, actorPid);
+
+ s32 roomNo;
+ if (pActor != NULL) {
+ roomNo = fopAcM_GetRoomNo(pActor);
+ } else {
+ roomNo = 0;
+ OnNoActor();
+ }
+
+ if (roomNo != -1) {
+ SetRoomId(roomNo);
+ } else {
+ SetRoomId(0);
+ }
+}
+
+/* 800838F4-80083928 07E234 0034+00 1/0 0/0 0/0 .text Ct__9dCcD_SttsFv */
+void dCcD_Stts::Ct() {
+ cCcD_Stts::Ct();
+ dCcD_GStts::Ct();
+}
+
+/* 80083928-80083934 07E268 000C+00 1/0 0/0 0/0 .text ClrAt__9dCcD_SttsFv */
+void dCcD_Stts::ClrAt() {
+ cCcD_Stts::ClrAt();
+ dCcD_GStts::ClrAt();
+}
+
+/* 80083934-80083944 07E274 0010+00 1/0 0/0 0/0 .text ClrTg__9dCcD_SttsFv */
+void dCcD_Stts::ClrTg() {
+ cCcD_Stts::ClrTg();
+ dCcD_GStts::ClrTg();
+}
+
+/* 80083944-800839A0 07E284 005C+00 1/1 0/0 0/0 .text Set__11dCcD_GObjAtFRC14dCcD_SrcGObjAt */
+void dCcD_GObjAt::Set(dCcD_SrcGObjAt const& src) {
+ dCcD_GAtTgCoCommonBase::Set(src.mBase);
+ mSe = src.mSe;
+ mMtrl = src.mMtrl;
+ mHitMark = src.mHitMark;
+ mSpl = src.mSpl;
+}
+
+/* 800839A0-80083A28 07E2E0 0088+00 1/1 0/0 0/0 .text Set__11dCcD_GObjTgFRC14dCcD_SrcGObjTg */
+void dCcD_GObjTg::Set(dCcD_SrcGObjTg const& src) {
+ dCcD_GAtTgCoCommonBase::Set(src.mBase);
+ mSe = src.mSe;
+ mMtrl = src.mMtrl;
+ mHitMark = src.mHitMark;
+ mSpl = src.mSpl;
+ mHitPos = cXyz::Zero;
+ mShieldFrontRangeYAngle = NULL;
+ mShieldRange = 0x4000;
+}
+
+/* 80083A28-80083B8C 07E368 0164+00 0/0 4/4 496/496 .text __ct__12dCcD_GObjInfFv */
+dCcD_GObjInf::dCcD_GObjInf() {}
+
+dCcD_GObjInf::~dCcD_GObjInf() {}
+
+cCcD_GObjInf* dCcD_GObjInf::GetGObjInf() {
+ return this;
+}
+
+/* 8008426C-800842C0 07EBAC 0054+00 5/0 0/0 0/0 .text ClrAtHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ClrAtHit() {
+ cCcD_ObjHitInf::ClrAtHit();
+ mGObjAt.ClrHit();
+ OffAtShieldHit();
+ OffAtHitNoActor();
+ SubtractAtEffCounter();
+}
+
+/* 800842C0-80084318 07EC00 0058+00 0/0 12/12 78/78 .text ChkAtHit__12dCcD_GObjInfFv */
+u32 dCcD_GObjInf::ChkAtHit() {
+ if (cCcD_ObjHitInf::ChkAtHit() == 0) {
+ return 0;
+ } else if (ChkAtHitNoActor() == 0 && GetAtHitAc() == NULL) {
+ return 0;
+ } else {
+ return 1;
+ }
+}
+
+/* 80084318-80084358 07EC58 0040+00 0/0 10/10 7/7 .text ResetAtHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ResetAtHit() {
+ ClrAtHit();
+ ClrAtEffCounter();
+}
+
+/* 80084358-800843A8 07EC98 0050+00 1/1 0/0 31/31 .text GetAtHitObj__12dCcD_GObjInfFv */
+cCcD_Obj* dCcD_GObjInf::GetAtHitObj() {
+ if (ChkAtHitNoActor() == 0 && GetAtHitAc() == NULL) {
+ return NULL;
+ } else {
+ return cCcD_ObjHitInf::GetAtHitObj();
+ }
+}
+
+/* 800843A8-800843DC 07ECE8 0034+00 0/0 2/2 3/3 .text GetAtHitGObj__12dCcD_GObjInfFv */
+cCcD_GObjInf* dCcD_GObjInf::GetAtHitGObj() {
+ cCcD_Obj* obj = GetAtHitObj();
+ if (obj == NULL) {
+ return NULL;
+ } else {
+ return dCcD_GetGObjInf(obj);
+ }
+}
+
+/* 800843DC-800843FC 07ED1C 0020+00 0/0 1/1 0/0 .text ChkAtNoGuard__12dCcD_GObjInfFv */
+u8 dCcD_GObjInf::ChkAtNoGuard() {
+ return GetAtSpl() >= 12;
+}
+
+/* 800843FC-80084460 07ED3C 0064+00 5/0 0/0 0/0 .text ClrTgHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ClrTgHit() {
+ cCcD_ObjHitInf::ClrTgHit();
+ mGObjTg.ClrHit();
+ OffTgHitNoActor();
+ OffTgShieldHit();
+ OffTgMagneHit();
+ SubtractTgEffCounter();
+}
+
+/* 80084460-800844B8 07EDA0 0058+00 0/0 6/6 305/305 .text ChkTgHit__12dCcD_GObjInfFv */
+u32 dCcD_GObjInf::ChkTgHit() {
+ if (cCcD_ObjHitInf::ChkTgHit() == 0) {
+ return false;
+ } else if (ChkTgHitNoActor() == 0 && GetTgHitAc() == NULL) {
+ return false;
+ } else {
+ return true;
+ }
+}
+
+/* 800844B8-800844F8 07EDF8 0040+00 0/0 1/1 5/5 .text ResetTgHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ResetTgHit() {
+ ClrTgHit();
+ ClrTgEffCounter();
+}
+
+/* 800844F8-80084548 07EE38 0050+00 1/1 3/3 228/228 .text GetTgHitObj__12dCcD_GObjInfFv
+ */
+cCcD_Obj* dCcD_GObjInf::GetTgHitObj() {
+ if (ChkTgHitNoActor() == 0 && GetTgHitAc() == NULL) {
+ return NULL;
+ } else {
+ return cCcD_ObjHitInf::GetTgHitObj();
+ }
+}
+
+/* 80084548-8008457C 07EE88 0034+00 1/1 5/5 63/63 .text GetTgHitGObj__12dCcD_GObjInfFv */
+dCcD_GObjInf* dCcD_GObjInf::GetTgHitGObj() {
+ cCcD_Obj* obj = GetTgHitObj();
+ if (obj == NULL) {
+ return NULL;
+ } else {
+ return dCcD_GetGObjInf(obj);
+ }
+}
+
+/* 8008457C-800845B0 07EEBC 0034+00 0/0 2/2 18/18 .text GetTgHitObjSe__12dCcD_GObjInfFv
+ */
+u8 dCcD_GObjInf::GetTgHitObjSe() {
+ dCcD_GObjInf* objInf = GetTgHitGObj();
+ if (objInf == NULL) {
+ return NULL;
+ } else {
+ return objInf->GetAtSe();
+ }
+}
+
+/* ############################################################################################## */
+/* 8037A780-8037A7E0 006DE0 0060+00 1/1 0/0 0/0 .rodata m_hitSeID__12dCcD_GObjInf */
+Z2SoundID const dCcD_GObjInf::m_hitSeID[24] = {
+ Z2SE_HIT_DUMMY_CANCEL, Z2SE_HIT_SWORD, Z2SE_HIT_SHIELD_ATTACK,
+ Z2SE_HIT_WOLFKICK, Z2SE_HIT_HOOKSHOT_STICK, Z2SE_HIT_METAL_WEAPON,
+ Z2SE_HIT_STONE_WEAPON, Z2SE_HIT_HARD_BODY, Z2SE_HIT_SOFT_BODY,
+ Z2SE_HIT_DUMMY_CANCEL, Z2SE_HIT_SWORD_STAB, Z2SE_HIT_WOLFKICK,
+ Z2SE_HIT_SWORD_RUN, Z2SE_HIT_EN_WOOD_WEAPON, Z2SE_HIT_THOROW_OBJ,
+ Z2SE_HIT_SPINNER, Z2SE_HIT_COPYROD, Z2SE_HIT_STATUE_HAMMER,
+ Z2SE_HIT_PACHINKO, Z2SE_HIT_AL_ARROW_STICK, Z2SE_HIT_WOLFBITE,
+ Z2SE_HIT_WOOD_WEAPON, Z2SE_HIT_HAMMER, Z2SE_HIT_ARROW_STICK,
+};
+
+/* 800845B0-8008460C 07EEF0 005C+00 0/0 3/3 32/32 .text getHitSeID__12dCcD_GObjInfFUci */
+Z2SoundID dCcD_GObjInf::getHitSeID(u8 seIdx, int useRebound) {
+ if (useRebound) {
+ if (seIdx == 23) {
+ return Z2SE_HIT_AL_ARROW_REBOUND;
+ }
+ if (seIdx == 7) {
+ return Z2SE_HIT_ARROW_REBOUND;
+ }
+ if (seIdx == 8) {
+ return Z2SE_HIT_HOOKSHOT_REBOUND;
+ }
+ }
+ return m_hitSeID[seIdx];
+}
+
+/* 8008460C-80084658 07EF4C 004C+00 5/0 0/0 0/0 .text ClrCoHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ClrCoHit() {
+ cCcD_ObjHitInf::ClrCoHit();
+ mGObjCo.ClrHit();
+ OffCoHitNoActor();
+ SubtractCoEffCounter();
+}
+
+/* 80084658-800846B0 07EF98 0058+00 0/0 5/5 74/74 .text ChkCoHit__12dCcD_GObjInfFv */
+u32 dCcD_GObjInf::ChkCoHit() {
+ if (cCcD_ObjHitInf::ChkCoHit() == 0) {
+ return false;
+ } else if (ChkCoHitNoActor() == 0 && GetCoHitAc() == NULL) {
+ return false;
+ } else {
+ return true;
+ }
+}
+
+/* 800846B0-800846F0 07EFF0 0040+00 0/0 1/1 2/2 .text ResetCoHit__12dCcD_GObjInfFv */
+void dCcD_GObjInf::ResetCoHit() {
+ ClrCoHit();
+ ClrCoEffCounter();
+}
+
+/* 800846F0-80084740 07F030 0050+00 0/0 0/0 36/36 .text GetCoHitObj__12dCcD_GObjInfFv */
+cCcD_Obj* dCcD_GObjInf::GetCoHitObj() {
+ if (ChkCoHitNoActor() == 0 && GetCoHitAc() == NULL) {
+ return NULL;
+ } else {
+ return cCcD_ObjHitInf::GetCoHitObj();
+ }
+}
+
+/* 80084740-8008479C 07F080 005C+00 4/4 0/0 0/0 .text Set__12dCcD_GObjInfFRC15dCcD_SrcGObjInf */
+void dCcD_GObjInf::Set(dCcD_SrcGObjInf const& src) {
+ cCcD_Obj::Set(src.mObj);
+ mGObjAt.Set(src.mGObjAt);
+ mGObjTg.Set(src.mGObjTg);
+ mGObjCo.Set(src.mGObjCo);
+}
+
+/* 8008479C-800847C8 07F0DC 002C+00 2/2 1/1 3/3 .text dCcD_GetGObjInf__FP8cCcD_Obj */
+dCcD_GObjInf* dCcD_GetGObjInf(cCcD_Obj* p_obj) {
+ return (dCcD_GObjInf*)p_obj->GetGObjInf();
+}
+
+/* 800847D0-80084814 07F110 0044+00 0/0 1/1 20/20 .text Set__8dCcD_CpsFRC11dCcD_SrcCps */
+void dCcD_Cps::Set(dCcD_SrcCps const& src) {
+ dCcD_GObjInf::Set(src.mObjInf);
+ cCcD_CpsAttr::Set(src.mCpsAttr);
+}
+
+/* 80084814-80084824 07F154 0010+00 1/0 0/0 0/0 .text GetShapeAttr__8dCcD_CpsFv */
+cCcD_ShapeAttr* dCcD_Cps::GetShapeAttr() {
+ return this;
+}
+
+/* 80084824-80084854 07F164 0030+00 0/0 0/0 6/6 .text CalcAtVec__8dCcD_CpsFv */
+void dCcD_Cps::CalcAtVec() {
+ cXyz* dest = GetAtVecP();
+ CalcVec(dest);
+}
+
+/* 80084854-80084884 07F194 0030+00 0/0 0/0 2/2 .text CalcTgVec__8dCcD_CpsFv */
+void dCcD_Cps::CalcTgVec() {
+ cXyz* dest = GetTgVecP();
+ CalcVec(dest);
+}
+
+/* 80084884-800848A4 07F1C4 0020+00 0/0 0/0 5/5 .text Set__8dCcD_TriFRC11dCcD_SrcTri */
+void dCcD_Tri::Set(dCcD_SrcTri const& src) {
+ dCcD_GObjInf::Set(src.mObjInf);
+}
+
+/* 800848A4-800848B4 07F1E4 0010+00 1/0 0/0 0/0 .text GetShapeAttr__8dCcD_TriFv */
+cCcD_ShapeAttr* dCcD_Tri::GetShapeAttr() {
+ return this;
+}
+
+/* 800848B4-800848F8 07F1F4 0044+00 0/0 2/2 245/245 .text Set__8dCcD_CylFRC11dCcD_SrcCyl
+ */
+void dCcD_Cyl::Set(dCcD_SrcCyl const& src) {
+ dCcD_GObjInf::Set(src.mObjInf);
+ cCcD_CylAttr::Set(src.mCyl);
+}
+
+/* 800848F8-80084908 07F238 0010+00 1/0 0/0 0/0 .text GetShapeAttr__8dCcD_CylFv */
+cCcD_ShapeAttr* dCcD_Cyl::GetShapeAttr() {
+ return this;
+}
+
+/* 80084908-80084954 07F248 004C+00 0/0 3/3 3/3 .text StartCAt__8dCcD_CylFR4cXyz */
+void dCcD_Cyl::StartCAt(cXyz& pos) {
+ cXyz zero(cXyz::Zero);
+ SetAtVec(zero);
+ SetC(pos);
+}
+
+/* 80084954-800849C4 07F294 0070+00 0/0 3/3 4/4 .text MoveCAt__8dCcD_CylFR4cXyz */
+void dCcD_Cyl::MoveCAt(cXyz& pos) {
+ const cXyz* center = GetCP();
+ cXyz diff = pos - *center;
+ SetAtVec(diff);
+ SetC(pos);
+}
+
+/* 800849C4-80084A34 07F304 0070+00 0/0 0/0 1/1 .text MoveCTg__8dCcD_CylFR4cXyz */
+void dCcD_Cyl::MoveCTg(cXyz& pos) {
+ const cXyz* center = GetCP();
+ cXyz diff = pos - *center;
+ SetTgVec(diff);
+ SetC(pos);
+}
+
+/* 80084A34-80084A78 07F374 0044+00 0/0 2/2 196/196 .text Set__8dCcD_SphFRC11dCcD_SrcSph
+ */
+void dCcD_Sph::Set(dCcD_SrcSph const& src) {
+ dCcD_GObjInf::Set(src.mObjInf);
+ cCcD_SphAttr::Set(src.mSphAttr);
+}
+
+/* 80084A78-80084AC4 07F3B8 004C+00 0/0 3/3 25/25 .text StartCAt__8dCcD_SphFR4cXyz */
+void dCcD_Sph::StartCAt(cXyz& pos) {
+ cXyz zero(cXyz::Zero);
+ SetAtVec(zero);
+ cM3dGSph::SetC(pos);
+}
+
+/* 80084AC4-80084B34 07F404 0070+00 0/0 2/2 23/23 .text MoveCAt__8dCcD_SphFR4cXyz */
+void dCcD_Sph::MoveCAt(cXyz& pos) {
+ const cXyz* center = GetCP();
+ cXyz diff = pos - *center;
+ SetAtVec(diff);
+ SetC(pos);
+}
+
+cCcD_ShapeAttr* dCcD_Sph::GetShapeAttr() {
+ return this;
+} \ No newline at end of file