public static SerializedLobbyPlayer Deserialize(LiteNetLib.Utils.NetDataReader reader) { SerializedLobbyPlayer res = new SerializedLobbyPlayer(); res.name = reader.GetString(); res.id = reader.GetInt(); return(res); }
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); } } }
public static void Serialize(LiteNetLib.Utils.NetDataWriter writer, SerializedLobbyPlayer mytype) { writer.Put(mytype.name); writer.Put(mytype.id); }