summaryrefslogtreecommitdiff
path: root/include/SSystem
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2023-01-15 11:10:23 -0800
committerGitHub <noreply@github.com>2023-01-15 12:10:23 -0700
commit5e05ae38f8541fddd79341bdcf75488b07ca9122 (patch)
tree57e2806b6e48586e0d9bbde6d221236888137d04 /include/SSystem
parentc90f9dfde9a3ee5dfa13475e2199ee491671507b (diff)
d_a_b_oh2 / d_a_obj_web0 / d_a_obj_web1 (#243)
* d_a_obj_web0 / d_a_obj_web1 * remove asm * d_a_set_bgobj * d_cc_s work * remove asm * build fix * fix tp.py progress check and rel sha1 check * clean up some bg files
Diffstat (limited to 'include/SSystem')
-rw-r--r--include/SSystem/SComponent/c_bg_w.h2
-rw-r--r--include/SSystem/SComponent/c_cc_d.h46
-rw-r--r--include/SSystem/SComponent/c_cc_s.h3
-rw-r--r--include/SSystem/SComponent/c_m3d_g_cps.h8
-rw-r--r--include/SSystem/SComponent/c_m3d_g_sph.h6
-rw-r--r--include/SSystem/SComponent/c_xyz.h1
6 files changed, 40 insertions, 26 deletions
diff --git a/include/SSystem/SComponent/c_bg_w.h b/include/SSystem/SComponent/c_bg_w.h
index 4e755a9cee..54f9682c01 100644
--- a/include/SSystem/SComponent/c_bg_w.h
+++ b/include/SSystem/SComponent/c_bg_w.h
@@ -13,7 +13,7 @@ public:
/* 802681D4 */ bool ChkUsed() const;
/* 802681C0 */ void Regist(int);
- /* 8007E5F8 */ virtual ~cBgW_BgId();
+ /* 8007E5F8 */ virtual ~cBgW_BgId() {}
cBgW_BgId() { Ct(); }
void Ct() { m_id = 0x100; }
diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h
index 40c9f774a1..581025392e 100644
--- a/include/SSystem/SComponent/c_cc_d.h
+++ b/include/SSystem/SComponent/c_cc_d.h
@@ -30,7 +30,10 @@ enum cCcD_ObjAtType {
/* 0x00000010 */ AT_TYPE_SHIELD_ATTACK = (1 << 4),
/* 0x00000020 */ AT_TYPE_BOMB = (1 << 5),
/* 0x00000080 */ AT_TYPE_SLINGSHOT = (1 << 7),
+ /* 0x00000200 */ AT_TYPE_LANTERN_SWING = (1 << 9),
/* 0x00000400 */ AT_TYPE_CSTATUE_SWING = (1 << 10),
+ /* 0x00000800 */ AT_TYPE_800 = (1 << 11),
+ /* 0x00001000 */ AT_TYPE_1000 = (1 << 12),
/* 0x00002000 */ AT_TYPE_ARROW = (1 << 13),
/* 0x00004000 */ AT_TYPE_HOOKSHOT = (1 << 14),
/* 0x00010000 */ AT_TYPE_BOOMERANG = (1 << 16),
@@ -41,6 +44,7 @@ enum cCcD_ObjAtType {
/* 0x00800000 */ AT_TYPE_COPY_ROD = (1 << 23),
/* 0x04000000 */ AT_TYPE_MASTER_SWORD = (1 << 26),
/* 0x08000000 */ AT_TYPE_MIDNA_LOCK = (1 << 27),
+ /* 0x10000000 */ AT_TYPE_10000000 = (1 << 28),
/* 0x40000000 */ AT_TYPE_WOLF_CUT_TURN = (1 << 30),
/* 0x80000000 */ AT_TYPE_WOLF_ATTACK = (1 << 31),
};
@@ -53,7 +57,7 @@ public:
struct Shape {
/* 80167BBC */ ~Shape();
- /* 0x00 */ u32 _0;
+ /* 0x00 */ int _0;
/* 0x04 */ f32 _4;
/* 0x08 */ f32 _8;
/* 0x0C */ f32 _C;
@@ -146,9 +150,15 @@ public:
STATIC_ASSERT(0x40 == sizeof(cCcD_CpsAttr));
+class cCcD_SrcSphAttr : public cM3dGSphS {};
+
class cCcD_SphAttr : public cCcD_ShapeAttr, public cM3dGSph {
public:
cCcD_SphAttr() {}
+ void Set(const cCcD_SrcSphAttr& src) {
+ cM3dGSph::Set(src);
+ }
+
/* 8008721C */ virtual ~cCcD_SphAttr() {}
/* 80084B44 */ virtual const cXyz& GetCoCP() const { return mCenter; }
/* 80037A54 */ virtual cXyz& GetCoCP() { return mCenter; }
@@ -248,26 +258,26 @@ public:
STATIC_ASSERT(0x40 == sizeof(cCcD_DivideArea));
struct cCcD_SrcObjTg {
- s32 mType;
- s32 mSPrm;
-};
+ /* 0x0 */ s32 mType;
+ /* 0x4 */ s32 mSPrm;
+}; // Size: 0x8
struct cCcD_SrcObjAt {
- s32 mType;
- u8 mAtp;
- s32 mSPrm;
-};
+ /* 0x0 */ s32 mType;
+ /* 0x4 */ u8 mAtp;
+ /* 0x8 */ s32 mSPrm;
+}; // Size: 0xC
struct cCcD_SrcObjHitInf {
- cCcD_SrcObjAt mObjAt;
- cCcD_SrcObjTg mObjTg;
- s32 mSPrm;
-};
+ /* 0x00 */ cCcD_SrcObjAt mObjAt;
+ /* 0x0C */ cCcD_SrcObjTg mObjTg;
+ /* 0x14 */ s32 mSPrm;
+}; // Size: 0x18
struct cCcD_SrcObj {
- int field_0x0;
- cCcD_SrcObjHitInf mSrcObjHitInf;
-};
+ /* 0x0 */ int field_0x0;
+ /* 0x4 */ cCcD_SrcObjHitInf mSrcObjHitInf;
+}; // Size: 0x1C
class cCcD_GStts {
public:
@@ -299,11 +309,14 @@ public:
/* 80263984 */ f32 GetWeightF() const;
/* 802649E8 vt[7] */ virtual void ClrAt() {}
/* 802649EC vt[8] */ virtual void ClrTg() { mTg = 0; }
+
u8 GetWeightUc() const { return mWeight; }
void SetWeight(u8 weight) { mWeight = weight; }
fopAc_ac_c* GetAc() { return mActor; }
+ fopAc_ac_c* GetActor() const { return mActor; }
void SetActor(void* ac) { mActor = (fopAc_ac_c*)ac; }
cXyz* GetCCMoveP() { return &mXyz; }
+ unsigned int GetApid() const { return mApid; }
}; // Size = 0x1C
STATIC_ASSERT(0x1C == sizeof(cCcD_Stts));
@@ -409,7 +422,7 @@ public:
u32 GetAtGrp() const { return mObjAt.GetGrp(); }
u32 GetCoGrp() const { return mObjCo.GetGrp(); }
int GetTgType() const { return mObjTg.GetType(); }
- int GetAtType() const { return mObjAt.GetType(); }
+ u32 GetAtType() const { return mObjAt.GetType(); }
bool ChkTgSet() const { return mObjTg.ChkSet(); }
bool ChkAtSet() const { return mObjAt.ChkSet(); }
bool ChkCoSet() const { return mObjCo.ChkSet(); }
@@ -463,6 +476,7 @@ public:
cCcD_Stts* GetStts() { return mStts; }
void SetStts(cCcD_Stts* stts) { mStts = stts; }
cCcD_DivideInfo& GetDivideInfo() { return mDivideInfo; }
+ cCcD_DivideInfo* GetPDivideInfo() { return &mDivideInfo; }
int ChkBsRevHit() const { return field_0x40 & 2; }
private:
diff --git a/include/SSystem/SComponent/c_cc_s.h b/include/SSystem/SComponent/c_cc_s.h
index 7f65a3a121..32c0cc8fb6 100644
--- a/include/SSystem/SComponent/c_cc_s.h
+++ b/include/SSystem/SComponent/c_cc_s.h
@@ -11,7 +11,7 @@ enum WeightType {
};
class cCcS {
-private:
+public:
/* 0x0000 */ cCcD_Obj* mpObjAt[0x100];
/* 0x0400 */ cCcD_Obj* mpObjTg[0x300];
/* 0x1000 */ cCcD_Obj* mpObjCo[0x100];
@@ -23,7 +23,6 @@ private:
/* 0x2808 */ cCcD_DivideArea mDivideArea;
/* 0x2848 vtable */
-public:
/* 80264A6C */ cCcS();
/* 80264A94 */ void Ct();
/* 80264B60 */ void Dt();
diff --git a/include/SSystem/SComponent/c_m3d_g_cps.h b/include/SSystem/SComponent/c_m3d_g_cps.h
index 14315a9fc3..20104043da 100644
--- a/include/SSystem/SComponent/c_m3d_g_cps.h
+++ b/include/SSystem/SComponent/c_m3d_g_cps.h
@@ -7,10 +7,10 @@
#include "dolphin/types.h"
struct cM3dGCpsS {
- Vec mStart;
- Vec mEnd;
- f32 mRadius;
-};
+ /* 0x00 */ Vec mStart;
+ /* 0x0C */ Vec mEnd;
+ /* 0x18 */ f32 mRadius;
+}; // Size: 0x1C
class cM3dGCps : public cM3dGLin {
public:
diff --git a/include/SSystem/SComponent/c_m3d_g_sph.h b/include/SSystem/SComponent/c_m3d_g_sph.h
index de48572064..cc00a53c8b 100644
--- a/include/SSystem/SComponent/c_m3d_g_sph.h
+++ b/include/SSystem/SComponent/c_m3d_g_sph.h
@@ -7,9 +7,9 @@
#include "dolphin/types.h"
struct cM3dGSphS {
- Vec mCenter;
- f32 mRadius;
-};
+ /* 0x0 */ Vec mCenter;
+ /* 0xC */ f32 mRadius;
+}; // Size: 0x10
class cM3dGSph {
private:
diff --git a/include/SSystem/SComponent/c_xyz.h b/include/SSystem/SComponent/c_xyz.h
index b875f06b23..ada8df1193 100644
--- a/include/SSystem/SComponent/c_xyz.h
+++ b/include/SSystem/SComponent/c_xyz.h
@@ -136,6 +136,7 @@ struct cXyz : Vec {
f32 getMagXZ() const { return cXyz(this->x, 0, this->z).getSquareMag(); }
f32 getDotProduct(const Vec& other) const { return PSVECDotProduct(this, &other); }
+ f32 inprod(const Vec& other) const { return getDotProduct(other); }
};
#endif /* C_XYZ_H */