Menu
CoddyTech

Düşen Güçlendirmeler

Coddy'nin Unity Oyunu: Tuğla Kırma kursunda ders 13 / 16.

Kırık bir tuğla bazen rakete doğru düşen bir güçlendirme bırakır. Bırakıp bırakmaması bir rastgele seçimdir: Random.value, 0 ile 1 arasında rastgele bir kayan noktalı sayıdır; bu yüzden Random.value < 0.15f koşulu 100 denemede yaklaşık 15 kez doğru olur. Olasılığı bir alanda tutmak, bu değeri ayarlamanı ve bir testte her seferinde bırakması için 1'e ya da hiç bırakmaması için 0'a ayarlamanı sağlar.

Hangi güçlendirmenin düşeceği ikinci bir rastgele seçimdir: prefab dizisinden rastgele bir indeks seçilir. Tamsayılarla kullanılan Random.Range üst sınırı dahil etmez; bu nedenle Random.Range(0, array.Length) dizideki her öğeyi seçebilir. Bir düşmanın ganimeti:

public GameObject[] loot;
public float lootChance = 0.25f;

void DropLoot()
{
    if (Random.value >= lootChance) return;
    int pick = Random.Range(0, loot.Length);
    Instantiate(loot[pick], transform.position, Quaternion.identity);
}

Bir güçlendirme, her karede kendisini hareket ettirerek sabit bir hızla düşer ve oyun alanının altına indiğinde kendini yok eder; böylece kaçırılanlar birikmez. Prefab'ında kinematik bir Rigidbody ve bir tetikleyici çarpıştırıcı bulunur; böylece fizik sistemi hareket ettiğini bilir ve rakete ulaştığında bunu algılayabilir.

challenge icon

Görev

Zor
  1. PowerUp içinde public float fallSpeed = 3f ve public float bottomY = -9f ekle. Update() içinde saniyede fallSpeed birim aşağı hareket ettir ve y değeri bottomY değerinin altına düştüğünde güçlendirmeyi yok et.
  2. GameManager içinde public GameObject[] powerUps ekle (sahne, WidePowerUp ve MultiPowerUp prefab’larını bağlar) ve public float dropChance = 0.15f ekle.
  3. BrickBroken içinde, dropChance olasılıkla, tuğlanın bulunduğu yerde rastgele bir powerUps oluştur.

Şimdilik güçlendirmeler raketin içinden düşer: onları yakalama konusu sıradaki adım.

Play’e bas, biri düşene kadar tuğlaları kır, sonra Check’e bas.

Kendin dene

using UnityEngine;

public class PowerUp : MonoBehaviour
{
    // Son bölüm: Kırılan tuğlalardan düşen güçlendirmeler.
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Unity Oyunu: Tuğla Kırma bölümündeki tüm dersler