Programming Assignment 4: Your first personal game

The goal of this programming assignment is to have you write, from scratch, a simple Android game following the Model/View/Controller pattern. This will be something you can demo and discuss in a job interview if you want to work in this area.

We will spend 30 minutes brainstorming different ideas and when you come up with an idea you should write a blog post with the title "My PA4 Game" 

Your program must:
  • have an initial "welcome" screen with a "play" button
  • have a GameActivity screen where the game is played
  • have a win/lose/retry activity that is generated when the game or level ends
  • accept user touchscreen input and do something interesting
  • have an underlying model that is fairly simple but not trivial (you can create a more sophisticated model later, but for this assignment keep it relatively simple!)
  • have a view that does nothing but update the model and draw the view based on what is on the model. It carries no internal state itself.
  • have a controller that processes all input from the user and all model-generated events that might change the user interaction (e.g. completing a level!)
  • be localized to work with two languages, one of which is English. Read to learn how to do this (it's easy!)
  • be customized to work on two different devices (the phone and the xoom). The layouts should be slightly different on each device. Read to see how to do this (also pretty easy!)