SSBM Decomp
|
#include <platform.h>
#include <placeholder.h>
#include "ft/forward.h"
#include "it/forward.h"
#include "lb/forward.h"
#include "ftcoll.h"
#include "fighter.h"
#include "ft_081B.h"
#include "ft_0877.h"
#include "ftcolanim.h"
#include "ftcommon.h"
#include "ftdevice.h"
#include "ftlib.h"
#include "ef/efsync.h"
#include "ft/inlines.h"
#include "ft/types.h"
#include "ftCommon/ftCo_Bury.h"
#include "ftCommon/ftCo_Guard.h"
#include "ftCommon/types.h"
#include "gm/gm_1601.h"
#include "it/it_26B1.h"
#include "lb/lbcollision.h"
#include "lb/types.h"
#include "pl/pl_0371.h"
#include <common_structs.h>
#include <math.h>
#include <dolphin/mtx/types.h>
#include <baselib/debug.h>
#include <baselib/gobj.h>
Data Structures | |
struct | DmgLogEntry |
struct | UnkSize320_t |
struct | ftCollSFX |
Enumerations | |
enum | EntityKind { EntityKind_None , EntityKind_Fighter , EntityKind_Item } |
Functions | |
STATIC_ASSERT (sizeof(DmgLogEntry)==0x28) | |
static void | ftColl_8007A06C (float facing_dir, DmgLogEntry **log, int idx, bool) |
void | ftColl_800763C0 (Fighter_GObj *attacker, Fighter_GObj *victim, enum_t attack_id) |
Combo Count Logic. | |
void | ftColl_80076444 (Fighter_GObj *attacker, Fighter_GObj *victim) |
Combo Count Logic + Get Attack ID. | |
void | ftColl_8007646C (Item_GObj *attackItem, Fighter_GObj *victim) |
Combo Count Logic w/ Item Owner. | |
void | ftColl_800764DC (Fighter_GObj *gobj) |
Check to end combo for victim. | |
void | comboCount_Push (Fighter *fp) |
void | ftColl_80076528 (Fighter_GObj *gobj) |
Combo count something + adjust FtPart_TopN. | |
void | ftColl_800765AC (Fighter_GObj *victim) |
Clear victim pointer from attacker upon freeing memory? | |
void | ftColl_800765E0 (void) |
Reset hitbox and phantom collision count? | |
float | ftColl_800765F0 (Fighter *fp, Fighter_GObj *victim, float arg2) |
static int | getEnvDmg (float dmg) |
bool | ftColl_80076640 (Fighter *fp, float *dmg) |
void | ftColl_80076764 (int arg0, enum_t arg1, Fighter_GObj *arg2, DynamicsDesc *arg3, Fighter *fp, HurtCapsule *hurt) |
void | ftColl_80076808 (Fighter *fp, HitCapsule *hit, int arg2, void *victim, bool arg4) |
void | ftColl_800768A0 (Fighter *fp, HitCapsule *dst) |
static void | inlineA0 (Fighter *fp0, Fighter *fp1, HitCapsule *hit1, Vec3 *ef_pos, float dmg) |
static bool | inlineA1 (Fighter *fp0, HitCapsule *hit0, Fighter *fp1, HitCapsule *hit1, Vec3 *ef_pos, float dmg) |
bool | ftColl_8007699C (Fighter *fp0, HitCapsule *hit0, Fighter *fp1, HitCapsule *hit1) |
void | ftColl_80076CBC (Fighter *fp0, HitCapsule *hit0, Fighter *fp1) |
void | inlineB0 (Fighter *fp0, HitCapsule *hitbox, Fighter *fp1, int arg3, bool(*cb)(HitCapsule *hit, int arg1, void *fp)) |
HitCapsuleState | checkTipLog (UNK_T victim, HitCapsule *hit) |
Loop through phantom hit victims. | |
static bool | inlineB1 (HitCapsule *hit0) |
static bool | inlineB2 (Fighter *fp1, float dmg, int var_r24_3) |
static float | inlineB3 (Fighter *fp0, HitCapsule *hit0, Fighter *fp1) |
bool | ftColl_80076ED8 (Fighter *fp0, HitCapsule *hit0, Fighter *fp1, HitCapsule *hit1) |
void | ftColl_80077464 (void) |
void | ftColl_80077688 (Item *item, HitCapsule *hurt, Fighter *fp, Vec3 *pos, f32 val) |
void | ftColl_80077970 (void) |
void | ftColl_80077C60 (void) |
void | ftColl_80078384 (Fighter *fp, HurtCapsule *hurt, HitCapsule *hit) |
void | ftColl_80078488 (Fighter *fp) |
UNK_T | ftColl_800784B4 (UNK_T arg0, UNK_T arg1, UNK_T arg2) |
void | ftColl_80078538 (void) |
void | ftColl_8007861C (bool arg0, Fighter_GObj *gobj, int arg2, int arg3, int arg4, u32 arg5, int arg6, UNK_T arg7, int arg8) |
UNK_RET | ftColl_80078710 (UNK_PARAMS) |
void | ftColl_80078754 (Fighter_GObj *arg0, Fighter_GObj *arg1, bool arg2) |
void | ftColl_800787B4 (void) |
void | ftColl_800788D4 (Fighter_GObj *gobj) |
void | ftColl_8007891C (Fighter_GObj *arg0, Fighter_GObj *arg1, float arg2) |
void | ftColl_80078998 (void) |
HitCapsule * | HitCapsuleGetPtr (Fighter *fp, u32 i) |
void | ftGrabDist (Fighter *this_fp, Fighter *victim_fp) |
void | ftColl_80078A2C (Fighter_GObj *this_gobj) |
Checks for grabbable targets. | |
void | ftColl_80078C70 (Fighter_GObj *this_gobj) |
void | ftColl_8007925C (Fighter_GObj *gobj) |
void | ftColl_80079AB0 (void) |
float | ftColl_80079C70 (Fighter *arg0, Fighter *arg1, UNK_T arg2, int arg3) |
float | ftColl_80079EA8 (Fighter *arg0, HitCapsule *arg1, int arg2) |
void | ftColl_8007AB48 (Fighter_GObj *gobj) |
void | ftColl_8007AB80 (Fighter_GObj *gobj) |
void | ftColl_8007ABD0 (HitCapsule *arg0, u32 arg1, Fighter_GObj *arg2) |
bool | ftColl_8007AC68 (uint kb_angle) |
void | ftColl_8007AC9C (HitCapsule *arg0, int arg1, Fighter_GObj *arg2) |
void | ftColl_8007AD18 (ftCo_Fighter *fp, HitCapsule *arg1) |
void | ftColl_8007AE80 (Fighter_GObj *gobj) |
void | ftColl_8007AEE0 (Fighter_GObj *gobj) |
void | ftColl_8007AEF8 (Fighter_GObj *gobj) |
Enable Reflect Bubble Update. | |
void | ftColl_8007AF10 (Fighter_GObj *gobj) |
void | ftColl_8007AF28 (Fighter_GObj *gobj) |
void | ftColl_8007AFC8 (Fighter_GObj *gobj, int hit_idx) |
ftColl_8007AF60 | |
void | ftColl_8007AFF8 (Fighter_GObj *gobj) |
void | ftColl_8007B064 (Fighter_GObj *gobj, enum_t arg1) |
void | ftColl_8007B0C0 (Fighter_GObj *gobj, HurtCapsuleState arg1) |
void | ftColl_8007B128 (Fighter_GObj *fighter_gobj, int bone_id, HurtCapsuleState state) |
void | ftColl_8007B1B8 (Fighter_GObj *gobj, ShieldDesc *shield, HSD_GObjEvent cb) |
void | ftColl_CreateReflectHit (Fighter_GObj *gobj, ReflectDesc *reflect, HSD_GObjEvent cb) |
void | ftColl_CreateAbsorbHit (Fighter_GObj *gobj, AbsorbDesc *absorb) |
void | ftColl_8007B320 (Fighter_GObj *gobj) |
void | ftColl_8007B4E0 (Fighter_GObj *gobj) |
void | ftColl_8007B5AC (Fighter *fp, HurtCapsule *hurt, struct UNK_SAMUS_S2 *arg2) |
void | ftColl_8007B62C (Fighter_GObj *gobj, enum_t arg1) |
void | ftColl_8007B6A0 (Fighter_GObj *gobj) |
enum_t | inlineC0 (Fighter *fp) |
void | ftColl_8007B6EC (Fighter_GObj *gobj) |
void | ftColl_8007B760 (Fighter_GObj *gobj, int arg1) |
void | ftColl_8007B7A4 (Fighter_GObj *gobj, int arg1) |
void | ftColl_8007B7FC (Fighter *fp, int arg1) |
s32 | ftColl_8007B868 (Fighter_GObj *gobj) |
void | ftColl_8007B8A8 (HitCapsule *hit, Vec3 *vec) |
Update hitbox positions. | |
void | ftColl_8007B8CC (Fighter *fp, Fighter_GObj *grabber_gobj) |
void | ftColl_8007B8E8 (Fighter_GObj *gobj) |
s32 | func_800C0A28 (HSD_GObj *, u32, s32) |
void | ftColl_GetWindOffsetVec (HSD_GObj *gobj, Vec3 *out_wind) |
void | ftColl_8007BA0C (Fighter_GObj *gobj) |
void | ftColl_8007BAC0 (Fighter_GObj *gobj) |
float | ftColl_8007BBCC (UNUSED Fighter_GObj *gobj) |
void | ftColl_8007BC90 (Fighter_GObj *gobj) |
void | ftColl_8007BE3C (Fighter_GObj *gobj) |
Variables | |
IntVec3 | ftColl_803C0C40 = { 141, 142, 143 } |
IntVec3 | ftColl_803C0C4C = { 107, 108, 109 } |
static UNUSED int | ftColl_803C0CAC [] |
static UNUSED char | ftColl_803C0CF0 [] |
static UNUSED char | assert_msg_1 [] = "fighter hit num over!\n" |
static UNUSED char | assert_msg_2 [] = "fighter dynamics hit num over!\n" |
static DmgLogEntry | dmg_log0 [20] |
struct DmgLogEntry | dmg_log1 [20] |
char *const | ftColl_804D3A68 |
static size_t | dmg_log0_idx |
static size_t | dmg_log1_idx |
static s8 | ftColl_804D6560 [8] |
float const | ftColl_804D82E0 = 0 |
float const | ftColl_804D82E4 = 500 |
float const | ftColl_804D82E8 = 0.5 |
float const | ftColl_804D82EC = +1 |
float const | ftColl_804D82F0 = -1 |
double const | ftColl_804D82F8 = S32_TO_F32 |
float const | ftColl_804D8300 = deg_to_rad |
double const | ftColl_804D8308 = U32_TO_F32 |
float const | ftColl_804D8310 = F32_MAX |
float const | ftColl_804D8314 = 0.01 |
float const | ftColl_804D8318 = 1e-5 |
float const | ftColl_804D831C = rad_to_deg |
struct ftCollSFX | lbl_803C0C40 |
enum EntityKind |
STATIC_ASSERT | ( | sizeof(DmgLogEntry) | = =0x28 | ) |
|
static |
void ftColl_800763C0 | ( | Fighter_GObj * | attacker, |
Fighter_GObj * | victim, | ||
enum_t | attack_id | ||
) |
Combo Count Logic.
void ftColl_80076444 | ( | Fighter_GObj * | attacker, |
Fighter_GObj * | victim | ||
) |
Combo Count Logic + Get Attack ID.
void ftColl_8007646C | ( | Item_GObj * | attackItem, |
Fighter_GObj * | victim | ||
) |
Combo Count Logic w/ Item Owner.
void ftColl_800764DC | ( | Fighter_GObj * | gobj | ) |
Check to end combo for victim.
|
inline |
void ftColl_80076528 | ( | Fighter_GObj * | gobj | ) |
Combo count something + adjust FtPart_TopN.
void ftColl_800765AC | ( | Fighter_GObj * | victim | ) |
Clear victim pointer from attacker upon freeing memory?
void ftColl_800765E0 | ( | void | ) |
Reset hitbox and phantom collision count?
float ftColl_800765F0 | ( | Fighter * | fp, |
Fighter_GObj * | victim, | ||
float | arg2 | ||
) |
|
static |
void ftColl_80076764 | ( | int | arg0, |
enum_t | arg1, | ||
Fighter_GObj * | arg2, | ||
DynamicsDesc * | arg3, | ||
Fighter * | fp, | ||
HurtCapsule * | hurt | ||
) |
void ftColl_80076808 | ( | Fighter * | fp, |
HitCapsule * | hit, | ||
int | arg2, | ||
void * | victim, | ||
bool | arg4 | ||
) |
void ftColl_800768A0 | ( | Fighter * | fp, |
HitCapsule * | dst | ||
) |
|
inlinestatic |
|
inlinestatic |
bool ftColl_8007699C | ( | Fighter * | fp0, |
HitCapsule * | hit0, | ||
Fighter * | fp1, | ||
HitCapsule * | hit1 | ||
) |
void ftColl_80076CBC | ( | Fighter * | fp0, |
HitCapsule * | hit0, | ||
Fighter * | fp1 | ||
) |
|
inline |
HitCapsuleState checkTipLog | ( | UNK_T | victim, |
HitCapsule * | hit | ||
) |
Loop through phantom hit victims.
|
inlinestatic |
|
inlinestatic |
bool ftColl_80076ED8 | ( | Fighter * | fp0, |
HitCapsule * | hit0, | ||
Fighter * | fp1, | ||
HitCapsule * | hit1 | ||
) |
void ftColl_80077464 | ( | void | ) |
void ftColl_80077688 | ( | Item * | item, |
HitCapsule * | hurt, | ||
Fighter * | fp, | ||
Vec3 * | pos, | ||
f32 | val | ||
) |
void ftColl_80077970 | ( | void | ) |
void ftColl_80077C60 | ( | void | ) |
void ftColl_80078384 | ( | Fighter * | fp, |
HurtCapsule * | hurt, | ||
HitCapsule * | hit | ||
) |
void ftColl_80078488 | ( | Fighter * | fp | ) |
void ftColl_80078538 | ( | void | ) |
void ftColl_8007861C | ( | bool | arg0, |
Fighter_GObj * | gobj, | ||
int | arg2, | ||
int | arg3, | ||
int | arg4, | ||
u32 | arg5, | ||
int | arg6, | ||
UNK_T | arg7, | ||
int | arg8 | ||
) |
UNK_RET ftColl_80078710 | ( | UNK_PARAMS | ) |
void ftColl_80078754 | ( | Fighter_GObj * | arg0, |
Fighter_GObj * | arg1, | ||
bool | arg2 | ||
) |
void ftColl_800787B4 | ( | void | ) |
void ftColl_800788D4 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007891C | ( | Fighter_GObj * | arg0, |
Fighter_GObj * | arg1, | ||
float | arg2 | ||
) |
void ftColl_80078998 | ( | void | ) |
|
inline |
void ftColl_80078A2C | ( | Fighter_GObj * | this_gobj | ) |
Checks for grabbable targets.
void ftColl_80078C70 | ( | Fighter_GObj * | this_gobj | ) |
void ftColl_8007925C | ( | Fighter_GObj * | gobj | ) |
void ftColl_80079AB0 | ( | void | ) |
float ftColl_80079EA8 | ( | Fighter * | arg0, |
HitCapsule * | arg1, | ||
int | arg2 | ||
) |
void ftColl_8007AB48 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007AB80 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007ABD0 | ( | HitCapsule * | arg0, |
u32 | arg1, | ||
Fighter_GObj * | arg2 | ||
) |
void ftColl_8007AC9C | ( | HitCapsule * | arg0, |
int | arg1, | ||
Fighter_GObj * | arg2 | ||
) |
void ftColl_8007AD18 | ( | ftCo_Fighter * | fp, |
HitCapsule * | arg1 | ||
) |
void ftColl_8007AE80 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007AEE0 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007AEF8 | ( | Fighter_GObj * | gobj | ) |
Enable Reflect Bubble Update.
void ftColl_8007AF10 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007AF28 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007AFC8 | ( | Fighter_GObj * | gobj, |
int | hit_idx | ||
) |
void ftColl_8007AFF8 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B064 | ( | Fighter_GObj * | gobj, |
enum_t | arg1 | ||
) |
void ftColl_8007B0C0 | ( | Fighter_GObj * | gobj, |
HurtCapsuleState | arg1 | ||
) |
void ftColl_8007B128 | ( | Fighter_GObj * | fighter_gobj, |
int | bone_id, | ||
HurtCapsuleState | state | ||
) |
void ftColl_8007B1B8 | ( | Fighter_GObj * | gobj, |
ShieldDesc * | shield, | ||
HSD_GObjEvent | cb | ||
) |
shield
is AbsorbDesc, and AbsorbDesc is part of ShieldDesc void ftColl_CreateReflectHit | ( | Fighter_GObj * | gobj, |
ReflectDesc * | reflect, | ||
HSD_GObjEvent | cb | ||
) |
void ftColl_CreateAbsorbHit | ( | Fighter_GObj * | gobj, |
AbsorbDesc * | absorb | ||
) |
void ftColl_8007B320 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B4E0 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B5AC | ( | Fighter * | fp, |
HurtCapsule * | hurt, | ||
struct UNK_SAMUS_S2 * | arg2 | ||
) |
void ftColl_8007B62C | ( | Fighter_GObj * | gobj, |
enum_t | arg1 | ||
) |
void ftColl_8007B6A0 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B6EC | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B760 | ( | Fighter_GObj * | gobj, |
int | arg1 | ||
) |
void ftColl_8007B7A4 | ( | Fighter_GObj * | gobj, |
int | arg1 | ||
) |
void ftColl_8007B7FC | ( | Fighter * | fp, |
int | arg1 | ||
) |
s32 ftColl_8007B868 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007B8A8 | ( | HitCapsule * | hit, |
Vec3 * | vec | ||
) |
Update hitbox positions.
void ftColl_8007B8CC | ( | Fighter * | fp, |
Fighter_GObj * | grabber_gobj | ||
) |
void ftColl_8007B8E8 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007BA0C | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007BAC0 | ( | Fighter_GObj * | gobj | ) |
float ftColl_8007BBCC | ( | UNUSED Fighter_GObj * | gobj | ) |
void ftColl_8007BC90 | ( | Fighter_GObj * | gobj | ) |
void ftColl_8007BE3C | ( | Fighter_GObj * | gobj | ) |
IntVec3 ftColl_803C0C40 = { 141, 142, 143 } |
IntVec3 ftColl_803C0C4C = { 107, 108, 109 } |
|
static |
|
static |
|
static |
|
static |
|
static |
struct DmgLogEntry dmg_log1[20] |
char* const ftColl_804D3A68 |
|
static |
|
static |
|
static |
float const ftColl_804D82E0 = 0 |
float const ftColl_804D82E4 = 500 |
float const ftColl_804D82E8 = 0.5 |
float const ftColl_804D82EC = +1 |
float const ftColl_804D82F0 = -1 |
double const ftColl_804D82F8 = S32_TO_F32 |
float const ftColl_804D8300 = deg_to_rad |
double const ftColl_804D8308 = U32_TO_F32 |
float const ftColl_804D8310 = F32_MAX |
float const ftColl_804D8314 = 0.01 |
float const ftColl_804D8318 = 1e-5 |
float const ftColl_804D831C = rad_to_deg |
struct ftCollSFX lbl_803C0C40 |