A cada vez que o zumbi é instanciado , alem de ser criado no GeradorZumbis, ele também é instanciado no zumbis vivos.
A cada vez que o zumbi é instanciado , alem de ser criado no GeradorZumbis, ele também é instanciado no zumbis vivos.
Oi, tudo bem?
Pelo que você descreveu, parece que o script GeradorZumbis
está instanciando os zumbis diretamente na posição do objeto GeradorZumbis
. Se os zumbis estão sendo criados exatamente no mesmo ponto, eles vão aparecer sobrepostos. Uma solução que você poderia tentar é: ajustar a posição de cada novo zumbi um pouco para garantir que eles não se sobreponham.
Algo assim:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GeradorZumbis : MonoBehaviour {
public GameObject Zumbi;
float contadorTempo = 0;
public float TempoGerarZumbi = 1;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
contadorTempo += Time.deltaTime;
if(contadorTempo >= TempoGerarZumbi)
{
Vector3 posicaoNova = new Vector3(transform.position.x + Random.Range(-1.0f, 1.0f), transform.position.y, transform.position.z + Random.Range(-1.0f, 1.0f));
Instantiate(Zumbi, posicaoNova, transform.rotation);
contadorTempo = 0;
}
}
}
No código usei Random.Range(-1.0f, 1.0f)
pra alterar ligeiramente a posição x
e z
do zumbi cada vez que um novo é instanciado. Isso vai ajudar a evitar que eles se sobreponham exatamente no mesmo ponto. Você pode ajustar os valores -1.0f
e 1.0f
para aumentar ou diminuir o espaço entre os zumbis gerados.
Você também pode experimentar e ver como os zumbis são instanciados com essas alterações. E tentar as suas alterações também.
Um abraço e bons estudos.