Menu
CoddyTech

Attrape-la

Fait partie de la section Les bases du scripting dans Unity du Journey Unity de Coddy. Leçon 52 sur 85.

challenge icon

Défi

Moyen

Attrape l’étoile et compte les prises.

  1. Ajoute un champ private int score;.
  2. Après le déplacement de l’étoile, lorsque Vector3.Distance(transform.position, star.position) < 1f, ajoute 1 à score et affiche "Caught! Score: " + score dans le journal.
  3. Dans ce if, replace l’étoile à y = 6f, en conservant ses coordonnées x et z.

Appuie sur « Jouer » et glisse-toi sous l’étoile : la Console affiche Caught! Score: 1. Puis clique sur « Vérifier ».

Essayez vous-même

using UnityEngine;

public class Catcher : MonoBehaviour
{
    [SerializeField] private float speed = 6f;
    [SerializeField] private Transform star;
    [SerializeField] private float fallSpeed = 3f;

    void Update()
    {
        float x = transform.position.x;
        if (Input.GetKey(KeyCode.RightArrow))
        {
            x += speed * Time.deltaTime;
        }
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            x -= speed * Time.deltaTime;
        }
        x = Mathf.Clamp(x, -4f, 4f);
        transform.position = new Vector3(x, transform.position.y, transform.position.z);

        star.position += Vector3.down * fallSpeed * Time.deltaTime;
    }
}

Toutes les leçons de Les bases du scripting dans Unity

Entraînez-vous par vous-même : Playground Unity