Advertisement
Miziziziz

Animations

Nov 6th, 2014
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.73 KB | None | 0 0
  1. using UnityEngine;
  2. using System.Collections;
  3.  
  4. public class Movement : MonoBehaviour {
  5.  
  6.     public float speed = 5f;
  7.     public float jumpForce = 8f;
  8.  
  9.     public Transform groundCheck;
  10.     float groundedRadius = .2f;
  11.     public LayerMask groundMask;
  12.  
  13.     Rigidbody2D _rigidbody2D;
  14.  
  15.     bool grounded;
  16.  
  17.     bool inLadder;
  18.     float gravity;
  19.  
  20.     Animator anim;
  21.  
  22.     bool facingRight = true;
  23.  
  24.     public Transform graphics;
  25.  
  26.     void Start ()
  27.     {
  28.         anim = GetComponentInChildren<Animator> ();
  29.         _rigidbody2D = rigidbody2D;
  30.         gravity = _rigidbody2D.gravityScale;
  31.     }
  32.    
  33.     void FixedUpdate()
  34.     {
  35.         anim.SetBool ("InLadder", inLadder);
  36.         inLadder = false;
  37.         grounded = Physics2D.OverlapCircle (groundCheck.position, groundedRadius, groundMask);
  38.         anim.SetBool ("Grounded", grounded);
  39.     }
  40.     void Update ()
  41.     {
  42.         float x = Input.GetAxis ("Horizontal");
  43.         anim.SetFloat ("Speed", Mathf.Abs (x));
  44.         _rigidbody2D.velocity = new Vector2 (speed * x, rigidbody2D.velocity.y);
  45.  
  46.         if(inLadder)
  47.         {
  48.             _rigidbody2D.gravityScale = 0;
  49.             float y = Input.GetAxisRaw ("Vertical");
  50.             anim.SetFloat ("vSpeed", Mathf.Abs(y));
  51.             _rigidbody2D.velocity = new Vector2 (rigidbody2D.velocity.x, speed * y);
  52.         }
  53.         else
  54.         {
  55.             _rigidbody2D.gravityScale = gravity;
  56.             if(Input.GetButtonDown("Jump") && grounded)
  57.             {
  58.                 _rigidbody2D.AddForce (new Vector2(0, jumpForce), ForceMode2D.Impulse);
  59.             }
  60.         }
  61.         if(x > 0  && !facingRight)
  62.         {
  63.             Flip();
  64.         }
  65.         else if(x < 0  && facingRight)
  66.         {
  67.             Flip();
  68.         }
  69.     }
  70.     void Flip()
  71.     {
  72.         facingRight = !facingRight;
  73.         Vector3 ourScale = graphics.localScale;
  74.         ourScale.x *= -1;
  75.         graphics.localScale = ourScale;
  76.     }
  77.     void OnTriggerStay2D(Collider2D coll)
  78.     {
  79.         if(coll.collider2D.tag == "Ladder")
  80.         {
  81.             inLadder = true;
  82.         }
  83.     }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement