iOS Shooter Designs Part 3: Menu Storyboarding
After a slight digression into actual coding, I'm back on designs for my iOS Shooter Project. In today's post, I'll be looking at menu layout and View navigation.
Playing with the Storyboarding feature in XCode made me want to eschew my vector drawing packages and mock up my Views directly in Interface Builder. Granted, it isn't perfect at showing exactly what goes where at a glance, but here it is:
By way of explanation, the interface as a whole will be governed by a Navigation Controller, the root of which will be the Main Menu. This menu will link to 3 other Views: Options, Help and the Game Views. High Scores will be managed by an API (Game Center, OpenFeint, Scoreloop, etc - exactly which is a decision for another post).
Options
Exactly which options are available may change as the game takes shape, but there won't be many. All options should be displayed in a single view with a "Done" button to return to the Main Menu. Options could be placed in the iOS Settings pages, but this seems a bit klunky for options you may wish to change on a game by game basis.
Help
The help screen will be a simple web view that displays an online help page. This page can be shared between the main web site for the project, and the app itself. An exit button will be placed on this page in the same manner as on the main game screen.
Game Views
The "Start Game" button's behaviour will depend on the current state of the app. If the user has a game in progress (stopped by suspending, the app, for example), an alert will be displayed giving the option to start a new game, or to resume the current game. Resuming the current game will push directly to the main Game View. Upon entering the Game View, there will be a short countdown before action resumes.
If the user chooses to start a new game, or there is no game in progress, a View will be presented allowing a choice of starting weapons. Upon selecting a weapon, the Game View will be pushed onto the navigation stack and a new game will begin.
When in the Game View, the exit button (yellow) in the top right will present an alert dialog requiring confirmation. If confirmed, all Views will be popped back to the Main Menu.
So that's the Views planned out. I'll be coding before I know it!