Пример #1
0
        private void EmulateClient(object state)
        {
            try
            {
                string username = (string)state;
                Console.WriteLine("Client {0} connecting...", username);

                IPHostEntry Host = Dns.GetHostEntry("test.inpvp.net");

                //var client = new MiNetClient(new IPEndPoint(Host.AddressList[0], 19132));
                var client = new MiNetClient(new IPEndPoint(IPAddress.Loopback, 19132));
                //var client = new MiNetClient(new IPEndPoint(IPAddress.Parse("65.52.75.30"), 19132));

                client.StartClient();

                client.SendUnconnectedPing();
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                client.SendOpenConnectionRequest1();
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                client.SendOpenConnectionRequest2();
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                client.SendConnectionRequest();
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                client.SendLogin(username);
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                //Console.WriteLine("\t\tClient {0} connected, sleeping 10s...", username);

                Thread.Sleep(20000);

                Console.WriteLine("\t\t\t\t\t\tClient {0} moving...", username);

                Random random = new Random();
                for (int i = 0; i < 100; i++)
                {
                    float        y = random.Next(7, 10) + /*24*/ 30;
                    float        x, z;
                    float        length         = random.Next(5, 20);
                    double       angle          = 0.0;
                    const double angleStepsize  = 0.05;
                    float        heightStepsize = (float)(random.NextDouble() / 5);

                    while (angle < 2 * Math.PI && _running)
                    {
                        x  = (float)(length * Math.Cos(angle));
                        z  = (float)(length * Math.Sin(angle));
                        y += heightStepsize;

                        x += -421;
                        z += -1633;

                        client.SendMcpeMovePlayer(x, y, z);
                        Thread.Sleep(random.Next(50, 300));
                        angle += angleStepsize;
                    }
                }

                client.SendDisconnectionNotification();
                Thread.Sleep(100);                 // Let the server process
                //Thread.Yield();

                client.StopClient();

                Console.WriteLine("Clients {0} disconnected.", username);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Пример #2
0
        private void EmulateClient(object state)
        {
            try
            {
                string username = (string) state;
                Console.WriteLine("Client {0} connecting...", username);

                IPHostEntry Host = Dns.GetHostEntry("test.inpvp.net");

                //var client = new MiNetClient(new IPEndPoint(Host.AddressList[0], 19132));
                var client = new MiNetClient(new IPEndPoint(IPAddress.Loopback, 19132));
                //var client = new MiNetClient(new IPEndPoint(IPAddress.Parse("65.52.75.30"), 19132));

                client.StartClient();

                client.SendUnconnectedPing();
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                client.SendOpenConnectionRequest1();
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                client.SendOpenConnectionRequest2();
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                client.SendConnectionRequest();
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                client.SendLogin(username);
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                //Console.WriteLine("\t\tClient {0} connected, sleeping 10s...", username);

                Thread.Sleep(20000);

                Console.WriteLine("\t\t\t\t\t\tClient {0} moving...", username);

                Random random = new Random();
                for (int i = 0; i < 100; i++)
                {
                    float y = random.Next(7, 10) + /*24*/30;
                    float x, z;
                    float length = random.Next(5, 20);
                    double angle = 0.0;
                    const double angleStepsize = 0.05;
                    float heightStepsize = (float) (random.NextDouble()/5);

                    while (angle < 2*Math.PI && _running)
                    {
                        x = (float) (length*Math.Cos(angle));
                        z = (float) (length*Math.Sin(angle));
                        y += heightStepsize;

                        x += -421;
                        z += -1633;

                        client.SendMcpeMovePlayer(x, y, z);
                        Thread.Sleep(random.Next(50, 300));
                        angle += angleStepsize;
                    }
                }

                client.SendDisconnectionNotification();
                Thread.Sleep(100); // Let the server process
                //Thread.Yield();

                client.StopClient();

                Console.WriteLine("Clients {0} disconnected.", username);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }