Exemplo n.º 1
0
        /// <summary>
        /// 登陆按钮点击事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void _btnLogin_Click(object sender, RoutedEventArgs e)
        {
            if (!ClientServer.OBJ.Connected)
            {
                // 连接到游戏服
                ClientServer.OBJ.GameServerIpAddr = ConfigurationManager.AppSettings["GameServerIpAddr"];
                ClientServer.OBJ.GameServerPort   = Convert.ToInt32(ConfigurationManager.AppSettings["GameServerPort"]);
                ClientServer.OBJ.ConnectToGameServer();
            }

            string userName = this._txtUserName.Text;
            string userPass = this._txtUserPass.Password;

            Player.OBJ._userName           = userName;
            Player.OBJ._selectedServerName = "LM1";

            JsonData jsonData = new JsonData();

            jsonData["protocol"] = "dbUser";
            jsonData["userName"] = userName;
            jsonData["password"] = userPass;

            // 创建 CG 消息
            CGLogin cgMSG = new CGLogin();

            cgMSG._platformUId = new MsgStr(userName);
            cgMSG._loginStr    = new MsgStr(jsonData.ToJson());
            // 发送 CG 消息
            ClientServer.OBJ.AddGCMsgHandler <GCLogin>(this.Handle_GCLogin);
            ClientServer.OBJ.SendCGMsg(cgMSG);
        }
Exemplo n.º 2
0
 void OnCnnectServerSuccess(string serverName)
 {
     if (serverName == NetworkManager.LobbySessionName)
     {
         CGLogin login = new CGLogin();
         login.Username = "******";
         Game.NetworkManager.SendToLobby(MessageId_Send.CGLogin, login);
     }
 }
Exemplo n.º 3
0
        public static void Send(int serverId, string accountId, string channel, string loginKey, long timestamp)
        {
            CGLogin package = new CGLogin();

            package.accountId = accountId;
            package.channel   = channel;
            package.loginKey  = loginKey;
            package.timestamp = timestamp;

            NetHandler.OnLoginSend(51, serverId, NetHandler.Serialize(package));
        }
Exemplo n.º 4
0
    public override void Handle(object sender, IMessage packet)
    {
        base.Handle(sender, packet);
        CGLogin data = packet as CGLogin;
        //处理完数据和逻辑后,发送消息通知客户端
        GCLogin       login = new GCLogin();
        PBAccountData read  = GetSavedData <PBAccountData>(ACCOUNT_DATA_KEY);

        if (read != null)
        {
            if (read.Username != data.Username)
            {
                //新玩家
                login.Result      = 0;
                login.AccountData = CreateAccount(data.Username);
            }
            else
            {
                login.AccountData = GetSavedData <PBAccountData>(ACCOUNT_DATA_KEY);
                if (GetSavedData <PBPlayerData>(PLAYER_DATA_KEY) == null || GetSavedData <PBPlayerDetailData>(PLAYER_DETAIL_DATA_KEY) == null)
                {
                    //新玩家,没有创建角色
                    login.Result = 0;
                }
                else
                {
                    login.Result = 1;
                }
            }
        }
        else
        {
            login.AccountData = CreateAccount(data.Username);
            login.Result      = 0;
        }
        //Debug.LogError(data.UserId.ToString());


        SendToClient(MessageId_Receive.GCLogin, login);
    }