miepzerino
2023-12-15 24253ea93a51232da89a429aa4964578446bca44
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
 
public class UIManager : MonoBehaviour
{
    public GameObject damageTextPrefab;
    public GameObject healthTextPrefab;
    public Canvas gameCanvas;
 
 
    private void Awake()
    {
        gameCanvas = FindObjectOfType<Canvas>();
    }
 
    private void OnEnable()
    {
        CharacterEvents.characterDamaged += (CharacterTookDamange);
        CharacterEvents.characterHealed += (CharacterHealed);
 
    }
 
    private void OnDisable()
    {
        CharacterEvents.characterDamaged -= (CharacterTookDamange);
        CharacterEvents.characterHealed -= (CharacterHealed);
    }
 
    public void CharacterTookDamange(GameObject character, int damageReceived)
    {
        // Create text at character hit
        Vector3 spawnPosition = Camera.main.WorldToScreenPoint(character.transform.position);
 
        TMP_Text tmpText = Instantiate(damageTextPrefab, spawnPosition, Quaternion.identity, gameCanvas.transform).GetComponent<TMP_Text>();
 
        tmpText.text = damageReceived.ToString();
 
    }
    public void CharacterHealed(GameObject character, int healthRestored)
    {
        // Create text at character hit
        Vector3 spawnPosition = Camera.main.WorldToScreenPoint(character.transform.position);
 
        TMP_Text tmpText = Instantiate(healthTextPrefab, spawnPosition, Quaternion.identity, gameCanvas.transform).GetComponent<TMP_Text>();
 
        tmpText.text = healthRestored.ToString();
 
    }
}