public override void OnReceivedBroadcast(string fromAddress, string data) { Debug.Log("fromAddress" + fromAddress); Debug.Log("data" + data); OnServerFound?.Invoke(fromAddress, data); }
void ProcessCommand(TileBaseCmd command) { switch (command) { case TileCMD_GetServername cmd: lock (Servers) { TileServer server = Servers.FirstOrDefault(a => a.ID == cmd.SID); if (server != null) { if (server.Name != cmd.Servername) { server.Name = cmd.Servername; OnServerFound?.Invoke(this, server); } } } break; case TileCMD_GetMapInfo cmd: OnMapInfoRecieved?.Invoke(this, cmd.MapInfo); break; case TileCMD_UpdatePlayerInfo cmd: lock (Players) { PlayerInfo pi = Players.FirstOrDefault(p => p.ID == cmd.Playerinfo.ID); if (pi == null) { Players.Add(pi = new PlayerInfo() { ID = cmd.Playerinfo.ID }); } pi.Populate(cmd.Playerinfo); } break; } }