add missing props, partial implement service

This commit is contained in:
CWX
2025-01-14 23:11:42 +00:00
parent b4806f06a8
commit b6e4dde259
4 changed files with 371 additions and 44 deletions
+52 -12
View File
@@ -1,4 +1,4 @@
using System.Text.Json.Serialization;
using System.Text.Json.Serialization;
using Core.Models.Eft.Common;
using Core.Models.Enums;
using Core.Utils.Json.Converters;
@@ -77,38 +77,78 @@ public class SeasonalEvent
public int EndMonth { get; set; }
[JsonPropertyName("settings")]
public Dictionary<string, object> Settings { get; set; } // TODO: Type was Record<string, ISeasonalEventSettings | IZombieSettings>
public SeasonalEventSettings? Settings { get; set; }
[JsonPropertyName("setting")]
public Dictionary<string, object> SettingsDoNOTUse { set => Settings = value; }
public SeasonalEventSettings? SettingsDoNOTUse { set => Settings = value; }
}
public class SeasonalEventSettings
{
[JsonPropertyName("enabled")]
public bool Enabled { get; set; }
[JsonPropertyName("enableSummoning")]
public bool? EnableSummoning { get; set; }
[JsonPropertyName("enableHalloweenHideout")]
public bool? EnableHalloweenHideout { get; set; }
[JsonPropertyName("enableChristmasHideout")]
public bool? EnableChristmasHideout { get; set; }
[JsonPropertyName("enableSanta")]
public bool? EnableSanta { get; set; }
[JsonPropertyName("adjustBotAppearances")]
public bool? AdjustBotAppearances { get; set; }
[JsonPropertyName("addEventGearToBots")]
public bool? AddEventGearToBots { get; set; }
[JsonPropertyName("addEventLootToBots")]
public bool? AddEventLootToBots { get; set; }
[JsonPropertyName("removeEntryRequirement")]
public List<string>? RemoveEntryRequirement { get; set; }
[JsonPropertyName("replaceBotHostility")]
public bool? ReplaceBotHostility { get; set; }
[JsonPropertyName("forceSeason")]
public Season? ForceSeason { get; set; }
[JsonPropertyName("zombieSettings")]
public ZombieSettings? ZombieSettings { get; set; }
[JsonPropertyName("disableBosses")]
public List<string>? DisableBosses { get; set; }
[JsonPropertyName("disableWaves")]
public List<string>? DisableWaves { get; set; }
}
public class ZombieSettings : SeasonalEventSettings
public class ZombieSettings
{
[JsonPropertyName("enabled")]
public bool? Enabled { get; set; }
[JsonPropertyName("mapInfectionAmount")]
public Dictionary<string, int> MapInfectionAmount { get; set; }
public Dictionary<string, int>? MapInfectionAmount { get; set; }
[JsonPropertyName("disableBosses")]
public List<string> DisableBosses { get; set; }
public List<string>? DisableBosses { get; set; }
[JsonPropertyName("disableWaves")]
public List<string> DisableWaves { get; set; }
public List<string>? DisableWaves { get; set; }
}
public class GifterSetting
{
[JsonPropertyName("map")]
public string Map { get; set; }
public string? Map { get; set; }
[JsonPropertyName("zones")]
public string Zones { get; set; }
public string? Zones { get; set; }
[JsonPropertyName("spawnChance")]
public int SpawnChance { get; set; }
public int? SpawnChance { get; set; }
}