luban/src/Luban.Server/Templates/config/cs_editor_json/table.tpl

64 lines
1.3 KiB
Smarty

using Bright.Serialization;
namespace {{namespace}}
{
public sealed class {{name}} : Bright.Net.Protocol
{
{{~for field in fields ~}}
public {{field.ctype.cs_define_type}} {{field.cs_style_name}};
{{~end~}}
public {{name}}()
{
}
public {{name}}(Bright.Common.NotNullInitialization _)
{
{{~for field in fields ~}}
{{~if field.ctype.need_init~}}
{{field.proto_cs_init_field}}
{{~end~}}
{{~end~}}
}
public const int ID = {{id}};
public override int GetTypeId()
{
return ID;
}
public override void Serialize(ByteBuf _buf)
{
{{~for field in fields ~}}
{{field.cs_serialize}}
{{~end~}}
}
public override void Deserialize(ByteBuf _buf)
{
{{~for field in fields ~}}
{{field.cs_deserialize}}
{{~end~}}
}
public override void Reset()
{
throw new System.NotImplementedException();
}
public override object Clone()
{
throw new System.NotImplementedException();
}
public override string ToString()
{
return "{{full_name}}{ "
{{~for field in fields ~}}
+ "{{field.cs_style_name}}:" + {{field.proto_cs_to_string}} + ","
{{~end~}}
+ "}";
}
}
}