import pygame
pygame.init()
ecran = pygame.display.set_mode((640, 640))
continuer = True
while continuer:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
continuer = False
pygame.display.flip()
pygame.quit()
Grâce au code ci-dessus, on fait apparaître la base de échiquier(noir).
Ensuite, on établit un code qui nous permet de faire apparaître les premières cases :
import pygame
blanc=(255,255,255)
noir=(0,0,0)
jaune=(255,255,0)
cases=80
pygame.init()
ecran = pygame.display.set_mode((640, 640))
pygame.draw.rect(ecran,blanc, (0,0,cases,cases))
pygame.draw.rect(ecran,jaune, (80,0,cases,cases))
continuer= True
while continuer:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
continuer=False
pygame.display.flip()
pygame.quit()
Suite aux deux codes qui ont été établit on forme alors l’échiquier de façon complète :
import pygame
import random
n,p=8,8
blanc=(255,255,255)
noir=(0,0,0)
cases=80
def damier():
for i in range(8):
for j in range(8):
if (i+j)%2==1:
pygame.draw.rect(ecran,blanc, (cases*i,cases*j,cases,cases))
else:
pygame.draw.rect(ecran,noir, (cases*i,cases*j,cases,cases))
pygame.init()
ecran=pygame.display.set_mode((640, 640))
damier()
continuer=True
while continuer:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
continuer=False
pygame.display.flip()
pygame.quit()
On peut alors intégrer une photo et déplacer le cavalier sur tout l’échiquier :
import pygame
import random
n,p=8,8
blanc=(255,255,255)
orange=(255,128,0)
cases=80
echiquier=[[0]*n for i in range(p)]
X1=random.randint(0,n-1)
Y1=random.randint(0,p-1)
def damier():
for i in range(8):
for j in range(8):
if (i+j)%2==1:
pygame.draw.rect(ecran,blanc, (cases*i,cases*j,cases,cases))
else:
pygame.draw.rect(ecran,orange, (cases*i,cases*j,cases,cases))
pygame.init()
ecran=pygame.display.set_mode((640, 640))
image=pygame.image.load("Bebeyoda.JPEG")
image1=pygame.transform.scale(image,(cases,cases))
damier()
ecran.blit(image1, (cases*X1, cases*Y1))
continuer=True
pos_mouse=[]
while continuer:
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONDOWN:
pos_mouse = event.pos
X1=pos_mouse[0]//80
Y1=pos_mouse[1]//80
damier()
ecran.blit(image1, (cases*X1, cases*Y1))
pygame.display.flip()
if event.type == pygame.KEYDOWN:
continuer=False
pygame.display.flip()
pygame.quit()
On obtient un rendu customisé selon les paramètres qu’on a appliqués :

Voici la photo de mon échiquier :
Voici la partie du code qui nous permet de déplacer le cavalier sur l’échiquier :
def damier():
for i in range(8):
for j in range(8):
if (i+j)%2==1:
pygame.draw.rect(ecran,blanc, (cases*i,cases*j,cases,cases))
else:
pygame.draw.rect(ecran,orange, (cases*i,cases*j,cases,cases))
pygame.init()
ecran=pygame.display.set_mode((640, 640))
image=pygame.image.load("Bebeyoda.JPEG")
image1=pygame.transform.scale(image,(cases,cases))
damier()
ecran.blit(image1, (cases*X1, cases*Y1))
continuer=True
pos_mouse=[]
while continuer:
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONDOWN:
pos_mouse = event.pos
X1=pos_mouse[0]//80
Y1=pos_mouse[1]//80
damier()
ecran.blit(image1, (cases*X1, cases*Y1))
pygame.display.flip()
if event.type == pygame.KEYDOWN:
continuer=False
pygame.display.flip()
pygame.quit()
Pour finir, on établit un code ou doit se déplacer le plus de fois sans se bloquer, vous pouvez tester cela avec le code ci-dessous :
import pygame
import random
n,p=8,8
coup=0
blanc=(255,255,255)
orange=(255,128,0)
cases=80
echiquier=[[0]*n for i in range(p)]
X1=random.randint(0,n-1)
Y1=random.randint(0,p-1)
echiquier[X1][Y1]=1
coup=coup+1
pos = [[2,1],[1,2],[-1,2],[-2,1],[-2,-1],[-1,-2],[1,-2],[2,-1]]
def damier():
i=0
j=0
for i in range (8):
for j in range(8):
labelx=int(cases*(i+0.5))
labely=int(cases*(j+0.5))
if (i+j)%2==1:
pygame.draw.rect(ecran,blanc, (cases*i,cases*j,cases,cases))
else:
pygame.draw.rect(ecran,orange, (cases*i,cases*j,cases,cases))
def possible(X,Y) :
j=0
if ((X>=0) and (X<8) and (Y>=0) and (Y<8) and (echiquier[X][Y]==0)) :
for k in range(8):
if (X ==X1 + pos[k][0] and Y==Y1 + pos[k][1]):
j=j+1
if j!=0:
return True
else:
return False
pygame.init()
pygame.font.init()
font = pygame.font.Font(None, 48)
ecran = pygame.display.set_mode((640, 640))
image = pygame.image.load("Bebeyoda.JPEG")
image1=pygame.transform.scale(image,(cases,cases))
damier()
ecran.blit(image1, (cases*X1, cases*Y1))
continuer = True
pos_mouse=[]
while continuer:
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONDOWN:
pos_mouse = event.pos
X=pos_mouse[0]//80
Y=pos_mouse[1]//80
if possible(X,Y)==True:
coup=coup+1
X1=X
Y1=Y
echiquier[X][Y]=coup
ecran.blit(image1, (cases*X1, cases*Y1))
pygame.display.flip()
if event.type == pygame.KEYDOWN:
continuer = False
pygame.display.flip()
pygame.quit()

Aucune réponse