Place les étoiles
Fait partie de la section Python dans une fenêtre de jeu du Journey Pygame de Coddy. Leçon 29 sur 32.
Les quatre dernières leçons permettent de créer un petit jeu, Night Sky : tu cliques pour placer des étoiles, elles scintillent, un compteur indique leur nombre et, à vingt, le ciel est plein. Chaque leçon reprend le code de la précédente.
Le jeu utilise ce que cette section t’a appris. Les étoiles sont une liste de positions, créée vide avant la boucle du jeu. Un clic ajoute sa position à la liste, et une boucle for dessine chaque étoile de la liste à chaque image :
stars = []
if event.type == pygame.MOUSEBUTTONDOWN:
stars.append(event.pos)
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 3)Dessine les étoiles après la lune et le sol, afin qu’elles apparaissent au premier plan. Une étoile placée sur la lune se trouve alors devant elle, comme si elle était plus proche.
Défi
FacileCommencez Night Sky :
- Créez
stars = []avant la boucle de jeu. - Lors d’un événement
MOUSEBUTTONDOWN, ajoutezevent.posàstars. - Après la lune et le sol, dessinez chaque étoile sous la forme d’un cercle blanc
(255, 255, 255)de rayon 3.
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.
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, (240, 230, 160), (560, 80), 40)
pygame.draw.rect(screen, (14, 16, 30), (0, 430, 640, 50))
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 LuneEntraînez-vous par vous-même : Playground Pygame