[RESOLVIDO] Erro após desativar o player
4 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] Erro após desativar o player
Boa tarde galera. No meu jogo, tem uma cutscene inicial e nela o player obviamente está desativado até um tempo. O problema é que há outros scripts que dependem do meu player ativado, e quando eu desativo o player para rodar a cutscene eles dão erro. Como resolver ?
Última edição por dstaroski em Qua Fev 07, 2018 4:01 pm, editado 2 vez(es) (Motivo da edição : Resolvido)
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Com "depender" você fala "linkados ao meu player" ou que, por exemplo, quando seu player está ativo ele deixa uma variável True que "ativa" o script? Se for o primeiro, me diga qual o código você está utilizando para desativar o player.
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Já vou adiantando: Provavelmente o seu caso é o primeiro e você está utilizando o SetActive para desativar o Player, certo? Esse comando vai desativar o player e tudo que tem nele (colider, scripts, mesh, etc). Se você quiser manter alguns componentes ativos (como Script), você pode utilizar o comand Enabled em determinados componentes (Mesh, para o player ficar invisível e script de movimento, para não movimentar o player, etc), daí os outros continuarão ativos.
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Nããão ahahah você entendeu errado. O problema do script não está no player. Está em outro gameObject que depende do player.
Vou testar este script aqui :
Vou testar este script aqui :
- Código:
public class ContadorNota : MonoBehaviour
{
public bool iniciarContador;
public float cronometro;
public GameObject nota;
public Text textoInicio;
void Start()
{
nota.gameObject.SetActive(false);
iniciarContador = true;
cronometro = 0;
}
void Update()
{
if (iniciarContador == true)
{
cronometro += Time.deltaTime;
}
if (cronometro >= 12.0f)
{
nota.gameObject.SetActive(true);
}
}
}
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Cara, eu continuo sem entender. Então o seu problema era em ativar novamente o objeto? Após a cutscene?
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Isso, meu problema continua sendo esse. Ativar o objeto depois da cutscene.
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Não conseguiu com esse script do cronômetro?
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Vou testar ele aqui e ver qual o erro.
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Consegui! Olha, aqui quando eu dei Start o meu cubo (que eu joguei no GameObject) desativou e depois do tempo que você definiu ele ativou de novo. Tava dando um erro com aquela variavel Texto do início, aí eu tirei ela. Qualquer coisa tenta adicionar aí. E uma coisa que eu mudei que eu tinha percebido quando li o seu código é que, quando você definiu o GameObject como "Nota", não precisa mais colocar nota.GameObject.SetActive e sim só nota.SetActive (link o seu objeto lá no inspector).
Tenta aí e me fala.
- Código:
public class ContadorNota : MonoBehaviour {
public bool iniciarContador;
public float cronometro;
public GameObject nota;
// Use this for initialization
void Start () {
nota.SetActive(false);
iniciarContador = true;
cronometro = 0;
}
// Update is called once per frame
void Update () {
if (iniciarContador == true)
{
cronometro += Time.deltaTime;
}
if (cronometro >= 12.0f)
{
nota.SetActive(true);
}
}
}
Tenta aí e me fala.
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Aqui no meu unity, no inspector, o tempo do cronometro não ta rodando :/
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Se eu remover este contador, eu tenho esse erro :
"Object reference not set to an instance of an object", porque o meu player está vinculado ao gameObject que eu to tentando desativar e ativar no mesmo momento que o player, sabe ? doskaodkaso Ta complicado, o cronometro não rodou :/
"Object reference not set to an instance of an object", porque o meu player está vinculado ao gameObject que eu to tentando desativar e ativar no mesmo momento que o player, sabe ? doskaodkaso Ta complicado, o cronometro não rodou :/
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Você linkou o objeto que você quer desativar no script? Pq o meu aparece esse erro até eu linkar. E uma dúvida: Qual a relação desse objeto com o player? ele está dentro do player?
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Esse objeto é uma carta, e precisa do player para calcular a distancia entre ele e o player para habilitar o "E" para pegar essa carta. Mas eu pensei um pouco aqui e criei uma outra variavel neste script :
- Código:
using UnityEngine;
using System.Collections;
public class Intro : MonoBehaviour
{
public float time = 0.0f;
public GameObject Jogador;
public GameObject Nota;
public GameObject Cena;
public float tempoAnimacao;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
time += Time.deltaTime;
if (time >= tempoAnimacao) {
Jogador.gameObject.SetActive(true);
Nota.gameObject.SetActive(true);
Cena.gameObject.SetActive(false);
}
}
}
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Ah, bem melhor mesmo. Desativa tudo que tem que desativar no mesmo script e utiliza um só cronômetro. Boa sorte com o projeto!
IanLuan- Mestre
-
PONTOS : 3174
REPUTAÇÃO : 102
Idade : 24
Áreas de atuação : Programação C#
Básico Design (Blender / Photoshop)
Desenvolvimento Web e Apps.
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
Boa tarde! por gentileza seja objetivo nos seus títulos, descreva de forma objetiva o problema. O título do tópico será alterado.ruanzikaad escreveu:Boa tarde galera. No meu jogo, tem uma cutscene inicial e nela o player obviamente está desativado até um tempo. O problema é que há outros scripts que dependem do meu player ativado, e quando eu desativo o player para rodar a cutscene eles dão erro. Como resolver ?
Abraço!
Re: [RESOLVIDO] Erro após desativar o player
Ops ! Me desculpe, serei mais cauteloso ao criar tópicos da próxima vez !dstaroski escreveu:Boa tarde! por gentileza seja objetivo nos seus títulos, descreva de forma objetiva o problema. O título do tópico será alterado.ruanzikaad escreveu:Boa tarde galera. No meu jogo, tem uma cutscene inicial e nela o player obviamente está desativado até um tempo. O problema é que há outros scripts que dependem do meu player ativado, e quando eu desativo o player para rodar a cutscene eles dão erro. Como resolver ?
Abraço!
Até mais! :D
ruanzikaad- Mestre
-
PONTOS : 3113
REPUTAÇÃO : 47
Idade : 24
Respeito as regras :
Re: [RESOLVIDO] Erro após desativar o player
se resolveu sua dúvida DÊ o topico como resolvido,boa tarde,
![-](https://2img.net/i/empty.gif)
» [RESOLVIDO] Dano No Player Ajuda erro
» desativar botão após clicar nele
» Desativar e ativar Player
» Player spawnar imediatamente após morrer
» CENA SER CARREGADA APOS O PLAYER ENCOSTAR EM UM OBJETO
» desativar botão após clicar nele
» Desativar e ativar Player
» Player spawnar imediatamente após morrer
» CENA SER CARREGADA APOS O PLAYER ENCOSTAR EM UM OBJETO
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos