public override bool CanEnter() { if (indicator.environmentIndicators[1].use && indicator.environmentIndicators[1].hit.distance < rayLength) { marker = indicator.environmentIndicators[1].hit.collider.GetComponent <WallDashMarker>(); normal = indicator.environmentIndicators[1].hit.normal; return(true); } return(false); }
public override void InitPlayback(StateTransition transition) { lastMarker = marker; lastMarker.InitJump(controller.GetBody()); initPosition = controller.transform.position; finalPosition = lastMarker.GetDestinationVector(initPosition, normal); Vector2 toFinal = -(initPosition - finalPosition).normalized; controller.GetMovement().ApplyExternalRotationI(toFinal); final = false; }