Esercizio 8


Scrivere una pagina HTML che presenti un gioco di tiro al bersaglio, costituito in questo modo:
  1. In fondo alla pagina sono presenti i pulsanti "Inizio" e "Fine" che fanno cominciare o terminare il gioco.
  2. Quando il gioco inizia, il bersaglio si muove da una parte all'altra dello schermo.
  3. L'utente colpisce il bersaglio facendovi click sopra con il mouse.
  4. Quando il bersaglio viene colpito, ricompare a in nuova posizione scelta a caso sullo schermo.
  5. Una volta colpiti 10 bersagli, il gioco termina con un messaggio di vittoria.


Suggerimenti:
  1. Copiare l'esempio della pallina in movimento sullo schermo.
  2. Inserire la IMG della palla, in un ancora a cui sia associato l'evento "onClick".
  3. Utilizzare una variabile per contare il numero di volte che il bersaglio viene colpito.
  4. Nel gestore dell'evento "onClick" incrementare il conteggio delle volte in cui il bersaglio e' stato colpito: quando questo raggiunge 10, interrompere il timer e stampare (con un alert) il messaggio di vittoria. Se invece il conteggio e' minore di 10, generare un numero casuale, ed assegnarlo alla variabile che contiene la posizione dell'oggetto.
  5. Il pulsante di inizio del gioco, avvia il timer e riporta a 0 il conteggio dei colpi centrati.
  6. Il pulsante di fine gioco, ferma semplicemente il timer.


Facoltativo:
  1. Visualizzare il punteggio totalizzato. Il modo piu' facile per poterlo fare consiste nel realizzare 11 bimap, contenenti i numeri da 0 a 10, da alternare al variare del punteggio.
  2. Colpiti 10 bersagli, il gioco passa al livello successivo invece che terminare. Ad ogni livello, la velocita' della pallina aumenta. Il gioco termina quando si colpiscono tutti i bersagli dell'ultimo livello.
  3. Per implementare i livelli di difficlta', occorre aggiungere una nuova variabile che memorizzi il livello attuale. Questa viene azzerata al cominciare di una nuova partita, ed incrementata ad ogni salto di livello.
  4. La velocita' della pallina puo' essere aumentata cambiando l'intervallo del timer, oppure aumentando il valore della variabile contente la "direzione".
  5. Visualizzare il livello di difficolta', cosi come si e' fatto per il punteggio.