예제 #1
0
 internal static void SendFileList(NetIncomingMessage msg)
 {
     Messages message = new Messages();
     message.MessageType = Message.RecieveFileList;
     message.Data = userFileList;
     NetOutgoingMessage outgoingMessage = server.CreateMessage();
     outgoingMessage.Write(message.ToByteArray());
     if (server.GetConnection(msg.SenderEndPoint) != null)
     {
         server.SendMessage(outgoingMessage, server.GetConnection(msg.SenderEndPoint), NetDeliveryMethod.ReliableOrdered);
     }
     else
     {
         NetConnection connect = server.Connect(msg.SenderEndPoint);
         server.SendMessage(outgoingMessage, connect, NetDeliveryMethod.ReliableOrdered);
     }
 }
예제 #2
0
 internal static void SendUserList(NetIncomingMessage msg)
 {
     Messages message = new Messages();
     message.MessageType = Message.RecieveUserList;
     message.Data = userList;
     NetOutgoingMessage outgoingMessage = server.CreateMessage();
     outgoingMessage.Write(message.ToByteArray());
     server.SendUnconnectedMessage(outgoingMessage, msg.SenderEndPoint);
 }
예제 #3
0
        internal static void RequestUserList(IPEndPoint peer)
        {
            NetOutgoingMessage msg = server.CreateMessage();
            Messages message = new Messages();
            message.MessageType = Message.RequestUserList;
            msg.Write(message.ToByteArray());

            if (server.GetConnection(peer) != null)
            {
                server.SendMessage(msg, server.GetConnection(peer), NetDeliveryMethod.ReliableOrdered);
            }
            else
            {
                server.SendMessage(msg, server.Connect(peer), NetDeliveryMethod.ReliableOrdered);
            }
        }
예제 #4
0
        internal static void RequestFiles(IPEndPoint peer,  Guid file)
        {
            Messages message = new Messages();
            message.MessageType = Message.RequestFiles;
            message.Data = file.ToString();
            NetOutgoingMessage outgoingMessage = server.CreateMessage();
            outgoingMessage.Write(message.ToByteArray());

            if (server.GetConnection(peer) != null)
            {
                server.SendMessage(outgoingMessage, server.GetConnection(peer), NetDeliveryMethod.ReliableOrdered);
            }
            else
            {
                NetConnection connect = server.Connect(peer);
                server.SendMessage(outgoingMessage, connect, NetDeliveryMethod.ReliableOrdered);
            }

            Console.WriteLine("sent file request");
        }
예제 #5
0
        internal static void RequestFileList(IPEndPoint peer)
        {
            Messages message = new Messages();
            message.MessageType = Message.RequestFileList;
            NetOutgoingMessage outgoingMessage = server.CreateMessage();
            outgoingMessage.Write(message.ToByteArray());

            isListUpdated = false;

            if (server.GetConnection(peer) != null)
            {
                server.SendMessage(outgoingMessage, server.GetConnection(peer), NetDeliveryMethod.ReliableOrdered);

            }
            else
            {
                NetConnection connect = server.Connect(peer);

                server.SendMessage(outgoingMessage, connect, NetDeliveryMethod.ReliableOrdered);
            }
        }
예제 #6
0
 internal static void ReplyToPing(NetIncomingMessage msg)
 {
     Messages message = new Messages();
     message.MessageType = Message.Ping;
     NetOutgoingMessage outgoingMessage = server.CreateMessage();
     outgoingMessage.Write(message.ToByteArray());
     server.SendUnconnectedMessage(outgoingMessage, msg.SenderEndPoint);
     userList.AddUser(msg.SenderEndPoint.Address.ToString());
 }
예제 #7
0
 internal static void Ping(IPEndPoint location)
 {
     Messages message = new Messages();
     message.MessageType = Message.Ping;
     NetOutgoingMessage msg = server.CreateMessage();
     msg.Write(message.ToByteArray());
     server.SendUnconnectedMessage(msg, location);
 }