美文网首页
unity 单场景地图的3drpg游戏的鼠标控制脚本编写

unity 单场景地图的3drpg游戏的鼠标控制脚本编写

作者: Bis_12e2 | 来源:发表于2021-04-30 16:54 被阅读0次

在hierarchy创建一个空物体 挂上以下脚本,在物体组件处的序列框栏 把player拖拽,右侧下划栏选择navmesh。


截屏2021-04-30 下午4.57.00.png
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;


[System.Serializable]//将组建序列化(加了一个功能窗口)

public class eventvector3 : UnityEvent<Vector3> { };

public class mousecontrol : MonoBehaviour
{
    RaycastHit hitinfo;
    public eventvector3 onmouseclicked;

    void Update()
    {
        SetCursorTexture();
        mousecontrl();
    }

    void SetCursorTexture()
    {
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);

        if(Physics.Raycast(ray, out hitinfo))//得到一条射线
        {

            //实时切换鼠标贴图
        }
    }

    void mousecontrl()
    {
        if (Input.GetMouseButtonDown(0)&& hitinfo.collider != null)
        {
            if (hitinfo.collider.gameObject.CompareTag("Ground"))//判断是否为地面
                onmouseclicked?.Invoke(hitinfo.point);//判断鼠标是否为空?不为空的话获得点击处坐标,然后传给player
        }
    }


}

相关文章

网友评论

      本文标题:unity 单场景地图的3drpg游戏的鼠标控制脚本编写

      本文链接:https://www.haomeiwen.com/subject/ypanrltx.html