Snake vs Block Game to be run upon K64F.

Dependencies:   mbed

Revision:
22:ee698f66146f
Parent:
21:e41126528cc6
Child:
23:592345a70329
--- a/SnakevsBlock/SnakevsBlock.cpp	Wed Apr 10 04:08:13 2019 +0000
+++ b/SnakevsBlock/SnakevsBlock.cpp	Wed Apr 10 05:24:20 2019 +0000
@@ -20,21 +20,9 @@
     speed = 1;
     blockgap = 500;
     blockbuff = 0;
-    b0 = 1;
-    b1 = 1;
-    b2 = 1;
-    b3 = 1;
-    b4 = 1;
-    b5 = 1;
-    b6 = 1;
-    b7 = 1;
-    b8 = 1;
-    b9 = 1;
-    b10 = 1;
-    b11 = 1;
-    b12 = 1;
-    b13 = 1;
-    b14 = 1; 
+    for(int i=0; i<=14; i++)  {
+        b[i] = 1;
+    }
 }
 
 
@@ -85,7 +73,7 @@
     CheckSnakeBlockCollision(pad); //Function checks for when the snake collides with any of the blocks.
     CheckSnakeFoodCollision(pad); //Function checks for when the snake collides with it's food.
     CheckSnakeBlockSidesCollision(pad, _d); //Function checks for when the snake collides with any of the blocks' sides.
-    _s.update(_d,_mag, length, speed, b0_to_b14);
+    _s.update(_d,_mag, length, speed, b); //_d is the direction of joystick and b controls thew motion of a section of the snake relative to obstruction
     _f.update();
     _ff.update();
     _fff.update(); 
@@ -471,6 +459,36 @@
     {
         //Obtains all required coordinates.
         Vector2D b_pos = _b.get_pos();
+        snake_posx[0] = _s.get_pos(length).x;
+        snake_posy[0] = _s.get_pos(length).y;
+        snake_posx[1] = _s.get_pos_before1(length).x;
+        snake_posy[1] = _s.get_pos_before1(length).y;
+        snake_posx[2] = _s.get_pos_before2(length).x;
+        snake_posy[2] = _s.get_pos_before2(length).y;
+        snake_posx[3] = _s.get_pos_before3(length).x;
+        snake_posy[3] = _s.get_pos_before3(length).y;
+        snake_posx[4] = _s.get_pos_before4(length).x;
+        snake_posy[4] = _s.get_pos_before4(length).y;
+        snake_posx[5] = _s.get_pos_before5(length).x;
+        snake_posy[5] = _s.get_pos_before5(length).y;
+        snake_posx[6] = _s.get_pos_before6(length).x;
+        snake_posy[6] = _s.get_pos_before6(length).y;
+        snake_posx[7] = _s.get_pos_before7(length).x;
+        snake_posy[7] = _s.get_pos_before7(length).y;
+        snake_posx[8] = _s.get_pos_before8(length).x;
+        snake_posy[8] = _s.get_pos_before8(length).y;
+        snake_posx[9] = _s.get_pos_before9(length).x;
+        snake_posy[9] = _s.get_pos_before9(length).y;
+        snake_posx[10] = _s.get_pos_before10(length).x;
+        snake_posy[10] = _s.get_pos_before10(length).y;
+        snake_posx[11] = _s.get_pos_before11(length).x;
+        snake_posy[11] = _s.get_pos_before11(length).y;
+        snake_posx[12] = _s.get_pos_before12(length).x;
+        snake_posy[12] = _s.get_pos_before12(length).y;
+        snake_posx[13] = _s.get_pos_before13(length).x;
+        snake_posy[13] = _s.get_pos_before13(length).y;
+        snake_posx[14] = _s.get_pos_before14(length).x;
+        snake_posy[14] = _s.get_pos_before14(length).y;
         Vector2D snake_pos = _s.get_pos(length);
         Vector2D snake_posb1 = _s.get_pos_before1(length);
         Vector2D snake_posb2 = _s.get_pos_before2(length);
@@ -546,49 +564,49 @@
         ) {
         //add some code that it doesn't move
         if(length == 1)  {
-            b0 = 0;
+            b[0] = 0;
         }
         if(length == 2)  {
-            b1 = 0;
+            b[1] = 0;
         }
         if(length==3)  {
-            b2 = 0;
+            b[2] = 0;
         }
         if(length==4)  {
-            b3 = 0;
+            b[3] = 0;
         }
         if(length==5)  {
-            b4 = 0;
+            b[4] = 0;
         }
         if(length==6)  {
-            b5 = 0;
+            b[5] = 0;
         }
         if(length==7)  {
-            b6 = 0;
+            b[6] = 0;
         }
         if(length==8)  {
-            b7 = 0;
+            b[7] = 0;
         }
         if(length==9)  {
-            b8 = 0;
+            b[8] = 0;
         }
         if(length==10)  {
-            b9 = 0;
+            b[9] = 0;
         }
         if(length==11)  {
-            b10 = 0;
+            b[10] = 0;
         }
         if(length==12)  {
-            b11 = 0;
+            b[11] = 0;
         }
         if(length==13)  {
-            b12 = 0;
+            b[12] = 0;
         }
         if(length == 14)  {
-            b13 = 0;
+            b[13] = 0;
         }
         if(length==15)  {
-            b14 = 0;
+            b[14] = 0;
         }
     }
     
