private async Task LoadMagicItems(E5Client e5Client) { var magicItemsList = await e5Client.GetMagicItemsAsync(); allItems.AddRange(magicItemsList.Results); Items.AddRange(GetFilteredEquipments(EquipmentsFilterEntry.Text)); }
protected override async void OnAppearing() { allItems.Clear(); Items.Clear(); if (Connectivity.NetworkAccess == NetworkAccess.None) { await DisplayAlert("No internet", "The app could not connect to the internet.", "OK"); return; } var e5Client = new E5Client(); try { await Task.WhenAll(LoadEquipment(e5Client), LoadMagicItems(e5Client)); } catch (Exception ex) { Log.Error(ex, "An error occurred while loading equipments and magic items"); await DisplayAlert("Unexptected Error", "An error occurred while loading equipments and magic items.", "OK"); } }
public void Initialize() { e5Client = new E5Client(); }
protected override async void OnAppearing() { if (Connectivity.NetworkAccess == NetworkAccess.None) { await DisplayAlert("No internet", "The app could not connect to the internet.", "OK"); return; } EquipmentDetails equipmentDetails = null; try { var e5Client = new E5Client(); if (e5Resource.Url.StartsWith("/api/equipment")) { equipmentDetails = await e5Client.GetEquipmentDetailsAsync(e5Resource.Index); } else if (e5Resource.Url.StartsWith("/api/magic-items")) { equipmentDetails = await e5Client.GetMagicItemDetailsAsync(e5Resource.Index); } else { return; } } catch (Exception ex) { Log.Error(ex, "An error occurred while loading details"); await DisplayAlert("Unexptected Error", "An error occurred while loading details.", "OK"); return; } if (equipmentDetails.DescriptionLines != null && equipmentDetails.DescriptionLines.Length != 0) { viewModel.Description = string.Join($"{Environment.NewLine}{Environment.NewLine}", equipmentDetails.DescriptionLines); } if (equipmentDetails.Cost != null) { viewModel.Cost = $"{equipmentDetails.Cost.Quantity}{equipmentDetails.Cost.Unit}"; } viewModel.DamageDice = equipmentDetails.Damage?.DamageDice; viewModel.DamageType = equipmentDetails.Damage?.DamageType.Name; if (viewModel.Range != null) { viewModel.Range = $"{equipmentDetails.Range.Normal}"; if (equipmentDetails.Range.Long != null) { viewModel.Range += $"/{equipmentDetails.Range.Long}"; } viewModel.Range += "ft"; } viewModel.Weight = equipmentDetails.Weight?.ToString(); if (equipmentDetails.Properties != null && equipmentDetails.Properties.Length > 0) { viewModel.Properties = string.Join(", ", equipmentDetails.Properties.Select(p => p.Name)); } if (equipmentDetails.ArmorClass != null) { viewModel.ArmorClass = equipmentDetails.ArmorClass.Base.ToString(); } viewModel.StealthDisadvantaged = equipmentDetails.StealthDisadvantage == true; }