SSBM Decomp
Loading...
Searching...
No Matches
inlines.h File Reference
#include <platform.h>
#include "ft/forward.h"
#include "ft/ftanim.h"
#include "ft/types.h"
#include "gm/gm_16AE.h"
#include "it/it_26B1.h"
#include <common_structs.h>
#include <dolphin/mtx.h>
#include <baselib/archive.h>
#include <baselib/controller.h>
#include <baselib/dobj.h>
#include <baselib/gobj.h>
#include <baselib/gobjgxlink.h>
#include <baselib/gobjuserdata.h>
#include <baselib/jobj.h>
#include <baselib/lobj.h>
#include <baselib/random.h>

Go to the source code of this file.

Macros

#define PUSH_ATTRS(fp, attributeName)
#define COPY_ATTRS(gobj, attributeName)
#define GET_FIGHTER(gobj)
#define CLIFFCATCH_O(fp)
 Ternary macro for fcmpo-based facing direction check.
#define CLIFFCATCH_U(fp)
 Ternary macro for fcmpu-based facing direction check.
#define gmScriptEventCast(p_event, type)
#define gmScriptEventUpdatePtr(event, type)

Functions

static FightergetFighter (Fighter_GObj *gobj)
static FightergetFighterPlus (Fighter_GObj *gobj)
static void * getFtSpecialAttrs (Fighter *fp)
static void * getFtSpecialAttrsD (Fighter *fp)
static s32 ftGetKind (Fighter *fp)
static s32 ftGetAction (Fighter *fp)
static void * getFtSpecialAttrs2CC (Fighter *fp)
static ftCo_DatAttrsgetFtAttrs (Fighter *fp)
static CollDatagetFtColl (Fighter *fp)
static Fighter_GObj * getFtVictim (Fighter *fp)
static Item_GObjgetFtTargetItem (Fighter *fp)
static bool ftGetGroundAir (Fighter *fp)
static int getStickDirX (Fighter *fp)
static float stickGetDir (float x1, float x2)
static void getAccelAndTarget (Fighter *fp, float *accel, float *target_vel)
static void Fighter_OnItemPickup (Fighter_GObj *gobj, bool catchItemFlag, bool bool2, bool bool3)
 used for all fighters except Kirby and Purin
static void Fighter_OnItemInvisible (Fighter_GObj *gobj, bool flag)
static void Fighter_OnItemVisible (Fighter_GObj *gobj, bool flag)
static void Fighter_OnItemDrop (Fighter_GObj *gobj, bool dropItemFlag, bool bool2, bool bool3)
static void Fighter_OnKnockbackEnter (Fighter_GObj *gobj, s32 arg1)
static void Fighter_OnKnockbackExit (Fighter_GObj *gobj, s32 arg1)
static void Fighter_UnsetCmdVar0 (Fighter_GObj *gobj)
static CollDataFighter_GetCollData (Fighter *fp)
static bool ftCheckThrowB0 (Fighter *fp)
static bool ftCheckThrowB3 (Fighter *fp)
static bool ftCheckThrowB4 (Fighter *fp)
static float ftGetFacingDir (Fighter_GObj *gobj)
static int ftGetFacingDirInt (Fighter *fp)
static int ftGetFacingDirInt2 (Fighter_GObj *gobj)
CommandInfogetCmdScript (Fighter *fp)
static bool canUseCstick (Fighter *fp)

Macro Definition Documentation

◆ PUSH_ATTRS

#define PUSH_ATTRS ( fp,
attributeName )
Value:
do { \
void* backup = (fp)->dat_attrs_backup; \
attributeName* src = (attributeName*) (fp)->ft_data->ext_attr; \
void** da = &(fp)->dat_attrs; \
*(attributeName*) (fp)->dat_attrs_backup = *src; \
*da = backup; \
} while (0)

◆ COPY_ATTRS

#define COPY_ATTRS ( gobj,
attributeName )
Value:
Fighter* fp = GET_FIGHTER(gobj); \
attributeName* sA2 = (attributeName*) fp->dat_attrs; \
attributeName* ext_attr = (attributeName*) fp->ft_data->ext_attr; \
*sA2 = *ext_attr;
#define GET_FIGHTER(gobj)
Definition inlines.h:44
Definition types.h:1137
ftData * ft_data
Definition types.h:1176
void * dat_attrs
Definition types.h:1194
void * ext_attr
Definition types.h:619
Todo
Remove declarations. Doesn't really need to be a macro.

◆ GET_FIGHTER

#define GET_FIGHTER ( gobj)
Value:
static void * HSD_GObjGetUserData(HSD_GObj *gobj)
Definition gobj.h:146

◆ CLIFFCATCH_O

