ECE 4180 - Project

Dependencies:   4DGL-uLCD-SE SDFileSystem mbed-rtos mbed wave_player_appbd

Committer:
laxman7117
Date:
Wed Oct 26 18:34:25 2016 +0000
Revision:
0:0080ab59b360
v1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
laxman7117 0:0080ab59b360 1 #include "mbed.h"
laxman7117 0:0080ab59b360 2 #include "uLCD_4DGL.h"
laxman7117 0:0080ab59b360 3 #include "Joystick.h"
laxman7117 0:0080ab59b360 4 #include "SDFileSystem.h"
laxman7117 0:0080ab59b360 5 #include "wave_player.h"
laxman7117 0:0080ab59b360 6 #include "rtos.h"
laxman7117 0:0080ab59b360 7
laxman7117 0:0080ab59b360 8 uLCD_4DGL uLCD(p9,p10,p11); // serial tx, serial rx, reset pin;
laxman7117 0:0080ab59b360 9 Nav_Switch myNav( p12, p13, p14, p15, p16);
laxman7117 0:0080ab59b360 10 DigitalIn pb(p20);
laxman7117 0:0080ab59b360 11
laxman7117 0:0080ab59b360 12 //Analog Out Jack
laxman7117 0:0080ab59b360 13 AnalogOut DACout(p18);
laxman7117 0:0080ab59b360 14 //On Board Speaker
laxman7117 0:0080ab59b360 15 PwmOut PWMout(p26);
laxman7117 0:0080ab59b360 16
laxman7117 0:0080ab59b360 17 wave_player waver(&DACout,&PWMout);
laxman7117 0:0080ab59b360 18 SDFileSystem sd(p5, p6, p7, p8, "sd"); // mosi, miso, sck, cs
laxman7117 0:0080ab59b360 19 int Hx2 = 50;
laxman7117 0:0080ab59b360 20 int Px2 = 127;
laxman7117 0:0080ab59b360 21 int count;
laxman7117 0:0080ab59b360 22 void Game_Over(void);
laxman7117 0:0080ab59b360 23 void Thunder(void);
laxman7117 0:0080ab59b360 24 void Shock(void);
laxman7117 0:0080ab59b360 25 void Slam(void);
laxman7117 0:0080ab59b360 26 void Tackle(void);
laxman7117 0:0080ab59b360 27 void display_attacks(void);
laxman7117 0:0080ab59b360 28 int select_attack(void);
laxman7117 0:0080ab59b360 29 void attack(int A);
laxman7117 0:0080ab59b360 30 void redraw(void);
laxman7117 0:0080ab59b360 31 void mew(void);
laxman7117 0:0080ab59b360 32 void attack_sound();
laxman7117 0:0080ab59b360 33
laxman7117 0:0080ab59b360 34 void sound(char * wav)
laxman7117 0:0080ab59b360 35 {
laxman7117 0:0080ab59b360 36 FILE *wave_file;
laxman7117 0:0080ab59b360 37 wave_file=fopen(wav,"r");
laxman7117 0:0080ab59b360 38 PWMout.period(1.0/400000.0);
laxman7117 0:0080ab59b360 39 // play wav file
laxman7117 0:0080ab59b360 40 waver.play(wave_file);
laxman7117 0:0080ab59b360 41
laxman7117 0:0080ab59b360 42 // close wav file
laxman7117 0:0080ab59b360 43 fclose(wave_file);
laxman7117 0:0080ab59b360 44 }
laxman7117 0:0080ab59b360 45 int D = 0;
laxman7117 0:0080ab59b360 46 void led1_thread(void const *argument)
laxman7117 0:0080ab59b360 47 {
laxman7117 0:0080ab59b360 48 while(1){
laxman7117 0:0080ab59b360 49 sound("/sd/battle16.wav");
laxman7117 0:0080ab59b360 50 }
laxman7117 0:0080ab59b360 51 }
laxman7117 0:0080ab59b360 52
laxman7117 0:0080ab59b360 53 int main()
laxman7117 0:0080ab59b360 54 {
laxman7117 0:0080ab59b360 55
laxman7117 0:0080ab59b360 56 pb.mode(PullUp);
laxman7117 0:0080ab59b360 57 int Position;
laxman7117 0:0080ab59b360 58 Thread thread1(led1_thread);
laxman7117 0:0080ab59b360 59 uLCD.cls();
laxman7117 0:0080ab59b360 60 uLCD.media_init();
laxman7117 0:0080ab59b360 61 uLCD.set_sector_address(0x0000, 0x07CA);
laxman7117 0:0080ab59b360 62 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 63
laxman7117 0:0080ab59b360 64 while (1) {
laxman7117 0:0080ab59b360 65 int test[2] = {99,99};
laxman7117 0:0080ab59b360 66 test[1] = test[0];
laxman7117 0:0080ab59b360 67 test[0] = pb;
laxman7117 0:0080ab59b360 68 if (test[0] != test[1] && test[0] == 0){
laxman7117 0:0080ab59b360 69 break;
laxman7117 0:0080ab59b360 70 }
laxman7117 0:0080ab59b360 71 }
laxman7117 0:0080ab59b360 72 uLCD.cls();
laxman7117 0:0080ab59b360 73 uLCD.set_sector_address(0x0000, 0x06AB);
laxman7117 0:0080ab59b360 74 for (int i = 70; i > 0; i--){
laxman7117 0:0080ab59b360 75 uLCD.display_image(i,50);
laxman7117 0:0080ab59b360 76 wait(.01);
laxman7117 0:0080ab59b360 77 }
laxman7117 0:0080ab59b360 78 uLCD.set_sector_address(0x0000, 0x06C6);
laxman7117 0:0080ab59b360 79 uLCD.display_image(0,3);
laxman7117 0:0080ab59b360 80 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 81 uLCD.printf("Lance wants to \nfight!");
laxman7117 0:0080ab59b360 82 wait(2);
laxman7117 0:0080ab59b360 83 uLCD.set_sector_address(0x0000, 0x0707);
laxman7117 0:0080ab59b360 84 uLCD.display_image(0,3);
laxman7117 0:0080ab59b360 85 wait(.5);
laxman7117 0:0080ab59b360 86 uLCD.set_sector_address(0x0000, 0x0748);
laxman7117 0:0080ab59b360 87 uLCD.display_image(0,3);
laxman7117 0:0080ab59b360 88 wait(.5);
laxman7117 0:0080ab59b360 89 uLCD.set_sector_address(0x0000, 0x0789);
laxman7117 0:0080ab59b360 90 uLCD.display_image(0,3);
laxman7117 0:0080ab59b360 91 wait(.5);
laxman7117 0:0080ab59b360 92 redraw();
laxman7117 0:0080ab59b360 93
laxman7117 0:0080ab59b360 94 while (1) {
laxman7117 0:0080ab59b360 95 Position = select_attack();
laxman7117 0:0080ab59b360 96 if (myNav.fire()){
laxman7117 0:0080ab59b360 97 attack(Position);
laxman7117 0:0080ab59b360 98 wait(.3);
laxman7117 0:0080ab59b360 99 mew();
laxman7117 0:0080ab59b360 100 }
laxman7117 0:0080ab59b360 101 }
laxman7117 0:0080ab59b360 102 }
laxman7117 0:0080ab59b360 103
laxman7117 0:0080ab59b360 104 void display_attacks(void){
laxman7117 0:0080ab59b360 105 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 106 uLCD.printf("Tackle");
laxman7117 0:0080ab59b360 107 uLCD.locate(8,14);
laxman7117 0:0080ab59b360 108 uLCD.printf("Thunder");
laxman7117 0:0080ab59b360 109 uLCD.locate(0,15);
laxman7117 0:0080ab59b360 110 uLCD.printf("Slam");
laxman7117 0:0080ab59b360 111 uLCD.locate(8,15);
laxman7117 0:0080ab59b360 112 uLCD.printf("Shock");
laxman7117 0:0080ab59b360 113 }
laxman7117 0:0080ab59b360 114
laxman7117 0:0080ab59b360 115 int select_attack(void){
laxman7117 0:0080ab59b360 116 if (myNav.right()){
laxman7117 0:0080ab59b360 117 uLCD.rectangle(0, 111, 50, 119, BLACK);
laxman7117 0:0080ab59b360 118 uLCD.rectangle(0, 119, 50, 127, BLACK);
laxman7117 0:0080ab59b360 119 uLCD.rectangle(55, 119, 105, 127, BLACK);
laxman7117 0:0080ab59b360 120
laxman7117 0:0080ab59b360 121 uLCD.rectangle(55, 111, 105, 119, 0x1F);
laxman7117 0:0080ab59b360 122 count = 1;
laxman7117 0:0080ab59b360 123 wait(.2);
laxman7117 0:0080ab59b360 124 }
laxman7117 0:0080ab59b360 125 if (myNav.up()){
laxman7117 0:0080ab59b360 126 uLCD.rectangle(55, 119, 105, 127, BLACK);
laxman7117 0:0080ab59b360 127 uLCD.rectangle(55, 111, 105, 119, BLACK);
laxman7117 0:0080ab59b360 128 uLCD.rectangle(0, 119, 50, 127, BLACK);
laxman7117 0:0080ab59b360 129
laxman7117 0:0080ab59b360 130 uLCD.rectangle(0, 111, 50, 119, 0x1F);
laxman7117 0:0080ab59b360 131 count = 2;
laxman7117 0:0080ab59b360 132 wait(.2);
laxman7117 0:0080ab59b360 133 }
laxman7117 0:0080ab59b360 134 if (myNav.left()){
laxman7117 0:0080ab59b360 135 uLCD.rectangle(55, 119, 105, 127, BLACK);
laxman7117 0:0080ab59b360 136 uLCD.rectangle(0, 111, 50, 119, BLACK);
laxman7117 0:0080ab59b360 137 uLCD.rectangle(55, 111, 105, 119, BLACK);
laxman7117 0:0080ab59b360 138
laxman7117 0:0080ab59b360 139 uLCD.rectangle(0, 119, 50, 127, 0x1F);
laxman7117 0:0080ab59b360 140 count = 3;
laxman7117 0:0080ab59b360 141 wait(.2);
laxman7117 0:0080ab59b360 142 }
laxman7117 0:0080ab59b360 143 if (myNav.down()){
laxman7117 0:0080ab59b360 144 uLCD.rectangle(0, 119, 50, 127, BLACK);
laxman7117 0:0080ab59b360 145 uLCD.rectangle(0, 111, 50, 119, BLACK);
laxman7117 0:0080ab59b360 146 uLCD.rectangle(55, 111, 105, 119, BLACK);
laxman7117 0:0080ab59b360 147
laxman7117 0:0080ab59b360 148 uLCD.rectangle(55, 119, 105, 127, 0x1F);
laxman7117 0:0080ab59b360 149 count = 4;
laxman7117 0:0080ab59b360 150 wait(.2);
laxman7117 0:0080ab59b360 151 }
laxman7117 0:0080ab59b360 152
laxman7117 0:0080ab59b360 153 return count;
laxman7117 0:0080ab59b360 154 }
laxman7117 0:0080ab59b360 155
laxman7117 0:0080ab59b360 156 void attack(int A) {
laxman7117 0:0080ab59b360 157 if (A == 1){
laxman7117 0:0080ab59b360 158 uLCD.rectangle(55, 111, 105, 119, BLACK);
laxman7117 0:0080ab59b360 159 wait(.2);
laxman7117 0:0080ab59b360 160 uLCD.rectangle(55, 111, 105, 119, 0x1F);
laxman7117 0:0080ab59b360 161 Thunder();
laxman7117 0:0080ab59b360 162 }
laxman7117 0:0080ab59b360 163 if (A == 2){
laxman7117 0:0080ab59b360 164 uLCD.rectangle(0, 111, 50, 119, BLACK);
laxman7117 0:0080ab59b360 165 wait(.2);
laxman7117 0:0080ab59b360 166 uLCD.rectangle(0, 111, 50, 119, 0x1F);
laxman7117 0:0080ab59b360 167 Tackle();
laxman7117 0:0080ab59b360 168 }
laxman7117 0:0080ab59b360 169 if (A == 3){
laxman7117 0:0080ab59b360 170 uLCD.rectangle(0, 119, 50, 127, BLACK);
laxman7117 0:0080ab59b360 171 wait(.2);
laxman7117 0:0080ab59b360 172 uLCD.rectangle(0, 119, 50, 127, 0x1F);
laxman7117 0:0080ab59b360 173 Slam();
laxman7117 0:0080ab59b360 174 }
laxman7117 0:0080ab59b360 175 if (A == 4){
laxman7117 0:0080ab59b360 176 uLCD.rectangle(55, 119, 105, 127, BLACK);
laxman7117 0:0080ab59b360 177 wait(.2);
laxman7117 0:0080ab59b360 178 uLCD.rectangle(55, 119, 105, 127, 0x1F);
laxman7117 0:0080ab59b360 179 Shock();
laxman7117 0:0080ab59b360 180 }
laxman7117 0:0080ab59b360 181
laxman7117 0:0080ab59b360 182 }
laxman7117 0:0080ab59b360 183
laxman7117 0:0080ab59b360 184
laxman7117 0:0080ab59b360 185 void Thunder(void) {
laxman7117 0:0080ab59b360 186 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 187 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 188 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 189 uLCD.printf("Pikachu used \nThunder!");
laxman7117 0:0080ab59b360 190 wait(1.5);
laxman7117 0:0080ab59b360 191 uLCD.set_sector_address(0x0000, 0x0249);
laxman7117 0:0080ab59b360 192 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 193 wait(.2);
laxman7117 0:0080ab59b360 194 uLCD.set_sector_address(0x0000, 0x028A);
laxman7117 0:0080ab59b360 195 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 196 wait(.2);
laxman7117 0:0080ab59b360 197 uLCD.set_sector_address(0x0000, 0x02CB);
laxman7117 0:0080ab59b360 198 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 199 wait(.2);
laxman7117 0:0080ab59b360 200 uLCD.set_sector_address(0x0000, 0x030C);
laxman7117 0:0080ab59b360 201 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 202 wait(.2);
laxman7117 0:0080ab59b360 203 uLCD.set_sector_address(0x0000, 0x034D);
laxman7117 0:0080ab59b360 204 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 205 wait(.2);
laxman7117 0:0080ab59b360 206 Hx2 = Hx2 - 20;
laxman7117 0:0080ab59b360 207 redraw();
laxman7117 0:0080ab59b360 208 }
laxman7117 0:0080ab59b360 209
laxman7117 0:0080ab59b360 210 void Shock(void) {
laxman7117 0:0080ab59b360 211 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 212 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 213 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 214 uLCD.printf("Pikachu used \nShock!");
laxman7117 0:0080ab59b360 215 wait(1.5);
laxman7117 0:0080ab59b360 216 for (int i = 0; i < 3; i++){
laxman7117 0:0080ab59b360 217 uLCD.set_sector_address(0x0000, 0x038E);
laxman7117 0:0080ab59b360 218 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 219 wait(.2);
laxman7117 0:0080ab59b360 220 uLCD.set_sector_address(0x0000, 0x03CF);
laxman7117 0:0080ab59b360 221 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 222 wait(.2);
laxman7117 0:0080ab59b360 223 }
laxman7117 0:0080ab59b360 224 Hx2 = Hx2 - 5;
laxman7117 0:0080ab59b360 225 redraw();
laxman7117 0:0080ab59b360 226 }
laxman7117 0:0080ab59b360 227
laxman7117 0:0080ab59b360 228 void Slam(void){
laxman7117 0:0080ab59b360 229 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 230 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 231 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 232 uLCD.printf("Pikachu used \nSlam!");
laxman7117 0:0080ab59b360 233 wait(1.5);
laxman7117 0:0080ab59b360 234 uLCD.set_sector_address(0x0000, 0x0041);
laxman7117 0:0080ab59b360 235 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 236 wait(.2);
laxman7117 0:0080ab59b360 237 uLCD.set_sector_address(0x0000, 0x0082);
laxman7117 0:0080ab59b360 238 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 239 wait(.2);
laxman7117 0:0080ab59b360 240 uLCD.set_sector_address(0x0000, 0x00C3);
laxman7117 0:0080ab59b360 241 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 242 wait(.2);
laxman7117 0:0080ab59b360 243 uLCD.set_sector_address(0x0000, 0x0104);
laxman7117 0:0080ab59b360 244 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 245 wait(.2);
laxman7117 0:0080ab59b360 246 uLCD.set_sector_address(0x0000, 0x00C3);
laxman7117 0:0080ab59b360 247 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 248 wait(.2);
laxman7117 0:0080ab59b360 249 uLCD.set_sector_address(0x0000, 0x0082);
laxman7117 0:0080ab59b360 250 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 251 wait(.2);
laxman7117 0:0080ab59b360 252 uLCD.set_sector_address(0x0000, 0x0041);
laxman7117 0:0080ab59b360 253 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 254 wait(.2);
laxman7117 0:0080ab59b360 255 Hx2 = Hx2 - 13;
laxman7117 0:0080ab59b360 256 redraw();
laxman7117 0:0080ab59b360 257 }
laxman7117 0:0080ab59b360 258
laxman7117 0:0080ab59b360 259 void Tackle(void){
laxman7117 0:0080ab59b360 260 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 261 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 262 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 263 uLCD.printf("Pikachu used \nTackle!");
laxman7117 0:0080ab59b360 264 wait(1.5);
laxman7117 0:0080ab59b360 265 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 266 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 267 wait(.2);
laxman7117 0:0080ab59b360 268 uLCD.set_sector_address(0x0000, 0x0145);
laxman7117 0:0080ab59b360 269 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 270 wait(.2);
laxman7117 0:0080ab59b360 271 uLCD.set_sector_address(0x0000, 0x0186);
laxman7117 0:0080ab59b360 272 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 273 wait(.2);
laxman7117 0:0080ab59b360 274 uLCD.set_sector_address(0x0000, 0x01C7);
laxman7117 0:0080ab59b360 275 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 276 wait(.2);
laxman7117 0:0080ab59b360 277 uLCD.set_sector_address(0x0000, 0x0208);
laxman7117 0:0080ab59b360 278 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 279 wait(.2);
laxman7117 0:0080ab59b360 280 uLCD.set_sector_address(0x0000, 0x01C7);
laxman7117 0:0080ab59b360 281 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 282 wait(.2);
laxman7117 0:0080ab59b360 283 uLCD.set_sector_address(0x0000, 0x0186);
laxman7117 0:0080ab59b360 284 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 285 wait(.2);
laxman7117 0:0080ab59b360 286 Hx2 = Hx2 - 8;
laxman7117 0:0080ab59b360 287 redraw();
laxman7117 0:0080ab59b360 288 }
laxman7117 0:0080ab59b360 289 void redraw(void){
laxman7117 0:0080ab59b360 290 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 291 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 292
laxman7117 0:0080ab59b360 293 display_attacks();
laxman7117 0:0080ab59b360 294 uLCD.locate(0,1);
laxman7117 0:0080ab59b360 295 uLCD.printf("HP");
laxman7117 0:0080ab59b360 296 uLCD.locate(11,6);
laxman7117 0:0080ab59b360 297 uLCD.printf("HP");
laxman7117 0:0080ab59b360 298 uLCD.filled_rectangle(0, 20, Hx2, 25, RED); // enemy Health
laxman7117 0:0080ab59b360 299 uLCD.filled_rectangle(77, 60, Px2, 65, RED); // player Health
laxman7117 0:0080ab59b360 300 if (Hx2 <= 0 || Px2 <= 0){
laxman7117 0:0080ab59b360 301 wait(2);
laxman7117 0:0080ab59b360 302 Game_Over();
laxman7117 0:0080ab59b360 303 }
laxman7117 0:0080ab59b360 304 }
laxman7117 0:0080ab59b360 305
laxman7117 0:0080ab59b360 306 void mew(void){
laxman7117 0:0080ab59b360 307 if(Hx2 % 2){
laxman7117 0:0080ab59b360 308 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 309 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 310 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 311 uLCD.printf("Mew used \nPsybeam!");
laxman7117 0:0080ab59b360 312 wait(1.5);
laxman7117 0:0080ab59b360 313 uLCD.set_sector_address(0x0000, 0x0410);
laxman7117 0:0080ab59b360 314 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 315 wait(.2);
laxman7117 0:0080ab59b360 316 uLCD.set_sector_address(0x0000, 0x0451);
laxman7117 0:0080ab59b360 317 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 318 wait(.2);
laxman7117 0:0080ab59b360 319 uLCD.set_sector_address(0x0000, 0x0492);
laxman7117 0:0080ab59b360 320 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 321 wait(.2);
laxman7117 0:0080ab59b360 322 uLCD.set_sector_address(0x0000, 0x04D3);
laxman7117 0:0080ab59b360 323 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 324 wait(.2);
laxman7117 0:0080ab59b360 325 Px2 = Px2 - 9;
laxman7117 0:0080ab59b360 326 }
laxman7117 0:0080ab59b360 327 else {
laxman7117 0:0080ab59b360 328 uLCD.locate(0,14);
laxman7117 0:0080ab59b360 329 uLCD.set_sector_address(0x0000, 0x0000);
laxman7117 0:0080ab59b360 330 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 331 uLCD.printf("Mew used \nAncient Power!");
laxman7117 0:0080ab59b360 332 wait(1.5);
laxman7117 0:0080ab59b360 333 uLCD.set_sector_address(0x0000, 0x0514);
laxman7117 0:0080ab59b360 334 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 335 wait(.2);
laxman7117 0:0080ab59b360 336 uLCD.set_sector_address(0x0000, 0x0555);
laxman7117 0:0080ab59b360 337 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 338 wait(.2);
laxman7117 0:0080ab59b360 339 uLCD.set_sector_address(0x0000, 0x0514);
laxman7117 0:0080ab59b360 340 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 341 wait(.2);
laxman7117 0:0080ab59b360 342 uLCD.set_sector_address(0x0000, 0x0596);
laxman7117 0:0080ab59b360 343 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 344 wait(.2);
laxman7117 0:0080ab59b360 345 uLCD.set_sector_address(0x0000, 0x05D7);
laxman7117 0:0080ab59b360 346 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 347 wait(.2);
laxman7117 0:0080ab59b360 348 uLCD.set_sector_address(0x0000, 0x0618);
laxman7117 0:0080ab59b360 349 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 350 wait(.2);
laxman7117 0:0080ab59b360 351 Px2 = Px2 - 12;
laxman7117 0:0080ab59b360 352 }
laxman7117 0:0080ab59b360 353
laxman7117 0:0080ab59b360 354 redraw();
laxman7117 0:0080ab59b360 355 }
laxman7117 0:0080ab59b360 356
laxman7117 0:0080ab59b360 357 void Game_Over(void){
laxman7117 0:0080ab59b360 358 uLCD.cls();
laxman7117 0:0080ab59b360 359 uLCD.set_sector_address(0x0000, 0x084C);
laxman7117 0:0080ab59b360 360 uLCD.display_image(0,0);
laxman7117 0:0080ab59b360 361 //wait(.2);
laxman7117 0:0080ab59b360 362 wait(30);
laxman7117 0:0080ab59b360 363 exit(0);
laxman7117 0:0080ab59b360 364 }