fBaseXtensions.Behaviors.DeathBehavior.DeathShouldWait C# (CSharp) Method

DeathShouldWait() static private method

static private DeathShouldWait ( object ret ) : bool
ret object
return bool
        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;
        }