Hugo Hu / Mbed 2 deprecated BRAVEHEART

Dependencies:   mbed N5110 ShiftReg PinDetect

Committer:
Siriagus
Date:
Sat May 02 00:22:43 2015 +0000
Revision:
8:9ac6a428fa26
Parent:
7:678873947b29
Child:
9:da608ae65df9
Added Splash/Title Screen + Prototyping player movement

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Siriagus 5:100d960fc6d5 1 #ifndef GAME_H
Siriagus 5:100d960fc6d5 2 #define GAME_H
Siriagus 5:100d960fc6d5 3
Siriagus 7:678873947b29 4 #include "State.h"
Siriagus 8:9ac6a428fa26 5 #include "Resources.h" // TODO: Move to State.h ?
Siriagus 8:9ac6a428fa26 6 #include <vector>
Siriagus 8:9ac6a428fa26 7
Siriagus 8:9ac6a428fa26 8 struct Object
Siriagus 8:9ac6a428fa26 9 {
Siriagus 8:9ac6a428fa26 10 int x, y, width, height;
Siriagus 8:9ac6a428fa26 11 int vx, vy;
Siriagus 8:9ac6a428fa26 12 bool onGround;
Siriagus 8:9ac6a428fa26 13 };
Siriagus 8:9ac6a428fa26 14
Siriagus 8:9ac6a428fa26 15 struct Point
Siriagus 8:9ac6a428fa26 16 {
Siriagus 8:9ac6a428fa26 17 int x;
Siriagus 8:9ac6a428fa26 18 int y;
Siriagus 8:9ac6a428fa26 19 };
Siriagus 7:678873947b29 20
Siriagus 5:100d960fc6d5 21 class Game : public State
Siriagus 5:100d960fc6d5 22 {
Siriagus 5:100d960fc6d5 23 public:
Siriagus 5:100d960fc6d5 24 Game(StateManager* fsm, N5110 *lcd, InputManager* input)
Siriagus 8:9ac6a428fa26 25 : State(fsm, lcd, input) {player.x = 10; player.y = 10; player.width = 5; player.height = 5; player.vy = 0; player.vx = 0; player.onGround = false; init();}
Siriagus 5:100d960fc6d5 26
Siriagus 7:678873947b29 27 virtual void update(float dt);
Siriagus 7:678873947b29 28 virtual void render();
Siriagus 8:9ac6a428fa26 29
Siriagus 8:9ac6a428fa26 30 void init();
Siriagus 8:9ac6a428fa26 31
Siriagus 5:100d960fc6d5 32 private:
Siriagus 8:9ac6a428fa26 33 Object player;
Siriagus 5:100d960fc6d5 34
Siriagus 8:9ac6a428fa26 35 static void btnAPress();
Siriagus 8:9ac6a428fa26 36 static void btnBPress();
Siriagus 8:9ac6a428fa26 37 static bool btnAPressed;
Siriagus 8:9ac6a428fa26 38 static bool btnBPressed;
Siriagus 8:9ac6a428fa26 39 // Buttons interrupts
Siriagus 8:9ac6a428fa26 40
Siriagus 8:9ac6a428fa26 41 std::vector<Point*> bullets;
Siriagus 5:100d960fc6d5 42 };
Siriagus 5:100d960fc6d5 43
Siriagus 5:100d960fc6d5 44 #endif