I need this project done as soon as possible. I have included code so you don't have to start from the beginning. The program must meet all constraints and must have 3 bonus features. Bonus features include multiple input validations.
A Person class holds the first and last name of a person. In addition
to it’s constructors, it has a Show() method that displays both names
and other class data. It also has a Drink() method which causes the
bartender to pour a drink. This method has a 10% chance of getting
called every turn.
A Gunslinger class derives from the Person class. It has a Draw()
method that returns a type double value representing a gunslinger’s
draw time (from 1 to 10). The class also has an int member representing
the number of notches on the gunslinger’s gun. It has a
play() method to generate cards like the PokerPlayer() below.
A PokerPlayer class derives virtually from the Person class. It
has a Play() method that returns a random number in the range
1 .. 52, representing a card value. The highest card value wins. The
PokerPlayer class uses the Person show() function. Define all these
classes and methods, along with any other necessary methods.
A CardSharp() class is also a child of the Person() class. It has a
Draw() method that also returns a draw time, but it is an int ranging
from 5 to 15. There is a Play() method which returns a random card,
like PokerPlayer(), but part of the time (25%) it will cheat and
use a card already used. The Gunslinger() class has a 50% chance
of detecting this and shooting the CardSharp(). See the shooting
behavior below. Each drink increases the chance of cheating by +5%.
Finally, we have a Bartender() class. The Draw() method for this
class will cause it to pour a beer.
Create a saloon where 4 random players are playing poker. If two
players shoot each other, the one with the lowest score wins. Shot
players are always killed and replaced with a random player. Every
turn display what the various characters are doing while they play
poker. The game ends when all the cards are played and the player
who has won the most hands is the winner.
• Include methods for setting object values.
• Include in every class a method which will show all the data for
• Randomly select a name for each character.
• Make sure you have 1 of each class playing to start.
Suggested Bonus Features.
• Define a Card class with a suit and face value members and use a
Card return value for Draw()
The code must run on a Ubuntu 16.04 linux system. It needs to compile
with the following
g++ -std=c++11 -g -Wall <[login to view URL]>