ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Committer:
S_Tingle
Date:
Mon May 06 18:39:40 2019 +0000
Revision:
15:a080c64cf301
Parent:
14:d0650d0de063
Child:
16:37d98c281eb3
added damage from enemy1 + implementing coin

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 5:e6cb6fda5b37 17
S_Tingle 5:e6cb6fda5b37 18 void init();
S_Tingle 5:e6cb6fda5b37 19 void render();
S_Tingle 5:e6cb6fda5b37 20 void start_screen();
S_Tingle 14:d0650d0de063 21 void pause_screen();
S_Tingle 5:e6cb6fda5b37 22
S_Tingle 5:e6cb6fda5b37 23 int main(){
S_Tingle 14:d0650d0de063 24
S_Tingle 10:7ba63530dc04 25 int fps = 30;
S_Tingle 5:e6cb6fda5b37 26 init();
S_Tingle 14:d0650d0de063 27 start_screen();
S_Tingle 5:e6cb6fda5b37 28 render();
S_Tingle 5:e6cb6fda5b37 29 wait(1.0f/fps);
S_Tingle 14:d0650d0de063 30
S_Tingle 5:e6cb6fda5b37 31 while (1) {
S_Tingle 14:d0650d0de063 32 if (pad.check_event(Gamepad::BACK_PRESSED) == true){
S_Tingle 14:d0650d0de063 33 pause_screen();
S_Tingle 14:d0650d0de063 34 wait(1);
S_Tingle 14:d0650d0de063 35 } else {
S_Tingle 14:d0650d0de063 36 render();
S_Tingle 14:d0650d0de063 37 game.dirmag(pad);
S_Tingle 14:d0650d0de063 38 game.movement(pad,lcd);
S_Tingle 14:d0650d0de063 39 wait(1.0f/fps);
S_Tingle 14:d0650d0de063 40 }
S_Tingle 14:d0650d0de063 41 }
S_Tingle 5:e6cb6fda5b37 42 }
S_Tingle 5:e6cb6fda5b37 43
S_Tingle 5:e6cb6fda5b37 44 void init(){
S_Tingle 5:e6cb6fda5b37 45 lcd.init();
S_Tingle 5:e6cb6fda5b37 46 pad.init();
S_Tingle 5:e6cb6fda5b37 47 game.init();
S_Tingle 5:e6cb6fda5b37 48 }
S_Tingle 5:e6cb6fda5b37 49
S_Tingle 5:e6cb6fda5b37 50 void render(){
S_Tingle 5:e6cb6fda5b37 51 lcd.clear();
S_Tingle 5:e6cb6fda5b37 52 game.drawSprite(lcd);
S_Tingle 14:d0650d0de063 53 game.collect(smiley,coin,lcd);
S_Tingle 5:e6cb6fda5b37 54 lcd.refresh();
S_Tingle 5:e6cb6fda5b37 55 }
S_Tingle 5:e6cb6fda5b37 56
S_Tingle 5:e6cb6fda5b37 57 void start_screen(){
S_Tingle 14:d0650d0de063 58 lcd.printString("PAUSED",42,24);
S_Tingle 14:d0650d0de063 59 lcd.refresh();
S_Tingle 14:d0650d0de063 60
S_Tingle 14:d0650d0de063 61 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
S_Tingle 14:d0650d0de063 62 lcd.clear();
S_Tingle 14:d0650d0de063 63 lcd.drawSprite(0,0,48,84,(int *)start_01);
S_Tingle 14:d0650d0de063 64 wait(1);
S_Tingle 14:d0650d0de063 65 lcd.drawSprite(0,0,48,84,(int *)start_02);
S_Tingle 14:d0650d0de063 66 wait(1);
S_Tingle 15:a080c64cf301 67 lcd.drawSprite(0,0,48,84,(int *)start_02);
S_Tingle 14:d0650d0de063 68 wait(1);
S_Tingle 14:d0650d0de063 69 lcd.refresh();
S_Tingle 14:d0650d0de063 70 }
S_Tingle 14:d0650d0de063 71 }
S_Tingle 14:d0650d0de063 72
S_Tingle 14:d0650d0de063 73 void pause_screen(){
S_Tingle 14:d0650d0de063 74 lcd.printString("PAUSED",42,24);
S_Tingle 14:d0650d0de063 75 lcd.refresh();
S_Tingle 14:d0650d0de063 76
S_Tingle 14:d0650d0de063 77 while (pad.check_event(Gamepad::BACK_PRESSED) == true) {
S_Tingle 14:d0650d0de063 78 pad.leds_on();
S_Tingle 14:d0650d0de063 79 wait(0.1);
S_Tingle 14:d0650d0de063 80 pad.leds_off();
S_Tingle 14:d0650d0de063 81 wait(0.1);
S_Tingle 14:d0650d0de063 82 }
S_Tingle 14:d0650d0de063 83 }