Como setar uma prefab em cima da outra por script ???
2 participantes
Página 1 de 1
Como setar uma prefab em cima da outra por script ???
tem uma prefab q estaria em branco e tenho outras
ou seja eu queria que a prefab A(em branco) fosse substituída pela prefab B(uma aleatória) em um script
seria possível ? (n parece ter como fazer isso :C ) , caso sim como?
qualquer ajuda eu agradeço
ou seja eu queria que a prefab A(em branco) fosse substituída pela prefab B(uma aleatória) em um script
seria possível ? (n parece ter como fazer isso :C ) , caso sim como?
qualquer ajuda eu agradeço
Re: Como setar uma prefab em cima da outra por script ???
acho que voce quer que uma certa prefab seja subistituida por outra aleatoria via script isso? e possivel sim..luiz12345 escreveu:tem uma prefab q estaria em branco e tenho outras
ou seja eu queria que a prefab A(em branco) fosse substituída pela prefab B(uma aleatória) em um script
seria possível ? (n parece ter como fazer isso :C ) , caso sim como?
qualquer ajuda eu agradeço
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class teste : MonoBehaviour {
public GameObject[] prefabsNovos;
public GameObject prefabAtual;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update() {
if (Input.GetButtonDown("Jump"))
{
int i = prefabsNovos.Length;
int randomprefab = Random.Range(0, i);
prefabAtual = prefabsNovos[randomprefab];
}
}
}
}
BASTA IR NO INSPECTOR E ADICIONAR NAS PREFABNOVOS A QUANTIDADE DE PREFAB QUE DESEJA E A ADCIONAR TODAS AS PREFAB QUE DESEJA.
E NA PREFABATUAL , TEM QUE POR A PREFAB EM BRANCO..
Re: Como setar uma prefab em cima da outra por script ???
vlw boa ideia , eu estava pensando em mudar a prefab de outro jeito mais esse já serve bastante vlw vlw :D
Re: Como setar uma prefab em cima da outra por script ???
soh mais uma coisa. como eu pego a prefab atual em outro script pois eu queria instanciar ela mais n daria pra ser no mesmo script.
por um motivo n daria para pegar e arrastar, então teria como eu, no outro script ,checar o nome do objeto que carrega este script e pegar a prefab dele?
soh pra ficar claro o nome do objeto que tem esse script e fixo porem os que precisam da prefab são muitos , e são instanciados ,não podendo arrastar o componente ate eles
por um motivo n daria para pegar e arrastar, então teria como eu, no outro script ,checar o nome do objeto que carrega este script e pegar a prefab dele?
soh pra ficar claro o nome do objeto que tem esse script e fixo porem os que precisam da prefab são muitos , e são instanciados ,não podendo arrastar o componente ate eles
Re: Como setar uma prefab em cima da outra por script ???
amigo tenta colocar seu codigo aqui para que possamos enteder.. pois nao consigo saber oque voce quer exatamente; mais acho que entendi oque quis dizer..luiz12345 escreveu:soh mais uma coisa. como eu pego a prefab atual em outro script pois eu queria instanciar ela mais n daria pra ser no mesmo script.
por um motivo n daria para pegar e arrastar, então teria como eu, no outro script ,checar o nome do objeto que carrega este script e pegar a prefab dele?
soh pra ficar claro o nome do objeto que tem esse script e fixo porem os que precisam da prefab são muitos , e são instanciados ,não podendo arrastar o componente ate eles
Re: Como setar uma prefab em cima da outra por script ???
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
- Código:
public class Minerio : MonoBehaviour {
public GameObject MinerioEmSi;
public GameObject PrefabEspada1;
public bool Fritando;
public bool Frito;
public Transform LocalEspada;
- Código:
- Código:
public bool Batido;
public int XBatido;
- Código:
public float tempo;
- Código:
public GameObject Fervorece;
- Código:
// Use this for initialization
void Start () {
- Código:
}
// Update is called once per frame
void Update () {
- Código:
if (Fritando == true)
{
- Código:
tempo = tempo + Time.deltaTime;
- Código:
}
else
{
tempo = 0;
}
if (tempo >= 10)
{
Fervorece.SetActive(true);
Frito = true;
}
- Código:
if (Batido == true && Frito == true)
{
XBatido = XBatido + 1;
Batido = false;
}
if (XBatido >= 4)
{
// aqui em baixo e para instanciar a prefab aleatoria
Instantiate(PrefabEspada1,transform.position,transform.rotation);
Destroy(MinerioEmSi);
/*porem como e um minério ele e uma prefab que não esta no jogo então tenque ser setado na função start, esta parte que não estou conseguindo*/
- Código:
}
- Código:
}
}
Re: Como setar uma prefab em cima da outra por script ???
desculpa n sei mais se e possível editar a mensagem e n tendi pq fica assim então vou por ele sem este modo :C
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Minerio : MonoBehaviour {
public GameObject MinerioEmSi;
public GameObject PrefabEspada1;
public bool Fritando;
public bool Frito;
public Transform LocalEspada;
public bool Batido;
public int XBatido;
public float tempo;
public GameObject Fervorece;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Fritando == true)
{
tempo = tempo + Time.deltaTime;
}
else
{
tempo = 0;
}
if (tempo >= 10)
{
Fervorece.SetActive(true);
Frito = true;
}
if (Batido == true && Frito == true)
{
XBatido = XBatido + 1;
Batido = false;
}
if (XBatido >= 4)
{
Instantiate(PrefabEspada1,transform.position,transform.rotation);
Destroy(MinerioEmSi);
}
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Minerio : MonoBehaviour {
public GameObject MinerioEmSi;
public GameObject PrefabEspada1;
public bool Fritando;
public bool Frito;
public Transform LocalEspada;
public bool Batido;
public int XBatido;
public float tempo;
public GameObject Fervorece;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Fritando == true)
{
tempo = tempo + Time.deltaTime;
}
else
{
tempo = 0;
}
if (tempo >= 10)
{
Fervorece.SetActive(true);
Frito = true;
}
if (Batido == true && Frito == true)
{
XBatido = XBatido + 1;
Batido = false;
}
if (XBatido >= 4)
{
Instantiate(PrefabEspada1,transform.position,transform.rotation);
Destroy(MinerioEmSi);
}
}
}
Re: Como setar uma prefab em cima da outra por script ???
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class teste : MonoBehaviour {
public GameObject[] prefabsNovos;
}
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class teste2 : MonoBehaviour {
public GameObject[] prefabsNovos;
public GameObject prefabAtual;
// Use this for initialization
void Start () {
prefabsNovos = GameObject.Find("nomeDoGameObject").GetComponent<teste>().prefabsNovos; // aqui pega
o prefabNovos do outro script (obs) ele tem que tar em um gameobject vazio com script test. e o nome que
tu deu para esse gameObeject tem que ser exatamente dentro do ""
}
// Update is called once per frame
void Update() {
if (Input.GetButtonDown("Jump"))
{
int i = prefabsNovos.Length;
int randomprefab = Random.Range(0, i);
prefabAtual = prefabsNovos[randomprefab];
}
}
}
}
Re: Como setar uma prefab em cima da outra por script ???
mt bom funcionou perfeitinho,isso eh tudo, vlw pela ajuda rápida :D
Tópicos semelhantes
» [RESOLVIDO] Como setar um valor de um animator no script.
» Como posso setar o valor nesse script?
» Aplicar "Prefab" por Script Tem Como?
» Assesar Script De Outra Script
» Como setar Lightmap UV
» Como posso setar o valor nesse script?
» Aplicar "Prefab" por Script Tem Como?
» Assesar Script De Outra Script
» Como setar Lightmap UV
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos