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; } } }