Menu
CoddyTech

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.

challenge icon

Sfida

Facile

Fai in modo che la barra spaziatrice acquisti l'oggetto selezionato, senza modificare gli asset.

  1. Conserva gli oggetti acquistati in List<ItemData> owned nello Shop.
  2. Premendo la barra spaziatrice, un oggetto già posseduto registra Already owned: Iron Sword; un oggetto che costa più di gold registra Not enough gold for Iron Sword.
  3. Altrimenti sottrai il prezzo da gold, aggiungi l'oggetto a owned, registra Bought Iron Sword e 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;
    }
}
quiz iconMettiti alla prova

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

Esercitati da solo: Playground Unity