demo

Dependencies:   mbed Gamepad N5110

Committer:
Ting12138
Date:
Thu May 14 13:00:19 2020 +0000
Revision:
1:7b5a843acc05
Parent:
0:ba32cfe0051e
homework

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Ting12138 0:ba32cfe0051e 1 ///////// pre-processor directives ////////
Ting12138 0:ba32cfe0051e 2 /*
Ting12138 0:ba32cfe0051e 3 ELEC2645 Embed Systems Project
Ting12138 0:ba32cfe0051e 4 School of Electronic &Electrical Engineering
Ting12138 0:ba32cfe0051e 5 University of Leeds
Ting12138 0:ba32cfe0051e 6
Ting12138 0:ba32cfe0051e 7 Name:Liu Liting
Ting12138 0:ba32cfe0051e 8 Username:el17ll
Ting12138 0:ba32cfe0051e 9 Student ID Number: ID For LEEDS:201199465 ID For SWJTU:2017110353
Ting12138 0:ba32cfe0051e 10 Date: 15/05/2020
Ting12138 0:ba32cfe0051e 11 */
Ting12138 0:ba32cfe0051e 12 #include "mbed.h"
Ting12138 0:ba32cfe0051e 13 #include "Gamepad.h"
Ting12138 0:ba32cfe0051e 14 #include "N5110.h"
Ting12138 0:ba32cfe0051e 15 #include "Engine.h"
Ting12138 0:ba32cfe0051e 16
Ting12138 0:ba32cfe0051e 17 #define THE_WALL_WIDTH 2
Ting12138 0:ba32cfe0051e 18 #define THE_WALL_GAP 12
Ting12138 0:ba32cfe0051e 19 #define ROCKET_SIZE 2
Ting12138 0:ba32cfe0051e 20 #define FOODS_SIZE 2
Ting12138 0:ba32cfe0051e 21 #define SPEED 2
Ting12138 0:ba32cfe0051e 22
Ting12138 0:ba32cfe0051e 23 /////////////// structs /////////////////
Ting12138 0:ba32cfe0051e 24 struct UserInput {
Ting12138 0:ba32cfe0051e 25 Direction d;
Ting12138 0:ba32cfe0051e 26 float mag;
Ting12138 0:ba32cfe0051e 27 Vector2D mapped_coord;
Ting12138 0:ba32cfe0051e 28 };
Ting12138 0:ba32cfe0051e 29 /////////////// objects ///////////////
Ting12138 0:ba32cfe0051e 30 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
Ting12138 0:ba32cfe0051e 31 Gamepad pad;
Ting12138 0:ba32cfe0051e 32 Engine eng;
Ting12138 0:ba32cfe0051e 33
Ting12138 0:ba32cfe0051e 34 ///////////// prototypes ///////////////
Ting12138 0:ba32cfe0051e 35 void init();
Ting12138 0:ba32cfe0051e 36 void update_game(UserInput input);
Ting12138 0:ba32cfe0051e 37 void renders();
Ting12138 0:ba32cfe0051e 38 void beginning();
Ting12138 0:ba32cfe0051e 39 void end_game();
Ting12138 0:ba32cfe0051e 40 void introduction();
Ting12138 0:ba32cfe0051e 41 void finger_snap();
Ting12138 0:ba32cfe0051e 42
Ting12138 0:ba32cfe0051e 43 ///////////// Images ///////////////
Ting12138 0:ba32cfe0051e 44 const int symbol1[25][32] = {
Ting12138 0:ba32cfe0051e 45 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 46 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 47 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 48 { 0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 49 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 50 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 51 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 52 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 53 { 0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 54 { 0,0,0,1,0,0,0,1,1,0,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 55 { 0,0,0,1,0,0,0,1,1,0,1,1,0,0,0,1,0,0,1,1,1,0,1,1,0,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 56 { 0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,1,0,0,1,0,0,0,1,0,1,1,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 57 { 0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 58 { 0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 59 { 0,0,1,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 60 { 0,0,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 61 { 0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 62 { 0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 63 { 0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,1,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 64 { 0,0,0,0,0,0,0,0,0,1,1,0,1,0,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 65 { 0,0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,1,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 66 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 67 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 68 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 69 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 70
Ting12138 0:ba32cfe0051e 71
Ting12138 0:ba32cfe0051e 72 };
Ting12138 0:ba32cfe0051e 73
Ting12138 0:ba32cfe0051e 74 const int symbol2[25][32] = {
Ting12138 0:ba32cfe0051e 75 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 76 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 77 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 78 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 79 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 80 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 81 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 82 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 83 { 0,0,1,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,1,0,0,1,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 84 { 0,0,1,1,1,0,0,1,1,0,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,1,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 85 { 0,0,0,1,0,0,0,1,1,0,1,1,0,0,0,1,0,0,1,1,1,0,1,1,0,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 86 { 0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,1,0,0,1,0,0,0,1,0,1,1,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 87 { 0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 88 { 0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 89 { 0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 90 { 0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 91 { 0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 92 { 0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 93 { 0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,1,0,0,0,1,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 94 { 0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 95 { 0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 96 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 97 { 0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 98 { 0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 99 { 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 100
Ting12138 0:ba32cfe0051e 101 };
Ting12138 0:ba32cfe0051e 102
Ting12138 0:ba32cfe0051e 103
Ting12138 0:ba32cfe0051e 104 //////////////// the main functions //////////////////////
Ting12138 0:ba32cfe0051e 105 int main() {
Ting12138 0:ba32cfe0051e 106 while (1) {
Ting12138 0:ba32cfe0051e 107 int fps = 6;
Ting12138 0:ba32cfe0051e 108
Ting12138 0:ba32cfe0051e 109 init(); // initialise and then display screen...
Ting12138 0:ba32cfe0051e 110 beginning();
Ting12138 0:ba32cfe0051e 111 introduction(); // The intro of the story
Ting12138 0:ba32cfe0051e 112 renders();
Ting12138 0:ba32cfe0051e 113 wait(1.0f/fps); // and wait for one frame period
Ting12138 0:ba32cfe0051e 114
Ting12138 0:ba32cfe0051e 115 while (1) {
Ting12138 0:ba32cfe0051e 116 eng.read_input(pad);
Ting12138 0:ba32cfe0051e 117 eng.update(pad);
Ting12138 0:ba32cfe0051e 118 renders();
Ting12138 0:ba32cfe0051e 119 wait(1.0f/fps);
Ting12138 0:ba32cfe0051e 120 if (eng.get_final_score() < 3) { // setting diffculty to regard the current ffoods number
Ting12138 0:ba32cfe0051e 121 fps = 6;
Ting12138 0:ba32cfe0051e 122 }
Ting12138 0:ba32cfe0051e 123 if (eng.get_final_score() == 3) {
Ting12138 0:ba32cfe0051e 124 fps = 9;
Ting12138 0:ba32cfe0051e 125 }
Ting12138 0:ba32cfe0051e 126 if (eng.get_final_score() == 4) {
Ting12138 0:ba32cfe0051e 127 fps = 12;
Ting12138 0:ba32cfe0051e 128 }
Ting12138 0:ba32cfe0051e 129 if (eng.get_final_score() == 5) {
Ting12138 0:ba32cfe0051e 130 fps = 15;
Ting12138 0:ba32cfe0051e 131 }
Ting12138 0:ba32cfe0051e 132 if (eng.get_final_score() == 6) { // you win!!
Ting12138 0:ba32cfe0051e 133 finger_snap();
Ting12138 0:ba32cfe0051e 134 break;
Ting12138 0:ba32cfe0051e 135 } else if (eng.get_final_score() < 0) { // you lose :(
Ting12138 0:ba32cfe0051e 136 end_game();
Ting12138 0:ba32cfe0051e 137 break;
Ting12138 0:ba32cfe0051e 138 }
Ting12138 0:ba32cfe0051e 139 }
Ting12138 0:ba32cfe0051e 140 }
Ting12138 0:ba32cfe0051e 141 }
Ting12138 0:ba32cfe0051e 142
Ting12138 0:ba32cfe0051e 143 /////////////the introduction part////////////////
Ting12138 0:ba32cfe0051e 144 const int introduction1[8][84] = {
Ting12138 0:ba32cfe0051e 145 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 146 { 1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 147 { 1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 148 { 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 149 { 1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 150 { 1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 151 { 1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 152 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 153 };
Ting12138 0:ba32cfe0051e 154 const int introduction2[8][80] = {
Ting12138 0:ba32cfe0051e 155 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 156 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 157 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 158 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 159 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 160 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 161 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 162 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 163 };
Ting12138 0:ba32cfe0051e 164 const int introduction3[8][80] = {
Ting12138 0:ba32cfe0051e 165 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 },
Ting12138 0:ba32cfe0051e 166 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 167 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 168 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 169 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1 },
Ting12138 0:ba32cfe0051e 170 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0 },
Ting12138 0:ba32cfe0051e 171 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 172 { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 173 };
Ting12138 0:ba32cfe0051e 174
Ting12138 0:ba32cfe0051e 175 const int intro3[16][18] = {
Ting12138 0:ba32cfe0051e 176 { 0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 177 { 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 178 { 0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 179 { 0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0 },
Ting12138 0:ba32cfe0051e 180 { 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0 },
Ting12138 0:ba32cfe0051e 181 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 182 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0 },
Ting12138 0:ba32cfe0051e 183 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 },
Ting12138 0:ba32cfe0051e 184 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 },
Ting12138 0:ba32cfe0051e 185 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0 },
Ting12138 0:ba32cfe0051e 186 { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0 },
Ting12138 0:ba32cfe0051e 187 { 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0 },
Ting12138 0:ba32cfe0051e 188 { 0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0 },
Ting12138 0:ba32cfe0051e 189 { 0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 190 { 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 191 { 0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0 },
Ting12138 0:ba32cfe0051e 192 };
Ting12138 0:ba32cfe0051e 193
Ting12138 0:ba32cfe0051e 194 void init() {
Ting12138 0:ba32cfe0051e 195 // need to initialise LCD and Gamepad
Ting12138 0:ba32cfe0051e 196 lcd.init();
Ting12138 0:ba32cfe0051e 197 pad.init();
Ting12138 0:ba32cfe0051e 198
Ting12138 0:ba32cfe0051e 199 // initialise the game with correct ball and paddle sizes
Ting12138 0:ba32cfe0051e 200 eng.init(THE_WALL_WIDTH,THE_WALL_GAP,FOODS_SIZE,SPEED);
Ting12138 0:ba32cfe0051e 201 }
Ting12138 0:ba32cfe0051e 202
Ting12138 0:ba32cfe0051e 203 void beginning() {
Ting12138 0:ba32cfe0051e 204 lcd.clear();
Ting12138 0:ba32cfe0051e 205 lcd.printString("The power food",0,0); //play messages
Ting12138 0:ba32cfe0051e 206 lcd.printString("Start story",9,4);
Ting12138 0:ba32cfe0051e 207 lcd.drawSprite(25,8,25,32,(int *)symbol1);
Ting12138 0:ba32cfe0051e 208 lcd.refresh();
Ting12138 0:ba32cfe0051e 209 pad.tone(440.00,0.60); // adding the theme music, which is my favorite song(hei,hei)
Ting12138 0:ba32cfe0051e 210 wait(0.60);
Ting12138 0:ba32cfe0051e 211 pad.tone(329.63,0.60);
Ting12138 0:ba32cfe0051e 212 wait(0.60);
Ting12138 0:ba32cfe0051e 213 pad.tone(392.00,0.60);
Ting12138 0:ba32cfe0051e 214 wait(0.60);
Ting12138 0:ba32cfe0051e 215
Ting12138 0:ba32cfe0051e 216 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 217 wait(0.30);
Ting12138 0:ba32cfe0051e 218 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 219 wait(0.30);
Ting12138 0:ba32cfe0051e 220 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 221 wait(0.30);
Ting12138 0:ba32cfe0051e 222 pad.tone(261.63,0.30);
Ting12138 0:ba32cfe0051e 223 wait(0.30);
Ting12138 0:ba32cfe0051e 224 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 225 wait(0.30);
Ting12138 0:ba32cfe0051e 226 pad.tone(261.63,0.30);
Ting12138 0:ba32cfe0051e 227 wait(0.30);
Ting12138 0:ba32cfe0051e 228 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 229 wait(0.30);
Ting12138 0:ba32cfe0051e 230 pad.tone(293.66,0.15);
Ting12138 0:ba32cfe0051e 231 wait(0.30);
Ting12138 0:ba32cfe0051e 232 pad.tone(261.63,0.15);
Ting12138 0:ba32cfe0051e 233 wait(0.30);
Ting12138 0:ba32cfe0051e 234 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 235 wait(0.30);
Ting12138 0:ba32cfe0051e 236 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 237 wait(0.30);
Ting12138 0:ba32cfe0051e 238
Ting12138 0:ba32cfe0051e 239 while (pad.check_event(Gamepad::START_PRESSED) == false) { // animation loop until start button is pressed
Ting12138 0:ba32cfe0051e 240 lcd.clear();
Ting12138 0:ba32cfe0051e 241 lcd.printString("Look for food",0,0);
Ting12138 0:ba32cfe0051e 242 lcd.printString("Start story",9,4);
Ting12138 0:ba32cfe0051e 243 lcd.drawSprite(25,8,25,32,(int *)symbol1);
Ting12138 0:ba32cfe0051e 244 lcd.refresh();
Ting12138 0:ba32cfe0051e 245 wait(0.5);
Ting12138 0:ba32cfe0051e 246 lcd.clear();
Ting12138 0:ba32cfe0051e 247 lcd.printString("Look for food",0,0);
Ting12138 0:ba32cfe0051e 248 lcd.printString("Start story",9,4);
Ting12138 0:ba32cfe0051e 249 lcd.drawSprite(25,8,25,32,(int *)symbol2);
Ting12138 0:ba32cfe0051e 250 lcd.refresh();
Ting12138 0:ba32cfe0051e 251 wait(0.5);
Ting12138 0:ba32cfe0051e 252 }
Ting12138 0:ba32cfe0051e 253 }
Ting12138 0:ba32cfe0051e 254
Ting12138 0:ba32cfe0051e 255 void introduction() { // background story
Ting12138 0:ba32cfe0051e 256 lcd.clear();
Ting12138 0:ba32cfe0051e 257 lcd.printString("Liu Liting",0,0);
Ting12138 0:ba32cfe0051e 258 lcd.printString("ID:201199465",0,4);
Ting12138 0:ba32cfe0051e 259 lcd.refresh();
Ting12138 0:ba32cfe0051e 260 wait(1.0);
Ting12138 0:ba32cfe0051e 261 lcd.clear();
Ting12138 0:ba32cfe0051e 262 lcd.printString("long long ago",0,0);
Ting12138 0:ba32cfe0051e 263 lcd.refresh();
Ting12138 0:ba32cfe0051e 264 wait(1.0);
Ting12138 0:ba32cfe0051e 265 lcd.printString("Since the",6,2);
Ting12138 0:ba32cfe0051e 266 lcd.printString("earth destoried",0,3);
Ting12138 0:ba32cfe0051e 267 lcd.printString("we need go",9,4);
Ting12138 0:ba32cfe0051e 268 lcd.printString("to find",18,5);
Ting12138 0:ba32cfe0051e 269 lcd.refresh();
Ting12138 0:ba32cfe0051e 270 wait(1.0);
Ting12138 0:ba32cfe0051e 271 lcd.printString("(Press start)",3,1);
Ting12138 0:ba32cfe0051e 272 wait(1.0);
Ting12138 0:ba32cfe0051e 273 while (pad.check_event(Gamepad::START_PRESSED) == false) { // while-looping until the button is on
Ting12138 0:ba32cfe0051e 274 lcd.refresh();
Ting12138 0:ba32cfe0051e 275 wait(0.5);
Ting12138 0:ba32cfe0051e 276 }
Ting12138 0:ba32cfe0051e 277
Ting12138 0:ba32cfe0051e 278 lcd.clear(); // background story
Ting12138 0:ba32cfe0051e 279 lcd.printString("You will ",12,0);
Ting12138 0:ba32cfe0051e 280 lcd.printString("control them",9,1);
Ting12138 0:ba32cfe0051e 281 lcd.printString("to get what",6,2);
Ting12138 0:ba32cfe0051e 282 lcd.printString("you need to",9,3);
Ting12138 0:ba32cfe0051e 283 lcd.printString("then travel in",0,4);
Ting12138 0:ba32cfe0051e 284 lcd.printString("the forest",3,5);
Ting12138 0:ba32cfe0051e 285 lcd.refresh();
Ting12138 0:ba32cfe0051e 286 wait(1.0);
Ting12138 0:ba32cfe0051e 287 while ( pad.check_event(Gamepad::START_PRESSED) == false) { // while-looping until the button is on
Ting12138 0:ba32cfe0051e 288 lcd.refresh();
Ting12138 0:ba32cfe0051e 289 wait(0.5);
Ting12138 0:ba32cfe0051e 290 }
Ting12138 0:ba32cfe0051e 291
Ting12138 0:ba32cfe0051e 292 while (pad.check_event(Gamepad::START_PRESSED) == false) { // tutorial with animation
Ting12138 0:ba32cfe0051e 293 lcd.clear();
Ting12138 0:ba32cfe0051e 294 lcd.printString("Useing your",10,0);
Ting12138 0:ba32cfe0051e 295 lcd.printString("joystick to",8,1);
Ting12138 0:ba32cfe0051e 296 lcd.printString("send yourself",2,2);
Ting12138 0:ba32cfe0051e 297 lcd.printString("to the right",5,3);
Ting12138 0:ba32cfe0051e 298 lcd.printString("forest",17,4);
Ting12138 0:ba32cfe0051e 299 lcd.drawSprite(2,40,8,80,(int *)introduction1);
Ting12138 0:ba32cfe0051e 300 lcd.refresh();
Ting12138 0:ba32cfe0051e 301 wait(0.5);
Ting12138 0:ba32cfe0051e 302 lcd.clear();
Ting12138 0:ba32cfe0051e 303 lcd.printString("Useing your",10,0);
Ting12138 0:ba32cfe0051e 304 lcd.printString("joystick to",8,1);
Ting12138 0:ba32cfe0051e 305 lcd.printString("send yourself",2,2);
Ting12138 0:ba32cfe0051e 306 lcd.printString("to the right",5,3);
Ting12138 0:ba32cfe0051e 307 lcd.printString("forest",17,4);
Ting12138 0:ba32cfe0051e 308 lcd.drawSprite(2,40,8,80,(int *)introduction2);
Ting12138 0:ba32cfe0051e 309 lcd.refresh();
Ting12138 0:ba32cfe0051e 310 wait(0.5);
Ting12138 0:ba32cfe0051e 311 lcd.clear();
Ting12138 0:ba32cfe0051e 312 lcd.printString("Useing your",10,0);
Ting12138 0:ba32cfe0051e 313 lcd.printString("joystick to",8,1);
Ting12138 0:ba32cfe0051e 314 lcd.printString("send yourself",2,2);
Ting12138 0:ba32cfe0051e 315 lcd.printString("to the right",5,3);
Ting12138 0:ba32cfe0051e 316 lcd.printString("forest",17,4);
Ting12138 0:ba32cfe0051e 317 lcd.drawSprite(2,40,8,80,(int *)introduction3);
Ting12138 0:ba32cfe0051e 318 lcd.refresh();
Ting12138 0:ba32cfe0051e 319 wait(0.5);
Ting12138 0:ba32cfe0051e 320 }
Ting12138 0:ba32cfe0051e 321
Ting12138 0:ba32cfe0051e 322 while (pad.check_event(Gamepad::START_PRESSED) == false) { // tutorial with animation
Ting12138 0:ba32cfe0051e 323 lcd.clear();
Ting12138 0:ba32cfe0051e 324 lcd.printString("try not to",0,0);
Ting12138 0:ba32cfe0051e 325 lcd.printString("interrupt it",0,1);
Ting12138 0:ba32cfe0051e 326 lcd.printString("line when",0,3);
Ting12138 0:ba32cfe0051e 327 lcd.printString("pass thro.",0,4);
Ting12138 0:ba32cfe0051e 328 lcd.printString("the gap",0,5);
Ting12138 0:ba32cfe0051e 329 lcd.drawSprite(54,16,16,18,(int *)intro3);
Ting12138 0:ba32cfe0051e 330 lcd.drawRect(78,0,2,18,FILL_BLACK);
Ting12138 0:ba32cfe0051e 331 lcd.drawRect(78,30,2,18,FILL_BLACK);
Ting12138 0:ba32cfe0051e 332 lcd.refresh();
Ting12138 0:ba32cfe0051e 333 wait(0.5);
Ting12138 0:ba32cfe0051e 334 lcd.clear();
Ting12138 0:ba32cfe0051e 335 lcd.printString("try not to",0,0);
Ting12138 0:ba32cfe0051e 336 lcd.printString("interrupt it",0,1);
Ting12138 0:ba32cfe0051e 337 lcd.printString("line when",0,3);
Ting12138 0:ba32cfe0051e 338 lcd.printString("pass thro.",0,4);
Ting12138 0:ba32cfe0051e 339 lcd.printString("the gap",0,5);
Ting12138 0:ba32cfe0051e 340 lcd.drawSprite(62,16,16,18,(int *)intro3);
Ting12138 0:ba32cfe0051e 341 lcd.drawRect(78,0,2,18,FILL_BLACK);
Ting12138 0:ba32cfe0051e 342 lcd.drawRect(78,30,2,18,FILL_BLACK);
Ting12138 0:ba32cfe0051e 343 lcd.refresh();
Ting12138 0:ba32cfe0051e 344 wait(0.5);
Ting12138 0:ba32cfe0051e 345 }
Ting12138 0:ba32cfe0051e 346
Ting12138 0:ba32cfe0051e 347 lcd.clear(); // last message before the game begins
Ting12138 0:ba32cfe0051e 348 lcd.printString("rearch 6",12,0);
Ting12138 0:ba32cfe0051e 349 lcd.printString("foods and then",0,1);
Ting12138 0:ba32cfe0051e 350 lcd.printString("win the game",6,2);
Ting12138 0:ba32cfe0051e 351 lcd.printString("God speed",15,3);
Ting12138 0:ba32cfe0051e 352 lcd.printString("Going!",15,4);
Ting12138 0:ba32cfe0051e 353 lcd.refresh();
Ting12138 0:ba32cfe0051e 354 wait(0.5);
Ting12138 0:ba32cfe0051e 355
Ting12138 0:ba32cfe0051e 356 while (pad.check_event(Gamepad::START_PRESSED) == false) { //sparking leds
Ting12138 0:ba32cfe0051e 357 pad.leds_on();
Ting12138 0:ba32cfe0051e 358 wait(0.25);
Ting12138 0:ba32cfe0051e 359 pad.leds_off();
Ting12138 0:ba32cfe0051e 360 wait(0.25);
Ting12138 0:ba32cfe0051e 361 }
Ting12138 0:ba32cfe0051e 362 }
Ting12138 0:ba32cfe0051e 363
Ting12138 0:ba32cfe0051e 364 void renders() {
Ting12138 0:ba32cfe0051e 365 // clear screen, re-draw and refresh
Ting12138 0:ba32cfe0051e 366 lcd.clear();
Ting12138 0:ba32cfe0051e 367 eng.draw(lcd);
Ting12138 0:ba32cfe0051e 368 lcd.refresh();
Ting12138 0:ba32cfe0051e 369 }
Ting12138 0:ba32cfe0051e 370
Ting12138 0:ba32cfe0051e 371 void finger_snap() {
Ting12138 0:ba32cfe0051e 372 lcd.clear(); // at this point the game has broken the while loop, clear screen to display congrat message
Ting12138 0:ba32cfe0051e 373 lcd.printString("Congrat!!",17,0);
Ting12138 0:ba32cfe0051e 374 lcd.printString("Liu Liting",0,1);
Ting12138 0:ba32cfe0051e 375 lcd.printString("201199465",15,2);
Ting12138 0:ba32cfe0051e 376 lcd.refresh();
Ting12138 0:ba32cfe0051e 377
Ting12138 0:ba32cfe0051e 378 pad.tone(440.00,0.60); // adding the theme music
Ting12138 0:ba32cfe0051e 379 wait(0.60);
Ting12138 0:ba32cfe0051e 380 pad.tone(329.63,0.60);
Ting12138 0:ba32cfe0051e 381 wait(0.60);
Ting12138 0:ba32cfe0051e 382 pad.tone(392.00,0.60);
Ting12138 0:ba32cfe0051e 383 wait(0.60);
Ting12138 0:ba32cfe0051e 384 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 385 wait(0.30);
Ting12138 0:ba32cfe0051e 386 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 387 wait(0.30);
Ting12138 0:ba32cfe0051e 388 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 389 wait(0.30);
Ting12138 0:ba32cfe0051e 390 pad.tone(261.63,0.30);
Ting12138 0:ba32cfe0051e 391 wait(0.30);
Ting12138 0:ba32cfe0051e 392 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 393 wait(0.30);
Ting12138 0:ba32cfe0051e 394 pad.tone(261.63,0.30);
Ting12138 0:ba32cfe0051e 395 wait(0.30);
Ting12138 0:ba32cfe0051e 396 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 397 wait(0.30);
Ting12138 0:ba32cfe0051e 398 pad.tone(293.66,0.15);
Ting12138 0:ba32cfe0051e 399 wait(0.30);
Ting12138 0:ba32cfe0051e 400 pad.tone(261.63,0.15);
Ting12138 0:ba32cfe0051e 401 wait(0.30);
Ting12138 0:ba32cfe0051e 402 pad.tone(293.66,0.30);
Ting12138 0:ba32cfe0051e 403 wait(0.30);
Ting12138 0:ba32cfe0051e 404 pad.tone(392.00,0.30);
Ting12138 0:ba32cfe0051e 405 wait(0.30);
Ting12138 0:ba32cfe0051e 406 while (pad.check_event(Gamepad::START_PRESSED) == false) { // enter loop waiting to restart the game
Ting12138 0:ba32cfe0051e 407 lcd.printString("press start",9,4);
Ting12138 0:ba32cfe0051e 408 lcd.printString("to return",15,5);
Ting12138 0:ba32cfe0051e 409 lcd.refresh();
Ting12138 0:ba32cfe0051e 410 pad.leds_on();
Ting12138 0:ba32cfe0051e 411 wait(0.5);
Ting12138 0:ba32cfe0051e 412 pad.leds_off();
Ting12138 0:ba32cfe0051e 413 wait(0.5);
Ting12138 0:ba32cfe0051e 414 }
Ting12138 0:ba32cfe0051e 415 }
Ting12138 0:ba32cfe0051e 416
Ting12138 0:ba32cfe0051e 417 void end_game() {
Ting12138 0:ba32cfe0051e 418 lcd.clear(); //break the while loop and enter gameover
Ting12138 0:ba32cfe0051e 419 lcd.printString("OH!!!",18,1);
Ting12138 0:ba32cfe0051e 420 lcd.printString("I don't feel",6,2);
Ting12138 0:ba32cfe0051e 421 lcd.printString("so good ...",9,3);
Ting12138 0:ba32cfe0051e 422 lcd.refresh();
Ting12138 0:ba32cfe0051e 423
Ting12138 0:ba32cfe0051e 424 pad.tone(261.63,1.63); // play sad music when lose
Ting12138 0:ba32cfe0051e 425 wait(1.63);
Ting12138 0:ba32cfe0051e 426 pad.tone(0.0,0.06);
Ting12138 0:ba32cfe0051e 427 wait(0.06);
Ting12138 0:ba32cfe0051e 428 pad.tone(261.63,0.63);
Ting12138 0:ba32cfe0051e 429 wait(0.63);
Ting12138 0:ba32cfe0051e 430 pad.tone(293.66,0.63);
Ting12138 0:ba32cfe0051e 431 wait(0.06);
Ting12138 0:ba32cfe0051e 432 pad.tone(329.63,0.63);
Ting12138 0:ba32cfe0051e 433 wait(0.63);
Ting12138 0:ba32cfe0051e 434 pad.tone(261.63,0.63);
Ting12138 0:ba32cfe0051e 435 wait(0.06);
Ting12138 0:ba32cfe0051e 436 pad.tone(329.63,1.63);
Ting12138 0:ba32cfe0051e 437 wait(1.63);
Ting12138 0:ba32cfe0051e 438 pad.tone(0.00,0.06);
Ting12138 0:ba32cfe0051e 439 wait(0.06);
Ting12138 0:ba32cfe0051e 440 pad.tone(261.63,0.63);
Ting12138 0:ba32cfe0051e 441 wait(0.63);
Ting12138 0:ba32cfe0051e 442 pad.tone(293.66,0.63);
Ting12138 0:ba32cfe0051e 443 wait(0.63);
Ting12138 0:ba32cfe0051e 444 pad.tone(329.63,0.63);
Ting12138 0:ba32cfe0051e 445 wait(0.63);
Ting12138 0:ba32cfe0051e 446 pad.tone(261.63,0.63);
Ting12138 0:ba32cfe0051e 447 wait(0.63);
Ting12138 0:ba32cfe0051e 448 pad.tone(349.23,0.63);
Ting12138 0:ba32cfe0051e 449 wait(0.63);
Ting12138 0:ba32cfe0051e 450
Ting12138 0:ba32cfe0051e 451 while (pad.check_event(Gamepad::START_PRESSED) == false) { // enter loop waiting to restart the game
Ting12138 0:ba32cfe0051e 452 lcd.printString("press start",9,4);
Ting12138 0:ba32cfe0051e 453 lcd.printString("to return",15,5);
Ting12138 0:ba32cfe0051e 454 lcd.refresh();
Ting12138 0:ba32cfe0051e 455 wait(0.5);
Ting12138 0:ba32cfe0051e 456 }
Ting12138 0:ba32cfe0051e 457 }