예제 #1
0
    public void ConsumeRecipie(Dictionary <IngredientKind, int> items)
    {
        if (items == null || items.Count == 0)
        {
            BadRecipieConsumed();
            return;
        }
        RecipieKind r = The.recipies.DoesRecipieExistByIngredients(items);

        if (r != RecipieKind.None)
        {
            int id = IsRecipieAnActualTask(r);
            if (id >= 0)
            {
                houseAnimator.SetTrigger("MonsterFeed");
                FinishTask(id);
            }
            else
            {
                BadRecipieConsumed();
            }
        }
        else
        {
            BadRecipieConsumed();
        }
    }
예제 #2
0
 public RecipieConfig GetRecipie(RecipieKind kind)
 {
     for (int i = 0; i < recipieConfigs.Count; i++)
     {
         if (recipieConfigs[i].kind == kind)
         {
             return(recipieConfigs[i]);
         }
     }
     return(null);
 }
예제 #3
0
 public int IsRecipieAnActualTask(RecipieKind kind)
 {
     foreach (LevelTask task in level.tasks)
     {
         if (task.recipieKind == kind && openTasks.ContainsKey(task.id))
         {
             return(task.id);
         }
     }
     return(-1);
 }