Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void LedgeGrabbing() {
- if (canLedgeGrab && !isHangingOnLedge && ledgeDetected && !isGrounded && yVelocity < 0 && !ceilingAbove && !grabLedgeCooldown) {
- isHangingOnLedge = true;
- canCrouch = false;
- canMove = false;
- canJump = false;
- canChangeDirection = false;
- playerBounds = upperCollider.bounds;
- rb2d.gravityScale = 0;
- rb2d.velocity = Vector2.zero;
- upperCollider.enabled = false;
- lowerCollider.enabled = false;
- lastLedgeDropSpot = transform.position; //backup old position
- //move player pos to the ledge edge
- transform.position = facingRight ? new Vector2(ledgeBounds.min.x, ledgeBounds.max.y) : new Vector2(ledgeBounds.max.x, ledgeBounds.max.y);
- rb2d.velocity = Vector2.zero;
- animator.Play("ledge_grab");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement