public static async Task UpdateUBs(int id) { var collec = DatabaseConnection.GetDb().GetCollection <AvastarObject>("AvastarCollection"); var ava = (await collec.FindAsync(a => a.id == id)).FirstOrDefault(); var ub2List = await UB2Object.UpdateUb2List(ava); var ub3List = await UB3Object.UpdateUb3List(ava); await AvaUBObject.UpdateAvaUbList(ava, ub2List, ub3List); }
public static async Task CreateAva(int id) { var ava = new AvastarObject(); ava.id = id; string metadatastr = ""; using (System.Net.WebClient wc = new System.Net.WebClient()) { try { metadatastr = await wc.DownloadStringTaskAsync("https://avastars.io/metadata/" + id.ToString()); } catch (Exception e) { Console.WriteLine(e.Message); } } if (metadatastr.StartsWith("Invalid")) { return; } var traitJson = JObject.Parse(DiscordKeyGetter.GetFileData("app/create-traits-nosvg.json")); var metadataJson = JObject.Parse(metadatastr); ava.id = id; ava.Gender = (string)metadataJson["attributes"][0]["value"]; ava.Score = (int)metadataJson["attributes"][5]["value"]; ava.traits = new Dictionary <string, string>(); for (int i = 7; i < 19; i++) { ava.traits.Add((string)metadataJson["attributes"][i]["trait_type"], (string)metadataJson["attributes"][i]["value"]); } var disp = AvastarCommands.ReturnTraitDisparity(metadataJson, traitJson); ava.Owner = ""; ava.RarityDistribution = new Dictionary <string, int>(); ava.RarityDistribution.Add("Common", disp[0]); ava.RarityDistribution.Add("Uncommon", disp[1]); ava.RarityDistribution.Add("Rare", disp[2]); ava.RarityDistribution.Add("Epic", disp[3]); ava.RarityDistribution.Add("Legendary", disp[4]); ava.FillTraitDictionary(traitJson, metadataJson); var collec = DatabaseConnection.GetDb().GetCollection <AvastarObject>("AvastarCollection"); await collec.InsertOneAsync(ava); var ub2List = await UB2Object.UpdateUb2List(ava); var ub3List = await UB3Object.UpdateUb3List(ava); await AvaUBObject.UpdateAvaUbList(ava, ub2List, ub3List); }