self.pieces_du_joueur()[n].entrer(i,j,ori)#l'action n'a lieux que si les conditions sont respectées
# (il faut entrer sur une case situé sur un bord du plateau)
# ces condition s'applique à tous les joueurs
else:
ifself.nom!='IA':
ifself.nom!='IA':#toujour un message d'erreur uniquement pour l'humain
print('une piece doit être rentrée par l exterieur du plateau')
bool=self.pieces_du_joueur()[n].tour_effectué
bool=self.pieces_du_joueur()[n].tour_effectué# si la fonction entrer a été appelée, il devient True, sinon il reste
# False et cela signifie que le joueur rejoue
# cette méthode pour déterminer qui doit jouer, sera répétée
#pour tous les coups
elifcoup=='sortir':
self.pieces_du_joueur()[n].tour_effectué=False
if(ain[-1,0,1,2,3,4,5]andbin[-1,0,1,2,3,4,5]):
ifself.pieces_du_joueur()[n].coords[0]in[iforiinrange(-1,6)]andself.pieces_du_joueur()[n].coords[1]in[iforiinrange(-1,6)]:# une piece est alors sortie du plateau
self.pieces_du_joueur()[n].sortir()
if(ain[0,4]orbin[0,4]):#on ne peut sortir que si la pièce est sur un bord du plateau
self.pieces_du_joueur()[n].sortir()
else:
ifself.nom!='IA':
print("pour sortir une pièce, celle-ci doit être sur l'extérieur du plateau")
...
...
@@ -104,6 +122,7 @@ class Joueur(metaclass = ABCMeta):
elifcoup=='entrer en poussant':
self.pieces_du_joueur()[n].tour_effectué=False
#comme pour entrer, on laisse le joueur choisir les paramètres
ifself.nom=='IA':
i,j=randint(-1,6),randint(-1,6)
ori=self.ori_possible[randint(0,4)]
...
...
@@ -112,11 +131,12 @@ class Joueur(metaclass = ABCMeta):
j=int(input('entrer la nouvelle ordonnée : '))
ori=input('droite? gauche? ou demi-tour? ou rien ? ')
ifain[0,1,2,3,4]andbin[0,1,2,3,4]:
ifain[0,1,2,3,4]andbin[0,1,2,3,4]:#la pièce ne doit pas encore être entré
ifself.nom!='IA':
print('la piece est déjà rentrée sur le plateau')
else:
ifi==-1ori==5orj==-1orj==5:
ifi==-1ori==5orj==-1orj==5:#la pièce doit être sur une case à l'extérieure du plateau, devant