Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
3 participantes
Página 1 de 1
Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
Boa noite pessoal, preciso de ajuda para finalizar meu jogo.
eu fiz um botão UI (Toggle) para ativar e desativar o som de todo o jogo, mas eu queria que esse botão aparecesse em todas as cenas, já tentei o comando DontDestroyOnLoad mas não funciona. Alguém teria uma alternativa?
eu fiz um botão UI (Toggle) para ativar e desativar o som de todo o jogo, mas eu queria que esse botão aparecesse em todas as cenas, já tentei o comando DontDestroyOnLoad mas não funciona. Alguém teria uma alternativa?
Rayllander- Iniciante
- PONTOS : 2401
REPUTAÇÃO : 1
Respeito as regras :
Re: Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
você tem que definir uma referência ao objeto
Ex.
Boa Noite.
Ex.
- Código:
GameObject toogle;
void awake(){DontDestroyOnLoad(toogle)};
Boa Noite.
ffabim- MembroAvançado
- PONTOS : 3355
REPUTAÇÃO : 69
Respeito as regras :
Re: Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
ffabim escreveu:você tem que definir uma referência ao objeto
Ex.
- Código:
GameObject toogle;
void awake(){DontDestroyOnLoad(toogle)};
Boa Noite.
Bom dia obrigado pela atenção.
Então eu fiz como você falou e não deu certo.
- Código:
public class BTNmut : MonoBehaviour {
GameObject toogle;
void Awake()
{
DontDestroyOnLoad(toogle);
}
}
Coloquei este script no botão Toogle porém ele ainda foi destruído na cena seguinte, desculpe se não fiz certo, sou iniciante.
Desde já agradeço a atenção e ajuda.
Rayllander- Iniciante
- PONTOS : 2401
REPUTAÇÃO : 1
Respeito as regras :
Re: Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
é Só vc arrasta o canvas para o toggle no Inspector da sua cena,ja que ele é o pai,
obs: qualquer outro Elemento que esteja dentro do canvas tambem sera levado para outras cenas
apenas corrigindo o script,
boa tarde.
obs: qualquer outro Elemento que esteja dentro do canvas tambem sera levado para outras cenas
- Código:
using UnityEngine;
public class BTNmut : MonoBehaviour {
[Header("arraste o Canvas para o toggle")] //header e um tipo de ajuda no inspector fica em cima de uma varíavel publica
public GameObject toogle; //no Inspector arraste o canvas para o campo toggle
void Awake(){
DontDestroyOnLoad(toogle);
}
}
apenas corrigindo o script,
boa tarde.
Re: Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
felipehobs1 escreveu:é Só vc arrasta o canvas para o toggle no Inspector da sua cena,ja que ele é o pai,
obs: qualquer outro Elemento que esteja dentro do canvas tambem sera levado para outras cenas
- Código:
using UnityEngine;
public class BTNmut : MonoBehaviour {
[Header("arraste o Canvas para o toggle")] //header e um tipo de ajuda no inspector fica em cima de uma varíavel publica
public GameObject toogle; //no Inspector arraste o canvas para o campo toggle
void Awake(){
DontDestroyOnLoad(toogle);
}
}
apenas corrigindo o script,
boa tarde.
Boa tarde, eu estou enviando uma foto para facilitar o entendimento da minha hierarquia, eu queria que somente o botão em AMARELO, denominado de "MUTE" (que é o botão Toggle) ficasse entre as cenas, eu criei um novo objeto denominado "BNTM" onde botei o script, e logo após botei o botão "MUTE" (que é o botão Toogle), porém ele foi destruído quando carregou a outra cena.
Segue também os componentes que constitui o meu botão "MUTE" para ver se falta algum componente.
Desde já me desculpo por minha falta de conhecimento e agradeço a compreensão.
Rayllander- Iniciante
- PONTOS : 2401
REPUTAÇÃO : 1
Respeito as regras :
Re: Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
Bom dia gente, com a ajuda do felipe consegui resolver meu problema da seguinte forma ele criei um novo Canvas e coloquei o botão MUTE(UI Toggle) dentro deste CANVAS2 e adicionei o seguinte script no botão.
Segue a imagem da minha hierarquia.
Segue o script usado para o botão ficar entre as cenas.
Logo após isso fiz um script para o Canvas2, para destruir se houver cópia do Canvas2 consequentemente do botão MUTE (Toggle).
Peço desculpa se meus scripts podia ser feitos de outras forma, mas como tenho pouco conhecimento só consegui resolver desta forma e graças a ajuda do felipe e com o intuito de ajudar está ai como consegui.
Segue a imagem da minha hierarquia.
Segue o script usado para o botão ficar entre as cenas.
- Código:
public class BTNmut : MonoBehaviour {
private static BTNmut instanceRef;
void Awake()
{
if (instanceRef == null) {
instanceRef = this;
DontDestroyOnLoad (gameObject);
}
else
{
DestroyImmediate (gameObject);
}
}
}
Logo após isso fiz um script para o Canvas2, para destruir se houver cópia do Canvas2 consequentemente do botão MUTE (Toggle).
Peço desculpa se meus scripts podia ser feitos de outras forma, mas como tenho pouco conhecimento só consegui resolver desta forma e graças a ajuda do felipe e com o intuito de ajudar está ai como consegui.
- Código:
public class TEST : MonoBehaviour {
public void Awake()
{
DontDestroyOnLoad (this);
if (FindObjectsOfType (GetType ()).Length > 1)
{
Destroy (gameObject);
}
}
}
Rayllander- Iniciante
- PONTOS : 2401
REPUTAÇÃO : 1
Respeito as regras :
Tópicos semelhantes
» (DÚVIDA) Como desligar os sons de todas as cenas?
» Load de músicas e de cenas , como fazer?
» como fazer uma ação ao ligar ou desligar o toggle
» Como trocar todas as SpritesSheets do animator no Unity2D?
» Como Posso Fazer isto ? Marco Uma Toggle no Canvas e um Mesh Seja ativado ?
» Load de músicas e de cenas , como fazer?
» como fazer uma ação ao ligar ou desligar o toggle
» Como trocar todas as SpritesSheets do animator no Unity2D?
» Como Posso Fazer isto ? Marco Uma Toggle no Canvas e um Mesh Seja ativado ?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos