#include "morpion.hpp" #include "test_morpion.hpp" #include <iostream> #include <map> using namespace std; namespace game { test_morpion::test_morpion() { play(); } void test_morpion::play() { morpion mor; cout << "Player vs Player game!" << endl; while(!mor.end_of_game()) { cout << mor << endl; cout << "It's" << mor.player_to_string(mor.current_player()) << "turn." << endl; map<string, int> m; uint64_t possible_moves = mor.get_state().possible_moves; for (int i = 0; i < mor.number_of_moves(); i++) { uint16_t move = possible_moves & ((uint64_t) 15); //15 = 1111 (a move is on 4 bits) cout << "Possible move: " << mor.move_to_string(move) << endl; m[mor.move_to_string(move)] = i; //In the map: the move as seen by the player and its index in possible moves possible_moves = possible_moves >> 4; } } } }