Greenfoot Come creare un gioco in pochi semplici

  • Slides: 29
Download presentation
Greenfoot Come creare un gioco in pochi semplici passi

Greenfoot Come creare un gioco in pochi semplici passi

Crab Game Il giocatore comanda il granchio con l’obiettivo di mangiare tutti i vermi

Crab Game Il giocatore comanda il granchio con l’obiettivo di mangiare tutti i vermi prima di essere mangiato a sua volta da una delle aragoste. Il gioco termina per aver mangiato tutti i vermi o per essere stato mangiato da un’aragosta.

Crab Game – Gli elementi Il giocatore comanda il granchio con l’obiettivo di mangiare

Crab Game – Gli elementi Il giocatore comanda il granchio con l’obiettivo di mangiare tutti i vermi prima di essere mangiato a sua volta da una delle aragoste.

Crab Game – Il granchio: • Mangia i vermi che intercetta lungo il cammino

Crab Game – Il granchio: • Mangia i vermi che intercetta lungo il cammino • Si muove comandato dal giocatore.

Crab Game – Il granchio II Come farlo muovere? Qualche idea?

Crab Game – Il granchio II Come farlo muovere? Qualche idea?

Crab Game – Il granchio III La nostra scelta è stata di consentire •

Crab Game – Il granchio III La nostra scelta è stata di consentire • Movimenti laterali • Rotazioni

Crab Game – L’aragosta: • Si muove per il campo di gioco autonomamente in

Crab Game – L’aragosta: • Si muove per il campo di gioco autonomamente in maniera casuale • Mangia il granchio se lo intercetta lungo il suo percorso

Crab Game – Il verme: • Appare in una posizione casuale del campo di

Crab Game – Il verme: • Appare in una posizione casuale del campo di gioco • Si muove lievemente per simulare il movimento del verme che esce dalla sabbia

Quale ambiente abbiamo deciso di usare per lo sviluppare il gioco?

Quale ambiente abbiamo deciso di usare per lo sviluppare il gioco?

Quale ambiente abbiamo deciso di usare per lo sviluppare il gioco?

Quale ambiente abbiamo deciso di usare per lo sviluppare il gioco?

Cos’è Greenfoot? ● È un ambiente di sviluppo nato nel 2003 e pubblicato nel

Cos’è Greenfoot? ● È un ambiente di sviluppo nato nel 2003 e pubblicato nel 2006 presso l'Università di Kent ● È un software libero e disponibile per tutte le piattaforme ● È usato come ambiente per facilitare l’ apprendimento della programmazione orientata agli oggetti in Java ● È utilizzato maggiormente per lo sviluppo di giochi semplici L’obiettivo degli sviluppatori: creare uno strumento per insegnare la programmazione orientata agli oggetti tramite un’interfaccia grafica che permette di interagire semplicemente con gli oggetti che si stanno manipolando.

Greenfoot – Elementi Interfaccia • Pulsante Act • Il programma avanza di un passo

Greenfoot – Elementi Interfaccia • Pulsante Act • Il programma avanza di un passo • Pulsante Run • Il programma viene eseguito come susseguirsi di azioni descritte nel metodo act() • Pulsante Reset • Reinizializza il programma allo stadio iniziale

Greenfoot – Elementi Interfaccia II • Barra speed • Modifica il rapporto tra il

Greenfoot – Elementi Interfaccia II • Barra speed • Modifica il rapporto tra il tempo trascorso nell’esecuzione e il numero di passi ( act() ) eseguiti • Pulsante Compile • Compila il codice rendendolo pronto per l’esecuzione

Greenfoot – Elementi Interfaccia III Greenfoot mette a disposizione due superclassi da cui si

Greenfoot – Elementi Interfaccia III Greenfoot mette a disposizione due superclassi da cui si possono creare delle sottoclassi specializzate a seconda delle necessità: • Classe World • Classe Actor

Greenfoot – Le superclassi • Classe World • È la classe da cui deriva

Greenfoot – Le superclassi • Classe World • È la classe da cui deriva lo scenario del programma che si sta sviluppando • Gli si può assegnare una immagine di sfondo • Contiene il metodo act() • È formato da una matrice in cui posso essere presenti degli attori • Classe Actor • È la classe da cui si possono derivare gli attori necessari al programma • Alla creazione gli si assegna un’immagine • Contiene il metodo act() • Ogni attore ha una posizione nel world

Greenfoot – Scenario e Attori

Greenfoot – Scenario e Attori

Metodi Greenfoot

Metodi Greenfoot

Crab Game

Crab Game

Lo Scenario

Lo Scenario

Lo Scenario II • Tramite creazione guidata si può scegliere lo sfondo • È

Lo Scenario II • Tramite creazione guidata si può scegliere lo sfondo • È una sottoclasse di World (predefinita in Greenfoot) • Descrive la classe del campo di gioco • Consente la gestione delle interazioni degli Actor

Gli attori – Classe Actor • Classe che descrive gli oggetti che interagiscono nel

Gli attori – Classe Actor • Classe che descrive gli oggetti che interagiscono nel World • Ogni actor ha una posizione e un aspetto • Metodo act() • Chiamato dai bottoni Act e Run nell’interfaccia • Permette di implementare il comportamento dell’oggetto

Sottoclasse - Animal

Sottoclasse - Animal

Sottoclasse – Animal II • Estensione della Classe Actor • Contiene metodi comuni alle

Sottoclasse – Animal II • Estensione della Classe Actor • Contiene metodi comuni alle sottoclassi successive • • • public void turn(int angle) public void move() public boolean at. World. Edge() public boolean can. See(Class clss) public void eat(Class clss)

Sottoclasse - Animal (Crab Worm Lobster)

Sottoclasse - Animal (Crab Worm Lobster)

Sottoclasse - Animal (Crab Worm Lobster)II • Estensione della Classe Animal • Differenzia ogni

Sottoclasse - Animal (Crab Worm Lobster)II • Estensione della Classe Animal • Differenzia ogni Classe specializzando il comportamento • Crab • Mangia Worm • Movimenti seguono i comandi del Giocatore • Lobster • Mangia Crab • Movimenti casuali lungo lo scenario • Worm • Movimenti sul posto

Actor Crab • Il cuore della classe è il metodo Act public void act()

Actor Crab • Il cuore della classe è il metodo Act public void act() { look. For. Worm(); (A) check. Keypress(); (B) // Add your action code here. } (A) utilizza eat() della classe Animal (B) utilizza turn() e move() della classe Greenfoot

Actor Lobster public void act() { look. For. Crab(); (A) random. Turn(); (B) move();

Actor Lobster public void act() { look. For. Crab(); (A) random. Turn(); (B) move(); (C) if (at. World. Edge()) turn (13); (D) } (A) Come per la classe Crab utilizza il metodo eat della classe Animal (B), (C) e (D) gestiscono il movimento casuale tramite i metodi della classe Greenfoot

Actor Worm public void act() { movement(); } Movement() utilizza i metodi della classe

Actor Worm public void act() { movement(); } Movement() utilizza i metodi della classe Greenfoot

Grazie Per l’Attenzione

Grazie Per l’Attenzione