How to make a spawner wait for x seconds?

Hello guys. I don’t know how to do it but here’s my code;

    //This is array List;
    var randomObject : GameObject[];
     
    function Update () {
     
    var randomSelect = Random.Range(0,(randomObject.length));
     
    var position = transform.TransformPoint(Random.Range(-3.704676, 5.132769), 0, Random.Range(-3.704676, 5.132769));
    
    Instantiate(randomObject[randomSelect], position, Quaternion.identity);
     
    }

So, in a manner I want to coroutine this event. but wait for random ! like wait for 3 secs, later wait for 5 secs, later wait for 0 secs etc… But I can’t coroutine Update Function ! What can i do ? Arigato.

You Could try

public float RandomTime;

void Awake()
	{

		StartCoroutine( RandomSpawn() );
	}

        void Update()
{

    RandomTime = Random.Range(1, 100);
}
	

	IEnumerator RandomSpawn()
	{
		while( true )
		{
			//Spawn

			yield return new WaitForSeconds( RandomTime );
		}
	}

Maybe a Solution;

Well, if you made a new function, you could use the WaitForSeconds() there.

try something like this:

var spawnReady = true;

function Update () {
 
        if (spawnReady)
            Spawn();
    }


function Spawn () {
    spawnReady = false;
    yield WaitForSeconds(5);
    var randomSelect = Random.Range(0,(randomObject.length));
 
    var position = transform.TransformPoint(Random.Range(-3.704676, 5.132769), 0, Random.Range(-3.704676, 5.132769));
 
    Instantiate(randomObject[randomSelect], position, Quaternion.identity);

    
    spawnReady = true;
}