Menu
CoddyTech

Rückblick: Im Shop einkaufen

Teil des Abschnitts Spielarchitektur in Unity der Unity-Journey von Coddy. Lektion 29 von 64.

In diesem Kapitel wurden Daten in Assets verschoben, die viele Objekte gemeinsam nutzen. Die Gegenstände des Shops sind solche Assets, daher gehört das, was der Spieler kauft, in den Shop und niemals in die Gegenstände selbst.

challenge icon

Aufgabe

Einfach

Lass die Leertaste den ausgewählten Gegenstand kaufen, ohne die Assets zu verändern.

  1. Speichere die gekauften Gegenstände im Shop in List<ItemData> owned.
  2. Wenn du die Leertaste drückst, wird bei einem bereits besessenen Gegenstand Already owned: Iron Sword protokolliert; kostet ein Gegenstand mehr als gold, wird Not enough gold for Iron Sword protokolliert.
  3. Ziehe andernfalls den Preis von gold ab, füge den Gegenstand zu owned hinzu, protokolliere Bought Iron Sword und aktualisiere die Texte.

Drücke „Spielen“ und kaufe den Long Bow. Drücke dann „Prüfen“.

Probier es selbst

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();
        }
        // Leertaste: den ausgewählten Gegenstand kaufen
    }

    void Show()
    {
        ItemData item = database.items[index];
        itemText.text = item.itemName + ": " + item.price + " gold";
        goldText.text = "Gold: " + gold;
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Spielarchitektur in Unity

Übe selbstständig: Unity-Playground