[RESOLVIDO] Como verificar a tag de um filho de um GameObject
3 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Como verificar a tag de um filho de um GameObject
Hello Word!
Não encontro uma forma de criar uma função, se alguém poder me ajudar eu agradeço.
Eu tenho um Pai(GameObject) esse Pai tem uma Criança(GameObject) e após algum click essa Criança(GameObject) Recebe outra Criança(GameObject) ou seja Pai_filho_filho.
Eu quero verifica a "TAG" do ultimo filho, e o script está no Pai. Eu tenho mais ou menos isso ate o momento.
Assim ele verifica a "TAG" do filho, mas eu não consigo pensar em uma forma para verificar a "Tag" do filho de "m_Slot".
Não encontro uma forma de criar uma função, se alguém poder me ajudar eu agradeço.
Eu tenho um Pai(GameObject) esse Pai tem uma Criança(GameObject) e após algum click essa Criança(GameObject) Recebe outra Criança(GameObject) ou seja Pai_filho_filho.
Eu quero verifica a "TAG" do ultimo filho, e o script está no Pai. Eu tenho mais ou menos isso ate o momento.
- Código:
public GameObject[] m_Slot; // Aqui é a criança que vai receber a outra criança
void Update()
{
foreach (GameObject child in m_Slot)
{
if (child.gameObject.tag == "Frente")
{
print("Frente!");
}
}
}
Assim ele verifica a "TAG" do filho, mas eu não consigo pensar em uma forma para verificar a "Tag" do filho de "m_Slot".
Última edição por recagonlei em Ter Fev 06, 2018 10:03 am, editado 2 vez(es) (Motivo da edição : Resolvido)
Kodi- Iniciante
- PONTOS : 2492
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO] Como verificar a tag de um filho de um GameObject
Creio que você já saiba o básico da programação, então com o m_Slot.Length pra saber quantos objetos tem na m_slot
Booom, estou fazendo na mão, então não sei se vai pegar mas a ideia é essa:
m_Slot.Length busca quantos objetos tem na m_slot, ex: tem 1 vai retornar 1 tem 2 vai retornar 2 Porem, o index para buscar começa com 0 então se tem 1 é igual 0 se tem 2 é 1 e assim vai.
Obs, coloque uma verificação antes para ver se tem objetos if(m_Slot.Length > 0 ){}
- Código:
if(m_Slot[m_Slot.Length - 1].gameObject.tag == "tag"){
função
}
Booom, estou fazendo na mão, então não sei se vai pegar mas a ideia é essa:
m_Slot.Length busca quantos objetos tem na m_slot, ex: tem 1 vai retornar 1 tem 2 vai retornar 2 Porem, o index para buscar começa com 0 então se tem 1 é igual 0 se tem 2 é 1 e assim vai.
Obs, coloque uma verificação antes para ver se tem objetos if(m_Slot.Length > 0 ){}
Zecker- Iniciante
- PONTOS : 2505
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] Como verificar a tag de um filho de um GameObject
Ok Obrigado, mas eu consegui chegar no resultado desejado da seguinte forma.Zecker escreveu:Creio que você já saiba o básico da programação, então com o m_Slot.Length pra saber quantos objetos tem na m_slot
- Código:
if(m_Slot[m_Slot.Length - 1].gameObject.tag == "tag"){
função
}
Booom, estou fazendo na mão, então não sei se vai pegar mas a ideia é essa:
m_Slot.Length busca quantos objetos tem na m_slot, ex: tem 1 vai retornar 1 tem 2 vai retornar 2 Porem, o index para buscar começa com 0 então se tem 1 é igual 0 se tem 2 é 1 e assim vai.
Obs, coloque uma verificação antes para ver se tem objetos if(m_Slot.Length > 0 ){}
- Código:
public Transform[] m_Slot;
void Update()
{
m_Slot = GetComponentsInChildren<Transform>();
}
public void CheckResult()
{
foreach (Transform child in m_Slot)
{
if (child.CompareTag("Frente"))
{
print("Frente");
}
}
}
Não sei se essa é a melhor maneira
Kodi- Iniciante
- PONTOS : 2492
REPUTAÇÃO : 0
Respeito as regras :
Re: [RESOLVIDO] Como verificar a tag de um filho de um GameObject
Só tira esse m_slot da void Update, pois o GetComponent é bem pesado pra ficar chamando a todo frame, acaba não sendo uma maneira otimizada e correta de se usar o componente.
@edit: utilize nomes mais explicativos, ajude a compreender melhor a sua dúvida. Tópico resolvido, movido e bloqueado!
@edit: utilize nomes mais explicativos, ajude a compreender melhor a sua dúvida. Tópico resolvido, movido e bloqueado!
Tópicos semelhantes
» Como selecionar um único filho de um Gameobject?
» [RESOLVIDO] como verificar se o navmesh chegou na posição
» [RESOLVIDO] Verificar se todos os objetos add em um array de gameobject estão ativos
» [RESOLVIDO] Instanciar um objeto como filho
» [RESOLVIDO] Como verificar se o objeto é diferente de null
» [RESOLVIDO] como verificar se o navmesh chegou na posição
» [RESOLVIDO] Verificar se todos os objetos add em um array de gameobject estão ativos
» [RESOLVIDO] Instanciar um objeto como filho
» [RESOLVIDO] Como verificar se o objeto é diferente de null
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos