Ejemplo n.º 1
0
        private void OnLoginClick()
        {
            if (!isLogin)
            {
                isLogin = !isLogin;
            }

#if NETWORK
            if (string.IsNullOrEmpty(acc_field.text) || string.IsNullOrEmpty(pw_field.text))
            {
                Debug.Log("[Warn] input nothing.");
                return;
            }

            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                string host = Root.IP;
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }

            ProtocolByte proto = new ProtocolByte();
            proto.AddInfo <string>(NamesOfProtocol.Login);
            proto.AddInfo <string>(acc_field.text);
            proto.AddInfo <string>(pw_field.text);
            NetworkManager.ConnClient.Send(proto);
#elif DEBUG
            Debug.Log("登录成功--game start");
            base.Close();
            object[] objs = new object[1];
            objs[0] = 1;
            PanelManager._instance.OpenPanel <LoadingPanel>("", objs);
#endif
        }
Ejemplo n.º 2
0
        public void MsgRegister(Connection conn, ProtocolBase protocol)
        {
            ProtocolByte proto     = protocol as ProtocolByte;
            string       protoName = proto.Name;
            string       id        = proto.GetString(1);
            string       pw        = proto.GetString(2);
            int          code      = int.MinValue;

            //准备返回协议对象
            ProtocolByte protoRet = new ProtocolByte();

            protoRet.AddInfo <string>(NamesOfProtocol.Register);

            //从数据库判断
            bool isChecked = DataManager.GetSingleton().CanRegister(id);

            if (isChecked)
            {
                DataManager.GetSingleton().Register(id, pw, out code);
                Console.WriteLine($"[Register] User:{id},Info:{conn.RemoteAddress}.");
                protoRet.AddInfo <int>(1);
                protoRet.AddInfo <int>(code);
                conn.Send(protoRet);
                return;
            }
            else
            {
                protoRet.AddInfo <int>(-1);
                conn.Send(protoRet);
                return;
            }
        }
Ejemplo n.º 3
0
        private void OnFindPasswordClick()
        {
            if (string.IsNullOrEmpty(newpw_field.text) || string.IsNullOrEmpty(acc_field.text))
            {
                Debug.Log("[Warn] input nothing.");
                object[] obj = new object[2];
                obj[0] = "错误提示";
                obj[1] = "账号或密码为空,请输入您的信息。";
                PanelManager._instance.OpenPanel <MentionPanel>("", obj);
                return;
            }

            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                string host = Root.IP;
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }

            if (!isChangePw)
            {
                isChangePw = true;
            }

            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.ChangePassword);
            proto.AddInfo <string>(acc_field.text);
            proto.AddInfo <string>(newpw_field.text);
            NetworkManager.ConnClient.Send(proto);
        }
Ejemplo n.º 4
0
        public void MsgLogin(Connection conn, ProtocolBase protocol)
        {
            ProtocolByte proto     = protocol as ProtocolByte;
            string       protoName = proto.Name;
            string       id        = proto.GetString(1);
            string       pw        = proto.GetString(2);

            //准备返回协议对象
            ProtocolByte protoRet = new ProtocolByte();

            protoRet.AddInfo <string>(NamesOfProtocol.Login);

            //从数据库判断
            bool isChecked = DataManager.GetSingleton().CheckPassword(id, pw);

            if (isChecked)
            {
                Console.WriteLine($"[Conected] User:{id},Info:{conn.RemoteAddress}.");
                protoRet.AddInfo <int>(1);
                conn.Send(protoRet);
                return;
            }
            else
            {
                protoRet.AddInfo <int>(0);
                conn.Send(protoRet);
                return;
            }
        }
Ejemplo n.º 5
0
        public void MsgFindPassword(Connection conn, ProtocolBase protocol)
        {
            ProtocolByte proto     = protocol as ProtocolByte;
            string       protoName = proto.Name;
            string       id        = proto.GetString(1);
            string       code_str  = proto.GetString(2);
            string       password  = string.Empty;
            int          code_i    = Convert.ToInt32(code_str);

            //准备返回协议对象
            ProtocolByte protoRet = new ProtocolByte();

            protoRet.AddInfo <string>(NamesOfProtocol.FindPassword);

            //从数据库判断
            bool isChecked = DataManager.GetSingleton().FindoutPassword(id, code_i);

            if (isChecked)
            {
                Console.WriteLine($"[FindPassword] User:{id},Info:{conn.RemoteAddress}.");
                protoRet.AddInfo <int>(1);
                conn.Send(protoRet);
                return;
            }
            else
            {
                protoRet.AddInfo <int>(-1);
                conn.Send(protoRet);
                return;
            }
        }
