blob: 8cfd05a2baf9d717c2c23bc465d949f9e87bb58a (
plain)
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
|
using UnityEngine;
public class HealthbarMulti : Healthbar
{
[SerializeField]
private int segments = 10;
[SerializeField]
private Transform lifes;
public override void UpdateDisplay()
{
float fillAmount = target.HpPercentage * (float)segments % 1f;
_ = target.HpPercentage * (float)segments % 1f;
int num = Mathf.FloorToInt(target.HpPercentage / (1f / (float)segments));
for (int i = 0; i < lifes.childCount; i++)
{
lifes.GetChild(i).gameObject.SetActive(num > i);
}
if (target.invulnerable)
{
fillAmount = 1f;
}
if (target.HpPercentage == 1f)
{
canvasParent.SetActive(value: false);
base.enabled = false;
hpLast = 1f;
delayedFill.fillAmount = hpLast;
}
else
{
canvasParent.SetActive(value: true);
base.enabled = true;
}
fill.fillAmount = fillAmount;
if (Mathf.Approximately(fill.fillAmount, 0f))
{
delayedFill.color = deathFillColor;
}
else
{
delayedFill.color = defaultDelayedFillColor;
}
}
}
|