public static AIHeroClient GetTarget(float range, TargetSelector2.DamageType damageType, bool ignoreShield = true, IEnumerable<AIHeroClient> ignoredChamps = null, Vector3? rangeCheckFrom = null) { if (_lastTarget == null || !_lastTarget.IsValidTarget() || _lastDamageType != damageType) { var newTarget = TargetSelector2.GetTarget(range, damageType, ignoreShield, ignoredChamps, rangeCheckFrom); _lastTarget = newTarget; _lastDamageType = damageType; return newTarget; } if (_lastTarget.IsValidTarget(range) && damageType == _lastDamageType) { return _lastTarget; } var newTarget2 = TargetSelector2.GetTarget(range, damageType, ignoreShield, ignoredChamps, rangeCheckFrom); _lastTarget = newTarget2; _lastDamageType = damageType; return newTarget2; }
public Spell2(SpellSlot slot, float range = float.MaxValue, TargetSelector2.DamageType damageType = TargetSelector2.DamageType.Physical) { Slot = slot; Range = range; DamageType = damageType; // Default values MinHitChance = HitChance.VeryHigh; }