Ejemplo n.º 1
0
        public void CheckRequirement()
        {
            var requiredItems    = RecipeManager.GetItemRequirement(currentItem.Code);
            var slotRequirements = requiredItems.Count;

            if (CookingEntity.SlotRequiredLevel(slotRequirements) > CookingEntity.NeededSkillLevel)
            {
                SetVisibility(SlotLock);
                return;
            }

            if (RecipeManager.HaveEnoughIngredients(currentRecipe, AvailableIngredients))
            {
                SetVisibility(Available);

                if (!SeenRecipes.Contains(currentItem.Code))
                {
                    SeenRecipes.Add(currentItem.Code);
                }
            }
            else
            {
                SetVisibility(CookedRecipes.Contains(currentItem.Code) ||
                              SeenRecipes.Contains(currentItem.Code) ?
                              Locked : Hidden);
            }
        }
Ejemplo n.º 2
0
        public void ManualCook()
        {
            if (cookingSlots.Count == 0)
            {
                return;
            }

            CookingEntity.ManualAction(GetRecipesToCook());
            ClearList();
        }
Ejemplo n.º 3
0
        private void Cook()
        {
            var itemsToCook = GetRecipeToCook();

            if (!Inventory.CanFitOnBag(itemsToCook))
            {
                GameLibOfMethods.CreateFloatingText("Not enough space in inventory.", 2f);
                return;
            }

            if (PlayerStatsManager.statWarning.ContainsValue(true))
            {
                PlayerChatLog.Instance.AddChatMessege("I'm not feeling well to cook.");
                return;
            }

            Stats.RemoveMoney(_price);
            CookingEntity.StartAction(itemsToCook, true);
        }
Ejemplo n.º 4
0
        public void ManualCook()
        {
            if (_cookingSlots.Count == 0)
            {
                return;
            }

            var itemsToCook = GetRecipesToCook();

            if (!Inventory.CanFitOnBag(itemsToCook))
            {
                GameLibOfMethods.CreateFloatingText("Not enough space in inventory.", 2f);
                return;
            }

            if (PlayerStatsManager.statWarning.ContainsValue(true))
            {
                PlayerChatLog.Instance.AddChatMessege("I'm not feeling well to cook.");
                return;
            }

            CookingEntity.StartAction(itemsToCook, false);
            ClearList();
        }