public static int ConvertToCheesegull(DirectRankedStatus status) { return(status switch { DirectRankedStatus.Played => 1, DirectRankedStatus.Ranked => 1, DirectRankedStatus.Graveyard => 0, DirectRankedStatus.Pending => 0, DirectRankedStatus.Qualified => 3, DirectRankedStatus.Loved => 4, _ => 0 });
public static async Task <BeatmapSet[]> Search(int offset, string query = "", int mode = -1, DirectRankedStatus status = DirectRankedStatus.All, int amount = 100) { var data = $"?amount={amount}&offset={offset}"; if (query != "") { data += $"&query={query}"; } if (mode != -1) { data += $"&mode={mode}"; } if (status != DirectRankedStatus.All) { data += $"&status={RankedStatusHelper.ConvertToCheesegull(status)}"; } using var wc = new WebClient(); try { var res = await wc.DownloadStringTaskAsync(Global.Config.DirectSearchMirror + data); return(JsonConvert.DeserializeObject <BeatmapSet[]>(res) ?? Array.Empty <BeatmapSet>()); } catch { return(Array.Empty <BeatmapSet>()); } }