SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Como salvar alterações de SetActive em GameObjects (UNITY)
Alguém tem ideia de como posso fazer a movimentação do Lampião?
Mudar cor ?
[Dúvida] Toques na tela e UIs
[DUVIDA RAPIDA] SOBRE SCRIPTS
Unity celular - computador
Dúvida com botoes
Simulador de policia [C#] [Jogo em andamento] [Procurando Equipe]
Ajuda simples no trigger
preciso de ajuda
Como faço pra interagir com objeto ao olhar pra ele?
Busco alguem pra fazer algumas programações basicas (PAGO EM DINHEIRO)
Realidade Virtual e Aumentada - onde tem?
Ativar animação ao se mover
[TUTORIAL] GameObject.FindWithTag ( Achar objetos na cena pelas Tags )
Colocar contagem regressiva
[TUTORIAL] Script de arma completo! [FREE]
Como faço pro carro só se mover quando eu engra no carro?
Como criar um cabo e realizar conexões
PLATAFORMA/COR ALEATORIA + AUMENTO DE VELOCIDADE
PRECISO DE UMA PESSOA QUE SAIBA MECHER COM ONLINE NO UNITY
Ajuda com Colisão na Camera
Como limitar o ângulo que um objeto pode atingir com Quaternion.LookRotation?
The freddy krueger's pie (Game)
Como programar animações de fade in e fade out para botão no Unity
Iniciar script sem anexá-lo a um GameObject
IDLE game tutorial, alguem?
Unity3D - Realistic Fps Prefab 1.44,1.45 - Sistema de Veículos - EVP5
Como reduzir tamanho do .APK ?
nao consigo publicar um asset, me ajudem
Não Consigo salvar ao sair, se puderem ajudar
Duvida sobre animações
Efeito realista em textura
Salvar as auterações de um prefab em modo de jogo.
[TUTORIAL] Sistema de Suspenção a Ar para carros (WheelCollider)
Sistema de Escolher Frases no Dialogo
Como transformo a posição de um objeto em outra posição?
Como posso girar a câmera envolta do player com touch
[TUTORIAL] Salvar SCORE e substituir caso faça mais pontos.
Sistema de backup local "semi-automático".
[TUTORIAL] Sistema de DIA E NOITE completo, com luzes noturnas e SISTEMA DE NUVENS
Ofereço-me é diferente de formar equipes
[TUTORIAL] Unity 5 - Skid Marks (marcas de derrapagem)
[TUTORIAL] Sistema de FPS com Corpo
COMO MUDAR GETKEY WASD PARA GETBUTTON HORIZONTAL E VERTICAL ???
BLENDER SNAP COM PROBLEMA
Dúvida sobre o Aleatório
objeto voando
PlayerPrefab
movimentar a camera com o mouse estilo jogo RTS
[TUTORIAL] AI Enemy ( Jogos de terror )
Unity - Como eu desativo e ativo uma hierarquia ao apertar um botão?
Problema na iluminação do shader Diffuse
[TUTORIAL] Limitar casas decimais sem arredondar
Erros atualização de versão da Unity
Erro no SDK - unity
Arquivos em Nuvem
Como faz para salvar as escalas dos arquivos no TilePallets?
[RESOLVIDO] To precisando de ajuda em um script pra fazer uma malha dinamica
Sistema de teletransporte em Python
[____SUGESTÕES PARA O FÓRUM____]
[RESOLVIDO] Como consigo uma conexão local?
Problema em Saber Qual Objeto vai ser Spawnado
Procuro ROTEIRISTA
[RESOLVIDO] Colocar limite de cliques em button
Número Aleatório Unity C#
Comsegui terminar um jogo, Agradeço a todos
Ajuda com recursos do unity.
[RESOLVIDO] Dicas de Otimização
Multiplayer - Por onde começar?
MENU DE SELEÇÃO DE FASES
DOTS - ECS + JOBS + Burst!
Salvar informação de loja
[TUTORIAL] Observer Pattern em C# - Tudo o que você precisa saber
Procura-Se Modelador e Programador, Com Futura Remuneraçao
Programe seus jogos mesmo sem saber C# (BOLT ⚡)
Como mudar a direção do tiro usando o controle analógico?
duvida navmesh
[RESOLVIDO] Problema na câmera com Realidade aumentada
vamos formar uma equipe pra lançar um jogo
Alterações indo para os prefabs e não para os clones.
Jogo de Terror com imagem pixelada
problemas com celulares android grande
Abrir Porta Malas Simples
grid unity
como interagir com os objetos somente se o mouse não estiver sobre o canvas
[RESOLVIDO] Carro Indo Para Tras Quando Aperta *W* e Indo Para Frente Quando Aperta *S*
Jogo para Android, testem por favor
Como fazer um script salvar o estado de um gameobject
[RESOLVIDO] Fechar todos aplicativos abertos.
talvez você goste disso (Cursos)
[RESOLVIDO] Unity - Como fechar o jogo ao clicar em um botão
[RESOLVIDO] Alterar área de click (mira) no touchscreen
Tocar no gameobject e ativar um canvas
Jogo Maria Bella
[TUTORIAL] Unity 2019 - Lanterna e pilhas, com UI
Rodas Saem do carro e da moto
Pegar o valor salvo no começo do jogo!
Compiler error sem eu ter colocado nada no game.
Hoje à(s) 9:34 pm
Hoje à(s) 8:34 pm
Hoje à(s) 5:54 pm
Hoje à(s) 3:37 pm
Hoje à(s) 10:42 am
Hoje à(s) 10:33 am
Hoje à(s) 1:15 am
Ontem à(s) 10:39 pm
Ontem à(s) 9:28 pm
Ontem à(s) 8:32 pm
Ontem à(s) 8:28 pm
Ontem à(s) 7:38 pm
Ontem à(s) 6:04 pm
Ontem à(s) 3:41 pm
Ontem à(s) 9:39 am
Ontem à(s) 1:40 am
Dom Ago 02, 2020 5:53 pm
Dom Ago 02, 2020 5:44 pm
Dom Ago 02, 2020 2:28 pm
Dom Ago 02, 2020 1:14 pm
Dom Ago 02, 2020 12:57 pm
Dom Ago 02, 2020 4:40 am
Sab Ago 01, 2020 11:57 pm
Sab Ago 01, 2020 2:10 pm
Sab Ago 01, 2020 11:37 am
Sab Ago 01, 2020 8:31 am
Sab Ago 01, 2020 12:26 am
Sex Jul 31, 2020 9:02 pm
Sex Jul 31, 2020 3:59 pm
Sex Jul 31, 2020 3:58 pm
Qui Jul 30, 2020 7:18 pm
Qui Jul 30, 2020 4:54 pm
Qui Jul 30, 2020 10:55 am
Qui Jul 30, 2020 8:47 am
Qui Jul 30, 2020 4:42 am
Qua Jul 29, 2020 3:29 pm
Qua Jul 29, 2020 10:56 am
Qua Jul 29, 2020 12:30 am
Seg Jul 27, 2020 5:45 pm
Seg Jul 27, 2020 6:28 am
Seg Jul 27, 2020 6:22 am
Seg Jul 27, 2020 6:16 am
Seg Jul 27, 2020 4:00 am
Dom Jul 26, 2020 7:15 pm
Dom Jul 26, 2020 5:53 pm
Dom Jul 26, 2020 4:33 pm
Dom Jul 26, 2020 4:10 pm
Dom Jul 26, 2020 4:02 am
Dom Jul 26, 2020 3:58 am
Dom Jul 26, 2020 3:58 am
Dom Jul 26, 2020 3:52 am
Dom Jul 26, 2020 3:48 am
Dom Jul 26, 2020 12:04 am
Sab Jul 25, 2020 11:46 pm
Sab Jul 25, 2020 11:38 pm
Sab Jul 25, 2020 11:02 pm
Sab Jul 25, 2020 10:27 pm
Sab Jul 25, 2020 10:26 pm
Sab Jul 25, 2020 10:09 pm
Sab Jul 25, 2020 10:06 pm
Sab Jul 25, 2020 9:50 pm
Sab Jul 25, 2020 8:03 pm
Sex Jul 24, 2020 11:51 pm
Sex Jul 24, 2020 5:45 pm
Sex Jul 24, 2020 3:04 pm
Sex Jul 24, 2020 7:03 am
Qui Jul 23, 2020 6:15 pm
Qui Jul 23, 2020 5:31 pm
Qui Jul 23, 2020 5:27 pm
Qui Jul 23, 2020 1:58 pm
Qui Jul 23, 2020 1:51 pm
Qui Jul 23, 2020 1:43 pm
Qui Jul 23, 2020 12:48 pm
Qui Jul 23, 2020 11:58 am
Qui Jul 23, 2020 11:43 am
Qui Jul 23, 2020 8:18 am
Qua Jul 22, 2020 8:48 pm
Qua Jul 22, 2020 8:22 pm
Qua Jul 22, 2020 7:40 pm
Qua Jul 22, 2020 7:17 pm
Qua Jul 22, 2020 4:52 pm
Qua Jul 22, 2020 2:33 pm
Qua Jul 22, 2020 1:34 pm
Ter Jul 21, 2020 9:49 pm
Ter Jul 21, 2020 5:16 pm
Ter Jul 21, 2020 4:13 pm
Ter Jul 21, 2020 3:35 pm
Ter Jul 21, 2020 9:05 am
Ter Jul 21, 2020 5:13 am
Seg Jul 20, 2020 9:30 pm
Seg Jul 20, 2020 9:28 pm
Dom Jul 19, 2020 11:59 pm
Dom Jul 19, 2020 11:52 pm
Dom Jul 19, 2020 9:08 pm
Dom Jul 19, 2020 6:50 pm
Dom Jul 19, 2020 5:39 pm
Dom Jul 19, 2020 5:32 pm
Dom Jul 19, 2020 5:24 pm
Dom Jul 19, 2020 5:06 pm
Alexlucas
LúcioHenrique098
Callyde Jr
poyser
NKKF
Kakaroto222
garrito
Giwn
CShar
Magnatah
Magnatah
MayLeone
Fagner
BoraAprender15
NKKF
JohnRambo
maxwellvale
maxwellvale
CShar
NKKF
SeTk
JulioWinchester
BigCouve
Callyde Jr
TheusReis
BRGC
speedluk
Samuelostgamer
JohnRambo
Yuri Heinz
joaoguil3
DhanielBrandão2
Édipo
Antônio T
garrito
EricknhYT
BigCouve
g2013santtos@gmail.com
raphaelperez
fabricadegame
fabricadegame
fabricadegame
garrito
SamonBR
CShar
IOOI
pdsimulador
iToddy
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
VaiPraLá123
Magnatah
JoelMJunior
KurotamaXIII
MarcosSchultz
MarcosSchultz
diegopds
MarcosSchultz
MarcosSchultz
NinjalaranjaTV
CShar
Ele paiva
Agoraaae3432
CShar
Yuri Heinz
sabbath
VaiPraLá123
artplayer
herisson07
artplayer
undertakerbr
sabbath
EricknhYT
Fagner
Fagner
Fagner
orph
Yuri Heinz
NKKF
VaiPraLá123
Fagner
Zer3301
bionics
JulioWinchester
EricknhYT
thales.ulisses
JoelMJunior
iToddy
iToddy
Hiyuzo
JoelMJunior
CShar
thales.ulisses
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz

Erro no script no jogo aqui, Ajuda, por favor!

Ir em baixo

DÚVIDA Erro no script no jogo aqui, Ajuda, por favor!

Mensagem por lucaspoiob em Ter Jul 14, 2020 9:05 pm

Alguem consegue me ajudar, está dando um erro aqui no meu jogo, estou tentando fazer um pacman! e vem esse erro, ele fica em looping nesse erro e não sei o que pode ser:

InvalidOperationException: Queue empty.
System.Collections.Generic.Queue`1[T].ThrowForEmptyQueue () (at <ae22a4e8f83c41d69684ae7f557133d9>:0)
System.Collections.Generic.Queue`1[T].Peek () (at <ae22a4e8f83c41d69684ae7f557133d9>:0)
FantasmaMovimento.MoveToWaypoint (System.Boolean loop) (at Assets/Scripts/FantasmaMovimento.cs:312)
FantasmaMovimento.Scatter () (at Assets/Scripts/FantasmaMovimento.cs:287)
FantasmaMovimento.FixedUpdate () (at Assets/Scripts/FantasmaMovimento.cs:68)

script ai
Código:
using System;
using System.Collections.Generic;
using System.IO;
using UnityEngine;

public class FantasmaMovimento : MonoBehaviour
{
  private Vector3 caminho;
  private Queue<Vector3> caminhosIA;
  public Vector3 _movimento;
  public Vector3 movimento
  {
    get
    {
      return _movimento;
    }
    set
    {
      _movimento = value;
      Vector3 pos = new Vector3((int)transform.position.x, (int)transform.position.y, (int)transform.position.z);
      caminho = pos + _movimento;
    }
  }

  public float velocidade = 0.3f;
  public float TempoAssustado = 5f;
  public float TempoEsperar = 0.0f;
  private float TempoFinalAssustado;
  private float TempoFinalEsperar;
  enum State { Wait, Init, Scatter, Chase, Run };
  State state;
  private Vector3 _PosicaoInicial;
  private float _TempoBranco;
  private float _TempoAlternarBranco;
  private float _IntervaloAlternado;
  private bool Branco = false;
  public InterfaceNavegacao GUINav;
  public ControleJogador pacman;
  private GameManager _gm;
  void Start()
  {
    _gm = GameObject.Find("Game Manager").GetComponent<GameManager>();
    _IntervaloAlternado = _gm.TempoAssustado * 0.33f * 0.20f;
    InicialFantasma();
  }

  public float DISTANCE;

  void FixedUpdate()
  {
    DISTANCE = Vector3.Distance(transform.position, caminho);

    if (GameManager.EstadoJogo == GameManager.GameState.Jogo)
    {
      animate();

      switch (state)
      {
        case State.Wait:
          Wait();
          break;

        case State.Init:
          Init();
          break;

        case State.Scatter:
          Scatter();
          break;

        case State.Chase:
          ChaseAI();
          break;

        case State.Run:
          RunAway();
          break;
      }
    }
  }
  public void InicialFantasma()
  {
    _PosicaoInicial = getStartPosAccordingToName();
    caminho = transform.position;
    state = State.Wait;
    TempoFinalEsperar = Time.time + TempoEsperar + GUINav.DelayInicial;
    InicializarCaminhosIA(state);
  }
  public void InicialFantasma(Vector3 pos)
  {
    transform.position = pos;
    caminho = transform.position;
    state = State.Wait;
    TempoFinalEsperar = Time.time + TempoEsperar + GUINav.DelayInicial;
    InicializarCaminhosIA(state);
  }


  private void InicializarCaminhosIA(State st)
  {
    string data = "";
    switch (name)
    {
      case "vermelho":
        data = @"22 20
                22 26
                27 26
                27 30
                22 30
                22 26";
        break;
      case "rosa":
        data = @"14.5 17
                14 17
                14 20
                7 20
                7 26
                7 30
                2 30
                2 26";
        break;
      case "azul":
        data = @"16.5 17
                  15 17
                  15 20
                  22 20
                  22 8
                  19 8
                  19 5
                  16 5
                  16 2
                  27 2
                  27 5
                  22 5";
        break;
      case "amarelo":
        data = @"12.5 17
                  14 17
                  14 20
                  7 20
                  7 8
                  7 5
                  2 5
                  2 2
                  13 2
                  13 5
                  10 5
                  10 8";
        break;

    }
    string line;
    caminhosIA = new Queue<Vector3>();
    Vector3 wp;
    if (st == State.Init)
    {
      using (StringReader reader = new StringReader(data))
      {
        while ((line = reader.ReadLine()) != null)
        {
          if (line.Length == 0) break;
          string[] values = line.Split(' ');
          float x = float.Parse(values[0]);
          float y = float.Parse(values[1]);
          wp = new Vector3(x, y, 0);
          caminhosIA.Enqueue(wp);
        }
      }
    }

    if (st == State.Scatter)
    {
      bool scatterWps = false;
      using (StringReader reader = new StringReader(data))
      {
        while ((line = reader.ReadLine()) != null)
        {
          if (line.Length == 0)
          {
            scatterWps = true;
            continue;
          }
          if (scatterWps)
          {
            string[] values = line.Split(' ');
            int x = Int32.Parse(values[0]);
            int y = Int32.Parse(values[1]);
            wp = new Vector3(x, y, 0);
            caminhosIA.Enqueue(wp);
          }
        }
      }
    }
    if (st == State.Wait)
    {
      Vector3 pos = transform.position;
      if (transform.name == "azul" || transform.name == "amarelo")
      {
        caminhosIA.Enqueue(new Vector3(pos.x, pos.y - 0.5f, 0f));
        caminhosIA.Enqueue(new Vector3(pos.x, pos.y + 0.5f, 0f));
      }
      else
      {
        caminhosIA.Enqueue(new Vector3(pos.x, pos.y + 0.5f, 0f));
        caminhosIA.Enqueue(new Vector3(pos.x, pos.y - 0.5f, 0f));
      }
    }

  }

  private Vector3 getStartPosAccordingToName()
  {
    switch (gameObject.name)
    {
      case "vermelho":
        return new Vector3(15f, 20f, 0f);
      case "rosa":
        return new Vector3(14.5f, 17f, 0f);
      case "azul":
        return new Vector3(16.5f, 17f, 0f);
      case "amarelo":
        return new Vector3(12.5f, 17f, 0f);
    }
    return new Vector3();
  }
  void animate()
  {
    Vector3 dir = caminho - transform.position;
    GetComponent<Animator>().SetFloat("DirecaoX", dir.x);
    GetComponent<Animator>().SetFloat("DirecaoY", dir.y);
    GetComponent<Animator>().SetBool("Correr", false);
  }

  void OnTriggerEnter2D(Collider2D other)
  {
    if (other.name == "pacman")
    {
      if (state == State.Run)
      {
        Normal();
        InicialFantasma(_PosicaoInicial);
        pacman.AtualizarPlacar();
      }

      else
      {
        _gm.PerderVida();
      }

    }
  }
  void Wait()
  {
    if (Time.time >= TempoFinalEsperar)
    {
      state = State.Init;
      caminhosIA.Clear();
      InicializarCaminhosIA(state);
    }
    MoveToWaypoint(true);
  }
  void Init()
  {
    _TempoBranco = 0;
    if (caminhosIA.Count == 0)
    {
      state = State.Scatter;
      string name = GetComponent<SpriteRenderer>().sprite.name;
      if (name[name.Length - 1] == '0' || name[name.Length - 1] == '1') movimento = Vector3.right;
      if (name[name.Length - 1] == '2' || name[name.Length - 1] == '3') movimento = Vector3.left;
      if (name[name.Length - 1] == '4' || name[name.Length - 1] == '5') movimento = Vector3.up;
      if (name[name.Length - 1] == '6' || name[name.Length - 1] == '7') movimento = Vector3.down;
      InicializarCaminhosIA(state);
      TempoFinalAssustado = Time.time + TempoAssustado;
      return;
    }
    MoveToWaypoint();
  }
  void Scatter()
  {
    if (Time.time >= TempoFinalAssustado)
    {
      caminhosIA.Clear();
      state = State.Chase;
      return;
    }
    MoveToWaypoint(true);
  }

  void ChaseAI()
  {
    if (Vector3.Distance(transform.position, caminho) > 0.000000000001)
    {
      Vector2 p = Vector2.MoveTowards(transform.position, caminho, velocidade);
      GetComponent<Rigidbody2D>().MovePosition(p);
    }
    else GetComponent<InteligenciaArtifical>().LogicaMovimentacao();
  }
  void RunAway()
  {
    GetComponent<Animator>().SetBool("Correr", true);
    if (Time.time >= _TempoBranco && Time.time >= _TempoAlternarBranco) AlternarBrancoAzul();
    if (Vector3.Distance(transform.position, caminho) > 0.000000000001)
    {
      Vector2 p = Vector2.MoveTowards(transform.position, caminho, velocidade);
      GetComponent<Rigidbody2D>().MovePosition(p);
    }
    else GetComponent<InteligenciaArtifical>().LogicaCorrida();
  }
  void MoveToWaypoint(bool loop = false)
  {
    caminho = caminhosIA.Peek();
    if (Vector3.Distance(transform.position, caminho) > 0.000000000001)
    {
      _movimento = Vector3.Normalize(caminho - transform.position);
      Vector2 p = Vector2.MoveTowards(transform.position, caminho, velocidade);
      GetComponent<Rigidbody2D>().MovePosition(p);
    }
    else
    {
      if (loop) caminhosIA.Enqueue(caminhosIA.Dequeue());
      else caminhosIA.Dequeue();
    }
  }
  public void Assustado()
  {
    state = State.Run;
    _movimento *= -1;
    _TempoBranco = Time.time + _gm.TempoAssustado * 0.66f;
    _TempoAlternarBranco = _TempoBranco;
    GetComponent<Animator>().SetBool("CorrerBranco", false);
  }
  public void Normal()
  {
    if (state != State.Run) return;
    caminhosIA.Clear();
    state = State.Chase;
    _TempoAlternarBranco = 0;
    _TempoBranco = 0;
    GetComponent<Animator>().SetBool("CorrerBranco", false);
    GetComponent<Animator>().SetBool("Correr", false);
  }

  public void AlternarBrancoAzul()
  {
    Branco = !Branco;
    GetComponent<Animator>().SetBool("CorrerBranco", Branco);
    _TempoAlternarBranco = Time.time + _IntervaloAlternado;
  }

}

lucaspoiob
Membro
Membro

PONTOS : 1282
REPUTAÇÃO : 0
Respeito as regras : Erro no script no jogo aqui, Ajuda, por favor! WvDYdlf

Voltar ao Topo Ir em baixo

DÚVIDA Re: Erro no script no jogo aqui, Ajuda, por favor!

Mensagem por CShar em Ter Jul 14, 2020 9:09 pm

Só colar sem formatação.
CShar
CShar
Programador

Masculino PONTOS : 78
REPUTAÇÃO : 11
Idade : 21
Respeito as regras : Erro no script no jogo aqui, Ajuda, por favor! WvDYdlf

Voltar ao Topo Ir em baixo

DÚVIDA Re: Erro no script no jogo aqui, Ajuda, por favor!

Mensagem por CShar em Qua Jul 15, 2020 12:29 am

Dificilmente alguém vai responder essa pergunta porque são muitas referências que não temos.

Mas penso que talvez você tenha iniciado o queue de forma incorreta. Tente usar algum valor númerico no lugar de um nome para constar como empty.


E teste seu código por partes. Parte por parte até colar em uma que está o erro. Aí você posta.
CShar
CShar
Programador

Masculino PONTOS : 78
REPUTAÇÃO : 11
Idade : 21
Respeito as regras : Erro no script no jogo aqui, Ajuda, por favor! WvDYdlf

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum