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
| import pygame # pygame
from random import randint
from pygame.locals import *
black = (0,0,0)
white = (255,255,255)
green = (0,255,0)
red = (255,0,0)
blue = (0,0,255)
pygame.init()
pygame.display.set_caption("Flappy Bird version de merde")
size = 700,445
fenetre = pygame.display.set_mode(size)
#Chargement et collage du fond
fond =pygame.image.load("bg2.jpg").convert()
position_fond=fond.get_rect()
fenetre.blit(fond, (0,0))
done = False
x = 350
y = 250
x_speed = 0
y_speed = 0
ground = 477 # le sol
xloc = 700
yloc = 0 # l'obstacle commence tout en haut au 0
xsize = 70 # l'obstacle fait 70 pixels de longueur
ysize = randint(0,450) # l'obstacle a, au hasard, entre 0 et 350 de largeur
space = 150
obspeed = 2.5
score = 0
def balle(x,y): # la balle
return pygame.draw.circle(fenetre,black,[x,y], 20)
myBall = balle(350, 250)
def Collision(xloc, yloc, xsize, ysize):
rect1=pygame.draw.rect(fenetre, green, [xloc, 0, xsize, ysize])
rect2=pygame.draw.rect(fenetre, green, [xloc, yloc+ysize+space, xsize, ysize+500])
return rect1, rect2
def gameover():
font = pygame.font.SysFont(None, 75) # taille du Game Over
text = font.render("Game over", True, blue) # game over en rouge
fenetre.blit(text, [150, 250]) # position du Game Over
def Score(score):
font = pygame.font.SysFont(None, 75) # taille de score
text = font.render("Score: "+str(score), True, black) # en noir,
fenetre.blit(text, [0,0]) # le score s'affiche en haut a droite
while not done:
for event in pygame.event.get(): # si on veut quitter le jeu
if event.type == pygame.QUIT: # alors done = true donc le
done = True
if event.type == pygame.KEYDOWN: # touche du bas : fait baisser
if event.key == pygame.K_UP: # la position de la
y_speed = -10 # balle de 10 pixels
if event.type == pygame.KEYUP: # touche du haut : fait augmenter
if event.key == pygame.K_UP: # la position de la balle de 5 pix
y_speed = 5
Collision(xloc, yloc, xsize, ysize)
balle(x,y)
Score(score) # le score
y += y_speed
xloc -= obspeed
if y > ground:
gameover() # plus grande que celle du sol, alors Game Over
y_speed = 0 # la balle ne bouge plus
obspeed = 0 #
if xloc < -80:
xloc = 700
ysize = randint(0,350)
if x > xloc and x < xloc+3: # si on se trouve entre les 2 rectangles
score = (score + 100)
pygame.display.flip()
clock = pygame.time.Clock()
clock.tick(60)#limiter le nombre d'image a 60/s
pygame.quit() # fin du programme |
Partager