Skillbook Logo
foto profilo

Skill Factory

Lista post > Come progettare e sviluppare giochi per l'educazione e la formazione con Python: lezione 2

Come progettare e sviluppare giochi per l'educazione e la formazione con Python: lezione 2

Mirko Onorato | Skill Factory - 18/06/2024 17:09:29 | in Tutorials

Nella lezione precedente abbiamo visto gli step fondamentali per creare un gioco digitale da utilizzare nel mondo della scuola o della formazione professionale, per educare e facilitare l'apprendimento degli studenti. 

In questa nuova lezione inizieremo a creare un semplice gioco digitale; l'obiettivo delle attività svolte in questa  prima parte  è quello di prendere confidenza con gli sprite.

Gli sprite sono oggetti che possono contenere immagini, vengono usati per creare le animazioni dei giochi.

Il protagonista del gioco sarà Hammer un martelletto che avrà lo scopo di eliminare dalle scene del gioco gli elementi non corretti.

Lo scopo del gioco sarà  quello di verificare se gli studenti conoscono gli argomenti delle diverse esperienze di gioco proposte; ogni esperienza potrà prevedere anche più livelli.

Il gioco è adatto agli studenti della scuola elementare o media di età compresa tra gli otto e gli undici anni, naturalmente le esperienze di gioco possono essere create in base all'età. Quindi possiamo prevedere che il giocatore prima d'iniziare a giocare imposti la sua età.

L'immagine seguente mostra il mockup dell'interfaccia del gioco HAMMER-XP:

COME TRASFORMARE HAMMER IN UNO SPRITE

Prima di tutto vi suggerisco di creare una directory sul disco C, con il nome HAMMER-XP.

Per il download di HAMMER cliccate qui per visualizzare l'immagine, poi premete il tasto destro del mouse e salvate l'immagine di HAMMER nella directory HAMMER-XP.

Il codice Python seguente vi permetterà di trasformare HAMMER in uno sprite e visualizzarlo sullo schermo:


import pygame

SIZE = WIDTH, HEIGHT = 1200, 690 # Impostiamo la larghezza e l'altezza dello schermo
BACKGROUND_COLOR = pygame.Color('white') # Impostiamo il colore dello sfondo dello schermo
  
# La classe seguente permette di creare lo sprite e le sue caratteristiche
class Hammer(pygame.sprite.Sprite):
    def __init__(self):
        super(Hammer, self).__init__()
        self.images = []
        self.images.append(pygame.image.load('hammer.png')) # Associamo allo sprite l'immagine di hammer
        self.index = 0
        self.x=0
        self.y=0
        self.image = self.images[self.index]
        self.rect = self.image.get_rect()
  
def main():
    # Inizializziamo l'ambiente pygame
    pygame.init()
    # Impostiamo le dimensioni dello schermo
    screen = pygame.display.set_mode(SIZE)
    # Creiamo lo sprite hammer usando la classe sprite Hammer
    hammer = Hammer()
    # Creiamo il gruppo che contiene gli sprite del gioco
    sprite_group = pygame.sprite.Group()
    # Aggiungiamo al gruppo lo sprite hammer
    sprite_group.add(hammer)
    # Gestiamo gli eventi prodotti dal giocatore
    while True:
        for event in pygame.event.get():
            # Interrompiamo il gioco se clicchiamo sulla X di fine gioco
            if event.type == pygame.QUIT:
                pygame.quit()
                quit()
        # Impostiamo la posizione di HAMMER nello schermo
        hammer.rect.x=550  
        hammer.rect.y=150      
        # Impostiamo il colore dello sfondo dello schermo 
        screen.fill(BACKGROUND_COLOR)
        # Disegniamo tutti gli sprite associati al gruppo sullo schermo
        sprite_group.draw(screen)
        # Aggiorniamo lo schermo per vedere i cambiamenti
        pygame.display.update()
  
# Avviamo il programma eseguendo il metodo main() 
if __name__ == '__main__':
    main()


Avviando il programma otterrete la schermata seguente:

