StratDiff is the abstract class handling the Strategy pattern for applying different AI difficulties. More...
#include <StratDiff.hpp>


Public Member Functions | |
| virtual shared_ptr< Card > | playCard (const vector< shared_ptr< Card > > &cardsCanPlay) const =0 | 
| playCard is a pure virtual function returning the card the player chooses to play.  More... | |
| virtual Biddings | bid (const Biddings bestBid, const int numberOudlers, const bool chelemAnnounced) const =0 | 
| Called to decide if we propose a bid or not, and if any, what bid.  More... | |
| virtual set< shared_ptr< Card > > | makeEcart (const int dogSize, const vector< shared_ptr< Card > > &allCards) const =0 | 
| To make the ecart once we take the dog.  More... | |
StratDiff is the abstract class handling the Strategy pattern for applying different AI difficulties.
      
  | 
  pure virtual | 
Called to decide if we propose a bid or not, and if any, what bid.
| bestBid | The best bid proposed so far. | 
| numberOudlers | The number of oudlers we have in our hand. | 
| chelemAnnounced | A Boolean to know if someone has declared a chelem. | 
Implemented in Beginner.
      
  | 
  pure virtual | 
To make the ecart once we take the dog.
makeEcart is delegated to the difficulty Strategy.
| dogSize | The number of card we must include into the ecart. | 
| allCards | The vector of all our cards, including the dog. | 
Implemented in Beginner.
      
  | 
  pure virtual | 
playCard is a pure virtual function returning the card the player chooses to play.
| cardCanPlay | The vector of cards one is allowed to play. | 
Implemented in Beginner.
 1.8.6