mirror of
				https://github.com/NohamR/Projet-foot.git
				synced 2025-11-04 09:19:39 +00:00 
			
		
		
		
	pp + vidéos
This commit is contained in:
		
							parent
							
								
									9b69a0d767
								
							
						
					
					
						commit
						d558710b93
					
				
							
								
								
									
										
											BIN
										
									
								
								Projet_Football_NohamMaximeMatteo.docx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Projet_Football_NohamMaximeMatteo.docx
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										386
									
								
								V7 Cheat.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										386
									
								
								V7 Cheat.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,386 @@
 | 
			
		||||
import pygame
 | 
			
		||||
import random
 | 
			
		||||
import sys
 | 
			
		||||
from pygame.locals import *
 | 
			
		||||
import csv
 | 
			
		||||
from math import *
 | 
			
		||||
import os
 | 
			
		||||
 | 
			
		||||
pygame.init()
 | 
			
		||||
 | 
			
		||||
# Paramètres de l'écran
 | 
			
		||||
WIDTH = 800
 | 
			
		||||
HEIGHT = 600
 | 
			
		||||
 | 
			
		||||
#  Paramètres de couleurs
 | 
			
		||||
BLACK = (0, 0, 0)
 | 
			
		||||
WHITE = (255, 255, 255)
 | 
			
		||||
GRIS = (111, 111, 111) # pas sûr de la valeur mdrr
 | 
			
		||||
 | 
			
		||||
# Paramètres de la balle
 | 
			
		||||
BALL_WIDTH = 50
 | 
			
		||||
BALL_HEIGHT = 50
 | 
			
		||||
BALL_RADIUS = 50//2
 | 
			
		||||
 | 
			
		||||
# Paramètres du joueur
 | 
			
		||||
PLAYER_WIDTH = 80
 | 
			
		||||
PLAYER_HEIGHT = 80
 | 
			
		||||
 | 
			
		||||
# Paramètres des sprites
 | 
			
		||||
SPRITE_WIDTH = 80
 | 
			
		||||
SPRITE_HEIGHT = 80
 | 
			
		||||
 | 
			
		||||
# Paramètres du coeur
 | 
			
		||||
COEUR_WIDTH = 75
 | 
			
		||||
COEUR_HEIGHT = COEUR_WIDTH*(440/512)
 | 
			
		||||
nbcoeur = 1
 | 
			
		||||
 | 
			
		||||
# Paramètre du smiley
 | 
			
		||||
SMILEY_WIDTH = 150
 | 
			
		||||
SMILEY_HEIGHT = SMILEY_WIDTH
 | 
			
		||||
 | 
			
		||||
# Images choisies
 | 
			
		||||
player_image = pygame.transform.scale(pygame.image.load("assets/joueur.png"), (PLAYER_WIDTH, PLAYER_HEIGHT)) # Au cas où l'image fait pas la bonne taille
 | 
			
		||||
 | 
			
		||||
ball_image = pygame.transform.scale(pygame.image.load("assets/balle.png"), (BALL_WIDTH, BALL_HEIGHT)) 
 | 
			
		||||
 | 
			
		||||
coeur_image = pygame.transform.scale(pygame.image.load("assets/coeur.png"), (COEUR_WIDTH, COEUR_HEIGHT)) 
 | 
			
		||||
coeurfaded_image = pygame.transform.scale(pygame.image.load("assets/coeurfaded.png"), (COEUR_WIDTH, COEUR_HEIGHT)) 
 | 
			
		||||
 | 
			
		||||
smiley_image = pygame.transform.scale(pygame.image.load("assets/smiley.png"), (SMILEY_WIDTH, SMILEY_HEIGHT)) 
 | 
			
		||||
 | 
			
		||||
background_image = pygame.transform.scale(pygame.image.load("assets/terrain.png"), (WIDTH, HEIGHT))
 | 
			
		||||
 | 
			
		||||
pygame.display.set_icon(ball_image)
 | 
			
		||||
 | 
			
		||||
listex = [110, 230, 350, 470, 590, 110, 230, 350, 470, 590]
 | 
			
		||||