@@ -647,46 +665,46 @@
         ) {
         //add some code that it doesn't move
         if(length == 2)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 3)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 4)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 5)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 6)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 7)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 8)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 9)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 10)  {
-            b8 = 0;
+            b[8] = 0;
         }
          if(length == 11)  {
-            b9 = 0;
+            b[9] = 0;
         }
          if(length == 12)  {
-            b10 = 0;
+            b[10] = 0;
         }
          if(length == 13)  {
-            b11 = 0;
+            b[11] = 0;
         }
          if(length == 14)  {
-            b12 = 0;
+            b[12] = 0;
         }
          if(length == 15)  {
-            b13 = 0;
+            b[13] = 0;
         }
     }
     
@@ -745,43 +763,43 @@
         ) {
         //add some code that it doesn't move
         if(length == 3)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 4)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 5)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 6)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 7)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 8)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 9)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 10)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 11)  {
-            b8 = 0;
+            b[8] = 0;
         }
          if(length == 12)  {
-            b9 = 0;
+            b[9] = 0;
         }
          if(length == 13)  {
-            b10 = 0;
+            b[10] = 0;
         }
          if(length == 14)  {
-            b11 = 0;
+            b[11] = 0;
         }
          if(length == 15)  {
-            b12 = 0;
+            b[12] = 0;
         }
     }
     
@@ -840,40 +858,40 @@
         ) {
         //add some code that it doesn't move
         if(length == 4)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 5)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 6)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 7)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 8)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 9)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 10)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 11)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 12)  {
-            b8 = 0;
+            b[8] = 0;
         }
          if(length == 13)  {
-            b9 = 0;
+            b[9] = 0;
         }
          if(length == 14)  {
-            b10 = 0;
+            b[10] = 0;
         }
          if(length == 15)  {
-            b11 = 0;
+            b[11] = 0;
         }
     }
     
@@ -932,37 +950,37 @@
         ) {
         //add some code that it doesn't move
         if(length == 5)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 6)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 7)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 8)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 9)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 10)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 11)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 12)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 13)  {
-            b8 = 0;
+            b[8] = 0;
         }
          if(length == 14)  {
-            b9 = 0;
+            b[9] = 0;
         }
          if(length == 15)  {
-            b10 = 0;
+            b[10] = 0;
         }
     }
     
@@ -1021,34 +1039,34 @@
         ) {
         //add some code that it doesn't move
         if(length == 6)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 7)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 8)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 9)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 10)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 11)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 12)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 13)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 14)  {
-            b8 = 0;
+            b[8] = 0;
         }
          if(length == 15)  {
-            b9 = 0;
+            b[9] = 0;
         }
     }
     
@@ -1107,31 +1125,31 @@
         ) {
         //add some code that it doesn't move
         if(length == 7)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 8)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 9)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 10)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 11)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 12)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 13)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 14)  {
-            b7 = 0;
+            b[7] = 0;
         }
          if(length == 15)  {
-            b8 = 0;
+            b[8] = 0;
         }
     }
     
@@ -1190,28 +1208,28 @@
         ) {
         //add some code that it doesn't move
         if(length == 8)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 9)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 10)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 11)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 12)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 13)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 14)  {
-            b6 = 0;
+            b[6] = 0;
         }
          if(length == 15)  {
-            b7 = 0;
+            b[7] = 0;
         }
     }
     
@@ -1270,25 +1288,25 @@
         ) {
         //add some code that it doesn't move
         if(length == 9)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 10)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 11)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 12)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 13)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 14)  {
-            b5 = 0;
+            b[5] = 0;
         }
          if(length == 15)  {
-            b6 = 0;
+            b[6] = 0;
         }
     }
     
@@ -1347,22 +1365,22 @@
         ) {
         //add some code that it doesn't move
         if(length == 10)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 11)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 12)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 13)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 14)  {
-            b4 = 0;
+            b[4] = 0;
         }
          if(length == 15)  {
-            b5 = 0;
+            b[5] = 0;
         }
     }
     
