It might be helpful to understand what you end goal is. Are you trying to track your own game specific state information in the player controller? If so then it probably will be better to create your own state machine parallel to the PlayerController states where your own game specific logic can be stored.