using RPG.GameCore.Level.Objects; using RPG.GameCore.Level.Save; using System.Text.Json.Serialization; namespace RPG.GameCore.Level.Group; public class LevelGroupInfo { public string GroupGUID { get; set; } = string.Empty; // 0x10 public string GroupName { get; set; } = string.Empty; // 0x18 public string ConfigPrefabPath { get; set; } = string.Empty; // 0x20 public string LevelGraph { get; set; } = string.Empty; // 0x28 public string Model { get; set; } = string.Empty; // 0x30 public string AreaAnchorName { get; set; } = string.Empty; // 0x38 [JsonConverter(typeof(JsonStringEnumConverter))] public LevelSaveType SaveType { get; set; } // 0x40 public uint CheckClearMainMissionID { get; set; } // 0x44 public uint UnlockMainMissionID { get; set; } // 0x48 public LevelAnchorInfo[] AnchorList { get; set; } = []; // 0x50 // TODO: public LevelModelInfo[] ModelList { get; set; } // 0x58 public LevelMonsterInfo[] MonsterList { get; set; } = []; // 0x60 // TODO: public LevelPropInfo[] PropList { get; set; } // 0x68 // TODO: public LevelWaypointInfo[] WaypointList { get; set; } // 0x70 // TODO: public LevelPathwayInfo[] PathwayList { get; set; } // 0x78 // TODO: public LevelBattleAreaInfo[] BattleAreaList { get; set; } // 0x80 // TODO: public LevelNPCInfo[] NPCList { get; set; } // 0x88 public uint GroupRefreshID { get; set; } // 0x90 // TODO: public RandomNPCMonsterInfo[] RandomNPCMonsterList { get; set; } // 0x98 public uint[] InitialRandomNPCMonsterIDList { get; set; } = []; // 0xA0 }