private static void TryToDispell(Hero me, List<Item> toList, bool both, bool main, bool tempest)
{
var target = main ? _mainHero : tempest ? me : null;
if (both)
{
var underShit = me.IsSilenced() || me.IsHexed() /*|| me.DebuffState*/;
var isSilenced2 = _mainHero.IsSilenced();
if (isSilenced2 && me.Distance2D(_mainHero) <= 600)
{
foreach (var item in toList.Where(x => Utils.SleepCheck(x.Name + me.Handle)))
{
item.UseAbility(_mainHero);
Utils.Sleep(500, item.Name + me.Handle);
}
}
if (underShit)
{
foreach (var item in toList)
{
item.UseAbility(me);
Utils.Sleep(500, item.Name + me.Handle);
}
}
foreach (var hero in Heroes.GetByTeam(me.Team).Where(x=>x!=null && x.IsValid && x.IsAlive && x.Distance2D(me)<=600 && (x.IsHexed() || x.IsSilenced())))
{
foreach (var item in toList)
{
item.UseAbility(hero);
Utils.Sleep(500, item.Name + me.Handle);
}
}
}
else
{
var isSilenced = target.IsSilenced();
if (!isSilenced) return;
foreach (var item in toList.Where(x => me.Distance2D(target) <= 600))
{
item.UseAbility(target);
Utils.Sleep(500, item.Name + me.Handle);
}
}
}