Движение монстра
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class fff : MonoBehaviour {
// скорость движения персонажа
private float speed = 5.1f;
void Start () {
// пусто
}
void Update () {
// двигаем персонажа вперёд
transform.Translate(0, 0, speed * Time.deltaTime);
// пускаем луч в направлении движения персонажа
Ray ray = new Ray(transform.position, transform.forward);
RaycastHit hit;
// если луч определённой толщины нашёл препятствие
if(Physics.SphereCast(ray, 0.65f, out hit))
{
// если расстояние до препятствия меньше 2-х метров
if ((hit.distance < 2))
{
// генерируем случайный угол поворота
float angle = Random.Range(-360, 360);
// поворачиваем персонажа
transform.Rotate(0, angle, 0);
}
}
}
}
Last updated