ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Thu Mar 21 21:29:11 2019 +0000
Revision:
4:b92da6a09c8b
Parent:
3:d27ee2440829
Child:
5:0655bddafd9e
Child:
6:866281ce2b44
committing as attempting to create a level larger than the playing screen to see how feasible this might be

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17arm 0:fe19852199d2 1 #include "mbed.h"
el17arm 0:fe19852199d2 2 #include "N5110.h"
el17arm 0:fe19852199d2 3 #include "Gamepad.h"
el17arm 0:fe19852199d2 4 #include "Minerengine.h"
el17arm 2:725c213b2396 5 #include "Levelengine.h"
el17arm 4:b92da6a09c8b 6 #include "Gameengine.h"
el17arm 0:fe19852199d2 7
el17arm 2:725c213b2396 8 Levelengine level;
el17arm 4:b92da6a09c8b 9 Minerengine miner;
el17arm 4:b92da6a09c8b 10 //Gameengine game;
el17arm 0:fe19852199d2 11 Gamepad pad;
el17arm 0:fe19852199d2 12 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
el17arm 0:fe19852199d2 13 AnalogIn pot0(PTB2);
el17arm 0:fe19852199d2 14
el17arm 0:fe19852199d2 15 void contrast();
el17arm 0:fe19852199d2 16 void init();
el17arm 0:fe19852199d2 17 void start_screen();
el17arm 0:fe19852199d2 18
el17arm 0:fe19852199d2 19 int main()
el17arm 0:fe19852199d2 20 {
el17arm 0:fe19852199d2 21 init();
el17arm 2:725c213b2396 22 start_screen();
el17arm 0:fe19852199d2 23
el17arm 0:fe19852199d2 24 while (1) {
el17arm 0:fe19852199d2 25
el17arm 0:fe19852199d2 26 contrast();
el17arm 2:725c213b2396 27 level.test_level(lcd);
el17arm 4:b92da6a09c8b 28 miner.miner_gravity(lcd);
el17arm 4:b92da6a09c8b 29 miner.miner_jump(lcd, pad);
el17arm 4:b92da6a09c8b 30 miner.read_direction(pad);
el17arm 4:b92da6a09c8b 31 miner.miner_move(lcd, pad);
el17arm 4:b92da6a09c8b 32 miner.miner_draw(lcd);
el17arm 3:d27ee2440829 33
el17arm 4:b92da6a09c8b 34 wait(0.1);
el17arm 2:725c213b2396 35
el17arm 0:fe19852199d2 36 }
el17arm 0:fe19852199d2 37
el17arm 0:fe19852199d2 38 }
el17arm 0:fe19852199d2 39
el17arm 0:fe19852199d2 40 void init()
el17arm 0:fe19852199d2 41 {
el17arm 0:fe19852199d2 42 lcd.init();
el17arm 0:fe19852199d2 43 lcd.normalMode(); // normal colour mode
el17arm 0:fe19852199d2 44 lcd.setBrightness(0.5); // put LED backlight on 50%
el17arm 0:fe19852199d2 45 lcd.refresh();
el17arm 0:fe19852199d2 46 pad.init();
el17arm 0:fe19852199d2 47 pad.leds_off();
el17arm 3:d27ee2440829 48 contrast();
el17arm 2:725c213b2396 49
el17arm 2:725c213b2396 50
el17arm 0:fe19852199d2 51 }
el17arm 0:fe19852199d2 52
el17arm 0:fe19852199d2 53 void contrast()
el17arm 0:fe19852199d2 54 {
el17arm 0:fe19852199d2 55 lcd.refresh();
el17arm 0:fe19852199d2 56 float con = pot0.read();
el17arm 0:fe19852199d2 57 lcd.setContrast(con);
el17arm 1:813ba5341985 58 lcd.clear();
el17arm 0:fe19852199d2 59
el17arm 0:fe19852199d2 60 }
el17arm 0:fe19852199d2 61
el17arm 0:fe19852199d2 62 void start_screen()
el17arm 2:725c213b2396 63 {
el17arm 3:d27ee2440829 64
el17arm 3:d27ee2440829 65 lcd.printString("*MANIC MILNER!*",0,1);
el17arm 3:d27ee2440829 66 lcd.printString(" Press start! ",0,4);
el17arm 3:d27ee2440829 67 lcd.refresh();
el17arm 0:fe19852199d2 68
el17arm 0:fe19852199d2 69 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
el17arm 0:fe19852199d2 70 pad.leds_on();
el17arm 0:fe19852199d2 71 wait(0.1);
el17arm 0:fe19852199d2 72 pad.leds_off();
el17arm 0:fe19852199d2 73 wait(0.1);
el17arm 4:b92da6a09c8b 74 pad.tone(750.0,0.1);
el17arm 0:fe19852199d2 75 }
el17arm 3:d27ee2440829 76 }