COME AGGIUNGERE AL GIOCO UN'IMMAGINE DI SFONDO

Per il download dell'immagine di sfondo del gioco cliccate qui per visualizzare l'immagine, poi premete il tasto destro del mouse e salvate l'immagine dello sfondo nella directory HAMMER-XP.

Il codice Python seguente vi permetterà di aggiungere al gioco anche l'immagine di sfondo:


import pygame

SIZE = WIDTH, HEIGHT = 1200, 690 # Impostiamo la larghezza e l'altezza dello schermo
# Carichiamo l'immagine di sfondo del gioco
SFONDO = pygame.image.load("sfondo_hammer_xp.png")

# La classe seguente permette di creare lo sprite e le sue caratteristiche
class Hammer(pygame.sprite.Sprite):
    def __init__(self):
        super(Hammer, self).__init__()
        self.images = []
        self.images.append(pygame.image.load('hammer.png')) # Associamo allo sprite l'immagine di hammer
        self.index = 0
        self.x=0
        self.y=0
        self.image = self.images[self.index]
        self.rect = self.image.get_rect()
def main():
    # Inizializziamo l'ambiente pygame
    pygame.init()
    # Impostiamo le dimensioni dello schermo
    screen = pygame.display.set_mode(SIZE)
    # Creiamo lo sprite hammer usando la classe sprite Hammer
    hammer = Hammer()
    # Creiamo il gruppo che contiene gli sprite del gioco
    sprite_group = pygame.sprite.Group()
    # Aggiungiamo al gruppo lo sprite hammer
    sprite_group.add(hammer)
    # Gestiamo gli eventi prodotti dal giocatore
    while True:
        for event in pygame.event.get():
            # Interrompiamo il gioco se clicchiamo sulla X di fine gioco
            if event.type == pygame.QUIT: 
                pygame.quit()
                quit()
        # Impostiamo la posizione di HAMMER nello schermo
        hammer.rect.x=550  
        hammer.rect.y=150      
        # Disegniamo l'immagine come sfondo del gioco 
        screen.blit(SFONDO,(0,0))
        # Disegniamo tutti gli sprite associati al gruppo sullo schermo
        sprite_group.draw(screen)
        # Aggiorniamo lo schermo per vedere i cambiamenti
        pygame.display.update()

# Avvia il programma eseguendo il metodo main() 
if __name__ == '__main__':
    main()


Avviando il programma otterrete la schermata seguente:

Nella prossima lezione imparerete a mettere HAMMER in movimento e a gestire le collisioni tra gli sprite.

Per il download delle risorse di questa lezione cliccate qui.


< LEZIONE PRECEDENTE    |   LEZIONE SUCCESSIVA > | VAI ALLA PRIMA LEZIONE

T U T O R I A L S    S U G G E R I T I


PER IMPARARE A PROGRAMMARE, SEGUI LE PLAYLIST SUL NOSTRO CANALE YOUTUBE "SKILL FACTORY CHANNEL": clicca qui per accedere alle playlist


PAR GOL (Garanzia di Occupabilità dei Lavoratori)

Se sei residente in Campania e cerchi lavoro, sai che puoi partecipare gratuitamente ad un corso di formazione professionale PAR GOL?

I corsi di formazione professionale PAR GOL sono finanziati dalla Regione Campania e ti permettono di acquisire una Qualifica Professionale Europea (EQF) e di partecipare ad un tirocinio formativo aziendale.

 

Invia il tuo CV o una manifestazione d'interesse a: recruiting@skillfactory.it

oppure

chiama ai seguenti numeri di telefono:

Tel.: 081/18181361
Cell.: 327 0870141

oppure

Contattaci attraverso il nostro sito: www.skillfactory.it


Per maggiori informazioni sul progetto PAR GOLclicca qui.

Per maggiori informazioni sulle Qualifiche Professionali Europee (EQF)clicca qui.


Academy delle professioni digitali

Per consultare il catalogo dei corsi online della nostra Academy ...

... collegati al nostro sito: www.skillfactory.it

 

Share Button
TOP