//------------------------------------------------------------------------------
//
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
using Luban;
namespace cfg
{
public sealed partial class Template : Luban.BeanBase
{
public Template(ByteBuf _buf)
{
Id = _buf.ReadInt();
Name = _buf.ReadString();
Desc = _buf.ReadString();
Price = _buf.ReadInt();
UpgradeToItemId = _buf.ReadInt();
UpgradeToItemId_Ref = null;
if(_buf.ReadBool()){ ExpireTime = _buf.ReadLong(); } else { ExpireTime = null; }
BatchUseable = _buf.ReadBool();
Quality = (EQuality)_buf.ReadInt();
ExchangeStream = ItemExchange.DeserializeItemExchange(_buf);
{int n0 = System.Math.Min(_buf.ReadSize(), _buf.Size);ExchangeList = new System.Collections.Generic.List(n0);for(var i0 = 0 ; i0 < n0 ; i0++) { ItemExchange _e0; _e0 = ItemExchange.DeserializeItemExchange(_buf); ExchangeList.Add(_e0);}}
ExchangeColumn = ItemExchange.DeserializeItemExchange(_buf);
}
public static Template DeserializeTemplate(ByteBuf _buf)
{
return new Template(_buf);
}
///
/// 这是id
///
public readonly int Id;
///
/// 名字
///
public readonly string Name;
///
/// 描述
///
public readonly string Desc;
///
/// 价格
///
public readonly int Price;
///
/// 引用当前表
///
public readonly int UpgradeToItemId;
public Template UpgradeToItemId_Ref;
///
/// 过期时间
///
public readonly long? ExpireTime;
///
/// 能否批量使用
///
public readonly bool BatchUseable;
///
/// 品质
///
public readonly EQuality Quality;
///
/// 道具兑换配置
///
public readonly ItemExchange ExchangeStream;
public readonly System.Collections.Generic.List ExchangeList;
///
/// 道具兑换配置
///
public readonly ItemExchange ExchangeColumn;
public const int __ID__ = -1256902502;
public override int GetTypeId() => __ID__;
public void ResolveRef(Tables tables)
{
UpgradeToItemId_Ref = tables.TbTemplate.GetOrDefault(UpgradeToItemId);
ExchangeStream?.ResolveRef(tables);
foreach (var _e in ExchangeList) { _e?.ResolveRef(tables); }
ExchangeColumn?.ResolveRef(tables);
}
public override string ToString()
{
return "{ "
+ "id:" + Id + ","
+ "name:" + Name + ","
+ "desc:" + Desc + ","
+ "price:" + Price + ","
+ "upgradeToItemId:" + UpgradeToItemId + ","
+ "expireTime:" + ExpireTime + ","
+ "batchUseable:" + BatchUseable + ","
+ "quality:" + Quality + ","
+ "exchangeStream:" + ExchangeStream + ","
+ "exchangeList:" + Luban.StringUtil.CollectionToString(ExchangeList) + ","
+ "exchangeColumn:" + ExchangeColumn + ","
+ "}";
}
}
}