-
Notifications
You must be signed in to change notification settings - Fork 0
/
Deck.hpp
90 lines (62 loc) · 1.39 KB
/
Deck.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/**
* @file Deck.hpp
* @author your name (you@domain.com)
* @brief
* @version 0.1
* @date 2021-02-12
*
* @copyright Copyright (c) 2021
*
*/
#ifndef DECK_HPP
#define DECK_HPP
#define SPADE "\u2660"
#define DIAMOND "\u25C6"
#define CLUB "\u2663"
#define HEART "\u2665"
#define STANDARD_SIZE 52
#define cardTop "┌───────────────┐"
#define cardBottom "└───────────────┘"
#define CardHeight 11
#define CardWidth 17
#include <vector>
#include <string>
using namespace std;
enum WinLoseConditions {none,win,tie,bust,lose};
class Card{
private:
public:
Card(int r, string s);
vector<string> cardDesign;
int rank;
string suit;
void PrintCard();
};
class Deck{
private:
int size;
int CardsLeft;
vector<class Card> deck;
vector<class Card> used;
public:
Deck();
Deck(int i);
void deckShuffle();
Card DrawCard();
void Discard(Card to_discard);
void PrintDeck();
};
class Player{
public:
vector<class Card> hand;
vector<class Card> splitHand;
int handValue;
int handValue_Ace;
int splitHandValue;
int splitHandValue_Ace;
bool split = false;
int bet;
int balance;
};
vector<string> getHiddenCard();
#endif