Un piccolo serpente ci conduce attraverso le principali caratteristiche del Windows Phone 7
Introduzione Core UI & Design Conclusione Premi Discussioni
Marcosroom.it Didatticando

Salvataggio e caricamento dei livelli

Come puoi vedere, nel gioco ci sono un paio di livelli predefiniti; ovviamente, ognuno di loro non è una classe differente: nella cartella Levels ci sono dei file XML che rappresentano i livelli di default; a runtime, vengono caricati del metodo Parse della classe LevelParser, il quale restituisce un'istanza della classe Level, già inizializzata con i dovuti parametri.

Prima di parlare del metodo di parsing, dobbiamo sapere come è strutturato un file XML. Ecco la struttura:

Schema of the XML files of the levels

L'elemento radice Level ha un singolo attributo Speed, che rappresenta la velocità di gioco (l'intervallo di tempo fra ogni tick del timer principale del serpente dell'utente). Al suo interno vi sono vari nodi:

  • Info: questa sezione contiene alcune informazioni riguardo al livello, come il titolo e la descrizione. L'attributo IsResource che indica se le stringhe contenute nei nodi Title e Description sono in realtà chiavi da cercare nei dizionari di localizzazione
  • Goals: contenitore degli obiettivi del livello. Ognuno di essi è rappresentato da un nodo Goal, e i suoi attributi Type e Param sono rispettivamente il tipo dell'obiettivo e il parametro da passare al costruttore
  • Cells: questo nodo è la rappresentazione dello stato iniziale della griglia di gioco. Gli attributi Width e Height sono, come dice il nome, le dimensioni della griglia. Il contenuto di questo nodo è un po' particolare: ci sono una serie di caratteri, e ogni carattere è una singola cella,  e questa è la legenda:
    • # => Free cell
    • W => Wall cell
    • D => DeathFood cell
    • F => Food cell
    • L => LastTail cell
    • T => Tail cell
    • H => Head cell
    • / => EnemyLastTail cell
    • - => EnemyTail cell
    • * => EnemyHead cell

 

Condividi
Indietro Tutti i webmaster che volessero segnalare, non copiare,
il contenuto di questa pagina sul proprio sito, possono farlo liberamente.
E' gradito un preavviso tramite mail all'autore e l'iserimento,
nella pagina di citazione, di un link verso la pagina corrente.
© Copyright    Marco's Room
Avanti
Download SnakeMobile

Scaricato 115 volte

Celle IoC (Inversione di controllo) Un contenitore per Windows Phone 7 Controller di movimento Obiettivi Livelli Serpenti nemici Salvataggio e caricamento dei livelli