using UnityEngine; using UnityEngine.UI; public class FishNetView : MonoBehaviour { public GameObject fishNetItemPrefab; public Transform fishListContainer; public Text fishnetLevelText; public Text fishnetLevelWeightText; public Text fishnetLevelWeightUnitText; public Text fishnetLevelExpText; public Image fishNetProgressbar; public Transform canvasTransform; [SerializeField] private Button sellAllFishButton; [SerializeField] private Text sellAllPriceText; private float allFishPrice; private void Start() { } private void Update() { if (Singleton.Instance.GetCurrentPlayerData().PlayerFishNet.Count == 0) { sellAllPriceText.enabled = false; sellAllFishButton.enabled = false; } else { sellAllPriceText.enabled = true; sellAllFishButton.enabled = true; } } private void OnEnable() { BuildFishList(); } public void BuildFishList() { allFishPrice = 0f; GameManager.TruncateContainer(fishListContainer); RefreshFishNetInfos(); for (int i = 0; i < Singleton.Instance.GetCurrentPlayerData().PlayerFishNet.Count; i++) { FishNetItem component = Object.Instantiate(fishNetItemPrefab, fishListContainer).GetComponent(); component.fishSpecies = Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].species; component.fishWeight = Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].weight; component.uid = Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].uid; component.indexOfList = i; component.canvasTransform = canvasTransform; if (Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].price == 0f) { component.price = GameManager.Instance.GetFishPrice((int)Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].species, Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].weight); } else { component.price = Singleton.Instance.GetCurrentPlayerData().PlayerFishNet[i].price; } allFishPrice += component.price; sellAllPriceText.text = "$ " + allFishPrice.ToString("F2"); } } private void RefreshFishNetInfos() { float fishNetCapacity = GameManager.Instance._playerData.GetFishNetCapacity(); fishnetLevelWeightText.text = GameManager.Instance.ConvertWeightWithoutUnit(GameManager.Instance._playerData.GetUsedFishNet()).ToString("F1") + "/" + GameManager.Instance.ConvertWeightWithoutUnit(fishNetCapacity); fishnetLevelWeightUnitText.text = GameManager.Instance.GetUnitWeight().ToUpper(); int num = Singleton.Instance.GetCurrentPlayerData().PlayerFishNetLevel - 1; float fillAmount = (float)Singleton.Instance.GetCurrentPlayerData().PlayerFishNetExp / (float)GameManager.Instance._playerData.fishNetMaxExp[num]; fishNetProgressbar.fillAmount = fillAmount; fishnetLevelExpText.text = $"{Singleton.Instance.GetCurrentPlayerData().PlayerFishNetExp} / {GameManager.Instance._playerData.fishNetMaxExp[num]}"; fishnetLevelText.text = LanguageManager.Instance.GetText("LEVEL") + " " + (num + 1); } public void SellAllFishButton() { FishNetItem[] componentsInChildren = fishListContainer.GetComponentsInChildren(); for (int i = 0; i < componentsInChildren.Length; i++) { componentsInChildren[i].SellFishNoSound(); } } }