Tworzenie obiektów według timera
Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 49 z 67.
Spawner, który co kilka sekund coś tworzy, potrzebuje timera. Time.deltaTime to czas, jaki zajęła ostatnia klatka, więc dodawanie go do pola przy każdym wywołaniu Update() daje liczbę sekund, które upłynęły. Gdy suma osiągnie interwał, utwórz obiekt i odejmij interwał od sumy.
Ta fontanna wyrzuca kroplę wody co pół sekundy:
public GameObject dropPrefab;
public float interval = 0.5f;
float timer;
void Update()
{
timer += Time.deltaTime;
if (timer >= interval)
{
Instantiate(dropPrefab, transform.position, Quaternion.identity);
timer -= interval;
}
}timer -= interval zachowuje resztę: jeśli klatka zakończyła się po 0.51 sekundy, następne pół sekundy zaczyna się liczyć od 0.01, a krople pozostają w rytmie. timer = 0 odrzuciłoby tę resztę, więc każda kropla pojawiałaby się z niewielkim opóźnieniem, które narastałoby w trakcie długiej gry. timer jest prywatne, ponieważ nie trzeba go ustawiać w Inspectorze.
Wyzwanie
ŚredniDropper powinien upuszczać pudełko co interval sekund (w Inspektorze jest ustawiona wartość 2): pierwsze pudełko 2 sekundy po naciśnięciu przycisku Play, a następnie kolejne co 2 sekundy.
- Twórz każde pudełko w pozycji droppera, bez obracania.
- Po każdym pudełku wyświetlaj jego numer:
Box 1,Box 2i tak dalej.
Naciśnij Play i obserwuj, jak rośnie stos, a następnie naciśnij Check.
Spróbuj swoich sił
using UnityEngine;
public class BoxDropper : MonoBehaviour
{
public GameObject boxPrefab;
public float interval = 1f;
void Update()
{
// Co interval sekund: upuść pudełko i zapisz w logu "Box 1", "Box 2"...
}
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy skryptów w Unity
1Twój pierwszy skrypt
Witaj, UnityUmieść sześcianPoruszaj się w każdej klatceObracaj się co sekundęSteruj za pomocą klawiszyPodsumowanie: Prowadź sześcian2Inspektor
Pola inspektoraSerializeFieldLiczby zmiennoprzecinkowe i MathfAtrybuty inspektoraPodsumowanie: Winda5Transformacje i hierarchia
Rodzice i dzieciSkalaPatrz na obiektyPoruszanie się w kierunku punktuPodsumowanie: Księżyc krążący po orbicie3Wejście
Naciśnięty, przytrzymany, zwolnionyOsiePrzyciski o nazwachPrzyciski myszyPowtórka: naładowany skok6Obiekty gry i komponenty
Referencje w InspectorzePobieranie komponentuBrakujące komponentyDodawanie komponentuRequireComponentPokazywanie i ukrywaniePodsumowanie: włącznik światła9Prefabrykaty i tworzenie obiektów
Prefabrykaty i InstantiateTworzenie obiektów według timeraTworzenie obiektów w siatceListy obiektówNiszczenie obiektówLosowe tworzenie obiektówPowtórka: fajerwerki