Bonjour, j'ai besoin d'aide concernant mon projet d'informatique en python. Je suis actuellement en train d'utiliser pygame pour coder un jeu d'échec et j'aimerai simplement savoir comment pouvoir sélectionner une pièce précise pour ensuite la déplacer en cliquant sur la case sur laquelle j'ai envie que la pièce apparaisse (donc ici pas de glissé/déposer). Je ne connait pas grand chose dans ce langage, je vous laisse simplement ce que j'ai fais pour l'instant, dans ce programme lorsque je clique sur une case les deux pièces apparaissent donc voilà pourquoi j'aimerai pouvoir sélectionner la pièce que je veux déplacer au préalable pour ensuite cliquer sur la case sur laquelle j'ai envie que la pièce soit.
voici mon code, merci à vous.
from pygame import*
import pygame
import os
import traceback
from pygame.locals import*
fenetre=pygame.display.set_mode((700,700))
pygame.display.set_caption("echec")
damier = pygame.image.load("echiquier.jpg").convert()
pionnoir = pygame.image.load("pion noir.png").convert_alpha()
founoir = pygame.image.load("fou noir.png").convert_alpha()
cavaliernoir = pygame.image.load("cavalier noir.png").convert_alpha()
roinoir = pygame.image.load("roi noir.png").convert_alpha()
reinenoir = pygame.image.load("reine noire.png").convert_alpha()
tournoir = pygame.image.load("tour noir.png").convert_alpha()
pionblanc = pygame.image.load("pion blanc.png").convert_alpha()
foublanc = pygame.image.load("fou blanc.png").convert_alpha()
cavalierblanc = pygame.image.load("cavalier blanc.png").convert_alpha()
roiblanc = pygame.image.load("roi blanc.png").convert_alpha()
reineblanc = pygame.image.load("reine blanc.png").convert_alpha()
tourblanc = pygame.image.load("tour blanc.png").convert_alpha()
fenetre.blit(damier, (0,0))
fenetre.blit(pionnoir, (0,0))
fenetre.blit(founoir , (80,90))
fenetre.blit(cavaliernoir, (50,70))
roinoir_x=-50
roinoir_y=-150
fenetre.blit(roinoir, (roinoir_x,roinoir_y))
fenetre.blit(reinenoir, (0,0))
tournoir_x=0
tournoir_y=0
fenetre.blit(tournoir, (tournoir_x,tournoir_y))
pionblanc_x=-50
pionblanc_y=320
fenetre.blit(pionblanc, (pionblanc_x,pionblanc_y))
fenetre.blit(foublanc, (50,70))
fenetre.blit(cavalierblanc, (80,90))
fenetre.blit(roiblanc, (50,70))
fenetre.blit(reineblanc, (80,90))
tourblanc_x=27
tourblanc_y=12
fenetre.blit(tourblanc, (tourblanc_x,tourblanc_y))
pygame.display.flip()
continuer = 1
while continuer:
for event in pygame.event.get(): #On parcours la liste de tous les événements reçus
if event.type == QUIT: #Si un de ces événements est de type QUIT
continuer = 0
if event.type == MOUSEBUTTONDOWN:
#Evenement lors du clic de la souris
if event.button == 1: #Boutton gauche de la souris
posSouris= pygame.mouse.get_pos()
tourblanc_x = int(posSouris[0]/82)*82+27 #Le 0 pour l'axe des x, on divise par 82 car il y'a 82 cases, ensuite *82 car sinon l'image resterait à la meme place, et +27 car c'est la marge sur le coté en x et 11 sur les y
tourblanc_y = int(posSouris[1]/82)*82+12
pionblanc_x = int(posSouris[0]/82)*82+27
pionblanc_y = int(posSouris[1]/82)*82+12
fenetre.blit(damier, (0,0))
fenetre.blit(tourblanc, (tourblanc_x,tourblanc_y))
fenetre.blit(pionblanc, (pionblanc_x,pionblanc_y))
pygame.display.flip()
pygame.quit()