前期工程通过射线检测已经实现了点击地面生成点击效果,以及角色朝向点击方向的功能,本期总结为角色的移动。
角色的移动分为两步实现:①角色的移动;②角色播放移动动画。
一、角色的移动
前期工程已经实现了朝向点击方向,则现在只需要让角色向前移动即可。脚本如下:
Name Space PlayerMove
private CharacterController playercontroller; //生命角色控制器,并调用角色的CharacterController组件
private PlayerDirection dir; //上期工程控制角色朝向的脚本
private float speed; //设定角色移动速度
void Start( )
{
playercontroller = GetComponent<CharacterController>(); //获取角色的控制器组件
dir = GetComponent<PlayerDirection>(); //获取角色的PlayerDirection脚本组件
speed = 4; //设定角色移动速度为4
}
Void Update()
{
float distance = Vector3.Distance( dir.targetPosition,tranform.position ); //获取目标地点与当前位置的距离
if( distance > 0.5f ) //设定距离判断范围,注:范围需要设定精准
{
playercontroller.SimpleMove( transform.forward.*speed); //这样角色就可以正常移动了
}
}
时间: 2024-10-29 10:45:41