diff --git a/main.cpp b/main.cpp deleted file mode 100644 index dc9920e..0000000 --- a/main.cpp +++ /dev/null @@ -1,893 +0,0 @@ -#include -#include -#include -#include - - - -using namespace std; - -// class piece -// { - // char color; //w for white, b for white, e for empty - // int xpos; - // int ypos; - - // public: - - // piece(int x, int y) - // { - // xpos = x; - // ypos = y; - // } - - // void setColor(char kolor) - // { - // color = kolor; - // } - - // char getColor() - // { - // return color; - // } -// }; - -string myToUpper(string input) -{ - string output; - - for (int i = 0 ; i < input.size(); ++i) - { - int numeric; - - if ((input[i] - 0 >= 97) && (input[i] - 0 <= 122)) - { - numeric = input[i] - 32; - output.push_back((char)numeric);// = 'Q';//(char) numeric; - } - else output.push_back(input[i]); - } - - for (int i = 0; i < output.size(); ++i) - { - cout< 8 || row < 0 || kolumn > 8 || kolumn < 0) - { - cout<<"ERROR: index out of bound!"< 8 || row < 0 || kolumn > 8 || kolumn < 0) - { - cout<<"ERROR: index out of bound!"<= 0) && (r+reflector <= 7) && (c+1 <= 7) ) - { - return true; - } - else return false; - } - - else if (moveType == "LEFT") - { - if (boardArray[r+reflector][c-1] != pieceToMove && (r+reflector >= 0) && (r+reflector <= 7) && (c+1 >= 0) ) - { - return true; - } - else return false; - } - - else return false; - } - } - - - - bool isThisAPriorityMove(moves inputMove) //assumes given move is valid! - { - char pieceToMove = boardArray[inputMove.row][inputMove.column]; - cout<<"pieceToMove: "< viewPossibleMoves() - { - vector output; - - for (int r = 0; r < 8; ++r) - { - for (int c = 0; c < 8; ++c) - { - if (boardArray[r][c] == turn) - { - - if (isThisMovePossible(r,c,"FWD")) - { - moves temp(8-r,intToCharColumn(c+1),"FWD"); - output.push_back(temp); - } - - if (isThisMovePossible(r,c,"LEFT")) - { - moves temp(8-r,intToCharColumn(c+1),"LEFT"); - output.push_back(temp); - } - - if (isThisMovePossible(r,c,"RIGHT")) - { - moves temp(8-r,intToCharColumn(c+1),"RIGHT"); - output.push_back(temp); - } - - } - } - } - - // cout<<"\nnumber of possible choices: "< viewPrioritizedMoves() - { - vector output; - - for (int r = 0; r < 8; ++r) - { - for (int c = 0; c < 8; ++c) - { - if (boardArray[r][c] == turn) - { - - if (isThisMovePossible(r,c,"FWD")) - { - moves temp(8-r,intToCharColumn(c+1),"FWD"); - output.push_back(temp); - } - - if (isThisMovePossible(r,c,"LEFT")) - { - moves temp(8-r,intToCharColumn(c+1),"LEFT"); - output.push_back(temp); - } - - if (isThisMovePossible(r,c,"RIGHT")) - { - moves temp(8-r,intToCharColumn(c+1),"RIGHT"); - output.push_back(temp); - } - - } - } - } - - - return output; - } - - - void easyAI() - { - - //1) see all possible movements - - vector listOfMoves = viewPossibleMoves(); - - //2) pick a movement - - srand(time(NULL)); - int randomChoice = rand() % (listOfMoves.size()-1) - 0; // choose a move betwen listOfMoves[0] to last element - - //3) execute movement - - int temp = randomChoice; - - move(listOfMoves[randomChoice]); - - //cout<<"\n\nMove executed by AI: "< record; - -void undo(Board& tablero) -{ - if (record.size() < 2) - { - cout<<"nothing to undo"< input) -{ - cout<<"\n\nList of possible Moves:"<& inputVec, Board inputBoard) -{ - if (inputVec.size() == 10) - { - inputVec.erase(inputVec.begin()); - } - - else if (inputVec.size() > 10) - { - cout<<"QUEUE OVERFLOW!"<>choice; - - if (choice == 1) cout<<"playing with AI..."<>move; - interpret(move,b); - } - - - vector possibleMoves = b.viewPossibleMoves(); - //displayPossibleMoves(possibleMoves); for debugging purposes - AI - - if (choice == 1) - { - b.easyAI(); - } - - else - { - while(b.getTurn() == 'X' ) - { - b.displayBoard(); - cout<<"\nEnter command: "; - cin>>move; - interpret(move,b); - } - } - - //b.snapshot(); - gameOver = b.isGameOver(); - - snapshot(record,b); - } - - //for debugging purposes - cout<<"Record:"<