Exemplo n.º 1
0
        /// <summary>
        /// 创建角色
        /// </summary>
        public void Creat(ClientPeer client, string name)
        {
            SingleExecute.Instance.Execute(() => {
                //这个客户端是不是非法登陆
                if (!accountCache.IsOnline(client))
                {
                    //非法登陆
                    user.Set("非法登陆");
                    client.StartSend(OpCode.USER, UserCode.CREAT_SRES, user);
                    Console.WriteLine("非法登陆");
                    return;
                }

                //获取账号id
                int accountId = accountCache.GetID(client);
                //判断有没有角色
                if (userCache.IsExist(accountId))
                {
                    //重复创建
                    user.Set("重复创建");
                    client.StartSend(OpCode.USER, UserCode.CREAT_SRES, user);
                    Console.WriteLine("重复创建");
                    return;
                }
                //创建角色
                userCache.Creat(name, accountId);
                user.Set("创建角色成功");
                client.StartSend(OpCode.USER, UserCode.CREAT_SRES, user);
                Console.WriteLine("创建角色成功");
            });
        }
Exemplo n.º 2
0
 /// <summary>
 /// 创建角色
 /// </summary>
 /// <param name="client"></param>
 /// <param name="name"></param>
 private void Creat(ClientPeer client, string name)
 {
     SingleExecute.Instance.Execute(delegate
     {
         //判断客户端是否非法登录
         if (!accountCache.IsOnline(client))
         {
             client.Send(OpCode.USER, UserCode.CREAT_SRES, -1); //非法登录
             return;
         }
         //客户端正常登录   获取ACCOUNTID
         int accountId = accountCache.GetId(client);
         //根据id判断是否有角色
         if (userCache.IsExist(accountId))
         {
             client.Send(OpCode.USER, UserCode.CREAT_SRES, -2); //已经有角色 无法重复创建
             return;
         }
         //创建ing
         userCache.Creat(name, accountId);
         client.Send(OpCode.USER, UserCode.CREAT_SRES, 0); //成功
     });
 }