huddmg 최적화
This commit is contained in:
parent
bc2367a27b
commit
cfc986cb83
|
|
@ -66,5 +66,3 @@ messageinfo 엄청 느린 버그
|
||||||
- https://www.notion.so/devlucas/c4dc5df0d9d64c95963c6e540acdca7c#e3ef07bc84ff424790bb723835bbce87
|
- https://www.notion.so/devlucas/c4dc5df0d9d64c95963c6e540acdca7c#e3ef07bc84ff424790bb723835bbce87
|
||||||
|
|
||||||
hud 이상 수정
|
hud 이상 수정
|
||||||
타겟 락 시 카메라 타겟에게 고정
|
|
||||||
|
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
|
@ -6,25 +6,24 @@ public class HUDBase : MyCoroutine
|
||||||
protected Transform m_Target;
|
protected Transform m_Target;
|
||||||
protected Camera m_Camera;
|
protected Camera m_Camera;
|
||||||
|
|
||||||
bool isRect = false;
|
bool isRect = false, isCanvasRect = false, isMainCam = false, isTarget = false;
|
||||||
bool isTarget = false, isCanvasRect = false, isMainCam = false;
|
|
||||||
|
|
||||||
void Init()
|
void Init()
|
||||||
{
|
{
|
||||||
if (!isRect)
|
if (!isRect)
|
||||||
{
|
{
|
||||||
m_RectTransform = GetComponent<RectTransform>();
|
m_RectTransform = GetComponent<RectTransform>();
|
||||||
isRect = !DSUtil.CheckNull(m_RectTransform);
|
isRect = m_RectTransform;
|
||||||
}
|
}
|
||||||
if (!isCanvasRect)
|
if (!isCanvasRect)
|
||||||
{
|
{
|
||||||
m_CanvasRect = GetComponentInParent<Canvas>().GetComponent<RectTransform>();
|
m_CanvasRect = GetComponentInParent<Canvas>().GetComponent<RectTransform>();
|
||||||
isCanvasRect = !DSUtil.CheckNull(m_CanvasRect);
|
isCanvasRect = m_CanvasRect;
|
||||||
}
|
}
|
||||||
if (!isMainCam)
|
if (!isMainCam)
|
||||||
{
|
{
|
||||||
m_Camera = Camera.main;
|
m_Camera = Camera.main;
|
||||||
isMainCam = !DSUtil.CheckNull(m_Camera);
|
isMainCam = m_Camera;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -32,11 +31,12 @@ public class HUDBase : MyCoroutine
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
m_Target = _target;
|
m_Target = _target;
|
||||||
|
isTarget = m_Target;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Update()
|
void Update()
|
||||||
{
|
{
|
||||||
if (!DSUtil.CheckNull(m_Target) && isCanvasRect && isMainCam)
|
if (isTarget && isCanvasRect && isMainCam)
|
||||||
{
|
{
|
||||||
Vector2 ViewportPosition = m_Camera.WorldToViewportPoint(m_Target.position);
|
Vector2 ViewportPosition = m_Camera.WorldToViewportPoint(m_Target.position);
|
||||||
Vector2 WorldObject_ScreenPosition = new Vector2(
|
Vector2 WorldObject_ScreenPosition = new Vector2(
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ public class HUDDMGUI : HUDBase
|
||||||
private float alphaSpeed = 0.5f;
|
private float alphaSpeed = 0.5f;
|
||||||
private float destroyTime = .9f;
|
private float destroyTime = .9f;
|
||||||
bool usedmg2;
|
bool usedmg2;
|
||||||
|
int m_Index;
|
||||||
|
|
||||||
public void Set(Transform _target, string TextColor, double Damage, eStat Critical)
|
public void Set(Transform _target, string TextColor, double Damage, eStat Critical)
|
||||||
{
|
{
|
||||||
|
|
@ -26,30 +27,21 @@ public class HUDDMGUI : HUDBase
|
||||||
Random.Range(-25f, 25f) // y 축 랜덤 범위
|
Random.Range(-25f, 25f) // y 축 랜덤 범위
|
||||||
);
|
);
|
||||||
dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = randomPosition;
|
dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = randomPosition;
|
||||||
|
|
||||||
//dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = Vector3.zero;
|
//dmgs[0].transform.localPosition = dmgs[1].transform.localPosition = Vector3.zero;
|
||||||
dmgs[0].alpha = dmgs[1].alpha = 1f;
|
dmgs[0].alpha = dmgs[1].alpha = 1f;
|
||||||
dmgs[0].text = dmgs[1].text = DSUtil.Format("{0}{1}", TextColor, NumberFormatter.FormatNumber(Damage));
|
dmgs[0].text = dmgs[1].text = DSUtil.Format("{0}{1}", TextColor, NumberFormatter.FormatNumber(Damage));
|
||||||
|
|
||||||
usedmg2 = Critical == eStat.CRI || Critical == eStat.M_CRI;
|
usedmg2 = Critical == eStat.CRI || Critical == eStat.M_CRI;
|
||||||
if (usedmg2)
|
dmgs[0].enabled = !usedmg2;
|
||||||
{
|
dmgs[1].enabled = usedmg2;
|
||||||
dmgs[0].gameObject.SetActive(false);
|
m_Index = usedmg2 ? 1 : 0;
|
||||||
dmgs[1].gameObject.SetActive(true);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dmgs[0].gameObject.SetActive(true);
|
|
||||||
dmgs[1].gameObject.SetActive(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
Set_Coroutine(Off, destroyTime);
|
Set_Coroutine(Off, destroyTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LateUpdate()
|
private void LateUpdate()
|
||||||
{
|
{
|
||||||
int index = usedmg2 ? 1 : 0;
|
dmgs[m_Index].transform.Translate(new Vector3(0, moveSpeed * Time.deltaTime, 0)); // 텍스트 위치
|
||||||
dmgs[index].transform.Translate(new Vector3(0, moveSpeed * Time.deltaTime, 0)); // 텍스트 위치
|
dmgs[m_Index].alpha = Mathf.Lerp(dmgs[m_Index].alpha, 0, Time.deltaTime * alphaSpeed); // 텍스트 알파값
|
||||||
dmgs[index].alpha = Mathf.Lerp(dmgs[index].alpha, 0, Time.deltaTime * alphaSpeed); // 텍스트 알파값
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -40,7 +40,7 @@ public class MonsterSimpleInfo : MonoBehaviourSingletonTemplate<MonsterSimpleInf
|
||||||
public void Set_DelLockTarget(bool isDead)
|
public void Set_DelLockTarget(bool isDead)
|
||||||
{
|
{
|
||||||
sprites[1].canvasRenderer.SetAlpha(0.25f);
|
sprites[1].canvasRenderer.SetAlpha(0.25f);
|
||||||
m_Actor.m_IsLockTarget = false;
|
if (isActor) m_Actor.m_IsLockTarget = false;
|
||||||
MyValue.MyPC.Del_Target();
|
MyValue.MyPC.Del_Target();
|
||||||
MyValue.m_RealCamera.Set_LockTarget(null);
|
MyValue.m_RealCamera.Set_LockTarget(null);
|
||||||
if (isDead) Off();
|
if (isDead) Off();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue