public void Zap(CyclopsSonarCreatureDetector.EntityData creatureToZap = null) { if (!AbleToZap()) { return; } ZapRadius(); UpdateCooldown(); if (creatureToZap != null) { var newTarget = new CreatureTarget(creatureToZap); if (newTarget.IsValidTarget) { target = newTarget; } } if (target != null && !target.IsValidTarget) { target = null; } if (target == null) { return; } ZapCreature(); }
public void Zap(CyclopsSonarCreatureDetector.EntityData creatureToZap = null) { if (!this.UpgradeHandler.HasUpgrade) { return; } if (!this.SeamothInBay) { return; } if (!this.HasElectricalDefense) { return; } if (this.IsOnCooldown) { return; } if (Cyclops.powerRelay.GetPower() < EnergyRequiredToZap) { return; } ZapRadius(); timeOfLastZap = Time.time; // Update time of last zap for cooldown purposes if (creatureToZap != null) { var newTarget = new CreatureTarget(creatureToZap); if (newTarget.IsValidTarget) { target = newTarget; } } if (!target.IsValidTarget) { target = null; } if (target == null) { return; } ZapCreature(); }