Ricette di creazione
Fa parte della sezione Architettura dei giochi in Unity del percorso Unity di Coddy. Lezione 63 di 64.
Sfida
DifficileAssegna le ricette a CraftingBench.
- Aggiungi
Ingredientserializzabile (conitemeamountpubblici) eRecipe(conresulteList<Ingredient> needspubblici), oltre a unList<Recipe> recipespubblico. - In
Start,recipeButtons[i]chiamaCraft(i). public void Craft(int index): se hai tutti gli ingredienti necessari, rimuovili, aggiungi un risultato e registraCrafted Axe.Refreshrende un pulsante cliccabile solo quando è possibile creare la ricetta corrispondente.
Premi «Gioca» e crea una zattera. Poi premi «Verifica».
Provalo tu
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class CraftingBench : MonoBehaviour
{
[SerializeField] private Inventory inventory;
[SerializeField] private Button[] recipeButtons;
[SerializeField] private Button woodButton;
[SerializeField] private Button stoneButton;
[SerializeField] private TMP_Text inventoryText;
void OnEnable()
{
inventory.Changed += Refresh;
}
void OnDisable()
{
inventory.Changed -= Refresh;
}
void Start()
{
woodButton.onClick.AddListener(() => inventory.Add("Wood", 1));
stoneButton.onClick.AddListener(() => inventory.Add("Stone", 1));
// Ricette: il pulsante della ricetta i crea la ricetta i
Refresh();
}
void Refresh()
{
// Ricette: un pulsante di una ricetta è cliccabile solo quando la relativa ricetta può essere creata
inventoryText.text = "Inventory: " + inventory.Describe();
}
}
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