IFD:IOSDevII 2011/Projects/adlavie

From Medien Wiki

Introduction

ADlaVie is a game, which covers the life. It is more a round based game, with four games per day in the app life cycle and 28 (4 times seven days) games per week in the app life cycle.

The games inside ADlaVie

Morning

The first game is always a morning game, and covers the morning (Games like make breakfast, make your bed, brush your teeth, "Wimmel"-Games: Find all hidden forks, knifes and spoons).

To school/work

The second game is from monday to friday a game, where you need to go to school/work. (Games like moving to school, race games). You can go on foot, by bike and with car. To drive a car, you need a driver license, which you can get in a freetime module.

At school/work

Specific task for school or your job from monday to friday. For school: Mathematics, German, English based games. (A Mathematics games is to calculate the result of 2 - 4 numbers)

Evening

The last game is always a evening game, and covers the evening (Games like make dinner, take off the lamps in your house, brush your teeth).

Freetime

The freetime games are only available in the third game on saturday or in the second and third game on sunday.

Shopping

The shopping game is only available in the second game on saturday. Here you buy food and drinks. If you buy lots of alcohol or no fruits/vegetables your character will die earlier.

At the the beginning you create your character with name, birthday, address, schools, skill points and the look of your character.

Screenshots

Some screenshots of the current version of ADlaVie

Classes

Main classes

ADlaVieAppDelegate is the application delegate class. It has a reference to the ADlaVieViewController

ADlaVieViewController is the main ViewController. tbc

AllPropertiesModel saves some generic properties, which many classes uses. For example the default font for ADlaVie, or the ten available colors (5 orange and 5 blue/green)

Controller group

StartGameController acts as the creator and edit controller for the user properties (name, address, birthday, school life, skill points, character look)

Model group

ADlaVieModel is the top model for this game.

Background Group

BackgroundModel has all properties of one background for this game.

BackgroundListModel stores all available BackgroundModels.

Games Group

GameModel has all properties of one game to see in a tableView, which shows all active games. It is NOT the base class of the games inside this game. This classes are subclasses of GameControllerModel.

GameListModel stores all available GameModels.

Job Group

JobModel is the basic model for jobs inside this game.

QuestionModel

Question is the top class for all Questions in the sub games. Currently not in used.

QuestionWithFourAnswers is the top class for question with four answers. Currently not in used.

User Group

UserModel is the basic model for one user. It stores all related properties of the user (name, address, birthday, schools, jobs, available games).

CharacterLookModel saves the look of the character and gives this as a dictionary back, which contains all frames for the body parts (body, mouth, hair, eyes, top clothes, bottom clothes and shoes).

CharacterLookListModel saves all possible look of the characters, odder by the body parts and gender.

DateModel stores a date with day, month and year.

SchoolModel saves the properties of one school of the user.

WorkModel saves one work of the user (with the name of the company and the period).

View group

ADButton is the base class for all buttons for this game.

AlertView shows the default alert view for this game. The design and implementation is not final.

BGView creates the backgroundView with a black transparent front view.

BubbleSpeachView shows a view (often a textview) inside a speech bubble.

CharactersLookView supports a view for the characters look.

DropDownList supports a DropDownList in this game.

InfoGraphicView shows speech bubble with the information for the current screen or current game. The triangle of this bubble shows to the bottom right corner.

InitView is the first view of the game. Will be changed in the future to a better intro animation.

Label creates the default labels for this game.

PickerView creates the default pickers for this game. (The have a different style than the default PickerView from Apple). See here for the first version of it (without date functions).

PopOverPickerView creates a PickerView as an PopOver with a button, which shows the PickerView and its text shows the current selected items.

PopOverTableView creates a TableView as an PopOver with a button, which shows the TableView and its text shows the current selected item.

RoundButton creates the default round buttons for this game.

TableView creates a tableView, which can be horizontally (and vertically).

TextInputView is the basic text input view for this game.

TextView is the basic text view for this game.

Games group

GameController is the base class of all game controllers.

GameControllerModel is the base model for all game controller models.

Freetime->DriverLicence Group

DriverLicenceGameController acts as the controller for the game to get the driver license. (Only the theory exam as a memory game).

DriverLicenceGameModel is the model for the driver license game.

Morning Group

MorningWimmelGameController acts as the controller for a morning game. It is a "Wimmelbild" game, which uses forks, spoons, knifes and plates as the hidden objects.

MorningWimmelGameModel is the model for this morning game.

SchoolWork->School Group

Mathematics01GameController is the controller for a mathematics game, to calculate 2, 3 or 4 numbers with the operations +, -, *, /.

Mathematics01Model is the model for this mathematics01 game.