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 "it/it_26B1.h"
#include <common_structs.h>
#include <dolphin/mtx/types.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)   ((Fighter*) HSD_GObjGetUserData(gobj))
 
#define CLIFFCATCH_O(fp)    ((fp)->facing_dir < 0.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT
 Ternary macro for fcmpo-based facing direction check.
 
#define CLIFFCATCH_U(fp)    ((fp)->facing_dir != 1.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT
 Ternary macro for fcmpu-based facing direction check.
 
#define gmScriptEventCast(p_event, type)   ((type*) p_event)
 
#define gmScriptEventUpdatePtr(event, type)    (event = (void*) ((uintptr_t) event + (sizeof(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 bool ftGetGroundAir (Fighter *fp)
 
static float stickGetDir (float x1, float x2)
 
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)
 
ftCmdScriptgetCmdScript (Fighter *fp)
 

Macro Definition Documentation

◆ PUSH_ATTRS

#define PUSH_ATTRS (   fp,
  attributeName 
)
Value:
do { \
void* backup = (fp)->x2D8_specialAttributes2; \
attributeName* src = (attributeName*) (fp)->ft_data->ext_attr; \
void** da = &(fp)->dat_attrs; \
*(attributeName*) (fp)->x2D8_specialAttributes2 = *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:43
Definition types.h:1063
ftData * ft_data
Definition types.h:1102
void * dat_attrs
Definition types.h:1108
void * ext_attr
Definition types.h:589
Todo:
Remove declarations. Doesn't really need to be a macro.

◆ GET_FIGHTER

#define GET_FIGHTER (   gobj)    ((Fighter*) HSD_GObjGetUserData(gobj))

◆ CLIFFCATCH_O

#define CLIFFCATCH_O (   fp)     ((fp)->facing_dir < 0.0f) ? CLIFFCATCH_LEFT : CLIFFCATCH_RIGHT

Ternary macro for fcmpo-based facing direction check.

◆ CLIFFCATCH_U

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

Ternary macro for fcmpu-based facing direction check.

◆ gmScriptEventCast

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

◆ gmScriptEventUpdatePtr

#define gmScriptEventUpdatePtr (   event,
  type 
)     (event = (void*) ((uintptr_t) event + (sizeof(type))))

Function Documentation

◆ getFighter()

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

◆ getFighterPlus()

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

◆ getFtSpecialAttrs()

static void * getFtSpecialAttrs ( Fighter fp)
inlinestatic

◆ getFtSpecialAttrsD()

static void * getFtSpecialAttrsD ( Fighter fp)
inlinestatic

◆ ftGetKind()

static s32 ftGetKind ( Fighter fp)
inlinestatic

◆ ftGetAction()

static s32 ftGetAction ( Fighter fp)
inlinestatic

◆ getFtSpecialAttrs2CC()

static void * getFtSpecialAttrs2CC ( Fighter fp)
inlinestatic

◆ getFtAttrs()

static ftCo_DatAttrs * getFtAttrs ( Fighter fp)
inlinestatic

◆ getFtColl()

static CollData * getFtColl ( Fighter fp)
inlinestatic

◆ ftGetGroundAir()

static bool ftGetGroundAir ( Fighter fp)
inlinestatic

◆ stickGetDir()

static float stickGetDir ( float  x1,
float  x2 
)
inlinestatic

◆ Fighter_OnItemPickup()

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

used for all fighters except Kirby and Purin

◆ Fighter_OnItemInvisible()

static void Fighter_OnItemInvisible ( Fighter_GObj *  gobj,
bool  flag 
)
inlinestatic

◆ Fighter_OnItemVisible()

static void Fighter_OnItemVisible ( Fighter_GObj *  gobj,
bool  flag 
)
inlinestatic

◆ Fighter_OnItemDrop()

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

◆ Fighter_OnKnockbackEnter()

static void Fighter_OnKnockbackEnter ( Fighter_GObj *  gobj,
s32  arg1 
)
inlinestatic

◆ Fighter_OnKnockbackExit()

static void Fighter_OnKnockbackExit ( Fighter_GObj *  gobj,
s32  arg1 
)
inlinestatic

◆ Fighter_UnsetCmdVar0()

static void Fighter_UnsetCmdVar0 ( Fighter_GObj *  gobj)
inlinestatic

◆ Fighter_GetCollData()

static CollData * Fighter_GetCollData ( Fighter fp)
inlinestatic

◆ ftCheckThrowB0()

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

◆ ftCheckThrowB3()

static bool ftCheckThrowB3 ( Fighter fp)
inlinestatic

◆ ftCheckThrowB4()

static bool ftCheckThrowB4 ( Fighter fp)
inlinestatic

◆ getCmdScript()

ftCmdScript * getCmdScript ( Fighter fp)
inline