【发布时间】:2015-03-04 13:17:34
【问题描述】:
当玩家不在它的范围内时,我试图让我的熊随机行走。我希望它随机选择它在 y 轴上的旋转,然后将其向前移动,并在一段时间后再次随机切换旋转。
问题是我真的不知道如何给他分配随机轮换。 那我该怎么做呢?
我终于设法做到了,这是工作代码:
var timeToChangeDirection : float = 60;
private var angle : Vector3;
var damping : float = 6.0;
var controller : CharacterController;
function Update()
{
distance = Vector3.Distance(target.position, transform.position);
if(distance > aggroRange)
{
moveSpeed = 1;
timeToChangeDirection -= 0.1;
if (timeToChangeDirection <= 0)
{
ChangeDirection();
}
controller.Move(transform.forward * Time.deltaTime);
animation["Run"].speed = 0.25;
animation.Play("Run");
}
function ChangeDirection()
{
angle = Vector3(transform.rotation.x, Random.Range(-359, 359), transform.rotation.y);
transform.Rotate(angle);
timeToChangeDirection = 60;
}
【问题讨论】:
-
您的问题是什么?如何获得随机方向?
-
是的。将编辑我的帖子以使其更清楚。
标签: random unity3d artificial-intelligence unityscript