I assume each game state is required to use this system, couldn't the responsibility be moved to the engine then?