* Broken

* En_Bom

* PR

* PR

* Merge

* PR
This commit is contained in:
Maide
2022-01-18 22:19:15 -05:00
committed by GitHub
parent 399f5a1b33
commit 6d52cee5fe
8 changed files with 774 additions and 52 deletions
+9
View File
@@ -0,0 +1,9 @@
<Root>
<File Name="ovl_En_Bom" BaseAddress="0x80870DB0" RangeStart="0x2160" RangeEnd="0x3610">
<DList Name="ovl_En_Bom_DL_80872F98" Offset="0x21E8"/>
<DList Name="ovl_En_Bom_DL_80873020" Offset="0x2270"/>
<DList Name="ovl_En_Bom_DL_80873040" Offset="0x2290"/>
<DList Name="ovl_En_Bom_DL_80873CA0" Offset="0x2EF0"/>
<DList Name="ovl_En_Bom_DL_808742F8" Offset="0x3548"/>
</File>
</Root>
+4 -4
View File
@@ -559,7 +559,7 @@ void EffectSsBlast_SpawnWhiteCustomScale(GlobalContext* globalCtx, Vec3f* pos, V
void EffectSsBlast_SpawnWhiteShockwave(GlobalContext* globalCtx, Vec3f* arg1, Vec3f* arg2, Vec3f* arg3);
// void EffectSsGSpk_SpawnAccel(UNK_TYPE4 uParm1, UNK_TYPE4 uParm2, Vec3f* pzParm3, Vec3f* pzParm4, Vec3f* param_5, Color_RGBA8* param_6, Color_RGBA8* param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9);
// void EffectSsGSpk_SpawnNoAccel(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9);
// void EffectSsGSpk_SpawnFuse(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
void EffectSsGSpk_SpawnFuse(GlobalContext* globalCtx, Actor* actor, Vec3f* pos, Vec3f* velocity, Vec3f* accel);
// void EffectSsGSpk_SpawnRandColor(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7);
// void EffectSsGSpk_SpawnSmall(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7);
void EffectSsDFire_Spawn(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f* accel, s16 scale, s16 scaleStep, s16 alpha, s16 fadeDelay, s16 life, s32 arg9);
@@ -1147,7 +1147,7 @@ s32 func_800DFC68(Camera* camera);
// void func_800DFC90(void);
s16 func_800DFCB4(Camera* camera);
s16 func_800DFCDC(Camera* camera);
// void func_800DFD04(void);
void func_800DFD04(Camera* camera, s32 arg1, s32 arg2, s32 arg3);
// void func_800DFD78(void);
// UNK_TYPE4 func_800DFEF0(s32 param_1, u16 param_2);
// UNK_TYPE4 func_800DFF18(Camera* iParm1, UNK_TYPE2 uParm2);
@@ -2061,7 +2061,7 @@ void func_80123DA4(Player* player);
// void func_80123DC0(void);
void func_80123E90(GlobalContext* globalCtx, Actor* actor);
void func_80123F2C(GlobalContext* globalCtx, s32 arg1);
// void func_80123F48(void);
s32 func_80123F48(GlobalContext* globalCtx, Vec3f* arg1, f32 arg2, f32 arg3);
// void func_80124020(void);
u8 Player_GetMask(GlobalContext* globalCtx);
void Player_RemoveMask(GlobalContext* globalCtx);
@@ -3706,7 +3706,7 @@ void func_801A0204(s8 seqId);
// void func_801A0554(void);
// void func_801A05F0(void);
void func_801A0654(Vec3f* arg0, u16 sfxId, s32 arg2);
void func_801A0810(s32* arg0, u16 sfxId, u8 arg2);
void func_801A0810(Vec3f* arg0, u16 sfxId, u8 arg2);
// void func_801A0868(void);
// void func_801A09D4(void);
// void func_801A0CB0(void);
+1 -1
View File
@@ -1826,7 +1826,7 @@ extern UNK_PTR D_801DB478[7];
// extern UNK_TYPE1 D_801DB494;
// extern UNK_TYPE1 D_801DB49C;
// extern UNK_TYPE2 D_801DB4A0;
extern UNK_TYPE D_801DB4A4;
extern Vec3f D_801DB4A4;
extern f32 D_801DB4B0;
extern s8 D_801DB4B8;
// extern UNK_TYPE1 D_801DB4C0;
+1 -3
View File
@@ -810,9 +810,7 @@ beginseg
name "ovl_En_Bom"
compress
include "build/src/overlays/actors/ovl_En_Bom/z_en_bom.o"
include "build/data/ovl_En_Bom/ovl_En_Bom.data.o"
include "build/data/ovl_En_Bom/ovl_En_Bom.bss.o"
include "build/data/ovl_En_Bom/ovl_En_Bom.reloc.o"
include "build/src/overlays/actors/ovl_En_Bom/ovl_En_Bom_reloc.o"
endseg
beginseg
File diff suppressed because it is too large Load Diff
+18 -4
View File
@@ -7,13 +7,27 @@ struct EnBom;
typedef void (*EnBomActionFunc)(struct EnBom*, GlobalContext*);
#define ENBOM_GETX_1(thisx) ((thisx)->shape.rot.x & 1)
#define ENBOM_GETZ_80(thisx) ((thisx)->shape.rot.z & 0x80)
#define ENBOM_GETZ_FF00(thisx) (((thisx)->shape.rot.z & 0xFF00) >> 8)
enum {
/* 0 */ ENBOM_0,
/* 1 */ ENBOM_1,
};
typedef struct EnBom {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0xAC];
/* 0x144 */ ColliderCylinder collider1;
/* 0x190 */ ColliderJntSph collider2;
/* 0x1B0 */ ColliderJntSphElement collider3;
/* 0x1F0 */ s16 timer;
/* 0x1F2 */ char unk_1F2[0x7];
/* 0x1F9 */ u8 unk_1F9;
/* 0x1FA */ char unk_1FA[0x6];
/* 0x1F2 */ s16 flashSpeedScale;
/* 0x1F4 */ f32 unk_1F4;
/* 0x1F8 */ u8 unk_1F8;
/* 0x1F9 */ u8 isPowderKeg;
/* 0x1FA */ s16 unk_1FA;
/* 0x1FC */ u8 unk_1FC;
/* 0x200 */ EnBomActionFunc actionFunc;
} EnBom; // size = 0x204
@@ -162,7 +162,7 @@ s32 func_80BE64C0(EnDaiku2* this, GlobalContext* globalCtx) {
Math_Vec3f_Copy(&this->actor.world.pos, &sp30);
if ((this->unk_278 >= ENDAIKU2_GET_7F_0) && !Flags_GetSwitch(globalCtx, this->unk_278) && (bomb != NULL) &&
(bomb->actor.id == ACTOR_EN_BOM)) {
if (bomb->unk_1F9 == 0) {
if (!bomb->isPowderKeg) {
this->actor.textId = 0x32D3;
} else {
this->actor.textId = 0x32D4;
+1 -1
View File
@@ -277,7 +277,7 @@ u8 func_80BB1B14(EnGeg* this, GlobalContext* globalCtx) {
return 0;
}
if (((EnBom*)explosive)->unk_1F9 == 0) {
if (((EnBom*)explosive)->isPowderKeg == 0) {
return 2;
}