Movement steps: Difference between revisions

Jump to navigation Jump to search
(→‎Quarter-Frame Checks: forgot "color:")
(add common air knockback step)
Line 109: Line 109:
** The camera preset is set to the area's default preset.
** The camera preset is set to the area's default preset.
** Mario enters the [[Lava Boost|lava boost]] action while dropping any held objects and no longer riding a shell.
** Mario enters the [[Lava Boost|lava boost]] action while dropping any held objects and no longer riding a shell.
=== Common Air Knockback Step ===
Similar to Common Air Step, it uses the "exit" from Perform Air Step. This function takes in a '''''landing action''''', a '''''hard fall action''''', and a '''''speed'''''.
Before calling Perform Air Step, it sets Mario's speed to '''''speed'''''.
Common Air Knockback Step can cancel into [[Feet Stuck In Ground]], '''''landing action''''', and '''''hard fall action'''''.
Mario cannot '''Hang''' or '''Ledge Grab'''. '''Nothing Happens''' and '''Lava Wall Boosts''' (contains cancel [[Lava Boost]]) are the same as for Perform Air Step.
* '''Lands'''
** If should get stuck in ground, drop and set action to [[Feet Stuck In Ground]]
** If y-velocity less than negative 55 and floor is not lava,
*** If fell more than 3000 units, shake camera, play MARIO_SOUND_ATTACKED, and drop and set mario action to the '''''hard fall action''''' with argument 4
*** Else if fell more than 1500 units and floor is not slippery
**** Hurt counter += 8 if cap, else 12
**** Squish counter += 30
** If neither of the first two checks canceled, set action to '''''landing action''''' (not changing the action argument, though there are differences in the Japanese version where the [[Thrown Forward]] and [[Thrown Backward]] intermediate actions cause the landing action argument to be hurtCounter)
* '''Hits a wall'''
** Change to the background air kb Animation
** If Mario's wall is not null
*** Mario's facingAngle[1] = wallAngle - (s32)(facingAngle[1] - wallAngle)
**** basically this step added two wallAngle
*** play either METAL_BONK or BONK sound
** else
*** play HIT sound
** facingAngle[1] += 0x8000
** Cap vel[1] to 0
** Set forward velocity to negative '''''speed''''' (and update slide and xz velocities to match)
[[Category:Action Mechanics]]
[[Category:Action Mechanics]]