סיכום: משבצות שמירה
חלק מהיחידה ארכיטקטורת משחקים ב-Unity במסלול ה-Unity של Coddy. שיעור 27 מתוך 50.
אתגר
בינוניבמשחק חקלאות יש שלושה משבצות שמירה, כל אחת בקובץ משלה: slot1.json, slot2.json ו־slot3.json בתוך Application.persistentDataPath. כתבו את SlotSave ואת SlotMenu:
SlotSave(ב־SlotSave.cs) היא מחלקה מסוג[System.Serializable]עם השדות הציבורייםdayו־gold. חווה חדשה מתחילה ביום 1 עם 20 מטבעות זהב, ושמירה מגרסה ישנה יותר שחסר בה ערך מקבלת את אותו ערך התחלתי.- כשהמשחק מתחיל, התפריט טוען כל משבצת שיש לה קובץ. משבצת 1 נבחרת; החץ למטה בוחר את המשבצת הבאה והחץ למעלה את הקודמת, תוך עצירה במשבצת 3 ובמשבצת 1.
- שלושת
slotTextsמציגים כל משבצת כך:Slot 2: Day 4, 65 goldאוSlot 2: empty, והשורה של המשבצת שנבחרה מתחילה ב־>, כך:> Slot 1: empty. - לחיצה על מקש הרווח במשבצת ריקה מתחילה בה חווה חדשה. לחיצה על מקש הרווח במשבצת שבשימוש מקדמת יום: היום עולה ב־1 והזהב עולה ב־15. בשני המקרים, המשבצת נשמרת בקובץ שלה.
- כפתור Delete קורא ל־
DeleteSelected(), שמוחק את הקובץ של המשבצת שנבחרה ומרוקן אותה.
לחצו על Play, התחילו חווה אחת או שתיים ושחקו כמה ימים, ואז לחצו על Stop ועל Play שוב. לאחר מכן לחצו על Check.
נסו בעצמכם
using System.IO;
using UnityEngine;
using UnityEngine.InputSystem;
using TMPro;
public class SlotMenu : MonoBehaviour
{
public TMP_Text[] slotTexts;
// הכפתור Delete קורא למתודה הזו
public void DeleteSelected()
{
}
}