using TMPro; using UnityEngine; public class HUDDMGUI : HUDBase { public TextMeshProUGUI[] dmgs; private float moveSpeed = 1.0f; private float alphaSpeed = 0.5f; private float destroyTime = .9f; bool usedmg2; int m_Index; public void Set(Transform _target, string TextColor, double Damage, eStat Critical) { if (NewGameUI.Ins.m_BangchiUI.isActiveAndEnabled || !OptionInfo.Ins.go_check[0].activeSelf) { Off(true); return; } gameObject.SetActive(true); Set_Target(_target); Set_Pos(); Vector3 randomPosition = new Vector3( Random.Range(-25f, 25f), // x 축 랜덤 범위 Random.Range(-25f, 25f) // y 축 랜덤 범위 ); dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = randomPosition; //dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = Vector3.zero; dmgs[0].alpha = dmgs[1].alpha = 1f; dmgs[0].text = dmgs[1].text = DSUtil.Format("{0}{1}", TextColor, NumberFormatter.FormatNumber(Damage)); usedmg2 = Critical == eStat.CRI || Critical == eStat.M_CRI; dmgs[0].enabled = !usedmg2; dmgs[1].enabled = usedmg2; m_Index = usedmg2 ? 1 : 0; OffTime = destroyTime; isUpdate = false; } private void LateUpdate() { dmgs[m_Index].transform.Translate(new Vector3(0, moveSpeed * Time.deltaTime, 0)); // 텍스트 위치 dmgs[m_Index].alpha = Mathf.Lerp(dmgs[m_Index].alpha, 0, Time.deltaTime * alphaSpeed); // 텍스트 알파값 } }