import pygame
import random
n,p=8,8
coup=0
blanc=(255,255,255)
noir=(0,0,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,noir, (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("U:/image elon musk.jpg")
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()
Programme du prof qui permet de créer un jeu d’échec. Il faut déplacer le cavalier dans toutes les cases pour gagner.
ci dessous un lien google colab qui permet de copier les programmes du chapitre : cavalier d’Euler.
https://colab.research.google.com/drive/1wi6L-qIOti3aSSjFhC7Uup3OynzUE-1Q#scrollTo=_SOdGwzdP01C
on essaye de coder le game over: on utilise la def « possible » deja crée, si on ne peux plus bouger, on affiche game over.

Dans le chapitre suivant nous allons créer un nouveau programme. (
Aucune réponse