1#ifndef MELEE_FT_INLINES_H
2#define MELEE_FT_INLINES_H
24#define PUSH_ATTRS(fp, attributeName) \
26 void* backup = (fp)->x2D8_specialAttributes2; \
27 attributeName* src = (attributeName*) (fp)->ft_data->ext_attr; \
28 void** da = &(fp)->dat_attrs; \
29 *(attributeName*) (fp)->x2D8_specialAttributes2 = *src; \
34#define COPY_ATTRS(gobj, attributeName) \
35 Fighter* fp = GET_FIGHTER(gobj); \
36 attributeName* sA2 = (attributeName*) fp->dat_attrs; \
37 attributeName* ext_attr = (attributeName*) fp->ft_data->ext_attr; \
41#define GET_FIGHTER(gobj) ((Fighter*) HSD_GObjGetUserData((HSD_GObj*) gobj))
43#define GET_FIGHTER(gobj) ((Fighter*) HSD_GObjGetUserData(gobj))
49 return gobj->user_data;
82 void* fighter_attr = fp->
x2CC;
111 bool bool2,
bool bool3)
152 bool bool2,
bool bool3)
215#define CLIFFCATCH_O(fp) \
216 ((fp)->facing_dir < 0.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT
219#define CLIFFCATCH_U(fp) \
220 ((fp)->facing_dir != 1.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT
223#define gmScriptEventCast(p_event, type) ((type*) p_event)
224#define gmScriptEventUpdatePtr(event, type) \
225 (event = (void*) ((uintptr_t) event + (sizeof(type))))
static void Fighter_OnKnockbackExit(Fighter_GObj *gobj, s32 arg1)
Definition inlines.h:166
static s32 ftGetKind(Fighter *fp)
Definition inlines.h:70
static void * getFtSpecialAttrsD(Fighter *fp)
Definition inlines.h:65
static s32 ftGetAction(Fighter *fp)
Definition inlines.h:75
static void Fighter_OnItemVisible(Fighter_GObj *gobj, bool flag)
Definition inlines.h:143
static void Fighter_OnItemDrop(Fighter_GObj *gobj, bool dropItemFlag, bool bool2, bool bool3)
Definition inlines.h:151
static Fighter * getFighterPlus(Fighter_GObj *gobj)
Definition inlines.h:53
static void * getFtSpecialAttrs(Fighter *fp)
Definition inlines.h:59
static bool ftCheckThrowB4(Fighter *fp)
Definition inlines.h:204
static bool ftCheckThrowB3(Fighter *fp)
Definition inlines.h:194
static void * getFtSpecialAttrs2CC(Fighter *fp)
Definition inlines.h:80
static Fighter * getFighter(Fighter_GObj *gobj)
Definition inlines.h:47
static bool ftGetGroundAir(Fighter *fp)
Definition inlines.h:96
static ftCo_DatAttrs * getFtAttrs(Fighter *fp)
Definition inlines.h:86
static void Fighter_OnKnockbackEnter(Fighter_GObj *gobj, s32 arg1)
Definition inlines.h:160
#define GET_FIGHTER(gobj)
Definition inlines.h:43
static void Fighter_UnsetCmdVar0(Fighter_GObj *gobj)
Definition inlines.h:172
static float stickGetDir(float x1, float x2)
Definition inlines.h:101
static void Fighter_OnItemPickup(Fighter_GObj *gobj, bool catchItemFlag, bool bool2, bool bool3)
used for all fighters except Kirby and Purin
Definition inlines.h:110
static bool ftCheckThrowB0(Fighter *fp)
Definition inlines.h:184
ftCmdScript * getCmdScript(Fighter *fp)
Definition inlines.h:227
static CollData * getFtColl(Fighter *fp)
Definition inlines.h:91
static void Fighter_OnItemInvisible(Fighter_GObj *gobj, bool flag)
Definition inlines.h:135
static CollData * Fighter_GetCollData(Fighter *fp)
Definition inlines.h:178
void ftAnim_80070FB4(Fighter_GObj *, s32, s32)
void ftAnim_80070C48(Fighter_GObj *, s32)
void ftAnim_80070CC4(Fighter_GObj *, s32)
void ftAnim_800704F0(Fighter_GObj *, s32, float)
enum_t it_8026B320(HSD_GObj *gobj)
Return item hold kind.
Definition it_26B1.c:116
bool it_8026B2B4(HSD_GObj *gobj)
Check if item is heavy.
Definition it_26B1.c:82
FtMotionId motion_id
Definition types.h:1068
u8 throw_flags_b4
Definition types.h:1528
Item_GObj * item_gobj
Definition types.h:1345
u8 throw_flags_b0
Definition types.h:1524
GroundOrAir ground_or_air
Definition types.h:1089
CollData coll_data
Definition types.h:1234
ftCo_DatAttrs co_attrs
Definition types.h:1103
u32 cmd_vars[4]
Definition types.h:1520
void * dat_attrs
Definition types.h:1108
FighterKind kind
Definition types.h:1065
ftDonkeyAttributes * x2CC
Definition types.h:1106
u8 throw_flags_b3
Definition types.h:1527
ftCmdScript x3E4_fighterCmdScript
Definition types.h:1117