///////////////////////////////////////////////////////////
 // allows or disallows a state on all the player's FPS
 // components (NOTE: including those currently disabled).
 // this is useful for having areas or situations where a
 // certain available state cannot be enabled by the player,
 // such as preventing running in a room full of mud (TIP:
 // use triggers) or disabling aiming while shell shocked.
 ///////////////////////////////////////////////////////////
 public void AllowState(string state, bool isAllowed)
 {
     // 'AllowStateRecursively' will begin with the Controller
     // and continue down the hierarchy
     if (Controller != null)
     {
         Controller.AllowStateRecursively(state, isAllowed);
     }
 }