// Token: 0x0600099C RID: 2460 RVA: 0x00029EC4 File Offset: 0x000280C4 public override bool UseAbility(TargetManager targetManager, Sleeper comboSleeper, bool aoe) { Unit9 target = targetManager.Target; if (target.IsRuptured) { if (target.IsMoving) { return(false); } if (!base.Ability.UseAbility(target, 1, false, false)) { return(false); } } if (!base.Ability.UseAbility(target, targetManager.EnemyHeroes, 1, 0, false, false)) { return(false); } float num = base.Ability.GetHitTime(target) + 0.5f; float castDelay = base.Ability.GetCastDelay(target); target.SetExpectedUnitState(base.Disable.AppliesUnitState, num); comboSleeper.Sleep(castDelay); base.OrbwalkSleeper.Sleep(castDelay); base.Sleeper.Sleep(num); return(true); }
private bool Check(Unit9 ally, Unit9 enemy, List <Unit9> enemies, bool ignoreStatusCheck) { if (this.settings.MaxCastRange > 0 && enemy.Distance(ally) > this.settings.MaxCastRange) { return(false); } if (!ignoreStatusCheck) { if (!this.settings.HexStack && enemy.IsHexed) { return(false); } if (!this.settings.SilenceStack && enemy.IsSilenced) { return(false); } if (!this.settings.DisarmStack && enemy.IsDisarmed) { return(false); } if (!this.settings.RootStack && enemy.IsRooted) { return(false); } if (!this.settings.StunStack && enemy.IsStunned) { return(false); } } if (enemy.IsDarkPactProtected) { return(false); } if (this.Ability.UnitTargetCast && enemy.IsBlockingAbilities) { return(false); } if (this.settings.Delay > 0) { UpdateManager.BeginInvoke(this.settings.Delay, () => this.Ability.UseAbility(enemy, enemies, HitChance.Medium, this.settings.EnemiesCount)); } else { this.Ability.UseAbility(enemy, enemies, HitChance.Medium, this.settings.EnemiesCount); } enemy.SetExpectedUnitState( this.Disable.AppliesUnitState, this.Ability.GetHitTime(enemy.Position) + (this.settings.Delay / 1000f) + 0.3f); return(true); }
public void SetTimings(Unit9 target) { var hitTime = this.Ability.GetHitTime(target) + 0.5f; this.OrbwalkSleeper.Sleep(this.Ability.Owner.Handle, this.Ability.GetCastDelay(target) + 0.1f); this.AbilitySleeper.Sleep(this.Ability.Handle, hitTime + 0.1f); this.TargetSleeper.Sleep(target.Handle, 0.05f); target.SetExpectedUnitState(this.Disable.AppliesUnitState, hitTime); }
// Token: 0x060008E8 RID: 2280 RVA: 0x00027F74 File Offset: 0x00026174 public void SetTimings(Unit9 target) { float num = base.Ability.GetHitTime(target) + 0.5f; base.OrbwalkSleeper.Sleep(base.Ability.Owner.Handle, base.Ability.GetCastDelay(target) + 0.1f); base.AbilitySleeper.Sleep(base.Ability.Handle, num + 0.1f); base.TargetSleeper.Sleep(target.Handle, 0.05f); target.SetExpectedUnitState(this.Disable.AppliesUnitState, num); }
public override bool Use(Unit9 ally, Unit9 enemy, IObstacle obstacle) { this.MoveCamera(enemy.Position); var use = this.ActiveAbility.UseAbility(enemy, HitChance.Medium, false, true); if (use) { enemy.SetExpectedUnitState(this.AppliesUnitState, this.ActiveAbility.GetHitTime(enemy) + 0.3f); } return(use); }
// Token: 0x06000174 RID: 372 RVA: 0x0000D470 File Offset: 0x0000B670 public override bool UseAbility(TargetManager targetManager, Sleeper comboSleeper, bool aoe) { Unit9 unit = this.shackleTarget ?? targetManager.Target; if (!base.Ability.UseAbility(unit, false, false)) { return(false); } float num = base.Ability.GetHitTime(unit) + 0.5f; float castDelay = base.Ability.GetCastDelay(unit); unit.SetExpectedUnitState(base.Disable.AppliesUnitState, num); Unit9 unit2 = this.shackleTarget; if (unit2 != null && !unit2.Equals(targetManager.Target)) { targetManager.Target.SetExpectedUnitState(base.Disable.AppliesUnitState, num); } comboSleeper.Sleep(castDelay); base.OrbwalkSleeper.Sleep(castDelay); base.Sleeper.Sleep(num); this.shackleTarget = null; return(true); }