mirror of https://github.com/zeldaret/mm.git
En_Kakasi (Scarecrow) (#279)
* EnKakasi: rebase progress into one commit * EnKakasi: fixes to get compiling on master, still doesn't match * EnKakasi: is this even progress? * EnKakasi: docs and cleaning * EnKaksi: damn it, that master merge really messed up more than I thought, after clean build something really weird is going on and now I REALLY need firstdiff * EnKakasi: Back to building, NOT OK * fixed a code * only rodata left to fix * EnKakasi: functions got removed in included functions * EnKakasi: thanks to fig mentioning there were missing cases, OK * EnKakasi: (OK) docs and cleaning * EnKakasi: Init now matches * EnKakasi: cleaning and docs * EnKakasi: more cleaning and docs * EnKakasi: forgot function declarations * EnKakasi: spec * EnKakasi: animation array symbols added * EnKakasi: formater pass * EnKakasi: type warning fix * EnKakasi: little descriptor * EnKakasi: OK thanks to AngheloAlf * Apply suggestions from code review Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * Apply suggestions from code review Splitting this into pieces to not have a huge pile of bugs Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * EnKakasi: wrong type of inverse flag * Apply suggestions from code review Batch 2 Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * EnKakasi: RIP Anime * Apply suggestions from code review Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * EnKakasi: Anim enum update * EnKakasi: Removed text documentation * EnKakas: return of THIS * Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * EnKakasi: mystery solved but not understood * Apply suggestions from code review Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * EnKakasi: rename EnKakasi_CheckAnimateSFX to EnKakasi_CheckAnimationSfx (no real reason to shorten Animation to Animate, and SFX is not initialism, its a shorten) * EnKakasi: minor change to touch jenkins * EnKakasi: is it loise-uni? * EnKakasi: fixed skelanime changes * EnKakasi: formater pass * EnKakasi: requested changes * Update src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.h Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * EnKakasi: removed un needed pad * EnKakasi: removed redundant documentation comment Co-authored-by: isghj8 <isghj8@gmail.com> Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
This commit is contained in:
parent
25682591df
commit
89b9d90826
|
@ -3033,7 +3033,7 @@ void func_80169600(GlobalContext* globalCtx, s16 param_2);
|
|||
Camera* Play_GetCamera(GlobalContext* globalCtx, s16 index);
|
||||
s32 Play_CameraSetAtEye(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3f* eye);
|
||||
void func_8016981C(GlobalContext* globalCtx, s16 arg1, Vec3f* arg2, Vec3f* arg3, Vec3f* arg4);
|
||||
// void func_80169940(void);
|
||||
void func_80169940(GlobalContext* globalCtx, s16 camId, f32 arg2);
|
||||
// void func_80169988(void);
|
||||
void func_801699D4(GlobalContext* globalCtx, s16 arg1, s16 arg2);
|
||||
// void func_80169A50(void);
|
||||
|
@ -3838,12 +3838,12 @@ void func_8019E014(void);
|
|||
// void func_8019EB2C(void);
|
||||
// void func_8019F024(void);
|
||||
// void func_8019F05C(void);
|
||||
void func_8019F170(Vec3f* pos, u16 sfxId);
|
||||
void func_8019F1C0(Vec3f* pos, u16 sfxId);
|
||||
void play_sound(u16 sfxId);
|
||||
void func_8019F128(u16 sfxId);
|
||||
// void func_8019F170(void);
|
||||
void func_8019F1C0(Vec3f* pos, u16 sfxId);
|
||||
void func_8019F208(void);
|
||||
void func_8019F230(void); // Plays "No" sound
|
||||
void func_8019F208(void); // decide
|
||||
void func_8019F230(void); // cancel
|
||||
// void func_8019F258(void);
|
||||
// void func_8019F300(void);
|
||||
void func_8019F420(Vec3f* pos, u16 sfxId);
|
||||
|
|
|
@ -948,7 +948,7 @@ typedef struct {
|
|||
/* 0x11F23 */ UNK_TYPE1 pad11F23[0xFD];
|
||||
/* 0x12020 */ u8 unk12020;
|
||||
/* 0x12021 */ u8 choiceIndex;
|
||||
/* 0x12022 */ UNK_TYPE1 unk12022;
|
||||
/* 0x12022 */ u8 unk12022;
|
||||
/* 0x12023 */ u8 unk12023;
|
||||
/* 0x12024 */ UNK_TYPE1 unk12024[0x6];
|
||||
/* 0x1202A */ u16 unk1202A;
|
||||
|
@ -956,7 +956,9 @@ typedef struct {
|
|||
/* 0x1202E */ u16 unk1202E;
|
||||
/* 0x12030 */ UNK_TYPE1 pad12030[0x14];
|
||||
/* 0x12044 */ s16 unk12044;
|
||||
/* 0x12046 */ UNK_TYPE1 pad12046[0x24];
|
||||
/* 0x12046 */ UNK_TYPE1 pad12046[0x2];
|
||||
/* 0x12048 */ u8 unk12048; // EnKakasi
|
||||
/* 0x12049 */ UNK_TYPE1 pad12049[0x21];
|
||||
/* 0x1206A */ s16 unk1206A;
|
||||
/* 0x1206C */ s32 unk1206C;
|
||||
/* 0x12070 */ UNK_TYPE1 pad12070[0x8];
|
||||
|
|
3
spec
3
spec
|
@ -1788,8 +1788,7 @@ beginseg
|
|||
name "ovl_En_Kakasi"
|
||||
compress
|
||||
include "build/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.o"
|
||||
include "build/data/ovl_En_Kakasi/ovl_En_Kakasi.data.o"
|
||||
include "build/data/ovl_En_Kakasi/ovl_En_Kakasi.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Kakasi/ovl_En_Kakasi_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -6,14 +6,46 @@
|
|||
struct EnKakasi;
|
||||
|
||||
typedef void (*EnKakasiActionFunc)(struct EnKakasi*, GlobalContext*);
|
||||
typedef void (*EnKakasiUnkFunc)(GlobalContext*, struct EnKakasi*);
|
||||
|
||||
typedef struct EnKakasi {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x0144 */ char unk_144[0x4];
|
||||
/* 0x0148 */ EnKakasiActionFunc actionFunc;
|
||||
/* 0x014C */ char unk_14C[0x154];
|
||||
/* 0x000 */ Actor actor;
|
||||
/* 0x144 */ EnKakasiUnkFunc unkFunc; // used for one z_snap calling function?
|
||||
/* 0x148 */ EnKakasiActionFunc actionFunc;
|
||||
/* 0x14C */ SkelAnime skelanime;
|
||||
/* 0x190 */ s16 unk190; // camera index for song teaching angles?
|
||||
/* 0x192 */ s16 postTeachTimer;
|
||||
/* 0x194 */ s16 aboveGroundStatus; // from params, changed to 2 in init
|
||||
/* 0x196 */ s16 unkState196;
|
||||
/* 0x19A */ UNK_TYPE1 pad198[0x8];
|
||||
/* 0x1A0 */ s32 animIndex;
|
||||
/* 0x1A4 */ s32 unkCounter1A4; // counter, counts up to F while he digs away, reused elsewhere
|
||||
/* 0x1A8 */ s32 unkState1A8;
|
||||
/* 0x1AC */ s16 unkMsgState1AC; // might be dialog state, compared against func(msgCtx)
|
||||
/* 0x1AE */ s16 actorCutscenes[3];
|
||||
/* 0x1B4 */ f32 animeFrameCount;
|
||||
/* 0x1B8 */ f32 unkHeight;
|
||||
/* 0x1BC */ Vec3f unk1BC; // set by post limbdraw func for one limb
|
||||
/* 0x1C8 */ UNK_TYPE1 pad1C8[0x3C];
|
||||
/* 0x204 */ s16 unk204; // set to A, F, 0x14, 0x28 frequently
|
||||
/* 0x206 */ UNK_TYPE1 pad206[2];
|
||||
/* 0x208 */ s16 cutsceneCamId;
|
||||
/* 0x20C */ f32 unk20C; // passed to unknown function
|
||||
/* 0x210 */ f32 unk210; // used as a target for 20C to approach
|
||||
/* 0x214 */ Vec3f unk214; // copied from unk238 regularly
|
||||
/* 0x220 */ Vec3f unk220; //EnKakasi_TeachingSong
|
||||
/* 0x22C */ Vec3f unk22C; //actor home copied to here
|
||||
/* 0x238 */ Vec3f unk238; //copied from D_80971E38[unk190]
|
||||
/* 0x244 */ Vec3f unk244;
|
||||
/* 0x250 */ f32 songSummonDist;
|
||||
/* 0x254 */ ColliderCylinder collider;
|
||||
} EnKakasi; // size = 0x2A0
|
||||
|
||||
extern const ActorInit En_Kakasi_InitVars;
|
||||
|
||||
#define ENKAKASI_ABOVE_GROUND_TYPE 2
|
||||
|
||||
#define GET_KAKASI_SUMMON_DISTANCE(this) ((this->actor.params >> 0x8) & 0xFF)
|
||||
#define GET_KAKASI_ABOVE_GROUND(this) (this->actor.params & 0x1)
|
||||
|
||||
#endif // Z_EN_KAKASI_H
|
||||
|
|
|
@ -8016,37 +8016,37 @@
|
|||
0x8096F4DC:("BgF40Swlift_Draw",),
|
||||
0x8096F5E0:("EnKakasi_Destroy",),
|
||||
0x8096F60C:("EnKakasi_Init",),
|
||||
0x8096F800:("func_8096F800",),
|
||||
0x8096F88C:("func_8096F88C",),
|
||||
0x8096F800:("EnKakasi_SetAnimation",),
|
||||
0x8096F88C:("EnKakasi_8096F88C",),
|
||||
0x8096F8D8:("func_8096F8D8",),
|
||||
0x8096FA18:("func_8096FA18",),
|
||||
0x8096FAAC:("func_8096FAAC",),
|
||||
0x8096FBB8:("func_8096FBB8",),
|
||||
0x8096FC8C:("func_8096FC8C",),
|
||||
0x8096FCC4:("func_8096FCC4",),
|
||||
0x8096FDE8:("func_8096FDE8",),
|
||||
0x8096FE00:("func_8096FE00",),
|
||||
0x80970008:("func_80970008",),
|
||||
0x8097006C:("func_8097006C",),
|
||||
0x8096FC8C:("EnKakasi_InitTimeSkipDialogue",),
|
||||
0x8096FCC4:("EnKakasi_TimeSkipDialogue",),
|
||||
0x8096FDE8:("EnKakasi_SetupIdleStanding",),
|
||||
0x8096FE00:("EnKakasi_IdleStanding",),
|
||||
0x80970008:("EnKakasi_SetupDialogue",),
|
||||
0x8097006C:("EnKakasi_RegularDialogue",),
|
||||
0x809705E4:("func_809705E4",),
|
||||
0x80970658:("func_80970658",),
|
||||
0x80970740:("func_80970740",),
|
||||
0x80970978:("func_80970978",),
|
||||
0x80970A10:("func_80970A10",),
|
||||
0x80970A9C:("func_80970A9C",),
|
||||
0x80970F20:("func_80970F20",),
|
||||
0x80970FF8:("func_80970FF8",),
|
||||
0x80971064:("func_80971064",),
|
||||
0x80971430:("func_80971430",),
|
||||
0x80970A10:("EnKakasi_SetupPostSongLearnDialogue",),
|
||||
0x80970A9C:("EnKakasi_PostSongLearnDialogue",),
|
||||
0x80970F20:("EnKakasi_DancingRemark",),
|
||||
0x80970FF8:("EnKakasi_SetupDanceNightAway",),
|
||||
0x80971064:("EnKakasi_DancingNightAway",),
|
||||
0x80971430:("EnKakasi_DoNothing",),
|
||||
0x80971440:("func_80971440",),
|
||||
0x809714BC:("func_809714BC",),
|
||||
0x80971794:("func_80971794",),
|
||||
0x809717D0:("func_809717D0",),
|
||||
0x8097185C:("func_8097185C",),
|
||||
0x8097193C:("func_8097193C",),
|
||||
0x80971A38:("func_80971A38",),
|
||||
0x80971A64:("func_80971A64",),
|
||||
0x80971AD4:("func_80971AD4",),
|
||||
0x8097185C:("EnKakasi_SetupRiseOutOfGround",),
|
||||
0x8097193C:("EnKakasi_RisingOutOfGround",),
|
||||
0x80971A38:("EnKakasi_SetupIdleRisen",),
|
||||
0x80971A64:("EnKakasi_IdleRisen",),
|
||||
0x80971AD4:("EnKakasi_RisenDialogue",),
|
||||
0x80971B48:("EnKakasi_Update",),
|
||||
0x80971CE0:("func_80971CE0",),
|
||||
0x80971D20:("EnKakasi_Draw",),
|
||||
|
|
|
@ -2723,6 +2723,15 @@ D_0600D828 = 0x0600D828;
|
|||
|
||||
D_06000214 = 0x06000214;
|
||||
D_060065B0 = 0x060065B0;
|
||||
D_06007444 = 0x06007444;
|
||||
D_0600686C = 0x0600686C;
|
||||
D_060081A4 = 0x060081A4;
|
||||
D_06007B90 = 0x06007B90;
|
||||
D_060071EC = 0x060071EC;
|
||||
D_06007444 = 0x06007444;
|
||||
D_0600686C = 0x0600686C;
|
||||
D_060081A4 = 0x060081A4;
|
||||
D_06000214 = 0x06000214;
|
||||
|
||||
// ovl_En_Kame
|
||||
|
||||
|
|
Loading…
Reference in New Issue