State controllers in Unity can quickly get out of hand if you throw the kitchen sink into them. Taking the time to break apart your state machine and crafting pluggable components will make your system simple, modular, testable, flexible, clean, and composable.
A postmortem analysis of 2017
A postmortem analysis of Ludum Dare 40
Introduction to the Core UI of the Unity game engine.