1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
| while continuer_accueil:
#Limitation de vitesse de la boucle
pygame.time.Clock().tick(30)
for event in pygame.event.get():
#Si l'utilisateur quitte, on met les variables
#de boucle à 0 pour n'en parcourir aucune et fermer
if event.type == QUIT or event.type == KEYDOWN and event.key == K_ESCAPE:
continuer_accueil = 0
continuer_jeu = 0
continuer = 0
#Variable de choix du niveau
choix = 0
elif event.type == KEYDOWN:
#Lancement du niveau 1
if event.key == K_F1:
continuer_accueil = 0
choix = 'n1'
#Lancement du niveau 2
elif event.key == K_F2:
continuer_accueil = 0
choix = 'n2'
#Lancement du niveau 3
elif event.key == K_F3:
continuer_accueil = 0
choix = 'n3'
#Lancement du niveau 4
elif event.key == K_F4:
continuer_accueil = 0
choix = 'n4'
#Lancement du niveau 5
elif event.key == K_F5:
continuer_accueil = 0
choix = 'n5'
#on vérifie que le joueur a bien fait un choix de niveau
#pour ne pas charger s'il quitte
if choix != 0:
#Chargement du fond
fond = pygame.image.load(image_fond).convert()
#Génération d'un niveau à partir d'un fichier
niveau = Niveau(choix)
niveau.generer()
niveau.afficher(fenetre)
#Création de Donkey Kong
dk = Perso("images/dk_droite.png", "images/dk_gauche.png",
"images/dk_haut.png", "images/dk_bas.png", niveau)
#BOUCLE DE JEU
while continuer_jeu:
#Limitation de vitesse de la boucle
pygame.time.Clock().tick(30)
for event in pygame.event.get():
#Si l'utilisateur quitte, on met la variable qui continue le jeu
#ET la variable générale à 0 pour fermer la fenêtre
if event.type == QUIT:
continuer_jeu = 0
continuer = 0
elif event.type == KEYDOWN:
#Si l'utilisateur presse Echap ici, on revient seulement au menu
if event.key == K_ESCAPE:
continuer_jeu = 0
defaite = 0
score = 80
#Touches de déplacement de Donkey Kong
elif event.key == K_RIGHT:
dk.deplacer('droite')
score = score-1
elif event.key == K_LEFT:
dk.deplacer('gauche')
score = score-1
elif event.key == K_UP:
dk.deplacer('haut')
score = score-1
elif event.key == K_DOWN:
dk.deplacer('bas')
score = score-1
#Affichages aux nouvelles positions
fenetre.blit(fond, (0,0))
niveau.afficher(fenetre)
fenetre.blit(dk.direction, (dk.x, dk.y)) #dk.direction = l'image dans la bonne direction
smallfont = pygame.font.SysFont("comicsansms", 25)
score_aff=smallfont.render(str(score), True, (255,255,255))
fenetre.blit(score_aff, (400,-5))
Startps=time.time()
Actualtps=Startps-t
text = smallfont.render(str(Actual_Time), True, (255,255,255))
textpos = text.get_rect()
textpos.centerx = fenetre.get_rect().centerx
fenetre.blit(text, textpos)
pygame.display.flip()
#Victoire -> Retour à l'accueil
if niveau.structure[dk.case_y][dk.case_x] == 'a':
continuer_jeu = 0
defaite = 0
score = 80
#Défaite
if score <=0 :
continuer_jeu=0
score = 80
defaite = 1
while defaite:
gameover = pygame.image.load(image_gameover).convert()
fenetre.blit(gameover, (0,0))
pygame.display.flip()
for event in pygame.event.get():
if event.type == KEYDOWN:
if event.key == K_SPACE:
pygame.quit()
if event.key == K_ESCAPE:
defaite = 0
continuer_jeu = 0 |
Partager