from Outils.Moteur_de_jeu.Pathfinding import * from Outils.Moteur_de_jeu.Plateau import * def elagage(plateau, coup) : # Elric """ On élague un coup si il s'agit d'un mouvement qui n'est pas dans le pathfinding, ou s'il s'aghit d'une barrière ne touchant ni bord, ni joueur, ni barrière on retourne True si on garde le coup, false sinon """ return True if coup.type == "M" : chemin = path_finding (plateau, plateau.pions[plateau.tour][0], plateau.pions[plateau.tour][1],plateau.rangee_desiree(plateau.tour)) return (coup.case in chemin or coup.case[1] == plateau.rangee_desiree(plateau.tour)) else : bar = coup.barriere a = plateau.barrieres_adjacentes (bar) b = plateau.pions_voisins (bar) c = plateau.bord_adjacent (bar) return (a != [] or b)#ajouter or c #Pour prendre moins de temps def elagage_prudent(plateau, coup) : # Quentin 02/12/2012 """ Même fonction sans condition sur les mouvements """ if coup.type == "B" : bar = coup.barriere a = plateau.barrieres_adjacentes(bar) b = plateau.pions_voisins(bar) return a != [] or b else : return True