Menang atau Kalah
Termasuk bagian Fisika dan Gameplay dalam perjalanan Unity di Coddy. Pelajaran 32 dari 63.
Tantangan
SedangLangkah terakhir: cara untuk menang. Pertahankan semua yang sudah dibuat pada langkah sebelumnya, lalu tambahkan ke Ball:
public int target = 10;(atur nilainya menjadi 8 di Inspector).- Permainan berlangsung selama
timeLeftlebih dari 0 danscorekurang daritarget. Tulis kondisi itu sebagai method,bool IsPlaying(), lalu gunakan method tersebut: waktu terus berkurang, tombol panah menggerakkan bola, dan koin menambah skor hanya selama permainan berlangsung. - Saat koin membuat
scoremencapai atau melebihitarget, catatYou win!setelah baris skor. - Jika waktu habis lebih dulu, catat
You lose!setelah barisTime's up!.
Tekan Mainkan dan raih 8 poin sebelum waktu habis, lalu tekan Periksa.
Coba sendiri
using UnityEngine;
public class Ball : MonoBehaviour
{
public float force = 10f;
public int score;
public float timeLimit = 60f;
public float timeLeft;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
timeLeft = timeLimit;
}
void Update()
{
if (timeLeft > 0f)
{
timeLeft -= Time.deltaTime;
if (timeLeft <= 0f)
{
timeLeft = 0f;
Debug.Log("Time's up! Score: " + score);
}
}
}
void FixedUpdate()
{
if (timeLeft > 0f)
{
float x = Input.GetAxis("Horizontal");
float z = Input.GetAxis("Vertical");
rb.AddForce(new Vector3(x, 0f, z) * force);
}
}
public void AddScore(int points)
{
score += points;
Debug.Log("Score: " + score);
}
}
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