using UnityEngine; using System.Collections; public class ScrorpionControllerScript : MonoBehaviour { public float maxSpeed = 10f; bool facingRight = true; Animator anim; bool grounded = false; public Transform groundCheck; float groundRadius = 0.2f; public LayerMask whatIsGround; float jumpTime, jumpDelay = 0.2f; bool jumped; float punchTime, punchDelay = .5f; bool punch; // Use this for initialization void Start () { anim = GetComponent<Animator> (); } // Update is called once per frame void FixedUpdate () { grounded = Physics2D.OverlapCircle (groundCheck.position, groundRadius, whatIsGround); anim.SetBool ("Ground", grounded); anim.SetFloat ("vSpeed", rigidbody2D.velocity.y); anim.SetBool ("Ground", grounded); float move = Input.GetAxis ("Horizontal"); anim.SetFloat ("wa", Mathf.Abs (move)); rigidbody2D.velocity = new Vector2(move * maxSpeed, rigidbody2D.velocity.y); if(move > 0 &&! facingRight) Flip (); else if (move < 0 && facingRight) Flip (); } void Update() { if(Input.GetKeyDown (KeyCode.Space) && grounded) { rigidbody2D.AddForce(transform.up * 275f); jumpTime = jumpDelay; anim.SetTrigger("Jump"); jumped = true; } jumpTime -= Time.deltaTime; if (jumpTime <= 0 && grounded && jumped) { anim.SetTrigger ("Land"); jumped = false; } if (Input.GetKeyDown (KeyCode.R)); { punchTime = punchDelay; anim.SetTrigger("punch"); punch = true; } } void Flip() { facingRight = !facingRight; Vector3 theScale = transform.localScale; theScale.x *= -1; transform.localScale = theScale; } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)