ดังนั้นฉันจึงสร้างเกมที่คุณสามารถส่งเรือไปยังสถานที่ต่างๆเพื่อขายหรือซื้อทรัพยากรเช่นไม้เหล็กทองคำ ฯลฯ
ตอนนี้ฉันกำลังสงสัยว่าจะสร้างทรัพยากรในเกมได้อย่างไร ฉันมากับ 2 ตัวเลือก
สร้างคลาสสำหรับแต่ละทรัพยากร:
public class ResourceBase { private int value; // other base properties } public class Gold : ResourceBase { public Gold { this.value = 40 // or whatever } }
สร้างอินสแตนซ์ของคลาสทรัพยากร
public class Resource { string name; int value; public Resource(string name, int value) { this.name = name; this.value = value; } } // later on... Resource gold = new Resource("Gold",40);
ด้วยตัวเลือกที่สองเป็นไปได้ที่จะเติมทรัพยากรของเกมจากไฟล์ resources.json ฉันชอบโครงสร้างนั้น
ยินดีต้อนรับแนวคิด / รูปแบบการออกแบบ / โครงสร้างใหม่!
แก้ไข:มันเหมือนกับแอปสหายของ Assassins Creed Black Flag ดูแถบทรัพยากรในภาพด้านล่าง
แก้ไข 2:ฉันได้ทำบางวิจัยเพิ่มเติมเกี่ยวกับ "โหลดรายการ / ทรัพยากรจากไฟล์ JSON" และพบว่าบล็อกนี้: พลังของ JSON ในการพัฒนาเกม - รายการ มันแสดงให้เห็นถึงสิ่งที่ดีที่สุดของตัวเลือกที่ 1 และตัวเลือกที่ 2 คุณยังสามารถเพิ่มฟังก์ชันการทำงานให้กับแต่ละทรัพยากร :)
enum
แทน