summaryrefslogtreecommitdiff
path: root/Thronefall_v1.0/Decompile/HealBoostMA.cs
blob: 48cdbbb1d0cdf5b26950f9b738c76bdeb0e705a5 (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
47
48
49
50
51
52
53
54
55
using UnityEngine;

public class HealBoostMA : ManualAttack
{
	public float attackSpeedBoost = 20f;

	public ManualAttack manualAttackToBoost;

	public ParticleSystem boostParticles;

	public float attackSpeedDuration = 2f;

	public float timeToFillUpHealth = 3f;

	public float attackSpeedDurationWhenLowHealth = 4f;

	private float disableBoostIn;

	private float attackSpeedOriginal;

	public override void Start()
	{
		base.Start();
	}

	public override void Attack()
	{
		attackSpeedOriginal = manualAttackToBoost.cooldownTime;
		manualAttackToBoost.cooldownTime /= attackSpeedBoost;
		ParticleSystem.EmissionModule emission = boostParticles.emission;
		emission.enabled = true;
		disableBoostIn = attackSpeedDuration;
		if (hpPlayer.HpPercentage <= 0.33f)
		{
			disableBoostIn = attackSpeedDurationWhenLowHealth;
		}
	}

	public override void Update()
	{
		base.Update();
		disableBoostIn -= Time.deltaTime;
		if (disableBoostIn > 0f)
		{
			hpPlayer.Heal(hpPlayer.maxHp * Time.deltaTime / timeToFillUpHealth);
			cooldown = cooldownTime;
		}
		if (disableBoostIn + Time.deltaTime > 0f && disableBoostIn <= Time.deltaTime)
		{
			manualAttackToBoost.cooldownTime = attackSpeedOriginal;
			ParticleSystem.EmissionModule emission = boostParticles.emission;
			emission.enabled = false;
		}
	}
}