Uses accompanying Basket, Objects and Fruit libraries to create Fruit Basket game. If an object is caught, points are added; if an object in missed, a 'life' is lost.

Dependents:   Game_Controller_Project

Committer:
Nathanj94
Date:
Sat Apr 22 12:32:41 2017 +0000
Revision:
13:ae2dac4ab786
Parent:
12:f7d6003e5c6b
Child:
14:6764bb61d413
Redundancy removed and files organised ready for notes to be written

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Nathanj94 0:8d02400f792a 1 #ifndef CATCH_MODEL_H
Nathanj94 0:8d02400f792a 2 #define CATCH_MODEL_H
Nathanj94 0:8d02400f792a 3
Nathanj94 0:8d02400f792a 4 #include "mbed.h"
Nathanj94 0:8d02400f792a 5 #include "N5110.h"
Nathanj94 0:8d02400f792a 6 #include "Gamepad.h"
Nathanj94 0:8d02400f792a 7 #include "Basket.h"
Nathanj94 1:43fbcc3584d6 8 #include "Objects.h"
Nathanj94 0:8d02400f792a 9
Nathanj94 0:8d02400f792a 10 class Catch_Model
Nathanj94 0:8d02400f792a 11 {
Nathanj94 0:8d02400f792a 12 public:
Nathanj94 0:8d02400f792a 13
Nathanj94 0:8d02400f792a 14 Catch_Model();
Nathanj94 0:8d02400f792a 15 ~Catch_Model();
Nathanj94 0:8d02400f792a 16
Nathanj94 13:ae2dac4ab786 17 //INITILISATION FUNCTIONS//
Nathanj94 4:84e29254b988 18 void init(int basket_y, int basket_width, int objects_speed, int lives);
Nathanj94 0:8d02400f792a 19 void input(Gamepad &pad);
Nathanj94 3:fc9133faec7a 20 void update(N5110 &lcd, Gamepad &pad);
Nathanj94 8:db24c475f64f 21
Nathanj94 13:ae2dac4ab786 22 //GAME RULES FUNCTIONS//
Nathanj94 3:fc9133faec7a 23 void check_basket_catch(N5110 &lcd, Gamepad &pad);
Nathanj94 3:fc9133faec7a 24 void check_basket_miss(N5110 &lcd, Gamepad &pad);
Nathanj94 5:7db3e43e5aca 25 void add_score();
Nathanj94 4:84e29254b988 26 int get_lives();
Nathanj94 8:db24c475f64f 27
Nathanj94 13:ae2dac4ab786 28 //BUTTON FUNCTIONS//
Nathanj94 13:ae2dac4ab786 29 void check_a(N5110 &lcd, Gamepad &pad);
Nathanj94 13:ae2dac4ab786 30 void check_b(N5110 &lcd, Gamepad &pad);
Nathanj94 13:ae2dac4ab786 31 void set_delay();
Nathanj94 13:ae2dac4ab786 32
Nathanj94 13:ae2dac4ab786 33 //DISPLAY FUNCTIONS//
Nathanj94 13:ae2dac4ab786 34 void draw(N5110 &lcd);
Nathanj94 4:84e29254b988 35 void print_lives(N5110 &lcd);
Nathanj94 3:fc9133faec7a 36 void print_score(N5110 &lcd);
Nathanj94 8:db24c475f64f 37 void print_delay(N5110 &lcd);
Nathanj94 0:8d02400f792a 38
Nathanj94 0:8d02400f792a 39 private:
Nathanj94 0:8d02400f792a 40
Nathanj94 4:84e29254b988 41 Basket basket;
Nathanj94 4:84e29254b988 42 Objects objects;
Nathanj94 7:ec6dc66ee196 43 Timeout timeout;
Nathanj94 0:8d02400f792a 44
Nathanj94 0:8d02400f792a 45 int _basket_y;
Nathanj94 0:8d02400f792a 46 int _basket_width;
Nathanj94 1:43fbcc3584d6 47 int _objects_speed;
Nathanj94 4:84e29254b988 48 int _lives;
Nathanj94 7:ec6dc66ee196 49 int _delay;
Nathanj94 2:8410e09b77aa 50
Nathanj94 0:8d02400f792a 51 Direction _d;
Nathanj94 0:8d02400f792a 52 float _mag;
Nathanj94 0:8d02400f792a 53
Nathanj94 0:8d02400f792a 54 };
Nathanj94 0:8d02400f792a 55 #endif