//
// 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 SetEffectMutable
{
[JsonProperty("RequirementCount")]
public int RequirementCount { get; set; }
[JsonProperty("AttributeName")]
public string AttributeName { get; set; }
[JsonProperty("AttributeValue")]
public int AttributeValue { get; set; }
}
public partial class ItemSetMetaDataMutable
{
[JsonProperty("ID")]
public int ID { get; set; }
[JsonProperty("Name")]
public string Name { get; set; }
[JsonProperty("Items")]
public IList Items { get; set; }
[JsonProperty("SetEfffects")]
public IList SetEfffects { get; set; }
}
public partial class ItemSetMetaTableMutable
{
[JsonProperty("ItemSetMetaDataList")]
public IList ItemSetMetaDataList { get; set; }
}
//////////////////////////////
// readonly class
//////////////////////////////
public partial class SetEffect
{
public readonly int RequirementCount;
public readonly string AttributeName;
public readonly int AttributeValue;
public SetEffect(SetEffectMutable data)
{
RequirementCount = data.RequirementCount;
AttributeName = data.AttributeName;
AttributeValue = data.AttributeValue;
}
}
public partial class ItemSetMetaData
{
public readonly int ID;
public readonly string Name;
public readonly IReadOnlyList Items;
public readonly IReadOnlyList SetEfffects;
public ItemSetMetaData(ItemSetMetaDataMutable data)
{
ID = data.ID;
Name = data.Name;
if(data.Items != null)
Items = data.Items.ToList().AsReadOnly();
if(data.SetEfffects != null)
SetEfffects = data.SetEfffects.Select(x => new SetEffect(x)).ToList().AsReadOnly();
}
}
public partial class ItemSetMetaTable
{
public readonly IReadOnlyList ItemSetMetaDataList;
public ItemSetMetaTable(ItemSetMetaTableMutable data)
{
if(data.ItemSetMetaDataList != null)
ItemSetMetaDataList = data.ItemSetMetaDataList.Select(x => new ItemSetMetaData(x)).ToList().AsReadOnly();
}
}
}