public void ModifyConstructedRecipeList(Recipe recipe, bool isAdd)
 {
     if (isAdd)
     {
         GameObject recipeGO = GameObject.Instantiate(RecipeNameTemplate);
         recipeGO.transform.parent = _constructedRecipeView.content;
         RecipeNameItem item = recipeGO.GetComponent <RecipeNameItem>();
         item.Init(this, recipe.Name);
     }
 }
 public void BuildConstructedRecipeList()
 {
     LoadConstructedRecipeList();
     foreach (Recipe recipe in ConstructedRecipes)
     {
         GameObject recipeGO = GameObject.Instantiate(RecipeNameTemplate);
         recipeGO.transform.parent = _constructedRecipeView.content;
         RecipeNameItem item = recipeGO.GetComponent <RecipeNameItem>();
         item.Init(this, recipe.Name);
     }
 }
    public void ConstructRecipeNameList()
    {
        List <string> recipeNames = LoadRecipeNameString();

        foreach (string recipeName in recipeNames)
        {
            GameObject recipeGO = GameObject.Instantiate(RecipeNameTemplate);
            recipeGO.transform.parent = _recipeNameView.content;
            RecipeNameItem item = recipeGO.GetComponent <RecipeNameItem>();
            item.Init(this, recipeName);
        }
    }
    public void ChangeOperatingNewRecipe(RecipeNameItem item)
    {
        string recipeName = item.GetRecipeName();

        //RecipeManager recipeManager = Utils.GetGameManager().GetRecipeManager();
        //RecipeQueryRequest quest = new RecipeQueryRequest();
        //quest._amountType = RecipeQueryRequest.AmountType.Single;
        //quest._queryType = RecipeQueryRequest.QueryType.Name;
        //quest._nameToFound = recipeName;
        //RecipeQueryResult result = recipeManager.LookUpRecipeInLibrary(in quest);
        //if(result._type == RecipeQueryResult.Type.Exist)
        //{
        //    _curOperatingRecipe = result.GetBestRecipe();
        //}
        //else if(result._type == RecipeQueryResult.Type.Fail)
        //{
        //    _curOperatingRecipe = new Recipe();
        //    _curOperatingRecipe.Name = recipeName;
        //}

        if (ConstructedRecipes.Exists(x => x.Name == recipeName))
        {
            _curOperatingRecipe = ConstructedRecipes.Find(x => x.Name == recipeName);
        }
        else
        {
            _curOperatingRecipe      = new Recipe();
            _curOperatingRecipe.Name = recipeName;
        }

        List <FlavourFactor> flavors = _curOperatingRecipe.Flavours;

        foreach (OperatingRecipeFlavorListItem flavorItem in _curFlavorList)
        {
            Destroy(flavorItem.gameObject);
        }
        _curFlavorList.Clear();
        foreach (FlavourFactor flavour in flavors)
        {
            AddNewFlavourItem(flavour.Name, flavour.FactorDegree);
        }
        _operatingRecipeName.text = _curOperatingRecipe.Name;
    }