//
// 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();
}
}
}