/// <summary> /// Begins chopping an item /// </summary> private void StartVegChop_(BurgerVegType veg) { bool doChop = false; ChopItem choppingItem = null; switch (veg) { case BurgerVegType.Lettuce: SpawnVeg_(BurgerVegType.Lettuce); break; case BurgerVegType.Tomato: doChop = true; choppingItem = Chef.ChoppingTomato; _action = ChefAction.ChoppingTomato; break; case BurgerVegType.Pickle: doChop = true; choppingItem = Chef.ChoppingPickle; _action = ChefAction.ChoppingPickle; break; } if (doChop) { Chef.SelectionHand.gameObject.SetActive(false); choppingItem.Initialise(veg, VegChopComplete_); choppingItem.gameObject.SetActive(true); } }
/// <summary> /// Spawn vegetables (or fruit) /// </summary> void SpawnVeg_(BurgerVegType veg) { // check item is ok if (!Chef.TopBun.gameObject.activeInHierarchy) { return; } Sprite sprite = null; switch (veg) { // spawn tomato case BurgerVegType.Tomato: sprite = LicenseToGrillController.Instance.TomatoSlices; break; // spawn lettuce case BurgerVegType.Lettuce: sprite = LicenseToGrillController.Instance.LettuceSlice; break; // spawn pickle case BurgerVegType.Pickle: sprite = LicenseToGrillController.Instance.PickleSlices; break; } // spawn an item if (sprite != null) { SpawnSomething_(LicenseToGrillController.Instance.FoodPlateItemPrefab, sprite, new BurgerVeg(veg)); } }
/// <summary> /// Callback when chopping veg is complete /// </summary> void VegChopComplete_(BurgerVegType veg) { SpawnVeg_(veg); Chef.SelectionHand.gameObject.SetActive(true); _action = ChefAction.FacingBoard; }
/// <summary> /// Constructor /// </summary> /// <param name="vegType">The type to set</param> public BurgerVeg(BurgerVegType vegType) { _type = vegType; }
public void Initialise(BurgerVegType veg, Action <BurgerVegType> action) { _type = veg; _completeCallback = action; }