Não Consigo pegar componetes de um prefab
4 participantes
Página 1 de 1
Não Consigo pegar componetes de um prefab
Olá pessoal estou tendo problemas para pegar os componentes de um PREFAB, assim ele é o player ele tem um 2 tipos de escudo nele que ficam desabilitados para ativar é só preciso apertar o botão.
Bom quando criei o PREFAB do player estava com erro no Gameobject que fica na cena ele é responsável por pegar os atributos do PLAYER esse gameobject do ESCUDO nele coloquei um SCRIPT para iniciar quando o player for colocado em cena e repetir a cada 2seg no AWAKE:
Porem ele continuar não achando a referencia
Grato desde já..
Bom quando criei o PREFAB do player estava com erro no Gameobject que fica na cena ele é responsável por pegar os atributos do PLAYER esse gameobject do ESCUDO nele coloquei um SCRIPT para iniciar quando o player for colocado em cena e repetir a cada 2seg no AWAKE:
- Código:
void Awake()
{
if (_escudo != null)
{
_escudo = GameObject.Find("Escudo").GetComponent<GameObject>();
}
else
{
InvokeRepeating("checkComponentes", 0f, 2f);
}
}
- Código:
void checkComponentes()
{
_escudo = GameObject.Find("Escudo").GetComponent<GameObject>();
}
Porem ele continuar não achando a referencia
Grato desde já..
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Amigo, o GetComponent ali é desnecessário, além disso, não entendi a sua explicação, está confusa, talvez com imagens melhoraria.
Obs.: Você poderia deixar os escudos desativados, mas daí o player pode ativar um ou outro no decorrer do game.
Obs.: Você poderia deixar os escudos desativados, mas daí o player pode ativar um ou outro no decorrer do game.
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Link Imagem SS
https://uploaddeimagens.com.br/imagens/capturar-png-4e174148-c6ca-4b3e-9863-7112c3e9ad5f
Entao tirei mais ele remove o gameobject quando inicio o game
https://uploaddeimagens.com.br/imagens/capturar-png-4e174148-c6ca-4b3e-9863-7112c3e9ad5f
Entao tirei mais ele remove o gameobject quando inicio o game
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Eu também não entendi bem a sua dúvida, mas pq ao invés de usar o Find, vc não referencia os escudos pelo inspector? Seria mais prático.
Re: Não Consigo pegar componetes de um prefab
MayLeone escreveu:Eu também não entendi bem a sua dúvida, mas pq ao invés de usar o Find, vc não referencia os escudos pelo inspector? Seria mais prático.
Então isso já fiz porem quando desativo o objeto no game e ligo de novo ele já não acha mais o objeto em cena porque ele está desativado.
tem alguma maneira de quando instanciar o objeto ele acha-lo e no decorrer do jogo ele ficar achando toda vez que desativar? na minha GUi tem um botão que controla essa ação.
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Mas mesmo desativado, era para ele achar.. Qual a sua versão da Unity? O_o
NKKF- ProgramadorMaster
- PONTOS : 4818
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Olá, blz?NKKF escreveu:Mas mesmo desativado, era para ele achar.. Qual a sua versão da Unity? O_o
estou usando 2018.1f
estave vendo algumas coisas de getcomponentinParent, getcomponentChildren mais sem sucesso.
tambem tenho outras versoes 5.6 e 2017
Jmspp- Avançado
- PONTOS : 2826
REPUTAÇÃO : 6
Idade : 37
Respeito as regras :
Re: Não Consigo pegar componetes de um prefab
Jmspp seu player tem 2 escudos desabilitados e quando vc aperta um botão ativa um escudo só, é isso? ou aperta o botão e ativa os dois escudos?
vc pode criar dois objetos filhos dentro do player e deixar os dois desabilitados.
aí no script vc coloca:
espero que isto lhe sirva ^ ^
vc pode criar dois objetos filhos dentro do player e deixar os dois desabilitados.
aí no script vc coloca:
- Código:
public GameObject _escudo1;
public GameObject _escudo1;
public bool escudo1Ativado = false;
public bool escudo2Ativado = false;
void Update() {
if(Input.GetKeyDown(KeyCode.X)) {
escudo1Ativado = !escudo1Ativado;
}
if(Input.GetKeyDown(KeyCode.C)) {
escudo2Ativado = !escudo2Ativado;
}
if(escudo1Ativado) {
_escudo1.SetActive(true);
}
else {
_escudo1.SetActive(false);
}
if(escudo2Ativado) {
_escudo2.SetActive(true);
}
else {
_escudo2.SetActive(false);
}
}
espero que isto lhe sirva ^ ^
Flávio- MembroAvançado
- PONTOS : 2831
REPUTAÇÃO : 29
Áreas de atuação : Aprendizagem em:
Programação C#;
Pixelart
Respeito as regras :
Tópicos semelhantes
» transformar um prefab em gameobject
» Prefab De GUI fica com um X
» PREFAB(clone)
» Ethan prefab
» PROBLEMA COM PREFAB
» Prefab De GUI fica com um X
» PREFAB(clone)
» Ethan prefab
» PROBLEMA COM PREFAB
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos