Mortal Kombat Game ELEC2645
Dependencies: mbed N5110 ShiftReg Joystick
main.cpp
- Committer:
- ozy
- Date:
- 2021-04-30
- Revision:
- 19:6c63e1dd7c85
- Parent:
- 18:22bda659c70a
- Child:
- 20:4ca04fd0965a
File content as of revision 19:6c63e1dd7c85:
///////////// includes ///////////////////// #include "mbed.h" #include "N5110.h" #include "Fighter.h" #include "Joystick.h" #include "Menu.h" #include "Enemy.h" #include "GameEngine.h" ///////////// definitions ///////////////// #define HEALTH 30 ///////////// objects ///////////////////// GameEngine game; Fighter fighter; Menu menu; Enemy enemy; DigitalIn buttonA(p29); DigitalIn buttonB(p28); DigitalIn buttonC(p27); DigitalIn buttonD(p26); AnalogIn joy_v(p20); AnalogIn joy_h(p19); N5110 lcd(p14,p8,p9,p10,p11,p13,p21); BusOut leds(LED4,LED3,LED2,LED1); Serial pc(USBTX, USBRX); //////////// functions //////////////////// void init(); void menu_screen(); void draw_background(); void game_over(int loser); int main() { init(); // int fighter_health = game.get_fighter_health(); // menu_screen(); while(1) { lcd.clear(); draw_background(); game.start(lcd, buttonA, buttonB, buttonC, buttonD, joy_v, joy_h); lcd.refresh(); wait(0.2); } } void init() { // initialize all devices lcd.init(); lcd.setContrast(0.5); game.init(); } void menu_screen() { menu.main_menu(lcd); // printing the menu screen wait(3.5f); menu.created_by(lcd); // 2nd menu screen wait(3.5f); menu.homescreen(lcd); // print homescreen menu.menu_selection(lcd, buttonA, buttonB, buttonC, buttonD); // function to ask user to select menu item } void draw_background() { // lcd.drawLine(x1, y1, x2, y2, type); lcd.drawLine(0,46,82,46,1); // draws ground platform lcd.drawLine(0,46,0,25,1); // draws first side wall lcd.drawLine(82,46,82,25,1); // draws second side wall lcd.refresh(); } void game_over(int loser) { lcd.clear(); lcd.printString(" Game Over! ",15,2); }