
Envoyé par
Neant34
Je suis en terminale avec comme option ISN, notre prof nous a demandé de programmer avec pygame de réussir à placer un cavalier sur un échéquier et de réussir à le déplacer avec la souris mais d'autoriser le déplacement que sur les cases où il est autorisé à aller.
J'avais pensé a utiliser quelque chose comme ca :
for event in pygame.event.get():
....if event.type == MOUSEBUTTONDOWN :
........if event.button == 1 :
............cavalier_x =event.pos[0]
............cavalier_y =event.pos[1]
Et ensuite d'encadrer les valeurs de cavalier_x et de cavalier_y pour que l'image se blit juste dans la case voulue et pas n'importe ou sur l'échéquier mais a partir de ce moment deux problèmes se posent a moi : y a-t-il une façon plus simple que ça :
if 190 < cavalier_x < 270 and 270 < cavalier_y < 350:
....cavalier_x = 190
....cavalier_y = 270
pour tout les carreaux car ça me prends beaucoup de place et mon second problème et comment interdire les déplaements dans les cases où il n'est pass sensé pouvoir aller... J'avais pensé a utilisé quelque chose en fonction de de l'abscisse et de l'ordonné, créer une nouvelle variable lors du clic, vérifié si la différence des abscisses est égale a une valeur (ici 80 et 160) et faire de même avec l'ordonnée mais je ne sais si c'est le plus efficace.
(Comment faire pour la tabulation ?)
Merci d'avance pour votre aide
Partager