Snake vs Block Game to be run upon K64F.

Dependencies:   mbed

Committer:
AhmedPlaymaker
Date:
Mon May 06 14:28:35 2019 +0000
Revision:
83:329da564799a
Parent:
81:4c1641e10dcd
Child:
95:b068b0735f45
Now, I have put gamepad and lcd objects from the main() in a pointer, so that i can declare them in init() in every class i use them in and use them as global objects for each class, without having to send their addresses to all of the functions.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AhmedPlaymaker 10:751bd953fa27 1 #include "Blocks.h"
AhmedPlaymaker 10:751bd953fa27 2
AhmedPlaymaker 10:751bd953fa27 3 Blocks::Blocks()
AhmedPlaymaker 10:751bd953fa27 4 {
AhmedPlaymaker 10:751bd953fa27 5
AhmedPlaymaker 10:751bd953fa27 6 }
AhmedPlaymaker 10:751bd953fa27 7
AhmedPlaymaker 10:751bd953fa27 8 Blocks::~Blocks()
AhmedPlaymaker 10:751bd953fa27 9 {
AhmedPlaymaker 81:4c1641e10dcd 10
AhmedPlaymaker 10:751bd953fa27 11 }
AhmedPlaymaker 10:751bd953fa27 12
AhmedPlaymaker 10:751bd953fa27 13 //Frame Sprite.
AhmedPlaymaker 10:751bd953fa27 14 int Frame[11][1] = {
AhmedPlaymaker 10:751bd953fa27 15 {0},
AhmedPlaymaker 10:751bd953fa27 16 {0},
AhmedPlaymaker 10:751bd953fa27 17 {1},
AhmedPlaymaker 10:751bd953fa27 18 {1},
AhmedPlaymaker 10:751bd953fa27 19 {1},
AhmedPlaymaker 10:751bd953fa27 20 {1},
AhmedPlaymaker 10:751bd953fa27 21 {1},
AhmedPlaymaker 10:751bd953fa27 22 {1},
AhmedPlaymaker 10:751bd953fa27 23 {1},
AhmedPlaymaker 10:751bd953fa27 24 {0},
AhmedPlaymaker 10:751bd953fa27 25 {0},
AhmedPlaymaker 10:751bd953fa27 26 };
AhmedPlaymaker 10:751bd953fa27 27 int One[11][15] = {
AhmedPlaymaker 10:751bd953fa27 28 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 29 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 30 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 31 {0,0,0,0,0,0,1,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 32 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 33 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 34 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 35 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 36 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 37 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 38 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 39 };
AhmedPlaymaker 10:751bd953fa27 40 int Two[11][15] = {
AhmedPlaymaker 10:751bd953fa27 41 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 42 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 43 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 44 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 45 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 46 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 47 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 48 {0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 49 {0,0,0,0,0,1,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 50 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 51 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 52 };
AhmedPlaymaker 10:751bd953fa27 53 int Three[11][15] = {
AhmedPlaymaker 10:751bd953fa27 54 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 55 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 56 {0,0,0,0,0,1,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 57 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 58 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 59 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 60 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 61 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 62 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 63 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 64 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 65 };
AhmedPlaymaker 10:751bd953fa27 66 int Four[11][15] = {
AhmedPlaymaker 10:751bd953fa27 67 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 68 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 69 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 70 {0,0,0,0,0,0,0,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 71 {0,0,0,0,0,0,1,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 72 {0,0,0,0,0,1,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 73 {0,0,0,0,0,1,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 74 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 75 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 76 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 77 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 78 };
AhmedPlaymaker 10:751bd953fa27 79 int Five[11][15] = {
AhmedPlaymaker 10:751bd953fa27 80 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 81 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 82 {0,0,0,0,0,1,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 83 {0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 84 {0,0,0,0,0,1,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 85 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 86 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 87 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 88 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 89 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 90 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 91 };
AhmedPlaymaker 10:751bd953fa27 92 int Six[11][15] = {
AhmedPlaymaker 10:751bd953fa27 93 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 94 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 31:6566026b4c6a 95 {0,0,0,0,0,0,0,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 96 {0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
AhmedPlaymaker 31:6566026b4c6a 97 {0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 98 {0,0,0,0,0,1,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 99 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 100 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 101 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 102 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 103 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 104 };
AhmedPlaymaker 10:751bd953fa27 105 int Seven[11][15] = {
AhmedPlaymaker 10:751bd953fa27 106 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 107 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 108 {0,0,0,0,0,1,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 109 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 110 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 111 {0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 112 {0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 113 {0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 114 {0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 115 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 116 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 117 };
AhmedPlaymaker 10:751bd953fa27 118 int Eight[11][15] = {
AhmedPlaymaker 10:751bd953fa27 119 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 120 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 121 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 122 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 123 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 124 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 125 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 126 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 127 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 128 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 129 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 130 };
AhmedPlaymaker 10:751bd953fa27 131 int Nine[11][15] = {
AhmedPlaymaker 10:751bd953fa27 132 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 133 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 134 {0,0,0,0,0,0,1,1,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 135 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 136 {0,0,0,0,0,1,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 137 {0,0,0,0,0,0,1,1,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 138 {0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 139 {0,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 140 {0,0,0,0,0,0,1,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 141 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 142 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 143 };
AhmedPlaymaker 10:751bd953fa27 144 int Ten[11][15] = {
AhmedPlaymaker 10:751bd953fa27 145 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 146 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 147 {0,0,0,0,1,0,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 148 {0,0,0,1,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 149 {0,0,0,0,1,0,0,1,0,0,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 150 {0,0,0,0,1,0,0,1,0,1,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 151 {0,0,0,0,1,0,0,1,1,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 152 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 153 {0,0,0,1,1,1,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 154 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 155 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 156 };
AhmedPlaymaker 10:751bd953fa27 157 int Eleven[11][15] = {
AhmedPlaymaker 10:751bd953fa27 158 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 159 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 160 {0,0,0,0,0,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 161 {0,0,0,0,1,1,0,0,0,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 162 {0,0,0,0,0,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 163 {0,0,0,0,0,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 164 {0,0,0,0,0,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 165 {0,0,0,0,0,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 166 {0,0,0,0,1,1,1,0,0,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 167 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 168 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 169 };
AhmedPlaymaker 10:751bd953fa27 170 int Twelve[11][15] = {
AhmedPlaymaker 10:751bd953fa27 171 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 172 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 173 {0,0,0,0,1,0,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 174 {0,0,0,1,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 175 {0,0,0,0,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 176 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 177 {0,0,0,0,1,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 178 {0,0,0,0,1,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 179 {0,0,0,1,1,1,0,1,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 180 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 181 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 182 };
AhmedPlaymaker 10:751bd953fa27 183 int Thirteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 184 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 185 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 186 {0,0,0,0,1,0,0,1,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 187 {0,0,0,1,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 188 {0,0,0,0,1,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 189 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 190 {0,0,0,0,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 191 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 192 {0,0,0,1,1,1,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 193 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 194 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 195 };
AhmedPlaymaker 10:751bd953fa27 196 int Fourteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 197 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 198 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 199 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 200 {0,0,0,1,1,0,0,0,0,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 201 {0,0,0,0,1,0,0,0,1,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 202 {0,0,0,0,1,0,0,1,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 203 {0,0,0,0,1,0,0,1,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 204 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 205 {0,0,0,1,1,1,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 206 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 207 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 208 };
AhmedPlaymaker 10:751bd953fa27 209 int Fifteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 210 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 211 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 212 {0,0,0,0,1,0,0,1,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 213 {0,0,0,1,1,0,0,1,0,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 214 {0,0,0,0,1,0,0,1,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 215 {0,0,0,0,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 216 {0,0,0,0,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 217 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 218 {0,0,0,1,1,1,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 219 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 220 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 221 };
AhmedPlaymaker 59:c65a2e933c47 222 /*
AhmedPlaymaker 10:751bd953fa27 223 int Sixteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 224 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 225 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 226 {0,0,0,0,1,0,0,0,0,0,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 227 {0,0,0,1,1,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 228 {0,0,0,0,1,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 229 {0,0,0,0,1,0,0,1,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 230 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 231 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 232 {0,0,0,1,1,1,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 233 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 234 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 235 };
AhmedPlaymaker 10:751bd953fa27 236 int Seventeen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 237 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 238 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 239 {0,0,0,0,1,0,0,1,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 240 {0,0,0,1,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 241 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 242 {0,0,0,0,1,0,0,0,0,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 243 {0,0,0,0,1,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 244 {0,0,0,0,1,0,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 245 {0,0,0,1,1,1,0,0,1,0,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 246 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 247 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 248 };
AhmedPlaymaker 10:751bd953fa27 249 int Eighteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 250 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 251 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 252 {0,0,0,0,1,0,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 253 {0,0,0,1,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 254 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 255 {0,0,0,0,1,0,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 256 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 257 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 258 {0,0,0,1,1,1,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 259 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 260 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 261 };
AhmedPlaymaker 10:751bd953fa27 262 int Nineteen[11][15] = {
AhmedPlaymaker 10:751bd953fa27 263 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 264 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 265 {0,0,0,0,1,0,0,0,1,1,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 266 {0,0,0,1,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 267 {0,0,0,0,1,0,0,1,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 268 {0,0,0,0,1,0,0,0,1,1,1,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 269 {0,0,0,0,1,0,0,0,0,0,0,1,0,0,0},
AhmedPlaymaker 10:751bd953fa27 270 {0,0,0,0,1,0,0,0,0,0,1,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 271 {0,0,0,1,1,1,0,0,1,1,0,0,0,0,0},
AhmedPlaymaker 10:751bd953fa27 272 {1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
AhmedPlaymaker 10:751bd953fa27 273 {0,1,1,1,1,1,1,1,1,1,1,1,1,1,0},
AhmedPlaymaker 10:751bd953fa27 274 };
AhmedPlaymaker 25:e827f1a8fadc 275 */
AhmedPlaymaker 83:329da564799a 276 void Blocks::init(N5110 *lcd)
AhmedPlaymaker 10:751bd953fa27 277 {
AhmedPlaymaker 83:329da564799a 278 _lcd = lcd;
AhmedPlaymaker 81:4c1641e10dcd 279 reset = 0;
AhmedPlaymaker 83:329da564799a 280 _bx = NULL;
AhmedPlaymaker 83:329da564799a 281 _by = NULL;
AhmedPlaymaker 10:751bd953fa27 282 }
AhmedPlaymaker 10:751bd953fa27 283
AhmedPlaymaker 10:751bd953fa27 284
AhmedPlaymaker 83:329da564799a 285 void Blocks::draw(int length)
AhmedPlaymaker 41:4edac50f010d 286 {
AhmedPlaymaker 41:4edac50f010d 287 _length = length;
AhmedPlaymaker 37:ee47699915b8 288 velocity.x = 0;
AhmedPlaymaker 37:ee47699915b8 289 velocity.y = 1;
AhmedPlaymaker 77:5c6bd659c32d 290
AhmedPlaymaker 81:4c1641e10dcd 291 if(reset == 0){
AhmedPlaymaker 36:dfdd619874ae 292 _bx = 0;
AhmedPlaymaker 10:751bd953fa27 293 _by = -11;
AhmedPlaymaker 54:20abd16c7d74 294 int i=0; //this variable is used to save the positions of the random numbers generated in a block
AhmedPlaymaker 47:b448ffd073e7 295 while(i < 5) {
AhmedPlaymaker 48:d774bb162c61 296 caseselect[i] = rand()%16; //can make it 17 here later so that people are in for a shock when they think its an empty space and loose massive lives???
AhmedPlaymaker 10:751bd953fa27 297 i++;
AhmedPlaymaker 10:751bd953fa27 298 }
AhmedPlaymaker 47:b448ffd073e7 299 round = _length/(7/2); //to make sure at least one is smaller than the snake size
AhmedPlaymaker 47:b448ffd073e7 300 caseselect[rand()%5] = floor(round);
AhmedPlaymaker 48:d774bb162c61 301 round = _length/(2); //to make sure at least two smaller than the snake size (two because one is already smaller)
AhmedPlaymaker 48:d774bb162c61 302 caseselect[rand()%5] = floor(round);
AhmedPlaymaker 81:4c1641e10dcd 303 reset = reset+1; //to stop this if function to keep executing.
AhmedPlaymaker 53:527cf297b088 304 }
AhmedPlaymaker 77:5c6bd659c32d 305
AhmedPlaymaker 83:329da564799a 306 Blocks::DrawFrame();
AhmedPlaymaker 77:5c6bd659c32d 307
AhmedPlaymaker 83:329da564799a 308 Blocks::ChooseBlocks();
AhmedPlaymaker 53:527cf297b088 309 }
AhmedPlaymaker 53:527cf297b088 310
AhmedPlaymaker 83:329da564799a 311 void Blocks::DrawFrame() {
AhmedPlaymaker 53:527cf297b088 312 for(int i = 3; i <= 83; i += 16) {
AhmedPlaymaker 83:329da564799a 313 _lcd->drawSprite(_bx+i,_by,11,1,(int *)Frame); //Function to draw the frame at all i coordinates as x.
AhmedPlaymaker 53:527cf297b088 314 }
AhmedPlaymaker 53:527cf297b088 315 }
AhmedPlaymaker 53:527cf297b088 316
AhmedPlaymaker 83:329da564799a 317 void Blocks::ChooseBlocks() {
AhmedPlaymaker 54:20abd16c7d74 318 int i = 0;
AhmedPlaymaker 54:20abd16c7d74 319 int pos = 4; //this refers to the x coordinate of the blocks.
AhmedPlaymaker 10:751bd953fa27 320 while((i<5)&&(pos<=68)) {
AhmedPlaymaker 81:4c1641e10dcd 321 switch(caseselect[i]) {
AhmedPlaymaker 10:751bd953fa27 322 case 0:
AhmedPlaymaker 19:05cc9f801468 323 // This case creates empty block
AhmedPlaymaker 13:9785f2404045 324 break;
AhmedPlaymaker 13:9785f2404045 325 case 1:
AhmedPlaymaker 83:329da564799a 326 _lcd->drawSprite(pos,_by,11,15,(int *)One);
AhmedPlaymaker 10:751bd953fa27 327 break;
AhmedPlaymaker 13:9785f2404045 328 case 2:
AhmedPlaymaker 83:329da564799a 329 _lcd->drawSprite(pos,_by,11,15,(int *)Two);
AhmedPlaymaker 10:751bd953fa27 330 break;
AhmedPlaymaker 13:9785f2404045 331 case 3:
AhmedPlaymaker 83:329da564799a 332 _lcd->drawSprite(pos,_by,11,15,(int *)Three);
AhmedPlaymaker 10:751bd953fa27 333 break;
AhmedPlaymaker 10:751bd953fa27 334 case 4:
AhmedPlaymaker 83:329da564799a 335 _lcd->drawSprite(pos,_by,11,15,(int *)Four);
AhmedPlaymaker 10:751bd953fa27 336 break;
AhmedPlaymaker 10:751bd953fa27 337 case 5:
AhmedPlaymaker 83:329da564799a 338 _lcd->drawSprite(pos,_by,11,15,(int *)Five);
AhmedPlaymaker 10:751bd953fa27 339 break;
AhmedPlaymaker 10:751bd953fa27 340 case 6:
AhmedPlaymaker 83:329da564799a 341 _lcd->drawSprite(pos,_by,11,15,(int *)Six);
AhmedPlaymaker 10:751bd953fa27 342 break;
AhmedPlaymaker 10:751bd953fa27 343 case 7:
AhmedPlaymaker 83:329da564799a 344 _lcd->drawSprite(pos,_by,11,15,(int *)Seven);
AhmedPlaymaker 10:751bd953fa27 345 break;
AhmedPlaymaker 10:751bd953fa27 346 case 8:
AhmedPlaymaker 83:329da564799a 347 _lcd->drawSprite(pos,_by,11,15,(int *)Eight);
AhmedPlaymaker 10:751bd953fa27 348 break;
AhmedPlaymaker 10:751bd953fa27 349 case 9:
AhmedPlaymaker 83:329da564799a 350 _lcd->drawSprite(pos,_by,11,15,(int *)Nine);
AhmedPlaymaker 10:751bd953fa27 351 break;
AhmedPlaymaker 10:751bd953fa27 352 case 10:
AhmedPlaymaker 83:329da564799a 353 _lcd->drawSprite(pos,_by,11,15,(int *)Ten);
AhmedPlaymaker 10:751bd953fa27 354 break;
AhmedPlaymaker 10:751bd953fa27 355 case 11:
AhmedPlaymaker 83:329da564799a 356 _lcd->drawSprite(pos,_by,11,15,(int *)Eleven);
AhmedPlaymaker 10:751bd953fa27 357 break;
AhmedPlaymaker 10:751bd953fa27 358 case 12:
AhmedPlaymaker 83:329da564799a 359 _lcd->drawSprite(pos,_by,11,15,(int *)Twelve);
AhmedPlaymaker 13:9785f2404045 360 break;
AhmedPlaymaker 13:9785f2404045 361 case 13:
AhmedPlaymaker 83:329da564799a 362 _lcd->drawSprite(pos,_by,11,15,(int *)Thirteen);
AhmedPlaymaker 10:751bd953fa27 363 break;
AhmedPlaymaker 13:9785f2404045 364 case 14:
AhmedPlaymaker 83:329da564799a 365 _lcd->drawSprite(pos,_by,11,15,(int *)Fourteen);
AhmedPlaymaker 10:751bd953fa27 366 break;
AhmedPlaymaker 13:9785f2404045 367 case 15:
AhmedPlaymaker 83:329da564799a 368 _lcd->drawSprite(pos,_by,11,15,(int *)Fifteen);
AhmedPlaymaker 10:751bd953fa27 369 break;
AhmedPlaymaker 10:751bd953fa27 370 default:
AhmedPlaymaker 10:751bd953fa27 371 break;
AhmedPlaymaker 10:751bd953fa27 372 }
AhmedPlaymaker 41:4edac50f010d 373 i++;
AhmedPlaymaker 41:4edac50f010d 374 pos+=16;
AhmedPlaymaker 41:4edac50f010d 375 }
AhmedPlaymaker 10:751bd953fa27 376 }
AhmedPlaymaker 10:751bd953fa27 377
AhmedPlaymaker 10:751bd953fa27 378 Vector2D Blocks::get_pos() //Obtains the X and Y coordinate of the target.
AhmedPlaymaker 10:751bd953fa27 379 {
AhmedPlaymaker 10:751bd953fa27 380 Vector2D blockpos = {_bx,_by};
AhmedPlaymaker 10:751bd953fa27 381 //printf("blockpos is = %f %f \n", blockpos.x, blockpos.y);
AhmedPlaymaker 10:751bd953fa27 382 return blockpos;
AhmedPlaymaker 10:751bd953fa27 383 }
AhmedPlaymaker 10:751bd953fa27 384
AhmedPlaymaker 12:1e601b176437 385 int * Blocks::get_number() //Obtains the X and Y coordinate of the target.
AhmedPlaymaker 12:1e601b176437 386 {
AhmedPlaymaker 12:1e601b176437 387 return caseselect;
AhmedPlaymaker 12:1e601b176437 388 }
AhmedPlaymaker 10:751bd953fa27 389
AhmedPlaymaker 10:751bd953fa27 390
AhmedPlaymaker 48:d774bb162c61 391 void Blocks::update(int blocknum, int blockgap, int srn, int send_block_number) //send sends the block number only when the y position satisfies a particular requirement
AhmedPlaymaker 53:527cf297b088 392 { //and srn gives the srn of the block, snake is colliding with.
AhmedPlaymaker 48:d774bb162c61 393 // this if function makes sure the block appears at the rate of blockgap.
AhmedPlaymaker 48:d774bb162c61 394 if(_by >= (blockgap)){
AhmedPlaymaker 81:4c1641e10dcd 395 reset = 0;
AhmedPlaymaker 48:d774bb162c61 396 }
AhmedPlaymaker 37:ee47699915b8 397 _bx += velocity.x;
AhmedPlaymaker 37:ee47699915b8 398 _by += velocity.y;
AhmedPlaymaker 48:d774bb162c61 399
AhmedPlaymaker 42:973bb6036f81 400 if(send_block_number) {caseselect[srn] = blocknum;}
AhmedPlaymaker 10:751bd953fa27 401 }
AhmedPlaymaker 10:751bd953fa27 402
AhmedPlaymaker 10:751bd953fa27 403
AhmedPlaymaker 10:751bd953fa27 404 void Blocks::set_pos(Vector2D p)
AhmedPlaymaker 10:751bd953fa27 405 {
AhmedPlaymaker 10:751bd953fa27 406 _bx = p.x;
AhmedPlaymaker 10:751bd953fa27 407 _by = p.y;
AhmedPlaymaker 10:751bd953fa27 408 }