Esempio n. 1
0
        public IEnumerator ClientServerConnect()
        {
            var server = new LiteNetServerNetworkInterface(30, new SimulatedLagSettings());

            server.NewConnectionEstablished += peer => { };
            server.ApproveConnection        += bs => { return(new ApprovalResult()
                {
                    Approved = true
                }); };

            server.Start(42000);

            var client = new LiteNetClientNetworkInterface();

            client.ConnectionRequestAccepted += () => { };

            client.Connect("127.0.0.1", 42000);

            yield return(Utils.RunTill(() => {
                server.Update();
                client.Update();
                return false;
            }, 1f));

            Assert.IsTrue(client.IsConnected);

            client.Shutdown(0);
            server.Shutdown();

            yield return(null);
        }
Esempio n. 2
0
        public ClientGame(ClientGameContext ctx)
        {
            Assert.IsNotNull(ctx.World);
            World = ctx.World;

            //var networkInterface = new LidgrenClientNetworkInterface(ctx.LagSettings);
            var networkInterface = new LiteNetClientNetworkInterface();

            Client = new CubeClient(ctx.World, networkInterface);

            Client.networkInterface.ConnectionRequestAccepted += OnConnectionRequestAccepted;
            Client.networkInterface.Disconnected += OnDisconnected;

            Client.reactor.AddHandler((byte)MessageId.LoadScene, OnLoadScene);
            Client.reactor.AddHandler((byte)MessageId.PossessPawn, OnPossessPawn);
        }