Menu
CoddyTech

Revisão: moeda mais próxima

Parte da seção Fundamentos de Scripting no Unity do Journey de Unity da Coddy. Lição 61 de 85.

Esta recapitulação reúne o capítulo: uma busca por tag no momento em que ela é necessária, um loop pelos resultados encontrados e a distância até cada um deles.

challenge icon

Desafio

Médio

Dê ao jogador um radar de moedas: a tecla Espaço identifica a moeda mais próxima.

  1. Ao pressionar Espaço, comece com GameObject nearest = null; e float best = Mathf.Infinity;.
  2. Para cada moeda em GameObject.FindGameObjectsWithTag("Coin"), mantenha-a se a distância dela até o jogador for menor que best.
  3. Registre "Nearest coin: " + nearest.name.

Pressione “Jogar”, mova-se e pressione Espaço: o Console mostra Nearest coin: Silver. Depois, pressione “Verificar”.

Experimente você mesmo

using UnityEngine;

public class CoinRadar : MonoBehaviour
{
    [SerializeField] private float speed = 4f;

    void Update()
    {
        if (Input.GetKey(KeyCode.RightArrow))
        {
            transform.position += new Vector3(speed * Time.deltaTime, 0, 0);
        }
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            transform.position -= new Vector3(speed * Time.deltaTime, 0, 0);
        }
        if (Input.GetKey(KeyCode.UpArrow))
        {
            transform.position += new Vector3(0, 0, speed * Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.DownArrow))
        {
            transform.position -= new Vector3(0, 0, speed * Time.deltaTime);
        }

        // Space: registre no log o nome da moeda mais próxima.
    }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos de Scripting no Unity

Pratique por conta própria: Playground de Unity