Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions src/melee/ft/chara/ftKirby/ftKb_Init.c
Original file line number Diff line number Diff line change
Expand Up @@ -2542,6 +2542,7 @@ MotionState ftKb_Init_UnkMotionStates0[] = {
/* 0EE8B0 */ static void ftKb_Init_800EE8B0(void);
/* 0EE8EC */ static void ftKb_Init_800EE8EC(void);
/* 0EE904 */ static void ftKb_Init_800EE904(void);
/* 0F1CA0 */ static bool fn_800F1CA0(HSD_GObj* gobj);
/* 105FEC */ static void fn_800F6AC8(HSD_GObj* gobj);
/* 105FEC */ static void fn_80105FEC(void);
/* 10C288 */ static void fn_8010C288(HSD_GObj* gobj);
Expand Down Expand Up @@ -3779,8 +3780,12 @@ void ftKb_SpecialN_800F10A4(Fighter_GObj* gobj)

/// #ftKb_SpecialN_800F10D4

/// #ftKb_SpecialN_800F11AC

void ftKb_SpecialN_800F11AC(Fighter_GObj* gobj)
{
Fighter* fp = gobj->user_data;
ftKb_SpecialN_800EF69C(gobj, 0xF, ft_80459B88.hats[14]);
ftCo_UnloadDynamicBones(fp);
}
/// #ftKb_SpecialN_800F11F0

void ftKb_SpecialN_800F12C8(Fighter_GObj* gobj)
Expand Down
1 change: 1 addition & 0 deletions src/melee/ft/chara/ftPopo/ftPp_1211.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
/* 121B74 */ void ftPp_SpecialAirHiThrow_0_Phys(Fighter_GObj* gobj);
/* 121C34 */ void ftPp_SpecialHiThrow_0_Coll(Fighter_GObj* gobj);
/* 121C70 */ void ftPp_SpecialAirHiThrow_0_Coll(Fighter_GObj* gobj);
/* 121DA0 */ void ftPp_SpecialHi_80121DA0(Fighter_GObj* gobj);
/* 121E10 */ void ftPp_SpecialHiStart_1_Anim(Fighter_GObj* gobj);
/* 121E4C */ void ftPp_SpecialAirHiStart_1_Anim(Fighter_GObj* gobj);
/* 121EB0 */ void ftPp_SpecialHiStart_1_IASA(Fighter_GObj* gobj);
Expand Down
3 changes: 3 additions & 0 deletions src/melee/ft/chara/ftPopo/ftPp_Init.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,7 @@
/* 3CD7B4 */ extern Fighter_DemoStrings ftPp_Init_DemoMotionFilenames;
/* 3CD7C4 */ extern Fighter_CostumeStrings ftPp_Init_CostumeStrings[];

/* 4D9860 */ extern f32 ftPp_Init_804D9860;
/* 4D9880 */ extern f32 ftPp_Init_804D9880;

#endif
60 changes: 46 additions & 14 deletions src/melee/ft/chara/ftPopo/ftPp_SpecialS.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@

#include "ftPopo/forward.h"

#include "ftPopo/ftPp_1211.h"
#include "ftPopo/ftPp_Init.h"
#include "ftPopo/types.h"
#include "pl/player.h"
Expand All @@ -31,15 +32,18 @@
#include <melee/lb/lb_00B0.h>
#include <melee/lb/lbvector.h>

/* 121AC8 */ static void ftPp_SpecialHiThrow_0_IASA(Fighter_GObj* gobj);
/* 121ACC */ static void ftPp_SpecialAirHiThrow_0_IASA(Fighter_GObj* gobj);
/* 121EB0 */ static void ftPp_SpecialHiStart_1_IASA(Fighter_GObj* gobj);
/* 121EB4 */ static void ftPp_SpecialAirHiStart_1_IASA(Fighter_GObj* gobj);
/* 1221B0 */ static void ftPp_SpecialAirHiThrow_1_IASA(Fighter_GObj* gobj);
/* 12248C */ static void ftPp_SpecialHiThrow2_IASA(Fighter_GObj* gobj);
/* 122490 */ static void ftPp_SpecialAirHiThrow2_IASA(Fighter_GObj* gobj);
/* 122B0C */ static void ftPp_SpecialLw_IASA(Fighter_GObj* gobj);
/* 122B10 */ static void ftPp_SpecialAirLw_IASA(Fighter_GObj* gobj);
/* 121AC8 */ void ftPp_SpecialHiThrow_0_IASA(Fighter_GObj* gobj);
/* 121ACC */ void ftPp_SpecialAirHiThrow_0_IASA(Fighter_GObj* gobj);
/* 121EB0 */ void ftPp_SpecialHiStart_1_IASA(Fighter_GObj* gobj);
/* 121EB4 */ void ftPp_SpecialAirHiStart_1_IASA(Fighter_GObj* gobj);
/* 1221B0 */ void ftPp_SpecialAirHiThrow_1_IASA(Fighter_GObj* gobj);
/* 12248C */ void ftPp_SpecialHiThrow2_IASA(Fighter_GObj* gobj);
/* 122490 */ void ftPp_SpecialAirHiThrow2_IASA(Fighter_GObj* gobj);
/* 122B0C */ void ftPp_SpecialLw_IASA(Fighter_GObj* gobj);
/* 122B10 */ void ftPp_SpecialAirLw_IASA(Fighter_GObj* gobj);

/* 1218AC */ void ftPp_SpecialHi_801218AC(Fighter_GObj* gobj);
/* 1218F8 */ void ftPp_SpecialHi_801218F8(Fighter_GObj* gobj);

static void setRefGObjFlagAndClear(Fighter* fp)
{
Expand Down Expand Up @@ -790,8 +794,26 @@ void ftPp_SpecialS_80121164(Fighter_GObj* gobj)
}
}

