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
   | import pygame
from pygame.locals import *
from constantes import *
 
pygame.init()
 
#Ouverture de la fenêtre Pygame
fenetre = pygame.display.set_mode((545, 416))
 
#Personnalisation du jeu
icone = pygame.image.load(image_icone)
pygame.display.set_icon(icone)
pygame.display.set_caption(titre_fenetre)
 
#Chargement et collage du fond
fond = pygame.image.load(image_accueil).convert()
fenetre.blit(fond, (0,0))
pygame.display.flip()
 
mur1 = pygame.Rect(1, 1, 30, 416)
mescollisions = [mur1]
 
#son
son = pygame.mixer.Sound(SAN_1)
son.play()
 
resterac = True
 
class hero(pygame.sprite.Sprite):
    def __init__(self):
        self.image_face = pygame.image.load("images/perso_face.png").convert_alpha()
        self.image_left = pygame.image.load("images/perso_left.png").convert_alpha()
        self.image_right = pygame.image.load("images/perso_right.png").convert_alpha()
        self.image_back = pygame.image.load("images/perso_back.png").convert_alpha
        self.image = self.image_right
        self.position = pygame.Rect(85, 168, 27, 32,)
 
hero = hero()
 
while resterac:                        
    for event in pygame.event.get():
 
        if event.type == QUIT:
            resterac = False
 
        if event.type == KEYDOWN:
            if event.key == K_SPACE:
                fond = pygame.image.load(T_a).convert()
                fenetre.blit(fond, (0,0))
                jeu = True
                fenetre.blit(hero.image, hero.position)
                pygame.key.set_repeat(1, 35)
 
                pygame.display.flip()
 
                #Boucle jeu
 
                while jeu:
 
                    for event in pygame.event.get():
                        if event.type == QUIT:
                            jeu = False
                        if event.type == KEYDOWN:
                            if hero.position.collidelist(mescollisions) == -1:
                                hero.position.x -= 1 #Il ne s'arrête pas mais recule d'un pixel
                            else:
 
                                if event.key == K_w:
                                    hero.position.y += 10
                                    hero.image = hero.image_back
 
                                elif event.key == K_s:
                                    hero.position.y -= 10
                                    hero.image = hero.image_face
 
                                elif event.key == K_a:
                                    hero.position.x -= 10
                                    hero.image = hero.image_left
 
                                elif event.key == K_d:
                                    hero.position.x += 10
                                    hero = hero.image_right
 
 
                    fenetre.blit(fond, (0,0))
                    fenetre.blit(hero.image, hero.position)
                    pygame.display.flip() | 
Partager