ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Thu Mar 28 22:30:56 2019 +0000
Revision:
12:adf4ec04ced2
Parent:
11:61f28e3448d3
Child:
13:3bf02cb26d6d
not ideal but made x & y coords global. ; ; This is because in levelengine I am getting p.x = 0 and is not updating in line with p.x in minerengine. This is holding me back so will proceed as above and will hopefully fix at later date

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