En_Akindonuts (#349)

* En_Akindonuts

* Enums

* Rebase

* PR

* PR

* Object

* Uncomment blob

* Undef
This commit is contained in:
Maide 2021-12-27 01:32:45 +00:00 committed by GitHub
parent cee404f6b2
commit d3e8ea9e5a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 1662 additions and 72 deletions

View File

@ -13,7 +13,7 @@
<Animation Name="object_dnt_Anim_003438" Offset="0x3438" />
<Animation Name="object_dnt_Anim_0038CC" Offset="0x38CC" />
<Animation Name="object_dnt_Anim_003CC0" Offset="0x3CC0" />
<!-- <Blob Name="object_dnt_Blob_003CD0" Size="0x10" Offset="0x3CD0" /> -->
<Blob Name="object_dnt_Blob_003CD0" Size="0x10" Offset="0x3CD0" />
<Animation Name="object_dnt_Anim_004700" Offset="0x4700" />
<Animation Name="object_dnt_Anim_004AA0" Offset="0x4AA0" />
<Animation Name="object_dnt_Anim_004E38" Offset="0x4E38" />

View File

@ -63,6 +63,7 @@
((((void)0, gSaveContext.equips.equipment) & gEquipMasks[equip]) >> gEquipShifts[equip])
#define CUR_UPG_VALUE_VOID(upg) \
((((void)0, gSaveContext.inventory.upgrades) & gUpgradeMasks[upg]) >> gUpgradeShifts[upg])
#define INV_CONTENT_VOID(item) ((void)0, gSaveContext.inventory.items)[SLOT(item)]
#define CUR_FORM ((gSaveContext.playerForm == PLAYER_FORM_HUMAN) ? 0 : gSaveContext.playerForm)

3
spec
View File

@ -5045,8 +5045,7 @@ beginseg
name "ovl_En_Akindonuts"
compress
include "build/src/overlays/actors/ovl_En_Akindonuts/z_en_akindonuts.o"
include "build/data/ovl_En_Akindonuts/ovl_En_Akindonuts.data.o"
include "build/data/ovl_En_Akindonuts/ovl_En_Akindonuts.reloc.o"
include "build/src/overlays/actors/ovl_En_Akindonuts/ovl_En_Akindonuts_reloc.o"
endseg
beginseg

File diff suppressed because it is too large Load Diff

View File

@ -6,12 +6,48 @@
struct EnAkindonuts;
typedef void (*EnAkindonutsActionFunc)(struct EnAkindonuts*, GlobalContext*);
typedef void (*EnAkindonutsUnkFunc)(struct EnAkindonuts*, GlobalContext*);
#define ENAKINDONUTS_GET_3(thisx) ((thisx)->params & 3)
#define ENAKINDONUTS_GET_4(thisx) (((thisx)->params & 4) >> 2)
#define ENAKINDONUTS_GET_FC00(thisx) (((thisx)->params & 0xFC00) >> 0xA)
enum {
/* 1 */ ENAKINDONUTS_3_1 = 1,
/* 2 */ ENAKINDONUTS_3_2,
};
typedef struct EnAkindonuts {
/* 0x0000 */ Actor actor;
/* 0x0144 */ char unk_144[0x194];
/* 0x0144 */ SkelAnime skelAnime;
/* 0x0188 */ Vec3s jointTable[28];
/* 0x0230 */ Vec3s morphTable[28];
/* 0x02D8 */ EnAkindonutsActionFunc actionFunc;
/* 0x02DC */ char unk_2DC[0x90];
/* 0x02DC */ EnAkindonutsUnkFunc unk_2DC;
/* 0x02E0 */ ColliderCylinder collider;
/* 0x032C */ u16 unk_32C;
/* 0x0330 */ Path* path;
/* 0x0334 */ s32 unk_334;
/* 0x0338 */ s16 unk_338;
/* 0x033A */ s16 unk_33A;
/* 0x033C */ u16 unk_33C;
/* 0x033E */ s16 unk_33E;
/* 0x0340 */ f32 unk_340;
/* 0x0344 */ f32 unk_344;
/* 0x0348 */ f32 unk_348;
/* 0x034C */ f32 unk_34C;
/* 0x0350 */ s16 unk_350;
/* 0x0352 */ s16 unk_352;
/* 0x0354 */ UNK_TYPE1 unk354[0x2];
/* 0x0356 */ s16 unk_356;
/* 0x0358 */ f32 unk_358;
/* 0x035C */ s16 unk_35C;
/* 0x035E */ s16 unk_35E;
/* 0x0360 */ s16 cutscene;
/* 0x0362 */ s16 unk_362;
/* 0x0364 */ s16 unk_364;
/* 0x0366 */ s8 unk_366;
/* 0x0368 */ s16 unk_368;
} EnAkindonuts; // size = 0x36C
extern const ActorInit En_Akindonuts_InitVars;

View File

@ -16272,9 +16272,9 @@
0x80BEFD98:("EnAkindonuts_Init",),
0x80BEFF08:("EnAkindonuts_Destroy",),
0x80BEFF34:("EnAkindonuts_Update",),
0x80BEFFB4:("func_80BEFFB4",),
0x80BF0178:("func_80BF0178",),
0x80BF0190:("func_80BF0190",),
0x80BEFFB4:("EnAkindonuts_OverrideLimbDraw",),
0x80BF0178:("EnAkindonuts_PostLimbDraw",),
0x80BF0190:("EnAkindonuts_UnkActorDraw",),
0x80BF0258:("EnAkindonuts_Draw",),
0x80BF0D90:("EffStk_Init",),
0x80BF0DD0:("EffStk_Destroy",),

View File

@ -1531,13 +1531,6 @@ D_06000F38 = 0x06000F38;
D_06009E70 = 0x06009E70;
// ovl_En_Akindonuts
D_06001350 = 0x06001350;
D_06005488 = 0x06005488;
D_06008290 = 0x06008290;
D_0600AC70 = 0x0600AC70;
// ovl_En_Al
D_0600A0D8 = 0x0600A0D8;