listey = [190, 190, 190, 190, 190, 310, 310, 310, 310, 310]
 | 
			
		||||
 | 
			
		||||
sprites = []  # Liste pour stocker les sprites
 | 
			
		||||
sprite_rects = []  # Liste pour stocker les rectangles englobants des sprites
 | 
			
		||||
selected_sprite = None # Le sprite choisi
 | 
			
		||||
 | 
			
		||||
# Charger les 10 sprites
 | 
			
		||||
for i in range(10):
 | 
			
		||||
    sprite_image = pygame.transform.scale(pygame.image.load(f"assets/{i+1}.png"), (SPRITE_WIDTH, SPRITE_HEIGHT))
 | 
			
		||||
    sprites.append(sprite_image)
 | 
			
		||||
    sprite_rect = sprite_image.get_rect()
 | 
			
		||||
    sprite_rect.topleft = (listex[i], listey[i])  # Définir les coordonnées du sprite
 | 
			
		||||
    sprite_rects.append(sprite_rect)
 | 
			
		||||
 | 
			
		||||
# Charger une musique parmis la super compilation
 | 
			
		||||
i = random.randint(0, 16)
 | 
			
		||||
path = 'assets/mp3/'
 | 
			
		||||
musique = path + str(i) + '.mp3'
 | 
			
		||||
pygame.mixer.music.load(musique)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Définir les dimensions et la position du rectangle pour le score
 | 
			
		||||
largeur_rectangle = 150
 | 
			
		||||
hauteur_rectangle = 40
 | 
			
		||||
x_rectangle = (WIDTH - largeur_rectangle) // 2  # Au milieu horizontalement
 | 
			
		||||
y_rectangle = 0  # En haut de l'écran
 | 
			
		||||
 | 
			
		||||
# Charge les scores précédents
 | 
			
		||||
def openuseragents(file: str):
 | 
			
		||||
    with open(file, newline='') as csvfile:
 | 
			
		||||
        return [row for row in csv.DictReader(csvfile, delimiter=';')][0]
 | 
			
		||||
 | 
			
		||||
# Variables du jeu
 | 
			
		||||
score = 0
 | 
			
		||||
font = pygame.font.Font(None, 36)
 | 
			
		||||
dercolsol = 0
 | 
			
		||||
nbrotation = 0
 | 
			
		||||
rotate = 0
 | 
			
		||||
# Initialisation de l'écran de jeu
 | 
			
		||||
screen = pygame.display.set_mode((WIDTH, HEIGHT))
 | 
			
		||||
