Alışveriş ve Envanter
Coddy'nin Unity Journey'sinin Gerçek Oyunlar Geliştirmek bölümünün bir parçası. Ders 54 / 56.
Seviyeler arasında kahraman bir dükkânı ziyaret eder. Rafta üç eşya bekler: bir Miğfer, Çizme ve Pelerin; her biri fiyatını gösteren bir düğmenin üzerindedir. Kahramanın henüz alamayacağı eşyalar için para kazanmasını sağlayan bir Çalış düğmesi de vardır. Kahramanın satın aldıkları altta listelenen envantere eklenir; kalan paralar ve sahip olunan eşyalar, oyun bir sonraki kez başlatıldığında da orada olur.
İki betik yaz: Shop nesnesine Shop, her eşyanın düğmesine de ShopItem.
Görev
ZorInspector, Shop'a startCoins (100), pay (25), coinsText, inventoryText, workButton ve items değerlerini, raf sırasındaki üç ShopItem'ı verir. Her ShopItem'a itemName ve price (Helmet 40, Boots 60, Cape 120), label (düğmesindeki metin) ve shop değerlerini verir.
- Coin'ler
Coinsanahtarı altında kaydedilir; kayıtlı verisi olmayan bir oyuncustartCoinsile başlar.coinsTextbunlarıCoins: 100olarak gösterir. - Çalış düğmesine her tıklama
paykadar coin kazandırır. - Bir eşya,
Owned_anahtarıyla birlikte eşyanın adı (Owned_Helmet) 1 değerini tutuyorsa sahiplenilmiş olur. Eşya satılık olduğu sürece etiketiHelmet: 40, sahiplenildiğinde iseHelmet: ownedyazar. - Bir eşyanın düğmesine yalnızca eşya sahiplenilmemişse ve oyuncunun en az eşyanın fiyatı kadar coini varsa tıklanabilir. Düğmeye tıklamak eşyayı satın alır: fiyat coin'lerden düşülür ve eşya sahiplenilir.
inventoryText, sahiplenilen eşyaları raf sırasına göreInventory: Helmet, Capeolarak listeler veyaInventory: emptyyazar.- Her değişiklik anında kaydedilir ve tüm metinler ile düğmeler yeni durumu gösterir.
Oyna'ya bas, alışveriş yap ve çalış; ardından Durdur'a ve tekrar Oyna'ya bas, sonra Kontrol Et'e bas.
Kendin dene
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class Shop : MonoBehaviour
{
public int startCoins = 100;
public int pay = 25;
public TMP_Text coinsText;
public TMP_Text inventoryText;
public Button workButton;
public ShopItem[] items;
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Gerçek Oyunlar Geliştirmek bölümündeki tüm dersler
1Ekrandaki Metinler
Canvas ve MetinSkoru GösterSayıları BiçimlendirGeri Sayım ZamanlayıcısıTekrar: Hız Göstergesi4Sahneler ve Bölümler
Bir Sahne YüklemeBölümü Yeniden BaşlatmaSonraki BölümSahneler Arasında SaklamaTekrar: Bölüm Seçimi10Proje: 3D Platform Oyunu
ParkurHareketli Platformlar2Düğmeler ve Ekranlar
Düğmeler ve onClickLambda İfadeleriInspector'da Bağlantı KurmaPanelleri Açma ve KapamaCan ÇubuklarıTekrar: Yükseltme Mağazası5PlayerPrefs ile Kaydetme
Bir Sayı KaydetmeVarsayılan Değerle YüklemeEn Yüksek SkorAyarları KaydetmeTekrar: Bankadaki Paralar