Menu
CoddyTech

Münzen kommen zurück

Teil des Abschnitts Physik und Gameplay der Unity-Journey von Coddy. Lektion 31 von 71.

challenge icon

Aufgabe

Mittel

Lass eine eingesammelte Münze nach respawnDelay Sekunden zurückkehren.

  1. Füge in Coin.cs using System.Collections; und public float respawnDelay = 3f; hinzu.
  2. Schreibe IEnumerator Respawn(): Schalte GetComponent<Renderer>().enabled und GetComponent<Collider>().enabled aus, warte respawnDelay und schalte dann beide wieder ein.
  3. Ersetze gameObject.SetActive(false); durch StartCoroutine(Respawn());: Ein inaktives Objekt führt keine Coroutinen aus.

Drücke „Spielen“ und sammle eine Münze ein: Sie erscheint 3 Sekunden später wieder. Drücke dann „Prüfen“.

Probier es selbst

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);
        }
    }
}

Alle Lektionen in Physik und Gameplay

Übe selbstständig: Unity-Playground