Negozio e inventario
Fa parte della sezione Creare veri giochi del percorso Unity di Coddy. Lezione 54 di 56.
Tra un livello e l'altro, l'eroe visita un negozio. Tre oggetti aspettano sullo scaffale: un Helmet, dei Boots e un Cape, ciascuno su un pulsante che mostra il proprio prezzo; un pulsante Work permette di guadagnare gettoni per quelli che l'eroe non può ancora permettersi. Ciò che l'eroe acquista va nell'inventario elencato in fondo, e i gettoni rimanenti e gli oggetti posseduti sono ancora presenti la volta successiva che il gioco viene avviato.
Scrivi due script: Shop sull'oggetto Shop e ShopItem sul pulsante di ciascun oggetto.
Sfida
DifficileL’Inspector assegna a Shop startCoins (100), pay (25), coinsText, inventoryText, workButton e items, i tre ShopItems nell’ordine in cui si trovano sullo scaffale. Assegna a ciascun ShopItem il suo itemName e price (Helmet 40, Boots 60, Cape 120), label (il testo sul suo pulsante) e shop.
- Le monete vengono salvate con la chiave
Coins; un giocatore senza dati salvati inizia constartCoins.coinsTextle mostra comeCoins: 100. - Ogni clic su Work fa guadagnare
paymonete. - Un oggetto è posseduto quando la chiave
Owned_più il suo nome (Owned_Helmet) contiene 1. La sua etichetta mostraHelmet: 40quando è in vendita eHelmet: ownedquando è posseduto. - Si può fare clic sul pulsante di un oggetto solo se l’oggetto non è posseduto e il giocatore ha almeno il suo prezzo. Facendo clic, si acquista l’oggetto: il prezzo viene sottratto dalle monete e l’oggetto diventa posseduto.
inventoryTextelenca gli oggetti posseduti nell’ordine in cui si trovano sullo scaffale, comeInventory: Helmet, Cape, oppure mostraInventory: empty.- Ogni modifica viene salvata subito e tutti i testi e i pulsanti mostrano il nuovo stato.
Premi Play, fai acquisti e lavora, premi Stop e di nuovo Play, poi Check.
Provalo tu
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;
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Creare veri giochi
1Testo sullo schermo
Canvas e testoMostra il punteggioFormattare i numeriUn timer per il conto alla rovesciaRiepilogo: tachimetro4Scene e livelli
Caricare una scenaRiavviare il livelloLivello successivoMantenere i dati tra le sceneRiepilogo: selezione del livello10Progetto: Platform 3D
Il percorsoPiattaforme mobili2Pulsanti e schermate
Pulsanti e onClickLambdaCollegare nell'InspectorPannelli attivi e disattiviBarre della saluteRiepilogo: negozio degli upgrade5Salvare con PlayerPrefs
Salvare un numeroCaricare con un valore predefinitoPunteggio massimoSalvare le impostazioniRiepilogo: monete in banca8Controller del personaggio
CharacterController.MoveGravità manualeSaltoSpingere gli oggettiMuoviti dove guardiRiepilogo: doppio salto3Il gestore del gioco
Uno script gestisce il giocoIl SingletonStati di giocoSelezionare lo statoRiepilogo: gestore del round6Progetto: Corsa infinita
Tre corsieOstacoli in arrivo9Il nuovo sistema di input
Due sistemi di inputTastiera e mousePremuto in questo frameAzioni di inputRiepilogo: cambio di input