Premi “Invio” per saltare al contenuto

Tag: Classe

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

Oggi gestiremo la collisione tra le Sfere in movimento e il gruppo di sfere in alto.

Anche se non abbiamo ancora un”cannone spara bolle” possiamo continuare a muovere le sfere utilizzando il Mouse, ma il meccanismo utilizzato per intercettare la collisione tra la Sfera in movimento e le Sfere già collegate al soffitto sarà la stessa.

loading spinner
Lascia un commento

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

Oggi proverò a risolvere il problema delle Sfere Sospese, ovvero di tutte quelle sfere che, non avendo una connessione con il soffitto del quadro di gioco, devono cadere giù.

Non è un compito molto difficile, a questo punto abbiamo già la nostra bella Griglia (creata nella Lezione 1) e siamo già in grado di far esplodere i gruppi di colore uguale (grazie alla Lezione 2)… Non ci rimane che continuare da lì.

loading spinner
Lascia un commento

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

Nel primo articolo su come realizzare questo gioco ho stabilito un elenco dei compiti che la griglia di gioco deve essere in grado di compiere, e ho iniziato proprio dal punto numero 1.

Proverò adesso a trovare una soluzione per il punto numero 2, cioè Gestire i gruppi di sfere uguali.

Intanto mi fermo un attimo per decidere quali colori utilizzare, me ne servono 8, tutti diversi:

8 colori diversi
8 colori diversi da utilizzare per le sfere del gioco.

Per adesso li mettiamo da parte, ci serviranno più tardi.

loading spinner
3 Commenti

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

Scale 9 Bitmap

Tra le caratteristiche più usate dell’ambiente di Flash c’è sicuramente la Scale 9 Grid.

Questo “ridimensionamento intelligente” ci permette di modificare le dimensioni di un MovieClip senza deformarne i contorni. Purtroppo esiste ancora un grosso limite all’utilizzo di questa tecnica: non funziona con le Bitmap.

Chi lavora con Flash da abbastanza tempo ricorderà che prima della versione 8 non esisteva uno Scale9, quindi era necessario dividere fisicamente un MovieClip in nove sezioni e ridimensionarle singolarmente, questa operazione è ancora necessaria quando abbiamo a che fare con delle Bitmap, così ho pensato di semplificare la vita ai miei pochi lettori condividendo una Classe che ho chiamato Scale9Bitmap (con uno sforzo di originalità).

loading spinner
3 Commenti

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