Snake vs Block Game to be run upon K64F.

Dependencies:   mbed

Revision:
30:461231877c89
Parent:
6:3ffab44ed49c
Child:
31:6566026b4c6a
diff -r c6358c39a70e -r 461231877c89 Settings/Settings.cpp
--- a/Settings/Settings.cpp	Sun Apr 14 10:24:59 2019 +0000
+++ b/Settings/Settings.cpp	Mon Apr 15 06:00:01 2019 +0000
@@ -10,6 +10,81 @@
     
 }
 
+int naviL[13][8] = {
+    {0,0,0,0,0,0,1,1},
+    {0,0,0,0,0,1,1,0},
+    {0,0,0,0,1,1,0,0},
+    {0,0,0,1,1,0,0,0},
+    {0,0,1,1,0,0,0,0},
+    {0,1,1,0,0,0,0,0},
+    {1,1,0,0,0,0,0,0},
+    {0,1,1,0,0,0,0,0},
+    {0,0,1,1,0,0,0,0},
+    {0,0,0,1,1,0,0,0},
+    {0,0,0,0,1,1,0,0},
+    {0,0,0,0,0,1,1,0},
+    {0,0,0,0,0,0,1,1},
+};
+
+int naviR[13][8] = {
+    {1,1,0,0,0,0,0,0},
+    {0,1,1,0,0,0,0,0},
+    {0,0,1,1,0,0,0,0},
+    {0,0,0,1,1,0,0,0},
+    {0,0,0,0,1,1,0,0},
+    {0,0,0,0,0,1,1,0},
+    {0,0,0,0,0,0,1,1},
+    {0,0,0,0,0,1,1,0},
+    {0,0,0,0,1,1,0,0},
+    {0,0,0,1,1,0,0,0},
+    {0,0,1,1,0,0,0,0},
+    {0,1,1,0,0,0,0,0},
+    {1,1,0,0,0,0,0,0},
+};
+
+float * Settings::Implement(N5110 &lcd, Gamepad &pad, int st, float cs)
+{
+    Settings::info(lcd, pad);
+    while (pad.check_event(Gamepad::BACK_PRESSED) == false) {  //if button pressed.
+        Direction d = pad.get_direction();
+        wait(1/cs);
+        lcd.clear();
+        
+        if((d==E)&&(st==5))  {
+           st=1;
+        }
+        else if((d==W)&&(st==1))  {
+            st=5;
+        }
+        else if((d==E)&&(1<=st<=4))  {
+          st=st+1;
+        }
+        else if((d==W)&&(2<=st<=5))  {
+           st=st-1;
+        }
+        lcd.drawSprite(5,22,13,8,(int *)naviL); //Function used to draw the sprite.
+        lcd.drawSprite(71,22,13,8,(int *)naviR); //Function used to draw the sprite.
+        if(st==1)  { 
+            cs = Settings::controlSensitivity(lcd, pad);
+        }
+        if(st==2)  {
+            Settings::brigntness(lcd, pad);
+        }
+        if(st==3)  {
+            Settings::contrast(lcd, pad);
+        }
+        if(st==4)  {
+            Settings::volume(lcd, pad);
+        }
+        if(st==5)  {
+            cs_sc[1] = Settings::showCredits(lcd, pad);
+        } 
+        lcd.refresh();
+    }
+    cs_sc[0] = cs;
+    return cs_sc;
+}
+
 void Settings::info(N5110 &lcd, Gamepad &pad)
 {
     lcd.clear();