Movement steps: Difference between revisions

stationary ground step exists twice
(add stationary step)
(stationary ground step exists twice)
Line 2: Line 2:


Steps are also responsible for detecting collision with [[surfaces]], updating Mario's [[referenced surfaces]], and updating Mario's [[Water|water level]]. However, quarter steps don't detect object collisions or warps.
Steps are also responsible for detecting collision with [[surfaces]], updating Mario's [[referenced surfaces]], and updating Mario's [[Water|water level]]. However, quarter steps don't detect object collisions or warps.
== Stationary Step ==
== Stationary Step ==
https://github.com/n64decomp/sm64/blob/66018e9f3caaa67399218971d61366cb3f7ba7d7/src/game/mario_step.c#L236
https://github.com/n64decomp/sm64/blob/66018e9f3caaa67399218971d61366cb3f7ba7d7/src/game/mario_step.c#L236
# Mario's x and z forward velocity and sliding velocity is set to 0
# Mario's x and z forward velocity and sliding velocity is set to 0
# mario_update_moving_sand
# mario_update_moving_sand
Line 11: Line 9:
# If updated by moving sand or windy ground, return perform_ground_step
# If updated by moving sand or windy ground, return perform_ground_step
# Else, set Mario's y position to the floor, (possibly causing a [[downwarp]]), and update graphics. Return GROUND_STEP_NONE.
# Else, set Mario's y position to the floor, (possibly causing a [[downwarp]]), and update graphics. Return GROUND_STEP_NONE.
Also see [[Idle#stationary ground step]]


== Air Step ==
== Air Step ==
188

edits