6. Criando Spawn dos Obstáculos - TanookiVerde/WorkshopUnity GitHub Wiki

  1. Vamos agora criar um Game Object que cria obstáculos.
  2. Crie um Game Object Vazio, chame ele de Spawner.
  3. Agora crie um novo Script para ser o componente que cria os obstáculos. Vamos chamar ele de Spawner.
  4. Dentro deste script teremos o seguinte código:
(...)

public class Spawner : MonoBehaviour
{
    [SerializeField]
    private GameObject spawnableObject; //O objeto a ser criado
    [SerializeField]
    private float minTimeBetweenSpawns; //Tempo mínimo entre as criações
    [SerializeField]
    private float maxTimeBetweenSpawns; //Tempo máximo entre as criações

    private void Start()
    {
        StartCoroutine(SpawnLoop()); //Inicia uma Corotina
    }
    private IEnumerator SpawnLoop() 
    {
        while(true) // Fica em loop para sempre
        {
            float wait = Random.Range(minTimeBetweenSpawns, maxTimeBetweenSpawns); // gera um numero aleatorio representando o tempo de espera
            yield return new WaitForSeconds(wait); //espera esse tempo aleatorio
            Spawn(); //Cria o obstáculo
        }
    }
    public void Spawn()
    {
        GameObject newObject = Instantiate(spawnableObject); //Cria na cena um clone do Game Object em spawnableObject
        newObject.transform.position = transform.position; //Muda a posição do Game Object criado para a mesma deste Game Object
    }
}

  1. Note que precisamos configurar ainda os valores das propriedades definidas.