Idle: Difference between revisions

313 bytes added ,  8 March 2023
missed a few jumping actions
(way too much detail)
(missed a few jumping actions)
Line 7: Line 7:
|group= Stationary
|group= Stationary
|id= 0x001
|id= 0x001
|into=[[Water Plunge]], [[Squished]], [[Standing Death]], [[Quicksand Death]], [[In Quicksand]], [[Coughing]], [[Panting]], [[Freefall]], [[Shockwave Bounce]], [[Jump]], [[Begin Sliding]], [[First Person Action]], [[Walking]], [[Punching]], [[Start Crouching]], [[Shivering]], [[Start Sleeping]]
|into=[[Water Plunge]], [[Squished]], [[Standing Death]], [[Quicksand Death]], [[In Quicksand]], [[Coughing]], [[Panting]], [[Freefall]], [[Shockwave Bounce]], [[Hold Quicksand Jump Land]], [[Quicksand Jump Land]], [[Steep Jump]], [[Jump]], [[Begin Sliding]], [[First Person Action]], [[Walking]], [[Punching]], [[Start Crouching]], [[Shivering]], [[Start Sleeping]]
|out of=
|out of=
|animation=
|animation=
Line 26: Line 26:
## If Mario is in a cold environment, he starts to [[Shivering|shiver]], else he goes into the [[Start Sleeping|start sleeping]] action.
## If Mario is in a cold environment, he starts to [[Shivering|shiver]], else he goes into the [[Start Sleeping|start sleeping]] action.
# If Mario is against a wall, Mario has his animation changed to be standing against the wall. Otherwise, Mario's animation is set depending on which way he is turning his head.
# If Mario is against a wall, Mario has his animation changed to be standing against the wall. Otherwise, Mario's animation is set depending on which way he is turning his head.
== Stationary cancels ==
== Stationary cancels ==
A variety of "cancels" are checked prior to actually performing any stationary action. These checks are as follows:<ref>https://github.com/n64decomp/sm64/blob/66018e9f3caaa67399218971d61366cb3f7ba7d7/src/game/mario_actions_stationary.c#L1083-L1115</ref>
A variety of "cancels" are checked prior to actually performing any stationary action. These checks are as follows:<ref>https://github.com/n64decomp/sm64/blob/66018e9f3caaa67399218971d61366cb3f7ba7d7/src/game/mario_actions_stationary.c#L1083-L1115</ref>
# Water - If Mario's height is lower than 100 units below the water height:
# Water - If Mario's height is lower than 100 units below the water height:
#* The camera preset is updated.
#* The camera preset is updated.
Line 52: Line 50:
#*** The camera preset is updated.
#*** The camera preset is updated.
#*** Mario's action is set to [[Quicksand Death]].
#*** Mario's action is set to [[Quicksand Death]].
The processing goes:
The processing goes:
# Somehow, m->action is set to a stationary action.
# Somehow, m->action is set to a stationary action.
# Right before executing the action, stationary cancels are checked.
# Right before executing the action, stationary cancels are checked.
# The action is executed.
# The action is executed.
Technically, m->action was set to the stationary action. So although the action doesn't really do anything, there is still a "transition" between such stationary action and [[Water Plunge]], [[Squished]], [[Standing Death]], or [[Quicksand Death]]. So invariably, for all stationary actions, the infobox contains those 4 actions under "Transitions > Into" first (see top right of page if you don't know what I'm talking about).
Technically, m->action was set to the stationary action. So although the action doesn't really do anything, there is still a "transition" between such stationary action and [[Water Plunge]], [[Squished]], [[Standing Death]], or [[Quicksand Death]]. So invariably, for all stationary actions, the infobox contains those 4 actions under "Transitions > Into" first (see top right of page if you don't know what I'm talking about).
== check_common_idle_cancels ==
== check_common_idle_cancels ==
Note: This is used only in Idle, [[Start Sleeping]], [[Coughing]], [[In Quicksand]], and [[Panting]].
Note: This is used only in Idle, [[Start Sleeping]], [[Coughing]], [[In Quicksand]], and [[Panting]].
# If Mario is on a steep cliff, he is pushed off (into [[freefall]]).
# If Mario is on a steep cliff, he is pushed off (into [[freefall]]).
# If Mario is hit by a shockwave, his action is set to the [[shockwave bounce]] action.
# If Mario is hit by a shockwave, his action is set to the [[shockwave bounce]] action.
# If A is pressed, Mario's action is set to [[jump]].
# If A is pressed, his action is set to a jumping action:
## If Mario's quicksand depth is at least 11, then if Mario's holding an object, his action is set to [[Hold Quicksand Jump Land]], else [[Quicksand Jump Land]].
## If Mario's floor is steep, his action is set to [[Steep Jump]], else [[Jump]].
# If Mario is off the floor, Mario's action is set to [[freefall]].
# If Mario is off the floor, Mario's action is set to [[freefall]].
# If Mario is above a slide, he [[Begin Sliding|begins sliding]].
# If Mario is above a slide, he [[Begin Sliding|begins sliding]].
188

edits