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

Obiettivi

Ogni livello deve avere un obiettivo da completare; poichè ce ne sono molti, dobbiamo prima sviluppare un servizio comune e poi possiamo creare i singoli componenti. Questo è il livello di astrazione:

IGoal interface
public interface IGoal
{
    bool IsAccomplished(GoalEventArgs e);
    Uri ImageUri { get; }
}
                

Come puoi vedere, l'interfaccia è molto semplice. Il metodo principale è IsAccomplished(): l'argomento e di tipo GoalEventArgs e contiene qualche dato (come il cibo mangiato o la lunghezza del serpente); il metodo dovrebbe creare questi valori e restituire true, se l'obiettivo è stato completato, altrimenti false. La proprietà ImageUri restituisce l'Uri dell'immagine rappresentativa.

Per esempio, questo è il FoodEatenGoal:

public class FoodEatenGoal : IGoal 
{

    private int _Needs;

    public FoodEatenGoal(int needs)
    {
        _Needs = needs;
    }

    public bool IsAccomplished(GoalEventArgs e)
    {
        return e.EatenFood >= _Needs;
    }

    public Uri ImageUri { 
        get { 
            return new Uri("/SnakeMobile.Core;component/Images/Food.png", UriKind.Relative);
        }
    }

}
    

Il costruttore ha bisogno di un parametro di tipo int, che rappresenta la minima quantità di cibo che il serpente deve mangiare prima che l'obiettivo venga completato; il metodo IsAccomplished() restituisce, invece, un valore che indica se è stato mangiato abbastanza cibo.

Gli altri 2 obiettivi (GrowUpGoal e TimeGoal) funzionano allo stesso modo, quindi non ne parlerò.

 

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