SSBM Decomp
Loading...
Searching...
No Matches
ftlib.h
Go to the documentation of this file.
1#ifndef GALE01_0860C4
2#define GALE01_0860C4
3
4#include <melee/cm/forward.h>
5#include <melee/ft/forward.h>
6#include <melee/it/forward.h>
8
10#include <dolphin/mtx.h>
11
12/* 0860C4 */ s32 ftLib_CountFighters(void);
13/* 0860E8 */ bool ftLib_IsMasterHandPresent(void);
14/* 086140 */ bool ftLib_IsCrazyHandPresent(void);
17/* 086368 */ Fighter_GObj* ftLib_FindNearestOpponentInDir(Vec3*, Fighter_GObj*,
18 float);
19/* 0864A8 */ float ftLib_GetOpponentsDir(Vec3*, HSD_GObj*);
20/* 0865C0 */ float ftLib_GetFacingDir(HSD_GObj*);
21/* 0865CC */ s32 ftLib_GetGroundAir(HSD_GObj*);
22/* 0865D8 */ void ftLib_GetLStick(HSD_GObj*, float*, float*);
23/* 0865F0 */ HSD_JObj* ftLib_GetHipJObj(HSD_GObj*);
24/* 086630 */ HSD_JObj* ftLib_GetPartJObj(Fighter_GObj*, Fighter_Part part);
25/* 086644 */ void ftLib_GetPos(Fighter_GObj*, Vec3*);
26/* 086664 */ void ftLib_SetPos(HSD_GObj*, Vec3*);
27/* 086684 */ void ftLib_GetPrevPos(HSD_GObj*, Vec3*);
28/* 0866A4 */ void ftLib_SetScale(HSD_GObj*, float);
29/* 0866DC */ void ftLib_GetCameraBonePos(HSD_GObj*, Vec3*);
30/* 086724 */ void ftLib_ReleaseItem(HSD_GObj*, HSD_GObj*);
31/* 086764 */ void ftLib_ClearHeldSpecialItem(HSD_GObj*);
32/* 086794 */ HSD_GObj* ftLib_GetItem(HSD_GObj*);
33/* 0867A0 */ bool ftLib_IsHoldingItem(HSD_GObj*, HSD_GObj*);
35/* 0867D8 */ bool ftLib_IsInputDisabled(HSD_GObj*);
36/* 0867E8 */ void ftLib_DisableInput(HSD_GObj*);
37/* 086824 */ void ftLib_DisableAllInput(void);
38/* 08688C */ void ftLib_EnableInput(HSD_GObj*);
39/* 0868A4 */ void ftLib_EnableAllInput(void);
40/* 0868D4 */ bool ftLib_IsItemVisible(HSD_GObj*, HSD_GObj*);
41
43/* 086960 */ bool ftLib_IsFighter(HSD_GObj* gobj);
44
45/* 086984 */ CollData* ftLib_GetCollData(HSD_GObj*);
46/* 086990 */ void ftLib_GetECBCenter(HSD_GObj*, Vec3*);
47/* 0869D4 */ float ftLib_GetModelScale(HSD_GObj*);
48/* 0869F8 */ float ftLib_800869F8(HSD_GObj*);
49/* 086A0C */ float ftLib_GetScale(HSD_GObj*);
50/* 086A18 */ bool ftLib_IsShielding(HSD_GObj*);
51/* 086A4C */ void ftLib_80086A4C(HSD_GObj*, float);
52/* 086A58 */ bool ftLib_GetScreenPos(HSD_GObj*, S32Vec2*);
53/* 086A8C */ bool ftLib_UpdateScreenVisibility(HSD_GObj*);
54/* 086B64 */ bool ftLib_IsOffscreen(HSD_GObj*);
56/* 086B80 */ float ftLib_80086B80(HSD_GObj*);
57/* 086B90 */ void ftLib_GetCameraSubjectBonePos(HSD_GObj*, Vec3* v);
58/* 086BB4 */ bool ftLib_IsCameraSubjectInBounds(HSD_GObj*);
59/* 086BE0 */ u8 ftLib_GetPlayerIndex(HSD_GObj*);
60/* 086BEC */ void ftLib_GetPosDelta(HSD_GObj*, Vec3*);
61
63/* 086C0C */ enum_t ftLib_GetMotionId(HSD_GObj*);
64
65/* 086C18 */ void ftLib_StartRumble(HSD_GObj*, s32, s32);
66/* 086C9C */ void ftLib_StartRumbleAll(s32, s32);
67/* 086D40 */ void ftLib_StartItemRumble(HSD_GObj*, s32, s32);
68/* 086DC4 */ void ftLib_StartItemRumbleAll(s32, s32);
69/* 086E68 */ void ftLib_StopItemRumble(HSD_GObj*);
70/* 086EB4 */ s32 ftLib_GetTeam(HSD_GObj*);
71/* 086EC0 */ bool ftLib_IsInHitstun(HSD_GObj*);
72/* 086ED0 */ bool ftLib_CanBeMagnified(HSD_GObj*);
73/* 086F4C */ bool ftLib_80086F4C(HSD_GObj*);
74/* 086F80 */ float ftLib_GetNameTagHeight(HSD_GObj*);
75/* 086FA8 */ bool ftLib_IsSwordSwing(HSD_GObj*);
76/* 086FD4 */ bool ftLib_IsSamePlayer(HSD_GObj*, HSD_GObj*);
77/* 08701C */ bool ftLib_IsSleeping(HSD_GObj*);
78/* 08702C */ void ftLib_IncFighterRefCount(s32);
79/* 087050 */ void ftLib_DecFighterRefCount(s32);
80/* 087074 */ bool ftLib_GetShakeOffset(HSD_GObj*, Vec3*);
81/* 0870BC */ bool ftLib_GetSubColor(HSD_GObj*, GXColor*);
82/* 0870F0 */ void ftLib_SetPercent(HSD_GObj*, s32);
83/* 087120 */ s32 ftLib_GetPercent(HSD_GObj*);
84/* 087140 */ void ftLib_80087140(HSD_GObj*);
85/* 0871A8 */ void ftLib_ApplyMetalBox(Fighter_GObj*, Item_GObj*);
86/* 087284 */ bool ftLib_80087284(HSD_GObj*);
88/* 0872B0 */ LbShadow* ftLib_GetShadow(HSD_GObj*);
89/* 0872BC */ bool ftLib_CastsShadow(HSD_GObj*);
93/* 08732C */ bool ftLib_IsDead(HSD_GObj*);
94/* 087354 */ bool ftLib_IsDeadUp(HSD_GObj*);
95/* 08737C */ bool ftLib_IsDeadUpStar(HSD_GObj*);
96/* 0873A4 */ bool ftLib_IsDeadUpFall(HSD_GObj*);
97/* 0873CC */ bool ftLib_IsRebirth(HSD_GObj*);
98/* 0873F4 */ bool ftLib_IsEntry(HSD_GObj*);
99/* 08741C */ HSD_GObj* ftLib_FindBySpawnNum(u32);
100/* 087454 */ float ftLib_GetCrowdKnockback(HSD_GObj*);
101/* 087460 */ u32 ftLib_GetSpawnNum(HSD_GObj*);
102/* 08746C */ s32 ftLib_8008746C(HSD_GObj*);
103/* 0874BC */ s32 ftLib_IsSubFighter(HSD_GObj*);
104/* 0874CC */ void ftLib_800874CC(HSD_GObj*, ItemKind[], s32);
105/* 087508 */ void ftLib_LoadFighterCostume(s8, u8);
107/* 087574 */ void ftLib_LoadFighterAllCostumes(s8);
109/* 087610 */ void ftLib_LoadKirbyHats(u8);
110/* 0876B4 */ void ftLib_IsFramesRemaining(HSD_GObj*);
111/* 0876D4 */ bool ftLib_IsChargingSmash(HSD_GObj*);
114/* 08770C */ void ftLib_GetGameWatchColor(HSD_GObj*, void* dst);
115/* 087744 */ void ftLib_GetGameWatchOutlineColor(HSD_GObj*, void* dst);
116/* 08777C */ float ftLib_GetGroundSlopeAngle(HSD_GObj*);
117/* 0877D4 */ bool ftLib_IsBeingNudged(HSD_GObj*);
118
119#endif
void ftLib_GetPrevPos(HSD_GObj *, Vec3 *)
Definition ftlib.c:328
HSD_GObj * ftLib_FindBySpawnNum(u32)
Definition ftlib.c:916
void ftLib_DecFighterRefCount(s32)
Definition ftlib.c:747
void ftLib_ReleaseItem(HSD_GObj *, HSD_GObj *)
Definition ftlib.c:350
void ftLib_DisableInput(HSD_GObj *)
Definition ftlib.c:394
bool ftLib_IsDeadUpFall(HSD_GObj *)
Definition ftlib.c:886
s32 ftLib_GetLastHitSourceType(HSD_GObj *)
Definition ftlib.c:1024
bool ftLib_GetShakeOffset(HSD_GObj *, Vec3 *)
Definition ftlib.c:752
bool ftLib_IsChargingSmash(HSD_GObj *)
Definition ftlib.c:1014
void ftLib_80086A4C(HSD_GObj *, float)
Definition ftlib.c:512
void ftLib_StartItemRumble(HSD_GObj *, s32, s32)
Definition ftlib.c:633
CollData * ftLib_GetCollData(HSD_GObj *)
Definition ftlib.c:457
bool ftLib_IsSleeping(HSD_GObj *)
Definition ftlib.c:736
HSD_GObj * ftLib_FindNearestOpponent(Vec3 *pos, HSD_GObj *)
Closest opponent to pos (squared x/y distance), skipping teammates.
Definition ftlib.c:122
float ftLib_GetModelScale(HSD_GObj *)
Definition ftlib.c:477
void ftLib_ClearHeldSpecialItem(HSD_GObj *)
Definition ftlib.c:358
bool ftLib_IsMasterHandPresent(void)
Definition ftlib.c:47
u32 ftLib_GetSpawnNum(HSD_GObj *)
Definition ftlib.c:940
void ftLib_StartItemRumbleAll(s32, s32)
Definition ftlib.c:638
void ftLib_GetPosDelta(HSD_GObj *, Vec3 *)
Definition ftlib.c:591
FighterKind ftLib_GetKind(HSD_GObj *)
Definition ftlib.c:821
void ftLib_ApplyMetalBox(Fighter_GObj *, Item_GObj *)
Definition ftlib.c:798
s32 ftLib_IsLastAttackerSubFighter(HSD_GObj *)
Definition ftlib.c:845
s32 ftLib_IsSleeping_8008731C(HSD_GObj *)
Definition ftlib.c:851
void ftLib_IncFighterRefCount(s32)
Definition ftlib.c:742
float ftLib_GetCrowdKnockback(HSD_GObj *)
Knockback reweighted by the crowd config's angle multiplier (un_803222EC); only the crowd sound code ...
Definition ftlib.c:934
bool ftLib_IsItemVisible(HSD_GObj *, HSD_GObj *)
Definition ftlib.c:429
s32 ftLib_GetTeam(HSD_GObj *)
Get fighter's team ID.
Definition ftlib.c:659
void ftLib_EnableInput(HSD_GObj *)
Definition ftlib.c:413
s32 ftLib_8008746C(HSD_GObj *)
Definition ftlib.c:946
bool ftLib_IsSwordSwing(HSD_GObj *)
Definition ftlib.c:704
void ftLib_EnableAllInput(void)
Definition ftlib.c:419
bool ftLib_IsInHitstun(HSD_GObj *)
Definition ftlib.c:665
bool ftLib_IsCrazyHandPresent(void)
Definition ftlib.c:63
float ftLib_80086B80(HSD_GObj *)
Definition ftlib.c:568
void ftLib_LoadFighterCostume(s8, u8)
void ftLib_LoadFighterCostume(FighterKind ft_kind, u8 arg1)
Definition ftlib.c:969
void ftLib_GetLStick(HSD_GObj *, float *, float *)
Definition ftlib.c:297
HSD_GObj * ftLib_GetItem(HSD_GObj *)
Definition ftlib.c:366
s32 ftLib_GetLastAttackerSlot(HSD_GObj *)
Definition ftlib.c:839
bool ftLib_CastsShadow(HSD_GObj *)
Definition ftlib.c:833
bool ftLib_IsOffscreen(HSD_GObj *)
Definition ftlib.c:556
HSD_JObj * ftLib_GetPartJObj(Fighter_GObj *, Fighter_Part part)
s32 ftLib_GetLastHitSourceKind(HSD_GObj *)
Definition ftlib.c:1030
bool ftLib_IsRebirth(HSD_GObj *)
Definition ftlib.c:896
void ftLib_GetCameraBonePos(HSD_GObj *, Vec3 *)
Definition ftlib.c:342
void ftLib_LoadFighterAllCostumes(s8)
/* 087508 *‍/ void ftLib_LoadFighterCostume(FighterKind, u8);
Definition ftlib.c:979
CmSubject * ftLib_GetCameraSubject(HSD_GObj *)
Definition ftlib.c:562
float ftLib_GetOpponentsDir(Vec3 *, HSD_GObj *)
Definition ftlib.c:238
s32 ftLib_GetPercent(HSD_GObj *)
Definition ftlib.c:780
u8 ftLib_GetPlayerIndex(HSD_GObj *)
Definition ftlib.c:585
bool ftLib_IsDead(HSD_GObj *)
Definition ftlib.c:856
bool ftLib_IsDeadUp(HSD_GObj *)
Definition ftlib.c:866
Fighter_GObj * ftLib_FindNearestOpponentInDir(Vec3 *, Fighter_GObj *, float)
Like ftLib_FindNearestOpponent, but only opponents on the facing_dir side of v.
Definition ftlib.c:175
void ftLib_SetPos(HSD_GObj *, Vec3 *)
Definition ftlib.c:322
void ftLib_GetCameraSubjectBonePos(HSD_GObj *, Vec3 *v)
Definition ftlib.c:573
float ftLib_GetScale(HSD_GObj *)
Definition ftlib.c:489
void ftLib_LoadKirbyHats(u8)
/* 087574 *‍/ void ftLib_LoadFighterAllCostumes(FighterKind);
Definition ftlib.c:994
void ftLib_SetScale(HSD_GObj *, float)
Definition ftlib.c:334
bool ftLib_IsCameraSubjectInBounds(HSD_GObj *)
Definition ftlib.c:579
s32 ftLib_CountFighters(void)
Definition ftlib.c:35
LbShadow * ftLib_GetShadow(HSD_GObj *)
Definition ftlib.c:827
HSD_JObj * ftLib_GetHipJObj(HSD_GObj *)
Definition ftlib.c:304
void ftLib_80087140(HSD_GObj *)
Definition ftlib.c:787
bool ftLib_IsShielding(HSD_GObj *)
Definition ftlib.c:497
bool ftLib_IsHoldingItem(HSD_GObj *, HSD_GObj *)
Definition ftlib.c:372
void ftLib_IsFramesRemaining(HSD_GObj *)
Definition ftlib.c:1007
void ftLib_DisableAllInput(void)
Definition ftlib.c:401
HSD_GObj * ftLib_FindLowestPercentOpponent(HSD_GObj *)
Definition ftlib.c:79
void ftLib_StartRumbleAll(s32, s32)
Definition ftlib.c:621
void ftLib_SetPercent(HSD_GObj *, s32)
Definition ftlib.c:774
HSD_GObj * ftLib_GetHeldSpecialItem(HSD_GObj *)
Definition ftlib.c:382
bool ftLib_IsDeadUpStar(HSD_GObj *)
Definition ftlib.c:876
void ftLib_GetGameWatchOutlineColor(HSD_GObj *, void *dst)
Definition ftlib.c:1045
bool ftLib_UpdateScreenVisibility(HSD_GObj *)
Definition ftlib.c:529
void ftLib_StopItemRumble(HSD_GObj *)
Definition ftlib.c:650
void ftLib_800874CC(HSD_GObj *, ItemKind[], s32)
Definition ftlib.c:963
void ftLib_GetGameWatchColor(HSD_GObj *, void *dst)
Definition ftlib.c:1036
bool ftLib_CanBeMagnified(HSD_GObj *)
Definition ftlib.c:671
bool ftLib_IsFighter(HSD_GObj *gobj)
Check if the HSD_GObj* class is a fighter.
Definition ftlib.c:448
float ftLib_GetNameTagHeight(HSD_GObj *)
Definition ftlib.c:694
void ftLib_StartRumble(HSD_GObj *, s32, s32)
Definition ftlib.c:616
bool ftLib_IsEntry(HSD_GObj *)
Definition ftlib.c:906
bool ftLib_IsBeingNudged(HSD_GObj *)
Definition ftlib.c:1066
float ftLib_800869F8(HSD_GObj *)
Definition ftlib.c:483
bool ftLib_GetSubColor(HSD_GObj *, GXColor *)
Definition ftlib.c:764
float ftLib_GetGroundSlopeAngle(HSD_GObj *)
Definition ftlib.c:1054
enum_t ftLib_GetMotionId(HSD_GObj *)
Definition ftlib.c:597
s32 ftLib_IsSubFighter(HSD_GObj *)
Definition ftlib.c:957
float ftLib_GetFacingDir(HSD_GObj *)
Definition ftlib.c:285
bool ftLib_80087284(HSD_GObj *)
Unbounded: true for every motion state from ftCo_MS_LightThrowF4 on.
Definition ftlib.c:812
bool ftLib_GetScreenPos(HSD_GObj *, S32Vec2 *)
Definition ftlib.c:518
s32 ftLib_GetGroundAir(HSD_GObj *)
Definition ftlib.c:291
bool ftLib_80086F4C(HSD_GObj *)
Definition ftlib.c:684
void ftLib_GetECBCenter(HSD_GObj *, Vec3 *)
Definition ftlib.c:470
void ftLib_GetPos(Fighter_GObj *, Vec3 *)
Definition ftlib.c:316
bool ftLib_IsSamePlayer(HSD_GObj *, HSD_GObj *)
Definition ftlib.c:717
bool ftLib_IsInputDisabled(HSD_GObj *)
Definition ftlib.c:388
struct Vec Vec3
signed int s32
Definition types.h:12
unsigned int u32
Definition types.h:13
signed char s8
Definition types.h:4
unsigned char u8
Definition types.h:5
FighterKind
Definition forward.h:98
Fighter_Part
Definition forward.h:264
ItemKind
Based on "ID Lists" from the SSBM datasheet, in-game references, and further research by VetriTheRetr...
Definition forward.h:130
HSD_GObj Item_GObj
Definition forward.h:64
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:29
A point of interest ("camera box") that the match camera tries to keep in frame.
Definition types.h:24
Definition types.h:205
Definition GXStruct.h:27
Definition gobj.h:16
Definition jobj.h:106
Definition types.h:1030
Definition mtx.h:34