Une liste d’étoiles
Fait partie de la section Python dans une fenêtre de jeu du Journey Pygame de Coddy. Leçon 24 sur 32.
Une liste contient plusieurs valeurs dans une seule variable, dans l’ordre, entre crochets :
stars = [(100, 80), (220, 160), (360, 100)]Ici, chaque élément est un tuple de coordonnées. stars[0] est le premier élément, (100, 80), et stars[1] le deuxième. Le comptage commence à 0, comme avec range.
Une boucle for peut parcourir une liste. La variable de boucle prend chaque élément à tour de rôle :
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 5)Une position est un tuple, donc star va directement à l’endroit où se trouve le centre. Ajoute une position à la liste et une étoile supplémentaire apparaît, sans qu’il soit nécessaire de modifier la boucle. La liste est la mémoire du jeu de ce qui se trouve à l’écran ; la boucle dessine tout ce qu’elle contient.
Défi
FacileDessine un ciel avec cinq étoiles à partir d’une liste :
- Ajoute
(360, 100),(480, 200)et(580, 70)à la fin destars. - Remplace la ligne qui dessine
stars[0]parfor star in stars:, en dessinant chacune sous la forme d’un cercle blanc(255, 255, 255)de rayon 5.
Essayez vous-même
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Préparez les éléments ici, avant la boucle du jeu.
stars = [(100, 80), (220, 160)]
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Modifiez les éléments ici, une fois par image.
screen.fill((20, 24, 48))
# Dessinez ici, après le remplissage.
pygame.draw.circle(screen, (255, 255, 255), stars[0], 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Toutes les leçons de Python dans une fenêtre de jeu
1Votre première fenêtre
Votre premier programmeAfficher un messageLes couleurs en nombresDessiner la Lune3Si et touches
Passer de l’autre côté du bordLes touches déplacent la luneElif et ElseEt, ouVrai ou faux6Des listes de choses
Une liste d’étoilesCliquer pour ajouterCompter avec lenSupprimer une étoileNombres aléatoiresEntraînez-vous par vous-même : Playground Pygame