Mortal Kombat Game ELEC2645
Dependencies: mbed N5110 ShiftReg Joystick
main.cpp@21:fad1c9f010d1, 2021-05-08 (annotated)
- Committer:
- ozy
- Date:
- Sat May 08 00:09:54 2021 +0000
- Revision:
- 21:fad1c9f010d1
- Parent:
- 20:4ca04fd0965a
- Child:
- 22:225d4031c090
working game
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ozy | 0:99b49fd71085 | 1 | ///////////// includes ///////////////////// |
ozy | 0:99b49fd71085 | 2 | #include "mbed.h" |
ozy | 0:99b49fd71085 | 3 | #include "N5110.h" |
ozy | 0:99b49fd71085 | 4 | #include "Fighter.h" |
ozy | 0:99b49fd71085 | 5 | #include "Joystick.h" |
ozy | 0:99b49fd71085 | 6 | #include "Menu.h" |
ozy | 9:8c840b08a633 | 7 | #include "Enemy.h" |
ozy | 6:a1a7dc264fed | 8 | #include "GameEngine.h" |
ozy | 21:fad1c9f010d1 | 9 | #include "ShiftReg.h" |
ozy | 9:8c840b08a633 | 10 | ///////////// objects ///////////////////// |
ozy | 6:a1a7dc264fed | 11 | GameEngine game; |
ozy | 3:1d99b6ad4f9e | 12 | Fighter fighter; |
ozy | 0:99b49fd71085 | 13 | Menu menu; |
ozy | 7:737fb0c3dbef | 14 | Enemy enemy; |
ozy | 3:1d99b6ad4f9e | 15 | DigitalIn buttonA(p29); |
ozy | 3:1d99b6ad4f9e | 16 | DigitalIn buttonB(p28); |
ozy | 3:1d99b6ad4f9e | 17 | DigitalIn buttonC(p27); |
ozy | 3:1d99b6ad4f9e | 18 | DigitalIn buttonD(p26); |
ozy | 0:99b49fd71085 | 19 | AnalogIn joy_v(p20); |
ozy | 0:99b49fd71085 | 20 | AnalogIn joy_h(p19); |
ozy | 0:99b49fd71085 | 21 | N5110 lcd(p14,p8,p9,p10,p11,p13,p21); |
ozy | 0:99b49fd71085 | 22 | //////////// functions //////////////////// |
ozy | 0:99b49fd71085 | 23 | void init(); |
ozy | 0:99b49fd71085 | 24 | void menu_screen(); |
ozy | 0:99b49fd71085 | 25 | void draw_background(); |
ozy | 3:1d99b6ad4f9e | 26 | |
ozy | 0:99b49fd71085 | 27 | |
ozy | 0:99b49fd71085 | 28 | int main() { |
ozy | 0:99b49fd71085 | 29 | init(); |
ozy | 20:4ca04fd0965a | 30 | menu_screen(); |
ozy | 0:99b49fd71085 | 31 | while(1) { |
ozy | 2:1703eb2a68f8 | 32 | lcd.clear(); |
ozy | 3:1d99b6ad4f9e | 33 | draw_background(); |
ozy | 10:e83899f11e8a | 34 | game.start(lcd, buttonA, buttonB, buttonC, buttonD, joy_v, joy_h); |
ozy | 10:e83899f11e8a | 35 | lcd.refresh(); |
ozy | 18:22bda659c70a | 36 | wait(0.2); |
ozy | 0:99b49fd71085 | 37 | } |
ozy | 21:fad1c9f010d1 | 38 | |
ozy | 0:99b49fd71085 | 39 | } |
ozy | 0:99b49fd71085 | 40 | |
ozy | 0:99b49fd71085 | 41 | void init() { // initialize all devices |
ozy | 0:99b49fd71085 | 42 | lcd.init(); |
ozy | 0:99b49fd71085 | 43 | lcd.setContrast(0.5); |
ozy | 19:6c63e1dd7c85 | 44 | game.init(); |
ozy | 0:99b49fd71085 | 45 | } |
ozy | 0:99b49fd71085 | 46 | |
ozy | 3:1d99b6ad4f9e | 47 | void menu_screen() { |
ozy | 20:4ca04fd0965a | 48 | menu.menu_render(lcd); |
ozy | 0:99b49fd71085 | 49 | } |
ozy | 0:99b49fd71085 | 50 | |
ozy | 0:99b49fd71085 | 51 | void draw_background() { |
ozy | 0:99b49fd71085 | 52 | // lcd.drawLine(x1, y1, x2, y2, type); |
ozy | 0:99b49fd71085 | 53 | lcd.drawLine(0,46,82,46,1); // draws ground platform |
ozy | 0:99b49fd71085 | 54 | lcd.drawLine(0,46,0,25,1); // draws first side wall |
ozy | 0:99b49fd71085 | 55 | lcd.drawLine(82,46,82,25,1); // draws second side wall |
ozy | 0:99b49fd71085 | 56 | lcd.refresh(); |
ozy | 20:4ca04fd0965a | 57 | } |
ozy | 18:22bda659c70a | 58 | |
ozy | 0:99b49fd71085 | 59 |