Crouching: Difference between revisions

875 bytes removed ,  7 March 2023
extract stationary cancels, add into
(consistent stationary cancel)
(extract stationary cancels, add into)
 
Line 7: Line 7:
|group= Stationary
|group= Stationary
|id= 0x020
|id= 0x020
|into=
|into=[[Water Plunge]], [[Squished]], [[Standing Death]] (theoretically), [[Quicksand Death]], [[Shockwave Bounce]], [[Backflip]], [[Begin Sliding]], [[Stop Crouching]], [[Punching]]
|out of=
|out of=
|animation= 0x98
|animation= 0x98
Line 16: Line 16:
''Certain things here are more explained on their individual pages. If something lacks detail, check the link for more information.''
''Certain things here are more explained on their individual pages. If something lacks detail, check the link for more information.''


As with all stationary actions, a variety of "cancels" are checked prior to actually performing the idle action. These checks are as follows:<ref>https://github.com/n64decomp/sm64/blob/66018e9f3caaa67399218971d61366cb3f7ba7d7/src/game/mario_actions_stationary.c#L1083-L1115</ref>
Before performing the action, [[Idle#Stationary%20cancels|stationary cancels]] are checked.
#Water - If Mario's height is lower than 100 units below the water height:
 
#*The camera preset is updated.
#*Mario's action is set to [[Water Plunge|water plunge]].
#Squish - If Mario is supposed to be squished:
#*The camera preset is updated.
#*Mario's action is set to [[squished]].
#If the action is not the unused [[0x0E action]] (always true) and Mario has less than 0x100 health:
#*The camera preset is updated.
#*Mario's action is changed to the [[Standing Death|standing death]] action.
#Lastly, Mario interacts with [[quicksand]] if his floor is a quicksand floor.
With the crouching action occurring, the following happens:
With the crouching action occurring, the following happens:
#If Mario is shocked by a Bowser shock wave, his action is set to the [[Shockwave Bounce|shockwave bounce]] action. This exits the crouching action.
#If Mario is shocked by a Bowser shock wave, his action is set to [[Shockwave Bounce|shockwave bounce]].
# If A is pressed, Mario's action is set to the [[backflip]] action. This exits the crouching action.
# If A is pressed, Mario's action is set to [[backflip]].
# If Mario is off the floor (has the "off floor" flag), Mario's action is set to [[freefall]]. This exits the crouching action.
# If Mario is off the floor (has the "off floor" flag), Mario's action is set to [[freefall]].
# If Mario is above a slide floor (has the "above slide" flag), Mario's action is set to the [[Begin Sliding|begin sliding]] action. This exits the crouching action.
# If Mario is above a slide floor (has the "above slide" flag), Mario's action is set to [[Begin Sliding|begin sliding]].
# If Mario enters first person or the Z button is no longer held, Mario's action is set to the [[Stop Crouching|stop crouching]] action. This exits the crouching action.
# If Mario enters first person or the Z button is no longer held, Mario's action is set to [[Stop Crouching|stop crouching]].
# If the joystick is held in any direction, Mario's action is set to the [[crawling]] action. This exits the crouching action.
# If the joystick is held in any direction, Mario's action is set to [[crawling]] action.
# If B is pressed, Mario's action is set to the [[punching]] action with an action argument of 9. This exits the crouching action.
# If B is pressed, Mario's action is set to [[punching]] with an action argument of 9.
# Now, Mario performs the quarter-frame movement via a full [[Movement_Steps#Stationary_Step|common stationary step]].
# Now, Mario performs the quarter-frame movement via a full [[Movement_Steps#Stationary_Step|common stationary step]].
#Mario's animation is set to the crouching animation now.
#Mario's animation is set to the crouching animation now.
{{actions}}
{{actions}}
<references />
<references />
246

edits