关于设置跳跃:
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PeopleAnimation : MonoBehaviour { Animation ani; float speed = 1; bool IsGround = false; bool Isother = true; // Use this for initialization void Start () { ani = GetComponent<Animation>(); ani.Play("idle"); } // Update is called once per frame void Update () { float h = Input.GetAxis("Horizontal"); float v = Input.GetAxis("Vertical"); if (h!=0||v!=0) { if (Input.GetKey(KeyCode.LeftShift)) { if (IsGround) { ani.Play("run"); } speed = 2; } else { speed = 1; if (IsGround) { ani.Play("walk"); } } } else { if (IsGround) { ani.Play("idle"); } } if (v>0) { transform.localScale = Vector3.one; } if (v<0) { transform.localScale = new Vector3(1,1,-1); } transform.Translate(0,0,v*Time.deltaTime*speed); transform.Rotate(0,h,0); if (IsGround) { if (Input.GetButtonDown("Jump")) { GetComponent<Rigidbody>().AddForce(0,200,0); ani.Play("jump"); IsGround = false; //Invoke("Jump",1.25f); } } } //public void Jump() //{ // Isother = true; //} private void OnCollisionEnter(Collision collision) { if (collision.gameObject.name == "Plane") { IsGround = true; Isother = true; } } }