Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Levels/Levels.cpp@58:4a826093d9e9, 2019-05-07 (annotated)
- Committer:
- el17arm
- Date:
- Tue May 07 00:30:46 2019 +0000
- Revision:
- 58:4a826093d9e9
- Parent:
- 54:7fa8c07fdea4
removed initialising structs for blocks, enemies and keys as arrays will; perform the same purpose
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| el17arm | 42:d81c008b0436 | 1 | #include "Levels.h" |
| el17arm | 18:ff0a53dcb862 | 2 | |
| el17arm | 42:d81c008b0436 | 3 | Levels::Levels() |
| el17arm | 18:ff0a53dcb862 | 4 | { |
| el17arm | 18:ff0a53dcb862 | 5 | } |
| el17arm | 18:ff0a53dcb862 | 6 | |
| el17arm | 42:d81c008b0436 | 7 | Levels::~Levels() |
| el17arm | 18:ff0a53dcb862 | 8 | { |
| el17arm | 18:ff0a53dcb862 | 9 | } |
| el17arm | 45:bad704c546d4 | 10 | /////////////////level 1 objects ///////////////////////// |
| el17arm | 18:ff0a53dcb862 | 11 | |
| el17arm | 45:bad704c546d4 | 12 | // Generates all standard platforms for level 1 |
| el17arm | 42:d81c008b0436 | 13 | void Levels::level_platforms1(N5110 &lcd) |
| el17arm | 18:ff0a53dcb862 | 14 | { |
| el17arm | 20:78bd235f8caa | 15 | lcd.drawLine(0,47,83,47, 1); |
| el17arm | 26:bce40bf4c9fc | 16 | lcd.drawRect(11,39, 38, 2, FILL_BLACK); |
| el17arm | 38:55bb9da08a52 | 17 | lcd.drawRect(65,36, 30, 2, FILL_BLACK); |
| el17arm | 42:d81c008b0436 | 18 | lcd.drawRect(75,29, 9, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 19 | lcd.drawRect(22, 25, 48, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 20 | lcd.drawRect(0, 25, 12, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 21 | lcd.drawRect(0, 17, 8, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 22 | lcd.drawRect(0, 9, 27, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 23 | lcd.drawRect(39, 9, 7, 2, FILL_BLACK); |
| el17arm | 41:0cf320f73424 | 24 | lcd.drawRect(53,9,32,2,FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 25 | } |
| el17arm | 18:ff0a53dcb862 | 26 | |
| el17arm | 45:bad704c546d4 | 27 | // sets positions of all traps level 1 |
| el17arm | 42:d81c008b0436 | 28 | void Levels::trap_pos1() |
| el17arm | 20:78bd235f8caa | 29 | { |
| el17arm | 40:913339e324b8 | 30 | trap1.tx[0] = 25; |
| el17arm | 40:913339e324b8 | 31 | trap1.ty[0] = 44; |
| el17arm | 40:913339e324b8 | 32 | trap2.tx[0] = 58; |
| el17arm | 40:913339e324b8 | 33 | trap2.ty[0] = 6; |
| el17arm | 40:913339e324b8 | 34 | trap3.tx[0] = 75; |
| el17arm | 40:913339e324b8 | 35 | trap3.ty[0] = 6; |
| el17arm | 41:0cf320f73424 | 36 | trap4.tx[0] = 0; |
| el17arm | 41:0cf320f73424 | 37 | trap4.ty[0] = 0; |
| el17arm | 41:0cf320f73424 | 38 | trap5.tx[0] = 25; |
| el17arm | 41:0cf320f73424 | 39 | trap5.ty[0] = 36; |
| el17arm | 37:4d525a37d5d2 | 40 | } |
| el17arm | 37:4d525a37d5d2 | 41 | |
| el17arm | 45:bad704c546d4 | 42 | // sets all key positions for keys |
| el17arm | 42:d81c008b0436 | 43 | void Levels::key_pos1() |
| el17arm | 40:913339e324b8 | 44 | { |
| el17arm | 40:913339e324b8 | 45 | key1.kx[0] = 79; |
| el17arm | 40:913339e324b8 | 46 | key1.ky[0] = 12; |
| el17arm | 40:913339e324b8 | 47 | key2.kx[0] = 36; |
| el17arm | 40:913339e324b8 | 48 | key2.ky[0] = 22; |
| el17arm | 40:913339e324b8 | 49 | key3.kx[0] = 40; |
| el17arm | 40:913339e324b8 | 50 | key3.ky[0] = 6; |
| el17arm | 40:913339e324b8 | 51 | key4.kx[0] = 62; |
| el17arm | 40:913339e324b8 | 52 | key4.ky[0] = 6; |
| el17arm | 40:913339e324b8 | 53 | key5.kx[0] = 75; |
| el17arm | 40:913339e324b8 | 54 | key5.ky[0] = 0; |
| el17arm | 40:913339e324b8 | 55 | } |
| el17arm | 40:913339e324b8 | 56 | |
| el17arm | 45:bad704c546d4 | 57 | // sets all block positions for level 1 |
| el17arm | 42:d81c008b0436 | 58 | void Levels::block_pos1() |
| el17arm | 37:4d525a37d5d2 | 59 | { |
| el17arm | 40:913339e324b8 | 60 | sol1.bx[0] = 49; |
| el17arm | 40:913339e324b8 | 61 | sol1.by[0] = 36; |
| el17arm | 41:0cf320f73424 | 62 | |
| el17arm | 44:e29458976114 | 63 | sol2.bx[0] = 42; |
| el17arm | 40:913339e324b8 | 64 | sol2.by[0] = 22; |
| el17arm | 40:913339e324b8 | 65 | |
| el17arm | 41:0cf320f73424 | 66 | sol3.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 67 | sol3.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 68 | |
| el17arm | 41:0cf320f73424 | 69 | sol4.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 70 | sol4.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 71 | |
| el17arm | 41:0cf320f73424 | 72 | sol5.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 73 | sol5.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 74 | } |
| el17arm | 41:0cf320f73424 | 75 | |
| el17arm | 45:bad704c546d4 | 76 | // sets all sinking block positions for level 1 |
| el17arm | 42:d81c008b0436 | 77 | void Levels::soft_pos1() |
| el17arm | 41:0cf320f73424 | 78 | { |
| el17arm | 41:0cf320f73424 | 79 | sof1.sx1[0] = 55; |
| el17arm | 40:913339e324b8 | 80 | sof1.sy[0] = 36; |
| el17arm | 41:0cf320f73424 | 81 | sof1.sx2[0] = 65; |
| el17arm | 40:913339e324b8 | 82 | |
| el17arm | 45:bad704c546d4 | 83 | sof2.sx1[0] = 27; |
| el17arm | 40:913339e324b8 | 84 | sof2.sy[0] = 9; |
| el17arm | 41:0cf320f73424 | 85 | sof2.sx2[0] = 39; |
| el17arm | 41:0cf320f73424 | 86 | |
| el17arm | 41:0cf320f73424 | 87 | sof3.sx1[0] = 46; |
| el17arm | 41:0cf320f73424 | 88 | sof3.sy[0] = 9; |
| el17arm | 41:0cf320f73424 | 89 | sof3.sx2[0] = 52; |
| el17arm | 40:913339e324b8 | 90 | |
| el17arm | 40:913339e324b8 | 91 | } |
| el17arm | 40:913339e324b8 | 92 | |
| el17arm | 45:bad704c546d4 | 93 | // sets all enemy positions for level 1 |
| el17arm | 42:d81c008b0436 | 94 | void Levels::enem_pos1() |
| el17arm | 40:913339e324b8 | 95 | { |
| el17arm | 40:913339e324b8 | 96 | enem1.ex[0] = 22; |
| el17arm | 40:913339e324b8 | 97 | enem1.ey[0] = 20; |
| el17arm | 40:913339e324b8 | 98 | enem1.d[0] = 36; |
| el17arm | 40:913339e324b8 | 99 | enem1.v[0] = 0.5; |
| el17arm | 40:913339e324b8 | 100 | |
| el17arm | 40:913339e324b8 | 101 | enem2.ex[0] = 0; |
| el17arm | 40:913339e324b8 | 102 | enem2.ey[0] = 4; |
| el17arm | 40:913339e324b8 | 103 | enem2.d[0] = 26; |
| el17arm | 40:913339e324b8 | 104 | enem2.v[0] = 1; |
| el17arm | 41:0cf320f73424 | 105 | |
| el17arm | 42:d81c008b0436 | 106 | enem3.ex[0] = 49; |
| el17arm | 42:d81c008b0436 | 107 | enem3.ey[0] = 42; |
| el17arm | 42:d81c008b0436 | 108 | enem3.d[0] = 27; |
| el17arm | 42:d81c008b0436 | 109 | enem3.v[0] = 1; |
| el17arm | 40:913339e324b8 | 110 | } |
| el17arm | 40:913339e324b8 | 111 | |
| el17arm | 45:bad704c546d4 | 112 | /////////////////level 2 objects ///////////////////////// |
| el17arm | 38:55bb9da08a52 | 113 | |
| el17arm | 45:bad704c546d4 | 114 | // platform positions for level 2 |
| el17arm | 42:d81c008b0436 | 115 | void Levels::level_platforms2(N5110 &lcd) |
| el17arm | 42:d81c008b0436 | 116 | { |
| el17arm | 44:e29458976114 | 117 | lcd.drawLine(0, 47, 83, 47, 1); |
| el17arm | 44:e29458976114 | 118 | lcd.drawRect(4, 33, 12, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 119 | lcd.drawRect(20, 41, 12, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 120 | lcd.drawRect(36, 37, 12, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 121 | lcd.drawRect(48, 29, 12, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 122 | lcd.drawRect(24, 21, 24, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 123 | lcd.drawRect(20, 10, 29, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 124 | lcd.drawRect(54, 14, 12, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 125 | lcd.drawRect(0, 10, 10, 2, FILL_BLACK); |
| el17arm | 42:d81c008b0436 | 126 | } |
| el17arm | 45:bad704c546d4 | 127 | |
| el17arm | 45:bad704c546d4 | 128 | // key positions for level 2 |
| el17arm | 42:d81c008b0436 | 129 | void Levels::key_pos2() |
| el17arm | 38:55bb9da08a52 | 130 | { |
| el17arm | 58:4a826093d9e9 | 131 | key1.kx[1] = 55; |
| el17arm | 58:4a826093d9e9 | 132 | key1.ky[1] = 44; |
| el17arm | 44:e29458976114 | 133 | |
| el17arm | 44:e29458976114 | 134 | key2.kx[1] = 79; |
| el17arm | 49:9bea7089b657 | 135 | key2.ky[1] = 29; |
| el17arm | 44:e29458976114 | 136 | |
| el17arm | 44:e29458976114 | 137 | key3.kx[1] = 72; |
| el17arm | 44:e29458976114 | 138 | key3.ky[1] = 23; |
| el17arm | 44:e29458976114 | 139 | |
| el17arm | 44:e29458976114 | 140 | key4.kx[1] = 24; |
| el17arm | 44:e29458976114 | 141 | key4.ky[1] = 0; |
| el17arm | 44:e29458976114 | 142 | |
| el17arm | 58:4a826093d9e9 | 143 | key5.kx[1] = 1; |
| el17arm | 58:4a826093d9e9 | 144 | key5.ky[1] = 7; |
| el17arm | 40:913339e324b8 | 145 | } |
| el17arm | 40:913339e324b8 | 146 | |
| el17arm | 45:bad704c546d4 | 147 | // trap positions for level 2 |
| el17arm | 42:d81c008b0436 | 148 | void Levels::trap_pos2() |
| el17arm | 40:913339e324b8 | 149 | { |
| el17arm | 44:e29458976114 | 150 | trap1.tx[1] = 30; |
| el17arm | 44:e29458976114 | 151 | trap1.ty[1] = 7; |
| el17arm | 44:e29458976114 | 152 | |
| el17arm | 44:e29458976114 | 153 | trap2.tx[1] = 72; |
| el17arm | 44:e29458976114 | 154 | trap2.ty[1] = 17; |
| el17arm | 44:e29458976114 | 155 | |
| el17arm | 44:e29458976114 | 156 | trap3.tx[1] = 51; |
| el17arm | 44:e29458976114 | 157 | trap3.ty[1] = 44; |
| el17arm | 44:e29458976114 | 158 | |
| el17arm | 44:e29458976114 | 159 | trap4.tx[1] = 42; |
| el17arm | 44:e29458976114 | 160 | trap4.ty[1] = 7; |
| el17arm | 44:e29458976114 | 161 | |
| el17arm | 49:9bea7089b657 | 162 | trap5.tx[1] = 80; |
| el17arm | 49:9bea7089b657 | 163 | trap5.ty[1] = 35; |
| el17arm | 38:55bb9da08a52 | 164 | } |
| el17arm | 38:55bb9da08a52 | 165 | |
| el17arm | 45:bad704c546d4 | 166 | // enemy positions for level 2 |
| el17arm | 42:d81c008b0436 | 167 | void Levels::enem_pos2() |
| el17arm | 40:913339e324b8 | 168 | { |
| el17arm | 58:4a826093d9e9 | 169 | enem1.ex[1] = 24; |
| el17arm | 44:e29458976114 | 170 | enem1.ey[1] = 16; |
| el17arm | 44:e29458976114 | 171 | enem1.d[1] = 44; |
| el17arm | 40:913339e324b8 | 172 | enem1.v[1] = 0.5; |
| el17arm | 40:913339e324b8 | 173 | |
| el17arm | 58:4a826093d9e9 | 174 | enem2.ex[1] = 20; |
| el17arm | 44:e29458976114 | 175 | enem2.ey[1] = 5; |
| el17arm | 58:4a826093d9e9 | 176 | enem2.d[1] = 27; |
| el17arm | 40:913339e324b8 | 177 | enem2.v[1] = 1; |
| el17arm | 44:e29458976114 | 178 | |
| el17arm | 44:e29458976114 | 179 | enem3.ex[1] = 54; |
| el17arm | 44:e29458976114 | 180 | enem3.ey[1] = 42; |
| el17arm | 44:e29458976114 | 181 | enem3.d[1] = 30; |
| el17arm | 44:e29458976114 | 182 | enem3.v[1] = 1; |
| el17arm | 40:913339e324b8 | 183 | } |
| el17arm | 40:913339e324b8 | 184 | |
| el17arm | 45:bad704c546d4 | 185 | // block positions for level 2 |
| el17arm | 42:d81c008b0436 | 186 | void Levels::block_pos2() |
| el17arm | 38:55bb9da08a52 | 187 | { |
| el17arm | 42:d81c008b0436 | 188 | sol1.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 189 | sol1.by[1] = 38; |
| el17arm | 41:0cf320f73424 | 190 | |
| el17arm | 42:d81c008b0436 | 191 | sol2.bx[1] = 66; |
| el17arm | 44:e29458976114 | 192 | sol2.by[1] = 32; |
| el17arm | 40:913339e324b8 | 193 | |
| el17arm | 42:d81c008b0436 | 194 | sol3.bx[1] = 66; |
| el17arm | 44:e29458976114 | 195 | sol3.by[1] = 26; |
| el17arm | 41:0cf320f73424 | 196 | |
| el17arm | 42:d81c008b0436 | 197 | sol4.bx[1] = 66; |
| el17arm | 44:e29458976114 | 198 | sol4.by[1] = 20; |
| el17arm | 40:913339e324b8 | 199 | |
| el17arm | 42:d81c008b0436 | 200 | sol5.bx[1] = 66; |
| el17arm | 44:e29458976114 | 201 | sol5.by[1] = 14; |
| el17arm | 41:0cf320f73424 | 202 | } |
| el17arm | 41:0cf320f73424 | 203 | |
| el17arm | 45:bad704c546d4 | 204 | // sinking block positions for level 2 |
| el17arm | 42:d81c008b0436 | 205 | void Levels::soft_pos2() |
| el17arm | 41:0cf320f73424 | 206 | { |
| el17arm | 42:d81c008b0436 | 207 | sof1.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 208 | sof1.sy[1] = 38; |
| el17arm | 42:d81c008b0436 | 209 | sof1.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 210 | |
| el17arm | 42:d81c008b0436 | 211 | sof2.sx1[1] = 72; |
| el17arm | 44:e29458976114 | 212 | sof2.sy[1] = 32; |
| el17arm | 42:d81c008b0436 | 213 | sof2.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 214 | |
| el17arm | 42:d81c008b0436 | 215 | sof3.sx1[1] = 72; |
| el17arm | 44:e29458976114 | 216 | sof3.sy[1] = 26; |
| el17arm | 42:d81c008b0436 | 217 | sof3.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 218 | |
| el17arm | 42:d81c008b0436 | 219 | sof4.sx1[1] = 72; |
| el17arm | 44:e29458976114 | 220 | sof4.sy[1] = 20; |
| el17arm | 42:d81c008b0436 | 221 | sof4.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 222 | |
| el17arm | 42:d81c008b0436 | 223 | sof5.sx1[1] = 72; |
| el17arm | 44:e29458976114 | 224 | sof5.sy[1] = 14; |
| el17arm | 42:d81c008b0436 | 225 | sof5.sx2[1] = 84; |
| el17arm | 40:913339e324b8 | 226 | } |
| el17arm | 40:913339e324b8 | 227 | |
| el17arm | 58:4a826093d9e9 | 228 | /////////////////level 3 objects ///////////////////////// |
| el17arm | 58:4a826093d9e9 | 229 | |
| el17arm | 45:bad704c546d4 | 230 | // platform positions for level 3 |
| el17arm | 44:e29458976114 | 231 | void Levels::level_platforms3(N5110 &lcd) |
| el17arm | 44:e29458976114 | 232 | { |
| el17arm | 44:e29458976114 | 233 | lcd.drawLine(0, 47, 83, 47, 1); |
| el17arm | 44:e29458976114 | 234 | lcd.drawRect(36, 31, 6, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 235 | lcd.drawRect(30, 10, 42, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 236 | lcd.drawRect(78, 20, 6, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 237 | lcd.drawRect(66, 26, 10, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 238 | lcd.drawRect(54, 30, 10, 2, FILL_BLACK); |
| el17arm | 44:e29458976114 | 239 | |
| el17arm | 44:e29458976114 | 240 | } |
| el17arm | 45:bad704c546d4 | 241 | |
| el17arm | 45:bad704c546d4 | 242 | // key positions for level 3 |
| el17arm | 44:e29458976114 | 243 | void Levels::key_pos3() |
| el17arm | 44:e29458976114 | 244 | { |
| el17arm | 44:e29458976114 | 245 | key1.kx[2] = 38; |
| el17arm | 44:e29458976114 | 246 | key1.ky[2] = 7; |
| el17arm | 44:e29458976114 | 247 | |
| el17arm | 44:e29458976114 | 248 | key2.kx[2] = 66; |
| el17arm | 44:e29458976114 | 249 | key2.ky[2] = 7; |
| el17arm | 44:e29458976114 | 250 | |
| el17arm | 44:e29458976114 | 251 | key3.kx[2] = 0; |
| el17arm | 44:e29458976114 | 252 | key3.ky[2] = 5; |
| el17arm | 44:e29458976114 | 253 | |
| el17arm | 44:e29458976114 | 254 | key4.kx[2] = 57; |
| el17arm | 44:e29458976114 | 255 | key4.ky[2] = 27; |
| el17arm | 44:e29458976114 | 256 | |
| el17arm | 44:e29458976114 | 257 | key5.kx[2] = 69; |
| el17arm | 44:e29458976114 | 258 | key5.ky[2] = 23; |
| el17arm | 44:e29458976114 | 259 | } |
| el17arm | 42:d81c008b0436 | 260 | |
| el17arm | 45:bad704c546d4 | 261 | // trap positions for level 3 |
| el17arm | 44:e29458976114 | 262 | void Levels::trap_pos3() |
| el17arm | 44:e29458976114 | 263 | { |
| el17arm | 44:e29458976114 | 264 | trap1.tx[2] = 54; |
| el17arm | 44:e29458976114 | 265 | trap1.ty[2] = 27; |
| el17arm | 44:e29458976114 | 266 | |
| el17arm | 44:e29458976114 | 267 | trap2.tx[2] = 66; |
| el17arm | 44:e29458976114 | 268 | trap2.ty[2] = 23; |
| el17arm | 44:e29458976114 | 269 | |
| el17arm | 44:e29458976114 | 270 | trap3.tx[2] = 61; |
| el17arm | 44:e29458976114 | 271 | trap3.ty[2] = 27; |
| el17arm | 44:e29458976114 | 272 | |
| el17arm | 44:e29458976114 | 273 | trap4.tx[2] = 73; |
| el17arm | 44:e29458976114 | 274 | trap4.ty[2] = 23; |
| el17arm | 44:e29458976114 | 275 | |
| el17arm | 44:e29458976114 | 276 | trap5.tx[2] = 52; |
| el17arm | 44:e29458976114 | 277 | trap5.ty[2] = 7; |
| el17arm | 44:e29458976114 | 278 | } |
| el17arm | 44:e29458976114 | 279 | |
| el17arm | 45:bad704c546d4 | 280 | // enemy positions for level 3 |
| el17arm | 44:e29458976114 | 281 | void Levels::enem_pos3() |
| el17arm | 44:e29458976114 | 282 | { |
| el17arm | 44:e29458976114 | 283 | enem1.ex[2] = 49; |
| el17arm | 44:e29458976114 | 284 | enem1.ey[2] = 5; |
| el17arm | 44:e29458976114 | 285 | enem1.d[2] = 33; |
| el17arm | 44:e29458976114 | 286 | enem1.v[2] = 1; |
| el17arm | 44:e29458976114 | 287 | |
| el17arm | 44:e29458976114 | 288 | enem2.ex[2] = 30; |
| el17arm | 44:e29458976114 | 289 | enem2.ey[2] = 5; |
| el17arm | 44:e29458976114 | 290 | enem2.d[2] = 42; |
| el17arm | 44:e29458976114 | 291 | enem2.v[2] = 1.25; |
| el17arm | 44:e29458976114 | 292 | |
| el17arm | 44:e29458976114 | 293 | enem3.ex[2] = 35; |
| el17arm | 44:e29458976114 | 294 | enem3.ey[2] = 5; |
| el17arm | 44:e29458976114 | 295 | enem3.d[2] = 20; |
| el17arm | 44:e29458976114 | 296 | enem3.v[2] = 1; |
| el17arm | 44:e29458976114 | 297 | } |
| el17arm | 44:e29458976114 | 298 | |
| el17arm | 45:bad704c546d4 | 299 | // block positions for level 3 |
| el17arm | 44:e29458976114 | 300 | void Levels::block_pos3() |
| el17arm | 44:e29458976114 | 301 | { |
| el17arm | 44:e29458976114 | 302 | sol1.bx[2] = 15; |
| el17arm | 44:e29458976114 | 303 | sol1.by[2] = 39; |
| el17arm | 44:e29458976114 | 304 | |
| el17arm | 44:e29458976114 | 305 | sol2.bx[2] = 30; |
| el17arm | 44:e29458976114 | 306 | sol2.by[2] = 31; |
| el17arm | 44:e29458976114 | 307 | |
| el17arm | 44:e29458976114 | 308 | sol3.bx[2] = 15; |
| el17arm | 44:e29458976114 | 309 | sol3.by[2] = 23; |
| el17arm | 44:e29458976114 | 310 | |
| el17arm | 44:e29458976114 | 311 | sol4.bx[2] = 0; |
| el17arm | 44:e29458976114 | 312 | sol4.by[2] = 8; |
| el17arm | 44:e29458976114 | 313 | |
| el17arm | 44:e29458976114 | 314 | sol5.bx[2] = 0; |
| el17arm | 44:e29458976114 | 315 | sol5.by[2] = 16; |
| el17arm | 44:e29458976114 | 316 | } |
| el17arm | 44:e29458976114 | 317 | |
| el17arm | 45:bad704c546d4 | 318 | // sinking block positions for level 3 |
| el17arm | 44:e29458976114 | 319 | void Levels::soft_pos3() |
| el17arm | 44:e29458976114 | 320 | { |
| el17arm | 44:e29458976114 | 321 | sof1.sx1[2] = 12; |
| el17arm | 44:e29458976114 | 322 | sof1.sy[2] = 16; |
| el17arm | 44:e29458976114 | 323 | sof1.sx2[2] = 24; |
| el17arm | 44:e29458976114 | 324 | |
| el17arm | 44:e29458976114 | 325 | sof2.sx1[2] = 72; |
| el17arm | 44:e29458976114 | 326 | sof2.sy[2] = 10; |
| el17arm | 44:e29458976114 | 327 | sof2.sx2[2] = 84; |
| el17arm | 44:e29458976114 | 328 | |
| el17arm | 58:4a826093d9e9 | 329 | } |
| el17arm | 58:4a826093d9e9 | 330 | |
| el17arm | 58:4a826093d9e9 | 331 | /////////////////level 4 objects ///////////////////////// |
| el17arm | 58:4a826093d9e9 | 332 | |
| el17arm | 58:4a826093d9e9 | 333 | void Levels::level_platforms4(N5110 &lcd) |
| el17arm | 58:4a826093d9e9 | 334 | { |
| el17arm | 58:4a826093d9e9 | 335 | lcd.drawLine(0, 47, 83, 47, 1); |
| el17arm | 58:4a826093d9e9 | 336 | lcd.drawRect(36, 31, 6, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 337 | lcd.drawRect(30, 10, 42, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 338 | lcd.drawRect(78, 20, 6, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 339 | lcd.drawRect(66, 26, 10, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 340 | lcd.drawRect(54, 30, 10, 2, FILL_BLACK); |
| el17arm | 58:4a826093d9e9 | 341 | |
| el17arm | 58:4a826093d9e9 | 342 | } |
| el17arm | 58:4a826093d9e9 | 343 | |
| el17arm | 58:4a826093d9e9 | 344 | // key positions for level 4 |
| el17arm | 58:4a826093d9e9 | 345 | void Levels::key_pos4() |
| el17arm | 58:4a826093d9e9 | 346 | { |
| el17arm | 58:4a826093d9e9 | 347 | key1.kx[3] = 38; |
| el17arm | 58:4a826093d9e9 | 348 | key1.ky[3] = 7; |
| el17arm | 58:4a826093d9e9 | 349 | |
| el17arm | 58:4a826093d9e9 | 350 | key2.kx[3] = 66; |
| el17arm | 58:4a826093d9e9 | 351 | key2.ky[3] = 7; |
| el17arm | 58:4a826093d9e9 | 352 | |
| el17arm | 58:4a826093d9e9 | 353 | key3.kx[3] = 0; |
| el17arm | 58:4a826093d9e9 | 354 | key3.ky[3] = 5; |
| el17arm | 58:4a826093d9e9 | 355 | |
| el17arm | 58:4a826093d9e9 | 356 | key4.kx[3] = 57; |
| el17arm | 58:4a826093d9e9 | 357 | key4.ky[3] = 27; |
| el17arm | 58:4a826093d9e9 | 358 | |
| el17arm | 58:4a826093d9e9 | 359 | key5.kx[3] = 69; |
| el17arm | 58:4a826093d9e9 | 360 | key5.ky[3] = 23; |
| el17arm | 58:4a826093d9e9 | 361 | } |
| el17arm | 58:4a826093d9e9 | 362 | |
| el17arm | 58:4a826093d9e9 | 363 | // trap positions for level 4 |
| el17arm | 58:4a826093d9e9 | 364 | void Levels::trap_pos4() |
| el17arm | 58:4a826093d9e9 | 365 | { |
| el17arm | 58:4a826093d9e9 | 366 | trap1.tx[3] = 54; |
| el17arm | 58:4a826093d9e9 | 367 | trap1.ty[3] = 27; |
| el17arm | 58:4a826093d9e9 | 368 | |
| el17arm | 58:4a826093d9e9 | 369 | trap2.tx[3] = 66; |
| el17arm | 58:4a826093d9e9 | 370 | trap2.ty[3] = 23; |
| el17arm | 58:4a826093d9e9 | 371 | |
| el17arm | 58:4a826093d9e9 | 372 | trap3.tx[3] = 61; |
| el17arm | 58:4a826093d9e9 | 373 | trap3.ty[3] = 27; |
| el17arm | 58:4a826093d9e9 | 374 | |
| el17arm | 58:4a826093d9e9 | 375 | trap4.tx[3] = 73; |
| el17arm | 58:4a826093d9e9 | 376 | trap4.ty[3] = 23; |
| el17arm | 58:4a826093d9e9 | 377 | |
| el17arm | 58:4a826093d9e9 | 378 | trap5.tx[3] = 52; |
| el17arm | 58:4a826093d9e9 | 379 | trap5.ty[3] = 7; |
| el17arm | 58:4a826093d9e9 | 380 | } |
| el17arm | 58:4a826093d9e9 | 381 | |
| el17arm | 58:4a826093d9e9 | 382 | // enemy positions for level 4 |
| el17arm | 58:4a826093d9e9 | 383 | void Levels::enem_pos4() |
| el17arm | 58:4a826093d9e9 | 384 | { |
| el17arm | 58:4a826093d9e9 | 385 | enem1.ex[3] = 49; |
| el17arm | 58:4a826093d9e9 | 386 | enem1.ey[3] = 5; |
| el17arm | 58:4a826093d9e9 | 387 | enem1.d[3] = 33; |
| el17arm | 58:4a826093d9e9 | 388 | enem1.v[3] = 1; |
| el17arm | 58:4a826093d9e9 | 389 | |
| el17arm | 58:4a826093d9e9 | 390 | enem2.ex[3] = 30; |
| el17arm | 58:4a826093d9e9 | 391 | enem2.ey[3] = 5; |
| el17arm | 58:4a826093d9e9 | 392 | enem2.d[3] = 42; |
| el17arm | 58:4a826093d9e9 | 393 | enem2.v[3] = 1.25; |
| el17arm | 58:4a826093d9e9 | 394 | |
| el17arm | 58:4a826093d9e9 | 395 | enem3.ex[3] = 35; |
| el17arm | 58:4a826093d9e9 | 396 | enem3.ey[3] = 5; |
| el17arm | 58:4a826093d9e9 | 397 | enem3.d[3] = 20; |
| el17arm | 58:4a826093d9e9 | 398 | enem3.v[3] = 1; |
| el17arm | 58:4a826093d9e9 | 399 | } |
| el17arm | 58:4a826093d9e9 | 400 | |
| el17arm | 58:4a826093d9e9 | 401 | // block positions for level 4 |
| el17arm | 58:4a826093d9e9 | 402 | void Levels::block_pos4() |
| el17arm | 58:4a826093d9e9 | 403 | { |
| el17arm | 58:4a826093d9e9 | 404 | sol1.bx[3] = 15; |
| el17arm | 58:4a826093d9e9 | 405 | sol1.by[3] = 39; |
| el17arm | 58:4a826093d9e9 | 406 | |
| el17arm | 58:4a826093d9e9 | 407 | sol2.bx[3] = 30; |
| el17arm | 58:4a826093d9e9 | 408 | sol2.by[3] = 31; |
| el17arm | 58:4a826093d9e9 | 409 | |
| el17arm | 58:4a826093d9e9 | 410 | sol3.bx[3] = 15; |
| el17arm | 58:4a826093d9e9 | 411 | sol3.by[3] = 23; |
| el17arm | 58:4a826093d9e9 | 412 | |
| el17arm | 58:4a826093d9e9 | 413 | sol4.bx[3] = 0; |
| el17arm | 58:4a826093d9e9 | 414 | sol4.by[3] = 8; |
| el17arm | 58:4a826093d9e9 | 415 | |
| el17arm | 58:4a826093d9e9 | 416 | sol5.bx[3] = 0; |
| el17arm | 58:4a826093d9e9 | 417 | sol5.by[3] = 16; |
| el17arm | 58:4a826093d9e9 | 418 | } |
| el17arm | 58:4a826093d9e9 | 419 | |
| el17arm | 58:4a826093d9e9 | 420 | // sinking block positions for level 4 |
| el17arm | 58:4a826093d9e9 | 421 | void Levels::soft_pos4() |
| el17arm | 58:4a826093d9e9 | 422 | { |
| el17arm | 58:4a826093d9e9 | 423 | sof1.sx1[3] = 12; |
| el17arm | 58:4a826093d9e9 | 424 | sof1.sy[3] = 16; |
| el17arm | 58:4a826093d9e9 | 425 | sof1.sx2[3] = 24; |
| el17arm | 44:e29458976114 | 426 | |
| el17arm | 58:4a826093d9e9 | 427 | sof2.sx1[3] = 72; |
| el17arm | 58:4a826093d9e9 | 428 | sof2.sy[3] = 10; |
| el17arm | 58:4a826093d9e9 | 429 | sof2.sx2[3] = 84; |
| el17arm | 58:4a826093d9e9 | 430 | } |