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
This commit is contained in:
TakaRikka
2023-01-15 11:10:23 -08:00
committed by GitHub
parent c90f9dfde9
commit 5e05ae38f8
126 changed files with 2217 additions and 6277 deletions
+1 -1
View File
@@ -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; }
+30 -16
View File
@@ -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:
+1 -2
View File
@@ -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();
+4 -4
View File
@@ -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:
+3 -3
View File
@@ -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:
+1
View File
@@ -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 */