pygame.display.set_caption("Projet-foot CHEAT")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def start_screen():
 | 
			
		||||
    selected_sprite = None
 | 
			
		||||
    screen.fill(BLACK)
 | 
			
		||||
 | 
			
		||||
    for i, sprite in enumerate(sprites):
 | 
			
		||||
        screen.blit(sprite, sprite_rects[i])
 | 
			
		||||
    pygame.display.flip()
 | 
			
		||||
 | 
			
		||||
    while True:
 | 
			
		||||
        for event in pygame.event.get():
 | 
			
		||||
            if event.type == KEYDOWN:
 | 
			
		||||
                return selected_sprite
 | 
			
		||||
            
 | 
			
		||||
            elif event.type == MOUSEBUTTONDOWN and event.button == 1:  # Clic gauche de la souris
 | 
			
		||||
                # print("L'utilisateur a cliqué")
 | 
			
		||||
                mouse_pos = pygame.mouse.get_pos()
 | 
			
		||||
 | 
			
		||||
                for i, sprite_rect in enumerate(sprite_rects):
 | 
			
		||||
                    if sprite_rect.collidepoint(mouse_pos):
 | 
			
		||||
                        # print(f"L'utilisateur a cliqué sur le sprite {i+1}.")
 | 
			
		||||
                        selected_sprite = i
 | 
			
		||||
 | 
			
		||||
        screen.fill(BLACK)  # Effacer l'écran
 | 
			
		||||
 | 
			
		||||
        # Dessiner les sprites à l'écran
 | 
			
		||||
        for i, sprite in enumerate(sprites):
 | 
			
		||||
            screen.blit(sprite, sprite_rects[i])
 | 
			
		||||
 | 
			
		||||
            # Dessiner le rectangle autour du sprite sélectionné
 | 
			
		||||
            if selected_sprite is not None and selected_sprite == i:
 | 
			
		||||
                pygame.draw.rect(screen, GRIS, sprite_rects[i], 2)
 | 
			
		||||
            
 | 
			
		||||
            texte = "Choisissez le skin de votre choix avec la souris\nAppuyer sur n'importe quelle touche pour commencer la partie\nBonne chance !"
 | 
			
		||||
            lignes = texte.split("\n")  # Diviser le texte en lignes
 | 
			
		||||
            y = 50  # Position y initiale du texte
 | 
			
		||||
 | 
			
		||||
            for ligne in lignes:
 | 
			
		||||
                y += 30  # Augmenter la position y pour la prochaine ligne
 | 
			
		||||
 | 
			
		||||
                text = font.render(ligne, True, WHITE)
 | 
			
		||||
                text_rect = text.get_rect()
 | 
			
		||||
                text_rect.center = (WIDTH // 2, y)
 | 
			
		||||
                screen.blit(text, text_rect) # Le score
 | 
			
		||||
 | 
			
		||||
        pygame.display.flip()
 | 
			
		||||
 | 
			
		||||
def game(i):
 | 
			
		||||
    global score, nbcoeur
 | 
			
		||||
    
 | 
			
		||||
    if i != None:
 | 
			
		||||
        player_image = pygame.transform.scale(pygame.image.load(f"assets/{i+1}.png"), (PLAYER_WIDTH, PLAYER_HEIGHT))
 | 
			
		||||
    else:
 | 
			
		||||
        i = 0
 | 
			
		||||
        player_image = pygame.transform.scale(pygame.image.load(f"assets/{i+1}.png"), (PLAYER_WIDTH, PLAYER_HEIGHT))
 | 
			
		||||
 | 
			
		||||
    # Position initiale de la balle
 | 
			
		||||
    ball_pos = [WIDTH // 2, BALL_RADIUS]
 | 
			
		||||
    ball_velocity_y = 0
 | 
			
		||||
    ball_velocity_x = 1
 | 
			
		||||
    gravity = 0.1
 | 
			
		||||
 | 
			
		||||
    # Position initiale du joueur
 | 
			
		||||
    player_pos = [WIDTH // 2 - PLAYER_WIDTH // 2, HEIGHT - PLAYER_HEIGHT - 60]
 | 
			
		||||
 | 
			
		||||
    nbcoeur = 1
 | 
			
		||||
    clock = pygame.time.Clock()
 | 
			
		||||
    running = True
 | 
			
		||||
    dercolsol = 0
 | 
			
		||||
    nbrotation = 0
 | 
			
		||||
    rotate = 0
 | 
			
		||||
    while running:
 | 
			
		||||
        for event in pygame.event.get():
 | 
			
		||||
            if event.type == pygame.QUIT:
 | 
			
		||||
                pygame.quit()
 | 
			
		||||
                sys.exit()
 | 
			
		||||
 | 
			
		||||
        # Gestion des mouvements du joueur
 | 
			
		||||
        mouse_pos = pygame.mouse.get_pos()
 | 
			
		||||
        # player_pos[0] = mouse_pos[0] - PLAYER_WIDTH // 2
 | 
			
		||||
        player_pos[0] = ball_pos[0]-3
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        # Mise à jour de la logique du jeu
 | 
			
		||||
        ball_velocity_y += gravity
 | 
			
		||||
        ball_pos[1] += ball_velocity_y
 | 
			
		||||
 | 
			
		||||
        # Si la balle touche le joueur
 | 
			
		||||
        if ball_pos[1] + BALL_RADIUS >= player_pos[1] and ball_pos[0] >= player_pos[0] and ball_pos[0] <= player_pos[0] + PLAYER_WIDTH:
 | 
			
		||||
            ball_pos[1] = player_pos[1] - BALL_RADIUS
 | 
			
		||||
            ball_velocity_y = -ball_velocity_y
 | 
			
		||||
            score += 1
 | 
			
		||||
            
 | 
			
		||||
            # gravity+=score//10
 | 
			
		||||
            if score%5  == 0:
 | 
			
		||||
                if score//5<=4:
 | 
			
		||||
                    print('add gravity + :' , (score//5)/10)
 | 
			
		||||
                    gravity += (score//5)/10
 | 
			
		||||
                else:print('la gravité est déjà au max')
 | 
			
		||||
 | 
			
		||||
            ball_velocity_x += random.uniform(-3, 3)
 | 
			
		||||
            print("Score :", score)
 | 
			
		||||
            nbrotation+=5
 | 
			
		||||
 | 
			
		||||
        # Si la balle touche le sol
 | 
			
		||||
        if ball_pos[1] + BALL_RADIUS >= HEIGHT:
 | 
			
		||||
            current_time = pygame.time.get_ticks()
 | 
			
		||||
            if current_time - dercolsol >= 1000 :
 | 
			
		||||
                if nbcoeur >= 1:
 | 
			
		||||
                    nbcoeur -= 1  # Décrémenter le nombre de vies
 | 
			
		||||
                    dercolsol = current_time
 | 
			
		||||
                    ball_velocity_y = -ball_velocity_y
 | 
			
		||||
                    nbrotation+=5
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                else:
 | 
			
		||||
                    print(nbcoeur)
 | 
			
		||||
                    return (False, score)
 | 
			
		||||
                    pass
 | 
			
		||||
            
 | 
			
		||||
            if current_time - dercolsol <= 1000:
 | 
			
		||||
                print(nbcoeur)
 | 
			
		||||
            
 | 
			
		||||
            else:
 | 
			
		||||
                nbcoeur = nbcoeur
 | 
			
		||||
                print(nbcoeur)
 | 
			
		||||
 | 
			
		||||
        # Si la balle touche le plafond
 | 
			
		||||
        elif ball_pos[1] <= BALL_RADIUS:
 | 
			
		||||
            ball_pos[1] = BALL_RADIUS
 | 
			
		||||
            ball_velocity_y = -ball_velocity_y
 | 
			
		||||
            nbrotation+=5
 | 
			
		||||
 | 
			
		||||
        ball_pos[0] += ball_velocity_x
 | 
			
		||||
 | 
			
		||||
        # Si la balle touche les murs
 | 
			
		||||
        if ball_pos[0] <= BALL_RADIUS or ball_pos[0]+BALL_RADIUS//2 >= WIDTH:
 | 
			
		||||
            ball_velocity_x = -ball_velocity_x
 | 
			
		||||
            nbrotation+=5
 | 
			
		||||
 | 
			
		||||
        # Dessiner les éléments
 | 
			
		||||
        screen.blit(background_image, (0, 0)) # Le terrain
 | 
			
		||||
 | 
			
		||||
        nbrotation+=1
 | 
			
		||||
        screen.blit(pygame.transform.rotate(ball_image, nbrotation), (ball_pos[0] - BALL_RADIUS, ball_pos[1] - BALL_RADIUS)) # La balle
 | 
			
		||||
        
 | 
			
		||||
        screen.blit(player_image, (player_pos[0], player_pos[1])) # Le joueur
 | 
			
		||||
        
 | 
			
		||||
            # Afficher le nombre de coeur(s)
 | 
			
		||||
        if nbcoeur == 1 :
 | 
			
		||||
            screen.blit(coeur_image, (25, 25)) # Le coeur
 | 
			
		||||
        
 | 
			
		||||
        if nbcoeur == 0:
 | 
			
		||||
            screen.blit(coeurfaded_image, (25,25)) # Le coeur plus transparent
 | 
			
		||||
 | 
			
		||||
            # Afficher le score
 | 
			
		||||
        pygame.draw.rect(screen, BLACK, (x_rectangle, y_rectangle, largeur_rectangle, hauteur_rectangle))
 | 
			
		||||
 | 
			
		||||
        text = font.render("Score : " + str(score), True, WHITE)
 | 
			
		||||
        text_rect = text.get_rect()
 | 
			
		||||
        text_rect.center = (WIDTH // 2, 20)
 | 
			
		||||
        screen.blit(text, text_rect) # Le score
 | 
			
		||||
 | 
			
		||||
        #_____________ Ne rien mettre en dessous _____________
 | 
			
		||||
        pygame.display.flip()
 | 
			
		||||
        clock.tick(60)
 | 
			
		||||
 | 
			
		||||
def game_over_screen(score):
 | 
			
		||||
    # Charge le fichier qui contient les stats une fois la partie perdue
 | 
			
		||||
    stats = openuseragents('assets/.logs.csv')
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    screen.fill(BLACK)
 | 
			
		||||
    
 | 
			
		||||
    screen.blit(smiley_image, ((WIDTH // 2)-SMILEY_WIDTH/2, (HEIGHT // 2)-SPRITE_HEIGHT/2)) # Le smiley
 | 
			
		||||
 | 
			
		||||
    moy = float(stats['moy'])
 | 
			
		||||
    nbparties = float(stats['nbparties'])
 | 
			
		||||
 | 
			
		||||
    dec = (( moy * nbparties ) + score) / (nbparties + 1)
 | 
			
		||||
    moy = floor(100 * dec ) / 100
 | 
			
		||||
    if score >= int(stats['best']):
 | 
			
		||||
        best = score
 | 
			
		||||
    else:
 | 
			
		||||
        best = stats['best']
 | 
			
		||||
 | 
			
		||||
    texte = "Perdu\n Votre score était de : " + str(score) + "\n Le score moyen est de : " + str(moy) + '\n Votre meilleur score est de : ' + str(best)
 | 
			
		||||
    lignes = texte.split("\n")  # Diviser le texte en lignes
 | 
			
		||||
    y = 50  # Position y initiale du texte
 | 
			
		||||
    print(stats)
 | 
			
		||||
    for ligne in lignes:
 | 
			
		||||
        y += 30  # Augmenter la position y pour la prochaine ligne
 | 
			
		||||
 | 
			
		||||
        text = font.render(ligne, True, WHITE)
 | 
			
		||||
        text_rect = text.get_rect()
 | 
			
		||||
        text_rect.center = (WIDTH // 2, y)
 | 
			
		||||
        screen.blit(text, text_rect) # Le score
 | 
			
		||||
 | 
			
		||||
    l1 = 'moy;best;nbparties'
 | 
			
		||||
    l2 = str(str(moy) + ';' +  str(best) + ';' + str(nbparties+1))
 | 
			
		||||
 | 
			
		||||
    pygame.display.flip()
 | 
			
		||||
 | 
			
		||||
    try:
 | 
			
		||||
        os.remove('assets/.logs.csv')
 | 
			
		||||
        with open('assets/.logs.csv', "a") as f:
 | 
			
		||||
                    f.write(l1 + '\n' + l2 + '\n')
 | 
			
		||||
    except Exception as e:
 | 
			
		||||
        print(e)
 | 
			
		||||
 | 
			
		||||
    pygame.time.wait(3000)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def replay_screen():
 | 
			
		||||
    screen.fill(BLACK)
 | 
			
		||||
    game_over_text = font.render("Partie terminée", True, WHITE)
 | 
			
		||||
    game_over_text_rect = game_over_text.get_rect()
 | 
			
		||||
    game_over_text_rect.centerx = WIDTH // 2
 | 
			
		||||
    game_over_text_rect.centery = HEIGHT // 5
 | 
			
		||||
    screen.blit(game_over_text, game_over_text_rect)
 | 
			
		||||
 | 
			
		||||
    replay_button = pygame.Rect(WIDTH // 2 - 100, 250, 200, 50)
 | 
			
		||||
    pygame.draw.rect(screen, WHITE, replay_button)
 | 
			
		||||
    replay_text = font.render("Rejouer", True, BLACK)
 | 
			
		||||
    replay_text_rect = replay_text.get_rect()
 | 
			
		||||
    replay_text_rect.center = replay_button.center
 | 
			
		||||
    screen.blit(replay_text, replay_text_rect)
 | 
			
		||||
 | 
			
		||||
    change_skin_button = pygame.Rect(WIDTH // 2 - 125, 350, 250, 50)
 | 
			
		||||
    pygame.draw.rect(screen, WHITE, change_skin_button)
 | 
			
		||||
    change_skin_text = font.render("Changer de skin", True, BLACK)
 | 
			
		||||
    change_skin_text_rect = change_skin_text.get_rect()
 | 
			
		||||
    change_skin_text_rect.center = change_skin_button.center
 | 
			
		||||
    screen.blit(change_skin_text, change_skin_text_rect)
 | 
			
		||||
 | 
			
		||||
    quit_button = pygame.Rect(WIDTH // 2 - 100, 450, 200, 50)
 | 
			
		||||
    pygame.draw.rect(screen, WHITE, quit_button)
 | 
			
		||||
    quit_text = font.render("Quitter", True, BLACK)
 | 
			
		||||
    quit_text_rect = quit_text.get_rect()
 | 
			
		||||
    quit_text_rect.center = quit_button.center
 | 
			
		||||
    screen.blit(quit_text, quit_text_rect)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    pygame.display.flip()
 | 
			
		||||
 | 
			
		||||
    while True:
 | 
			
		||||
        for event in pygame.event.get():
 | 
			
		||||
            if event.type == pygame.QUIT:
 | 
			
		||||
                pygame.quit()
 | 
			
		||||
                sys.exit()
 | 
			
		||||
 | 
			
		||||
            if event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
 | 
			
		||||
                mouse_pos = pygame.mouse.get_pos()
 | 
			
		||||
                if replay_button.collidepoint(mouse_pos):
 | 
			
		||||
                    return
 | 
			
		||||
                if change_skin_button.collidepoint(mouse_pos):
 | 
			
		||||
                    return False
 | 
			
		||||
                if quit_button.collidepoint(mouse_pos):
 | 
			
		||||
                    pygame.quit()
 | 
			
		||||
                    sys.exit()
 | 
			
		||||
                
 | 
			
		||||
# Boucle principale
 | 
			
		||||
running = True
 | 
			
		||||
selected = False
 | 
			
		||||
change = None
 | 
			
		||||
while running:
 | 
			
		||||
    pygame.mixer.music.play()
 | 
			
		||||
    selected_sprite = None
 | 
			
		||||
    if not selected:
 | 
			
		||||
        selected_skin = start_screen()
 | 
			
		||||
        selected = True
 | 
			
		||||
    print('le skin choisi est :', selected_skin)
 | 
			
		||||
    score = 0
 | 
			
		||||
    nbcoeur = 1
 | 
			
		||||
    dercolsol = 0
 | 
			
		||||
    nbrotation = 0
 | 
			
		||||
    game_over = game(selected_skin)
 | 
			
		||||
    print(game_over)
 | 
			
		||||
    if game_over[0] == False:
 | 
			
		||||
        game_over_screen(game_over[1])
 | 
			
		||||
        change = replay_screen()
 | 
			
		||||
        print(change)
 | 
			
		||||
        if change == False:
 | 
			
		||||
            selected = False
 | 
			
		||||
        else : pass
 | 
			
		||||
 | 
			
		||||
pygame.quit()
 | 
			
		||||
@ -1,2 +1,2 @@
 | 
			
		||||
moy;best;nbparties
 | 
			
		||||
3.12;2;14.0
 | 
			
		||||
5.34;21;21.0
 | 
			
		||||
 | 
			
		||||
		
		
			
  | 
							
								
								
									
										
											BIN
										
									
								
								vidéos/V1.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V1.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V2.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V2.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V3.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V3.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V4.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V4.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V5.1.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V5.1.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V5.2.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V5.2.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V5.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V5.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V6.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V6.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V7 démo (cheat).mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V7 démo (cheat).mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V7 démo score (21).mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V7 démo score (21).mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								vidéos/V7.mkv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								vidéos/V7.mkv
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user