CodeBlanks Logo Icon CodeBlanks

Özet - Envanter sistemi

Envanter sistemini tek bir özet görevle birleştirirsin.

Envanter sistemi özeti

Envanter sistemi üç katmandan oluşur: veri, mantık ve arayüz. Öğe bilgileri ItemData ile saklanır, Inventory sınıfı slot'ları yönetir, arayüz ise prefab slot widget'larla çizilir. Aynı öğeler stack olarak birleştirilir.

int toplamYigin = birAdet + ikiAdet;

Modüler tasarım sayesinde her katman bağımsız geliştirilebilir.

Uygulama Envanter sistemi özeti

EnvanterOzet sınıfında string katman alanını "Veri" ve int slotSayisi alanını 20 değerleriyle, ayrıca int islem alanını tanımla. Awake metodu içinde katman değerini "Arayuz" yap. Start metodu içinde Debug.Log ile "Katman: ", katman, " Slot: " ve slotSayisi parçalarını birleştirerek yazdır. Update metodu içinde islem sayacını her karede bir artır.

Başlangıç kodu

Player.cs
using UnityEngine;

public class EnvanterOzet : MonoBehaviour
{
    // string katman alanini "Veri", int slotSayisi alanini 20 degeriyle tanimla
    // int islem alanini tanimla

    void Awake()
    {
        // katman degerini "Arayuz" yap
    }

    void Start()
    {
        // "Katman: " + katman + " Slot: " + slotSayisi biciminde yazdir
    }

    void Update()
    {
        // islem sayacini her karede bir artir
    }
}

Örnek çözüm

Player.cs
using UnityEngine;

public class EnvanterOzet : MonoBehaviour
{
    string katman = "Veri";
    int slotSayisi = 20;
    int islem;

    void Awake()
    {
        katman = "Arayuz";
    }

    void Start()
    {
        Debug.Log("Katman: " + katman + " Slot: " + slotSayisi);
    }

    void Update()
    {
        islem++;
    }
}

Beklenen çıktı

Katman: Arayuz Slot: 20

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Envanter sisteminde 'stack' ne işe yarar?

Player.cs
int toplamYigin = birAdet + ikiAdet;
  • Slot sayısını artırır
  • Öğeleri sahneye yerleştirir
  • Arayüzün rengini değiştirir
  • Aynı öğeleri tek slot'ta toplar Doğru cevap

Açıklama: Stack, aynı türdeki öğeleri tek slot altında toplayarak slot harcamadan taşınmasını sağlar.

2 Maksimum öğe sayısını hesapla

Soru
    int slotSayisi = 20;
    int yiginLimiti = 10;
    int maksimumOge = slotSayisi * ____;
Cevap
    int slotSayisi = 20;
    int yiginLimiti = 10;
    int maksimumOge = slotSayisi * yiginLimiti;

Açıklama: Toplam kapasite, slot sayısı ile her slotun yığın limiti çarpılarak bulunur.

3 Envanter özeti tablosu

Kavram Anlamı
ItemData Öğe bilgisini tutan veri
Inventory Slot'ları yöneten sistem
Stack Aynı öğeleri birleştirme
Slot widget Arayüzdeki slot gösterimi

İleri seviye bölümündeki tüm dersler