63 lines
1.6 KiB
C
63 lines
1.6 KiB
C
/**
|
|
* Copyright (c) 2021 Dominic Masters
|
|
*
|
|
* This software is released under the MIT License.
|
|
* https://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
#pragma once
|
|
#include "../libs.h"
|
|
#include "common.h"
|
|
#include "card.h"
|
|
|
|
/**
|
|
* Set a next dealer. This will also select the new small and big blind players.
|
|
* This will automatically skip out players if you provide one.
|
|
*
|
|
* @param poker Poker game to select a new dealer for.
|
|
* @param dealer Dealer to become the new dealer.
|
|
*/
|
|
void pokerDealerSet(poker_t *poker, uint8_t dealer);
|
|
|
|
/**
|
|
* Cycles to the next dealer. This will also select the new small and big blind
|
|
* players.
|
|
*
|
|
* @param poker Poker game to select a new dealer for.
|
|
*/
|
|
void pokerDealerNew(poker_t *poker);
|
|
|
|
/**
|
|
* Turns over cards from the deck onto the table (from the deck into the dealer
|
|
* hand)
|
|
*
|
|
* @param poker Poker game instance.
|
|
* @param count Count of cards to deal.
|
|
*/
|
|
void pokerDealerTurn(poker_t *poker, uint8_t count);
|
|
|
|
/**
|
|
* Burns a set of cards off the top of the deck into the graveyard.
|
|
*
|
|
* @param poker Poker game instance.
|
|
* @param count Count of cards to burn.
|
|
*/
|
|
void pokerDealerBurn(poker_t *poker, uint8_t count);
|
|
|
|
/**
|
|
* Deal a card to a player.
|
|
*
|
|
* @param poker Poker game instance.
|
|
* @param player Poker player to deal to.
|
|
* @param count Count of cards to deal to the player.
|
|
*/
|
|
void pokerDeal(poker_t *poker, pokerplayer_t *player, uint8_t count);
|
|
|
|
/**
|
|
* Deal card(s) to every active player.
|
|
*
|
|
* @param poker Poker game instance.
|
|
* @param count Count of cards to deal.
|
|
*/
|
|
void pokerDealAllPlayers(poker_t *poker, uint8_t count);
|