Zeyu Feng 201377605

Dependencies:   mbed

On Minerva

Revision:
17:ba4d9cd1e347
Parent:
16:cf2bfada3adf
Child:
18:93d050e7705d
--- a/main.cpp	Mon May 18 08:56:17 2020 +0000
+++ b/main.cpp	Mon May 18 15:30:54 2020 +0000
@@ -37,6 +37,8 @@
 volatile int count_flag = 18;
 volatile int paused_flag = 0;
 volatile int option_flag = 0;
+volatile int defined_rate_flag = 0;
+volatile int defined_max_flag = 0;
 
 //    prototypes
 void flip(){    timer_flag = 1; }
@@ -48,6 +50,7 @@
 void init_timeout();
 void main_game(float,int);
 void simp_game();
+void undefined();
 
 int main()
 {
@@ -63,19 +66,22 @@
     while(1) {
         init();
         init_value();
-        int option_flag= interface.menu(lcd,pad,option_flag);
+        option_flag= interface.menu(lcd,pad,option_flag);
         switch(option_flag){
             case 0:
-                main_game(0.1,13);
+                main_game(0.15,13);
                 break;
             case 1:
-                main_game(0.8,30);
+                main_game(1,30);
                 simp_game();
                 break;
             case 2:
+                undefined();
+                break;
+            case 3:
                 interface.exit(lcd,pad);
                 break;
-            }
+        }
     }
 }
 
@@ -123,6 +129,8 @@
     count_flag = 18;
     paused_flag = 0;
     option_flag = 0;
+    defined_rate_flag = 0;
+    defined_max_flag = 0;
 }   
 
 void control_check()
@@ -190,8 +198,19 @@
         if(interface.get_sim_flag()){
             init();
             init_value();
-            main_game(0.4,20);
+            main_game(0.5,23);
         }
     }
     interface.init();
-}
\ No newline at end of file
+}
+
+void undefined()
+{
+    defined_rate_flag = interface.undefined_rate(lcd,pad,defined_rate_flag);
+    defined_max_flag = interface.undefined_max(lcd,pad,defined_max_flag);
+    //   0   1   2   3   4  flag
+    //  0.3 0.4 0.5 0.6 0.7 shots/frame
+    //   15  20  25  30  35  Maximum shots
+    main_game(0.1*(defined_rate_flag + 3),5*(defined_max_flag + 3));
+}
+     
\ No newline at end of file