So… am facut un joculet de barbut, iar while-ul e infinit.
/**
* Craps @ Tudor Micu.
*/
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
int main()
{
#define player_money 0
#define mark_money 1
int pocket[2];
#define player_dice 0
#define mark_dice 1
int dice[2][2];
pocket[player_money] = 50;
#define difficulty_switching 0
#define money_switching 1
int opt[2];
int playedSum;
int error;
cout<<"Craps @ Tudor Micu."<<"\n"<<"How lucky are you feeling?"<<"\n\n"<<"Mark says: Hey dude, let's play some craps!"<<"\n"
<<"You says: Okey, let's play!"<<"\n\n"<<"Switch game difficulty."<<"\n\n"<<"1) Easy"<<"\n"<<"2) Medium"<<"\n"
<<"3) Hard"<<"\n\n"; cin>>opt[difficulty_switching];
switch(opt[difficulty_switching])
{
case 0: cout<<"\n"<<"Error: Invalid difficulty id."; error = 1; break;
case 1: cout<<"\n"<<"Switched difficulty: Easy. Succes!"; pocket[mark_money] = 100; break;
case 2: cout<<"\n"<<"Switched difficulty: Medium. Succes!"; pocket[mark_money] = 200; break;
case 3: cout<<"\n"<<"Switched difficulty: Hard. Succes!"; pocket[mark_money] = 500; break;
default: cout<<"\n"<<"Error: Invalid difficulty id."; error = 1; break;
}
if(error == 1)
{
cout<<"\n\n"<<"Switch game difficulty."<<"\n\n"<<"1) Easy"<<"\n"<<"2) Medium"<<"\n"
<<"3) Hard"<<"\n\n"; cin>>opt[difficulty_switching];
error = 0;
switch(opt[difficulty_switching])
{
case 0: cout<<"\n"<<"Error: Invalid difficulty id."; error = 1; break;
case 1: cout<<"\n"<<"Switched difficulty: Easy. Succes!"; pocket[mark_money] = 100; break;
case 2: cout<<"\n"<<"Switched difficulty: Medium. Succes!"; pocket[mark_money] = 200; break;
case 3: cout<<"\n"<<"Switched difficulty: Hard. Succes!"; pocket[mark_money] = 500; break;
default: cout<<"\n"<<"Error: Invalid difficulty id."; error = 1; break;
}
}
while(pocket[player_money] >= 0 || pocket[mark_money] >= 0)
{
cout<<"\n\n"<<"Your pocket: $"<<pocket[player_money]<<", Mark's pocket: $"<<pocket[mark_money]<<"\n"
<<"Switch the money bet for this round."<<"\n\n"<<"1) $5"<<"\n"<<"2) $10"<<"\n"<<"3) $50"<<"\n"<<"4) $100"<<"\n"
<<"5) $500"<<"\n\n"; cin>>opt[money_switching];
switch(opt[money_switching])
{
case 0: cout<<"\n"<<"Error: Invalid bet id."; error = 1; break;
case 1: cout<<"\n"<<"You switched $5 bet. Succes!"; playedSum = 5; break;
case 2: cout<<"\n"<<"You switched $10 bet. Succes!"; playedSum = 10; break;
case 3: cout<<"\n"<<"You switched $50 bet. Succes!"; playedSum = 50; break;
case 4: cout<<"\n"<<"You switched $100 bet. Succes!"; playedSum = 100; break;
case 5: cout<<"\n"<<"You switched $500 bet. Succes!"; playedSum = 500; break;
default: cout<<"\n"<<"Error: Invalid bet id."; error = 1; break;
}
if(error == 1)
{
cout<<"\n\n"<<"Your pocket: $"<<pocket[player_money]<<", Mark's pocket: $"<<pocket[mark_money]<<"\n"
<<"Switch the money bet for this round."<<"\n\n"<<"1) $5"<<"\n"<<"2) $10"<<"\n"<<"3) $50"<<"\n"<<"4) $100"<<"\n"
<<"5) $500"<<"\n\n"; cin>>opt[money_switching];
error = 0;
switch(opt[money_switching])
{
case 0: cout<<"\n"<<"Error: Invalid bet id."; error = 1; break;
case 1: cout<<"\n"<<"You switched $5 bet. Succes!"; playedSum = 5; break;
case 2: cout<<"\n"<<"You switched $10 bet. Succes!"; playedSum = 10; break;
case 3: cout<<"\n"<<"You switched $50 bet. Succes!"; playedSum = 50; break;
case 4: cout<<"\n"<<"You switched $100 bet. Succes!"; playedSum = 100; break;
case 5: cout<<"\n"<<"You switched $500 bet. Succes!"; playedSum = 500; break;
default: cout<<"\n"<<"Error: Invalid bet id."; error = 1; break;
}
}
dice[player_dice][0] = 1 + (int) (6.0 * (rand() / (RAND_MAX + 1.0)));
dice[player_dice][1] = 1 + (int) (6.0 * (rand() / (RAND_MAX + 1.0)));
dice[mark_dice][0] = 1 + (int) (6.0 * (rand() / (RAND_MAX + 1.0)));
dice[mark_dice][1] = 1 + (int) (6.0 * (rand() / (RAND_MAX + 1.0)));
cout<<"\n\n"<<"You rolls "<<dice[player_dice][0]<<" "<<dice[player_dice][1]<<". Mark rolls "<<dice[mark_dice][0]
<<" "<<dice[mark_dice][1];
if(dice[player_dice][0] + dice[player_dice][1] > dice[mark_dice][0] + dice[mark_dice][1])
{
pocket[mark_money] -= playedSum; pocket[player_money] += playedSum;
cout<<". You won $"<<playedSum<<". "<<"\n"<<"(+) Now, you have $"<<pocket[player_money]<<". Congratulations!"<<"\n\n";
if(pocket[mark_money] == 0) cout<<"Game over. Your GF is so happy because, you bought her a gift from craps winnings.";
else if(pocket[mark_money] < 0) cout<<"Game over. Your GF is so happy because, you bought her a gift from craps winnings."
<<"\n"<<"Remember: Now your friend Mark is indebted with $"<<pocket[mark_money]<<" at you."
<<"\n";
}
else if(dice[player_dice][0] + dice[player_dice][1] < dice[mark_dice][0] + dice[mark_dice][1])
{
pocket[player_money] -= playedSum; pocket[mark_money] += playedSum;
cout<<". You lose $"<<playedSum<<". "<<"\n"<<"(-) Now, you have $"<<pocket[player_money]<<"\n\n";
if(pocket[player_money] == 0) cout<<"Game over. Your GF is going to kill you because you lost all her money at craps.";
else if(pocket[player_money] < 0) cout<<"Game over. Your GF is going to kill you because you lost all her money at craps."
<<"\n"<<"Remember: Now you are indebted with $"<<pocket[player_money]<<" at your friend, Mark."
<<"\n";
}
else cout<<". No one own."<<"\n\n";
}
return 0;
}