public ServerEntryGump(ServerListEntry entry, byte font, ushort normal_hue, ushort selected_hue) { _entry = entry; _buttonId = entry.Index; Add(_serverName = new HoveredLabel(entry.Name, false, normal_hue, selected_hue, selected_hue, font: font) { X = 74, AcceptMouseInput = false }); Add(_server_ping = new HoveredLabel("-", false, normal_hue, selected_hue, selected_hue, font: font) { X = 250, AcceptMouseInput = false }); Add(_server_packet_loss = new HoveredLabel("-", false, normal_hue, selected_hue, selected_hue, font: font) { X = 320, AcceptMouseInput = false }); AcceptMouseInput = true; Width = 393; Height = 25; WantUpdateSize = false; }
public void SetEntries(List <ServerListEntry> servers) { entries = new TableEntry[servers.Count]; usedEntries = new TableEntry[servers.Count]; this.servers = servers; int index = 0; for (int i = 0; i < servers.Count; i++) { ServerListEntry e = servers[i]; TableEntry tableEntry = default(TableEntry); tableEntry.Hash = e.Hash; tableEntry.Name = e.Name; tableEntry.Players = e.Players + "/" + e.MaxPlayers; tableEntry.Software = e.Software; tableEntry.Uptime = MakeUptime(e.Uptime); tableEntry.RawUptime = e.Uptime; tableEntry.Featured = e.Featured; entries[index] = tableEntry; usedEntries[index] = tableEntry; index++; } Count = entries.Length; }
public ServerListPacket(PacketReader reader) : base(0xA8, "Server List") { _flags = reader.ReadByte(); var count = (ushort)reader.ReadInt16(); _servers = new ServerListEntry[count]; for (var i = 0; i < count; i++) { _servers[i] = new ServerListEntry(reader); } }
public ServerListPacket(PacketReader reader) : base(0xA8, "Server List") { _flags = reader.ReadByte(); ushort count = (ushort)reader.ReadInt16(); _servers = new ServerListEntry[count]; for (ushort i = 0; i < count; i++) { _servers[i] = new ServerListEntry(reader); ; } }
public ServerEntryGump(ServerListEntry entry) { _buttonId = entry.Index; Add(_serverName = new HoveredLabel($"{entry.Name} - -", false, NORMAL_COLOR, SELECTED_COLOR, NORMAL_COLOR, font: 5)); _serverName.X = 74; _serverName.Y = 250; AcceptMouseInput = true; Width = 393; Height = 25; WantUpdateSize = false; }
public ServerEntryGump(ServerListEntry entry) { _buttonId = entry.Index; _labelName = CreateRenderedText(entry.Name); _labelPing = CreateRenderedText("-"); _labelPacketLoss = CreateRenderedText("-"); _labelName.CreateTexture(); _labelPing.CreateTexture(); _labelPacketLoss.CreateTexture(); AcceptMouseInput = true; Width = 393; Height = new[] { _labelName.Height, _labelPing.Height, _labelPacketLoss.Height }.Max() + 10; X = 0; Y = 0; }
private void HandleReport(byte[] data, int length) { using (MessageReader mr = new MessageReader(data)) { string serverID = mr.Read <string>(); int clientID = mr.Read <int>(); byte[] reportBytes = mr.Read <byte[]>(); lock (servers) { if (!servers.ContainsKey(clientID)) { servers.Add(clientID, new ServerListEntry()); } ServerListEntry sle = servers[clientID]; sle.FromBytes(reportBytes); } Console.WriteLine("Server " + serverID + ":" + clientID + " reported new state"); } }
private void HandleConnect(byte[] data, int length) { using (MessageReader mr = new MessageReader(data)) { string serverID = mr.Read <string>(); int clientID = mr.Read <int>(); string remoteAddress = mr.Read <string>(); int remotePort = mr.Read <int>(); lock (servers) { if (!servers.ContainsKey(clientID)) { servers.Add(clientID, new ServerListEntry()); } ServerListEntry sle = servers[clientID]; sle.gameAddress = remoteAddress; } Console.WriteLine("Server " + serverID + ":" + clientID + " connected from " + remoteAddress + " port " + remotePort); } }
public ServerEntryGump(ServerListEntry entry) { _buttonId = entry.Index; _labelName = CreateRenderedText(entry.Name); _labelPing = CreateRenderedText("-"); _labelPacketLoss = CreateRenderedText("-"); _labelName.CreateTexture(); _labelPing.CreateTexture(); _labelPacketLoss.CreateTexture(); AcceptMouseInput = true; Width = 393; Height = 25; //Height = new[] //{ // _labelName.Height, _labelPing.Height, _labelPacketLoss.Height //}.Max(); WantUpdateSize = false; }
void Refresh() { NetworkManager networkManager = NetworkManager.instance; HostData[] serverList = networkManager.serverList; Clear(); Debug.Log("[ServerListDisplayer] Refresh"); int current = 0; foreach (HostData server in serverList) { ServerListEntry entry = Instantiate(entryPrefab); entry.Initalize(server); entry.transform.SetParent(transform); entry.SetColor(current % 2 == 0 ? colorEven : colorOdd); current++; } }