ELEC2645 (2017/18) / Mbed 2 deprecated el17yw

Dependencies:   mbed

Committer:
RickYu
Date:
Mon Apr 30 18:07:51 2018 +0000
Revision:
25:1d91ab97d86a
Parent:
24:14489d259ffb
rect cannot  moves, might some words are deleted.; save this one for revision;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RickYu 24:14489d259ffb 1 #include "mbed.h"
RickYu 2:421fb0670c5c 2 #include "Gamepad.h"
RickYu 2:421fb0670c5c 3 #include "N5110.h"
RickYu 2:421fb0670c5c 4 #include "rect.h"
RickYu 3:1a134243e2f0 5 #include "boom.h"
RickYu 18:78001ecadcb2 6 #include "bigboom.h"
RickYu 6:46d0caedf217 7 #include "money.h"
RickYu 2:421fb0670c5c 8 #include "engine.h"
RickYu 19:362ad1cd6d4a 9 #include "help.h"
RickYu 19:362ad1cd6d4a 10
RickYu 0:4d3c9411e8f2 11
RickYu 0:4d3c9411e8f2 12 DigitalOut gpo(D0);
RickYu 0:4d3c9411e8f2 13 DigitalOut led(LED_RED);
RickYu 2:421fb0670c5c 14 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
RickYu 2:421fb0670c5c 15 Gamepad pad;
RickYu 3:1a134243e2f0 16 engine engine;
RickYu 20:a3fd428fb4f4 17 help help11;
RickYu 3:1a134243e2f0 18
RickYu 2:421fb0670c5c 19
RickYu 2:421fb0670c5c 20 void init();
RickYu 2:421fb0670c5c 21 void welcome();
RickYu 2:421fb0670c5c 22 void render();
RickYu 25:1d91ab97d86a 23 void draw(N5110 &lcd);
RickYu 2:421fb0670c5c 24
RickYu 2:421fb0670c5c 25
RickYu 2:421fb0670c5c 26
RickYu 0:4d3c9411e8f2 27 int main()
RickYu 0:4d3c9411e8f2 28 {
RickYu 25:1d91ab97d86a 29 init();
RickYu 25:1d91ab97d86a 30 draw(lcd);
RickYu 20:a3fd428fb4f4 31
RickYu 2:421fb0670c5c 32 while(1){
RickYu 2:421fb0670c5c 33
RickYu 25:1d91ab97d86a 34 engine.read_input(pad);
RickYu 25:1d91ab97d86a 35 engine.update(pad,lcd);
RickYu 25:1d91ab97d86a 36 render();
RickYu 25:1d91ab97d86a 37 wait(0.1);
RickYu 25:1d91ab97d86a 38 }
RickYu 2:421fb0670c5c 39
RickYu 2:421fb0670c5c 40 }
RickYu 25:1d91ab97d86a 41
RickYu 25:1d91ab97d86a 42 void draw(N5110 &lcd)
RickYu 25:1d91ab97d86a 43 {
RickYu 25:1d91ab97d86a 44 lcd.clear();
RickYu 25:1d91ab97d86a 45 lcd.printString(" Boom",0,0);
RickYu 25:1d91ab97d86a 46 lcd.printString(" Start",0,2);
RickYu 25:1d91ab97d86a 47 lcd.printString(" Help",0,4);
RickYu 25:1d91ab97d86a 48 help11.draw_arrow(lcd);
RickYu 25:1d91ab97d86a 49 lcd.refresh();
RickYu 25:1d91ab97d86a 50 while(pad.check_event(Gamepad::Y_PRESSED) == true);
RickYu 25:1d91ab97d86a 51
RickYu 25:1d91ab97d86a 52 //press START to start game
RickYu 25:1d91ab97d86a 53 do{
RickYu 25:1d91ab97d86a 54 engine.start(pad,lcd);
RickYu 25:1d91ab97d86a 55 }
RickYu 25:1d91ab97d86a 56 while(pad.check_event(Gamepad::START_PRESSED) == false);
RickYu 25:1d91ab97d86a 57 }
RickYu 25:1d91ab97d86a 58
RickYu 25:1d91ab97d86a 59
RickYu 2:421fb0670c5c 60 void init()
RickYu 2:421fb0670c5c 61 {
RickYu 25:1d91ab97d86a 62 //initialise LCD and Gamepad
RickYu 25:1d91ab97d86a 63 lcd.init();
RickYu 25:1d91ab97d86a 64 pad.init();
RickYu 2:421fb0670c5c 65 }
RickYu 25:1d91ab97d86a 66
RickYu 2:421fb0670c5c 67
RickYu 2:421fb0670c5c 68 void render()
RickYu 2:421fb0670c5c 69 {
RickYu 25:1d91ab97d86a 70 // clear screen, re-draw and refresh
RickYu 25:1d91ab97d86a 71 lcd.clear();
RickYu 25:1d91ab97d86a 72 engine.draw(lcd);
RickYu 25:1d91ab97d86a 73 lcd.refresh();
RickYu 2:421fb0670c5c 74 }