ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Committer:
S_Tingle
Date:
Wed May 08 18:12:27 2019 +0000
Revision:
19:1073cc64cb0b
Parent:
18:ba4159ab4da7
Child:
21:7d4827af00d6
added all coin collisions + health display

Who changed what in which revision?

UserRevisionLine numberNew contents of line
S_Tingle 5:e6cb6fda5b37 1 #include "mbed.h"
S_Tingle 5:e6cb6fda5b37 2 #include "Gamepad.h"
S_Tingle 5:e6cb6fda5b37 3 #include "N5110.h"
S_Tingle 5:e6cb6fda5b37 4 #include "Game.h"
S_Tingle 14:d0650d0de063 5 #include "Menu.h"
S_Tingle 5:e6cb6fda5b37 6
S_Tingle 5:e6cb6fda5b37 7 struct joystick_val {
S_Tingle 5:e6cb6fda5b37 8 Direction dir;
S_Tingle 5:e6cb6fda5b37 9 float mag;
S_Tingle 5:e6cb6fda5b37 10 };
S_Tingle 5:e6cb6fda5b37 11
S_Tingle 5:e6cb6fda5b37 12 Game game;
S_Tingle 5:e6cb6fda5b37 13 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
S_Tingle 5:e6cb6fda5b37 14 Gamepad pad;
S_Tingle 14:d0650d0de063 15 Smiley smiley;
S_Tingle 14:d0650d0de063 16 Coin coin;
S_Tingle 16:37d98c281eb3 17 Enemy1 enemy1;
S_Tingle 16:37d98c281eb3 18 Menu menu;
S_Tingle 5:e6cb6fda5b37 19
S_Tingle 5:e6cb6fda5b37 20 void init();
S_Tingle 5:e6cb6fda5b37 21 void render();
S_Tingle 16:37d98c281eb3 22 void startScreen();
S_Tingle 5:e6cb6fda5b37 23
S_Tingle 5:e6cb6fda5b37 24 int main(){
S_Tingle 16:37d98c281eb3 25
S_Tingle 10:7ba63530dc04 26 int fps = 30;
S_Tingle 16:37d98c281eb3 27 lcd.setContrast(0.4);
S_Tingle 16:37d98c281eb3 28 lcd.setBrightness(0.5);
S_Tingle 5:e6cb6fda5b37 29 init();
S_Tingle 16:37d98c281eb3 30 startScreen();
S_Tingle 17:ce6b54422113 31 //game.UI(pad,lcd);
S_Tingle 17:ce6b54422113 32 //render();
S_Tingle 5:e6cb6fda5b37 33 wait(1.0f/fps);
S_Tingle 17:ce6b54422113 34 while (1) {
S_Tingle 17:ce6b54422113 35 game.UI(pad,lcd);
S_Tingle 18:ba4159ab4da7 36 game.init();
S_Tingle 17:ce6b54422113 37 int lives = game.get_lives();
S_Tingle 17:ce6b54422113 38 while (lives > 0) {
S_Tingle 17:ce6b54422113 39 render();
S_Tingle 17:ce6b54422113 40 wait(1.0f/fps);
S_Tingle 17:ce6b54422113 41 lives = game.get_lives();
S_Tingle 17:ce6b54422113 42 }
S_Tingle 17:ce6b54422113 43 }
S_Tingle 5:e6cb6fda5b37 44 }
S_Tingle 5:e6cb6fda5b37 45
S_Tingle 5:e6cb6fda5b37 46 void init(){
S_Tingle 5:e6cb6fda5b37 47 lcd.init();
S_Tingle 5:e6cb6fda5b37 48 pad.init();
S_Tingle 5:e6cb6fda5b37 49 }
S_Tingle 5:e6cb6fda5b37 50
S_Tingle 5:e6cb6fda5b37 51 void render(){
S_Tingle 5:e6cb6fda5b37 52 lcd.clear();
S_Tingle 16:37d98c281eb3 53 game.dirmag(pad);
S_Tingle 5:e6cb6fda5b37 54 game.drawSprite(lcd);
S_Tingle 16:37d98c281eb3 55 game.movement(pad,lcd);
S_Tingle 16:37d98c281eb3 56 game.collect(lcd, pad);
S_Tingle 16:37d98c281eb3 57 game.damage(lcd,pad);
S_Tingle 17:ce6b54422113 58 game.death(lcd,pad);
S_Tingle 19:1073cc64cb0b 59 game.display_health(lcd);
S_Tingle 5:e6cb6fda5b37 60 lcd.refresh();
S_Tingle 5:e6cb6fda5b37 61 }
S_Tingle 16:37d98c281eb3 62
S_Tingle 16:37d98c281eb3 63 void startScreen(){
S_Tingle 16:37d98c281eb3 64 while (pad.check_event(Gamepad::START_PRESSED) == false) {
S_Tingle 14:d0650d0de063 65 lcd.clear();
S_Tingle 14:d0650d0de063 66 lcd.drawSprite(0,0,48,84,(int *)start_01);
S_Tingle 16:37d98c281eb3 67 lcd.refresh();
S_Tingle 16:37d98c281eb3 68 wait(0.5);
S_Tingle 14:d0650d0de063 69 lcd.drawSprite(0,0,48,84,(int *)start_02);
S_Tingle 14:d0650d0de063 70 lcd.refresh();
S_Tingle 16:37d98c281eb3 71 wait(0.5);
S_Tingle 16:37d98c281eb3 72 lcd.drawSprite(0,0,48,84,(int *)start_03);
S_Tingle 16:37d98c281eb3 73 lcd.refresh();
S_Tingle 16:37d98c281eb3 74 wait(0.5);
S_Tingle 14:d0650d0de063 75 }
S_Tingle 16:37d98c281eb3 76 }