katam/include/kirby.h

136 lines
3.2 KiB
C
Raw Permalink Normal View History

2022-02-05 06:29:15 +00:00
#ifndef GUARD_KIRBY_H
#define GUARD_KIRBY_H
#include "data.h"
#include "object.h"
struct Kirby_0_1 {
struct ObjectBase base;
u32 filler78;
struct Sprite unk7C[2];
}; /* size = 0xCC */
union Kirby_0 {
struct Object2 base;
struct Kirby_0_1 other;
}; /* size = 0xCC */
2022-02-12 23:20:42 +00:00
struct Kirby_110 {
s8 unk0;
s8 unk1;
s8 unk2;
u8 unk3;
u16 unk4;
u16 flags;
}; /* size = 0x8 */
2022-02-05 06:29:15 +00:00
struct Kirby {
union Kirby_0 base;
struct Task *unkCC;
s16 unkD0;
s16 unkD2;
u16 unkD4;
s16 unkD6;
u8 unkD8;
u8 unkD9;
u8 unkDA;
u8 unkDB;
u8 battery;
u8 unkDD;
u8 unkDE;
u8 unkDF;
u8 unkE0;
u8 unkE1;
u16 unkE2;
u8 unkE4;
u8 unkE5;
s16 unkE6;
struct Object2 *unkE8;
u32 unkEC;
u8 unkF0;
u8 unkF1;
u8 unkF2;
u8 unkF3;
s16 unkF4;
u16 unkF6;
u16 unkF8;
u16 unkFA;
s16 unkFC;
s16 unkFE;
s8 hp;
s8 maxHp;
u8 lives;
2022-05-16 02:49:42 +00:00
u8 ability;
2022-02-05 06:29:15 +00:00
u16 unk104;
u16 unk106;
2022-03-19 02:13:22 +00:00
s16 unk108;
s16 unk10A;
2022-03-17 00:39:20 +00:00
union LevelInfo_1E0 unk10C;
2022-09-18 02:50:36 +00:00
const struct Kirby_110 *unk110;
2022-02-05 06:29:15 +00:00
const struct Unk_08353510 *unk114;
u16 unk118;
u16 unk11A;
u16 unk11C;
u16 unk11E;
u16 unk120;
u16 unk122;
u8 filler124[0x81];
u8 unk1A5;
}; /* size = 0x1A8 */
extern struct Kirby gKirbys[];
2022-02-08 15:39:41 +00:00
struct Kirby *sub_0803D368(struct ObjectBase *);
struct Kirby *sub_0803D46C(struct ObjectBase *);
struct Kirby *sub_0803D5CC(struct ObjectBase *);
2022-04-02 03:08:51 +00:00
u16 sub_0803D6B4(struct Object2 *);
2024-10-09 05:35:50 +00:00
bool16 sub_0803D80C(struct ObjectBase *);
2022-07-05 06:59:54 +00:00
void sub_0803D9A8(struct ObjectBase *);
2022-02-08 15:39:41 +00:00
void sub_0803DBC8(struct Object4 *);
void sub_0803DCCC(struct Task *);
u32 sub_0803DD58(u8);
u32 sub_0803DE54(u32, u16, u8);
u8 sub_0803DF24(u16);
u8 sub_0803DFAC(u16, u8);
void sub_0803E2B0(struct ObjectBase *, s8, s8, s8, s8);
void sub_0803E308(struct ObjectBase *, s8, s8, s8, s8);
2024-10-09 05:35:50 +00:00
bool8 sub_0803E324(struct ObjectBase *);
2023-04-22 20:33:49 +00:00
void sub_0803E380(struct ObjectBase *);
2022-02-08 15:39:41 +00:00
void sub_0803E3B0(struct Object4 *);
void sub_0803E458(void);
void sub_0803E4D4(u8);
void sub_0803E558(u8);
2022-06-12 06:12:59 +00:00
void sub_0803FE74(struct Kirby *);
2024-11-06 07:01:01 +00:00
void sub_0804323C(struct Kirby *);
2022-02-08 15:39:41 +00:00
void sub_08044EA8(struct Kirby *);
2024-11-06 07:01:01 +00:00
void sub_080459B8(struct Kirby *);
2022-02-08 15:39:41 +00:00
void sub_08047EF0(struct Kirby *);
u8 sub_0804BAD8(struct Kirby *);
2023-02-05 09:24:31 +00:00
void sub_0804BD00(struct Kirby *);
2023-01-16 08:31:54 +00:00
bool8 sub_0804BD98(struct Kirby *, u8, u8, u8, s8, s8);
2022-06-06 05:15:52 +00:00
bool8 sub_080525C0(struct Kirby *);
2023-03-05 00:38:26 +00:00
bool8 sub_080528E4(struct Kirby *);
2022-06-06 05:15:52 +00:00
void sub_08052BB4(struct Kirby *);
2022-03-05 02:58:07 +00:00
void sub_08052E2C(struct Kirby *);
2022-06-06 05:15:52 +00:00
void sub_080531B4(struct Kirby *, const struct Unk_08353510 *);
void sub_080547C4(struct Kirby *, u8);
void sub_08054C0C(struct Kirby *);
2023-12-01 19:11:01 +00:00
bool8 sub_080551FC(struct Kirby *, u16, u8, u8);
2022-06-06 05:15:52 +00:00
void sub_0805545C(struct Kirby *);
void sub_08059810(struct Kirby *);
2023-12-16 09:41:34 +00:00
bool8 sub_0805BD4C(struct Kirby *, u8);
2022-07-05 06:59:54 +00:00
bool32 sub_0805BEC4(struct Kirby *);
2022-06-06 05:15:52 +00:00
bool32 sub_0805BDF4(struct Kirby *, u16, u8, u8);
void sub_08063D98(struct Kirby *, s32 __attribute__((unused)));
void sub_080641FC(struct Kirby *);
void sub_0806A798(struct Kirby *);
void sub_0806EB74(struct Kirby *);
void sub_0806F260(struct Kirby *);
2024-10-09 05:35:50 +00:00
void sub_0806F734(void);
2022-03-05 02:58:07 +00:00
2023-04-22 20:33:49 +00:00
extern const struct Unk_02021590 gUnk_08350AAC[];
extern const struct Unk_02021590 gUnk_08350B30[];
2022-02-05 06:29:15 +00:00
#endif