diff options
Diffstat (limited to 'Assembly_CSharp/Tower/FlameThrower.cs')
-rw-r--r-- | Assembly_CSharp/Tower/FlameThrower.cs | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/Assembly_CSharp/Tower/FlameThrower.cs b/Assembly_CSharp/Tower/FlameThrower.cs deleted file mode 100644 index d415d88..0000000 --- a/Assembly_CSharp/Tower/FlameThrower.cs +++ /dev/null @@ -1,68 +0,0 @@ -using UnityEngine; - -public class FlameThrower : Tower -{ - [SerializeField] - private ParticleSystem flames; - - public bool flaming; - - private bool hasMana = true; - - [SerializeField] - private AudioSource audioS; - - private bool soundPlaying; - - protected override void Update() - { - if (hasMana && currentTarget != null && !flaming) - { - flames.Play(); - PlaySound(onOff: true); - flaming = true; - } - else if (!hasMana || (currentTarget == null && flaming)) - { - flames.Stop(); - PlaySound(onOff: false); - flaming = false; - } - base.Update(); - } - - protected override void Fire() - { - if (consumesMana) - { - int manaCost = (int)((float)base.damage * manaConsumptionRate); - if (!ResourceManager.instance.CheckMana(manaCost)) - { - hasMana = false; - return; - } - ResourceManager.instance.SpendMana(manaCost); - hasMana = true; - } - RaycastHit[] array = Physics.SphereCastAll(muzzle.position, base.range / 6f, muzzle.transform.forward, base.range * 1.5f, enemyLayerMask, QueryTriggerInteraction.Collide); - foreach (RaycastHit raycastHit in array) - { - raycastHit.collider.GetComponent<IDamageable>()?.TakeDamage(towerType, base.damage, base.healthDamage, base.armorDamage, base.shieldDamage, base.slowPercent, base.bleedPercent, base.burnPercent, base.poisonPercent, base.critChance, base.stunChance); - } - } - - private void PlaySound(bool onOff) - { - if (onOff && !soundPlaying) - { - audioS.volume = OptionsMenu.instance.masterVolume * OptionsMenu.instance.sfxVolume; - audioS.Play(); - soundPlaying = true; - } - else if (!onOff && soundPlaying) - { - audioS.Stop(); - soundPlaying = false; - } - } -} |