拾取物品代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;


public class behavior : MonoBehaviour {

    public Transform righthand;
    public Transform lefthand;
    public Animator anim;
    // Use this for initialization
    void Start () {
        anim = this.GetComponent<Animator>();
	}
	private void OnTriggerEnter(Collider other)
    {
        if (other.tag == "sword")
        {
            anim.SetInteger("weapon", 2);
            other.transform.parent = righthand;
            other.transform.localPosition = Vector3.zero;
            other.transform.localEulerAngles = new Vector3(-90, 0, 0);
        }
        if (other.tag == "shield")
        {
            anim.SetInteger("weapon", 2);
            other.transform.parent = lefthand;
            other.transform.localPosition = Vector3.zero;
            other.transform.localEulerAngles = new Vector3(-90, 0, 0);
        }
        //if (other.tag == "ox")
        //{
        //    anim.SetInteger("weapon", 2);
        //    other.transform.parent = righthand;
        //    other.transform.localPosition = Vector3.zero;
        //    other.transform.localEulerAngles = new Vector3(-90, 0, 0);
        //}
    }
	// Update is called once per frame
	void Update () {
        if(Input.GetKey(KeyCode.W)|| Input.GetKey(KeyCode.A)
            || Input.GetKey(KeyCode.S)|| Input.GetKey(KeyCode.D))
        {
            anim.SetInteger("run",2);
        }
        if (Input.GetKeyUp(KeyCode.W) || Input.GetKeyUp(KeyCode.A)
            || Input.GetKeyUp(KeyCode.S) || Input.GetKeyUp(KeyCode.D))
        {
            anim.SetInteger("run", 0);
        }
        if(Input.GetKey(KeyCode.Q))
        {
            anim.SetInteger("fight", 2);
        }
        if (Input.GetKeyUp(KeyCode.Q))
        {
            anim.SetInteger("fight", 0);
        }
        if (Input.GetKey(KeyCode.E))
        {
            anim.SetInteger("defend", 2);
        }
        if (Input.GetKeyUp(KeyCode.E))
        {
            anim.SetInteger("defend", 0);
        }
        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");

        Vector3 moveDir = new Vector3(h, 0, v);
        transform.Translate(moveDir * Time.deltaTime * 2, Space.World);
	}
    private void CheckItemInHand(Transform t)
    {
        for (int i = 0; i < t.childCount; i++)
        {
            Transform child = t.GetChild(i);

            if(child.tag=="shield"||child.tag=="sword"||child.tag=="ax")
            {
                Destroy(child.gameObject);
                return;
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_41796913/article/details/84201702
今日推荐