Riepilogo: comprare dal negozio
Fa parte della sezione Architettura dei giochi in Unity del percorso Unity di Coddy. Lezione 29 di 64.
Questo capitolo ha spostato i dati in risorse condivise da molti oggetti. Gli articoli del negozio sono risorse di questo tipo, quindi ciò che compra il giocatore appartiene al Negozio, mai agli articoli.
Sfida
FacileFai in modo che la barra spaziatrice acquisti l'oggetto selezionato, senza modificare gli asset.
- Conserva gli oggetti acquistati in
List<ItemData> ownednello Shop. - Premendo la barra spaziatrice, un oggetto già posseduto registra
Already owned: Iron Sword; un oggetto che costa più digoldregistraNot enough gold for Iron Sword. - Altrimenti sottrai il prezzo da
gold, aggiungi l'oggetto aowned, registraBought Iron Sworde aggiorna i testi.
Premi «Gioca» e acquista l'arco lungo. Poi premi «Verifica».
Provalo tu
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
using TMPro;
public class Shop : MonoBehaviour
{
public ItemDatabase database;
public TMP_Text itemText;
public TMP_Text goldText;
public int gold = 50;
private int index;
void Start()
{
Show();
}
void Update()
{
if (Keyboard.current.rightArrowKey.wasPressedThisFrame)
{
index = (index + 1) % database.items.Count;
Show();
}
if (Keyboard.current.leftArrowKey.wasPressedThisFrame)
{
index = (index - 1 + database.items.Count) % database.items.Count;
Show();
}
// Space: acquista l'oggetto selezionato
}
void Show()
{
ItemData item = database.items[index];
itemText.text = item.itemName + ": " + item.price + " gold";
goldText.text = "Gold: " + gold;
}
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Architettura dei giochi in Unity
1Componenti, non gerarchie
Componenti piccoliUno script base per i nemiciComponenti astrattiComponenti che collaboranoRipasso: torretta modulareRipasso: cannone doppio4Dati serializzati
Classi serializzabiliElenchi nell'InspectorEnum nell'InspectorRiepilogo: tabella del bottinoRiepilogo: tira il bottino2Interfacce in Unity
IDamageableInterfacce e TryGetComponentGetComponentsRiepilogo: tasto InteragisciRiepilogo: il più vicino a portata5ScriptableObjects
Asset di datiStatistiche delle armiImpostazioni condiviseSalva il ventoOnde come datiRiepilogo: database degli oggettiRiepilogo: comprare dal negozioEsercitati da solo: Playground Unity