Skip to content

Inversion block climb jumps are inconsistent #84

@swoolcock

Description

@swoolcock

If the inversion block detects a buffered ClimbJump, it will convert it to a regular WallJump on the opposite side, rather than something useful like Jump.
Additionally, if the climb jump is not buffered, it will act like a corner boost on the opposite side, with a small chance of also triggering WallJump.

Ideally it would have this functionality when a climb jump is attempted by the player (ie. grab and jump pressed together):

  • Any call to ClimbJump with horizontal or retained wall speed cancels the climb jump and converts it to a regular Jump, restoring any retained wall speed.
  • Any call to ClimbJump with no horizontal or retained wall speed, and a MoveX not pointing into the block performs the regular ClimbJump and changes Madeline's facing.
  • With the above point, if MoveX is pointing into the block, the climb jump is replaced with WallJump on the opposite side without changing Madeline's facing.

Also, ideally there would be no frame where Madeline has the StClimb state, which can happen if she is moving fast enough into the block that a climb jump cannot be buffered, and instead she slams into the block, retaining speed.

There's also a problem where after teleporting, the jump button can be detected as a WallJump by the same logic that checks for buffered climb jumps. This may need to be disabled for a few frames after Madeline teleports.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions