Exemplo n.º 1
0
    private void OnAccountRegisterResponse(byte[] buffer)
    {
        AccountRegisterResponseProto proto = AccountRegisterResponseProto.GetProto(buffer);

        if (!proto.IsSuccess)
        {
            TipsUtil.ShowTextTips(1000105);
        }
        else
        {
            //注册成功
            //TipsUtil.ShowTextTips("用户编号 = " + proto.UserId);
            if (m_RegisterWindow != null)
            {
                Stat.Register(proto.UserId, m_RegisterWindow.IFAccount.text);
                PlayerPrefsUtil.SetAccountID(proto.UserId);
                PlayerPrefsUtil.SetAccountUserName(m_RegisterWindow.IFAccount.text);
                PlayerPrefsUtil.SetAccountPwd(m_RegisterWindow.IFPwd.text);
                m_RegisterWindow.CloseAndOpenNext(Window.GameServerEnter);
            }
            else
            {
                Stat.Register(proto.UserId, PlayerPrefsUtil.GetAccountUserName());
                WindowManager.Instance.OpenWindow(Window.GameServerEnter);
            }
        }
    }
Exemplo n.º 2
0
    private void OnAccountRegisterRequest(Role role, byte[] buffer)
    {
        AccountRegisterRequestProto proto = AccountRegisterRequestProto.GetProto(buffer);
        //Console.WriteLine(proto.Account + "  " + proto.Pwd + "   " + proto.Channel);
        AccountRegisterResponseProto responseProto = Register(proto.Account, proto.Pwd, proto.Channel, proto.DeviceIdentifier, proto.DeviceModel);

        //AccountCacheModel.Instance.Register
        role.ClientSocket.SendMsg(responseProto.ToArray());
    }
Exemplo n.º 3
0
    public AccountRegisterResponseProto Register(string userName, string pwd, string chennelId, string deviceIdentifier, string deviceModel)
    {
        AccountRegisterResponseProto retProto = new AccountRegisterResponseProto();

        //1.判断用户名是否存在
        //2.如果存在添加数据
        using (SqlConnection conn = new SqlConnection(DBConn.DBAccount))
        {
            conn.Open();
            //开启事务 只打开一次数据库
            SqlTransaction       trans = conn.BeginTransaction();
            List <AccountEntity> list  = GetListWithTran(this.TableName, "Id", "UserName='******'", trans: trans, isAutoStatus: false);
            Console.WriteLine(list.Count);
            //Console.WriteLine(list[0].Mobile + "   " + list[0].Mail+"  "+ list[0].Status);
            if (list == null || list.Count == 0)
            {
                //说明用户名不存在 可以添加数据
                AccountEntity entity = new AccountEntity();
                entity.Status              = Mmcoy.Framework.AbstractBase.EnumEntityStatus.Released;
                entity.UserName            = userName;
                entity.Pwd                 = pwd;
                entity.ChannelId           = chennelId;
                entity.LastLogOnServerTime = DateTime.Now;
                entity.CreateTime          = DateTime.Now;
                entity.UpdateTime          = DateTime.Now;
                entity.DeviceIdentifier    = deviceIdentifier;
                entity.DeviceModel         = deviceModel;

                MFReturnValue <object> ret = this.Create(trans, entity);
                if (!ret.HasError)
                {
                    retProto.IsSuccess = true;
                    retProto.UserId    = (int)ret.OutputValues["Id"];
                    trans.Commit();
                }
                else
                {
                    retProto.IsSuccess = false;
                    retProto.MsgCode   = 102;
                    trans.Rollback();
                }
            }
            else
            {
                retProto.IsSuccess = false;
                retProto.MsgCode   = 102;
            }
        }

        return(retProto);
    }
    public static AccountRegisterResponseProto GetProto(byte[] buffer)
    {
        AccountRegisterResponseProto proto = new AccountRegisterResponseProto();

        using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer))
        {
            proto.IsSuccess = ms.ReadBool();
            if (proto.IsSuccess)
            {
                proto.UserId = ms.ReadInt();
            }
            else
            {
                proto.MsgCode = ms.ReadInt();
            }
        }
        return(proto);
    }