/** * 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);