ELEC2645 (2018/19) / Mbed 2 deprecated el17mtu_

Dependencies:   mbed

Revision:
14:558c85380f84
Parent:
9:571f92b0211b
Child:
15:1463ebaf5c75
--- a/ModeA/ModeA.cpp	Wed May 08 20:27:31 2019 +0000
+++ b/ModeA/ModeA.cpp	Thu May 09 01:49:26 2019 +0000
@@ -16,160 +16,131 @@
     lcd.clear();
     lcd.printString("GAME",0,0);
     lcd.printString("Back:Rules",0,2);
-    
-    };
-    
- void ModeA::initialise(N5110 &lcd)
- {
-      x_position = 12;
- y_position = 18;
-  speed = 1;
+
+};
+
+void ModeA::initialise(N5110 &lcd)
+{
+    x_position = 12;
+    y_position = 18;
+    speed = 1;
     gravity = 1;
-    
+
     screen_width = 80;
     bar_width = 10;
-    
+
     bar_speed = 2;
-    
+    score = 1;
+
 
-            srand(time(NULL));
-        size_top = rand() % 15;
-       srand(time(NULL));
-       size_bottom = rand() % 15; 
-   
-     
- }
-   
-void ModeA::Bird(N5110 &lcd) 
-      
+    srand(time(NULL));
+    size_top = rand() % 15;
+    srand(time(NULL));
+    size_bottom = rand() % 15;
+
+
+}
+
+void ModeA::Bird(N5110 &lcd)
+
 {
-   
-  
-    lcd.drawRect(x_position, y_position,6,6,FILL_BLACK);
-     //lcd.drawRect(screen_width,0,bar_width,size_top,FILL_BLACK);
-     //lcd.drawRect(screen_width,48-size_bottom,bar_width,size_bottom,FILL_BLACK);
-    lcd.refresh();
-    
 
-               
-       if ( pad.check_event(Gamepad::Y_PRESSED) == true) {
-          
-           speed = speed - gravity*5;
-          
-        }
-        
-        if (y_position > 44) {
-               
-                lcd.clear();
-          lcd.printString("GAME OVER",6,2);
-          lcd.printString("Press BACK",6,4);
-          pad.tone(2000.0,0.3);
-          lcd.refresh();
-          bar_speed = 0;
-          speed = 0;
-          gravity = 0;
-          y_position = 48;
-          bar_width = 0;
-          size_top = 0;
-          size_bottom = 0;
-          
-          wait(0.5);
-                
-                }
-                
-              
-        
-       if (y_position < 0) {
-                y_position = 0;
-                speed = 0;
-                }
-        
-         speed = speed + gravity;
-        y_position = y_position + speed;
-        wait(0.1);
-        
-        
-     lcd.drawRect(screen_width,0,bar_width,size_top,FILL_BLACK);
-   lcd.drawRect(screen_width,48-size_bottom,bar_width,size_bottom,FILL_BLACK);
-   lcd.refresh();
-        
-     //   if (screen_width > 50) {
-    //         srand(time(NULL));
-    //    size_top = rand() % 48;
-     //   srand(time(NULL));
-     //   size_bottom = rand() % 48;
-           //  bar_width = 50;
-            //   bar_speed = 0;
-   //            }
-        
-    //  if (screen_width == 5) {
-     //    srand(time(NULL));
-     //   size_top = rand() % 15;
-     //  srand(time(NULL));
-     //   size_bottom = rand() % 15;
-      //         }
-    //             if (screen_width == 11) {
-      //   lcd.clear();
-      //    lcd.printString("GAME OVER",6,2);
-      //    lcd.printString("Press BACK",6,4);
-      //    pad.tone(2000.0,0.3);
-        //  lcd.refresh();
-       //   bar_speed = 0;
-       //   speed = 0;
-       //   gravity = 0;
-       //   y_position = 48;
-       //   bar_width = 0;
-      //    size_top = 0;
-      //    size_bottom = 0;
-          
-          
-          
-      //    wait(0.5);
-        //       }
-               
-               
-      if ( pad.check_event(Gamepad::X_PRESSED) == true) {
-          
-            srand(time(NULL));
-        size_top = rand() % 15;
-       srand(time(NULL));
-       size_bottom = rand() % 15; 
-          
-        }
-        
-        if ((screen_width ==  x_position)&& (size_top >  y_position))  {
-              // size_top >  y_position
-           //    screen_width ==  x_position
-               lcd.clear();
-       lcd.printString("GAME OVER",6,2);
+    char buffer[14];
+    sprintf(buffer,"%2d",score);
+    lcd.printString(buffer,1,1);
+    lcd.drawRect(x_position, y_position,6,6,FILL_BLACK);
+    lcd.refresh();
+
+
+
+    if ( pad.check_event(Gamepad::Y_PRESSED) == true) {
+
+        speed = speed - gravity*5;
+
+    }
+
+    if (y_position > 44) {
+
+        lcd.clear();
+        lcd.printString("GAME OVER",6,2);
         lcd.printString("Press BACK",6,4);
-          pad.tone(2000.0,0.3);
-         lcd.refresh();
+        pad.tone(2000.0,0.3);
+        lcd.refresh();
         bar_speed = 0;
-         speed = 0;
+        speed = 0;
         gravity = 0;
         y_position = 48;
-         bar_width = 0;
-         size_top = 0;
+        bar_width = 0;
+        size_top = 0;
         size_bottom = 0;
-          
-          
-          
-         wait(0.5);
-               
-               }
-               
-     
-      
-      screen_width = screen_width - bar_speed;
-      wait(0.1);
-      
-     
-    
+
+        wait(0.5);
+
+    }
+
+
+
+    if (y_position < 0) {
+        y_position = 0;
+        speed = 0;
+    }
+
+    speed = speed + gravity;
+    y_position = y_position + speed;
+    wait(0.1);
+
+
+    lcd.drawRect(screen_width,0,bar_width,size_top,FILL_BLACK);
+    lcd.drawRect(screen_width,48-size_bottom,bar_width,size_bottom,FILL_BLACK);
+    lcd.refresh();
+
+    if ((screen_width == x_position) && (size_top < y_position)) {
+        score = score + 1;
+        lcd.clear();
+        sprintf(buffer,"%2d",score);
+        }
+
+
+    if ( pad.check_event(Gamepad::X_PRESSED) == true) {
+
+        srand(time(NULL));
+        size_top = rand() % 15;
+        srand(time(NULL));
+        size_bottom = rand() % 15;
+
     }
-    
-      
-  
- 
+
+    if ((screen_width ==  x_position)&& (size_top >  y_position))  {
+
+        lcd.clear();
+        lcd.printString("GAME OVER",6,2);
+        lcd.printString("Press BACK",6,4);
+        pad.tone(2000.0,0.3);
+        lcd.refresh();
+        bar_speed = 0;
+        speed = 0;
+        gravity = 0;
+        y_position = 48;
+        bar_width = 0;
+        size_top = 0;
+        size_bottom = 0;
+
+
 
-    
\ No newline at end of file
+        wait(0.5);
+
+    }
+
+
+
+    screen_width = screen_width - bar_speed;
+    wait(0.1);
+
+
+
+}
+
+
+
+
+