Premi “Invio” per saltare al contenuto

Tag: Evento

Realizzare un Gioco in HTML5 Ep. III: Animare gli elementi

Nel primo articolo di questa serie abbiamo visto cosa è HTML5 e cosa è un Canvas. Nel secondo articolo di questa serie abbiamo visto come disegnare forme e immagini all’interno di un Canvas. Oggi finalmente vedremo qualcosa muoversi, ed è il momento di fare un po’ di ordine nel nostro codice.

loading spinner
Lascia un commento

Realizzare Puzzle Bobble (Bust a Move) [1 di ?]

Ho immaginato che la prima parte da affrontare nella realizzazione di un gioco simile a Puzzle Bobble sia la gestione della griglia triangolare che si occupa del corretto posizionamento delle sfere.

Voglio evitare tutti gli errori più comuni (gli errori che ho riscontrato giocando ad altre versioni di questo gioco trovate in rete), quindi ho deciso che tutto il lavoro più difficile sarà affidato ad una singola Classe. Questa sarà la Classe più importante di tutto il progetto e sarà in grado di:

  1. Gestire la griglia di posizionamento delle sfere.
    Infatti le sfere non sono posizionate semplicemente una accanto all’altra, ma seguono una struttura triangolare.
  2. Gestire i gruppi di sfere uguali.
    Dovrà essere in grado di stabilire se si è formato un gruppo di tre o più sfere dello stesso colore, per permetterci di farle esplodere.
  3. Gestire la connessione tra le sfere e il “soffitto”.
    Anche se non fanno parte di un gruppo di sfere che esplode, dobbiamo essere in grado di rintracciare ed eliminare tutte le sfere che non hanno più un “sostegno”, così da farle precipitare.
  4. Gestire il “sovraccarico” di sfere.
    Quando la sfera più bassa della nostra struttura si trova oltre il limite stabilito il giocatore perde la partita.
  5. Gestire i colori in uso.
    Il gioco orginale evita di generare sfere di colore diverso da quelle ancora in gioco, così i colori disponibili si esauriscono poco alla volta.
  6. Gestire il movimento del gruppo di sfere.
    Col passare del tempo il gruppo di sfere in gioco si abbassa sempre di più, aumentando la difficoltà.
  7. Generare una “schermata iniziale” in base ad un modello.
    Il gioco originale presenta 30 quadri di gioco ed ognuno di questi ha un suo disegno caratteristico.
  8. Tenere il conto delle sfere in gioco.
    Per avere la possibilità di terminare il quadro quando si sono esaurite tutte le sfere.
loading spinner
Lascia un commento

LocalConnection: due SWF parlano tra loro

L’Oggetto LocalConnection risolve la maggior parte dei problemi legati al passaggio di informazioni da un SWF ad un altro SWF.

Esistono numerosi casi reali in cui è molto utile affidare le comunicazioni tra due SWF ad una LocalConnection:

  1. Se una pagina HTML contiene due SWF ed è necessario trasferire informazioni da uno all’altro senza utilizzare JavaScript.
  2. Se una pagina HTML contiene un SWF e un’altra pagina HTML contiene un altro SWF e non esistono riferimenti JavaScript per passare dati da una pagina all’altra.
  3. Se i due SWF si trovano in contesti separati, ad esempio uno è contenuto all’interno di una pagina HTML e l’altro è parte di una applicazione AIR.
  4. Se i due SWF non sono compatibili perché scritti con versioni diverse di ActionScript (uno in AS2, l’altro in AS3).
  5. Anche se i due SWF condividono lo stesso contesto (ad esempio uno è stato caricato all’interno dell’altro) si possono utilizzare le LocalConnection, ma non è il caso d’uso più comune.

In tutti questi casi una LocalConnection ci permette di richiamare una Funzione da un filmato ad un altro, l’unico requisito è che i due filmati stiano girando nello stesso momento sullo stesso computer.

loading spinner
9 Commenti

Realizzare Asteroids [parte 2]

Oggi faremo girare l’astronave in senso orario o antiorario, non è una cosa molto difficile.

Prima di cominciare, però, dobbiamo creare un’altra cartella che chiameremo elementi, esattamente allo stesso percorso in cui si trova la cartella grafica, creata nella lezione precedente. Questo ci aiuterà a differenziare meglio le Classi che compongono il nostro gioco.

loading spinner
Lascia un commento

Realizzare Snake Game [parte 4]

Oggi, finalmente, vedremo qualcosa muoversi… è giunto il momento di realizzare la Classe principale del gioco: si chiamerà SnakeGame.

Per funzionare, questa Classe avrà bisogno di tutto quello che abbiamo fatto fino ad ora:

  • La Classe Player per creare il Serpente.
  • La Classe Wall per creare i bordi del quadro di gioco.
  • La Classe Cherry per creare il cibo del Serpente.

A loro volta queste tre Classi hanno bisogno della Classe Square per disegnare la propria grafica.

Se non avete già scritto le quattro Classi che ci servono dovrete prima leggere le lezioni precedenti:

  1. Realizzare Snake Game Parte 1
  2. Realizzare Snake Game Parte 2
  3. Realizzare Snake Game Parte 3
loading spinner
Lascia un commento

Realizzare Snake Game [parte 3]

In questo articolo ho intenzione di parlare di quella che credo sia la parte più importante di ActionScript 3: gli Eventi.

Un Evento è un’azione che avviene solitamente al di fuori del ciclo di un programma, gestita da una porzione di codice all’interno del programma.

Quando si verifica un Evento, una porzione di codice lo intercetta e chiama una Funzione, che viene eseguita. Vediamo un esempio pratico:

  • L’utente posiziona il puntatore del Mouse su un pulsante e fa click sul tasto sinistro.
  • Il pulsante “sente” il click del Mouse e richiama una Funzione.
  • La Funzione apre una nuova pagina web.

Il click del Mouse è l’Evento che vogliamo intercettare. Il pulsante è associato ad un Oggetto che è in grado di intercettare il click del Mouse e che per questo si chiama Listener (ascoltatore). La Funzione contiene il codice da eseguire, e prende il nome di Trigger (innesco).

loading spinner
Lascia un commento