Koin Muncul Kembali
Termasuk bagian Fisika dan Gameplay dalam perjalanan Unity di Coddy. Pelajaran 30 dari 63.
Tantangan
SedangKoin yang dikumpulkan akan muncul kembali setelah respawnDelay detik, jadi selalu ada sesuatu yang bisa dikejar. Itu adalah jeda dalam satu siklus hidup koin: coroutine. Pertahankan semua yang sudah dibuat pada langkah sebelumnya, lalu ubah Coin:
- Tambahkan
public float respawnDelay = 3f;. - GameObject yang dinonaktifkan tidak menjalankan coroutine, jadi
SetActive(false)akan menghentikan coroutine koin sebelum coroutine itu dapat memunculkan kembali koin. Sembunyikan koin dengan cara lain: nonaktifkanRenderer-nya agar koin tidak digambar, danCollider-nya agar koin tidak dapat dikumpulkan lagi. - Saat koin dikumpulkan, mulai coroutine yang menyembunyikan koin, menunggu selama
respawnDelaydetik, lalu mengaktifkan kembali keduanya. Skor tetap ditambahkan seperti sebelumnya.
Tekan Jalankan, kumpulkan koin dan lihat koin itu muncul kembali, lalu tekan Periksa.
Coba sendiri
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);
}
}
}
Semua pelajaran di Fisika dan Gameplay
1Rigidbody
Gravitasi dan MassaDorong dengan AddForceMelompat dengan ImpulsFixedUpdate untuk FisikaKecepatanBenda KinematikRingkasan: Landasan Peluncur2Tabrakan
OnCollisionEnterApa yang Kutabrak?Pecah Saat BenturanBerdiri di Atas TanahPantulan dan GesekanBentuk ColliderRangkuman: Dinding yang Bisa Hancur5Proyek: Perburuan Koin
Bola yang MenggelindingKoin untuk Dikumpulkan