Una lista di stelle
Fa parte della sezione Python in una finestra di gioco del percorso Pygame di Coddy. Lezione 24 di 32.
Una lista contiene molti valori in un'unica variabile, in ordine, tra parentesi quadre:
stars = [(100, 80), (220, 160), (360, 100)]Qui ogni elemento è una tupla di coordinate. stars[0] è il primo elemento, (100, 80), mentre stars[1] è il secondo. Il conteggio inizia da 0, come con range.
Un ciclo for può scorrere una lista. La variabile del ciclo assume a turno il valore di ciascun elemento:
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 5)Una posizione è una tupla, quindi star va direttamente dove va il centro. Aggiungi una posizione alla lista e apparirà un'altra stella, senza modificare il ciclo. La lista è la memoria del gioco di ciò che si trova sullo schermo; il ciclo disegna tutto ciò che contiene.
Sfida
FacileDisegna un cielo di cinque stelle partendo da una lista:
- Aggiungi
(360, 100),(480, 200)e(580, 70)alla fine distars. - Sostituisci la riga che disegna
stars[0]confor star in stars:, disegnando ciascuna come un cerchio bianco(255, 255, 255)di raggio 5.
Provalo tu
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Prepara tutto qui, prima del ciclo di gioco.
stars = [(100, 80), (220, 160)]
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Apporta le modifiche qui, una volta per fotogramma.
screen.fill((20, 24, 48))
# Disegna qui, dopo aver riempito lo schermo.
pygame.draw.circle(screen, (255, 255, 255), stars[0], 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Tutte le lezioni di Python in una finestra di gioco
6Liste di elementi
Una lista di stelleClicca per aggiungereConta con lenRimuovi una stellaNumeri casualiEsercitati da solo: Playground Pygame