Le monete ricompaiono
Fa parte della sezione Fisica e gameplay del percorso Unity di Coddy. Lezione 31 di 71.
Sfida
MedioFai ricomparire una moneta raccolta dopo respawnDelay secondi.
- In
Coin.cs, aggiungiusing System.Collections;epublic float respawnDelay = 3f;. - Scrivi
IEnumerator Respawn(): disattivaGetComponent<Renderer>().enabledeGetComponent<Collider>().enabled, attendirespawnDelay, poi riattivali entrambi. - Sostituisci
gameObject.SetActive(false);conStartCoroutine(Respawn());: un oggetto inattivo non esegue coroutine.
Premi «Gioca» e raccogli una moneta: ricompare 3 secondi dopo. Poi premi «Verifica».
Provalo tu
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);
}
}
}
Tutte le lezioni di Fisica e gameplay
1Corpo rigido
Gravità e massaSpingi con AddForceSalta con un impulsoFixedUpdate per la fisicaVelocitàCorpi cinematiciRiepilogo: piattaforma di lancio4Coroutine
InvokeInvokeRepeating, CancelInvokeLa tua prima coroutineCicli nelle coroutineInterrompere le coroutineRiepilogo: conto alla rovescia7Rotazione
Angoli di EuleroQuaternioniGuarda nella direzione in cui ti muoviRuota in modo fluidoRiepilogo: Torretta10Progetto: Fuga dall'arena
L'arenaCacciatori2Collisioni
OnCollisionEnterCosa ho colpito?Rompersi all'impattoRestare a terraRimbalzo e attritoForme dei ColliderRiepilogo: muro distruttibile5Progetto: Corsa alle monete
La palla rotolanteMonete da raccogliereEsercitati da solo: Playground Unity