using UnityEngine; using UnityEngine.UI; using TMPro; public class get_item_prefab : MonoBehaviour { [SerializeField] private bool testColorChange; [SerializeField] private Color defaultItemNameColor = Color.white; public Image item_btm; public Image itemProfile; public TextMeshProUGUI itemAmount; public Text itemName; private void Awake() { ApplyItemNameColor(defaultItemNameColor); } private void OnEnable() { if (!testColorChange) { ApplyItemNameColor(defaultItemNameColor); } } public void Bind(Sprite icon, string displayName, int amount, Color qualityColor, Sprite backgroundSprite) { if (item_btm != null) { item_btm.sprite = backgroundSprite; item_btm.color = backgroundSprite != null ? Color.white : qualityColor; } if (itemProfile != null) { itemProfile.sprite = icon; itemProfile.enabled = icon != null; itemProfile.color = icon != null ? Color.white : new Color(1f, 1f, 1f, 0f); } if (itemName != null) { itemName.text = displayName ?? string.Empty; } ApplyItemNameColor(testColorChange ? qualityColor : defaultItemNameColor); if (itemAmount != null) { if (amount <= 1) { itemAmount.text = string.Empty; } else { itemAmount.text = amount.ToString(); } } } private void ApplyItemNameColor(Color color) { if (itemName != null) { itemName.color = color; } } }