Menu
CoddyTech

Riepilogo: slot di salvataggio

Fa parte della sezione Architettura dei giochi in Unity del percorso Unity di Coddy. Lezione 27 di 50.

challenge icon

Sfida

Medio

Un gioco di fattoria ha tre slot di salvataggio, ciascuno nel proprio file: slot1.json, slot2.json e slot3.json in Application.persistentDataPath. Scrivi SlotSave e SlotMenu:

  • SlotSave (in SlotSave.cs) è una classe [System.Serializable] con i campi pubblici day e gold. Una nuova fattoria inizia al giorno 1 con 20 monete d’oro, e un salvataggio di una versione precedente a cui manca un valore riceve lo stesso valore iniziale.
  • All’avvio del gioco, il menu carica ogni slot per cui esiste un file. Lo slot 1 è selezionato; la freccia giù seleziona lo slot successivo e la freccia su quello precedente, fermandosi allo slot 3 e allo slot 1.
  • I tre slotTexts mostrano ogni slot come Slot 2: Day 4, 65 gold oppure Slot 2: empty, e la riga dello slot selezionato inizia con > , come in > Slot 1: empty.
  • Premendo Spazio su uno slot vuoto si avvia una nuova fattoria in quello slot. Premendo Spazio su uno slot in uso si gioca una giornata: il giorno aumenta di 1 e l’oro di 15. In entrambi i casi, lo slot viene salvato nel suo file.
  • Il pulsante Delete chiama DeleteSelected(), che elimina il file dello slot selezionato e svuota lo slot.

Premi Play, avvia una o due fattorie e gioca qualche giornata, poi premi Stop e di nuovo Play. Quindi premi Check.

Provalo tu

using System.IO;
using UnityEngine;
using UnityEngine.InputSystem;
using TMPro;

public class SlotMenu : MonoBehaviour
{
    public TMP_Text[] slotTexts;

    // Il pulsante Delete chiama questo metodo
    public void DeleteSelected()
    {
    }
}

Tutte le lezioni di Architettura dei giochi in Unity