/*
CSIS 2610 - Lab 2 DUE: 10/6/2026 11:59pm
author: (your full name)

please rename this sourcecode file like "username_2610_lab2.cpp" - using your email username
submit via email attachment to: james.dittrich+YSU@gmail.com
*/

#include <iostream> // basic i/o
#include <iomanip> // output formatting
#include <cstdlib> // rand() and srand()
#include <ctime> // system time
#include <string> // string handling

using namespace std;

void showRules(){
	// show the rules
	cout << "\n************************************************" << endl;
	cout << "Welcome to Rock, Paper, Scissors, Lizard, Spock." << endl;
	cout << "************************************************" << endl;
	cout << "\nThe rules are simple:" << endl;
	cout << "- Scissors cut Paper" << endl;
	cout << "- Rock crushes Lizard" << endl;
	cout << "- Paper covers Rock" << endl;
	cout << "- Lizard poisons Spock" << endl;
	cout << "- Spock smashes Scissors" << endl;
	cout << "- Scissors decapitate Lizard" << endl;
	cout << "- Lizard eats Paper" << endl;
	cout << "- Paper disproves Spock" << endl;
	cout << "- Spock vaporizes Rock" << endl;
	cout << "- Rock breaks Scissors" << endl;
	return;
}

int main(){

	bool done = false;
	string choices[] = {"Rock","Paper","Scissors","Lizard","Spock"};
	int playerScore = 0;
	int playerChoice = 0;
	int opponentScore = 0;
	int opponentChoice = 0;
	char replay; // prompt for (y/n) answer

	// TODO: get system time

	// TODO: seed the random number generator

	// TODO: game loop (best of 5)
	while(not done){

		// TODO: reset the scores when playing again

		showRules();

		// TODO: best out of 5 turn loop
		while(){

			// TODO: print the choices as a numbered list (1-5)

			// TODO: prompt for input

			// TODO: visually confirm the choice
			cout << "You chose: " << /* TODO */ << endl;

			// TODO: generate a random response for the opponent (0-4)
			cout << "Your opponent chose: " << /* TODO */ << endl;

			// TODO: Evaluate the choices and print out the correct message (from above)
			// TODO: Increment the score of a winning player
			// HINT: Write a nested conditional to evaluate the outcome.
			//       You may have TIES when both players select the same symbol.
			//       Handle this condition first.

			cout << "Player score: " << playerScore << endl;
			cout << "Opponent score: " << opponentScore << endl;
		} // best of 5 game ends here.

		// TODO: Print out who won.
		// TODO: Prompt the user to replay (y/n) and handle that here.
	} // replay loop ends here.

	return 0;
}