-
Notifications
You must be signed in to change notification settings - Fork 0
/
dealer.c
73 lines (52 loc) · 1.73 KB
/
dealer.c
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
#include "dealer.h"
dealer *createDealer(int initialFunds) {
int initialSize;
initialSize = sizeof(dealer);
shoe *newBlackjackShoe;
newBlackjackShoe = createShuffledShoe();
dealer *newDealer;
newDealer = (dealer *) malloc (initialSize);
playerHand *newDealersHand;
newDealersHand = createPlayerHand();
newDealer->funds = initialFunds;
newDealer->blackjackShoe = newBlackjackShoe;
newDealer->dealersHand = newDealersHand;
return newDealer;
}
playerHand *getSpecificHandDealer(dealer *dealersPtr) {
return dealersPtr->dealersHand;
}
void killDealer(dealer *dealerPtr){
destroyShoe(dealerPtr->blackjackShoe);
removeHand(getSpecificHandDealer(dealerPtr));
free (dealerPtr);
}
card *dealACard(const dealer *dealerPtr){
card *cardAtTheTop = getCardAtTheTop(dealerPtr->blackjackShoe);
return cardAtTheTop;
}
static playerHand *getDealersHand(dealer *dealerPtr) {
return dealerPtr->dealersHand;
}
void dealDealersHand(dealer *dealerPtr, card *newCard) {
playerHand *newDealersHand = getDealersHand(dealerPtr);
newDealersHand = receiveCard(newDealersHand, newCard);
dealerPtr->dealersHand = newDealersHand;
/* newDealersHand = resizeHand(newDealersHand); */
/* newDealersHand->hand[newDealersHand->cardsInHand] = newCard; */
/* newDealersHand->cardsInHand += 1; */
/* dealerPtr->dealersHand = newDealersHand; */
}
void takeMoney(dealer *dealerPtr, int money) {
dealerPtr->funds += money;
}
void removeMoneyFromFunds(dealer *dealerPtr, int moneyToPlayer) {
dealerPtr->funds -= moneyToPlayer;
}
void resetDealer(dealer *dealersPtr) {
playerHand *currentDealerHand;
currentDealerHand = getSpecificHandDealer(dealersPtr);
playerHand *resizeHand;
resizeHand = resetHand(currentDealerHand);
dealersPtr->dealersHand = resizeHand;
}