Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Gamepad N5110 mbed-rtos
Diff: main.cpp
- Revision:
 - 2:b5c1bb7a39de
 - Parent:
 - 1:45493d1d0689
 - Child:
 - 3:bf9624e5b0c3
 
--- a/main.cpp	Fri Apr 19 13:43:22 2019 +0000
+++ b/main.cpp	Sat Apr 20 00:08:00 2019 +0000
@@ -37,7 +37,7 @@
 
 int main()
 {
-    MissionState currentState = Mission2;
+    MissionState currentState = Mission1;
     // first need to initialise display
     int fps = 8;
     lcd.setContrast(0.4);
@@ -56,7 +56,7 @@
         switch(currentState){
           case Mission1:
             shoot.read_input(pad);
-            shoot.update(pad,lcd);
+            shoot.update_mission_one(pad,lcd);
             render();
             wait(1.0f/fps); 
             if(shoot.get_game_stage() == 1){
@@ -72,7 +72,8 @@
             break;
             case Mission1Fail:
             lcd.clear();
-            lcd.drawSprite(6,5,42,73,(int *)mission_one_failure);
+            lcd.drawSprite(6,5,42,73,(int *)mission_fail);
+            lcd.drawSprite(53,12,7,19,(int *)m_one);
             lcd.refresh();
             if (pad.check_event(Gamepad::B_PRESSED) == true){
                 currentState = Mission1;
@@ -82,7 +83,8 @@
             break;
             case Mission1Pass:
             lcd.clear();
-            lcd.drawSprite(0,0,48,84,(int *)mission_one);
+            lcd.drawSprite(0,0,48,84,(int *)mission_pass);
+            lcd.drawSprite(53,12,7,19,(int *)m_one);
             lcd.refresh();
             if (pad.check_event(Gamepad::A_PRESSED) == true){
                 currentState = Mission2;
@@ -91,7 +93,7 @@
             break;
             case Mission2:
             shoot.read_input(pad);
-            shoot.update2(pad,lcd);
+            shoot.update_mission_two(pad,lcd);
             render2();
             wait(1.0f/fps);
             if(shoot.get_game_stage() == 3 ){
@@ -103,7 +105,8 @@
             break;
             case Mission2Fail:
             lcd.clear();
-            lcd.drawSprite(6,5,42,73,(int *)mission_two_failure);
+            lcd.drawSprite(6,5,42,73,(int *)mission_fail);
+            lcd.drawSprite(53,13,5,18,(int *)m_two);
             lcd.refresh();
             if (pad.check_event(Gamepad::B_PRESSED) == true){
                 currentState = Mission1;
@@ -113,7 +116,8 @@
             break;
             case Mission2Pass:
             lcd.clear();
-            lcd.drawSprite(0,0,48,84,(int *)mission_two);
+            lcd.drawSprite(0,0,48,84,(int *)mission_pass);
+            lcd.drawSprite(53,13,5,18,(int *)m_two);
             lcd.refresh();
             if (pad.check_event(Gamepad::A_PRESSED) == true){
                 currentState = Mission3;
@@ -123,7 +127,7 @@
             break; 
             case Mission3:
             shoot.read_input(pad);
-            shoot.update3(pad,lcd);
+            shoot.update_mission_three(pad,lcd);
             render3();
             wait(1.0f/fps);
             if(shoot.get_game_stage() == 5 ){
@@ -135,7 +139,8 @@
             break;
             case Mission3Fail:
             lcd.clear();
-            lcd.drawSprite(6,5,42,73,(int *)mission_three_failure);
+            lcd.drawSprite(6,5,42,73,(int *)mission_fail);
+            lcd.drawSprite(51,13,5,29,(int *)m_three);
             lcd.refresh();
             if (pad.check_event(Gamepad::B_PRESSED) == true){
                 currentState = Mission1;
@@ -145,7 +150,8 @@
             break;
             case Mission3Pass:
             lcd.clear();
-            lcd.drawSprite(0,0,48,84,(int *)mission_three);
+            lcd.drawSprite(0,0,48,84,(int *)mission_pass);
+            lcd.drawSprite(51,13,5,29,(int *)m_three);
             lcd.refresh();
             if (pad.check_event(Gamepad::A_PRESSED) == true){
                 currentState = Congratulations;
@@ -209,7 +215,7 @@
 {
     // clear screen, re-draw and refresh
     lcd.clear();  
-    shoot.draw(pad,lcd);
+    shoot.draw_mission_one(pad,lcd);
     lcd.refresh();
 }
 
@@ -217,7 +223,7 @@
 {
     // clear screen, re-draw and refresh
     lcd.clear();  
-    shoot.draw2(pad,lcd);
+    shoot.draw_mission_two(pad,lcd);
     lcd.refresh();
 }
 
@@ -225,25 +231,24 @@
 {
     // clear screen, re-draw and refresh
     lcd.clear();  
-    shoot.draw3(pad,lcd);
+    shoot.draw_mission_three(pad,lcd);
     lcd.refresh();
 }
 
 void welcome() {
      
-    lcd.drawSprite(6,0,48,71,(int *)screen);
  
-    lcd.refresh();
      
     while ( pad.check_event(Gamepad::START_PRESSED) == false) {
         if(pad.check_event(Gamepad::START_PRESSED) == true){break;}
         pad.leds_on();
+        lcd.drawSprite(6,0,48,71,(int *)screen);
         lcd.drawSprite(21,43,5,40,(int *)start);
         lcd.refresh();
         Thread::wait(800);
         if(pad.check_event(Gamepad::START_PRESSED) == true){break;}
         pad.leds_off();
-        lcd.drawSprite(21,43,5,40,(int *)start2);
+        lcd.drawSprite(6,0,48,71,(int *)screen);
         lcd.refresh();
         Thread::wait(800);
         if(pad.check_event(Gamepad::START_PRESSED) == true){break;}