mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-07 05:14:58 -04:00
d_a_majuu_flag (#824)
* d_a_majuu_flag * PR * PR * Fix demo * Replace .clang-format --------- Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
IndentWidth: 4
|
||||
AllowShortFunctionsOnASingleLine: InlineOnly
|
||||
PointerAlignment: Left
|
||||
ColumnLimit: 160
|
||||
RemoveParentheses: ReturnStatement
|
||||
BinPackArguments: false
|
||||
BinPackParameters: false
|
||||
AlignAfterOpenBracket: BlockIndent
|
||||
BreakBeforeBraces: Custom
|
||||
BraceWrapping:
|
||||
AfterControlStatement: MultiLine
|
||||
ReflowComments: false
|
||||
SortIncludes: false
|
||||
AccessModifierOffset: -4
|
||||
# BreakBeforeBinaryOperators: None
|
||||
# BreakBeforeTernaryOperators: true
|
||||
# AlignConsecutiveAssignments: false
|
||||
PackConstructorInitializers: Never
|
||||
@@ -258,6 +258,16 @@ modules:
|
||||
splits: config/D44J01/rels/d_a_majuu_flag/splits.txt
|
||||
symbols: config/D44J01/rels/d_a_majuu_flag/symbols.txt
|
||||
# map: orig/D44J01/files/maps/d_a_majuu_flag.map
|
||||
extract:
|
||||
- symbol: l_flag02TEX
|
||||
binary: assets/l_flag02TEX.bin
|
||||
header: assets/l_flag02TEX.h
|
||||
- symbol: l_majuu_flag_matDL
|
||||
binary: assets/l_majuu_flag_matDL.bin
|
||||
header: assets/l_majuu_flag_matDL.h
|
||||
- symbol: l_majuu_flagDL
|
||||
binary: assets/l_majuu_flagDL.bin
|
||||
header: assets/l_majuu_flagDL.h
|
||||
|
||||
- object: files/RELS.arc:mmem/d_a_mdoor.rel
|
||||
hash: 4cbaf69a22b8356c144d4343bd6bc46c27870d33
|
||||
|
||||
@@ -224,6 +224,16 @@ modules:
|
||||
hash: 9844a606bcebcceaeff329256665eea72d5aa970
|
||||
splits: config/GZLE01/rels/d_a_majuu_flag/splits.txt
|
||||
symbols: config/GZLE01/rels/d_a_majuu_flag/symbols.txt
|
||||
extract:
|
||||
- symbol: l_flag02TEX
|
||||
binary: assets/l_flag02TEX.bin
|
||||
header: assets/l_flag02TEX.h
|
||||
- symbol: l_majuu_flag_matDL
|
||||
binary: assets/l_majuu_flag_matDL.bin
|
||||
header: assets/l_majuu_flag_matDL.h
|
||||
- symbol: l_majuu_flagDL
|
||||
binary: assets/l_majuu_flagDL.bin
|
||||
header: assets/l_majuu_flagDL.h
|
||||
|
||||
- object: files/RELS.arc:rels/mmem/d_a_mdoor.rel
|
||||
hash: 8ae182c9556fdcd2c21205738af5d83acc903b4a
|
||||
|
||||
@@ -182,7 +182,17 @@ modules:
|
||||
- object: files/RELS.arc:rels/mmem/d_a_majuu_flag.rel
|
||||
splits: config/GZLJ01/rels/d_a_majuu_flag/splits.txt
|
||||
symbols: config/GZLJ01/rels/d_a_majuu_flag/symbols.txt
|
||||
|
||||
extract:
|
||||
- symbol: l_flag02TEX
|
||||
binary: assets/l_flag02TEX.bin
|
||||
header: assets/l_flag02TEX.h
|
||||
- symbol: l_majuu_flag_matDL
|
||||
binary: assets/l_majuu_flag_matDL.bin
|
||||
header: assets/l_majuu_flag_matDL.h
|
||||
- symbol: l_majuu_flagDL
|
||||
binary: assets/l_majuu_flagDL.bin
|
||||
header: assets/l_majuu_flagDL.h
|
||||
|
||||
- object: files/RELS.arc:rels/mmem/d_a_mdoor.rel
|
||||
splits: config/GZLJ01/rels/d_a_mdoor/splits.txt
|
||||
symbols: config/GZLJ01/rels/d_a_mdoor/symbols.txt
|
||||
|
||||
@@ -182,6 +182,16 @@ modules:
|
||||
- object: files/RELS.arc:rels/mmem/d_a_majuu_flag.rel
|
||||
splits: config/GZLP01/rels/d_a_majuu_flag/splits.txt
|
||||
symbols: config/GZLP01/rels/d_a_majuu_flag/symbols.txt
|
||||
extract:
|
||||
- symbol: l_flag02TEX
|
||||
binary: assets/l_flag02TEX.bin
|
||||
header: assets/l_flag02TEX.h
|
||||
- symbol: l_majuu_flag_matDL
|
||||
binary: assets/l_majuu_flag_matDL.bin
|
||||
header: assets/l_majuu_flag_matDL.h
|
||||
- symbol: l_majuu_flagDL
|
||||
binary: assets/l_majuu_flagDL.bin
|
||||
header: assets/l_majuu_flagDL.h
|
||||
|
||||
- object: files/RELS.arc:rels/mmem/d_a_mdoor.rel
|
||||
splits: config/GZLP01/rels/d_a_mdoor/splits.txt
|
||||
|
||||
+2
-2
@@ -1385,11 +1385,11 @@ config.libs = [
|
||||
ActorRel(Matching, "d_a_kytag05"),
|
||||
ActorRel(Matching, "d_a_kytag06"),
|
||||
ActorRel(Matching, "d_a_kytag07"),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_lamp" , extra_cflags=['-sym off']),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_lamp", extra_cflags=['-sym off']),
|
||||
ActorRel(NonMatching, "d_a_lod_bg"),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_lwood"),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_magma"),
|
||||
ActorRel(NonMatching, "d_a_majuu_flag"),
|
||||
ActorRel(NonMatching, "d_a_majuu_flag", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_mdoor", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(MatchingFor("D44J01"), "d_a_msw", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_mtoge"),
|
||||
|
||||
@@ -3,23 +3,55 @@
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "JSystem/J3DGraphBase/J3DPacket.h"
|
||||
|
||||
class daMajuu_Flag_packet_c {
|
||||
class daMajuu_Flag_packet_c : public J3DPacket {
|
||||
public:
|
||||
void changeCurrentPos() {}
|
||||
void getImageTexObj() {}
|
||||
void getMtx() {}
|
||||
void getNrm() {}
|
||||
void getOffsetVec() {}
|
||||
void getPos() {}
|
||||
void getToonTexObj() {}
|
||||
void setTevStr(dKy_tevstr_c*) {}
|
||||
daMajuu_Flag_packet_c() {
|
||||
mCurArr = 0;
|
||||
mRotateY = 0;
|
||||
m798 = 0;
|
||||
m796 = 0;
|
||||
m79B = 1;
|
||||
}
|
||||
virtual ~daMajuu_Flag_packet_c() {}
|
||||
|
||||
void changeCurrentPos() {
|
||||
mCurArr ^= 1;
|
||||
}
|
||||
GXTexObj* getImageTexObj() { return &mFlagTex; }
|
||||
Mtx* getMtx() { return &mPosMtx; }
|
||||
cXyz* getNrm() { return mpNrmArr[mCurArr]; }
|
||||
cXyz* getBackNrm() { return mpNrmArrBack[mCurArr]; }
|
||||
cXyz* getOffsetVec() { return mSpeed; }
|
||||
cXyz* getPos() { return mpPosArr[mCurArr]; }
|
||||
GXTexObj* getToonTexObj() { return &mToonTex; }
|
||||
|
||||
void setTevStr(dKy_tevstr_c* tevStr) { mpTevStr = tevStr; }
|
||||
void setNrmMtx();
|
||||
void setBackNrm();
|
||||
void setNrmVtx(cXyz*, int);
|
||||
void draw();
|
||||
};
|
||||
|
||||
virtual void draw();
|
||||
|
||||
public:
|
||||
/* 0x010 */ Mtx mPosMtx;
|
||||
/* 0x040 */ dKy_tevstr_c* mpTevStr;
|
||||
/* 0x044 */ GXTexObj mToonTex;
|
||||
/* 0x064 */ GXTexObj mFlagTex;
|
||||
/* 0x084 */ u8 m084[0x0A0 - 0x084];
|
||||
/* 0x0A0 */ cXyz mpPosArr[2][21];
|
||||
/* 0x298 */ u8 m298[0x2A0 - 0x298];
|
||||
/* 0x2A0 */ cXyz mpNrmArr[2][21];
|
||||
/* 0x498 */ u8 m498[0x4A0 - 0x498];
|
||||
/* 0x4A0 */ cXyz mpNrmArrBack[2][21];
|
||||
/* 0x698 */ cXyz mSpeed[21];
|
||||
/* 0x794 */ s16 mRotateY;
|
||||
/* 0x796 */ s16 m796;
|
||||
/* 0x798 */ s16 m798;
|
||||
/* 0x79A */ u8 mCurArr;
|
||||
/* 0x79B */ u8 m79B;
|
||||
}; // size >= 0x7A0
|
||||
|
||||
class daMajuu_Flag_c : public fopAc_ac_c {
|
||||
public:
|
||||
@@ -44,7 +76,6 @@ public:
|
||||
/* 0xA68 */ Mtx mMtx;
|
||||
/* 0xA98 */ MtxP mpParentMtx;
|
||||
/* 0xA9C */ cXyz* mpParentPos;
|
||||
/* 0xAA0 */ u8 mAA0[0xB00 - 0xAA0];
|
||||
};
|
||||
}; // size = 0xAA0
|
||||
|
||||
#endif /* D_A_MAJUU_FLAG_H */
|
||||
|
||||
@@ -24,6 +24,7 @@ public:
|
||||
void setTevStr(dKy_tevstr_c* i_tevStr) { mTevStr = i_tevStr; }
|
||||
cXyz* getPos() { return mPos[m87E]; }
|
||||
cXyz* getNrm() { return mNrm[m87E]; }
|
||||
cXyz* getBackNrm() { return m4F4[m87E]; }
|
||||
cXyz* getOffsetVec() { return m74C; } // Guessed based on size in debug maps
|
||||
s16 getEscapeNrmAngle() { return m87A; }
|
||||
void changeCurrentPos() { m87E ^= 1; }
|
||||
|
||||
@@ -23,6 +23,7 @@ public:
|
||||
cXyz* getPos() { return mPos[m1C3A]; }
|
||||
cXyz* getPosSpd() { return m0884; }
|
||||
cXyz* getNrm() { return mNrm[m1C3A]; }
|
||||
cXyz* getBackNrm() { return m1454[m1C3A]; }
|
||||
|
||||
void setCorrectNrmAngle(s16, f32);
|
||||
void setNrmMtx();
|
||||
|
||||
@@ -24,13 +24,14 @@ void mDoMtx_concatProjView(f32 const (*param_0)[4], f32 const (*param_1)[4], f32
|
||||
void mDoMtx_ZrotM(Mtx mtx, s16 z);
|
||||
bool mDoMtx_inverseTranspose(f32 const (*param_0)[4], f32 (*param_1)[4]);
|
||||
void mDoMtx_QuatConcat(Quaternion const* param_0, Quaternion const* param_1, Quaternion* param_2);
|
||||
void mDoMtx_concat(const Mtx a, const Mtx b, Mtx c);
|
||||
|
||||
inline void mDoMtx_multVecSR(const Mtx m, const Vec* src, Vec* dst) {
|
||||
MTXMultVecSR(m, src, dst);
|
||||
}
|
||||
|
||||
inline void cMtx_concat(const Mtx a, const Mtx b, Mtx ab) {
|
||||
MTXConcat(a, b, ab);
|
||||
mDoMtx_concat(a, b, ab);
|
||||
}
|
||||
|
||||
inline void cMtx_scale(Mtx m, f32 x, f32 y, f32 z) {
|
||||
|
||||
+1020
-23
File diff suppressed because it is too large
Load Diff
@@ -122,7 +122,7 @@ void daPirate_Flag_packet_c::setCorrectNrmAngle(s16 param_0, f32 param_1) {
|
||||
/* 00000364-000003F0 .text setBackNrm__22daPirate_Flag_packet_cFv */
|
||||
void daPirate_Flag_packet_c::setBackNrm() {
|
||||
cXyz* a = getNrm();
|
||||
cXyz* b = m4F4[m87E];
|
||||
cXyz* b = getBackNrm();
|
||||
for (int i = 0; i < (s32)ARRAY_SIZE(*mNrm); i++) {
|
||||
b->setall(0.0f);
|
||||
*b -= *a;
|
||||
@@ -276,7 +276,7 @@ void daPirate_Flag_packet_c::draw() {
|
||||
GXCallDisplayList(l_pirate_flag_DL, sizeof(l_pirate_flag_DL) - 0x04);
|
||||
|
||||
GXSetCullMode(GX_CULL_FRONT);
|
||||
GXSetArray(GX_VA_NRM, m4F4[m87E], sizeof(cXyz));
|
||||
GXSetArray(GX_VA_NRM, getBackNrm(), sizeof(cXyz));
|
||||
GXCallDisplayList(l_pirate_flag_DL, sizeof(l_pirate_flag_DL) - 0x04);
|
||||
|
||||
#if VERSION > VERSION_JPN
|
||||
@@ -457,7 +457,7 @@ static void pirate_flag_move(pirate_flag_class* i_this) {
|
||||
#else
|
||||
DCStoreRangeNoSync(i_this->mPacket.getPos(), sizeof(*i_this->mPacket.mPos));
|
||||
DCStoreRangeNoSync(i_this->mPacket.getNrm(), sizeof(*i_this->mPacket.mNrm));
|
||||
DCStoreRangeNoSync(i_this->mPacket.getNrm() + sizeof(i_this->mPacket.mNrm) / sizeof(cXyz), sizeof(*i_this->mPacket.m4F4)); // Fakematch?
|
||||
DCStoreRangeNoSync(i_this->mPacket.getBackNrm(), sizeof(*i_this->mPacket.m4F4));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -280,7 +280,7 @@ void daSail_packet_c::setNrmMtx() {
|
||||
/* 00000398-00000424 .text setBackNrm__15daSail_packet_cFv */
|
||||
void daSail_packet_c::setBackNrm() {
|
||||
cXyz* vtxNrm1 = getNrm();
|
||||
cXyz* vtxNrm2 = m1454[m1C3A];
|
||||
cXyz* vtxNrm2 = getBackNrm();
|
||||
for (int i = 0; i < 0x54; i++) {
|
||||
vtxNrm2->setall(0.0f);
|
||||
*vtxNrm2 -= *vtxNrm1;
|
||||
@@ -717,7 +717,7 @@ static void sail_move(sail_class* i_this) {
|
||||
#else
|
||||
DCStoreRangeNoSync(i_this->mSailPacket.getPos(), sizeof(*i_this->mSailPacket.mPos));
|
||||
DCStoreRangeNoSync(i_this->mSailPacket.getNrm(), sizeof(*i_this->mSailPacket.mNrm));
|
||||
DCStoreRangeNoSync(i_this->mSailPacket.getNrm() + sizeof(i_this->mSailPacket.mNrm) / sizeof(cXyz), sizeof(*i_this->mSailPacket.m1454)); // Fakematch?
|
||||
DCStoreRangeNoSync(i_this->mSailPacket.getBackNrm(), sizeof(*i_this->mSailPacket.m1454));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user