private void AddIngredientToRecipeBtn_Click(object sender, RoutedEventArgs e) { //get the enum of the selected ingredient IngredientsEnum ingredientToAdd = (IngredientsEnum)Enum.Parse(typeof(IngredientsEnum), IngredientsComboBox.SelectedItem.ToString()); //add ingredient to recipe UpdateLogMsg(_manager.AddIngredientToRecipe(_selectedBeverage, ingredientToAdd)); UpdateRecipeViewSource(); }
/// <summary> /// 创建食材Item /// </summary> /// <param name="ingredient"></param> /// <param name="number"></param> public void AddItemForIng(IngredientsEnum ingredient, int number) { if (number == 0) { return; } string ingNameStr = "???"; string iconKey = ""; switch (ingredient) { case IngredientsEnum.Oilsalt: //油盐 ingNameStr = TextHandler.Instance.manager.GetTextById(21); iconKey = "ui_ing_oilsalt"; break; case IngredientsEnum.Meat: //鲜肉 ingNameStr = TextHandler.Instance.manager.GetTextById(22); iconKey = "ui_ing_meat"; break; case IngredientsEnum.Riverfresh: //河鲜 ingNameStr = TextHandler.Instance.manager.GetTextById(23); iconKey = "ui_ing_riverfresh"; break; case IngredientsEnum.Seafood: //海鲜 ingNameStr = TextHandler.Instance.manager.GetTextById(24); iconKey = "ui_ing_seafood"; break; case IngredientsEnum.Vegetables: //蔬菜 ingNameStr = TextHandler.Instance.manager.GetTextById(25); iconKey = "ui_ing_vegetables"; break; case IngredientsEnum.Melonfruit: //瓜果 ingNameStr = TextHandler.Instance.manager.GetTextById(26); iconKey = "ui_ing_melonfruit"; break; case IngredientsEnum.Waterwine: //酒水 ingNameStr = TextHandler.Instance.manager.GetTextById(27); iconKey = "ui_ing_waterwine"; break; case IngredientsEnum.Flour: //面粉 ingNameStr = TextHandler.Instance.manager.GetTextById(28); iconKey = "ui_ing_flour"; break; } Sprite spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName(iconKey); CreateItem(objItemBaseContainer, spIcon, ingNameStr, number + ""); }
public string UpdateIngredientAmountInRecipe(Beverage beverage, IngredientsEnum ingredient, int amount) { try { beverage.Recipe.AddAmountToIngredient(ingredient, amount); } catch (Exception) { return($"Select an ingredient first"); } return($"Added {amount} {ingredient} to {beverage}"); }
public string AddIngredientToRecipe(Beverage beverage, IngredientsEnum ingredient) { try { beverage.Recipe.Add(ingredient, 0); } catch (NullReferenceException) { return($"Select an ingredient first"); } catch (Exception) { return($"{ingredient} is allready in {beverage}'s recipe"); } return($"Added {ingredient} to {beverage}'s recipe"); }
/// <summary> /// 是否有足够的材料 /// </summary> /// <param name="ingredients"></param> /// <param name="number"></param> /// <returns></returns> public bool HasEnoughIng(IngredientsEnum ingredients, long number) { long hasNumber = 0; switch (ingredients) { case IngredientsEnum.Oilsalt: hasNumber = ingOilsalt; break; case IngredientsEnum.Meat: hasNumber = ingMeat; break; case IngredientsEnum.Riverfresh: hasNumber = ingRiverfresh; break; case IngredientsEnum.Seafood: hasNumber = ingSeafood; break; case IngredientsEnum.Vegetables: hasNumber = ingVegetables; break; case IngredientsEnum.Melonfruit: hasNumber = ingMelonfruit; break; case IngredientsEnum.Waterwine: hasNumber = ingWaterwine; break; case IngredientsEnum.Flour: hasNumber = ingFlour; break; } if (hasNumber >= number) { return(true); } else { return(false); } }
/// <summary> /// 设置拥有数量 /// </summary> public void SetOwn(IngredientsEnum ingType) { if (goodsData == null || tvOwn == null) { return; } GameDataBean gameData = GameDataHandler.Instance.manager.GetGameData(); long ownNumber = 0; switch (ingType) { case IngredientsEnum.Oilsalt: ownNumber = gameData.ingOilsalt; break; case IngredientsEnum.Meat: ownNumber = gameData.ingMeat; break; case IngredientsEnum.Riverfresh: ownNumber = gameData.ingRiverfresh; break; case IngredientsEnum.Seafood: ownNumber = gameData.ingSeafood; break; case IngredientsEnum.Vegetables: ownNumber = gameData.ingVegetables; break; case IngredientsEnum.Melonfruit: ownNumber = gameData.ingMelonfruit; break; case IngredientsEnum.Waterwine: ownNumber = gameData.ingWaterwine; break; case IngredientsEnum.Flour: ownNumber = gameData.ingFlour; break; } tvOwn.text = ownNumber + ""; }
public string RemoveIngredientFromRecipe(Beverage beverage, IngredientsEnum ingredient) { //dont allow the user to delete the sugar from the recipe. if (ingredient.Equals(IngredientsEnum.Sugar)) { return($"All Beverages must have sugar in the recipe!"); } try { beverage.Recipe.Remove(ingredient); } catch (Exception) { //if an ingreidnet wasn't selected. //or for some reason the ingredient isn't in the dictionery //(Shouldn't happen but catching the base class Exception will catch all excaptions) return($"Select an ingredient first"); } return($"Removed {ingredient} from {beverage}'s recipe"); }
public void Submit(DialogView dialogView, DialogBean dialogBean) { int buyNumber = int.Parse(etNumber.text); IngredientsEnum ingType = (IngredientsEnum)goodsData.mark_type; GameDataBean gameData = GameDataHandler.Instance.manager.GetGameData(); if (buyNumber <= 0) { ToastHandler.Instance.ToastHint(TextHandler.Instance.manager.GetTextById(1017)); return; } if (!gameData.HasEnoughMoney(price_l * buyNumber, price_m * buyNumber, price_s * buyNumber)) { ToastHandler.Instance.ToastHint(TextHandler.Instance.manager.GetTextById(1005)); return; } gameData.PayMoney(price_l * buyNumber, price_m * buyNumber, price_s * buyNumber); gameData.AddIng(ingType, buyNumber); RreshData(); ToastHandler.Instance.ToastHint(ivIcon.sprite, string.Format(TextHandler.Instance.manager.GetTextById(1018), buyNumber, goodsData.name, tvPirce.text)); }
public static Sprite GetIngredientIcon(IngredientsEnum ingredients) { string iconKey = ""; switch (ingredients) { case IngredientsEnum.Oilsalt: iconKey = "ui_ing_oilsalt"; break; case IngredientsEnum.Meat: iconKey = "ui_ing_meat"; break; case IngredientsEnum.Riverfresh: iconKey = "ui_ing_riverfresh"; break; case IngredientsEnum.Seafood: iconKey = "ui_ing_seafood"; break; case IngredientsEnum.Vegetables: iconKey = "ui_ing_vegetables"; break; case IngredientsEnum.Melonfruit: iconKey = "ui_ing_melonfruit"; break; case IngredientsEnum.Waterwine: iconKey = "ui_ing_waterwine"; break; case IngredientsEnum.Flour: iconKey = "ui_ing_flour"; break; } return(IconDataHandler.Instance.manager.GetIconSpriteByName(iconKey)); }
public static string GetIngredientName(IngredientsEnum ingredients) { string name = "???"; switch (ingredients) { case IngredientsEnum.Oilsalt: name = TextHandler.Instance.manager.GetTextById(21); break; case IngredientsEnum.Meat: name = TextHandler.Instance.manager.GetTextById(22); break; case IngredientsEnum.Riverfresh: name = TextHandler.Instance.manager.GetTextById(23); break; case IngredientsEnum.Seafood: name = TextHandler.Instance.manager.GetTextById(24); break; case IngredientsEnum.Vegetables: name = TextHandler.Instance.manager.GetTextById(25); break; case IngredientsEnum.Melonfruit: name = TextHandler.Instance.manager.GetTextById(26); break; case IngredientsEnum.Waterwine: name = TextHandler.Instance.manager.GetTextById(27); break; case IngredientsEnum.Flour: name = TextHandler.Instance.manager.GetTextById(28); break; } return(name); }
/// <summary> /// 增加食材 /// </summary> public void AddIng(IngredientsEnum ingType, int number) { switch (ingType) { case IngredientsEnum.Oilsalt: ingOilsalt += number; userAchievement.ownIngOilsalt += number; if (ingOilsalt < 0) { ingOilsalt = 0; } break; case IngredientsEnum.Meat: ingMeat += number; userAchievement.ownIngMeat += number; if (ingMeat < 0) { ingMeat = 0; } break; case IngredientsEnum.Riverfresh: ingRiverfresh += number; userAchievement.ownIngRiverfresh += number; if (ingRiverfresh < 0) { ingRiverfresh = 0; } break; case IngredientsEnum.Seafood: ingSeafood += number; userAchievement.ownIngSeafood += number; if (ingSeafood < 0) { ingSeafood = 0; } break; case IngredientsEnum.Vegetables: ingVegetables += number; userAchievement.ownIngVegetables += number; if (ingVegetables < 0) { ingVegetables = 0; } break; case IngredientsEnum.Melonfruit: ingMelonfruit += number; userAchievement.ownIngMelonfruit += number; if (ingMelonfruit < 0) { ingMelonfruit = 0; } break; case IngredientsEnum.Waterwine: ingWaterwine += number; userAchievement.ownIngWaterwine += number; if (ingWaterwine < 0) { ingWaterwine = 0; } break; case IngredientsEnum.Flour: ingFlour += number; userAchievement.ownIngFlour += number; if (ingFlour < 0) { ingFlour = 0; } break; } }
/// <summary> /// 扣除材料 /// </summary> /// <param name="ingredients"></param> /// <param name="number"></param> public void DeductIng(IngredientsEnum ingredients, long number) { switch (ingredients) { case IngredientsEnum.Oilsalt: ingOilsalt -= number; break; case IngredientsEnum.Meat: ingMeat -= number; break; case IngredientsEnum.Riverfresh: ingRiverfresh -= number; break; case IngredientsEnum.Seafood: ingSeafood -= number; break; case IngredientsEnum.Vegetables: ingVegetables -= number; break; case IngredientsEnum.Melonfruit: ingMelonfruit -= number; break; case IngredientsEnum.Waterwine: ingWaterwine -= number; break; case IngredientsEnum.Flour: ingFlour -= number; break; } if (ingOilsalt < 0) { ingOilsalt = 0; } if (ingMeat < 0) { ingMeat = 0; } if (ingRiverfresh < 0) { ingRiverfresh = 0; } if (ingSeafood < 0) { ingSeafood = 0; } if (ingVegetables < 0) { ingVegetables = 0; } if (ingMelonfruit < 0) { ingMelonfruit = 0; } if (ingWaterwine < 0) { ingWaterwine = 0; } if (ingFlour < 0) { ingFlour = 0; } }
private void RecipeListView_ItemClick(object sender, ItemClickEventArgs e) { var selectedKeyValuePair = (KeyValuePair <IngredientsEnum, int>)e.ClickedItem; _selctedRecipeIngredient = selectedKeyValuePair.Key; }
private void InContainerListView_ItemClick(object sender, ItemClickEventArgs e) { var selectedKeyValuePair = (KeyValuePair <IngredientsEnum, int>)e.ClickedItem; _selctedStockIngredient = selectedKeyValuePair.Key; }
public string RestockIngredient(IngredientsEnum ingredient, int amount) { VendingMachine.Restock(ingredient, amount); return($"Restocked {ingredient},added {amount}"); }
//fill a spesific ingredient to an amount internal void Restock(IngredientsEnum ingredient, int amount) => Stock.Restock(ingredient, Math.Min(Stock[ingredient] + amount, MaxAmountInStock));
//restock an ingredient to max internal void Restock(IngredientsEnum ingredient) => Stock.Restock(ingredient, MaxAmountInStock);
/// <summary> /// 修改准备的食材 /// </summary> public void ChangeIngredientPre() { if (menuInfo == null) { return; } List <IngredientsEnum> listIng = new List <IngredientsEnum>(); if (menuInfo.ing_oilsalt != 0) { listIng.Add(IngredientsEnum.Oilsalt); } if (menuInfo.ing_meat != 0) { listIng.Add(IngredientsEnum.Meat); } if (menuInfo.ing_riverfresh != 0) { listIng.Add(IngredientsEnum.Riverfresh); } if (menuInfo.ing_seafood != 0) { listIng.Add(IngredientsEnum.Seafood); } if (menuInfo.ing_vegetables != 0) { listIng.Add(IngredientsEnum.Vegetables); } if (menuInfo.ing_melonfruit != 0) { listIng.Add(IngredientsEnum.Melonfruit); } if (menuInfo.ing_waterwine != 0) { listIng.Add(IngredientsEnum.Waterwine); } if (menuInfo.ing_flour != 0) { listIng.Add(IngredientsEnum.Flour); } IngredientsEnum ingredientType = RandomUtil.GetRandomDataByList(listIng); string iconKey = "ingredient_"; switch (ingredientType) { case IngredientsEnum.Oilsalt: iconKey += "oilsalt_1"; break; case IngredientsEnum.Meat: iconKey += "meat_1"; break; case IngredientsEnum.Riverfresh: iconKey += "riverfresh_1"; break; case IngredientsEnum.Seafood: iconKey += "seafood_1"; break; case IngredientsEnum.Vegetables: iconKey += "vegetables_1"; break; case IngredientsEnum.Melonfruit: iconKey += "melonfruit_1"; break; case IngredientsEnum.Waterwine: iconKey += "waterwine_1"; break; case IngredientsEnum.Flour: iconKey += "flour_1"; break; } Sprite spIcon = GameItemsHandler.Instance.manager.GetItemsSpriteByName(iconKey); if (srIngredientPre != null) { srIngredientPre.sprite = spIcon; srIngredientPre.transform.localScale = new Vector3(1, 1, 1); srIngredientPre.transform.DOScale(Vector3.zero, 0.5f).From().SetEase(Ease.OutBack); } }
public IngredientOutOfStockException(IngredientsEnum ingredient, int amountMissing) { Ingredient = ingredient; AmountMissing = amountMissing; }
public string RestockIngredient(IngredientsEnum ingredient) { VendingMachine.Restock(ingredient); return($"Restocked {ingredient} to max"); }