- Home /
How to teleport to a random location in a defined range within a random time span?
Hi! So, I've been looking around Unity and I've found a couple scripts for teleporting a unit to a random location within a defined range and a script to wait for a random amount of seconds between a given range before executing a certain function. Also, I've made a boolean, but I realize, with the way my script is set up now, it doesn't really need it. My only real problem is that, initially, the script waits for that random interval of time before teleporting the unit, for the first time. After the first time, it continues to teleport the unit within the defined range, but not the defined time span. I was wondering if I could make it to where it invoked the "Wait" function every time it decided to teleport? Here's the script:
var destination:Vector3;
var teleport : boolean = false;
function Update ()
{
if(teleport == false)
{
Wait();
}
else{
Teleport ();
}
}
function Wait ()
{
var teleport = false;
yield WaitForSeconds (Random.Range(5,10));
Teleport();
}
function Teleport ()
{
var teleport = true;
destination=Vector3(Random.Range(-20,20),Random.Range(1.57,1.57),Random.Range(0.5,95));
transform.position = destination;
Wait();
}
I'm still a little new to the scripting thing, so it may take some time for me to understand your answers, however, I do appreciate any help!
Your answer
Follow this Question
Related Questions
yield waitforseconds doesnt work on function start 2 Answers
Can someone help me fix my Javascript for Flickering Light? 6 Answers
Issues with randomly moving a cube 3 Answers
How can I make a variable false for a period of time? 3 Answers
Gun script help 1 Answer