//Login function : The real login action void login(string username, string password) { if (username == "" || password == "") { Debug.Log("username or password is empty"); return; } MsgCSLogin msg = new MsgCSLogin(username, password); byte[] data = msg.GetRawData(); this.networkSocket.writeSocket(data); return; }
public void OnLoginOKBtnClicked() { //获取输入框的用户名和密码, 并加密密码 //string username = MD5Encryption(loginNameIF.text); string username = loginNameIF.text; string password = MD5Encryption(loginPasswordIF.text); //Debug.Log(username); //Debug.Log(password); MsgCSLogin msg = new MsgCSLogin(username, password); byte[] dataToSend = msg.Marshal(); SocketClient.netStream.Write(dataToSend, 0, dataToSend.Length); //byte[] dataLenReceived = new byte[4]; //SocketClient.netStream.Read(dataLenReceived, 0, 4); //byte[] dataReceived = { }; byte[] dataReceivedNoHead = SocketClient.RemoveDataHead(); MsgSCBase msgSCBase = new UnifromUnmarshal().Unmarshal(dataReceivedNoHead); MsgSCLoginConfirm msgConfirm = (MsgSCLoginConfirm)msgSCBase; //MsgSCBase msgComfirm = new UnifromUnmarshal().Unmarshal(dataReceivedNoHead); int comfirmCode = msgConfirm.confirm; if (comfirmCode == 0) { Debug.Log("login successfully!"); loginPanel.SetActive(false); PlayerPrefs.SetInt("hp", msgConfirm.hp); PlayerPrefs.SetInt("money", msgConfirm.money); PlayerPrefs.SetInt("ammo", msgConfirm.ammo); PlayerPrefs.SetInt("grenade", msgConfirm.grenade); PlayerPrefs.SetFloat("shell", msgConfirm.shell); SceneManager.LoadScene("BattlefieldScene"); } else { loginNameIF.text = ""; loginPasswordIF.text = ""; Debug.Log("login failed!"); loginPanel.SetActive(false); } }