// *********************************************************************** // Assembly : Game // Author : Kimch // Created : 2020-11-06 // Description : // Last Modified By : // Last Modified On : // *********************************************************************** // // // *********************************************************************** using TMPro; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; namespace G.UI { /// /// /// public class SkillJoystick : Joystick { public TextMeshProUGUI tmpName; public TextMeshProUGUI tmpCdTime; public Image imgCdProgress; public Image imgSkillIcon; public GameObject castFx; private Button _skillBtn; private Cha_Moves.MovesInfo _buffInfo; public void SetBuff(Cha_Moves.MovesInfo buffInfo) { _buffInfo = buffInfo; var skillItem = ItemProxy.Instance.GetStaticItem(buffInfo.targetId); if (skillItem != null) IconProxy.Instance.SetSprite(imgSkillIcon, skillItem.icon); } public Cha_Moves.MovesInfo GetBuff() { return _buffInfo; } private void OnDisable() { _buffInfo = null; } private void LateUpdate() { if (_buffInfo == null) return; var ct = _buffInfo.uiSkillCoolTime; var cd = _buffInfo.uiSkillCoolDown; if (ct > 0f && cd > 0f) { _skillBtn.interactable = false; if (castFx && castFx.activeSelf) { castFx.SetActive(false); } if (cd < 1f) { tmpCdTime.text = (cd).ToString("0.0"); } else { tmpCdTime.text = ((int)cd).ToString(); } imgCdProgress.fillAmount = cd / ct; } else { if (castFx && !castFx.activeSelf) { castFx.SetActive(true); } _skillBtn.interactable = true; tmpCdTime.text = ""; imgCdProgress.fillAmount = 0f; } } protected override void Start() { _skillBtn = GetComponent