def entrainer2v2_snap(self, fname1, fname2, nb_snap): if self.nb_players != 2: raise Exception( "Not the good number of players for this function.") #Creation d'une partie kb_strat1 = KeyboardStrategy() kb_strat1.add("a", m.strategy.ShootStrat()) kb_strat1.add("z", m.strategy.DefStrat()) kb_strat1.add("e", m.strategy.GardienStrat()) kb_strat1.add("q", m.strategy.DribleStrat()) kb_strat1.add("s", m.strategy.PassStrat()) kb_strat1.add("d", m.strategy.AtkStrat()) kb_strat2 = KeyboardStrategy() kb_strat2.add("a", m.strategy.ShootStrat()) kb_strat2.add("z", m.strategy.DefStrat()) kb_strat2.add("e", m.strategy.GardienStrat()) kb_strat2.add("q", m.strategy.DribleStrat()) kb_strat2.add("s", m.strategy.PassStrat()) kb_strat2.add("d", m.strategy.AtkStrat()) kb_strat2.idp = 1 sortie = False i = 0 while (not sortie) and i < nb_snap: state = self.create_rd_state() kb_strat1.state = state kb_strat2.state = state self.affiche_rd_state(state, 900, 600) joueur_0 = input("Choose strategy for player red 0 : ") joueur_1 = input("Choose strategy for player red 1 : ") kb_strat1.send_strategy(joueur_0) kb_strat2.send_strategy(joueur_1) if input("wanna continue?") == "n": sortie = True i += 1 try: temp_joueur_1 = load_jsonz(fname1) temp_joueur_1 += kb_strat1.states dump_jsonz(temp_joueur_1, fname1) except FileNotFoundError: dump_jsonz(kb_strat1.states, fname1) try: temp_joueur_2 = load_jsonz(fname2) temp_joueur_2 += kb_strat2.states dump_jsonz(temp_joueur_2, fname2) except FileNotFoundError: dump_jsonz(kb_strat2.states, fname2)