- Home /
Random replace objects with random times? fixed location
What I'm trying to achieve is have a library of 2-3 objects and they keep replacing each other at random, with random amount of time each stays.
something like maybe have a null - which I can place at point i want to spawn objects at, and then attach 2-3 objects to that which it keeps calling with random amount of timeframes.?
Please help out, totally new to unity's coding rn.
next part- can i also put different random transitions when one object replaces/transformed in other?
Answer by CherryPicker · Sep 19, 2018 at 10:22 AM
My guess would be that you need 2 functions.
One would be RandTime() to choose a random ammount of seconds to wait. Then you need RandObject() to choose a random object to instantiate
Here is approximatively what it would look like :
Vector 3 spawnPoint = new Vector3 ([whatever location you like])
GameObject[] customObjects = new GameObject[3]
customObjects[0] = ... (whatever you like);
customObjects[1] = ... (whatever you like);
customObjects[2] = ... (whatever you like);
GameObject currentInstantiatedObject;
int RandTime() {
int timeToWait = Random.Range(1,5);
return timeToWait;
}
GameObject RandObject(GameObject[] objects) {
int whichObjectToReturn = Random.Range(-1, objects.Length - 1);
return objects[whichObjectToReturn];
}
void Start() {
currentInstantiatedObject = (GameObject) Instantiate(RandObject(customObjects), spawnPoint);
}
void checkNewObject()
{
GameObject newObject = Invoke("RandObject", RandTime());
if (newObject != currentInstantiatedObject)
{
Destroy(currentInstantiedObject, 0f);
// you can also put an animation here if you want a transition
currentInstantiatedObject = (GameObject) Instantiate (newObject, spawnPoint);
}
}
Update() {
checkNewObject();
}
I'm sure the syntax is not exactly correct, but these are the steps you should be taking logically speaking.
Your answer
Follow this Question
Related Questions
When spawning to a grid, how to only spawn one object next to another? 1 Answer
Beginner question about 'SetParent'; Why is it necessary to make the script work? 1 Answer
how can i random a spawning but not same gameobject 1 Answer
Spawning two bullets at once! 1 Answer
Instantiate random object from Array 2 Answers