Beispiel #1
0
        internal static void Input(string str)
        {
            if (str.StartsWith("discover "))
            {
                s_peer.DiscoverLocalPeers(Int32.Parse(str.Substring(9)));
                return;
            }

            if (str.StartsWith("connect "))
            {
                int idx = str.IndexOf(' ', 8);
                if (idx == -1)
                {
                    // port only
                    s_peer.Connect("127.0.0.1", Int32.Parse(str.Substring(8)), Encoding.ASCII.GetBytes("Hi; I'm " + s_peer.GetHashCode()));
                    return;
                }
                else
                {
                    // host and port
                    string host    = str.Substring(8, idx - 8);
                    string portStr = str.Substring(idx + 1);
                    s_peer.Connect(host, Int32.Parse(portStr), Encoding.ASCII.GetBytes("Hi; I'm " + s_peer.GetHashCode()));
                    return;
                }
            }

            NetBuffer buffer = s_peer.CreateBuffer();

            buffer.Write(str);

            // send to all other peers
            s_peer.SendToAll(buffer, NetChannel.ReliableUnordered);
        }
Beispiel #2
0
 public void SendToAll(Packet packet, NetDeliveryMethod deliveryMethod = NetDeliveryMethod.Unreliable)
 {
     NetPeer.SendToAll(GetOutgoingMessageFromPacket(packet), deliveryMethod);
 }
Beispiel #3
0
        //public static void WriteMessageToRemotePlayer(NetPeer peer, GameOptions gameOpts)
        //{
        //    byte[] serializedGameOptions;
        //    MemoryStream ms = new MemoryStream();
        //    BinaryFormatter bf1 = new BinaryFormatter();
        //    bf1.Serialize(ms, gameOpts);
        //    serializedGameOptions =  ms.ToArray();

        //    NetBuffer buffer = new NetBuffer(serializedGameOptions);

        //    peer.SendToAll(buffer, NetChannel.ReliableInOrder1);
        //}


        public static void WriteMessageToRemotePlayer(NetPeer peer, String msg)
        {
            Lidgren.Network.NetBuffer buff = new Lidgren.Network.NetBuffer();
            buff.Write(msg);
            peer.SendToAll(buff, Lidgren.Network.NetChannel.ReliableInOrder1);
        }