Kazan ya da Kaybet
Coddy'nin Unity Journey'sinin Fizik ve Oynanış bölümünün bir parçası. Ders 32 / 63.
Görev
OrtaSon adım: kazanmanın bir yolu. Önceki adımlardaki her şeyi koru ve Ball'a şunları ekle:
public int target = 10;(Inspector 8 olarak ayarlar).- Oyun,
timeLeft0'dan büyük vescoretarget'tan küçük olduğu sürece devam eder. Bunubool IsPlaying()adlı bir yöntem olarak yaz ve kullan: saat geri sayar, oklar topu iter ve paralar puanı yalnızca oyun devam ederken artırır. - Bir para,
score'utarget'a veya daha fazlasına çıkardığında, puan satırından sonraYou win!mesajını kaydet. - Süre önce dolarsa,
Time's up!satırından sonraYou lose!mesajını kaydet.
Play'e bas ve süre dolmadan önce 8 puana ulaş, ardından Check'e bas.
Kendin dene
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);
}
}
Fizik ve Oynanış bölümündeki tüm dersler
1Rigidbody
Yerçekimi ve KütleAddForce ile İtmeDürtüyle ZıplamaFizik için FixedUpdateHızKinematik CisimlerTekrar: Fırlatma Rampası2Çarpışmalar
OnCollisionEnterNeye Çarptım?Çarpınca KırılYerde DurmakSekme ve SürtünmeCollider ŞekilleriTekrar: Kırılabilir Duvar5Proje: Coin Rush
Yuvarlanan TopToplanacak Paralar