// Generate By EToy
// Don't Edit It!!

using XGame.Framework.Database;
using XGame.Framework.Serialization;

namespace XGame.Database
{
    /// <summary> SimpleConfig </summary>
    public sealed class SimpleConfigTable : ITable
    {
        long ITable.Key => Id;

        /// <summary> 主键 </summary>
        public int Id { get; private set; }

        /// <summary> str </summary>
        public string Str { get; private set; } // c

        /// <summary> str数组 </summary>
        public string[] Strs { get; private set; } // sc

        /// <summary> 奖励 </summary>
        public Award[] Awards { get; private set; } // default:[{item_600004,1,0}]

        /// <summary> 枚举 </summary>
        public EQualityLevel Type { get; private set; }

        void ISerializable.Deserialize(IReader reader)
        {
            Id = reader.ReadInt();
            Str = reader.ReadString();
            Strs = reader.ReadEnumerable<string[]>();
            Awards = reader.ReadEnumerable<Award[]>();
            Type = (EQualityLevel)reader.ReadInt();
        }

        void ISerializable.Serialize(IWriter writer)
        {
            writer.Write(Id);
            writer.Write(Str);
            writer.Write(Strs);
            writer.Write(Awards);
            writer.Write((int)Type);
        }
    }
}
