Example #1
0
        void INetEventListener.OnNetworkReceive(NetPeer peer, NetPacketReader reader, DeliveryMethod deliveryMethod)
        {
            Console.WriteLine("Message received");

            // 処理
            var message = MessagePackSerializer.Deserialize <IServerMsg>(reader.GetRemainingBytesSegment());

            switch (message)
            {
            case IServerMsg.ClientId m:
                if (id is null)
                {
                    id = m.Id;
                }
                break;

            case IServerMsg.SyncGameState m:
                OnReceiveGameState?.Invoke(m.GameState);
                break;

            default:
                Console.WriteLine("Unexpected message");
                break;
            }

            reader.Recycle();
        }
Example #2
0
        void INetEventListener.OnNetworkReceive(NetPeer peer, NetPacketReader reader, DeliveryMethod deliveryMethod)
        {
            var client = clients[peer.Id];

            Console.WriteLine($"Message received from client({client.Id})");

            // 処理
            try
            {
                var message = MessagePackSerializer.Deserialize <Shared.IClientMsg>(reader.GetRemainingBytesSegment());

                switch (message)
                {
                case IClientMsg.PlayerAction m:
                    gameState.PlayerACtion(client.Id, m.Value);
                    break;

                default:
                    break;
                }
            }
            catch (MessagePackSerializationException e)
            {
                Console.WriteLine($"{e.Message}");
                peer.Disconnect();
            }

            reader.Recycle();
        }
Example #3
0
        private static void OnNetworkReceive(NetPeer peer, NetPacketReader reader, DeliveryMethod deliverymethod)
        {
#if NONALLOC_RECEIVE
            LiteNetLib4MirrorTransport.Singleton.OnClientDataReceivedNonAlloc.Invoke(reader.GetRemainingBytesSegment());
#else
            LiteNetLib4MirrorTransport.Singleton.OnClientDataReceived.Invoke(reader.GetRemainingBytes());
#endif
            reader.Recycle();
        }
Example #4
0
 private void Listener_NetworkReceiveEvent(NetPeer peer, NetPacketReader reader, DeliveryMethod deliveryMethod)
 {
     if (logger.LogEnabled())
     {
         logger.Log($"LiteNet CL received {reader.AvailableBytes} bytes. method={deliveryMethod}");
     }
     onData?.Invoke(reader.GetRemainingBytesSegment(), deliveryMethod);
     reader.Recycle();
 }
Example #5
0
 public void OnNetworkReceive(
     NetPeer peer,
     NetPacketReader reader,
     DeliveryMethod deliveryMethod)
 {
     if (!reader.IsNull)
     {
         peer.GetConnection().Receive(reader.GetRemainingBytesSegment());
     }
 }
Example #6
0
        private void Listener_NetworkReceiveEvent(NetPeer peer, NetPacketReader reader, DeliveryMethod deliveryMethod)
        {
            if (logger.LogEnabled())
            {
                logger.Log($"LiteNet CL received {reader.AvailableBytes} bytes. method={deliveryMethod}");
            }
            int mirrorChannel = LiteNetLibTransportUtils.ConvertChannel(deliveryMethod);

            onData?.Invoke(reader.GetRemainingBytesSegment(), mirrorChannel);
            reader.Recycle();
        }
Example #7
0
        public void OnNetworkReceive(
            NetPeer peer,
            NetPacketReader reader,
            DeliveryMethod deliveryMethod)
        {
            if (reader.IsNull)
            {
                throw new InvalidNetworkPackageException($"Received empty package from ${peer}.");
            }

            peer.GetConnection()?.Receive(reader.GetRemainingBytesSegment());
        }
Example #8
0
 private static void OnNetworkReceive(NetPeer peer, NetPacketReader reader, DeliveryMethod deliverymethod)
 {
     LiteNetLib4MirrorTransport.Singleton.OnServerDataReceived.Invoke(peer.Id + 1, reader.GetRemainingBytesSegment(), -1);
     reader.Recycle();
 }