// Copyright (c) 2021 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include #include "card.h" #include "player.h" /** * Initializes/Resets a dealer state. * * @param dealer Dealer's state to reset. */ void pokerDealerInit(pokerdealer_t *dealer); /** * Turns over cards from the deck onto the table (from the deck into the dealer * hand) * * @param dealer Poker dealer instance. * @param count Count of cards to deal. */ void pokerDealerTurn(pokerdealer_t *dealer, uint8_t count); /** * Burns a set of cards off the top of the deck into the graveyard. * * @param dealer Poker dealer instance. * @param count Count of cards to burn. */ void pokerDealerBurn(pokerdealer_t *dealer, uint8_t count); /** * Deal a card to a player. * * @param dealer Poker dealer instance. * @param player Poker player to deal to. */ void pokerDealerDeal(pokerdealer_t *dealer, pokerplayer_t *player); /** * Deal card(s) to every active player. * * @param poker Poker game instance. * @param count Count of cards to deal. */ void pokerDealerDealAll(poker_t *poker, uint8_t count);