summaryrefslogtreecommitdiff
path: root/Thronefall_v1.0/Decompile/HealBoostMA.cs
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2024-05-20 22:36:58 +0800
committerchai <215380520@qq.com>2024-05-20 22:36:58 +0800
commita22c505984697881f5f911a165ee022087b69e09 (patch)
treed3c030aef1ae9b8a01c889dd2902bb1e3324e72b /Thronefall_v1.0/Decompile/HealBoostMA.cs
parent4a4cc82d069b26bc4d4532e73860f86b211ca239 (diff)
*renameHEADmaster
Diffstat (limited to 'Thronefall_v1.0/Decompile/HealBoostMA.cs')
-rw-r--r--Thronefall_v1.0/Decompile/HealBoostMA.cs55
1 files changed, 55 insertions, 0 deletions
diff --git a/Thronefall_v1.0/Decompile/HealBoostMA.cs b/Thronefall_v1.0/Decompile/HealBoostMA.cs
new file mode 100644
index 0000000..48cdbbb
--- /dev/null
+++ b/Thronefall_v1.0/Decompile/HealBoostMA.cs
@@ -0,0 +1,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;
+ }
+ }
+}