ELEC2645 (2016/17) / Mbed 2 deprecated Bomb_WeixiTao_el16wt

Dependencies:   mbed

Committer:
weixitao
Date:
Fri May 05 12:53:09 2017 +0000
Revision:
4:402c27b212c1
Parent:
3:dd4678a85a1a
Project_Bomb

Who changed what in which revision?

UserRevisionLine numberNew contents of line
weixitao 3:dd4678a85a1a 1 // pre-processor directives //
weixitao 3:dd4678a85a1a 2 #include "mbed.h"
weixitao 3:dd4678a85a1a 3 #include "N5110.h"
weixitao 3:dd4678a85a1a 4 #include "Gamepad.h"
weixitao 3:dd4678a85a1a 5 #include "hole.h"
weixitao 3:dd4678a85a1a 6 #include "human.h"
weixitao 3:dd4678a85a1a 7 #include "interface.h"
weixitao 3:dd4678a85a1a 8
weixitao 3:dd4678a85a1a 9
weixitao 3:dd4678a85a1a 10 // objects //
weixitao 3:dd4678a85a1a 11 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
weixitao 3:dd4678a85a1a 12 Gamepad pad;
weixitao 3:dd4678a85a1a 13 hole Blackhole;
weixitao 3:dd4678a85a1a 14 human person;
weixitao 3:dd4678a85a1a 15 interface Interface;
weixitao 3:dd4678a85a1a 16
weixitao 3:dd4678a85a1a 17 // prototypes //
weixitao 3:dd4678a85a1a 18 void bool_check();
weixitao 3:dd4678a85a1a 19 void A_bomb();
weixitao 3:dd4678a85a1a 20 void B_bomb();
weixitao 3:dd4678a85a1a 21 void X_bomb();
weixitao 3:dd4678a85a1a 22 void Y_bomb();
weixitao 3:dd4678a85a1a 23 void end();
weixitao 3:dd4678a85a1a 24 void welcome();
weixitao 3:dd4678a85a1a 25 void succeed();
weixitao 3:dd4678a85a1a 26
weixitao 3:dd4678a85a1a 27 // functions //
weixitao 3:dd4678a85a1a 28 void welcome() {
weixitao 3:dd4678a85a1a 29
weixitao 3:dd4678a85a1a 30 lcd.printString(" Bomb! ",0,1);
weixitao 3:dd4678a85a1a 31 lcd.printString(" Press Start ",0,4);
weixitao 3:dd4678a85a1a 32 lcd.refresh();
weixitao 3:dd4678a85a1a 33
weixitao 3:dd4678a85a1a 34 // wait flashing LEDs until start button is pressed
weixitao 3:dd4678a85a1a 35 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
weixitao 3:dd4678a85a1a 36 pad.leds_on();
weixitao 3:dd4678a85a1a 37 wait(0.1);
weixitao 3:dd4678a85a1a 38 pad.leds_off();
weixitao 3:dd4678a85a1a 39 wait(0.1);
weixitao 3:dd4678a85a1a 40 }
weixitao 3:dd4678a85a1a 41
weixitao 3:dd4678a85a1a 42 }
weixitao 3:dd4678a85a1a 43
weixitao 3:dd4678a85a1a 44 int main()
weixitao 3:dd4678a85a1a 45 {
weixitao 3:dd4678a85a1a 46 double x;
weixitao 3:dd4678a85a1a 47 double y;
weixitao 3:dd4678a85a1a 48
weixitao 3:dd4678a85a1a 49 lcd.init();
weixitao 3:dd4678a85a1a 50 pad.init();
weixitao 3:dd4678a85a1a 51 lcd.clear();
weixitao 3:dd4678a85a1a 52 lcd.normalMode(); // normal colour mode
weixitao 3:dd4678a85a1a 53 lcd.setBrightness(0.5); // put LED backlight on 50%
weixitao 3:dd4678a85a1a 54
weixitao 3:dd4678a85a1a 55 Blackhole.hole_place();
weixitao 3:dd4678a85a1a 56
weixitao 3:dd4678a85a1a 57 //printf("First stage\n");
weixitao 3:dd4678a85a1a 58
weixitao 3:dd4678a85a1a 59 welcome();
weixitao 3:dd4678a85a1a 60
weixitao 3:dd4678a85a1a 61
weixitao 3:dd4678a85a1a 62 while (1) {
weixitao 3:dd4678a85a1a 63
weixitao 3:dd4678a85a1a 64 int four = ((rand())%4)+1; //produce a number between 1 to 4
weixitao 3:dd4678a85a1a 65 printf("%i\n", four);
weixitao 4:402c27b212c1 66 /*@param x - the width of human
weixitao 4:402c27b212c1 67 *@param y - the length of human*/
weixitao 3:dd4678a85a1a 68 x = person.humanX();
weixitao 3:dd4678a85a1a 69 //printf("Pass one ");
weixitao 3:dd4678a85a1a 70 y = person.humanY();
weixitao 3:dd4678a85a1a 71 //printf("Pass two");
weixitao 3:dd4678a85a1a 72 person.print_human();
weixitao 3:dd4678a85a1a 73
weixitao 3:dd4678a85a1a 74 Blackhole.hole_show();
weixitao 3:dd4678a85a1a 75 lcd.refresh();
weixitao 3:dd4678a85a1a 76 lcd.clear();
weixitao 3:dd4678a85a1a 77
weixitao 3:dd4678a85a1a 78
weixitao 3:dd4678a85a1a 79 printf("check 1\n");
weixitao 3:dd4678a85a1a 80 bool check = Blackhole.test(x,y);
weixitao 3:dd4678a85a1a 81 printf("%i\n",four);
weixitao 3:dd4678a85a1a 82 pad.check_event(Gamepad::A_PRESSED) == false;
weixitao 3:dd4678a85a1a 83 pad.check_event(Gamepad::B_PRESSED) == false;
weixitao 3:dd4678a85a1a 84 pad.check_event(Gamepad::X_PRESSED) == false;
weixitao 3:dd4678a85a1a 85 pad.check_event(Gamepad::Y_PRESSED) == false;
weixitao 3:dd4678a85a1a 86 if( pad.check_event(Gamepad::R_PRESSED) == true && check )
weixitao 3:dd4678a85a1a 87 {
weixitao 3:dd4678a85a1a 88 //four cases about which button is bomb
weixitao 3:dd4678a85a1a 89 switch (four){
weixitao 3:dd4678a85a1a 90
weixitao 3:dd4678a85a1a 91 case 1 : printf ("bomb_A\n");
weixitao 3:dd4678a85a1a 92 A_bomb();
weixitao 3:dd4678a85a1a 93 break;
weixitao 3:dd4678a85a1a 94
weixitao 3:dd4678a85a1a 95 case 2 : printf ("bomb_B");
weixitao 3:dd4678a85a1a 96 B_bomb();
weixitao 3:dd4678a85a1a 97 break;
weixitao 3:dd4678a85a1a 98
weixitao 3:dd4678a85a1a 99 case 3 : printf ("bomb_X");
weixitao 3:dd4678a85a1a 100 X_bomb();
weixitao 3:dd4678a85a1a 101 break;
weixitao 3:dd4678a85a1a 102
weixitao 3:dd4678a85a1a 103 case 4 : printf ("bomb_Y");
weixitao 3:dd4678a85a1a 104 Y_bomb();
weixitao 3:dd4678a85a1a 105 break;
weixitao 3:dd4678a85a1a 106 }
weixitao 3:dd4678a85a1a 107
weixitao 3:dd4678a85a1a 108
weixitao 3:dd4678a85a1a 109 }
weixitao 3:dd4678a85a1a 110 lcd.refresh();
weixitao 3:dd4678a85a1a 111 lcd.clear();
weixitao 3:dd4678a85a1a 112 }
weixitao 3:dd4678a85a1a 113
weixitao 3:dd4678a85a1a 114 }
weixitao 3:dd4678a85a1a 115
weixitao 3:dd4678a85a1a 116 void bool_check()
weixitao 3:dd4678a85a1a 117 {
weixitao 3:dd4678a85a1a 118
weixitao 3:dd4678a85a1a 119 }
weixitao 3:dd4678a85a1a 120
weixitao 3:dd4678a85a1a 121 void A_bomb() //when button A is bomb, press A game is over
weixitao 3:dd4678a85a1a 122 {
weixitao 3:dd4678a85a1a 123 bool first = true;
weixitao 3:dd4678a85a1a 124 bool second = true;
weixitao 3:dd4678a85a1a 125 bool third = true;
weixitao 3:dd4678a85a1a 126 bool fourth = true;
weixitao 3:dd4678a85a1a 127
weixitao 3:dd4678a85a1a 128 bool check1 = false;
weixitao 3:dd4678a85a1a 129 bool check2 = false;
weixitao 3:dd4678a85a1a 130 bool check3 = false;
weixitao 3:dd4678a85a1a 131
weixitao 3:dd4678a85a1a 132 bool_check();
weixitao 3:dd4678a85a1a 133 while(1)
weixitao 3:dd4678a85a1a 134 {
weixitao 3:dd4678a85a1a 135 if(pad.check_event(Gamepad::B_PRESSED) == true)
weixitao 3:dd4678a85a1a 136 {
weixitao 3:dd4678a85a1a 137 second = false;
weixitao 3:dd4678a85a1a 138 check1 = true;
weixitao 3:dd4678a85a1a 139 }
weixitao 3:dd4678a85a1a 140 else if(pad.check_event(Gamepad::X_PRESSED) == true)
weixitao 3:dd4678a85a1a 141 {
weixitao 3:dd4678a85a1a 142 third = false;
weixitao 3:dd4678a85a1a 143 check2 = true;
weixitao 3:dd4678a85a1a 144 printf("X is pressed");
weixitao 3:dd4678a85a1a 145 }
weixitao 3:dd4678a85a1a 146 else if(pad.check_event(Gamepad::Y_PRESSED) == true)
weixitao 3:dd4678a85a1a 147 {
weixitao 3:dd4678a85a1a 148 fourth = false;
weixitao 3:dd4678a85a1a 149 check3 = true;
weixitao 3:dd4678a85a1a 150 }
weixitao 3:dd4678a85a1a 151 else if(pad.check_event(Gamepad::A_PRESSED) == true) // bomb A
weixitao 3:dd4678a85a1a 152 {
weixitao 3:dd4678a85a1a 153 end();
weixitao 3:dd4678a85a1a 154 }
weixitao 3:dd4678a85a1a 155 lcd.refresh();
weixitao 3:dd4678a85a1a 156 lcd.clear();
weixitao 3:dd4678a85a1a 157 if(first)
weixitao 3:dd4678a85a1a 158 {
weixitao 3:dd4678a85a1a 159 Interface.A();
weixitao 3:dd4678a85a1a 160 }
weixitao 3:dd4678a85a1a 161 if(second)
weixitao 3:dd4678a85a1a 162 {
weixitao 3:dd4678a85a1a 163 Interface.B();
weixitao 3:dd4678a85a1a 164 }
weixitao 3:dd4678a85a1a 165 if(third)
weixitao 3:dd4678a85a1a 166 {
weixitao 3:dd4678a85a1a 167 Interface.X();
weixitao 3:dd4678a85a1a 168 }
weixitao 3:dd4678a85a1a 169 if(fourth)
weixitao 3:dd4678a85a1a 170 {
weixitao 3:dd4678a85a1a 171 Interface.Y();
weixitao 3:dd4678a85a1a 172 }
weixitao 3:dd4678a85a1a 173 if(check1 && check2 && check3)
weixitao 3:dd4678a85a1a 174 {
weixitao 3:dd4678a85a1a 175 succeed();
weixitao 3:dd4678a85a1a 176 }
weixitao 3:dd4678a85a1a 177 Interface.border();
weixitao 3:dd4678a85a1a 178 lcd.refresh();
weixitao 3:dd4678a85a1a 179 lcd.clear();
weixitao 3:dd4678a85a1a 180 } // end of A press
weixitao 3:dd4678a85a1a 181 }
weixitao 3:dd4678a85a1a 182
weixitao 3:dd4678a85a1a 183
weixitao 3:dd4678a85a1a 184 void B_bomb() // when botton B is bomb, press B game is over
weixitao 3:dd4678a85a1a 185 {
weixitao 3:dd4678a85a1a 186 bool first = true;
weixitao 3:dd4678a85a1a 187 bool second = true;
weixitao 3:dd4678a85a1a 188 bool third = true;
weixitao 3:dd4678a85a1a 189 bool fourth = true;
weixitao 3:dd4678a85a1a 190
weixitao 3:dd4678a85a1a 191 bool check1 = false;
weixitao 3:dd4678a85a1a 192 bool check2 = false;
weixitao 3:dd4678a85a1a 193 bool check3 = false;
weixitao 3:dd4678a85a1a 194
weixitao 3:dd4678a85a1a 195 bool_check();
weixitao 3:dd4678a85a1a 196 while(1)
weixitao 3:dd4678a85a1a 197 {
weixitao 3:dd4678a85a1a 198 if(pad.check_event(Gamepad::A_PRESSED) == true)
weixitao 3:dd4678a85a1a 199 {
weixitao 3:dd4678a85a1a 200 second = false;
weixitao 3:dd4678a85a1a 201 check1 = true;
weixitao 3:dd4678a85a1a 202 }
weixitao 3:dd4678a85a1a 203 else if(pad.check_event(Gamepad::X_PRESSED) == true)
weixitao 3:dd4678a85a1a 204 {
weixitao 3:dd4678a85a1a 205 third = false;
weixitao 3:dd4678a85a1a 206 check2 = true;
weixitao 3:dd4678a85a1a 207 printf("X is pressed");
weixitao 3:dd4678a85a1a 208 }
weixitao 3:dd4678a85a1a 209 else if(pad.check_event(Gamepad::Y_PRESSED) == true)
weixitao 3:dd4678a85a1a 210 {
weixitao 3:dd4678a85a1a 211 fourth = false;
weixitao 3:dd4678a85a1a 212 check3 = true;
weixitao 3:dd4678a85a1a 213 }
weixitao 3:dd4678a85a1a 214 else if(pad.check_event(Gamepad::B_PRESSED) == true) // bomb B
weixitao 3:dd4678a85a1a 215 {
weixitao 3:dd4678a85a1a 216 end();
weixitao 3:dd4678a85a1a 217 }
weixitao 3:dd4678a85a1a 218 lcd.refresh();
weixitao 3:dd4678a85a1a 219 lcd.clear();
weixitao 3:dd4678a85a1a 220 if(first)
weixitao 3:dd4678a85a1a 221 {
weixitao 3:dd4678a85a1a 222 Interface.B();
weixitao 3:dd4678a85a1a 223 }
weixitao 3:dd4678a85a1a 224 if(second)
weixitao 3:dd4678a85a1a 225 {
weixitao 3:dd4678a85a1a 226 Interface.A();
weixitao 3:dd4678a85a1a 227 }
weixitao 3:dd4678a85a1a 228 if(third)
weixitao 3:dd4678a85a1a 229 {
weixitao 3:dd4678a85a1a 230 Interface.X();
weixitao 3:dd4678a85a1a 231 }
weixitao 3:dd4678a85a1a 232 if(fourth)
weixitao 3:dd4678a85a1a 233 {
weixitao 3:dd4678a85a1a 234 Interface.Y();
weixitao 3:dd4678a85a1a 235 }
weixitao 3:dd4678a85a1a 236 if(check1 && check2 && check3)
weixitao 3:dd4678a85a1a 237 {
weixitao 3:dd4678a85a1a 238 succeed();
weixitao 3:dd4678a85a1a 239 }
weixitao 3:dd4678a85a1a 240 Interface.border();
weixitao 3:dd4678a85a1a 241 lcd.refresh();
weixitao 3:dd4678a85a1a 242 lcd.clear();
weixitao 3:dd4678a85a1a 243 } // end of B press
weixitao 3:dd4678a85a1a 244 }
weixitao 3:dd4678a85a1a 245
weixitao 3:dd4678a85a1a 246 void X_bomb() //when botton X is bomb, press X game is over
weixitao 3:dd4678a85a1a 247 {
weixitao 3:dd4678a85a1a 248 bool first = true;
weixitao 3:dd4678a85a1a 249 bool second = true;
weixitao 3:dd4678a85a1a 250 bool third = true;
weixitao 3:dd4678a85a1a 251 bool fourth = true;
weixitao 3:dd4678a85a1a 252
weixitao 3:dd4678a85a1a 253 bool check1 = false;
weixitao 3:dd4678a85a1a 254 bool check2 = false;
weixitao 3:dd4678a85a1a 255 bool check3 = false;
weixitao 3:dd4678a85a1a 256
weixitao 3:dd4678a85a1a 257 bool_check();
weixitao 3:dd4678a85a1a 258 while(1)
weixitao 3:dd4678a85a1a 259 {
weixitao 3:dd4678a85a1a 260 if(pad.check_event(Gamepad::A_PRESSED) == true)
weixitao 3:dd4678a85a1a 261 {
weixitao 3:dd4678a85a1a 262 second = false;
weixitao 3:dd4678a85a1a 263 check1 = true;
weixitao 3:dd4678a85a1a 264 }
weixitao 3:dd4678a85a1a 265 else if(pad.check_event(Gamepad::B_PRESSED) == true)
weixitao 3:dd4678a85a1a 266 {
weixitao 3:dd4678a85a1a 267 third = false;
weixitao 3:dd4678a85a1a 268 check2 = true;
weixitao 3:dd4678a85a1a 269 printf("B is pressed");
weixitao 3:dd4678a85a1a 270 }
weixitao 3:dd4678a85a1a 271 else if(pad.check_event(Gamepad::Y_PRESSED) == true)
weixitao 3:dd4678a85a1a 272 {
weixitao 3:dd4678a85a1a 273 fourth = false;
weixitao 3:dd4678a85a1a 274 check3 = true;
weixitao 3:dd4678a85a1a 275 }
weixitao 3:dd4678a85a1a 276 else if(pad.check_event(Gamepad::X_PRESSED) == true) // bomb X
weixitao 3:dd4678a85a1a 277 {
weixitao 3:dd4678a85a1a 278 end();
weixitao 3:dd4678a85a1a 279 }
weixitao 3:dd4678a85a1a 280 lcd.refresh();
weixitao 3:dd4678a85a1a 281 lcd.clear();
weixitao 3:dd4678a85a1a 282 if(first)
weixitao 3:dd4678a85a1a 283 {
weixitao 3:dd4678a85a1a 284 Interface.X();
weixitao 3:dd4678a85a1a 285 }
weixitao 3:dd4678a85a1a 286 if(second)
weixitao 3:dd4678a85a1a 287 {
weixitao 3:dd4678a85a1a 288 Interface.A();
weixitao 3:dd4678a85a1a 289 }
weixitao 3:dd4678a85a1a 290 if(third)
weixitao 3:dd4678a85a1a 291 {
weixitao 3:dd4678a85a1a 292 Interface.B();
weixitao 3:dd4678a85a1a 293 }
weixitao 3:dd4678a85a1a 294 if(fourth)
weixitao 3:dd4678a85a1a 295 {
weixitao 3:dd4678a85a1a 296 Interface.Y();
weixitao 3:dd4678a85a1a 297 }
weixitao 3:dd4678a85a1a 298 if(check1 && check2 && check3)
weixitao 3:dd4678a85a1a 299 {
weixitao 3:dd4678a85a1a 300 succeed();
weixitao 3:dd4678a85a1a 301 }
weixitao 3:dd4678a85a1a 302 Interface.border();
weixitao 3:dd4678a85a1a 303 lcd.refresh();
weixitao 3:dd4678a85a1a 304 lcd.clear();
weixitao 3:dd4678a85a1a 305 } // end of X press
weixitao 3:dd4678a85a1a 306 }
weixitao 3:dd4678a85a1a 307
weixitao 3:dd4678a85a1a 308 void Y_bomb() // when botton Y is bomb, press Y game is over
weixitao 3:dd4678a85a1a 309 {
weixitao 3:dd4678a85a1a 310 bool first = true;
weixitao 3:dd4678a85a1a 311 bool second = true;
weixitao 3:dd4678a85a1a 312 bool third = true;
weixitao 3:dd4678a85a1a 313 bool fourth = true;
weixitao 3:dd4678a85a1a 314
weixitao 3:dd4678a85a1a 315 bool check1 = false;
weixitao 3:dd4678a85a1a 316 bool check2 = false;
weixitao 3:dd4678a85a1a 317 bool check3 = false;
weixitao 3:dd4678a85a1a 318
weixitao 3:dd4678a85a1a 319 bool_check();
weixitao 3:dd4678a85a1a 320 while(1)
weixitao 3:dd4678a85a1a 321 {
weixitao 3:dd4678a85a1a 322 if(pad.check_event(Gamepad::A_PRESSED) == true)
weixitao 3:dd4678a85a1a 323 {
weixitao 3:dd4678a85a1a 324 second = false;
weixitao 3:dd4678a85a1a 325 check1 = true;
weixitao 3:dd4678a85a1a 326 printf("A is pressed");
weixitao 3:dd4678a85a1a 327 }
weixitao 3:dd4678a85a1a 328 else if(pad.check_event(Gamepad::B_PRESSED) == true)
weixitao 3:dd4678a85a1a 329 {
weixitao 3:dd4678a85a1a 330 third = false;
weixitao 3:dd4678a85a1a 331 check2 = true;
weixitao 3:dd4678a85a1a 332 }
weixitao 3:dd4678a85a1a 333 else if(pad.check_event(Gamepad::X_PRESSED) == true)
weixitao 3:dd4678a85a1a 334 {
weixitao 3:dd4678a85a1a 335 fourth = false;
weixitao 3:dd4678a85a1a 336 check3 = true;
weixitao 3:dd4678a85a1a 337 }
weixitao 3:dd4678a85a1a 338 else if(pad.check_event(Gamepad::Y_PRESSED) == true) // bomb Y
weixitao 3:dd4678a85a1a 339 {
weixitao 3:dd4678a85a1a 340 end();
weixitao 3:dd4678a85a1a 341 }
weixitao 3:dd4678a85a1a 342 lcd.refresh();
weixitao 3:dd4678a85a1a 343 lcd.clear();
weixitao 3:dd4678a85a1a 344 if(first)
weixitao 3:dd4678a85a1a 345 {
weixitao 3:dd4678a85a1a 346 Interface.Y();
weixitao 3:dd4678a85a1a 347 }
weixitao 3:dd4678a85a1a 348 if(second)
weixitao 3:dd4678a85a1a 349 {
weixitao 3:dd4678a85a1a 350 Interface.A();
weixitao 3:dd4678a85a1a 351 }
weixitao 3:dd4678a85a1a 352 if(third)
weixitao 3:dd4678a85a1a 353 {
weixitao 3:dd4678a85a1a 354 Interface.B();
weixitao 3:dd4678a85a1a 355 }
weixitao 3:dd4678a85a1a 356 if(fourth)
weixitao 3:dd4678a85a1a 357 {
weixitao 3:dd4678a85a1a 358 Interface.X();
weixitao 3:dd4678a85a1a 359 }
weixitao 3:dd4678a85a1a 360 if(check1 && check2 && check3)
weixitao 3:dd4678a85a1a 361 {
weixitao 3:dd4678a85a1a 362 succeed();
weixitao 3:dd4678a85a1a 363 }
weixitao 3:dd4678a85a1a 364 Interface.border();
weixitao 3:dd4678a85a1a 365 lcd.refresh();
weixitao 3:dd4678a85a1a 366 lcd.clear();
weixitao 3:dd4678a85a1a 367 } // end of Y press
weixitao 3:dd4678a85a1a 368 }
weixitao 3:dd4678a85a1a 369
weixitao 3:dd4678a85a1a 370 void end()//press the wrong button
weixitao 3:dd4678a85a1a 371 {
weixitao 3:dd4678a85a1a 372 pad.tone(800.0, 1);
weixitao 3:dd4678a85a1a 373 // wait flashing LEDs until back button is pressed
weixitao 3:dd4678a85a1a 374 pad.check_event(Gamepad::BACK_PRESSED) == false;
weixitao 3:dd4678a85a1a 375 while ( pad.check_event(Gamepad::BACK_PRESSED) == false) {
weixitao 3:dd4678a85a1a 376 pad.leds_on();
weixitao 3:dd4678a85a1a 377 wait(0.1);
weixitao 3:dd4678a85a1a 378 pad.leds_off();
weixitao 3:dd4678a85a1a 379 wait(0.1);
weixitao 3:dd4678a85a1a 380
weixitao 3:dd4678a85a1a 381 lcd.printString(" Game Over ",0,2);
weixitao 3:dd4678a85a1a 382 lcd.refresh();
weixitao 3:dd4678a85a1a 383 lcd.clear();
weixitao 3:dd4678a85a1a 384 }
weixitao 3:dd4678a85a1a 385 main();
weixitao 3:dd4678a85a1a 386 }
weixitao 3:dd4678a85a1a 387
weixitao 3:dd4678a85a1a 388 void succeed() //press three right button
weixitao 3:dd4678a85a1a 389 {
weixitao 3:dd4678a85a1a 390 lcd.refresh();
weixitao 3:dd4678a85a1a 391 lcd.clear();
weixitao 3:dd4678a85a1a 392 // wait flashing LEDs until back button is pressed
weixitao 3:dd4678a85a1a 393 pad.check_event(Gamepad::BACK_PRESSED) == false;
weixitao 3:dd4678a85a1a 394 while ( pad.check_event(Gamepad::BACK_PRESSED) == false) {
weixitao 3:dd4678a85a1a 395 pad.leds_on();
weixitao 3:dd4678a85a1a 396 wait(0.1);
weixitao 3:dd4678a85a1a 397 pad.leds_off();
weixitao 3:dd4678a85a1a 398 wait(0.1);
weixitao 3:dd4678a85a1a 399
weixitao 3:dd4678a85a1a 400 lcd.printString("Congratulation",0,2);
weixitao 3:dd4678a85a1a 401 lcd.refresh();
weixitao 3:dd4678a85a1a 402 lcd.clear();
weixitao 3:dd4678a85a1a 403 }
weixitao 3:dd4678a85a1a 404 main();
weixitao 3:dd4678a85a1a 405
weixitao 3:dd4678a85a1a 406 }
weixitao 3:dd4678a85a1a 407
weixitao 3:dd4678a85a1a 408
weixitao 3:dd4678a85a1a 409
weixitao 3:dd4678a85a1a 410