Compare commits

...

3 Commits

Author SHA1 Message Date
24c1a35c7d fix missiles 2025-01-03 22:11:36 +01:00
b7508c1daa caitlin: missiles 2025-01-03 21:59:55 +01:00
fe7f6bc4c8 caitlin: tirer_missiles 2025-01-02 21:56:28 +01:00

30
main.py
View File

@ -23,12 +23,13 @@ def tirer_missiles(pos_x, pos_y):
missiles = pygame.sprite.Sprite() missiles = pygame.sprite.Sprite()
pygame.sprite.Sprite.__init__(missiles) pygame.sprite.Sprite.__init__(missiles)
missiles.image = pygame.image.load("missiles.png").convert_alpha() missiles.image = pygame.image.load("missiles.png").convert_alpha()
missiles.image = pygame.transform.scale(missiles.image,[50, 100]) missiles.image = pygame.transform.scale(missiles.image,[10, 100])
missiles.rect = missiles.image.get_rect() missiles.rect = missiles.image.get_rect()
missiles.rect.x = pos_x missiles.rect.x = pos_x
missiles.rect.y = pos_y missiles.rect.y = pos_y
return missiles return missiles
missiles = pygame.sprite.Sprite()
liste_de_missiles = [] liste_de_missiles = []
liste_sprites_missiles = pygame.sprite.Group() liste_sprites_missiles = pygame.sprite.Group()
@ -49,8 +50,6 @@ liste_sprites_ananas = pygame.sprite.LayeredUpdates()
liste_des_sprites.add(avion) liste_des_sprites.add(avion)
liste_d_ananas = [] liste_d_ananas = []
keys = pygame.key.get_pressed()
police = pygame.font.Font(None, 25) police = pygame.font.Font(None, 25)
texte = pygame.sprite.Sprite() texte = pygame.sprite.Sprite()
pygame.sprite.Sprite.__init__(texte) pygame.sprite.Sprite.__init__(texte)
@ -62,7 +61,7 @@ liste_des_sprites.add(texte)
police = pygame.font.Font(None, 20) police = pygame.font.Font(None, 20)
texte2 = pygame.sprite.Sprite() texte2 = pygame.sprite.Sprite()
texte2.image = police.render("Vous vous trouver dans lengin SU-PER12. Votre mission est déliminer le plus dennemis possible!", 1, (10, 10, 10),(255, 90, 20)) texte2.image = police.render("Vous vous trouvez dans lengin SU-PER12. Votre mission est déliminer le plus dennemis possible!", 1, (10, 10, 10),(255, 90, 20))
texte2.rect = texte2.image.get_rect() texte2.rect = texte2.image.get_rect()
texte2.rect.centerx = 360 texte2.rect.centerx = 360
texte2.rect.centery = 60 texte2.rect.centery = 60
@ -93,9 +92,10 @@ texte5.rect.centery = 1500
liste_des_sprites.add(texte5) liste_des_sprites.add(texte5)
gameover = False gameover = False
score = 0
while running: while running:
keys = pygame.key.get_pressed()
if keys[pygame.K_SPACE]: if keys[pygame.K_SPACE]:
liste_des_sprites.remove(texte) liste_des_sprites.remove(texte)
liste_des_sprites.remove(texte1) liste_des_sprites.remove(texte1)
@ -106,6 +106,7 @@ while running:
liste_des_sprites.draw(fenetre) liste_des_sprites.draw(fenetre)
liste_sprites_ananas.draw(fenetre) liste_sprites_ananas.draw(fenetre)
liste_sprites_missiles.draw(fenetre)
for event in pygame.event.get(): for event in pygame.event.get():
if event.type == pygame.QUIT: if event.type == pygame.QUIT:
running = False running = False
@ -113,11 +114,10 @@ while running:
avion.rect.x = event.pos[0] avion.rect.x = event.pos[0]
if event.type == MOUSEBUTTONDOWN: if event.type == MOUSEBUTTONDOWN:
print("Vous avez tué l'ennemi! Continuez!") print("Vous avez tué l'ennemi! Continuez!")
missiles.rect.centerx = avion.rect.centerx nouveau_missile = tirer_missiles(avion.rect.centerx, HAUTEUR/2)
missiles.rect.centery = HAUTEUR/2 liste_de_missiles.append(nouveau_missile) == [nouveau_missile]
keys = pygame.key.get_pressed() liste_sprites_missiles.add(nouveau_missile) == pygame.sprite.Group(nouveau_missile)
if keys[pygame.K_SPACE]:
liste_des_sprites.remove(texte)
if gameover == False: if gameover == False:
nombre_aleatoire = randint(0, 100) nombre_aleatoire = randint(0, 100)
if nombre_aleatoire == 100: if nombre_aleatoire == 100:
@ -126,10 +126,9 @@ while running:
liste_d_ananas.append(nouvel_ananas) liste_d_ananas.append(nouvel_ananas)
liste_sprites_ananas.add(nouvel_ananas) liste_sprites_ananas.add(nouvel_ananas)
for ananas in liste_d_ananas: for ananas in liste_d_ananas:
ananas.rect.y += 5 ananas.rect.y += 2
if ananas.rect.colliderect(avion): if ananas.rect.colliderect(avion):
print("COLLISION, L'OBJET A ÉTÉ ÉLIMINÉ") print("COLLISION, L'OBJET A ÉTÉ ÉLIMINÉ, MALHEUREUSEMENT, VOUS AUSSI")
score += 1
liste_d_ananas.remove(ananas) liste_d_ananas.remove(ananas)
ananas.kill() ananas.kill()
if ananas.rect.y > HAUTEUR: if ananas.rect.y > HAUTEUR:
@ -162,6 +161,11 @@ while running:
texte33.rect.centery = 450 texte33.rect.centery = 450
liste_des_sprites.add(texte33) liste_des_sprites.add(texte33)
for missiles in liste_de_missiles:
missiles.rect.y -= 1
if missiles.rect.y <= 0:
liste_de_missiles.remove(missiles)
missiles.kill()
pygame.display.flip() pygame.display.flip()
fenetre.fill((0,0,0)) fenetre.fill((0,0,0))