diff --git a/src/engine/handinterface.h b/src/engine/handinterface.h
index 63525152..0cb5be9a 100644
--- a/src/engine/handinterface.h
+++ b/src/engine/handinterface.h
@@ -36,7 +36,7 @@ public:
virtual void start() = 0;
- virtual std::vector > getPlayerArray() const =0;
+ virtual std::vector > getPlayerArray() const =0; // delete
virtual PlayerList getActivePlayerList() const =0;
virtual PlayerList getRunningPlayerList() const =0;
diff --git a/src/engine/local_engine/localbero.cpp b/src/engine/local_engine/localbero.cpp
index ba242cd0..8e150e25 100644
--- a/src/engine/local_engine/localbero.cpp
+++ b/src/engine/local_engine/localbero.cpp
@@ -292,8 +292,17 @@ void LocalBeRo::run() {
// aktuelle bero ist wirklich dran
// Anzahl der effektiv gespielten Runden (des human player) erhöhen
- if(myHand->getPlayerArray()[0]->getMyActiveStatus() && myHand->getPlayerArray()[0]->getMyAction() != 1) {
- myHand->setBettingRoundsPlayed(myBeRoID);
+// if(myHand->getPlayerArray()[0]->getMyActiveStatus() && myHand->getPlayerArray()[0]->getMyAction() != 1) {
+// myHand->setBettingRoundsPlayed(myBeRoID);
+// }
+
+ // Anzahl der effektiv gespielten Runden (des human player) erhöhen
+ it_c = myHand->getActivePlayerIt(0);
+ if( it_c != myHand->getActivePlayerList()->end() ) {
+ // human player is active
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ myHand->setBettingRoundsPlayed(myBeRoID);
+ }
}
//// !!!!!!!!!!!!!!!!1!!!! very buggy, rule breaking -> TODO !!!!!!!!!!!!11!!!!!!!! //////////////
diff --git a/src/engine/local_engine/localberopostriver.cpp b/src/engine/local_engine/localberopostriver.cpp
index b3e17457..c84055d2 100644
--- a/src/engine/local_engine/localberopostriver.cpp
+++ b/src/engine/local_engine/localberopostriver.cpp
@@ -38,30 +38,63 @@ void LocalBeRoPostRiver::run() {
void LocalBeRoPostRiver::postRiverRun() {
- int i;
+// int i;
+ PlayerListConstIterator it_c;
+ PlayerListIterator it;
//berechnen welcher Spieler gewonnen hat
- for(i=0; igetPlayerArray()[i]->getMyActiveStatus() && getMyHand()->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD && getMyHand()->getPlayerArray()[i]->getMyCardsValueInt() > highestCardsValue ) {
+// highestCardsValue = getMyHand()->getPlayerArray()[i]->getMyCardsValueInt();
+// }
+// }
- if(getMyHand()->getPlayerArray()[i]->getMyActiveStatus() && getMyHand()->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD && getMyHand()->getPlayerArray()[i]->getMyCardsValueInt() > highestCardsValue ) {
- highestCardsValue = getMyHand()->getPlayerArray()[i]->getMyCardsValueInt();
+
+
+ //berechnen welcher Spieler gewonnen hat
+ for(it_c=getMyHand()->getActivePlayerList()->begin(); it_c!=getMyHand()->getActivePlayerList()->end(); it_c++) {
+
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD && (*it_c)->getMyCardsValueInt() > highestCardsValue ) {
+ highestCardsValue = (*it_c)->getMyCardsValueInt();
}
}
+
+
+
+
// Durchschnittsets des human player ermitteln
// getMyHand()->getPlayerArray()[0]->setMyAverageSets(((getMyHand()->getPlayerArray()[0]->getMyRoundStartCash())-(getMyHand()->getPlayerArray()[0]->getMyCash()))/(getMyHand()->getBettingRoundsPlayed()+1));
// Aggressivität des human player ermitteln
// anzahl der player die möglichkeit haben am pot teilzuhaben
int potPlayers = 0;
- for(i=0; igetPlayerArray()[i]->getMyActiveStatus() && getMyHand()->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD) {
+// for(i=0; igetPlayerArray()[i]->getMyActiveStatus() && getMyHand()->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD) {
+// potPlayers++;
+// }
+// }
+
+
+ for(it_c=getMyHand()->getActivePlayerList()->begin(); it_c!=getMyHand()->getActivePlayerList()->end(); it_c++) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD) {
potPlayers++;
}
}
+
// prüfen ob nur noch der human player an der verteilung teilnimmt und myAggressive für human player setzen
- getMyHand()->getPlayerArray()[0]->setMyAggressive(potPlayers == 1 && getMyHand()->getPlayerArray()[0]->getMyActiveStatus() && getMyHand()->getPlayerArray()[0]->getMyAction() != PLAYER_ACTION_FOLD);
+// getMyHand()->getPlayerArray()[0]->setMyAggressive(potPlayers == 1 && getMyHand()->getPlayerArray()[0]->getMyActiveStatus() && getMyHand()->getPlayerArray()[0]->getMyAction() != PLAYER_ACTION_FOLD);
+
+
+ // prüfen ob nur noch der human player an der verteilung teilnimmt und myAggressive für human player setzen
+ it = getMyHand()->getActivePlayerIt(0);
+ if( it != getMyHand()->getActivePlayerList()->end() ) {
+ if( potPlayers == 1 && (*it)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ (*it)->setMyAggressive(true);
+ }
+ }
// cout << "myAggressive: " << getMyHand()->getPlayerArray()[0]->getMyAggressive() << endl;
@@ -75,6 +108,8 @@ void LocalBeRoPostRiver::postRiverRun() {
getMyHand()->getGuiInterface()->postRiverRunAnimation1();
}
+/*
+
void LocalBeRoPostRiver::distributePot() {
// int potCalcAllinArray[5][2]; // 0 -> ID , 1 -> AllInCash
@@ -346,3 +381,5 @@ void LocalBeRoPostRiver::distributePot() {
}
+
+*/
diff --git a/src/engine/local_engine/localberopostriver.h b/src/engine/local_engine/localberopostriver.h
index 03a1e96f..af6ed479 100644
--- a/src/engine/local_engine/localberopostriver.h
+++ b/src/engine/local_engine/localberopostriver.h
@@ -37,7 +37,7 @@ public:
void run();
void postRiverRun();
- void distributePot();
+// void distributePot();
private:
diff --git a/src/engine/local_engine/localplayer.cpp b/src/engine/local_engine/localplayer.cpp
index 26f81398..16f561fd 100755
--- a/src/engine/local_engine/localplayer.cpp
+++ b/src/engine/local_engine/localplayer.cpp
@@ -985,6 +985,7 @@ void LocalPlayer::preflopEngine() {
int bet = 0;
int raise = 0;
int cBluff;
+ PlayerListConstIterator it_c;
// temporär solange preflopValue und flopValue noch nicht bereinigt für sechs und sieben spieler
int players = actualHand->getActivePlayerList()->size();
@@ -1018,14 +1019,24 @@ void LocalPlayer::preflopEngine() {
// cout << myID << ": " << myHoleCardsValue << " - " << myNiveau[0] << " " << myNiveau[2] << " - " << myCards[0] << " " << myCards[1] << endl;
// Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist !
- int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
-
-// cout << aggValue << " ";
+// int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+//
+// if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
+// myNiveau[0] -= aggValue;
+// myNiveau[2] -= aggValue;
+// }
- if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
- myNiveau[0] -= aggValue;
- myNiveau[2] -= aggValue;
+
+ // Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist !
+ it_c = actualHand->getActivePlayerIt(0);
+ if( it_c != actualHand->getActivePlayerList()->end() ) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ int aggValue = (int)((( (*it_c)->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+ myNiveau[0] -= aggValue;
+ myNiveau[2] -= aggValue;
+ }
+
}
@@ -1253,6 +1264,7 @@ void LocalPlayer::flopEngine() {
int cBluff;
int pBluff;
int rand;
+ PlayerListConstIterator it_c;
// übergang solange preflopValue und flopValue noch nicht bereinigt
int players = actualHand->getActivePlayerList()->size();
@@ -1273,14 +1285,27 @@ void LocalPlayer::flopEngine() {
if(individualHighestSet > myCash) individualHighestSet = myCash;
// Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist
- int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+// int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+//
+// if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
+// for(i=0; i<3; i++) {
+// myNiveau[i] -= aggValue;
+// }
+// }
- if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
- for(i=0; i<3; i++) {
- myNiveau[i] -= aggValue;
+ // Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist !
+ it_c = actualHand->getActivePlayerIt(0);
+ if( it_c != actualHand->getActivePlayerList()->end() ) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ int aggValue = (int)((( (*it_c)->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+ for(i=0; i<3; i++) {
+ myNiveau[i] -= aggValue;
+ }
}
+
}
+
// Check-Bluff generieren
Tools::getRandNumber(1,100,1,&cBluff,0);
@@ -1831,6 +1856,7 @@ void LocalPlayer::turnEngine() {
int cBluff;
int pBluff;
int rand;
+ PlayerListConstIterator it_c;
calcMyOdds();
@@ -1843,13 +1869,29 @@ void LocalPlayer::turnEngine() {
myNiveau[2] = 69 + myDude4/* - 6*(actualHand->getActivePlayerList().size() - 2)*/;
// Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist
- int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+// int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+//
+// if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
+// for(i=0; i<3; i++) {
+// myNiveau[i] -= aggValue;
+// }
+// }
- if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
- for(i=0; i<3; i++) {
- myNiveau[i] -= aggValue;
+
+
+ // Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist !
+ it_c = actualHand->getActivePlayerIt(0);
+ if( it_c != actualHand->getActivePlayerList()->end() ) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ int aggValue = (int)((( (*it_c)->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+ for(i=0; i<3; i++) {
+ myNiveau[i] -= aggValue;
+ }
}
+
}
+
+
// cout << "Spieler " << myID << ": Dude " << myDude4 << "\t Wert " << myHoleCardsValue << "\t Niveau " << myNiveau[0] << " " << myNiveau[1] << " " << myNiveau[2] << "\t Agg " << aggValue << " " << endl;
@@ -2167,6 +2209,7 @@ void LocalPlayer::riverEngine() {
int i;
int rand;
int pBluff;
+ PlayerListConstIterator it_c;
calcMyOdds();
@@ -2179,13 +2222,28 @@ void LocalPlayer::riverEngine() {
myNiveau[2] = 69 + myDude4/* - 6*(actualHand->getActivePlayerList().size() - 2)*/;
// Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist
- int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+// int aggValue = (int)(((actualHand->getPlayerArray()[0]->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+//
+// if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
+// for(i=0; i<3; i++) {
+// myNiveau[i] -= aggValue;
+// }
+// }
- if(actualHand->getPlayerArray()[0]->getMyActiveStatus() && actualHand->getPlayerArray()[0]->getMyAction() != 1) {
- for(i=0; i<3; i++) {
- myNiveau[i] -= aggValue;
+
+ // Aggresivität des humanPlayers auslesen -> nur wenn er aktiv ist !
+ it_c = actualHand->getActivePlayerIt(0);
+ if( it_c != actualHand->getActivePlayerList()->end() ) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD ) {
+ int aggValue = (int)((( (*it_c)->getMyAggressive()*1.0)/7.0 - 1.0/actualHand->getActivePlayerList()->size())*21.0);
+ for(i=0; i<3; i++) {
+ myNiveau[i] -= aggValue;
+ }
}
+
}
+
+
// cout << "Spieler " << myID << ": Dude " << myDude4 << "\t Wert " << myHoleCardsValue << "\t Niveau " << myNiveau[0] << " " << myNiveau[1] << " " << myNiveau[2] << "\t Agg " << aggValue << " " << endl;
@@ -4245,8 +4303,8 @@ void LocalPlayer::riverEngine3() {
// temp fr das Vielfache des Small Blind, sodass HighestSet zu hoch ist
int tempFold;
- tempFold = (actualHand->getPlayerArray()[0]->getMyAverageSets())/(6*actualHand->getSmallBlind());
- // Tools::getRandNumber(4,6,1,&tempFold,0);
+// tempFold = (actualHand->getPlayerArray()[0]->getMyAverageSets())/(6*actualHand->getSmallBlind());
+ Tools::getRandNumber(4,6,1,&tempFold,0);
// FOLD
// --> wenn potential negativ oder HighestSet zu hoch
diff --git a/src/engine/network_engine/clientboard.cpp b/src/engine/network_engine/clientboard.cpp
index c547ec99..809c57a1 100644
--- a/src/engine/network_engine/clientboard.cpp
+++ b/src/engine/network_engine/clientboard.cpp
@@ -99,8 +99,10 @@ ClientBoard::collectSets()
{
boost::recursive_mutex::scoped_lock lock(m_syncMutex);
sets = 0;
- for (int i = 0; i < MAX_NUMBER_OF_PLAYERS; i++)
- sets += playerArray[i]->getMySet();
+ PlayerListConstIterator it_c;
+ for (it_c=seatsList->begin(); it_c!=seatsList->end(); it_c++)
+ sets += (*it_c)->getMySet();
+
}
void
diff --git a/src/gui/qt/mainwindow/log/log.cpp b/src/gui/qt/mainwindow/log/log.cpp
index a953c86f..816adf1d 100644
--- a/src/gui/qt/mainwindow/log/log.cpp
+++ b/src/gui/qt/mainwindow/log/log.cpp
@@ -147,11 +147,13 @@ void Log::logPlayerActionMsg(QString msg, int action, int setValue) {
void Log::logNewGameHandMsg(int gameID, int handID) {
- int i, j ,k;
+// int i, j, k;
+ PlayerListConstIterator it_c;
HandInterface *currentHand = myW->getSession().getCurrentGame()->getCurrentHand();
myW->textBrowser_Log->append("## Game: "+QString::number(gameID,10)+" | Hand: "+QString::number(handID,10)+" ##");
-
+
+
if(myConfig->readConfigInt("LogOnOff")) {
//if write logfiles is enabled
@@ -160,67 +162,121 @@ void Log::logNewGameHandMsg(int gameID, int handID) {
logFileStreamString += "CASH: ";
//Aktive Spieler zählen
- int activePlayersCounter = 0;
- for (k=0; kgetPlayerArray()[k]->getMyActiveStatus() == 1) activePlayersCounter++;
- }
- k = 0;
- if(activePlayersCounter > 2) {
+// int activePlayersCounter = 0;
+// for (k=0; kgetPlayerArray()[k]->getMyActiveStatus() == 1) activePlayersCounter++;
+// }
+ int k = 0;
+// if(currentHand->getActivePlayerList()->size() > 2) {
+//
+// for(i=0; igetStartQuantityPlayers(); i++) {
+//
+// if(currentHand->getPlayerArray()[i]->getMyActiveStatus()) {
+// //print cash only for active players
+//
+//
+// if(currentHand->getPlayerArray()[i]->getMyButton() == 1) {
+// if(k==1) { logFileStreamString += ", "; }
+// k=1;
+// logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+" (Dealer): "+QString::number(currentHand->getPlayerArray()[i]->getMyCash(),10)+"$";
+// }
+// else {
+// if(k==1) { logFileStreamString += ", "; }
+// k=1;
+// logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+": "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
+// }
+// }
+// }
+// }
+// else {
+// for(i=0; igetStartQuantityPlayers(); i++) {
+// if(currentHand->getPlayerArray()[i]->getMyActiveStatus()) {
+// //print cash only for active players
+// if(currentHand->getPlayerArray()[i]->getMyButton() == 2) {
+// if(k==1) { logFileStreamString += ", "; }
+// k=1;
+// logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+" (Dealer): "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
+// }
+// else {
+// if(k==1) { logFileStreamString += ", "; }
+// k=1;
+// logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+": "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
+// }
+// }
+// }
+// }
+
+ //print cash only for active players
+ for(it_c=currentHand->getActivePlayerList()->begin(); it_c!=currentHand->getActivePlayerList()->end(); it_c++) {
+
+ if(currentHand->getActivePlayerList()->size() > 2) {
- for(i=0; igetStartQuantityPlayers(); i++) {
-
- if(currentHand->getPlayerArray()[i]->getMyActiveStatus()) {
- //print cash only for active players
-
-
- if(currentHand->getPlayerArray()[i]->getMyButton() == 1) {
- if(k==1) { logFileStreamString += ", "; }
- k=1;
- logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+" (Dealer): "+QString::number(currentHand->getPlayerArray()[i]->getMyCash(),10)+"$";
- }
- else {
- if(k==1) { logFileStreamString += ", "; }
- k=1;
- logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+": "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
- }
+ if((*it_c)->getMyButton() == BUTTON_DEALER) {
+ if(k==1) { logFileStreamString += ", "; }
+ k=1;
+ logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+" (Dealer): "+QString::number((*it_c)->getMyCash(),10)+"$";
+ }
+ else {
+ if(k==1) { logFileStreamString += ", "; }
+ k=1;
+ logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+": "+QString::number((*it_c)->getMyCash()+(*it_c)->getMySet(),10)+"$";
}
}
- }
- else {
- for(i=0; igetStartQuantityPlayers(); i++) {
- if(currentHand->getPlayerArray()[i]->getMyActiveStatus()) {
- //print cash only for active players
- if(currentHand->getPlayerArray()[i]->getMyButton() == 2) {
- if(k==1) { logFileStreamString += ", "; }
- k=1;
- logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+" (Dealer): "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
- }
- else {
- if(k==1) { logFileStreamString += ", "; }
- k=1;
- logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[i]->getMyName().c_str())+": "+QString::number(currentHand->getPlayerArray()[i]->getMyCash()+currentHand->getPlayerArray()[i]->getMySet(),10)+"$";
- }
+ // heads up
+ else {
+
+ if((*it_c)->getMyButton() == BUTTON_SMALL_BLIND) {
+ if(k==1) { logFileStreamString += ", "; }
+ k=1;
+ logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+" (Dealer): "+QString::number((*it_c)->getMyCash()+(*it_c)->getMySet(),10)+"$";
+ }
+ else {
+ if(k==1) { logFileStreamString += ", "; }
+ k=1;
+ logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+": "+QString::number((*it_c)->getMyCash()+(*it_c)->getMySet(),10)+"$";
}
}
}
logFileStreamString += "BLINDS: ";
- for(i=0; igetPlayerArray()[k]->getMyAction() != 1 && currentHand->getPlayerArray()[k]->getMyActiveStatus() == 1) activePlayersCounter++;
+// }
+//
+// switch (currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyButton()) {
+// case 2 : logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyName().c_str())+" ("+QString::number(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMySet(),10)+"$), ";
+// break;
+// case 3 : logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyName().c_str())+" ("+QString::number(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMySet(),10)+"$)";
+// break;
+// default :;
+// }
+// }
+
+
+
+
+
+ for(it_c=currentHand->getActivePlayerList()->begin(); it_c!=currentHand->getActivePlayerList()->end(); it_c++) {
- j = 0;
- //Aktive Spieler zählen
- int activePlayersCounter = 0;
- for (k=0; kgetPlayerArray()[k]->getMyAction() != 1 && currentHand->getPlayerArray()[k]->getMyActiveStatus() == 1) activePlayersCounter++;
- }
-
- switch (currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyButton()) {
- case 2 : logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyName().c_str())+" ("+QString::number(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMySet(),10)+"$), ";
+ switch ( (*it_c)->getMyButton() ) {
+ case 2 : logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+" ("+QString::number((*it_c)->getMySet(),10)+"$), ";
break;
- case 3 : logFileStreamString += QString::fromUtf8(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMyName().c_str())+" ("+QString::number(currentHand->getPlayerArray()[(i+currentHand->getDealerPosition()+j)%MAX_NUMBER_OF_PLAYERS]->getMySet(),10)+"$)";
+ case 3 : logFileStreamString += QString::fromUtf8((*it_c)->getMyName().c_str())+" ("+QString::number((*it_c)->getMySet(),10)+"$)";
break;
default :;
}
}
+
+
+
+
+
+
+
logFileStreamString += "PREFLOP";
logFileStreamString += "\n";
@@ -245,8 +301,12 @@ void Log::logNewGameHandMsg(int gameID, int handID) {
void Log::logPlayerWinsMsg(int playerID, int pot) {
HandInterface *currentHand = myW->getSession().getCurrentGame()->getCurrentHand();
-
- myW->textBrowser_Log->append(QString::fromUtf8(currentHand->getPlayerArray()[playerID]->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!! ");
+
+// myW->textBrowser_Log->append(QString::fromUtf8(currentHand->getPlayerArray()[playerID]->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!! ");
+
+ PlayerListConstIterator playerConstIt = currentHand->getActivePlayerIt(playerID);
+ assert( playerConstIt != currentHand->getActivePlayerList()->end() );
+ myW->textBrowser_Log->append(QString::fromUtf8((*playerConstIt)->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!! ");
if(myConfig->readConfigInt("LogOnOff")) {
//if write logfiles is enabled
@@ -258,7 +318,9 @@ void Log::logPlayerWinsMsg(int playerID, int pot) {
// else {
- logFileStreamString += ""+QString::fromUtf8(currentHand->getPlayerArray()[playerID]->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!!
\n";
+// logFileStreamString += ""+QString::fromUtf8(currentHand->getPlayerArray()[playerID]->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!!\n";
+
+ logFileStreamString += ""+QString::fromUtf8((*playerConstIt)->getMyName().c_str())+" wins "+QString::number(pot,10)+"$!!!\n";
if(myConfig->readConfigInt("LogInterval") == 0) {
writeLogFileStream(logFileStreamString);
@@ -1245,12 +1307,21 @@ QString Log::determineHandName(int myCardsValueInt) {
list sameHandCardsValueInt;
bool different = false;
bool equal = false;
+ HandInterface *currentHand = myW->getSession().getCurrentGame()->getCurrentHand();
+ PlayerListConstIterator it_c;
// collect cardsValueInt of all players who will show their cards
- HandInterface *currentHand = myW->getSession().getCurrentGame()->getCurrentHand();
- for(i=0; igetPlayerArray()[i]->getMyActiveStatus() && currentHand->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD) {
- shownCardsValueInt.push_back(currentHand->getPlayerArray()[i]->getMyCardsValueInt());
+// for(i=0; igetPlayerArray()[i]->getMyActiveStatus() && currentHand->getPlayerArray()[i]->getMyAction() != PLAYER_ACTION_FOLD) {
+// shownCardsValueInt.push_back(currentHand->getPlayerArray()[i]->getMyCardsValueInt());
+// }
+// }
+
+
+ // collect cardsValueInt of all players who will show their cards
+ for(it_c=currentHand->getActivePlayerList()->begin(); it_c!=currentHand->getActivePlayerList()->end(); it_c++) {
+ if( (*it_c)->getMyAction() != PLAYER_ACTION_FOLD) {
+ shownCardsValueInt.push_back( (*it_c)->getMyCardsValueInt());
}
}