// Generate By EToy
// Don't Edit It!!
using XGame.Framework.Database;
using XGame.Framework.Serialization;
namespace XGame.Database
{
/// Chapter
public sealed class ChapterTable : ITable
{
long ITable.Key => Id;
/// ID10000000*关卡类型+章节*10000+关卡*100+节点
public int Id { get; private set; }
/// 关卡类型1:常规关卡
public int Type { get; private set; } // c
/// 关卡名称
public string Name { get; private set; } // c
/// 等级
public int Level { get; private set; }
/// 调节系数
public int Power { get; private set; }
/// 地图
public int Map { get; private set; } // c
/// 章节
public int Chapter { get; private set; }
/// 关卡
public int Section { get; private set; }
/// 节点
public int Part { get; private set; }
/// 0:普通节点1:BOSS节点
public int Part_type { get; private set; } // c
/// 每波出怪间隔(单位:豪秒)
public int Interval { get; private set; } // c
/// 第1波怪物ID,数量,列数
public int[] Monster_refresh1 { get; private set; }
/// 第2波怪物ID,数量,列数
public int[] Monster_refresh2 { get; private set; }
/// 第3波怪物ID,数量,列数
public int[] Monster_refresh3 { get; private set; }
/// 第4波怪物ID,数量,列数
public int[] Monster_refresh4 { get; private set; }
/// 第5波怪物ID,数量,列数
public int[] Monster_refresh5 { get; private set; }
/// 关卡通关限时(单位:豪秒)-1:表现不限制
public int Time { get; private set; }
/// 首通奖励[道具ID,道具数量]
public int[] Section_reward { get; private set; }
/// 离线奖励(道具id+道具数量)
public int[] Offline_reward { get; private set; }
/// 时间结算奖励毫秒*1000
public int RewardTime { get; private set; }
void ISerializable.Deserialize(IReader reader)
{
Id = reader.ReadInt();
Type = reader.ReadInt();
Name = reader.ReadString();
Level = reader.ReadInt();
Power = reader.ReadInt();
Map = reader.ReadInt();
Chapter = reader.ReadInt();
Section = reader.ReadInt();
Part = reader.ReadInt();
Part_type = reader.ReadInt();
Interval = reader.ReadInt();
Monster_refresh1 = reader.ReadEnumerable();
Monster_refresh2 = reader.ReadEnumerable();
Monster_refresh3 = reader.ReadEnumerable();
Monster_refresh4 = reader.ReadEnumerable();
Monster_refresh5 = reader.ReadEnumerable();
Time = reader.ReadInt();
Section_reward = reader.ReadEnumerable();
Offline_reward = reader.ReadEnumerable();
RewardTime = reader.ReadInt();
}
void ISerializable.Serialize(IWriter writer)
{
writer.Write(Id);
writer.Write(Type);
writer.Write(Name);
writer.Write(Level);
writer.Write(Power);
writer.Write(Map);
writer.Write(Chapter);
writer.Write(Section);
writer.Write(Part);
writer.Write(Part_type);
writer.Write(Interval);
writer.Write(Monster_refresh1);
writer.Write(Monster_refresh2);
writer.Write(Monster_refresh3);
writer.Write(Monster_refresh4);
writer.Write(Monster_refresh5);
writer.Write(Time);
writer.Write(Section_reward);
writer.Write(Offline_reward);
writer.Write(RewardTime);
}
}
}