חזרה: משבצות שמירה
חלק מהיחידה ארכיטקטורת משחקים ב-Unity במסלול ה-Unity של Coddy. שיעור 33 מתוך 64.
אתגר
בינונימלאו את משבצות השמירה; PathFor(i) ו-Show() מוכנות.
- ב-
SlotSave, התחילו חווה עםday = 1ו-gold = 20. - ב-
Start(), טענו כל משבצת שהקובץ שלה קיים לתוךslots[i]. - מקש הרווח יוצר
new SlotSave()במשבצת ריקה שנבחרה, או מקדם את היום:day+1,gold+15. שמרו, ואז הפעילו אתShow().
לחצו על "שחק" ועל מקש הרווח: > Slot 1: Day 1, 20 gold. לאחר מכן לחצו על "בדיקה".
נסו בעצמכם
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()
{
// טען כל משבצת שיש לה קובץ
Show();
}
void Update()
{
// Space: התחל חווה במשבצת שנבחרה, או שחק בה יום אחד, ואז שמור אותה
}
// הכפתור Delete קורא לפונקציה הזו
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;
}
}
}
כל השיעורים ביחידה ארכיטקטורת משחקים ב-Unity
1רכיבים, לא היררכיות
רכיבים קטניםסקריפט בסיסי לאויברכיבים מופשטיםרכיבים שפועלים יחדחזרה: צריח מודולריחזרה: תותח כפול4נתונים שעברו סריאליזציה
מחלקות שניתנות לסריאליזציהרשימות ב־Inspectorטיפוסי Enum ב־Inspectorחזרה: טבלת שללהגרלת השלל2ממשקים ב-Unity
IDamageableממשקים ו-TryGetComponentGetComponentsסיכום: מקש אינטראקציהסיכום: הקרוב ביותר בטווחתרגלו בעצמכם: Unity אונליין