gtheler 5年前
コミット
ffa573261e
3個のファイルの変更18行の追加22行の削除
  1. +7
    -0
      src/report.cpp
  2. +11
    -10
      src/stdinout.cpp
  3. +0
    -12
      src/tty.cpp

+ 7
- 0
src/report.cpp ファイルの表示

@@ -20,6 +20,13 @@ void Dealer::reportPrepare(void) {
report.push_back(reportItem("played_hands", "%g", n_hands));
report.push_back(reportItem("total_money_waged", "%g", playerStats.totalMoneyWaged));

report.push_back(reportItem("bustsPlayer", "%g", playerStats.bustsPlayer));
report.push_back(reportItem("bustsDealer", "%g", playerStats.bustsDealer));

report.push_back(reportItem("wins", "%g", playerStats.wins));
report.push_back(reportItem("pushes", "%g", playerStats.pushes));
report.push_back(reportItem("losses", "%g", playerStats.losses));
return;
}

+ 11
- 10
src/stdinout.cpp ファイルの表示

@@ -48,16 +48,16 @@ void StdInOut::info(Libreblackjack::Info msg, int p1, int p2) {

case Libreblackjack::Info::BetInvalid:
if (p1 < 0) {
s = "bet_negative";
s = "bet_negative" + std::to_string(p1);
} else if (p1 > 0) {
s = "bet_maximum";
s = "bet_maximum" + std::to_string(p1);
} else {
s = "bet_zero";
}
break;

case Libreblackjack::Info::NewHand:
s = "new_hand";
s = "new_hand " + std::to_string(p1) + " " + std::to_string(1e-3*p2);
// clear dealer's hand
dealerHand.cards.clear();
@@ -81,7 +81,7 @@ void StdInOut::info(Libreblackjack::Info msg, int p1, int p2) {
break;
case Libreblackjack::Info::CardPlayer:
s = "card_player";
s = "card_player " + ((p2 != 0)?(std::to_string(p2)+ " "):"") + card[p1].ascii();
if (p2 != static_cast<int>(currentHandId)) {
for (currentHand = hands.begin(); currentHand != hands.end(); ++currentHand) {
if (static_cast<int>(currentHand->id) == p2) {
@@ -98,21 +98,21 @@ void StdInOut::info(Libreblackjack::Info msg, int p1, int p2) {
if (p1 > 0) {
switch (dealerHand.cards.size()) {
case 0:
s = "card_dealer_up";
s = "card_dealer_up " + card[p1].ascii();
break;
default:
s = "card_dealer";
s = "card_dealer " + card[p1].ascii();;
break;
}
} else {
s = "card_dealer";
s = "card_dealer " + card[p1].ascii();;
}
dealerHand.cards.push_back(p1);
currentHandId = 0;
break;
case Libreblackjack::Info::CardDealerRevealsHole:
s = "card_dealer_hole";
s = "card_dealer_hole " + card[p1].utf8();;
*(++(dealerHand.cards.begin())) = p1;
currentHandId = 0;
break;
@@ -134,7 +134,7 @@ void StdInOut::info(Libreblackjack::Info msg, int p1, int p2) {
break;

case Libreblackjack::Info::PlayerSplitOk:
s = "player_split_ok";
s = "player_split_ok" + ((p1 != 0)?(" #" + std::to_string(p1)):"");
handToSplit = p1;
break;

@@ -163,6 +163,7 @@ void StdInOut::info(Libreblackjack::Info msg, int p1, int p2) {
}
currentHandId = p1;
s = "new_hand " + std::to_string(p2) + " " + card[cardToSplit].utf8();
break;

case Libreblackjack::Info::PlayerDoubleInvalid:
@@ -236,7 +237,7 @@ int StdInOut::play(void) {
break;
case Libreblackjack::PlayerActionRequired::Play:
s = "play?";
s = "play?" + std::to_string(dealerValue) + " " + std::to_string(playerValue);
break;
case Libreblackjack::PlayerActionRequired::None:

+ 0
- 12
src/tty.cpp ファイルの表示

@@ -97,13 +97,10 @@ void Tty::info(Libreblackjack::Info msg, int p1, int p2) {

case Libreblackjack::Info::BetInvalid:
if (p1 < 0) {
// s = "bet_negative";
s = "Your bet is negative (" + std::to_string(p1) + ")";
} else if (p1 > 0) {
// s = "bet_maximum";
s = "Your bet is larger than the maximum allowed (" + std::to_string(p1) + ")";
} else {
// s = "bet_zero";
s = "Your bet is zero";
}
break;
@@ -131,12 +128,10 @@ void Tty::info(Libreblackjack::Info msg, int p1, int p2) {
case Libreblackjack::Info::Shuffle:
// TODO: ask the user to cut
// s = "shuffle";
s = "Deck needs to be shuffled.";
break;
case Libreblackjack::Info::CardPlayer:
// s = "card_player";
if (p2 != static_cast<int>(currentHandId)) {
for (currentHand = hands.begin(); currentHand != hands.end(); ++currentHand) {
if (static_cast<int>(currentHand->id) == p2) {
@@ -154,7 +149,6 @@ void Tty::info(Libreblackjack::Info msg, int p1, int p2) {
if (p1 > 0) {
switch (dealerHand.cards.size()) {
case 0:
// s = "card_dealer_up";
s = "Dealer's up card is " + card[p1].utf8();
break;
default:
@@ -170,35 +164,29 @@ void Tty::info(Libreblackjack::Info msg, int p1, int p2) {
break;
case Libreblackjack::Info::CardDealerRevealsHole:
// s = "card_dealer_hole";
s = "Dealer's hole card was " + card[p1].utf8();
*(++(dealerHand.cards.begin())) = p1;
currentHandId = 0;
break;
case Libreblackjack::Info::DealerBlackjack:
// s = "dealer_blackjack";
s = "Dealer has Blackjack";
break;
case Libreblackjack::Info::PlayerWinsInsurance:
// s = "player_wins_insurance";
s = "Player wins insurance";
break;
case Libreblackjack::Info::PlayerBlackjackAlso:
// s = "player_blackjack_also";
s = "Player also has Blackjack";
render = true;
break;

case Libreblackjack::Info::PlayerSplitInvalid:
// s = "player_split_invalid";
s = "Cannot split";
break;

case Libreblackjack::Info::PlayerSplitOk:
// s = "player_split_ok";
s = "Splitting hand" + ((p1 != 0)?(" #" + std::to_string(p1)):"");
handToSplit = p1;
break;

読み込み中…
キャンセル
保存