Slide Kick: Difference between revisions
Jump to navigation
Jump to search
Icecream17 (talk | contribs) (add into) |
Icecream17 (talk | contribs) (add flags and cancels) |
||
(One intermediate revision by the same user not shown) | |||
Line 4: | Line 4: | ||
|official name= | |official name= | ||
|hex= 0x018008AA | |hex= 0x018008AA | ||
|flags= | |flags= Air, Attacking, Allow Vertical Wind Action | ||
|group= Airborne | |group= Airborne | ||
|id= 0x0AA | |id= 0x0AA | ||
|into=[[Freefall]], [[Slide Kick Slide]], [[Backward Air Kb]], [[Lava Boost]] | |into=airborne cancels: [[Water Plunge]], [[Squished]], [[Vertical Wind]], main: [[Freefall]], [[Slide Kick Slide]], [[Backward Air Kb]], [[Lava Boost]] | ||
|out of= | |out of= | ||
|animation= | |animation= | ||
|related= | |related= | ||
}} | }} | ||
== Behavior == | |||
As with all Airborne actions there are Airborne cancels, see [[Single Jump#Airborne cancels]] | |||
When a slide kick is happening:<ref>https://github.com/n64decomp/sm64/blob/master/src/game/mario_actions_airborne.c#L1580</ref> | When a slide kick is happening:<ref>https://github.com/n64decomp/sm64/blob/master/src/game/mario_actions_airborne.c#L1580</ref> | ||
# If actionTimer > 30 or yPos - floorHeight > 500; [[Freefall]] | # If actionTimer > 30 or yPos - floorHeight > 500; [[Freefall]] | ||
Line 22: | Line 26: | ||
### if actionState != 0 or vel[1] >= 0; [[Slide Kick Slide]] | ### if actionState != 0 or vel[1] >= 0; [[Slide Kick Slide]] | ||
### else velocity is negative; set velocity to -velocity/2, actionState to 1, actionTimer to 0, play_mario_landing_sound and break | ### else velocity is negative; set velocity to -velocity/2, actionState to 1, actionTimer to 0, play_mario_landing_sound and break | ||
## case AIR_STEP_HIT_WALL, cap speed to 0, [[Backward Air Knockback]] | ## case AIR_STEP_HIT_WALL, cap speed to 0, [[Backward Air Kb|Backward Air Knockback]] | ||
## case AIR_STEP_HIT_LAVA_WALL, change angle, make sure speed is at least 24, damage, [[Lava Boost]] | ## case AIR_STEP_HIT_LAVA_WALL, change angle, make sure speed is at least 24, damage, [[Lava Boost]] | ||
(perform_air_step returns NONE if all quartersteps were cancelled) | (perform_air_step returns NONE if all quartersteps were cancelled) |
Latest revision as of 16:01, 30 September 2023
Slide Kick | |
Properties | |
Hex | 0x018008AA |
Action Flags | Air, Attacking, Allow Vertical Wind Action |
Action Group | Airborne |
ID | 0x0AA |
Transitions | |
Into | airborne cancels: Water Plunge, Squished, Vertical Wind, main: Freefall, Slide Kick Slide, Backward Air Kb, Lava Boost |
Behavior
As with all Airborne actions there are Airborne cancels, see Single Jump#Airborne cancels
When a slide kick is happening:[1]
- If actionTimer > 30 or yPos - floorHeight > 500; Freefall
- update_air_without_turn
- switch perform_air_step():
- case AIR_STEP_NONE
- if actionState == 0, change angle
- break
- case AIR_STEP_LANDED
- if actionState != 0 or vel[1] >= 0; Slide Kick Slide
- else velocity is negative; set velocity to -velocity/2, actionState to 1, actionTimer to 0, play_mario_landing_sound and break
- case AIR_STEP_HIT_WALL, cap speed to 0, Backward Air Knockback
- case AIR_STEP_HIT_LAVA_WALL, change angle, make sure speed is at least 24, damage, Lava Boost
- case AIR_STEP_NONE
(perform_air_step returns NONE if all quartersteps were cancelled)