Example #1
0
void Game::play()
{
	// Issue 2 cards to home and every guest player
	deck.issueCard(homePlayer);	
	for(int i=0; i<guestPlayer.size(); i++)
	{
		deck.issueCard(guestPlayer[i]);
	}
	
	// Show the cards for home and guest player
	homePlayer.showCards();
	cout<<endl;
	for(int i=0; i<guestPlayer.size(); i++)
	{
		guestPlayer[i].showCards();
		cout<<endl;
	}

	// Each guest players begin to hit, then home player
	for(int i=0; i<guestPlayer.size(); i++)
	{
		deck.additionalCard(guestPlayer[i]);
	}
	deck.additionalCard(homePlayer);
	
	// Display the result of the game
	cout<<endl<<"The result of the game is:"<<endl;
	homePlayer.showCards();
	if(homePlayer.isBusted()) // if home player busted
	{
		cout<<"Busted"<<endl;
		for(int i=0; i<guestPlayer.size(); i++)
		{	
			guestPlayer[i].showCards();
			if(!guestPlayer[i].isBusted())
				cout<<"	Wins"<<endl;
			else
				cout<<"	Busted"<<endl;
		}
	}
	else // if home player not busted
	{
		cout<<endl;
		for(int i=0; i<guestPlayer.size(); i++)
		{
			guestPlayer[i].showCards();
			if(!guestPlayer[i].isBusted())
			{
				if(guestPlayer[i].getScore()>homePlayer.getScore())
					cout<<"	Wins"<<endl;
				else if(guestPlayer[i].getScore()==homePlayer.getScore())
					cout<<"	Pushes"<<endl;
				else
					cout<<"	Loses"<<endl;
			}
			else
			cout<<"	Busted"<<endl;
		}
	}

	//remove everyone's card for a new game
	homePlayer.clear();
	for(int i=0; i<guestPlayer.size(); i++)
	{
		guestPlayer[i].clear();
	}
}