Unity 鼠标点击控制玩家角色移动

1.首先创建一个角色
如果有动画就添加上动画组件
设置刚体、碰撞体等一系列需要的组件(看自身需求)

2.然后创建一个plane做地板(记得地板也要添加碰撞体,不然人物会一直下落)

3.然后添加一个脚本PlayerMove挂载到玩家角色身上

脚本思路:
1.通过射线检测,判断点击的是地板还是敌人或是己方队友
2.移动,若是敌人就判断是否在攻击距离内,若不在就移动到攻击距离,然后开始攻击,若果队友或者是地板就直接移动到 目标点
3.目标点与自身的位置关系,是否要转身、距离等
4.停止,由于float类型有误差的关系,所以当距离小于一定值得时候,就判定为到达目标点

代码如下

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

public class PlayerMove : MonoBehaviour
{
   
    //移动速度
    private float speed = 3f;
    //动画
    private Animator ani;

    //射线碰撞检测
    private RaycastHit hit;
    //射线
    private Ray ray;
    //鼠标点击位置
    private Vector3 endPosition;

    Vector3 step;
    Quaternion ratation
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值