En_Dodongo (#242)

* En_Dodongo

* NBS

* PR

* PR

* PR

* PR
This commit is contained in:
Maide 2021-09-01 23:53:12 +01:00 committed by GitHub
parent f21f393fcc
commit c96d1df320
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 1027 additions and 108 deletions

View File

@ -629,7 +629,7 @@ void EffectSsKiraKira_SpawnDispersed(GlobalContext* globalCtx, Vec3f* pos, Vec3f
// 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_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 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, void EffectSsDFire_Spawn(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f* accel, s16 scale, s16 scaleStep,
s16 alpha, s16 fadeDelay, s16 arg8, s32 life); s16 alpha, s16 fadeDelay, s16 life, s32 arg9);
void EffectSsBubble_Spawn(GlobalContext* globalCtx, Vec3f* pos, f32 yPosOffset, f32 yPosRandScale, f32 xzPosRandScale, void EffectSsBubble_Spawn(GlobalContext* globalCtx, Vec3f* pos, f32 yPosOffset, f32 yPosRandScale, f32 xzPosRandScale,
f32 scale); f32 scale);
void EffectSsGRipple_Spawn(GlobalContext* globalCtx, Vec3f* pos, s16 radius, s16 radiusMax, s16 life); void EffectSsGRipple_Spawn(GlobalContext* globalCtx, Vec3f* pos, s16 radius, s16 radiusMax, s16 life);

View File

@ -1414,7 +1414,7 @@ extern MtxF sMtxFClear;
// extern UNK_TYPE1 D_801C5D20; // extern UNK_TYPE1 D_801C5D20;
// extern UNK_TYPE1 D_801C5D60; // extern UNK_TYPE1 D_801C5D60;
// extern UNK_TYPE1 D_801C5D80; // extern UNK_TYPE1 D_801C5D80;
// extern UNK_TYPE1 D_801C5DB0; extern Vec3f D_801C5DB0;
// extern UNK_TYPE1 D_801C5DD0; // extern UNK_TYPE1 D_801C5DD0;
// extern UNK_TYPE1 D_801C5DE0; // extern UNK_TYPE1 D_801C5DE0;
// extern UNK_TYPE1 D_801C5DF0; // extern UNK_TYPE1 D_801C5DF0;

View File

@ -91,12 +91,19 @@ typedef struct {
} EffBlureInit1; // size = 0x1A0 } EffBlureInit1; // size = 0x1A0
typedef struct { typedef struct {
/* 0x00 */ UNK_TYPE1 pad0[0x8]; /* 0x00 */ s32 calcMode;
/* 0x08 */ Color_RGBA8 unk8; /* 0x04 */ u16 flags;
/* 0x0C */ Color_RGBA8 unkC; /* 0x06 */ s16 addAngleChange;
/* 0x10 */ Color_RGBA8 unk10; /* 0x08 */ u8 p1StartColor[4];
/* 0x14 */ Color_RGBA8 unk14; /* 0x0C */ u8 p2StartColor[4];
/* 0x18 */ UNK_TYPE1 pad18[0xC]; /* 0x10 */ u8 p1EndColor[4];
/* 0x14 */ u8 p2EndColor[4];
/* 0x18 */ u8 elemDuration;
/* 0x19 */ u8 unkFlag;
/* 0x1A */ u8 drawMode; // 0: simple; 1: simple with alt colors; 2+: smooth
/* 0x1B */ u8 mode4Param;
/* 0x1C */ Color_RGBA8 altPrimColor; // used with drawMode 1
/* 0x20 */ Color_RGBA8 altEnvColor; // used with drawMode 1
} EffBlureInit2; // size = 0x24 } EffBlureInit2; // size = 0x24
typedef struct { typedef struct {

3
spec
View File

@ -844,8 +844,7 @@ beginseg
name "ovl_En_Dodongo" name "ovl_En_Dodongo"
compress compress
include "build/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.o" include "build/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.o"
include "build/data/ovl_En_Dodongo/ovl_En_Dodongo.data.o" include "build/src/overlays/actors/ovl_En_Dodongo/ovl_En_Dodongo_reloc.o"
include "build/data/ovl_En_Dodongo/ovl_En_Dodongo.reloc.o"
endseg endseg
beginseg beginseg

View File

@ -9,7 +9,9 @@ typedef void (*EnBombfActionFunc)(struct EnBombf*, GlobalContext*);
typedef struct EnBombf { typedef struct EnBombf {
/* 0x0000 */ Actor actor; /* 0x0000 */ Actor actor;
/* 0x0144 */ char unk_144[0xB0]; /* 0x0144 */ char unk_144[0xAC];
/* 0x01F0 */ s16 timer;
/* 0x01F2 */ char unk_1F2[0x2];
/* 0x01F4 */ EnBombfActionFunc actionFunc; /* 0x01F4 */ EnBombfActionFunc actionFunc;
/* 0x01F8 */ char unk_1F8[0x10]; /* 0x01F8 */ char unk_1F8[0x10];
} EnBombf; // size = 0x208 } EnBombf; // size = 0x208

View File

@ -279,10 +279,17 @@ static InitChainEntry sInitChain[] = {
void EnDinofos_Init(Actor* thisx, GlobalContext* globalCtx) { void EnDinofos_Init(Actor* thisx, GlobalContext* globalCtx) {
static s32 D_8089E364 = 0; static s32 D_8089E364 = 0;
static EffBlureInit2 D_8089E368 = { static EffBlureInit2 D_8089E368 = {
{ 0, 0, 0, 0, 0, 8, 0, 0 }, { 255, 255, 255, 255 }, { 255, 255, 255, 64 }, 0,
{ 255, 255, 255, 0 }, { 255, 255, 255, 0 }, { 8, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 8,
0,
{ 255, 255, 255, 255 },
{ 255, 255, 255, 64 },
{ 255, 255, 255, 0 },
{ 255, 255, 255, 0 },
8, 0, 2, 0,
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 },
}; };
EnDinofos* this = THIS; EnDinofos* this = THIS;
s32 i; s32 i;
ColliderJntSphElementDim* dim; ColliderJntSphElementDim* dim;
@ -1433,7 +1440,6 @@ void func_8089DC84(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s*
static s8 D_8089E3B0[] = { static s8 D_8089E3B0[] = {
-1, -1, 0, -1, 1, 2, -1, 3, 4, -1, 5, 6, -1, 7, 8, -1, 9, 10, -1, 11, -1, -1, -1, 0, -1, 1, 2, -1, 3, 4, -1, 5, 6, -1, 7, 8, -1, 9, 10, -1, 11, -1,
}; };
EnDinofos* this = THIS; EnDinofos* this = THIS;
Vec3f sp80; Vec3f sp80;
Vec3f sp74; Vec3f sp74;

File diff suppressed because it is too large Load Diff

View File

@ -8,10 +8,32 @@ struct EnDodongo;
typedef void (*EnDodongoActionFunc)(struct EnDodongo*, GlobalContext*); typedef void (*EnDodongoActionFunc)(struct EnDodongo*, GlobalContext*);
typedef struct EnDodongo { typedef struct EnDodongo {
/* 0x0000 */ Actor actor; /* 0x000 */ Actor actor;
/* 0x0144 */ char unk_144[0x1B8]; /* 0x144 */ SkelAnime skelAnime;
/* 0x02FC */ EnDodongoActionFunc actionFunc; /* 0x188 */ Vec3s jointTable[31];
/* 0x0300 */ char unk_300[0x514]; /* 0x242 */ Vec3s morphTable[31];
/* 0x2FC */ EnDodongoActionFunc actionFunc;
/* 0x300 */ u8 unk_300;
/* 0x302 */ s16 timer;
/* 0x304 */ s16 unk_304;
/* 0x306 */ s16 unk_306;
/* 0x308 */ Vec3f unk_308;
/* 0x314 */ Vec3f unk_314;
/* 0x320 */ Vec3f unk_320;
/* 0x32C */ Color_RGBA8 unk_32C;
/* 0x330 */ Color_RGBA8 unk_330;
/* 0x334 */ f32 unk_334;
/* 0x338 */ s32 unk_338;
/* 0x33C */ f32 unk_33C;
/* 0x340 */ f32 unk_340;
/* 0x344 */ f32 unk_344;
/* 0x348 */ Vec3f unk_348[9];
/* 0x3B4 */ ColliderJntSph collider1;
/* 0x3D4 */ ColliderJntSphElement collider1Elements[10];
/* 0x654 */ ColliderJntSph collider2;
/* 0x674 */ ColliderJntSphElement collider2Elements[3];
/* 0x734 */ ColliderJntSph collider3;
/* 0x754 */ ColliderJntSphElement collider3Elements[3];
} EnDodongo; // size = 0x814 } EnDodongo; // size = 0x814
extern const ActorInit En_Dodongo_InitVars; extern const ActorInit En_Dodongo_InitVars;