예제 #1
0
        public void NotifyPingLoadInfo(PingLoadInfoRequest request, long userId)
        {
            var response = new PingLoadInfoResponse(request.NetId, (uint)request.Position, request.Loaded, request.Unk2,
                                                    request.Ping, request.Unk3, request.Unk4, userId);

            //Logging->writeLine("loaded: %f, ping: %f, %f", loadInfo->loaded, loadInfo->ping, loadInfo->f3);
            _packetHandlerManager.BroadcastPacket(response, Channel.CHL_LOW_PRIORITY, PacketFlags.None);
        }
예제 #2
0
        public override bool HandlePacket(Peer peer, byte[] data)
        {
            var loadInfo = new PingLoadInfoRequest(data);
            var peerInfo = _playerManager.GetPeerInfo(peer);

            if (peerInfo == null)
            {
                return(false);
            }
            var response = new PingLoadInfoResponse(loadInfo, peerInfo.UserId);

            //Logging->writeLine("loaded: %f, ping: %f, %f", loadInfo->loaded, loadInfo->ping, loadInfo->f3);
            return(_game.PacketHandlerManager.broadcastPacket(response, Channel.CHL_LOW_PRIORITY, PacketFlags.None));
        }