Thanks for the reply Kennumen. Yeah the code is a mess and I forgot I had moved the heroic strike/cleave code to the bottom like that. I did as you said and changed the code to break out each time an if statement is met and the problem is even if i set the code to ai->GetRageAmount() > 110, which if my understanding is correct should never be true, the bots still spam heroic strike and do nothing else.
I changed the code on pastebin.com to try to show what I changed. I moved the heroic strike/cleave code outside the case statements also trying to again see if that would help, no luck. Sorry again for my noobishess in all of this but I hate to give up on it.