Projecte Guiat I
Fins ara hem vist una petita introducció a alguns dels components més bàsics de Python. En aquesta secció, veurem com podem utilitzar aquests components per començar a programar un petit joc en Arcade, que continuarem desenvolupant en les properes sessions.
Com a primer joc complet hem triat un joc de disapara asteroide. Aquest joc és un joc senzill en què el jugador controla una nau espacial que pot disparar contra els asteroides que apareixen a la pantalla. El joc acaba quan perdem totes les vides.
Instruccions
1. Initialització
- Crea un nou projecte en Arcade. Anomena’l
Asteroides
. Recorda que aquest projecte el desenvoluparem en diverses sessions, així que és important que el guardis correctament per poder-lo recuperar més endavant. - Crea una nova variable anomenada
intro
amb el text que es mostrarà a la pantalla de benvinguda. Aquest text pot ser el que vulguis, però recorda que ha de ser un text que animi al jugador a jugar. Com a exemple pot ser “Benvingut a Asteroides!”.
2. Tipus de dades
- Utilitza
game.splash
per mostrar el text de benvinguda a la pantalla. - Per evitar futures errades en el codi, agrega el tipus de dades de la variable
intro
com a cadena. - Definirem el punt d’inici del jugador en la pantalla. Per això, crea dues variables anomenades
x
iy
amb els valors 80 i 100 respectivament. Agrega el tipus de dades corresponents a les variables. -
Per veure com utilitzarem
x
iy
més endavant agrega el codi següent al final del teu codi:nau = sprites.create(img(""" . . . . 8 . . . . . . . 8 8 8 . . . . . . 8 1 8 . . . . . 2 8 1 8 2 . . . 2 2 8 8 8 2 2 . 2 2 2 8 8 8 2 2 2 . . . 5 . 5 . . . """), SpriteKind.player) nau.x = x nau.y = y
- Si no entens el codi, no et preocupis. Més endavant veurem com funciona i com podem modificar-lo per a adaptar-lo al nostre joc.
3. Entrada de dades
- Per a poder referir-nos al jugador en el joc, demana el nom de l’usuari amb
game.ask_for_string
i guarda’l en una variable anomenadajugador
.
4. Matemàtiques
- L’amplada i altura de la pantalla es tenen disponibles en les variables
screen.width()
iscreen.height()
. Utilitza aquestes variables per a ajustar millor la posició del jugador a la pantalla. Definiremx
com a la meitat de l’amplada de la pantalla iy
com a l’altura de la pantalla menys 20.
5. Operadors d’assignació
- Modifica el codi de forma que es demani el nom de l’usuari abans de fer el
game.splash
de benvinguda. - Per donar més ambient ens referirem al jugador com a
comandant
seguit del nom de l’usuari. Utilitza els operadors d’assignació per a modificar el valor de la variablejugador
i afegir-li el textComandant
al principi. - Utilitza els operadors d’assignació per a modificar el missatge de benvinguda i afegir-li el nom del jugador.
- Finalment, utilitza
game.splash
per mostrar el missatge de benvinguda amb el nom del jugador.