public static List <GameInfo> ParseToListOfGameInfos(this string jsonData) { List <GameInfo> result = new List <GameInfo>(); if (jsonData.Length < 20) { return(result); } string json = jsonData .Replace(" ", "") .Replace("\n", "") .Replace("{\"games\":[", "") .Replace("}]}", "}") .Replace("},{", "}###{"); foreach (var item in json.Split(new string[] { "###" }, System.StringSplitOptions.RemoveEmptyEntries)) { GameInfoWrapper gameWrapper = JsonUtility.FromJson <GameInfoWrapper>(item); GameInfo game = gameWrapper.ParseToGame(); result.Add(game); } return(result); }
public static GameInfo ParseToGameInfo(this string jsonData) { GameInfoWrapper gameWrapper = JsonUtility.FromJson <GameInfoWrapper>(jsonData); GameInfo gameInfo = gameWrapper.ParseToGame(); return(gameInfo); }
public static string ToJson(this GameInfo game) { var wrapper = new GameInfoWrapper(); wrapper.available = game.Available; wrapper.creator_nickname = game.CreatorNickName; wrapper.id = game.Id; wrapper.players = game.PlayersNicknames.ToArray(); wrapper.players_max = game.PlayersMax; wrapper.players_now = game.PlayersNow; return(JsonUtility.ToJson(wrapper)); }