Menu
CoddyTech

Düşenler

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

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

Kırılan tuğlalar bazen bir güçlendirici düşürür.

  1. PowerUp içinde fallSpeed = 3f ve bottomY = -9f ekle; Update() içinde saniyede fallSpeed hızında düşmesini ve bottomY değerinin altında yok edilmesini sağla.
  2. GameManager içine public GameObject[] powerUps; ve public float dropChance = 0.15f; ekle.
  3. BrickBroken içinde, Random.value < dropChance koşulu sağlanıyorsa powerUps[Random.Range(0, powerUps.Length)] nesnesini tuğlanın konumunda oluştur.

“Oyna” düğmesine bas ve tuğlaları kır: ara sıra bir güçlendirici düşer (yakalamayı bir sonraki adımda yapacağız). Ardından “Kontrol et” düğmesine bas.

Kendin dene

using UnityEngine;

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

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

Kendi başına pratik yap: Unity playground