Ejemplo n.º 6
0
        public void Logout()
        {
            ProtocolByte protoRet = new ProtocolByte();

            protoRet.AddInfo <string>(NamesOfProtocol.Logout);
            protoRet.AddInfo <string>(Root.Account);

            NetworkManager.ConnClient.Send(protoRet);
        }
Ejemplo n.º 7
0
        public void UpdateLocation(Vector3 postion)
        {
            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.UpdatePosition);
            proto.AddInfo <string>(Root.Account);
            proto.AddInfo <float>(postion.x);
            proto.AddInfo <float>(postion.y);
            proto.AddInfo <float>(postion.z);

            NetworkManager.ConnClient.Send(proto);
        }
Ejemplo n.º 8
0
        public void MsgLogout(Connection conn, ProtocolBase protocol)
        {
            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.Logout);
            proto.AddInfo <int>(1);
            if (conn.Player == null)
            {
                conn.Send(proto);
                conn.Close();
            }
            else
            {
                conn.Send(proto);
                conn.Player.Logout();
            }
        }
        IEnumerator ReceivePlayerData()
        {
            yield return(null);

            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                //string host = "127.0.0.1";
                string host = "192.168.1.105";
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }
            ProtocolByte proto = new ProtocolByte();

            proto.Expression = "";
            proto.AddInfo <string>(NamesOfProtocol.ReceivePlayerData);
            proto.AddInfo <string>(Root.Account);
            NetworkManager.ConnClient.Send(proto);
        }
Ejemplo n.º 10
0
        public void SendOriginPos()
        {
            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                //string host = "127.0.0.1";
                string host = Root.IP;
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }

            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.SendOriginPos);
            proto.AddInfo <string>(Root.Account);
            proto.AddInfo <float>(originPos.x);
            proto.AddInfo <float>(originPos.y);
            proto.AddInfo <float>(originPos.z);

            NetworkManager.ConnClient.Send(proto);
        }
        private void OnRegisterClick()
        {
            if (string.IsNullOrEmpty(acc_field.text) || string.IsNullOrEmpty(pw_field.text) || string.IsNullOrEmpty(pwtwin_field.text))
            {
                Debug.Log("[Warn] input nothing.");
                object[] obj = new object[2];
                obj[0] = "错误提示";
                obj[1] = "账号或密码空,请输入您的信息。";
                PanelManager._instance.OpenPanel <MentionPanel>("", obj);
                return;
            }
            if (pw_field.text != pwtwin_field.text)
            {
                Debug.Log("[Warn] twice password is not the same.");
                object[] obj = new object[2];
                obj[0] = "错误提示";
                obj[1] = "你输入的两次密码不符合,请检查后重试。";
                PanelManager._instance.OpenPanel <MentionPanel>("", obj);
                return;
            }

            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                string host = Root.IP;
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }

            if (!isRegster)
            {
                isRegster = true;
            }

            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.Register);
            proto.AddInfo <string>(acc_field.text);
            proto.AddInfo <string>(pw_field.text);
            NetworkManager.ConnClient.Send(proto);
        }
Ejemplo n.º 12
0
        public void RemoteSaveData(object sender, EventArgs args)
        {
            ProtocolByte protoRet = new ProtocolByte();

            protoRet.AddInfo <string>(NamesOfProtocol.SendPlayerData);
            protoRet.AddInfo <string>(Root.Account);
            protoRet.AddInfo <int>(this.playerData.Coin);
            protoRet.AddInfo <int>(this.playerData.Money);
            protoRet.AddInfo <int>(this.playerData.Star);
            protoRet.AddInfo <int>(this.playerData.Diamand);

            NetworkManager.ConnClient.Send(protoRet);
        }
Ejemplo n.º 13
0
        IEnumerator SendPlayerData()
        {
            yield return(null);

            if (NetworkManager.ConnClient.status != NetworkStatus.Connected)
            {
                //string host = "127.0.0.1";
                string host = "192.168.1.105";
                int    port = 1234;
                NetworkManager.ConnClient.Connect(host, port);
            }
            ProtocolByte proto = new ProtocolByte();

            proto.AddInfo <string>(NamesOfProtocol.SendPlayerData);
            proto.AddInfo <string>(Root.Account);
            proto.AddInfo <int>(DataManager.GetInstance().playerData.Coin);
            proto.AddInfo <int>(DataManager.GetInstance().playerData.Money);
            proto.AddInfo <int>(DataManager.GetInstance().playerData.Star);
            proto.AddInfo <int>(DataManager.GetInstance().playerData.Diamand);

            NetworkManager.ConnClient.Send(proto);
        }
 public static ProtocolBase GetHeartBeatProtocol()
 {
     ProtocolByte protocol = new ProtocolByte();
     protocol.AddInfo<string>("HeartBeat");
     return protocol;
 }