Remaining changes to control condition

These are the changes made to the control condition after the first pull request.
I feel like a lot of this code is also duplicated from when the story was initially loaded. Again, can we pull the duplicate code out into its own function and call that where necessary?