using System.ComponentModel;

namespace NetWorkMessage
{
    public static class MessageOpcode
    {
        /// <summary>
        /// 无效的
        /// </summary>
        public const uint None = 0;
        
        public const uint NetInnerMessage = 1;

        public const uint NetInnerRequest = 2;

        public const uint NetInnerResponse = 3;

        /// <summary>
        /// 普通消息
        /// </summary>
        public const uint NormalMessage = 4;

        /// <summary>
        /// 请求消息
        /// </summary>
        public const uint NormalRequestMessage = 5;

        /// <summary>
        /// 回应消息
        /// </summary>
        public const uint NormalResponseMessage = 6;

        /// <summary>
        /// 跨进程发消息指令
        /// </summary>
        public const uint StartProcessMessage = 7;

        public const uint ProcessRequestMessage = 8;
        
        public const uint ProcessResponseMessage = 9;

        /// <summary>
        /// 外部消息
        /// </summary>
        public const uint Client2ServerMessage = 10;

        /// <summary>
        /// 客户端消息
        /// </summary>
        public const uint ClientMessage = 11;

        /// <summary>
        /// 绑定用户数据
        /// </summary>
        public const uint BindUserRequest = 12;

        /// <summary>
        /// 绑定用户数据回应
        /// </summary>
        public const uint BindUserResponse = 13;

        /// <summary>
        /// 路由心跳包
        /// </summary>
        public const uint RouterHeart = 14;

        /// <summary>
        /// 服务器发送给客户端
        /// </summary>
        public const uint Server2ClientMessage = 15;

        /// <summary>
        /// 路由过来连接
        /// </summary>
        public const uint RouterSyn = 16;

        /// <summary>
        /// 路由确认连接
        /// </summary>
        public const uint RouterAck = 17;

        /// <summary>
        /// 路由断开
        /// </summary>
        public const uint RouterFin = 18;

        /// <summary>
        /// 路由确认断开
        /// </summary>
        public const uint RouterFinAck = 19;
        
        /// <summary>
        /// RPC Pay
        /// </summary>
        public const uint PayInnerRPCRequest = 20;
        public const uint PayInnerRPCResponse = 21;

        /// <summary>
        /// 发送消息给用户
        /// </summary>
        public const uint UserNetSendMessage = 22;

        /// <summary>
        /// 强制断开用户网络连接
        /// </summary>
        public const uint UserNetForceFinMessage = 23;
        
        /// <summary>
        /// RPC 客户端通知支付成功
        /// </summary>
        public const uint PayC2SSuccessNotifyInnerRPCRequest = 24;
        public const uint  PayC2SSuccessNotifyInnerRPCResponse = 25;
        
        /// <summary>
        /// RPC 调用中心服务器通知玩家显示奖励
        /// </summary>
        public const uint  PlayerShowAwardRPCRequest = 26;
        public const uint  PlayerShowAwardRPCResponse = 27;
        
        /// <summary>
        /// 玩家道具变化
        /// </summary>
        public const uint UserPropChange = 28;
        
        /// <summary>
        /// RPC 从桌子上踢出玩家
        /// </summary>
        public const uint  GameClubKickOutPlayerRPCRequest = 29;
        public const uint  GameClubKickOutPlayerRPCResponse = 30;
        
        /// <summary>
        /// RPC 俱乐部解散桌子
        /// </summary>
        public const uint  GameClubDismissDeskRPCRequest = 31;
        public const uint  GameClubDismissDeskRPCResponse = 32;
        
        /// <summary>
        /// RPC 俱乐部加入桌子
        /// </summary>
        public const uint  GameClubJoinDeskRPCRequest = 33;
        public const uint  GameClubJoinDeskRPCResponse = 34;
        
        /// <summary>
        /// RPC 获取俱乐部信息
        /// </summary>
        public const uint  ClubGetInfoRPCRequest = 35;
        public const uint  ClubGetInfoRPCResponse = 36;
        
        /// <summary>
        /// RPC 测试消息
        /// </summary>
        public const uint RpcTestRequest = 37;
        public const uint RpcTestResponse = 38;
        
        /// <summary>
        /// 用户货币变化事件
        /// </summary>
        public const uint UserCurrencyChange = 39;

        /// <summary>
        /// 用户登录数据
        /// </summary>
        public const uint UserLoginData = 40;


        /// <summary>
        /// 客户端链接路由的IP地址拉黑通知
        /// </summary>
        public const uint ClientRouterIPAddBlack = 41;
    }
}