private async void button_Click_1(object sender, RoutedEventArgs e) { Classes.Structs.PlayerLoadout playerInfo = await Classes.GetPlayersKit.GetWeaponInfo(350737813, "Dipsy-Ruddm9"); string primaryWeaponString = ""; string secondaryWeaponString = ""; foreach (var weapon in Classes.JSONHelper.JsonHelperWeaponData) { if (weapon.key == playerInfo.kitList[Convert.ToInt32(playerInfo.selectedKit)].kitIdInformation[0]) { Classes.JSONHelper.JsonHelperWeaponDataStrings.TryGetValue(weapon.weaponData.name, out primaryWeaponString); //myValue is the name of the current weapon } } foreach (var weapon in Classes.JSONHelper.JsonHelperWeaponData) { if (weapon.key == playerInfo.kitList[Convert.ToInt32(playerInfo.selectedKit)].kitIdInformation[1]) { Classes.JSONHelper.JsonHelperWeaponDataStrings.TryGetValue(weapon.weaponData.name, out secondaryWeaponString); //myValue is the name of the current weapon } } MessageBox.Show("Primary Weapon: " + primaryWeaponString + " | Secondary Weapon: " + secondaryWeaponString); }
public static async Task <Structs.PlayerLoadout> GetWeaponInfo(ulong playerId, string playerName) { string url = "http://battlelog.battlefield.com/bf4/loadout/get/" + playerName + "/" + playerId + "/1/"; List <Structs.currentLoadoutWeapons> WeaponData = new List <Structs.currentLoadoutWeapons>(); List <Structs.kits> kitData = new List <Structs.kits>(); byte selectedKit = 0; using (WebClient wc = new WebClient()) { //string jsonString = wc.DownloadString(url); Uri kitUri = new Uri(url, UriKind.Absolute); string jsonString = await downloadKitData(kitUri); kitData = GetPlayerKitInfo(jsonString); dynamic jsonData = JsonConvert.DeserializeObject <dynamic>(jsonString); selectedKit = byte.Parse(jsonData["data"]["currentLoadout"]["selectedKit"].ToString()); foreach (var weaponInfo in jsonData["data"]["currentLoadout"]["weapons"]) { string jsonText = weaponInfo.ToString(); string front = "{"; string back = "}"; string final = front + jsonText + back; JObject JsonFromFinalText = JsonConvert.DeserializeObject <JObject>(final); foreach (KeyValuePair <string, JToken> x in JsonFromFinalText) { List <ulong> attachmentList = JsonConvert.DeserializeObject <List <ulong> >(x.Value.ToString()); WeaponData.Add(new Structs.currentLoadoutWeapons { weaponId = ulong.Parse(x.Key.ToString()), weaponAttachments = attachmentList }); } } } Structs.PlayerLoadout loadout = new Structs.PlayerLoadout { kitList = kitData, weaponList = WeaponData, playerId = playerId, selectedKit = selectedKit }; return(loadout); }
public static async Task<Structs.PlayerLoadout> GetWeaponInfo(ulong playerId, string playerName) { string url = "http://battlelog.battlefield.com/bf4/loadout/get/" + playerName + "/" + playerId + "/1/"; List<Structs.currentLoadoutWeapons> WeaponData = new List<Structs.currentLoadoutWeapons>(); List<Structs.kits> kitData = new List<Structs.kits>(); byte selectedKit = 0; using (WebClient wc = new WebClient()) { //string jsonString = wc.DownloadString(url); Uri kitUri = new Uri(url, UriKind.Absolute); string jsonString = await downloadKitData(kitUri); kitData = GetPlayerKitInfo(jsonString); dynamic jsonData = JsonConvert.DeserializeObject<dynamic>(jsonString); selectedKit = byte.Parse(jsonData["data"]["currentLoadout"]["selectedKit"].ToString()); foreach (var weaponInfo in jsonData["data"]["currentLoadout"]["weapons"]) { string jsonText = weaponInfo.ToString(); string front = "{"; string back = "}"; string final = front + jsonText + back; JObject JsonFromFinalText = JsonConvert.DeserializeObject<JObject>(final); foreach (KeyValuePair<string, JToken> x in JsonFromFinalText) { List<ulong> attachmentList = JsonConvert.DeserializeObject<List<ulong>>(x.Value.ToString()); WeaponData.Add(new Structs.currentLoadoutWeapons { weaponId = ulong.Parse(x.Key.ToString()), weaponAttachments = attachmentList }); } } } Structs.PlayerLoadout loadout = new Structs.PlayerLoadout { kitList = kitData, weaponList = WeaponData, playerId = playerId,selectedKit = selectedKit }; return loadout; }