public async Task SetRecipe(RecipeDetailsEntry recipe) { ItemDetailsEntry item = null; Bitmap image = null; string details = await Task.Run <string>(async() => { try { var itemTask = ItemManager.Instance.GetItem(recipe.OutputItemId).ConfigureAwait(false); var detailTask = RecipeManager.GetRecipeString(recipe); var imageTask = RecipeManager.GetRecipeImage(recipe); item = await itemTask; image = await imageTask; return(await detailTask); } catch (Exception e) { Console.WriteLine(e); } return("Error occured\n"); }); labelRecipeDetails.Text = details; labelRecipeName.Text = item != null ? item.Name : "Error Getting Item Details"; pictureBox1.Image = image; }
public void SetItem(ItemDetailsEntry item) { Item = item; Description = item.Description; ItemName = item.Name; Level = item.Level; VendorValue = item.VendorValue; Restrictions = item.Restrictions; var img = GwApi.GetRenderServiceAssetEntry(item.IconFileSignature, item.IconFileId, ".png"); pictureBox1.Image = img.Asset; labelDetails.Text = _getDetails(item); groupBox2.Text = _getDetailsType(item); }
private string _getDetails(ItemDetailsEntry item) { StringBuilder sb = new StringBuilder(); if (item.ArmorDetails != null) { sb.Append(item.ArmorDetails.ToString()); } if (item.BackDetails != null) { sb.Append(item.BackDetails.ToString()); } if (item.BagDetails != null) { sb.Append(item.BagDetails.ToString()); } if (item.ConsumableDetails != null) { sb.Append(item.ConsumableDetails.ToString()); } if (item.ContainerDetails != null) { sb.Append(item.ContainerDetails.ToString()); } if (item.CraftingMaterialDetails != null) { sb.Append(item.CraftingMaterialDetails.ToString()); } if (item.GizmoDetails != null) { sb.Append(item.GizmoDetails.ToString()); } if (item.ToolDetails != null) { sb.Append(item.ToolDetails.ToString()); } if (item.TrinketDetails != null) { sb.Append(item.TrinketDetails.ToString()); } if (item.TrophyDetails != null) { sb.Append(item.TrophyDetails.ToString()); } if (item.WeaponDetails != null) { sb.Append(item.WeaponDetails.ToString()); } return(sb.ToString()); }
private string _getDetailsType(ItemDetailsEntry item) { if (item.ArmorDetails != null) { return(item.ArmorDetails.GetType().Name); } if (item.BackDetails != null) { return(item.BackDetails.GetType().Name); } if (item.BagDetails != null) { return(item.BagDetails.GetType().Name); } if (item.ConsumableDetails != null) { return(item.ConsumableDetails.GetType().Name); } if (item.ContainerDetails != null) { return(item.ContainerDetails.GetType().Name); } if (item.CraftingMaterialDetails != null) { return(item.CraftingMaterialDetails.GetType().Name); } if (item.GizmoDetails != null) { return(item.GizmoDetails.GetType().Name); } if (item.ToolDetails != null) { return(item.ToolDetails.GetType().Name); } if (item.TrinketDetails != null) { return(item.TrinketDetails.GetType().Name); } if (item.TrophyDetails != null) { return(item.TrophyDetails.GetType().Name); } if (item.WeaponDetails != null) { return(item.WeaponDetails.GetType().Name); } return(""); }
public static async Task <Bitmap> GetRecipeImage(RecipeDetailsEntry recipe) { return(await Task.Run( async() => { ItemDetailsEntry item = null; try { item = await ItemManager.Instance.GetItem(recipe.OutputItemId).ConfigureAwait(false); var rs = GwApi.GetRenderServiceAssetEntry(item.IconFileSignature, item.IconFileId, ".png"); return rs.Asset; } catch (Exception e) { int id = item != null ? item.ItemId : -1; Debug.WriteLine(string.Format("For Item ID " + id + " - " + e)); } return null; })); }