/// <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;
 }
예제 #4
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="vegType">The type to set</param>
 public BurgerVeg(BurgerVegType vegType)
 {
     _type = vegType;
 }
예제 #5
0
 public void Initialise(BurgerVegType veg, Action <BurgerVegType> action)
 {
     _type             = veg;
     _completeCallback = action;
 }