Tetris game on mikroTFT touchscreen and LPC1768

Dependencies:   Tetris

Dependents:   Tetris

Revision:
4:107d1d5a642e
Parent:
2:6b6986c3d2bd
--- a/Piece.cpp	Sat Mar 11 19:50:03 2017 +0000
+++ b/Piece.cpp	Sat Mar 18 14:45:16 2017 +0000
@@ -1,233 +1,230 @@
 #include "Piece.h"
+#include "Define.h"
 
-#define Blue            0x001F
-#define Green           0x07E0
-#define Red             0xF800
-#define Yellow          0xFFE0
-#define Orange          0xFD20
-#define GreenYellow     0xAFE5
-#define Magenta         0xF81F
+//  Defining of Pieces (Blocks/Shapes)
+//  Here is 7 types of PIECES, eack with 4 different angles
+//  and consists of matixes of colors, sized 5x5
 
 const int Piece [ 7 ][ 4 ][ 5 ][ 5 ] = {
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, Blue, Blue, 0},
-    {0, 0, 0, 0, 0}
-    }
-   },
- 
-// I
-  {
     {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {Green, Green, Green, Green, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-    {
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {Green, Green, Green, Green, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, Blue, Blue, 0},
+            {0, 0, 0, 0, 0}
+        }
     },
-   {
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, Green, 0, 0},
-    {0, 0, 0, 0, 0}
+
+// I
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {Green, Green, Green, Green, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {Green, Green, Green, Green, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, Green, 0, 0},
+            {0, 0, 0, 0, 0}
+        }
     }
-   }
-  ,
+    ,
 // L
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Red, 0, 0},
-    {0, 0, Red, 0, 0},
-    {0, 0, Red, Red, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, Red, Red, Red, 0},
-    {0, Red, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, Red, Red, 0, 0},
-    {0, 0, Red, 0, 0},
-    {0, 0, Red, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, Red, 0},
-    {0, Red, Red, Red, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    }
-   },
-// L mirrored
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Yellow, 0, 0},
-    {0, 0, Yellow, 0, 0},
-    {0, Yellow, Yellow, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, Yellow, 0, 0, 0},
-    {0, Yellow, Yellow, Yellow, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Red, 0, 0},
+            {0, 0, Red, 0, 0},
+            {0, 0, Red, Red, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, Red, Red, Red, 0},
+            {0, Red, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, Red, Red, 0, 0},
+            {0, 0, Red, 0, 0},
+            {0, 0, Red, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, Red, 0},
+            {0, Red, Red, Red, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        }
     },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Yellow, Yellow, 0},
-    {0, 0, Yellow, 0, 0},
-    {0, 0, Yellow, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, Yellow, Yellow, Yellow, 0},
-    {0, 0, 0, Yellow, 0},
-    {0, 0, 0, 0, 0}
-    }
-   },
-// N
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, Orange, 0},
-    {0, 0, Orange, Orange, 0},
-    {0, 0, Orange, 0, 0},
-    {0, 0, 0, 0, 0}
+// L mirrored
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Yellow, 0, 0},
+            {0, 0, Yellow, 0, 0},
+            {0, Yellow, Yellow, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, Yellow, 0, 0, 0},
+            {0, Yellow, Yellow, Yellow, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Yellow, Yellow, 0},
+            {0, 0, Yellow, 0, 0},
+            {0, 0, Yellow, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, Yellow, Yellow, Yellow, 0},
+            {0, 0, 0, Yellow, 0},
+            {0, 0, 0, 0, 0}
+        }
     },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, Orange, Orange, 0, 0},
-    {0, 0, Orange, Orange, 0},
-    {0, 0, 0, 0, 0}
+// N
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, Orange, 0},
+            {0, 0, Orange, Orange, 0},
+            {0, 0, Orange, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, Orange, Orange, 0, 0},
+            {0, 0, Orange, Orange, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Orange, 0, 0},
+            {0, Orange, Orange, 0, 0},
+            {0, Orange, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+
+
+
+        {
+            {0, 0, 0, 0, 0},
+            {0, Orange, Orange, 0, 0},
+            {0, 0, Orange, Orange, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        }
     },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Orange, 0, 0},
-    {0, Orange, Orange, 0, 0},
-    {0, Orange, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
- 
- 
- 
-   {
-    {0, 0, 0, 0, 0},
-    {0, Orange, Orange, 0, 0},
-    {0, 0, Orange, Orange, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    }
-   },
 // N mirrored
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, GreenYellow, 0, 0},
-    {0, 0, GreenYellow, GreenYellow, 0},
-    {0, 0, 0, GreenYellow, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, GreenYellow, GreenYellow, 0},
-    {0, GreenYellow, GreenYellow, 0, 0},
-    {0, 0, 0, 0, 0}
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, GreenYellow, 0, 0},
+            {0, 0, GreenYellow, GreenYellow, 0},
+            {0, 0, 0, GreenYellow, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, GreenYellow, GreenYellow, 0},
+            {0, GreenYellow, GreenYellow, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, GreenYellow, 0, 0, 0},
+            {0, GreenYellow, GreenYellow, 0, 0},
+            {0, 0, GreenYellow, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, GreenYellow, GreenYellow, 0},
+            {0, GreenYellow, GreenYellow, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        }
     },
-   {
-    {0, 0, 0, 0, 0},
-    {0, GreenYellow, 0, 0, 0},
-    {0, GreenYellow, GreenYellow, 0, 0},
-    {0, 0, GreenYellow, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, GreenYellow, GreenYellow, 0},
-    {0, GreenYellow, GreenYellow, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
-    }
-   },
 // T
-  {
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, 0, Magenta, Magenta, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0},
-    {0, Magenta, Magenta, Magenta, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, Magenta, Magenta, 0, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, 0, 0, 0, 0}
-    },
-   {
-    {0, 0, 0, 0, 0},
-    {0, 0, Magenta, 0, 0},
-    {0, Magenta, Magenta, Magenta, 0},
-    {0, 0, 0, 0, 0},
-    {0, 0, 0, 0, 0}
+    {
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, 0, Magenta, Magenta, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0},
+            {0, Magenta, Magenta, Magenta, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, Magenta, Magenta, 0, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, 0, 0, 0, 0}
+        },
+        {
+            {0, 0, 0, 0, 0},
+            {0, 0, Magenta, 0, 0},
+            {0, Magenta, Magenta, Magenta, 0},
+            {0, 0, 0, 0, 0},
+            {0, 0, 0, 0, 0}
+        }
     }
-   }
 };
\ No newline at end of file