The way I'm currently managing it is with booleans actually. The only part that pains me is that when there are MANY booleans, your conditions turn into a giant list like
IsStand
XIsWalk
XIsRunning
XIsAttacking
XIsJumping
XIsSpecial
XIsEtc...
So you have to limit conditions based on a big list of booleans and (if it happens that you want to add a new state/boolean) you'll have to retrace all of the current actions to add that exception/permission to every other action you've already set.
It's just no that practical