ELEC2645 (2017/18) / Mbed 2 deprecated el17yw

Dependencies:   mbed

Committer:
RickYu
Date:
Sat Apr 28 21:59:45 2018 +0000
Revision:
19:362ad1cd6d4a
Parent:
18:78001ecadcb2
Child:
20:a3fd428fb4f4
create a help model to introduce hhow to play

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RickYu 0:4d3c9411e8f2 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 0:4d3c9411e8f2 14
RickYu 2:421fb0670c5c 15
RickYu 2:421fb0670c5c 16 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
RickYu 3:1a134243e2f0 17
RickYu 2:421fb0670c5c 18 Gamepad pad;
RickYu 3:1a134243e2f0 19
RickYu 3:1a134243e2f0 20 engine engine;
RickYu 19:362ad1cd6d4a 21 help help;
RickYu 3:1a134243e2f0 22
RickYu 2:421fb0670c5c 23
RickYu 2:421fb0670c5c 24 void init();
RickYu 2:421fb0670c5c 25 void welcome();
RickYu 2:421fb0670c5c 26 void render();
RickYu 2:421fb0670c5c 27
RickYu 2:421fb0670c5c 28
RickYu 2:421fb0670c5c 29
RickYu 0:4d3c9411e8f2 30 int main()
RickYu 0:4d3c9411e8f2 31 {
RickYu 2:421fb0670c5c 32
RickYu 11:7027f69672fc 33
RickYu 2:421fb0670c5c 34 init();
RickYu 19:362ad1cd6d4a 35 help.welcome(pad,lcd);
RickYu 2:421fb0670c5c 36 render();
RickYu 11:7027f69672fc 37
RickYu 2:421fb0670c5c 38
RickYu 2:421fb0670c5c 39 while(1){
RickYu 2:421fb0670c5c 40
RickYu 3:1a134243e2f0 41 engine.read_input(pad);
RickYu 11:7027f69672fc 42 engine.update(pad,lcd);
RickYu 2:421fb0670c5c 43 render();
RickYu 9:d217a636c18d 44 wait(0.1);
RickYu 2:421fb0670c5c 45 }
RickYu 2:421fb0670c5c 46
RickYu 2:421fb0670c5c 47 }
RickYu 2:421fb0670c5c 48
RickYu 2:421fb0670c5c 49 void init()
RickYu 2:421fb0670c5c 50 {
RickYu 7:1964f649676e 51 //initialise LCD and Gamepad
RickYu 2:421fb0670c5c 52 lcd.init();
RickYu 2:421fb0670c5c 53 pad.init();
RickYu 2:421fb0670c5c 54
RickYu 2:421fb0670c5c 55
RickYu 2:421fb0670c5c 56 }
RickYu 19:362ad1cd6d4a 57 /*
RickYu 2:421fb0670c5c 58 void welcome() {
RickYu 2:421fb0670c5c 59
RickYu 18:78001ecadcb2 60 lcd.printString(" Boom",0,0);
RickYu 18:78001ecadcb2 61 lcd.printString(" Press start",0,2);
RickYu 18:78001ecadcb2 62 lcd.printString(" help",0,4);
RickYu 18:78001ecadcb2 63 //lcd.printString(" Press Start ",0,4);
RickYu 2:421fb0670c5c 64 lcd.refresh();
RickYu 2:421fb0670c5c 65
RickYu 7:1964f649676e 66 //LEDs keep flashing until start button is pressed
RickYu 2:421fb0670c5c 67 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
RickYu 2:421fb0670c5c 68 pad.leds_on();
RickYu 2:421fb0670c5c 69 wait(0.1);
RickYu 2:421fb0670c5c 70 pad.leds_off();
RickYu 2:421fb0670c5c 71 wait(0.1);
RickYu 0:4d3c9411e8f2 72 }
RickYu 2:421fb0670c5c 73 }
RickYu 19:362ad1cd6d4a 74 */
RickYu 2:421fb0670c5c 75
RickYu 2:421fb0670c5c 76 void render()
RickYu 2:421fb0670c5c 77 {
RickYu 2:421fb0670c5c 78 // clear screen, re-draw and refresh
RickYu 2:421fb0670c5c 79 lcd.clear();
RickYu 3:1a134243e2f0 80 engine.draw(lcd);
RickYu 2:421fb0670c5c 81 lcd.refresh();
RickYu 2:421fb0670c5c 82 }