6
respostas

Texto legacy

Eu estava fazendo a aula "Contando os Pontos" e parei em uma parte onde o professor usa o "using UnityEngine.UI", quando fui ver no script, se botasse a mesma coisa que o professor daria error, e a unica coisa parecida era "using UnityEngine.UIElements" que eu acho que seria a mesma coisa mas o mudaram o nome na versão atual que uso. Mas mesmo assim se tentasse botar o "Text" daria erro, e eu estou usando o Text(Legacy) na Unity que é o textoPontuacao.

6 respostas

Oi Lucas, tudo bem?

O correto seria utilizar o UnityEngine.UI mesmo então deve ter alguma outra coisa atrapalhando. Você consegue postar aqui a mensagem de erro que você recebe quando coloca o using dessa forma, por favor? Pode postar também o código da classe que usa o Text pra gente ter uma visão geral. Assim acho que conseguimos ter uma ideia melhor do que pode estar dando errado.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UIElements;

public class Pontuacao : MonoBehaviour { private Text textoPontuacao; private int pontos;

public void AdicionarPontos() { this.pontos++; Debug.Log(this.pontos); this.textoPontuacao.text = this.pontos.ToString(); } }

Oi Lucas!

Ok, vamos tentar voltar a linha 4 do seu código para:

using UnityEngine.UI;

Aí eu vou pedir para você abrir o menu Window e selecionar a opção Package Manager. Ele deve mostrar uma lista de pacotes instalados no seu projeto. Verifique se você tem um pacote instalado chamado Unity UI. Você deve ter algo assim:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Caso não funcione, vou pedir pra você colar aqui a nova mensagem de erro que aparece ao mudar pra using UnityEngine.UI.

Eu fui em Unity.UI e cliquei na seta em baixo dele.E aparecia "Currently Instaled", aqui está o erro que aparece quando boto "UnityEngine.UI". Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Oi Lucas!

Apesar do erro no código, você já tentou executar o seu jogo no Unity pra ver se o erro aparece lá dentro também? Digo isso pois às vezes é um problema apenas de referência da IDE que você está usando. O VS Code costuma se perder pra encontrar os pacotes do Unity em alguns casos.

Enquanto você faz esse teste queria pedir pra você testar outra coisa. Tente criar um novo projeto do zero, adicione um Text (Legacy) na cena e aí tente associar um script em qualquer objeto da cena com o código using UnityEngine.UI só pra gente ver se nesse caso ele encontra.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software