บทความถัดๆไป ผมขอโพสสลับกับเทคนิคการใช้งาน Unity และ VDO Series การสร้างเกมอื่นๆนะครับ (จะได้ไม่เบื่อกัน)
Source Code :
using UnityEngine;
public class FloatingTextController : MonoBehaviour
{
public static FloatingTextController instance;
public ObjectPooling ObjPooling;
public Vector3 offset;
void Start()
{
if (instance == null)
{
instance = this;
}
}
public void DisplayFloatingText(string damage, Transform target)
{
GameObject damageObj = ObjPooling.GetPooledObject();
if (damageObj == null)
{
return;
}
damageObj.GetComponent<FloatingTextPooling>().damageText.text = damage;
damageObj.transform.position = target.position + offset;
// กรณีที่ต้องการใช้องศาที่ set ให้กับ Text ก็ให้ comment บรรทัดข้างล่างครับ
damageObj.transform.rotation = Camera.main.transform.rotation;
damageObj.SetActive(true);
}
}
using UnityEngine;
using UnityEngine.UI;
public class FloatingTextPooling : MonoBehaviour {
public float distroyTime = 2.0f;
// ให้เอา Text ใน Canvas มาใส่นะครับ
public Text damageText;
void OnEnable()
{
Invoke("Destroy", distroyTime);
}
void Destroy()
{
gameObject.SetActive(false);
}
void OnDisable()
{
CancelInvoke();
}
void OnTriggerEnter(Collider hit)
{
Destroy();
}
}
ปล. มีอะไรแนะนำได้นะครับ
NO GAME NO DREAM !!!!