Força a um objeto numa lista
Página 1 de 1
Força a um objeto numa lista
Bom dia, necessito adicionar força de movimento a um prefab cujo qual foi instanciado pois se eu deixo apenas o "transform.position" sem referencia acaba que o objeto na cena que spawna a nuvem acaba se movendo junto e eu quero/preciso que o mesmo fique centralizado na tela.
Aproveitando a oportunidade gostaria de pedir ajuda para resolver um bug que ocorre tambem com as nuvens, elas devem spawnar no canto direito ir ate o esquerdo e teleportar para o direito iniciando o processo todo dnv, porem algumas vezes 1 ou 2 nuvens spawnam no meio da tela e isso acaba deixando o jogo "feio", segue os scripts.
Spawna a nuvem:
(Note aquele "transform.object", é nele que quero colocar a referencia a um desses prefabs instanciados)
Este da a nuvem o movimento:
Aproveitando a oportunidade gostaria de pedir ajuda para resolver um bug que ocorre tambem com as nuvens, elas devem spawnar no canto direito ir ate o esquerdo e teleportar para o direito iniciando o processo todo dnv, porem algumas vezes 1 ou 2 nuvens spawnam no meio da tela e isso acaba deixando o jogo "feio", segue os scripts.
Spawna a nuvem:
(Note aquele "transform.object", é nele que quero colocar a referencia a um desses prefabs instanciados)
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class spawnnuvem : MonoBehaviour
{
List<GameObject> prefabList = new List<GameObject>();
public GameObject Prefab1;
public GameObject Prefab2;
public GameObject Prefab3;
public GameObject Prefab4;
public GameObject Prefab5;
void Start()
{
StartCoroutine(spawnnuvemm());
prefabList.Add(Prefab1);
prefabList.Add(Prefab2);
prefabList.Add(Prefab3);
prefabList.Add(Prefab4);
prefabList.Add(Prefab5);
}
IEnumerator spawnnuvemm ()
{
for (int i = 0; i < 5; i++)
{
yield return new WaitForSeconds(Random.Range(5,10));
int prefabIndex = UnityEngine.Random.Range(0,5);
Instantiate(prefabList[prefabIndex]);
transform.position = transform.position + new Vector3 (25, Random.Range (-3.5f, 3.5f), 0);
}
}
// Update is called once per frame
void Update()
{
}
}
Este da a nuvem o movimento:
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class velocidadenuvem : MonoBehaviour {
public float velocidade = 0.050f;
bool podeMover = true;
void Start() {
podeMover = true;
}
void Update() {
if (podeMover) {
transform.position = transform.position + new Vector3(-velocidade, 0, 0);
}
if (transform.position.x < -35) {
transform.position = new Vector3(35, Random.Range(-3.5f, 3.5f), 0);
}
if (Input.GetMouseButtonDown(0)) {
StartCoroutine("reespawnar");
}
}
IEnumerator reespawnar() {
podeMover = false;
transform.position = new Vector3(35, Random.Range(-3.5f, 3.5f), 0);
yield return new WaitForSeconds(Random.Range(5, 10));
podeMover = true;
}
}
maxwarnava- Membro
- PONTOS : 1819
REPUTAÇÃO : 3
Respeito as regras :
Re: Força a um objeto numa lista
Esqueci de mencionar acima que o objeto é instanciado a partir de uma lista
maxwarnava- Membro
- PONTOS : 1819
REPUTAÇÃO : 3
Respeito as regras :
Tópicos semelhantes
» alguem pode me ajudar com essa adição de item numa lista?
» Como guardar os itens das slots numa lista para ser carregado num botão? Un
» força de impacto em npc proximo a objeto que explode
» Calcular força do impacto recebido pelo objeto
» [RESOLVIDO] Verificar se objeto ja existe em um Lista
» Como guardar os itens das slots numa lista para ser carregado num botão? Un
» força de impacto em npc proximo a objeto que explode
» Calcular força do impacto recebido pelo objeto
» [RESOLVIDO] Verificar se objeto ja existe em um Lista
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos