* Daiku2

* PR

* Macros

* NBS

* PR

* Format
This commit is contained in:
Maide
2021-08-08 15:28:45 -04:00
committed by GitHub
parent a35f091505
commit f5cbbc3268
9 changed files with 1335 additions and 745 deletions
+730 -697
View File
File diff suppressed because it is too large Load Diff
+1 -2
View File
@@ -5047,8 +5047,7 @@ beginseg
name "ovl_En_Daiku2" name "ovl_En_Daiku2"
compress compress
include "build/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.o" include "build/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.o"
include "build/data/ovl_En_Daiku2/ovl_En_Daiku2.data.o" include "build/src/overlays/actors/ovl_En_Daiku2/ovl_En_Daiku2_reloc.o"
include "build/data/ovl_En_Daiku2/ovl_En_Daiku2.reloc.o"
endseg endseg
beginseg beginseg
+18 -1
View File
@@ -845,7 +845,24 @@ void Actor_FreeOverlay(ActorOverlay* entry) {
#pragma GLOBAL_ASM("asm/non_matchings/code/z_actor/func_800BE03C.s") #pragma GLOBAL_ASM("asm/non_matchings/code/z_actor/func_800BE03C.s")
#pragma GLOBAL_ASM("asm/non_matchings/code/z_actor/func_800BE0B8.s") Actor* func_800BE0B8(GlobalContext* globalCtx, Actor* inActor, s16 arg2, u8 arg3, f32 arg4) {
Actor* actor = globalCtx->actorCtx.actorList[arg3].first;
while (actor != NULL) {
if (actor == inActor || ((arg2 != -1) && (arg2 != actor->id))) {
actor = actor->next;
continue;
}
if (Actor_DistanceBetweenActors(inActor, actor) <= arg4) {
return actor;
}
actor = actor->next;
}
return NULL;
}
#pragma GLOBAL_ASM("asm/non_matchings/code/z_actor/func_800BE184.s") #pragma GLOBAL_ASM("asm/non_matchings/code/z_actor/func_800BE184.s")
+7 -5
View File
@@ -8,11 +8,13 @@ struct EnBom;
typedef void (*EnBomActionFunc)(struct EnBom* this, GlobalContext* globalCtx); typedef void (*EnBomActionFunc)(struct EnBom* this, GlobalContext* globalCtx);
typedef struct EnBom { typedef struct EnBom {
/* 0x0000 */ Actor actor; /* 0x000 */ Actor actor;
/* 0x0144 */ char unk_144[0xAC]; /* 0x144 */ char unk_144[0xAC];
/* 0x01F0 */ s16 timer; /* 0x1F0 */ s16 timer;
/* 0x01F2 */ char unk_1F2[0xE]; /* 0x1F2 */ char unk_1F2[0x7];
/* 0x0200 */ EnBomActionFunc actionFunc; /* 0x1F9 */ u8 unk_1F9;
/* 0x1FA */ char unk_1FA[0x6];
/* 0x200 */ EnBomActionFunc actionFunc;
} EnBom; // size = 0x204 } EnBom; // size = 0x204
extern const ActorInit En_Bom_InitVars; extern const ActorInit En_Bom_InitVars;
File diff suppressed because it is too large Load Diff
@@ -5,13 +5,50 @@
struct EnDaiku2; struct EnDaiku2;
typedef void (*EnDaiku2ActionFunc)(struct EnDaiku2* this, GlobalContext* globalCtx); typedef void (*EnDaiku2ActionFunc)(struct EnDaiku2*, GlobalContext*);
#define ENDAIKU2_GET_7F(thisx) ((thisx)->params & 0x7F);
#define ENDAIKU2_GET_1F80(thisx) (((thisx)->params >> 7) & 0x3F);
#define ENDAIKU2_GET_8000(thisx) (((thisx)->params >> 15) & 0x1);
enum {
/* -1 */ ENDAIKU2_GET_7F_MINUS1 = -1,
/* 0 */ ENDAIKU2_GET_7F_0,
/* 127 */ ENDAIKU2_GET_7F_127 = 127,
};
typedef struct EnDaiku2Particle {
/* 0x00 */ u8 isEnabled;
/* 0x04 */ Vec3f unk_04;
/* 0x10 */ Vec3f unk_10;
/* 0x1C */ Vec3f unk_1C;
/* 0x28 */ Vec3s unk_28;
/* 0x30 */ f32 unk_30;
/* 0x34 */ s16 unk_34;
} EnDaiku2Particle; // size = 0x38
typedef struct EnDaiku2 { typedef struct EnDaiku2 {
/* 0x0000 */ Actor actor; /* 0x000 */ Actor actor;
/* 0x0144 */ char unk_144[0x110]; /* 0x144 */ SkelAnime skelAnime;
/* 0x0254 */ EnDaiku2ActionFunc actionFunc; /* 0x188 */ Vec3s jointTable[17];
/* 0x0258 */ char unk_258[0xB70]; /* 0x1EE */ Vec3s morphTable[17];
/* 0x254 */ EnDaiku2ActionFunc actionFunc;
/* 0x258 */ Path* unk_258;
/* 0x25C */ s16 unk_25C;
/* 0x260 */ f32 unk_260;
/* 0x264 */ f32 unk_264;
/* 0x268 */ Vec3f unk_268;
/* 0x274 */ s16 unk_274;
/* 0x276 */ s16 unk_276;
/* 0x278 */ s16 unk_278;
/* 0x27A */ s16 unk_27A;
/* 0x27C */ UNK_TYPE1 unk_27C[0x4];
/* 0x280 */ s32 unk_280;
/* 0x284 */ f32 unk_284;
/* 0x288 */ s16 unk_288;
/* 0x28A */ s16 unk_28A;
/* 0x28C */ EnDaiku2Particle particles[50];
/* 0xD7C */ ColliderCylinder collider;
} EnDaiku2; // size = 0xDC8 } EnDaiku2; // size = 0xDC8
extern const ActorInit En_Daiku2_InitVars; extern const ActorInit En_Daiku2_InitVars;
+1 -1
View File
@@ -16134,7 +16134,7 @@
0x80BE71A0:("func_80BE71A0",), 0x80BE71A0:("func_80BE71A0",),
0x80BE71D8:("func_80BE71D8",), 0x80BE71D8:("func_80BE71D8",),
0x80BE72A8:("EnDaiku2_Update",), 0x80BE72A8:("EnDaiku2_Update",),
0x80BE738C:("func_80BE738C",), 0x80BE738C:("EnDaiku2_PostLimbDraw",),
0x80BE7474:("EnDaiku2_Draw",), 0x80BE7474:("EnDaiku2_Draw",),
0x80BE7504:("func_80BE7504",), 0x80BE7504:("func_80BE7504",),
0x80BE7600:("func_80BE7600",), 0x80BE7600:("func_80BE7600",),
+2 -2
View File
@@ -16394,9 +16394,9 @@
0x80BE6150:("En_Tanron6_InitVars","UNK_TYPE1","",0x1), 0x80BE6150:("En_Tanron6_InitVars","UNK_TYPE1","",0x1),
0x80BE6170:("D_80BE6170","UNK_TYPE1","",0x1), 0x80BE6170:("D_80BE6170","UNK_TYPE1","",0x1),
0x80BE78D0:("En_Daiku2_InitVars","UNK_TYPE1","",0x1), 0x80BE78D0:("En_Daiku2_InitVars","UNK_TYPE1","",0x1),
0x80BE78F0:("D_80BE78F0","UNK_TYPE1","",0x1), 0x80BE78F0:("sTextIds","UNK_TYPE1","",0x1),
0x80BE7900:("D_80BE7900","UNK_TYPE1","",0x1), 0x80BE7900:("D_80BE7900","UNK_TYPE1","",0x1),
0x80BE792C:("D_80BE792C","UNK_TYPE1","",0x1), 0x80BE792C:("sAnimations","UNK_TYPE1","",0x1),
0x80BE7958:("D_80BE7958","UNK_TYPE1","",0x1), 0x80BE7958:("D_80BE7958","UNK_TYPE1","",0x1),
0x80BE7970:("D_80BE7970","f32","",0x4), 0x80BE7970:("D_80BE7970","f32","",0x4),
0x80BE7974:("D_80BE7974","f32","",0x4), 0x80BE7974:("D_80BE7974","f32","",0x4),
+9
View File
@@ -1728,6 +1728,15 @@ D_06006D70 = 0x06006D70;
// ovl_En_Daiku2 // ovl_En_Daiku2
D_0600ACD0 = 0x0600ACD0;
D_0600C92C = 0x0600C92C;
D_06000C44 = 0x06000C44;
D_0600C234 = 0x0600C234;
D_06000600 = 0x06000600;
D_06001114 = 0x06001114;
D_0600B690 = 0x0600B690;
D_06001A24 = 0x06001A24;
D_0600D328 = 0x0600D328;
D_060009E0 = 0x060009E0; D_060009E0 = 0x060009E0;
D_06002134 = 0x06002134; D_06002134 = 0x06002134;
D_06002FA0 = 0x06002FA0; D_06002FA0 = 0x06002FA0;