using TMPro; using UnityEngine; using UnityEngine.UI; public class DarkworldMenu_BarPartyMember : MonoBehaviour { public ActivePartyMember CurrentMember; [SerializeField] private Image Icon; [SerializeField] private Image Name; [SerializeField] private TextMeshProUGUI currentHealth; [SerializeField] private TextMeshProUGUI maxHealth; [SerializeField] private Image healthBar; public Image selectedIcon; public TextMeshProUGUI addhealthText; public Animator addhealthAnimator; public bool IsPlayers; public void SetupPartyMember(ActivePartyMember Member) { if (Member != null) { CurrentMember = Member; Icon.sprite = Member.PartyMemberDescription.PartyMemberBattleIcon; if (Member.PartyMemberDescription.PartyMemberBattleIcon != null) { Icon.rectTransform.sizeDelta = new Vector2(Member.PartyMemberDescription.PartyMemberBattleIcon.textureRect.width * 2f, Member.PartyMemberDescription.PartyMemberBattleIcon.textureRect.height * 2f); } Icon.rectTransform.anchoredPosition += CurrentMember.PartyMemberDescription.PartyMemberBattleIcon_CMenuOffset; Name.sprite = Member.PartyMemberDescription.PartyMemberBattle_NameIcon; if (Member.PartyMemberDescription.PartyMemberBattle_NameIcon != null) { Name.rectTransform.sizeDelta = new Vector2(Member.PartyMemberDescription.PartyMemberBattle_NameIcon.texture.width * 2, Member.PartyMemberDescription.PartyMemberBattle_NameIcon.texture.height * 2); } if (IsPlayers) { currentHealth.text = PlayerManager.Instance._PlayerHealth.ToString(); maxHealth.text = PlayerManager.Instance._PlayerMaxHealth.ToString(); } else { currentHealth.text = Member.CurrentHealth.ToString(); maxHealth.text = Member.PartyMemberDescription.MaximumHealth.ToString(); } healthBar.color = Member.PartyMemberDescription.PartyMemberColor; healthBar.fillAmount = (float)Member.CurrentHealth / (float)Member.PartyMemberDescription.MaximumHealth; } else { Debug.LogError("Party member null?"); } } public void UpdateHealth(ActivePartyMember Member) { if (Member != null) { if (IsPlayers) { currentHealth.text = PlayerManager.Instance._PlayerHealth.ToString(); maxHealth.text = PlayerManager.Instance._PlayerMaxHealth.ToString(); Member.CurrentHealth = (int)PlayerManager.Instance._PlayerHealth; } else { currentHealth.text = Member.CurrentHealth.ToString(); maxHealth.text = Member.PartyMemberDescription.MaximumHealth.ToString(); } healthBar.fillAmount = (float)Member.CurrentHealth / (float)Member.PartyMemberDescription.MaximumHealth; } else { Debug.LogError("Party member null?"); } } }