chunk 1: core gameplay scripts scenes runtime assets
This commit is contained in:
40
Assets/Scripts/Combo-Damage Display/DamageDisplay.cs
Normal file
40
Assets/Scripts/Combo-Damage Display/DamageDisplay.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
using System.Collections;
|
||||
|
||||
public class DamageDisplay : MonoBehaviour
|
||||
{
|
||||
public TextMeshProUGUI damageInfoText;
|
||||
public float floatSpeed = 1.0f;
|
||||
public float displayTime = 1.0f; // Adjust the duration you want the damage text to be displayed
|
||||
public Vector3 initialPosition;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
damageInfoText = GameObject.Find("UI").transform.GetChild(0).GetChild(9).gameObject.GetComponent<TextMeshProUGUI>();
|
||||
initialPosition = damageInfoText.transform.position;
|
||||
|
||||
}
|
||||
|
||||
public IEnumerator ShowFloatDamageText(int damageAmount)
|
||||
{
|
||||
damageInfoText.text = $"Damage +{damageAmount}:\n Blood Hungry!!";
|
||||
damageInfoText.gameObject.SetActive(true);
|
||||
|
||||
float elapsedTime = 0f;
|
||||
|
||||
while (elapsedTime < displayTime)
|
||||
{
|
||||
//the time.deltatime * 0.xf is very necessary to control the speed to which the text floats up, interesting because another text didnt require this
|
||||
float translation = floatSpeed * Time.deltaTime * 0.3f;
|
||||
damageInfoText.transform.Translate(Vector3.up * translation, Space.Self);
|
||||
|
||||
elapsedTime += Time.deltaTime;
|
||||
|
||||
yield return null;
|
||||
}
|
||||
|
||||
damageInfoText.gameObject.SetActive(false);
|
||||
damageInfoText.transform.position = initialPosition;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user