Tetris game on mikroTFT touchscreen and LPC1768

Dependencies:   Tetris

Dependents:   Tetris

Committer:
sergun2311
Date:
Sat Mar 18 14:45:16 2017 +0000
Revision:
4:107d1d5a642e
Parent:
2:6b6986c3d2bd
Tetris V1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sergun2311 0:645509d95b8d 1 #include "Piece.h"
sergun2311 4:107d1d5a642e 2 #include "Define.h"
sergun2311 0:645509d95b8d 3
sergun2311 4:107d1d5a642e 4 // Defining of Pieces (Blocks/Shapes)
sergun2311 4:107d1d5a642e 5 // Here is 7 types of PIECES, eack with 4 different angles
sergun2311 4:107d1d5a642e 6 // and consists of matixes of colors, sized 5x5
sergun2311 0:645509d95b8d 7
sergun2311 0:645509d95b8d 8 const int Piece [ 7 ][ 4 ][ 5 ][ 5 ] = {
sergun2311 2:6b6986c3d2bd 9 {
sergun2311 4:107d1d5a642e 10 {
sergun2311 4:107d1d5a642e 11 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 12 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 13 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 14 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 15 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 16 },
sergun2311 4:107d1d5a642e 17 {
sergun2311 4:107d1d5a642e 18 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 19 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 20 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 21 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 22 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 23 },
sergun2311 4:107d1d5a642e 24 {
sergun2311 4:107d1d5a642e 25 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 26 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 27 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 28 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 29 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 30 },
sergun2311 4:107d1d5a642e 31 {
sergun2311 4:107d1d5a642e 32 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 33 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 34 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 35 {0, 0, Blue, Blue, 0},
sergun2311 4:107d1d5a642e 36 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 37 }
sergun2311 0:645509d95b8d 38 },
sergun2311 4:107d1d5a642e 39
sergun2311 4:107d1d5a642e 40 // I
sergun2311 4:107d1d5a642e 41 {
sergun2311 4:107d1d5a642e 42 {
sergun2311 4:107d1d5a642e 43 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 44 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 45 {Green, Green, Green, Green, 0},
sergun2311 4:107d1d5a642e 46 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 47 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 48 },
sergun2311 4:107d1d5a642e 49 {
sergun2311 4:107d1d5a642e 50 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 51 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 52 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 53 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 54 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 55 },
sergun2311 4:107d1d5a642e 56 {
sergun2311 4:107d1d5a642e 57 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 58 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 59 {Green, Green, Green, Green, 0},
sergun2311 4:107d1d5a642e 60 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 61 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 62 },
sergun2311 4:107d1d5a642e 63 {
sergun2311 4:107d1d5a642e 64 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 65 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 66 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 67 {0, 0, Green, 0, 0},
sergun2311 4:107d1d5a642e 68 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 69 }
sergun2311 0:645509d95b8d 70 }
sergun2311 4:107d1d5a642e 71 ,
sergun2311 0:645509d95b8d 72 // L
sergun2311 4:107d1d5a642e 73 {
sergun2311 4:107d1d5a642e 74 {
sergun2311 4:107d1d5a642e 75 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 76 {0, 0, Red, 0, 0},
sergun2311 4:107d1d5a642e 77 {0, 0, Red, 0, 0},
sergun2311 4:107d1d5a642e 78 {0, 0, Red, Red, 0},
sergun2311 4:107d1d5a642e 79 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 80 },
sergun2311 4:107d1d5a642e 81 {
sergun2311 4:107d1d5a642e 82 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 83 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 84 {0, Red, Red, Red, 0},
sergun2311 4:107d1d5a642e 85 {0, Red, 0, 0, 0},
sergun2311 4:107d1d5a642e 86 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 87 },
sergun2311 4:107d1d5a642e 88 {
sergun2311 4:107d1d5a642e 89 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 90 {0, Red, Red, 0, 0},
sergun2311 4:107d1d5a642e 91 {0, 0, Red, 0, 0},
sergun2311 4:107d1d5a642e 92 {0, 0, Red, 0, 0},
sergun2311 4:107d1d5a642e 93 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 94 },
sergun2311 4:107d1d5a642e 95 {
sergun2311 4:107d1d5a642e 96 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 97 {0, 0, 0, Red, 0},
sergun2311 4:107d1d5a642e 98 {0, Red, Red, Red, 0},
sergun2311 4:107d1d5a642e 99 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 100 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 101 }
sergun2311 0:645509d95b8d 102 },
sergun2311 4:107d1d5a642e 103 // L mirrored
sergun2311 4:107d1d5a642e 104 {
sergun2311 4:107d1d5a642e 105 {
sergun2311 4:107d1d5a642e 106 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 107 {0, 0, Yellow, 0, 0},
sergun2311 4:107d1d5a642e 108 {0, 0, Yellow, 0, 0},
sergun2311 4:107d1d5a642e 109 {0, Yellow, Yellow, 0, 0},
sergun2311 4:107d1d5a642e 110 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 111 },
sergun2311 4:107d1d5a642e 112 {
sergun2311 4:107d1d5a642e 113 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 114 {0, Yellow, 0, 0, 0},
sergun2311 4:107d1d5a642e 115 {0, Yellow, Yellow, Yellow, 0},
sergun2311 4:107d1d5a642e 116 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 117 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 118 },
sergun2311 4:107d1d5a642e 119 {
sergun2311 4:107d1d5a642e 120 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 121 {0, 0, Yellow, Yellow, 0},
sergun2311 4:107d1d5a642e 122 {0, 0, Yellow, 0, 0},
sergun2311 4:107d1d5a642e 123 {0, 0, Yellow, 0, 0},
sergun2311 4:107d1d5a642e 124 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 125 },
sergun2311 4:107d1d5a642e 126 {
sergun2311 4:107d1d5a642e 127 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 128 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 129 {0, Yellow, Yellow, Yellow, 0},
sergun2311 4:107d1d5a642e 130 {0, 0, 0, Yellow, 0},
sergun2311 4:107d1d5a642e 131 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 132 }
sergun2311 0:645509d95b8d 133 },
sergun2311 4:107d1d5a642e 134 // N
sergun2311 4:107d1d5a642e 135 {
sergun2311 4:107d1d5a642e 136 {
sergun2311 4:107d1d5a642e 137 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 138 {0, 0, 0, Orange, 0},
sergun2311 4:107d1d5a642e 139 {0, 0, Orange, Orange, 0},
sergun2311 4:107d1d5a642e 140 {0, 0, Orange, 0, 0},
sergun2311 4:107d1d5a642e 141 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 142 },
sergun2311 4:107d1d5a642e 143 {
sergun2311 4:107d1d5a642e 144 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 145 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 146 {0, Orange, Orange, 0, 0},
sergun2311 4:107d1d5a642e 147 {0, 0, Orange, Orange, 0},
sergun2311 4:107d1d5a642e 148 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 149 },
sergun2311 4:107d1d5a642e 150 {
sergun2311 4:107d1d5a642e 151 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 152 {0, 0, Orange, 0, 0},
sergun2311 4:107d1d5a642e 153 {0, Orange, Orange, 0, 0},
sergun2311 4:107d1d5a642e 154 {0, Orange, 0, 0, 0},
sergun2311 4:107d1d5a642e 155 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 156 },
sergun2311 4:107d1d5a642e 157
sergun2311 4:107d1d5a642e 158
sergun2311 4:107d1d5a642e 159
sergun2311 4:107d1d5a642e 160 {
sergun2311 4:107d1d5a642e 161 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 162 {0, Orange, Orange, 0, 0},
sergun2311 4:107d1d5a642e 163 {0, 0, Orange, Orange, 0},
sergun2311 4:107d1d5a642e 164 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 165 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 166 }
sergun2311 0:645509d95b8d 167 },
sergun2311 0:645509d95b8d 168 // N mirrored
sergun2311 4:107d1d5a642e 169 {
sergun2311 4:107d1d5a642e 170 {
sergun2311 4:107d1d5a642e 171 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 172 {0, 0, GreenYellow, 0, 0},
sergun2311 4:107d1d5a642e 173 {0, 0, GreenYellow, GreenYellow, 0},
sergun2311 4:107d1d5a642e 174 {0, 0, 0, GreenYellow, 0},
sergun2311 4:107d1d5a642e 175 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 176 },
sergun2311 4:107d1d5a642e 177 {
sergun2311 4:107d1d5a642e 178 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 179 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 180 {0, 0, GreenYellow, GreenYellow, 0},
sergun2311 4:107d1d5a642e 181 {0, GreenYellow, GreenYellow, 0, 0},
sergun2311 4:107d1d5a642e 182 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 183 },
sergun2311 4:107d1d5a642e 184 {
sergun2311 4:107d1d5a642e 185 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 186 {0, GreenYellow, 0, 0, 0},
sergun2311 4:107d1d5a642e 187 {0, GreenYellow, GreenYellow, 0, 0},
sergun2311 4:107d1d5a642e 188 {0, 0, GreenYellow, 0, 0},
sergun2311 4:107d1d5a642e 189 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 190 },
sergun2311 4:107d1d5a642e 191 {
sergun2311 4:107d1d5a642e 192 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 193 {0, 0, GreenYellow, GreenYellow, 0},
sergun2311 4:107d1d5a642e 194 {0, GreenYellow, GreenYellow, 0, 0},
sergun2311 4:107d1d5a642e 195 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 196 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 197 }
sergun2311 0:645509d95b8d 198 },
sergun2311 0:645509d95b8d 199 // T
sergun2311 4:107d1d5a642e 200 {
sergun2311 4:107d1d5a642e 201 {
sergun2311 4:107d1d5a642e 202 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 203 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 204 {0, 0, Magenta, Magenta, 0},
sergun2311 4:107d1d5a642e 205 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 206 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 207 },
sergun2311 4:107d1d5a642e 208 {
sergun2311 4:107d1d5a642e 209 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 210 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 211 {0, Magenta, Magenta, Magenta, 0},
sergun2311 4:107d1d5a642e 212 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 213 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 214 },
sergun2311 4:107d1d5a642e 215 {
sergun2311 4:107d1d5a642e 216 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 217 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 218 {0, Magenta, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 219 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 220 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 221 },
sergun2311 4:107d1d5a642e 222 {
sergun2311 4:107d1d5a642e 223 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 224 {0, 0, Magenta, 0, 0},
sergun2311 4:107d1d5a642e 225 {0, Magenta, Magenta, Magenta, 0},
sergun2311 4:107d1d5a642e 226 {0, 0, 0, 0, 0},
sergun2311 4:107d1d5a642e 227 {0, 0, 0, 0, 0}
sergun2311 4:107d1d5a642e 228 }
sergun2311 0:645509d95b8d 229 }
sergun2311 0:645509d95b8d 230 };