I'm trying to figure out how to get a counter that will keep score so far everything i've tried wont work. I tried saying that if (outcome = lose) computer + 1 or something like that.. any ideas.
Code:
#include <iostream>
#include <ctime>
using namespace std;
enum Choice { Rock, Paper, Scissors };
enum Winner {Computer = 0, User = 0};
enum Decision { Draw, Win, Lose };
char DoMenu();
void CheckWinner(int PlayerChoice);
void Seed()
{
srand(time(0));
}
int GetRandNum(int max)
{
return rand() % max;
}
int computer = 0, user = 0;
int main()
{
Seed();
cout << "Let's Play Some Rock Paper Scissor!\n" << endl;
cout << "I Hope to God You Know How!\n" << endl;
char choice;
do
{
choice = DoMenu();
switch (choice)
{
case 'R':
case 'r': cout << "\nPlayer: Rock\n"; CheckWinner(Rock); break;
case 'P':
case 'p': cout << "\nPlayer: Paper\n"; CheckWinner(Paper); break;
case 'S':
case 's': cout << "\nPlayer: Scissors\n"; CheckWinner(Scissors); break;
default : cout << "\n";
}
} while ((choice != 'Q') && (choice != 'q'));
return 0;
}
char DoMenu()
{
char MenuChoice;
cout << "(R)ock\n";
cout << "(P)aper\n";
cout << "(S)cissors\n";
cout << "(Q)uit\n";
cout << "----------\n";
cout << "Choice: ";
cout << "Computer: " << computer << " User: " << user << endl;
cin >> MenuChoice;
return MenuChoice;
}
void CheckWinner(int PlayerChoice)
{
int random = 0;
random = GetRandNum(3);
switch (random)
{
case Rock: cout << "Computer: Rock\n"; break;
case Paper: cout << "Computer: Paper\n"; break;
case Scissors: cout << "Computer: Scissors\n"; break;
}
Decision outcome;
if (PlayerChoice == Rock)
{
switch (random)
{
case Rock: outcome = Draw; break;
case Paper: outcome = Lose; break;
case Scissors: outcome = Win; break;
}
}
if (PlayerChoice == Paper)
{
switch (random)
{
case Rock: outcome = Win; break;
case Paper: outcome = Draw; break;
case Scissors: outcome = Lose; break;
}
}
if (PlayerChoice == Scissors)
{
switch (random)
{
case Rock: outcome = Lose; break;
case Paper: outcome = Win; break;
case Scissors: outcome = Draw; break;
}
}
switch (outcome)
{
case Win: cout << "You Win!\n\n";break;
case Lose: cout << "You Lose!\n\n"; break;
case Draw: cout << "Draw\n\n"; break;
system("PAUSE");
}
}