Game codes for Pokemon Academy Yiu Fai Kwok - 201198802 I have read the University Regulations on Plagiarism and state that the work covered by this declaration is my own and does not contain any unacknowledged work from other sources.

Dependencies:   mbed FXOS8700CQ mbed-rtos

Revision:
4:5bc9c4363d31
Parent:
2:464c7e62d97d
Child:
5:bc0691d02fd5
diff -r a799f0240063 -r 5bc9c4363d31 Score/Score.cpp
--- a/Score/Score.cpp	Wed Apr 03 03:19:59 2019 +0000
+++ b/Score/Score.cpp	Wed Apr 03 18:40:43 2019 +0000
@@ -357,4 +357,113 @@
     pad.tone(NOTE_B5,0.1);
     wait(0.1);
     pad.tone(NOTE_E6,0.4);
+}
+
+void Score::evolution_music(Gamepad &pad, N5110 &lcd, int cha, int year)
+{
+    // bar 1
+    draw(lcd, cha, year);
+    pad.tone(NOTE_G5,0.5/4);
+    wait(0.5/4);
+    pad.tone(NOTE_D5,0.5/4);
+    wait(0.5/4);
+    pad.tone(NOTE_G5,0.5/4);
+    wait(0.5/4);
+    pad.tone(NOTE_D5,0.5/4);
+    wait(0.5/4);
+    wait(1.5);
+    // bar 2
+    
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    lcd.clear();
+    lcd.refresh();
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    draw(lcd, cha, year);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    lcd.clear();
+    lcd.refresh();
+    pad.tone(NOTE_A4,0.5);
+    wait(0.5);
+    // bar 4
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    draw(lcd, cha, year);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    lcd.clear();
+    lcd.refresh();
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    draw(lcd, cha, year);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    lcd.clear();
+    lcd.refresh();
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    draw(lcd, cha, year);
+    pad.tone(NOTE_G4,0.5/2);
+    wait(0.5);
+    lcd.clear();
+    lcd.refresh();
+    pad.tone(NOTE_B4,0.5);
+    wait(0.5);
+    congrats(pad, lcd, cha, year);
+}
+
+void Score::congrats(Gamepad &pad, N5110 &lcd, int cha, int year)
+{
+    draw_cong(lcd, cha, year);
+    // bar 1
+    pad.tone(NOTE_A5,0.4);
+    wait(0.4);
+    pad.tone(NOTE_F5,0.4);
+    wait(0.4);
+    pad.tone(NOTE_C5,0.8);
+    wait(0.8);
+    // bar 2
+    pad.tone(NOTE_AS5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_AS5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_AS5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_G5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_G5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_AS5,0.4/3);
+    wait(0.4/3);
+    pad.tone(NOTE_A5,0.8);
+    wait(0.8);
+}
+
+void Score::draw(N5110 &lcd, int cha, int year)
+{
+    lcd.clear();
+    if(year == 1 && cha == 1) {_s1.evo_1_sprite(lcd);}
+    else if (year == 2 && cha == 1) {_s1.evo_2_sprite(lcd);}
+    lcd.refresh();
+}
+
+void Score::draw_cong(N5110 &lcd, int cha, int year)
+{
+    lcd.clear();
+    if(year == 0 && cha == 1) {_s1.evo_1_cong(lcd);}
+    else if(year == 1 && cha == 1) {_s1.evo_2_cong(lcd);}
+    else if (year == 2 && cha == 1) {_s1.evo_3_cong(lcd);}
+    lcd.refresh();
 }
\ No newline at end of file