/// #ftPp_SpecialHi_Enter
void ftPp_SpecialHi_Enter(Fighter_GObj* gobj)
{
Fighter* fp = GET_FIGHTER(gobj);
ftIceClimberAttributes* da = fp->dat_attrs;

fp->gr_vel /= da->x84;

ftPp_SpecialHi_801218AC(gobj);

fp = GET_FIGHTER(gobj);
fp->cmd_vars[2] = 0;
fp->cmd_vars[1] = 0;
fp->cmd_vars[0] = 0;
fp = GET_FIGHTER(gobj);
fp->mv.pp.unk_80123954.x0 = 1;
fp->fv.pp.x223C = 0;
fp->fv.pp.x2240.z = 0.0f;
fp->fv.pp.x2240.y = 0.0f;
fp->fv.pp.x2240.x = 0.0f;
}
/// #ftPp_SpecialAirHi_Enter

/// #ftPp_SpecialHiStart_0_Anim
Expand Down Expand Up @@ -820,9 +842,17 @@ void ftPp_SpecialHi_8012184C(Fighter_GObj* gobj)
Fighter_ChangeMotionState(gobj, 0x15B, 0x0C4C508AU, fp->cur_anim_frame, 0, 1, NULL);
}

/// #ftPp_SpecialHi_801218AC
void ftPp_SpecialHi_801218AC(Fighter_GObj* gobj)
{
Fighter_ChangeMotionState(gobj, 0x15B, Ft_MF_None, 0.0f, 1.0f, 0.0f, NULL);
ftAnim_8006EBA4(gobj);
}

/// #ftPp_SpecialHi_801218F8
void ftPp_SpecialHi_801218F8(Fighter_GObj* gobj)
{
Fighter_ChangeMotionState(gobj, 0x160, Ft_MF_None, 0.0f, 1.0f, 0.0f, NULL);
ftAnim_8006EBA4(gobj);
}

/// #ftPp_SpecialHiThrow_0_Anim

Expand All @@ -844,8 +874,10 @@ void ftPp_SpecialAirHiThrow_0_IASA(Fighter_GObj* gobj) {}

/// #ftPp_SpecialHi_80121D40

/// #ftPp_SpecialHi_80121DA0

void ftPp_SpecialHi_80121DA0(Fighter_GObj* gobj)
{
Fighter_ChangeMotionState(gobj, 0x15C, 0, 0, 1.0f, 0.0f, NULL);
}
/// #ftPp_SpecialHi_80121DD8

/// #ftPp_SpecialHiStart_1_Anim
Expand Down
4 changes: 3 additions & 1 deletion src/melee/ft/chara/ftPopo/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,9 @@ typedef struct ftIceClimberAttributes {
int x68;
float x6C;
float x70;
u8 _74[0x94 - 0x74];
u8 _74[0x84 - 0x74];
float x84;
u8 _88[0x94 - 0x88];
float x94;
float x98;
u8 _9C[0xB0 - 0x9C];
Expand Down