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@42:d81c008b0436, 2019-04-16 (annotated)
- Committer:
- el17arm
- Date:
- Tue Apr 16 18:18:44 2019 +0000
- Revision:
- 42:d81c008b0436
- Parent:
- Level1/Level1.cpp@41:0cf320f73424
- Child:
- 43:1ec6b6293c6b
fixed problem of player occasionally falling into the 'solid blocks'
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 | 18:ff0a53dcb862 | 10 | |
| el17arm | 42:d81c008b0436 | 11 | void Levels::level_platforms1(N5110 &lcd) |
| el17arm | 18:ff0a53dcb862 | 12 | { |
| el17arm | 20:78bd235f8caa | 13 | lcd.drawLine(0,47,83,47, 1); |
| el17arm | 26:bce40bf4c9fc | 14 | lcd.drawRect(11,39, 38, 2, FILL_BLACK); |
| el17arm | 38:55bb9da08a52 | 15 | lcd.drawRect(65,36, 30, 2, FILL_BLACK); |
| el17arm | 42:d81c008b0436 | 16 | lcd.drawRect(75,29, 9, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 17 | lcd.drawRect(22, 25, 48, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 18 | lcd.drawRect(0, 25, 12, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 19 | lcd.drawRect(0, 17, 8, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 20 | lcd.drawRect(0, 9, 27, 2, FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 21 | lcd.drawRect(39, 9, 7, 2, FILL_BLACK); |
| el17arm | 41:0cf320f73424 | 22 | lcd.drawRect(53,9,32,2,FILL_BLACK); |
| el17arm | 18:ff0a53dcb862 | 23 | } |
| el17arm | 18:ff0a53dcb862 | 24 | |
| el17arm | 18:ff0a53dcb862 | 25 | |
| el17arm | 18:ff0a53dcb862 | 26 | |
| el17arm | 42:d81c008b0436 | 27 | void Levels::trap_pos1() |
| el17arm | 20:78bd235f8caa | 28 | { |
| el17arm | 40:913339e324b8 | 29 | trap1.tx[0] = 25; |
| el17arm | 40:913339e324b8 | 30 | trap1.ty[0] = 44; |
| el17arm | 40:913339e324b8 | 31 | trap2.tx[0] = 58; |
| el17arm | 40:913339e324b8 | 32 | trap2.ty[0] = 6; |
| el17arm | 40:913339e324b8 | 33 | trap3.tx[0] = 75; |
| el17arm | 40:913339e324b8 | 34 | trap3.ty[0] = 6; |
| el17arm | 41:0cf320f73424 | 35 | trap4.tx[0] = 0; |
| el17arm | 41:0cf320f73424 | 36 | trap4.ty[0] = 0; |
| el17arm | 41:0cf320f73424 | 37 | trap5.tx[0] = 25; |
| el17arm | 41:0cf320f73424 | 38 | trap5.ty[0] = 36; |
| el17arm | 37:4d525a37d5d2 | 39 | } |
| el17arm | 37:4d525a37d5d2 | 40 | |
| el17arm | 42:d81c008b0436 | 41 | void Levels::key_pos1() |
| el17arm | 40:913339e324b8 | 42 | { |
| el17arm | 40:913339e324b8 | 43 | key1.kx[0] = 79; |
| el17arm | 40:913339e324b8 | 44 | key1.ky[0] = 12; |
| el17arm | 40:913339e324b8 | 45 | key2.kx[0] = 36; |
| el17arm | 40:913339e324b8 | 46 | key2.ky[0] = 22; |
| el17arm | 40:913339e324b8 | 47 | key3.kx[0] = 40; |
| el17arm | 40:913339e324b8 | 48 | key3.ky[0] = 6; |
| el17arm | 40:913339e324b8 | 49 | key4.kx[0] = 62; |
| el17arm | 40:913339e324b8 | 50 | key4.ky[0] = 6; |
| el17arm | 40:913339e324b8 | 51 | key5.kx[0] = 75; |
| el17arm | 40:913339e324b8 | 52 | key5.ky[0] = 0; |
| el17arm | 40:913339e324b8 | 53 | } |
| el17arm | 40:913339e324b8 | 54 | |
| el17arm | 42:d81c008b0436 | 55 | void Levels::block_pos1() |
| el17arm | 37:4d525a37d5d2 | 56 | { |
| el17arm | 40:913339e324b8 | 57 | sol1.bx[0] = 49; |
| el17arm | 40:913339e324b8 | 58 | sol1.by[0] = 36; |
| el17arm | 41:0cf320f73424 | 59 | |
| el17arm | 40:913339e324b8 | 60 | sol2.bx[0] = 42; |
| el17arm | 40:913339e324b8 | 61 | sol2.by[0] = 22; |
| el17arm | 40:913339e324b8 | 62 | |
| el17arm | 41:0cf320f73424 | 63 | sol3.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 64 | sol3.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 65 | |
| el17arm | 41:0cf320f73424 | 66 | sol4.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 67 | sol4.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 68 | |
| el17arm | 41:0cf320f73424 | 69 | sol5.bx[0] = -10; |
| el17arm | 41:0cf320f73424 | 70 | sol5.by[0] = -10; |
| el17arm | 41:0cf320f73424 | 71 | } |
| el17arm | 41:0cf320f73424 | 72 | |
| el17arm | 42:d81c008b0436 | 73 | void Levels::soft_pos1() |
| el17arm | 41:0cf320f73424 | 74 | { |
| el17arm | 41:0cf320f73424 | 75 | sof1.sx1[0] = 55; |
| el17arm | 40:913339e324b8 | 76 | sof1.sy[0] = 36; |
| el17arm | 41:0cf320f73424 | 77 | sof1.sx2[0] = 65; |
| el17arm | 40:913339e324b8 | 78 | |
| el17arm | 41:0cf320f73424 | 79 | sof2.sx1[0] = 27; |
| el17arm | 40:913339e324b8 | 80 | sof2.sy[0] = 9; |
| el17arm | 41:0cf320f73424 | 81 | sof2.sx2[0] = 39; |
| el17arm | 41:0cf320f73424 | 82 | |
| el17arm | 41:0cf320f73424 | 83 | sof3.sx1[0] = 46; |
| el17arm | 41:0cf320f73424 | 84 | sof3.sy[0] = 9; |
| el17arm | 41:0cf320f73424 | 85 | sof3.sx2[0] = 52; |
| el17arm | 40:913339e324b8 | 86 | |
| el17arm | 41:0cf320f73424 | 87 | sof4.sx1[0] = 0; |
| el17arm | 41:0cf320f73424 | 88 | sof4.sy[0] = 0; |
| el17arm | 41:0cf320f73424 | 89 | sof4.sx2[0] = 0; |
| el17arm | 41:0cf320f73424 | 90 | |
| el17arm | 41:0cf320f73424 | 91 | sof4.sx1[0] = 0; |
| el17arm | 41:0cf320f73424 | 92 | sof4.sy[0] = 0; |
| el17arm | 41:0cf320f73424 | 93 | sof4.sx2[0] = 0; |
| el17arm | 40:913339e324b8 | 94 | } |
| el17arm | 40:913339e324b8 | 95 | |
| el17arm | 42:d81c008b0436 | 96 | void Levels::enem_pos1() |
| el17arm | 40:913339e324b8 | 97 | { |
| el17arm | 40:913339e324b8 | 98 | enem1.ex[0] = 22; |
| el17arm | 40:913339e324b8 | 99 | enem1.ey[0] = 20; |
| el17arm | 40:913339e324b8 | 100 | enem1.d[0] = 36; |
| el17arm | 40:913339e324b8 | 101 | enem1.v[0] = 0.5; |
| el17arm | 40:913339e324b8 | 102 | |
| el17arm | 40:913339e324b8 | 103 | enem2.ex[0] = 0; |
| el17arm | 40:913339e324b8 | 104 | enem2.ey[0] = 4; |
| el17arm | 40:913339e324b8 | 105 | enem2.d[0] = 26; |
| el17arm | 40:913339e324b8 | 106 | enem2.v[0] = 1; |
| el17arm | 41:0cf320f73424 | 107 | |
| el17arm | 42:d81c008b0436 | 108 | enem3.ex[0] = 49; |
| el17arm | 42:d81c008b0436 | 109 | enem3.ey[0] = 42; |
| el17arm | 42:d81c008b0436 | 110 | enem3.d[0] = 27; |
| el17arm | 42:d81c008b0436 | 111 | enem3.v[0] = 1; |
| el17arm | 40:913339e324b8 | 112 | } |
| el17arm | 40:913339e324b8 | 113 | |
| el17arm | 42:d81c008b0436 | 114 | void Levels::level_exits(N5110 &lcd) |
| el17arm | 40:913339e324b8 | 115 | { |
| el17arm | 40:913339e324b8 | 116 | exit1.lx[0] = 78; |
| el17arm | 40:913339e324b8 | 117 | exit1.ly[0] = 41; |
| el17arm | 40:913339e324b8 | 118 | |
| el17arm | 42:d81c008b0436 | 119 | exit1.lx[1] = 79; |
| el17arm | 40:913339e324b8 | 120 | exit1.ly[1] = 41; |
| el17arm | 41:0cf320f73424 | 121 | |
| el17arm | 41:0cf320f73424 | 122 | exit1.lx[2] = 70; |
| el17arm | 41:0cf320f73424 | 123 | exit1.ly[2] = 41; |
| el17arm | 41:0cf320f73424 | 124 | |
| el17arm | 41:0cf320f73424 | 125 | exit1.lx[3] = 70; |
| el17arm | 41:0cf320f73424 | 126 | exit1.ly[3] = 41; |
| el17arm | 38:55bb9da08a52 | 127 | } |
| el17arm | 38:55bb9da08a52 | 128 | |
| el17arm | 42:d81c008b0436 | 129 | void Levels::level_platforms2(N5110 &lcd) |
| el17arm | 42:d81c008b0436 | 130 | { |
| el17arm | 42:d81c008b0436 | 131 | lcd.drawLine(0,47,83,47,1); |
| el17arm | 42:d81c008b0436 | 132 | lcd.drawRect(4,35, 12, 2, FILL_BLACK); |
| el17arm | 42:d81c008b0436 | 133 | |
| el17arm | 42:d81c008b0436 | 134 | } |
| el17arm | 42:d81c008b0436 | 135 | void Levels::key_pos2() |
| el17arm | 38:55bb9da08a52 | 136 | { |
| el17arm | 40:913339e324b8 | 137 | key1.kx[1] = 10; |
| el17arm | 40:913339e324b8 | 138 | key1.ky[1] = 44; |
| el17arm | 40:913339e324b8 | 139 | key2.kx[1] = 18; |
| el17arm | 40:913339e324b8 | 140 | key2.ky[1] = 44; |
| el17arm | 40:913339e324b8 | 141 | key3.kx[1] = 22; |
| el17arm | 40:913339e324b8 | 142 | key3.ky[1] = 44; |
| el17arm | 40:913339e324b8 | 143 | key4.kx[1] = 26; |
| el17arm | 40:913339e324b8 | 144 | key4.ky[1] = 44; |
| el17arm | 40:913339e324b8 | 145 | key5.kx[1] = 30; |
| el17arm | 40:913339e324b8 | 146 | key5.ky[1] = 44; |
| el17arm | 40:913339e324b8 | 147 | } |
| el17arm | 40:913339e324b8 | 148 | |
| el17arm | 42:d81c008b0436 | 149 | void Levels::trap_pos2() |
| el17arm | 40:913339e324b8 | 150 | { |
| el17arm | 40:913339e324b8 | 151 | trap1.tx[1] = 25; |
| el17arm | 40:913339e324b8 | 152 | trap1.ty[1] = 44; |
| el17arm | 40:913339e324b8 | 153 | trap2.tx[1] = 58; |
| el17arm | 40:913339e324b8 | 154 | trap2.ty[1] = 6; |
| el17arm | 40:913339e324b8 | 155 | trap3.tx[1] = 75; |
| el17arm | 40:913339e324b8 | 156 | trap3.ty[1] = 6; |
| el17arm | 40:913339e324b8 | 157 | trap4.tx[1] = 23; |
| el17arm | 40:913339e324b8 | 158 | trap4.ty[1] = 6; |
| el17arm | 41:0cf320f73424 | 159 | trap5.tx[1] = -10; |
| el17arm | 41:0cf320f73424 | 160 | trap5.ty[1] = -10; |
| el17arm | 38:55bb9da08a52 | 161 | } |
| el17arm | 38:55bb9da08a52 | 162 | |
| el17arm | 42:d81c008b0436 | 163 | void Levels::enem_pos2() |
| el17arm | 40:913339e324b8 | 164 | { |
| el17arm | 40:913339e324b8 | 165 | enem1.f[1] = 0; |
| el17arm | 40:913339e324b8 | 166 | enem1.ex[1] = 22; |
| el17arm | 40:913339e324b8 | 167 | enem1.ey[1] = 20; |
| el17arm | 40:913339e324b8 | 168 | enem1.d[1] = 36; |
| el17arm | 40:913339e324b8 | 169 | enem1.v[1] = 0.5; |
| el17arm | 40:913339e324b8 | 170 | |
| el17arm | 41:0cf320f73424 | 171 | enem2.f[1] = 1; |
| el17arm | 40:913339e324b8 | 172 | enem2.ex[1] = 10; |
| el17arm | 40:913339e324b8 | 173 | enem2.ey[1] = 4; |
| el17arm | 40:913339e324b8 | 174 | enem2.d[1] = 26; |
| el17arm | 40:913339e324b8 | 175 | enem2.v[1] = 1; |
| el17arm | 40:913339e324b8 | 176 | } |
| el17arm | 40:913339e324b8 | 177 | |
| el17arm | 42:d81c008b0436 | 178 | void Levels::block_pos2() |
| el17arm | 38:55bb9da08a52 | 179 | { |
| el17arm | 42:d81c008b0436 | 180 | sol1.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 181 | sol1.by[1] = 38; |
| el17arm | 41:0cf320f73424 | 182 | |
| el17arm | 42:d81c008b0436 | 183 | sol2.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 184 | sol2.by[1] = 33; |
| el17arm | 40:913339e324b8 | 185 | |
| el17arm | 42:d81c008b0436 | 186 | sol3.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 187 | sol3.by[1] = 28; |
| el17arm | 41:0cf320f73424 | 188 | |
| el17arm | 42:d81c008b0436 | 189 | sol4.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 190 | sol4.by[1] = 23; |
| el17arm | 40:913339e324b8 | 191 | |
| el17arm | 42:d81c008b0436 | 192 | sol5.bx[1] = 66; |
| el17arm | 42:d81c008b0436 | 193 | sol5.by[1] = 18; |
| el17arm | 41:0cf320f73424 | 194 | } |
| el17arm | 41:0cf320f73424 | 195 | |
| el17arm | 42:d81c008b0436 | 196 | void Levels::soft_pos2() |
| el17arm | 41:0cf320f73424 | 197 | { |
| el17arm | 42:d81c008b0436 | 198 | sof1.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 199 | sof1.sy[1] = 38; |
| el17arm | 42:d81c008b0436 | 200 | sof1.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 201 | |
| el17arm | 42:d81c008b0436 | 202 | sof2.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 203 | sof2.sy[1] = 33; |
| el17arm | 42:d81c008b0436 | 204 | sof2.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 205 | |
| el17arm | 42:d81c008b0436 | 206 | sof3.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 207 | sof3.sy[1] = 28; |
| el17arm | 42:d81c008b0436 | 208 | sof3.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 209 | |
| el17arm | 42:d81c008b0436 | 210 | sof4.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 211 | sof4.sy[1] = 23; |
| el17arm | 42:d81c008b0436 | 212 | sof4.sx2[1] = 84; |
| el17arm | 41:0cf320f73424 | 213 | |
| el17arm | 42:d81c008b0436 | 214 | sof5.sx1[1] = 72; |
| el17arm | 42:d81c008b0436 | 215 | sof5.sy[1] = 18; |
| el17arm | 42:d81c008b0436 | 216 | sof5.sx2[1] = 84; |
| el17arm | 40:913339e324b8 | 217 | } |
| el17arm | 40:913339e324b8 | 218 | |
| el17arm | 42:d81c008b0436 | 219 |