// using System.Collections.Generic; // using BlueWater.Items; // using BlueWater.Tycoons; // using Sirenix.OdinInspector; // using TMPro; // using UnityEngine; // using UnityEngine.Serialization; // using UnityEngine.UI; // // namespace BlueWater.Uis // { // public class BrewingUi : SwitchActionPopupUi // { // [FormerlySerializedAs("_drinkRecipeSlotUiPrefab")] [SerializeField, Required] // private LiquidRecipeSlotUi liquidRecipeSlotUiPrefab; // // [SerializeField, Required] // private Transform _drinkRecipeSpawnLocation; // // [SerializeField] // private TMP_Text _recipeName; // // [SerializeField] // private Image _drinkImage; // // [SerializeField] // private Button _convertButton; // // [Title("실시간 데이터")] // [SerializeField] // private List _brewingIngredientSlotUis = new(3); // // [FormerlySerializedAs("_selectedDrinkData")] [SerializeField] // private LiquidData selectedLiquidData; // // [SerializeField] // private Brewing _currentBrewing; // // private List _drinkRecipeSlotUis = new(); // // private void Start() // { // Initialize(); // // TycoonEvents.OnDrinkRecipeAcquired += AddDrinkRecipe; // TycoonEvents.OnDrinkRecipeSelected += SelectDrinkRecipe; // } // // private void OnDestroy() // { // TycoonEvents.OnDrinkRecipeAcquired -= AddDrinkRecipe; // TycoonEvents.OnDrinkRecipeSelected -= SelectDrinkRecipe; // } // // private void Initialize() // { // foreach (Transform element in _drinkRecipeSpawnLocation) // { // Destroy(element.gameObject); // } // // var drinkRecipes = DataManager.Instance.TycoonData.DrinkRecipes; // foreach (var element in drinkRecipes) // { // AddDrinkRecipe(element); // } // } // // public override void Open(List popupUiList) // { // base.Open(popupUiList); // // ResetBrewingUi(); // TycoonEvents.OnBrewingUiOpened?.Invoke(); // } // // public override void Close() // { // base.Close(); // // _currentBrewing = null; // ResetBrewingUi(); // TycoonEvents.OnBrewingUiClosed?.Invoke(); // } // // private void ResetBrewingUi() // { // selectedLiquidData = null; // _recipeName.text = null; // _drinkImage.enabled = false; // SetBrewingIngredient(); // foreach (var element in _brewingIngredientSlotUis) // { // element.gameObject.SetActive(false); // } // } // // public void SetBrewing(Brewing brewing) // { // _currentBrewing = brewing; // ShowDrinkRecipeByCategory(); // } // // private void AddDrinkRecipe(string idx) // { // var instance = Instantiate(liquidRecipeSlotUiPrefab, _drinkRecipeSpawnLocation); // instance.Initialize(idx); // _drinkRecipeSlotUis.Add(instance); // } // // private void ShowDrinkRecipeByCategory() // { // var currentDrinkCategory = _currentBrewing.GetDrinkCategory(); // foreach (var element in _drinkRecipeSlotUis) // { // element.gameObject.SetActive(currentDrinkCategory == element.GetDrinkData().Category); // } // } // // public void SelectDrinkRecipe(LiquidData liquidData) // { // selectedLiquidData = liquidData; // // _recipeName.text = selectedLiquidData.Name; // _drinkImage.sprite = liquidData.Sprite; // _drinkImage.enabled = true; // // var ingredients = selectedLiquidData.GetValidIngredients(); // for (var i = 0; i < 3; i++) // { // if (ingredients.Count > i) // { // _brewingIngredientSlotUis[i].SetIngredient(ingredients[i].Idx, ingredients[i].Quantity); // _brewingIngredientSlotUis[i].gameObject.SetActive(true); // } // else // { // _brewingIngredientSlotUis[i].gameObject.SetActive(false); // } // } // // SetBrewingIngredient(); // } // // private void SetBrewingIngredient() // { // foreach (var element in _brewingIngredientSlotUis) // { // element.SetQuantity(); // } // // CheckConvertButton(); // } // // private void CheckConvertButton() // { // if (selectedLiquidData == null || !_currentBrewing.IsEmptyDrink()) // { // _convertButton.interactable = false; // return; // } // // var ingredients = selectedLiquidData.GetValidIngredients(); // if (ingredients.Count <= 0) // { // _convertButton.interactable = false; // return; // } // // for (var i = 0; i < ingredients.Count; i++) // { // if (_brewingIngredientSlotUis[i].GetIsEnough()) continue; // // _convertButton.interactable = false; // return; // } // // _convertButton.interactable = true; // } // // /// // /// 술을 만들 때 최종 버튼 // /// // public void ConvertButton() // { // _currentBrewing.SetDrink(selectedLiquidData); // } // } // }