Example #1
0
 private void SendPacket(KNet_Packet packet)
 {
     byte[] buffer = KNet.SerializePacket(packet);
     if (packet.isReliable)
     {
         KNet.SendUDPReliable(buffer, host, sendSocket);
     }
     else
     {
         KNet.SendUDP(buffer, host, sendSocket);
     }
     Console.WriteLine("Sent Packet {0}", packet.rpcName);
 }
Example #2
0
        public void SendPacket(KNet_Packet packet)
        {
            byte[] buffer = KNet.SerializePacket(packet);

            if (packet.rpcTarget.Length == 0 || (packet.rpcTarget.Length == 1 && packet.rpcTarget[0] == 0))
            {
                Console.WriteLine("Sending packet {0} to all users.", packet.rpcName);
                foreach (KNet_User user in activeUsers.ToArray())
                {
                    IPAddress address = new IPAddress(user.id);

                    EndPoint endPoint = new IPEndPoint(address, port);
                    if (packet.isReliable)
                    {
                        KNet.SendUDPReliable(buffer, endPoint, sendSocket);
                    }
                    else
                    {
                        KNet.SendUDP(buffer, endPoint, sendSocket);
                    }
                }
            }
            else
            {
                IPAddress address = new IPAddress(packet.rpcTarget);

                Console.WriteLine("Sending packet {0} to {1}", packet.rpcName, address);

                EndPoint endPoint = new IPEndPoint(address, port);
                if (packet.isReliable)
                {
                    KNet.SendUDPReliable(buffer, endPoint, sendSocket);
                }
                else
                {
                    KNet.SendUDP(buffer, endPoint, sendSocket);
                }
            }
        }