Beispiel #1
0
    public static SerializedLobbyPlayer Deserialize(LiteNetLib.Utils.NetDataReader reader)
    {
        SerializedLobbyPlayer res = new SerializedLobbyPlayer();

        res.name = reader.GetString();
        res.id   = reader.GetInt();

        return(res);
    }
Beispiel #2
0
    public void OnReceiveHandshake(PClientHandshake packet, NetPeer peer)
    {
        int id = LobbyMenu.instance.Players.Count;

        LobbyMenu.instance.CreatePlayer(peer, packet.clientName, false);

        PLobby lobbyPacket             = new PLobby();
        List <SerializedLobbyPlayer> S = new List <SerializedLobbyPlayer>();

        for (int i = 0; i < LobbyMenu.instance.Players.Count; i++)
        {
            LobbyPlayer           p   = LobbyMenu.instance.Players[i];
            SerializedLobbyPlayer slp = new SerializedLobbyPlayer();
            slp.id   = p.id;
            slp.name = p.playerName;

            S.Add(slp);
        }

        lobbyPacket.serverName = serverName;
        lobbyPacket.players    = S.ToArray();

        peer.Send(serializer.Serialize(lobbyPacket), SendOptions.ReliableOrdered);

        PLobbyPlayer lp = new PLobbyPlayer();

        lp.id     = id;
        lp.name   = packet.clientName;
        lp.action = true;

        for (int i = 0; i < Peers.Count; i++)
        {
            if (Peers[i] != peer)
            {
                Peers[i].Send(serializer.Serialize(lp), SendOptions.ReliableOrdered);
            }
        }
    }
Beispiel #3
0
 public static void Serialize(LiteNetLib.Utils.NetDataWriter writer, SerializedLobbyPlayer mytype)
 {
     writer.Put(mytype.name);
     writer.Put(mytype.id);
 }