@@ -1421,19 +1439,19 @@
         ) {
         //add some code that it doesn't move
         if(length == 11)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 12)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 13)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 14)  {
-            b3 = 0;
+            b[3] = 0;
         }
          if(length == 15)  {
-            b4 = 0;
+            b[4] = 0;
         }
     }
     
@@ -1492,16 +1510,16 @@
         ) {
         //add some code that it doesn't move
         if(length == 12)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 13)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 14)  {
-            b2 = 0;
+            b[2] = 0;
         }
          if(length == 15)  {
-            b3 = 0;
+            b[3] = 0;
         }
     }
     
@@ -1560,13 +1578,13 @@
         ) {
         //add some code that it doesn't move
         if(length == 13)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 14)  {
-            b1 = 0;
+            b[1] = 0;
         }
          if(length == 15)  {
-            b2 = 0;
+            b[2] = 0;
         }
         speed = speed/2;
     }
@@ -1626,10 +1644,10 @@
         ) {
         //add some code that it doesn't move
         if(length == 14)  {
-            b0 = 0;
+            b[0] = 0;
         }
          if(length == 15)  {
-            b1 = 0;
+            b[1] = 0;
         }
     }
     
@@ -1688,7 +1706,7 @@
         ) {
         //add some code that it doesn't move
         if(length == 15)  {
-            b0 = 0;
+            b[0] = 0;
         }
     }
     
@@ -2550,38 +2568,21 @@
         
         else    {
             speed = 1;
-            b0 = 1;
-            b1 = 1;
-            b2 = 1;
-            b3 = 1;
-            b4 = 1;
-            b5 = 1;
-            b6 = 1;
-            b7 = 1;
-            b8 = 1;
-            b9 = 1;
-            b10 = 1;
-            b11 = 1;
-            b12 = 1;
-            b13 = 1;
-            b14 = 1;
+            b[0] = 1;
+            b[1] = 1;
+            b[2] = 1;
+            b[3] = 1;
+            b[4] = 1;
+            b[5] = 1;
+            b[6] = 1;
+            b[7] = 1;
+            b[8] = 1;
+            b[9] = 1;
+            b[10] = 1;
+            b[11] = 1;
+            b[12] = 1;
+            b[13] = 1;
+            b[14] = 1;
         }
     //_s.set_pos(s_pos);
-    b0_to_b14[0] = b0;
-    b0_to_b14[1] = b1;
-    b0_to_b14[2] = b2;
-    b0_to_b14[3] = b3;
-    b0_to_b14[4] = b4;
-    b0_to_b14[5] = b5;
-    b0_to_b14[6] = b6;
-    b0_to_b14[7] = b7;
-    b0_to_b14[8] = b8;
-    b0_to_b14[9] = b9;
-    b0_to_b14[10] = b10;
-    b0_to_b14[11] = b11;
-    b0_to_b14[12] = b12;
-    b0_to_b14[13] = b13;
-    b0_to_b14[14] = b14;
-}
-//&&((snake_pos.x <= snake_posb1.x)&&(snake_posb1.x <= snake_posb2.x)&&(snake_posb2.x <= snake_posb3.x)&&(snake_posb3.x <= snake_posb4.x)&&(snake_posb4.x <= snake_posb5.x)&&(snake_posb5.x <= snake_posb6.x)&&(snake_posb6.x <= snake_posb7.x)&&(snake_posb7.x <= snake_posb8.x)&&(snake_posb8.x <= snake_posb9.x)&&(snake_posb9.x <= snake_posb10.x)&&(snake_posb10.x <= snake_posb11.x)&&(snake_posb11.x <= snake_posb12.x)&&(snake_posb12.x <= snake_posb13.x)&&(snake_posb13.x <= snake_posb14.x)&&(snake_posb14.x <= snake_posb15.x))
-//&&((snake_pos.x >= snake_posb1.x)&&(snake_posb1.x >= snake_posb2.x)&&(snake_posb2.x >= snake_posb3.x)&&(snake_posb3.x >= snake_posb4.x)&&(snake_posb4.x >= snake_posb5.x)&&(snake_posb5.x >= snake_posb6.x)&&(snake_posb6.x > snake_posb7.x)&&(snake_posb7.x >= snake_posb8.x)&&(snake_posb8.x >= snake_posb9.x)&&(snake_posb9.x >= snake_posb10.x)&&(snake_posb10.x >= snake_posb11.x)&&(snake_posb11.x >= snake_posb12.x)&&(snake_posb12.x >= snake_posb13.x)&&(snake_posb13.x >= snake_posb14.x)&&(snake_posb14.x >= snake_posb15.x))
\ No newline at end of file
+}
\ No newline at end of file