// // generated using ContentTool. DO NOT EDIT! // using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.Collections.ObjectModel; using Newtonsoft.Json.Converters; using Newtonsoft.Json; namespace MetaAssets { #pragma warning disable public partial class CraftingMaterialMutable { [JsonProperty("ItemId")] public int ItemId { get; set; } [JsonProperty("ItemValue")] public int ItemValue { get; set; } } public partial class CraftingAttributeMutable { [JsonProperty("AttributeName")] public string AttributeName { get; set; } [JsonProperty("AttributeValue")] public int AttributeValue { get; set; } } public partial class CraftingMetaDataMutable { [JsonProperty("Id")] public int Id { get; set; } [JsonProperty("PropSmallType")] public EPropSmallType PropSmallType { get; set; } [JsonProperty("Crafting_ItemId")] public int Crafting_ItemId { get; set; } [JsonProperty("Crafting_ItemValue")] public int Crafting_ItemValue { get; set; } [JsonProperty("RecipeType")] public ERecipeType RecipeType { get; set; } [JsonProperty("Recipe_ItemId")] public int Recipe_ItemId { get; set; } [JsonProperty("Material")] public IList Material { get; set; } [JsonProperty("Attribute")] public IList Attribute { get; set; } [JsonProperty("Prop")] public IList Prop { get; set; } [JsonProperty("CraftingTime")] public int CraftingTime { get; set; } [JsonProperty("Beacon_ReduceTime")] public int Beacon_ReduceTime { get; set; } [JsonProperty("Beacon_BonusItemId")] public int Beacon_BonusItemId { get; set; } [JsonProperty("max_craft_limit")] public int max_craft_limit { get; set; } } public partial class CraftingMetaTableMutable { [JsonProperty("CraftingMetaDataList")] public IList CraftingMetaDataList { get; set; } } ////////////////////////////// // readonly class ////////////////////////////// public partial class CraftingMaterial { public readonly int ItemId; public readonly int ItemValue; public CraftingMaterial(CraftingMaterialMutable data) { ItemId = data.ItemId; ItemValue = data.ItemValue; } } public partial class CraftingAttribute { public readonly string AttributeName; public readonly int AttributeValue; public CraftingAttribute(CraftingAttributeMutable data) { AttributeName = data.AttributeName; AttributeValue = data.AttributeValue; } } public partial class CraftingMetaData { public readonly int Id; public readonly EPropSmallType PropSmallType; public readonly int Crafting_ItemId; public readonly int Crafting_ItemValue; public readonly ERecipeType RecipeType; public readonly int Recipe_ItemId; public readonly IReadOnlyList Material; public readonly IReadOnlyList Attribute; public readonly IReadOnlyList Prop; public readonly int CraftingTime; public readonly int Beacon_ReduceTime; public readonly int Beacon_BonusItemId; public readonly int max_craft_limit; public CraftingMetaData(CraftingMetaDataMutable data) { Id = data.Id; PropSmallType = data.PropSmallType; Crafting_ItemId = data.Crafting_ItemId; Crafting_ItemValue = data.Crafting_ItemValue; RecipeType = data.RecipeType; Recipe_ItemId = data.Recipe_ItemId; if(data.Material != null) Material = data.Material.Select(x => new CraftingMaterial(x)).ToList().AsReadOnly(); if(data.Attribute != null) Attribute = data.Attribute.Select(x => new CraftingAttribute(x)).ToList().AsReadOnly(); if(data.Prop != null) Prop = data.Prop.ToList().AsReadOnly(); CraftingTime = data.CraftingTime; Beacon_ReduceTime = data.Beacon_ReduceTime; Beacon_BonusItemId = data.Beacon_BonusItemId; max_craft_limit = data.max_craft_limit; } } public partial class CraftingMetaTable { public readonly IReadOnlyList CraftingMetaDataList; public CraftingMetaTable(CraftingMetaTableMutable data) { if(data.CraftingMetaDataList != null) CraftingMetaDataList = data.CraftingMetaDataList.Select(x => new CraftingMetaData(x)).ToList().AsReadOnly(); } } }