#define CLIFFCATCH_O ( fp)
Value:
((fp)->facing_dir < 0.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT
#define CLIFFCATCH_RIGHT
Definition forward.h:246
#define CLIFFCATCH_LEFT
Definition forward.h:245

Ternary macro for fcmpo-based facing direction check.

◆ CLIFFCATCH_U

#define CLIFFCATCH_U ( fp)
Value:
((fp)->facing_dir != 1.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT

Ternary macro for fcmpu-based facing direction check.

◆ gmScriptEventCast

#define gmScriptEventCast ( p_event,
type )
Value:
((type*) p_event)
Todo
Fix naming.

◆ gmScriptEventUpdatePtr

#define gmScriptEventUpdatePtr ( event,
type )
Value:
(event = (void*) ((uintptr_t) event + 4))
unsigned int uintptr_t
Definition stddef.h:14

Function Documentation

◆ getFighter()

Fighter * getFighter ( Fighter_GObj * gobj)
inlinestatic
Deprecated
Use GET_FIGHTER instead.

◆ getFighterPlus()

Fighter * getFighterPlus ( Fighter_GObj * gobj)
inlinestatic
Deprecated
use GET_FIGHTER instead.

◆ getFtSpecialAttrs()

void * getFtSpecialAttrs ( Fighter * fp)
inlinestatic

◆ getFtSpecialAttrsD()

void * getFtSpecialAttrsD ( Fighter * fp)
inlinestatic

◆ ftGetKind()

s32 ftGetKind ( Fighter * fp)
inlinestatic

◆ ftGetAction()

s32 ftGetAction ( Fighter * fp)
inlinestatic

◆ getFtSpecialAttrs2CC()

void * getFtSpecialAttrs2CC ( Fighter * fp)
inlinestatic

◆ getFtAttrs()

ftCo_DatAttrs * getFtAttrs ( Fighter * fp)
inlinestatic

◆ getFtColl()

CollData * getFtColl ( Fighter * fp)
inlinestatic

◆ getFtVictim()

Fighter_GObj * getFtVictim ( Fighter * fp)
inlinestatic

◆ getFtTargetItem()

Item_GObj * getFtTargetItem ( Fighter * fp)
inlinestatic

◆ ftGetGroundAir()

bool ftGetGroundAir ( Fighter * fp)
inlinestatic

◆ getStickDirX()

int getStickDirX ( Fighter * fp)
inlinestatic

◆ stickGetDir()

float stickGetDir ( float x1,
float x2 )
inlinestatic

◆ getAccelAndTarget()

void getAccelAndTarget ( Fighter * fp,
float * accel,
float * target_vel )
inlinestatic

◆ Fighter_OnItemPickup()

void Fighter_OnItemPickup ( Fighter_GObj * gobj,
bool catchItemFlag,
bool bool2,
bool bool3 )
inlinestatic

used for all fighters except Kirby and Purin

◆ Fighter_OnItemInvisible()

void Fighter_OnItemInvisible ( Fighter_GObj * gobj,
bool flag )
inlinestatic

◆ Fighter_OnItemVisible()

void Fighter_OnItemVisible ( Fighter_GObj * gobj,
bool flag )
inlinestatic

◆ Fighter_OnItemDrop()

void Fighter_OnItemDrop ( Fighter_GObj * gobj,
bool dropItemFlag,
bool bool2,
bool bool3 )
inlinestatic

◆ Fighter_OnKnockbackEnter()

void Fighter_OnKnockbackEnter ( Fighter_GObj * gobj,
s32 arg1 )
inlinestatic

◆ Fighter_OnKnockbackExit()

void Fighter_OnKnockbackExit ( Fighter_GObj * gobj,
s32 arg1 )
inlinestatic

◆ Fighter_UnsetCmdVar0()

void Fighter_UnsetCmdVar0 ( Fighter_GObj * gobj)
inlinestatic

◆ Fighter_GetCollData()

CollData * Fighter_GetCollData ( Fighter * fp)
inlinestatic

◆ ftCheckThrowB0()

bool ftCheckThrowB0 ( Fighter * fp)
inlinestatic
Todo
This and ftCheckThrowB3, etc. are probably one macro or something.

◆ ftCheckThrowB3()

bool ftCheckThrowB3 ( Fighter * fp)
inlinestatic

◆ ftCheckThrowB4()

bool ftCheckThrowB4 ( Fighter * fp)
inlinestatic

◆ ftGetFacingDir()

float ftGetFacingDir ( Fighter_GObj * gobj)
inlinestatic

◆ ftGetFacingDirInt()

int ftGetFacingDirInt ( Fighter * fp)
inlinestatic

◆ ftGetFacingDirInt2()

int ftGetFacingDirInt2 ( Fighter_GObj * gobj)
inlinestatic

◆ getCmdScript()

CommandInfo * getCmdScript ( Fighter * fp)
inline

◆ canUseCstick()

bool canUseCstick ( Fighter * fp)
inlinestatic

Returns true if single-button mode is off, and the held item allows using the C-stick.