Como fazer um sistema de Spawn aleatório?
5 participantes
Página 1 de 1
Como fazer um sistema de Spawn aleatório?
Estou criando um game de terror e quero fazer um sistema de spawn aleatório de uma chave. tentei fazer pelo o que eu conheço de programação.
mas está dando erro. se alguém poder me ajudar, agradeço desde já..
- Código:
using UnityEngine;
using System.Collections;
public class Spawn : MonoBehaviour {
public GameObject Chave;
public GameObject[] localChave;
public int minChave = 1, maxChave = 1;
void Start () {
int quantidade = Random.Range (minChave,maxChave);
if(quantidade > localChave.Length){
quantidade = localChave.Length;
}
for(int x = Random.Range (0,2); x < quantidade; x++){
Instantiate(Chave,localChave[x].transform.position,transform.rotation);
}
}
}
mas está dando erro. se alguém poder me ajudar, agradeço desde já..
DGDark- Iniciante
- PONTOS : 3033
REPUTAÇÃO : 3
Respeito as regras :
Re: Como fazer um sistema de Spawn aleatório?
Talvez ajude você https://unity3d.com/pt/learn/tutorials/projects/survival-shooter/more-enemies
Re: Como fazer um sistema de Spawn aleatório?
Tem hora que da o spawn tem hora que não, e sempre no mesmo lugar mesmo que eu tenha colocado os locaisMayLeone escreveu:Qual erro está dando?
acho que esse script está montado errado
DGDark- Iniciante
- PONTOS : 3033
REPUTAÇÃO : 3
Respeito as regras :
Re: Como fazer um sistema de Spawn aleatório?
O que eu quero fazer é que a chave spawna em lugares diferentes do mapa cada vez que o jogo é iniciado
DGDark- Iniciante
- PONTOS : 3033
REPUTAÇÃO : 3
Respeito as regras :
Re: Como fazer um sistema de Spawn aleatório?
Você terá que utilizar este método:
Pois se você precisa gerar uma posição aleatória, mas sem repetir ela para cada número de objetos instanciados.
Pois se você precisa gerar uma posição aleatória, mas sem repetir ela para cada número de objetos instanciados.
Re: Como fazer um sistema de Spawn aleatório?
boa noite,inves d x<quantidade, poderia colocar x<localchave.length, vai depender tambem do numero d chave,
Edit: ou melhor remover o for e apenas deixar apenas o Instatiate
Edit: ou melhor remover o for e apenas deixar apenas o Instatiate
- Código:
Instantiate(Chave, localChave[Random.Range(0,localChave.Length)].transform.position, transform.rotation);
Última edição por FelipeSouza11 em Qui Jul 26, 2018 9:20 pm, editado 1 vez(es)
Re: Como fazer um sistema de Spawn aleatório?
Um exemplo simples, que funciona de forma perfeita:
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Spawn : MonoBehaviour {
public GameObject chave;
public GameObject[] posicoes;
[Range(1,50)]
public int maximoDeChaves = 5;
List<int> numeros = new List<int>();
void Start () {
int maxChaves = Random.Range (1, maximoDeChaves + 1);
if (maxChaves > posicoes.Length) {
maxChaves = posicoes.Length;
}
for (int x = 0; x < posicoes.Length; x++) {
numeros.Add (x);
}
for (int x = 0; x < maxChaves; x++) {
if (numeros.Count > 0) {
GerarNumerosAleatorios ();
}
}
}
void GerarNumerosAleatorios(){
int indice = Random.Range (0, numeros.Count);
int numeroSorteado = numeros [indice];
Instantiate (chave, posicoes [numeroSorteado].transform.position, posicoes [numeroSorteado].transform.rotation);
numeros.Remove (numeros [indice]);
}
}
Tópicos semelhantes
» Como parar o spawn aleatório?
» Como posso fazer um botão de ligar um GameObject aleatorio?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
» Alguém poderia fazer uma aula de como criar um sistema de fazer o personagem trocar de equipamento?
» como fazer um sistema de construçao de base? (como se fosse o do rust)
» Como posso fazer um botão de ligar um GameObject aleatorio?
» Como fazer Sistema Dia e Noite Segui o sistema de Hora
» Alguém poderia fazer uma aula de como criar um sistema de fazer o personagem trocar de equipamento?
» como fazer um sistema de construçao de base? (como se fosse o do rust)
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos