public override void Update(GameTime gameTime)
        {
            NoShootTime = -1;
            FreezeTime  = -1;

            if (stingRayEmpFireMode.Ammo > 0 && CurrentAttackTarget != null &&
                CurrentAttackTarget.GetType().IsSubclassOf(typeof(UnitTurret)) && !MarkedTurrets.Contains((UnitTurret)CurrentAttackTarget))
            {
                stingRayEmpFireMode.SetLevel(UnitLevel);
                stingRayEmpFireMode.Fire(Logic.ToAngle(CurrentAttackTarget.Position.get() - Position.get()));
                stingRayEmpFireMode.Ammo = 0;
                MarkedTurrets.AddLast((UnitTurret)CurrentAttackTarget);
            }
            base.Update(gameTime);
        }
        public override void Damage(float damage, float pushTime, Vector2 pushSpeed, BasicShipGameObject Damager, AttackType attackType)
        {
            if (CurrentAttackTarget != null)
            {
                if (CurrentAttackTarget.GetType().Equals(typeof(PlayerShip)))
                {
                    MinEngagementDistance = 100;
                }
                else
                {
                    MinEngagementDistance = 300;
                }
            }

            base.Damage(damage, pushTime, pushSpeed, Damager, attackType);
        }