Capítulo 4: Exibindo a Pontuação na Tela com um Sistema de UI!
Agora que nosso sistema de coleta de itens está funcionando, vamos exibir a pontuação na tela usando a UI da Unity! Isso permitirá que o jogador veja quantos itens coletou durante o jogo.

Passo 1: Criando o Texto da Pontuação
Na Hierarchy, clique com o botão direito e vá em UI > Text – TextMeshPro.
Se aparecer uma mensagem pedindo para importar o TextMeshPro Essentials, clique em Importar.
Renomeie o objeto para ScoreText.
No Inspector, faça as seguintes alterações:
- Text: Digite “Pontuação: 0” como texto inicial.
- Font Size: Ajuste para 40 (ou o tamanho que preferir).
- Alignment: Escolha Center para alinhar o texto.
- Color: Escolha uma cor branca ou outra que contraste com o fundo.
- Position: Ajuste a posição do texto na tela, colocando-o no canto superior esquerdo.
Passo 2: Criando o Script de Pontuação
Agora vamos criar um script que atualizará o texto da pontuação sempre que o jogador coletar um item.
Vá até a pasta Scripts e crie um novo script chamado ScoreManager.cs.
Abra o script e substitua o código por este:
using UnityEngine;
using TMPro; // Biblioteca necessária para usar TextMeshPro
public class ScoreManager : MonoBehaviour
{
public static ScoreManager instance; // Criamos uma instância única para facilitar o acesso à pontuação
public TextMeshProUGUI scoreText; // Referência ao texto da pontuação
private int score = 0; // Variável para armazenar a pontuação
void Awake()
{
// Garante que só exista uma instância do ScoreManager
if (instance == null)
{
instance = this;
}
}
public void AddPoint()
{
score++; // Aumenta a pontuação
scoreText.text = "Pontuação: " + score; // Atualiza o texto na tela
}
}
Salve o script e arraste-o para um GameObject vazio chamado GameManager na Hierarchy.
No Inspector, arraste o ScoreText para o campo ScoreText do script.
Passo 3: Conectando com o Sistema de Coleta
Agora, vamos conectar a pontuação ao sistema de coleta de itens.
Abra o script “ItemCollector.cs” e modifique-o assim:
using UnityEngine;
public class ItemCollector : MonoBehaviour
{
void OnTriggerEnter2D(Collider2D collision)
{
if (collision.gameObject.CompareTag("Item")) // Verifica se o objeto coletado tem a tag "Item".
{
ScoreManager.instance.AddPoint(); // Adiciona pontuação ao coletar o item
Destroy(collision.gameObject); // Remove o item da cena
}
}
}
Salve e teste o jogo! Agora, sempre que o jogador coletar um item, a pontuação será atualizada na tela.
Testando o Sistema
Pressione Play e colete um item.
O número na UI deve aumentar sempre que um item for coletado.
Agora a pontuação está visível e funcional!
No próximo capítulo, vamos adicionar efeitos visuais ao coletar o item, como partículas e som!
Se tiver dúvidas, assista ao tutorial no YouTube: (colocar link aqui).
Criando Tijolos Destrutíveis como no Mario Bros!