diff --git a/src/engine/local_engine/localhand.cpp b/src/engine/local_engine/localhand.cpp index 58a94cec..c886aa9b 100755 --- a/src/engine/local_engine/localhand.cpp +++ b/src/engine/local_engine/localhand.cpp @@ -631,6 +631,7 @@ void LocalHand::switchRounds() myBoard->getMyCards(tempBoardCardsArray); myGui->logDealBoardCardsMsg(currentRound, tempBoardCardsArray[0], tempBoardCardsArray[1], tempBoardCardsArray[2], tempBoardCardsArray[3], tempBoardCardsArray[4]); + myLog->logBoardCards(currentRound+1, tempBoardCardsArray); } } diff --git a/src/engine/local_engine/localplayer.h b/src/engine/local_engine/localplayer.h index f91cda15..d2730e6d 100755 --- a/src/engine/local_engine/localplayer.h +++ b/src/engine/local_engine/localplayer.h @@ -155,12 +155,15 @@ public: switch(state) { case 1: currentHand->getGuiInterface()->logFlipHoleCardsMsg(myName, myCards[0], myCards[1], myCardsValueInt); + currentHand->getLog()->logHoleCardsHandName(myID+1,myCards,myCardsValueInt,currentHand->getActivePlayerList()); break; case 2: currentHand->getGuiInterface()->logFlipHoleCardsMsg(myName, myCards[0], myCards[1]); + currentHand->getLog()->logHoleCards(currentHand->getCurrentRound()+1,myID+1,myCards); break; case 3: currentHand->getGuiInterface()->logFlipHoleCardsMsg(myName, myCards[0], myCards[1], myCardsValueInt, "has"); + currentHand->getLog()->logHandName(myID+1,myCardsValueInt,currentHand->getActivePlayerList()); break; default: ; diff --git a/src/engine/log.cpp b/src/engine/log.cpp index e6d21d79..bb86725f 100644 --- a/src/engine/log.cpp +++ b/src/engine/log.cpp @@ -398,43 +398,94 @@ void Log::logBoardCards(int bero, int boardCards[5]) } } -//void Log::logFlipHoleCards(int bero, int seat, PlayerActionLog action, int cards[2], int cardsValueInt) -//{ -// if(SQLITE_LOG) { +void Log::logHoleCards(int bero, int seat, int cards[2]) +{ + if(SQLITE_LOG) { -// if(logOnOff) { -// //if write logfiles is enabled + if(logOnOff) { + //if write logfiles is enabled -// string sql; -// char *errmsg; + string sql; + char *errmsg; -// if( mySqliteLogDb != 0 ) { -// // sqlite-db is open + if( mySqliteLogDb != 0 ) { + // sqlite-db is open -// sql = "UPDATE Hand SET "; -// sql += "Seat_" + boost::lexical_cast(seat) +"_Card_1=" + boost::lexical_cast(cards[0]) + ","; -// sql += "Seat_" + boost::lexical_cast(seat) +"_Card_1=" + boost::lexical_cast(cards[0]); -// if(cardsVauleInt > 0) { -// sql += "Seat_" + boost::lexical_cast(seat) +"_Hand_int=" + boost::lexical_cast(cardsValueInt); -// sql += "Seat_" + boost::lexical_cast(seat) +"_Hand_text=" + boost::lexical_cast(CardsValue::determineHandname(cardsValueInt)); -// } -// sql += " WHERE "; -// sql += "GameID=" + boost::lexical_cast(curGameID) + " AND "; -// sql += "HandID=" + boost::lexical_cast(curHandID); -// if(sqlite3_exec(mySqliteLogDb, sql.data(), 0, 0, &errmsg) != SQLITE_OK) { -// cout << "Error in statement: " << sql.data() << "[" << errmsg << "]." << endl; -// } + sql = "UPDATE Hand SET "; + sql += "Seat_" + boost::lexical_cast(seat) + "_Card_1=" + boost::lexical_cast(cards[0]); + sql += ",Seat_" + boost::lexical_cast(seat) + "_Card_2=" + boost::lexical_cast(cards[1]); + sql += " WHERE "; + sql += "GameID=" + boost::lexical_cast(curGameID) + " AND "; + sql += "HandID=" + boost::lexical_cast(curHandID); + if(sqlite3_exec(mySqliteLogDb, sql.data(), 0, 0, &errmsg) != SQLITE_OK) { + cout << "Error in statement: " << sql.data() << "[" << errmsg << "]." << endl; + } + logPlayerAction(bero,seat,LOG_ACTION_SHOW); + } + } + } +} +void Log::logHandName(int seat, int cardsValueInt, PlayerList activePlayerList) +{ + if(SQLITE_LOG) { + if(logOnOff) { + //if write logfiles is enabled -// logPlayerAction(bero, seat, action); + string sql; + char *errmsg; + if( mySqliteLogDb != 0 ) { + // sqlite-db is open -// } -// } -// } -//} + sql = "UPDATE Hand SET "; + sql += "Seat_" + boost::lexical_cast(seat) + "_Hand_text=\"" + CardsValue::determineHandName(cardsValueInt,activePlayerList) + "\""; + sql += ",Seat_" + boost::lexical_cast(seat) + "_Hand_int=" + boost::lexical_cast(cardsValueInt); + sql += " WHERE "; + sql += "GameID=" + boost::lexical_cast(curGameID) + " AND "; + sql += "HandID=" + boost::lexical_cast(curHandID); + if(sqlite3_exec(mySqliteLogDb, sql.data(), 0, 0, &errmsg) != SQLITE_OK) { + cout << "Error in statement: " << sql.data() << "[" << errmsg << "]." << endl; + } + + logPlayerAction(5,seat,LOG_ACTION_HAS); + } + } + } +} + +void Log::logHoleCardsHandName(int seat, int cards[2], int cardsValueInt, PlayerList activePlayerList) +{ + if(SQLITE_LOG) { + + if(logOnOff) { + //if write logfiles is enabled + + string sql; + char *errmsg; + + if( mySqliteLogDb != 0 ) { + // sqlite-db is open + + sql = "UPDATE Hand SET "; + sql += "Seat_" + boost::lexical_cast(seat) + "_Card_1=" + boost::lexical_cast(cards[0]); + sql += ",Seat_" + boost::lexical_cast(seat) + "_Card_2=" + boost::lexical_cast(cards[1]); + sql += ",Seat_" + boost::lexical_cast(seat) + "_Hand_text=\"" + CardsValue::determineHandName(cardsValueInt,activePlayerList) + "\""; + sql += ",Seat_" + boost::lexical_cast(seat) + "_Hand_int=" + boost::lexical_cast(cardsValueInt); + sql += " WHERE "; + sql += "GameID=" + boost::lexical_cast(curGameID) + " AND "; + sql += "HandID=" + boost::lexical_cast(curHandID); + if(sqlite3_exec(mySqliteLogDb, sql.data(), 0, 0, &errmsg) != SQLITE_OK) { + cout << "Error in statement: " << sql.data() << "[" << errmsg << "]." << endl; + } + + logPlayerAction(5,seat,LOG_ACTION_SHOW); + } + } + } +} //void //Log::closeLogDbAtExit() diff --git a/src/engine/log.h b/src/engine/log.h index 657103dd..94763a56 100644 --- a/src/engine/log.h +++ b/src/engine/log.h @@ -37,8 +37,9 @@ public: void logNewHandMsg(int handID, unsigned dealerPosition, int smallBlind, unsigned smallBlindPosition, int bigBlind, unsigned bigBlindPosition, PlayerList seatsList); void logPlayerAction(int bero, int seat, PlayerActionLog action, int amount = 0); void logBoardCards(int bero, int boardCards[5]); - void logHoleCards(int bero, int seat, PlayerActionLog action, int cards[2], int cardsValueInt = 0); -// void Log::logFlipHoleCards(int bero, int seat, PlayerActionLog action, int cards[2], int cardsValueInt) + void logHoleCards(int bero, int seat, int cards[2]); + void logHandName(int seat, int cardsValueInt, PlayerList activePlayerList); + void logHoleCardsHandName(int seat, int cards[2], int cardsValueInt, PlayerList activePlayerList); // void closeLogDbAtExit();