مراجعة: خانات الحفظ
جزء من قسم هندسة الألعاب في 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()
{
}
}
جميع دروس هندسة الألعاب في Unity
1المكوّنات لا التسلسلات الهرمية
مكوّنات صغيرةسكربت أساسي للعدومكوّنات مجرّدةتعمل المكوّنات معًامراجعة: برج دفاعي معياري4البيانات المتسلسلة
الأصناف القابلة للتسلسلالقوائم في Inspectorالتعدادات في Inspectorمراجعة: جدول الغنائم10مشروع: الناجي في الساحة
البطلأنواع الأعداء