From e2be536254d12b8c3667ab2034ad0bf0cd9a0df6 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Mon, 2 Nov 2015 17:27:45 -0600 Subject: [PATCH] ai structure done --- Engine.cpp | 24 ++++++++++++++++-------- Engine.h | 4 ++-- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/Engine.cpp b/Engine.cpp index 60a01bb..0c0a1df 100644 --- a/Engine.cpp +++ b/Engine.cpp @@ -23,19 +23,23 @@ void Engine::startGame(){ int choice = -1; cin >> choice; + cout<<"Enter AI difficulty: \n"; + int difficulty; + cin >> difficulty; + cout << "OK" << endl; if (choice == 1) - userGame(); + userGame(difficulty); else if (choice == 2) - AIGame(); + AIGame(difficulty); else { cout << "Please enter a valid choice.\n"; startGame(); } } -void Engine::userGame(){ +void Engine::userGame(int difficulty){ string move; bool gameOver = false; @@ -60,39 +64,43 @@ void Engine::userGame(){ } while(b->getTurn() == 'X' ){ - //easyAI(); - AI(3); + AI(difficulty); } gameOver = b->isGameOver(); b->setValidFalse(); b->snapshot(record, *b); } + b->displayBoard(); string s = ""; s += b->getTurn(); cout << "Game over. " + s + " wins!\n\n"; } -void Engine::AIGame(){ +void Engine::AIGame(int difficulty){ bool gameOver = false; while (gameOver != true){ gameOver = b->isGameOver(); while(b->getTurn() == 'O'){ - AI(3); + AI(difficulty); } b->displayBoard(); sleep(1); while(b->getTurn() == 'X' ){ - AI(3); + AI(difficulty); } gameOver = b->isGameOver(); } + + string s = ""; + s += b->getTurn(); + cout << "Game over. " + s + " wins!\n\n"; } void Engine::AI(int depth){ diff --git a/Engine.h b/Engine.h index c5a1005..225e08d 100644 --- a/Engine.h +++ b/Engine.h @@ -13,8 +13,8 @@ public: Engine(); Board* getBoard() { return b; } void startGame(); - void userGame(); - void AIGame(); + void userGame(int difficulty); + void AIGame(int difficulty); void AI(int depth); void createMMTree(MNode* node, int depth, int alt); moves evaluateMMTree(MNode* node);