using EggLink.DanhengServer.Enums.Rogue; using Newtonsoft.Json; using Newtonsoft.Json.Converters; namespace EggLink.DanhengServer.Data.Config; /// /// Orginal Name: RogueChestMapConfig /// public class RogueChestMapInfo { public List PreStartRoomIDList { get; set; } = []; public int Width { get; set; } public int Height { get; set; } public int StartGridItemID { get; set; } public int EndGridItemID { get; set; } public Dictionary RogueChestGridItemMap { get; set; } = []; public Dictionary RogueChestEventMap { get; set; } = []; public List RogueBlockCreateGroupList { get; set; } = []; } public class RogueChestGridItem { public int PosX { get; set; } public int PosY { get; set; } [JsonProperty(ItemConverterType = typeof(StringEnumConverter))] public List BlockTypeList { get; set; } = []; public bool ExportToJson { get; set; } } public class RogueChestModifierEvent { [JsonConverter(typeof(StringEnumConverter))] public ModifierTriggerTypeEnum TriggerType { get; set; } public List TriggerParamList { get; set; } = []; [JsonConverter(typeof(StringEnumConverter))] public ModifierEffectTypeEnum EffectType { get; set; } public List EffectParamList { get; set; } = []; public List EffectParam2List { get; set; } = []; public float Weight { get; set; } } public class RogueBlockCreateGroup { public int BlockCreateID { get; set; } public int GroupID { get; set; } [JsonConverter(typeof(StringEnumConverter))] public RogueDLCBlockTypeEnum BlockType { get; set; } public List BlockCreatNumList { get; set; } = []; public List MarkCreateRandomList { get; set; } = []; } public class RogueDLCBlockWeight { public int CreateNum { get; set; } public int Weight { get; set; } } public class RogueDLCMarkType { public int TypeID { get; set; } public int Weight { get; set; } }