Menu
CoddyTech

Monety wracają

Część sekcji Fizyka i rozgrywka ścieżki Unity w Coddy. Lekcja 31 z 71.

challenge icon

Wyzwanie

Średni

Przywróć zebraną monetę po respawnDelay sekundach.

  1. W pliku Coin.cs dodaj using System.Collections; oraz public float respawnDelay = 3f;.
  2. Napisz IEnumerator Respawn(): wyłącz GetComponent<Renderer>().enabled i GetComponent<Collider>().enabled, poczekaj respawnDelay, a następnie włącz oba.
  3. Zastąp gameObject.SetActive(false); przez StartCoroutine(Respawn());: nieaktywny obiekt nie uruchamia żadnych korutyn.

Naciśnij „Graj” i zbierz monetę: pojawi się ponownie po 3 sekundach. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

using UnityEngine;

public class Coin : MonoBehaviour
{
    public int value = 1;

    void OnTriggerEnter(Collider other)
    {
        if (other.CompareTag("Player"))
        {
            other.GetComponent<Ball>().AddScore(value);
            gameObject.SetActive(false);
        }
    }
}

Wszystkie lekcje w sekcji Fizyka i rozgrywka

Poćwicz samodzielnie: Edytor online Unity