static bool FelRushCheckCharge(bool needForVengeful) { // if we are already almost at max charges, go for it if (FelRushAlmostMaxCharge()) { return(true); } SpellChargeInfo sci = S.GetSpellChargeInfo(SB.FelRush); // if we have no charges, but almost 1 charge available, go for it if (sci.ChargesLeft == 0) { return(sci.TimeUntilNextCharge.TotalMilliseconds < 500); } if (sci.ChargesLeft == 1) { if (needForVengeful) { return(true); } // if we have 1 charge, but the cooldown time fo vengeful retreat is less than next charge time, go for it if (sci.TimeUntilNextCharge.TotalMilliseconds <= S.CooldownTimeLeft(SB.VengefulRetreat)) { return(true); } } // don't go for it. return(false); }