internal static bool DeathShouldWait(object ret)
{
//if (!UIElements.ReviveAtCorpseButton.IsEnabled)
// return true;
if (FunkyBaseExtension.Settings.Death.WaitForPotionCooldown)
{
//Check Potion Cast Flags..
PowerManager.CanCastFlags potionCastFlags;
if (!PowerManager.CanCast(SNOPower.DrinkHealthPotion, out potionCastFlags))
{
if (potionCastFlags.HasFlag(PowerManager.CanCastFlags.PowerUnusableOnCooldown))
{
BotMain.StatusText = "[Funky] Death: Waiting For Cooldowns!";
return true;
}
}
}
if (FunkyBaseExtension.Settings.Death.WaitForAllSkillsCooldown)
{
//Check Archon?
if (FunkyGame.Hero.Class.AC == ActorClass.Wizard && Hotbar.HasBuff(SNOPower.Wizard_Archon))
{
Skill cancelSkill = FunkyGame.Hero.Class.Abilities[SNOPower.Wizard_Archon_Cancel];
Skill.UsePower(ref cancelSkill);
Hotbar.RefreshHotbar();
BotMain.StatusText = "[Funky] Death: Waiting For Cooldowns!";
return true;
}
foreach (var skill in Hotbar.HotbarSkills)
{
PowerManager.CanCastFlags skillCastFlags;
if (!PowerManager.CanCast(skill.Power, out skillCastFlags))
{
if (skillCastFlags.HasFlag(PowerManager.CanCastFlags.PowerUnusableOnCooldown))
{
BotMain.StatusText = "[Funky] Death: Waiting For Cooldowns!";
return true;
}
}
}
}
return false;
}