Menu
CoddyTech

Ringkasan: Slot Simpanan

Termasuk bagian Arsitektur Game di Unity dalam perjalanan Unity di Coddy. Pelajaran 33 dari 64.

challenge icon

Tantangan

Sedang

Isi slot penyimpanan, PathFor(i) dan Show() sudah siap.

  1. Di SlotSave, mulai sebuah pertanian dengan day = 1 dan gold = 20.
  2. Di Start(), muat setiap slot yang filenya ada ke dalam slots[i].
  3. Tombol Spasi menempatkan new SlotSave() di slot terpilih yang kosong, atau memajukan satu hari: day +1, gold +15. Simpan, lalu Show().

Tekan tombol “Main” dan Spasi: > Slot 1: Day 1, 20 gold. Lalu tekan tombol “Periksa”.

Coba sendiri

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

public class SlotMenu : MonoBehaviour
{
    public TMP_Text[] slotTexts;
    private SlotSave[] slots = new SlotSave[3];
    private int selected;

    void Start()
    {
        // Muat setiap slot yang memiliki file
        Show();
    }

    void Update()
    {
        // Space: mulai pertanian di slot yang dipilih, atau jalani satu hari di sana, lalu simpan
    }

    // Tombol Delete memanggil ini
    public void DeleteSelected()
    {
    }

    string PathFor(int index)
    {
        return Path.Combine(Application.persistentDataPath, "slot" + (index + 1) + ".json");
    }

    void Show()
    {
        for (int i = 0; i < slots.Length; i++)
        {
            string line = "Slot " + (i + 1) + ": ";
            if (slots[i] == null)
            {
                line += "empty";
            }
            else
            {
                line += "Day " + slots[i].day + ", " + slots[i].gold + " gold";
            }
            if (i == selected)
            {
                line = "> " + line;
            }
            slotTexts[i].text = line;
        }
    }
}

Semua pelajaran di Arsitektur Game di Unity

Latihan sendiri: Playground Unity