Esempio n. 1
0
        private void ProcessData(byte[] data)
        {
            readStream.SetLength(0);
            readStream.Position = 0;
            readStream.Write(data, 0, data.Length);
            readStream.Position = 0;

            Protocoles p;

            //try
            //{
            p = (Protocoles)reader.ReadByte();

            if (p == Protocoles.Connected)
            {
                if (!enemyConnected)
                {
                    byte   id = reader.ReadByte();
                    string ip = reader.ReadString();
                    enemyConnected = true;
                    enemy          = new Maison(this, 1f, Vector3.Zero, new Vector3(0, 0, 5), new Vector3(5f, 5f, 5f), "PlayerPaper", "EnemyPaper", INTERVALLE_MAJ_STANDARD);
                    Components.Add(enemy);


                    writeStream.Position = 0;
                    writer.Write((byte)Protocoles.Connected);
                    SendData(GetDataFromMemoryStream(writeStream));
                }
            }
            else if (p == Protocoles.Disconnected)
            {
                byte   id = reader.ReadByte();
                string ip = reader.ReadString();
                enemyConnected = false;
            }
            else if (p == Protocoles.PlayerMoved)
            {
                float  X  = reader.ReadSingle();
                float  Y  = reader.ReadSingle();
                float  Z  = reader.ReadSingle();
                byte   id = reader.ReadByte();
                string ip = reader.ReadString();
                enemy.Position = new Vector3(enemy.Position.X + X, enemy.Position.Y + Y, enemy.Position.Z + Z);
                enemy.CalculerMatriceMonde();
            }
            //}
            //catch (Exception exception)
            //{
            //    MessageBox.Show(exception.Message + "2");
            //}
        }
Esempio n. 2
0
        private void ProcessData(byte[] data)
        {
            readStream.SetLength(0);
            readStream.Position = 0;
            readStream.Write(data, 0, data.Length);
            readStream.Position = 0;

            Protocoles p;

            //try
            //{
            p = (Protocoles)reader.ReadByte();

            if (p == Protocoles.Connected)
            {
                if (!enemyConnected)
                {
                    enemyConnected = true;
                    //float X = reader.ReadSingle();
                    //float Y = reader.ReadSingle();
                    //float Z = reader.ReadSingle();
                    //enemy.Position = new Vector3(X, Y, Z);
                    //enemy = new Maison(this, 1f, Vector3.Zero, new Vector3(X,Y,Z), new Vector3(5f, 5f, 5f), "PlayerPaper", "EnemyPaper", INTERVALLE_MAJ_STANDARD);
                    //Components.Add(enemy);


                    //writeStream.Position = 0;
                    //writer.Write((byte)Protocoles.Connected);
                    //writer.Write(player.Position.X);
                    //writer.Write(player.Position.Y);
                    //writer.Write(player.Position.Z);
                    //SendData(Server.GetDataFromMemoryStream(writeStream));
                }
            }
            else if (p == Protocoles.Disconnected)
            {
                Components.Remove(enemy);
                enemyConnected = false;
                enemy.Enabled  = false;
            }
            else if (p == Protocoles.PlayerMoved)
            {
                float X = reader.ReadSingle();
                float Y = reader.ReadSingle();
                float Z = reader.ReadSingle();
                enemy.Position = new Vector3(X, Y, Z);
                enemy.CalculerMatriceMonde();
                player.CalculerMatriceMonde();
            }
        }
Esempio n. 3
0
        void UpdateLan(GameTime gameTime)
        {
            Vector3 iPosition = new Vector3(player.Position.X, player.Position.Y, player.Position.Z);
            Vector3 nPosition = iPosition;

            if (GestionInput.EstEnfoncée(Microsoft.Xna.Framework.Input.Keys.W))
            {
                nPosition = new Vector3(player.Position.X, player.Position.Y, player.Position.Z + 0.01f);
            }
            if (GestionInput.EstEnfoncée(Microsoft.Xna.Framework.Input.Keys.S))
            {
                nPosition = new Vector3(player.Position.X, player.Position.Y, player.Position.Z - 0.01f);
            }
            if (GestionInput.EstEnfoncée(Microsoft.Xna.Framework.Input.Keys.A))
            {
                nPosition = new Vector3(player.Position.X + 0.01f, player.Position.Y, player.Position.Z);
            }
            if (GestionInput.EstEnfoncée(Microsoft.Xna.Framework.Input.Keys.D))
            {
                nPosition = new Vector3(player.Position.X - 0.01f, player.Position.Y, player.Position.Z);
            }


            Vector3 delta = Vector3.Subtract(nPosition, iPosition);

            if (delta != Vector3.Zero)
            {
                player.Position = nPosition;
                player.CalculerMatriceMonde();
                //writeStream.Position = 0;
                //writer.Write((byte)Protocoles.PlayerMoved);
                //writer.Write(delta.X);
                //writer.Write(delta.Y);
                //writer.Write(delta.Z);
                //SendData(GetDataFromMemoryStream(writeStream));
            }
        }