diff --git a/Libraries/Core/Models/Eft/Common/Tables/CustomizationItem.cs b/Libraries/Core/Models/Eft/Common/Tables/CustomizationItem.cs index 9f274fc9..ea329f3a 100644 --- a/Libraries/Core/Models/Eft/Common/Tables/CustomizationItem.cs +++ b/Libraries/Core/Models/Eft/Common/Tables/CustomizationItem.cs @@ -1,4 +1,4 @@ -namespace Core.Models.Eft.Common.Tables; +namespace Core.Models.Eft.Common.Tables; using System.Text.Json.Serialization; @@ -17,8 +17,81 @@ public record CustomizationItem public string? Type { get; set; } [JsonPropertyName("_props")] - public Props? Properties { get; set; } + public CustomizationProps? Properties { get; set; } [JsonPropertyName("_proto")] public string? Proto { get; set; } } + +public class CustomizationProps +{ + [JsonPropertyName("Prefab")] + public object? Prefab { get; set; } // Prefab object or string + + [JsonPropertyName("WatchPrefab")] + public Prefab? WatchPrefab { get; set; } + + [JsonPropertyName("WatchRotation")] + public XYZ? WatchRotation { get; set; } + + [JsonPropertyName("WatchPosition")] + public XYZ? WatchPosition { get; set; } + + [JsonPropertyName("IntegratedArmorVest")] + public bool? IntegratedArmorVest { get; set; } + + [JsonPropertyName("MannequinPoseName")] + public string? MannequinPoseName { get; set; } + + [JsonPropertyName("BodyPart")] + public string? BodyPart { get; set; } + + [JsonPropertyName("Game")] + public List? Game { get; set; } + + [JsonPropertyName("Hands")] + public string? Hands { get; set; } + + [JsonPropertyName("Feet")] + public string? Feet { get; set; } + + [JsonPropertyName("Body")] + public string? Body { get; set; } + + [JsonPropertyName("ProfileVersions")] + public List? ProfileVersions { get; set; } + + [JsonPropertyName("Side")] + public List? Side { get; set; } + + [JsonPropertyName("Name")] + public string? Name { get; set; } + + [JsonPropertyName("ShortName")] + public string? ShortName { get; set; } + + [JsonPropertyName("Description")] + public string? Description { get; set; } + + [JsonPropertyName("AvailableAsDefault")] + public bool? AvailableAsDefault { get; set; } + + [JsonPropertyName("EnvironmentUIType")] + public string? EnvironmentUIType { get; set; } + + [JsonPropertyName("Interaction")] + public string? Interaction { get; set; } + + [JsonPropertyName("UsecTemplateId")] + public string? UsecTemplateId { get; set; } + + [JsonPropertyName("BearTemplateId")] + public string? BearTemplateId { get; set; } + + [JsonPropertyName("AssetPath")] + public Prefab? AssetPath { get; set; } + + [JsonPropertyName("HideGarbage")] + public bool? HideGarbage { get; set; } + +} diff --git a/Libraries/Core/Models/Eft/Common/Tables/TemplateItem.cs b/Libraries/Core/Models/Eft/Common/Tables/TemplateItem.cs index cdde0c84..137e4f80 100644 --- a/Libraries/Core/Models/Eft/Common/Tables/TemplateItem.cs +++ b/Libraries/Core/Models/Eft/Common/Tables/TemplateItem.cs @@ -1,4 +1,4 @@ -using System.Text.Json.Serialization; +using System.Text.Json.Serialization; using Core.Utils.Json.Converters; namespace Core.Models.Eft.Common.Tables; @@ -666,7 +666,7 @@ public record Props [JsonPropertyName("shotgunDispersion")] public double? ShotgunDispersion { get; set; } - [JsonPropertyName("chambers")] + [JsonPropertyName("Chambers")] public List? Chambers { get; set; } [JsonPropertyName("cameraSnap")] @@ -678,7 +678,7 @@ public record Props [JsonPropertyName("cameraToWeaponAngleStep")] public double? CameraToWeaponAngleStep { get; set; } - [JsonPropertyName("reloadMode")] + [JsonPropertyName("ReloadMode")] public string? ReloadMode { get; set; } [JsonPropertyName("aimPlane")] @@ -705,7 +705,7 @@ public record Props [JsonPropertyName("foldedSlot")] public string? FoldedSlot { get; set; } - [JsonPropertyName("forbidMissingVitalParts")] + [JsonPropertyName("ForbidMissingVitalParts")] public bool? ForbidMissingVitalParts { get; set; } [JsonPropertyName("forbidNonEmptyContainers")] @@ -1043,10 +1043,10 @@ public record Props [JsonPropertyName("repairType")] public string? RepairType { get; set; } - [JsonPropertyName("stackMinRandom")] + [JsonPropertyName("StackMinRandom")] public double? StackMinRandom { get; set; } - [JsonPropertyName("stackMaxRandom")] + [JsonPropertyName("StackMaxRandom")] public double? StackMaxRandom { get; set; } [JsonPropertyName("ammoType")] @@ -1160,7 +1160,7 @@ public record Props [JsonPropertyName("lightBleedingDelta")] public double? LightBleedingDelta { get; set; } - [JsonPropertyName("showBullet")] + [JsonPropertyName("ShowBullet")] public bool? ShowBullet { get; set; } [JsonPropertyName("hasGrenaderComponent")] @@ -1175,10 +1175,10 @@ public record Props [JsonPropertyName("minExplosionDistance")] public double? MinExplosionDistance { get; set; } - [JsonPropertyName("maxExplosionDistance")] + [JsonPropertyName("MaxExplosionDistance")] public double? MaxExplosionDistance { get; set; } - [JsonPropertyName("fragmentsCount")] + [JsonPropertyName("FragmentsCount")] public double? FragmentsCount { get; set; } [JsonPropertyName("fragmentType")] @@ -1190,10 +1190,10 @@ public record Props [JsonPropertyName("explosionType")] public string? ExplosionType { get; set; } - [JsonPropertyName("ammoLifeTimeSec")] + [JsonPropertyName("AmmoLifeTimeSec")] public double? AmmoLifeTimeSec { get; set; } - [JsonPropertyName("ammoTooltipClass")] + [JsonPropertyName("AmmoTooltipClass")] public string? AmmoTooltipClass { get; set; } [JsonPropertyName("contusion")] @@ -1326,37 +1326,10 @@ public record Props public List? ProfileVersions { get; set; } [JsonPropertyName("Side")] - public List? Side { get; set; } + public List? Side { get; set; } - [JsonPropertyName("BodyPart")] - public string? BodyPart { get; set; } - - [JsonPropertyName("IntegratedArmorVest")] - public bool? IntegratedArmorVest { get; set; } - - [JsonPropertyName("WatchPosition")] - public XYZ? WatchPosition { get; set; } - - [JsonPropertyName("WatchPrefab")] - public Prefab? WatchPrefab { get; set; } - - [JsonPropertyName("WatchRotation")] - public XYZ? WatchRotation { get; set; } - - [JsonPropertyName("Game")] - public List? Game { get; set; } - - [JsonPropertyName("Body")] - public string? Body { get; set; } - - [JsonPropertyName("Hands")] - public string? Hands { get; set; } - - [JsonPropertyName("Feet")] - public string? Feet { get; set; } - - [JsonExtensionData] - public Dictionary OtherProperties { get; set; } + //[JsonExtensionData] + //public Dictionary OtherProperties { get; set; } } public record WeaponRecoilSettings