feat: make game over screen creepy with custom music and new ascii rat
This commit is contained in:
+7
-11
@@ -86,21 +86,17 @@ void main(void) {
|
||||
// Disegna l'ASCII art e il messaggio di sconfitta!
|
||||
printf("\n\n");
|
||||
printf(" GAME OVER!\n\n");
|
||||
printf(" /\\___/\\\n");
|
||||
printf(" ( ^ ^ )\n");
|
||||
printf(" > w <\n");
|
||||
printf(" \\___/\n\n");
|
||||
printf(" /\\_,,,_/\\\n");
|
||||
printf(" | ' O O ' |\n");
|
||||
printf(" | >w< |\n");
|
||||
printf(" \\_/\"v\"\\_/\n\n");
|
||||
printf(" L'INVASIONE VINCE!\n");
|
||||
|
||||
// Suono di risata malefica (una specie di trillo)
|
||||
NR10_REG = 0x1E;
|
||||
NR11_REG = 0x80;
|
||||
NR12_REG = 0xF3;
|
||||
NR13_REG = 0x00;
|
||||
NR14_REG = 0x87;
|
||||
// Suono inquietante e fine della traccia allegra
|
||||
play_game_over_music();
|
||||
|
||||
while(1) {
|
||||
update_music(); // La musica del tracollo continua
|
||||
// Loop vuoto, la musica è ormai spenta a parte il riverbero maligno
|
||||
wait_vbl_done();
|
||||
}
|
||||
}
|
||||
|
||||
+15
@@ -303,3 +303,18 @@ void update_music(void) {
|
||||
frame_counter--;
|
||||
}
|
||||
}
|
||||
|
||||
void play_game_over_music(void) {
|
||||
// Silenzia bruscamente la melodia allegra, il basso e i tamburi
|
||||
NR22_REG = 0x00; // Spegne CH2
|
||||
NR32_REG = 0x00; // Spegne CH3
|
||||
NR42_REG = 0x00; // Spegne CH4
|
||||
|
||||
// Suona una nota discendente e inquietante sul Canale 1
|
||||
// NR10: Sweep Time lungo, direzione discendente, shift
|
||||
NR10_REG = 0x7F;
|
||||
NR11_REG = 0x80;
|
||||
NR12_REG = 0xF7;
|
||||
NR13_REG = 0x50;
|
||||
NR14_REG = 0x86;
|
||||
}
|
||||
|
||||
@@ -7,4 +7,6 @@ void update_music(void);
|
||||
void play_sfx_moan(void);
|
||||
void play_sfx_plop(void);
|
||||
|
||||
void play_game_over_music(void);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user