![]() |
PokerUnicorn
|
Poker game logic. More...
Data Structures | |
| struct | pkrsrv_poker_hand_t |
| struct | pkrsrv_poker_player_score_t |
| struct | pkrsrv_poker_t |
| struct | pkrsrv_poker_players_t |
| struct | pkrsrv_poker_player_t |
| struct | pkrsrv_poker_players_new_params_t |
| struct | pkrsrv_poker_player_new_params_t |
| struct | pkrsrv_poker_action_t |
| struct | pkrsrv_poker_action_result_t |
| struct | pkrsrv_poker_actions_t |
| struct | pkrsrv_poker_actions_action_t |
| struct | pkrsrv_poker_actions_action_new_params_t |
| struct | pkrsrv_poker_new_params_t |
| struct | pkrsrv_poker_on_action_params_t |
Typedefs | |
| typedef void(* | pkrsrv_poker_on_action_t) (pkrsrv_eventloop_task_t *task) |
Functions | |
| pkrsrv_poker_t * | pkrsrv_poker_new (pkrsrv_poker_new_params_t params) |
| void | pkrsrv_poker_free (pkrsrv_poker_t *poker) |
| pkrsrv_poker_hand_t * | pkrsrv_poker_get_current_hand (pkrsrv_poker_t *poker) |
| pkrsrv_poker_actions_action_t * | pkrsrv_poker_get_last_action (pkrsrv_poker_t *poker) |
| pkrsrv_poker_actions_action_t * | pkrsrv_poker_actions_action_new (pkrsrv_poker_actions_action_new_params_t params) |
| void | pkrsrv_poker_actions_add (pkrsrv_poker_actions_t *actions, pkrsrv_poker_actions_action_t *action) |
| pkrsrv_poker_players_t * | pkrsrv_poker_t::pkrsrv_poker_players_new (pkrsrv_poker_players_new_params_t params) |
| void | pkrsrv_poker_t::pkrsrv_poker_players_free (pkrsrv_poker_players_t *players) |
| bool | pkrsrv_poker_t::pkrsrv_poker_players_add (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_t::pkrsrv_poker_players_remove (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_t::pkrsrv_poker_players_get_sorted (pkrsrv_poker_t *poker, pkrsrv_poker_player_t **result) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_players_getby_index (pkrsrv_poker_t *poker, int index) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_players_getby_id (pkrsrv_poker_t *poker, uint64_t id) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_players_getby_position (pkrsrv_poker_t *poker, int position) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_players_getby_position_in_sorted (pkrsrv_poker_t *poker, pkrsrv_poker_player_t **sorted, int position) |
| int | pkrsrv_poker_t::pkrsrv_poker_players_get_playable_count (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_t::pkrsrv_poker_player_is_playing (pkrsrv_poker_player_t *player) |
| int | pkrsrv_poker_t::pkrsrv_poker_players_get_playing_count (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_t::pkrsrv_poker_players_get_ingame_count (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_t::pkrsrv_poker_players_get_mustplay_count (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_t::pkrsrv_poker_player_set_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| bool | pkrsrv_poker_t::pkrsrv_poker_player_remove_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| bool | pkrsrv_poker_t::pkrsrv_poker_player_add_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| void | pkrsrv_poker_t::pkrsrv_poker_players_deal (pkrsrv_poker_t *poker) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_player_new (pkrsrv_poker_player_new_params_t params) |
| void | pkrsrv_poker_t::pkrsrv_poker_player_free (pkrsrv_poker_player_t *player) |
| pkrsrv_poker_player_t * | pkrsrv_poker_t::pkrsrv_poker_players_addby_account (pkrsrv_poker_t *poker, pkrsrv_account_t *account, int position) |
| void | pkrsrv_poker_t::pkrsrv_poker_player_deal (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_t::pkrsrv_poker_deal (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_t::pkrsrv_poker_ready (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_t::pkrsrv_poker_starting (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_t::pkrsrv_poker_start (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_t::pkrsrv_poker_proceed (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_t::pkrsrv_poker_restart (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_t::pkrsrv_poker_get_last_playing_position (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *action_player) |
| pkrsrv_poker_action_result_t | pkrsrv_poker_t::pkrsrv_poker_do_action (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player, pkrsrv_poker_action_t action) |
Poker game logic.
| struct pkrsrv_poker_hand |
! Stored in (pkrsrv_poker_t *)->actions* (linked-list)
| Data Fields | ||
|---|---|---|
| pkrsrv_poker_hand_kind_t | kind | |
| pkrsrv_card_t | cards[3] | |
| bool | is_checked | |
| pkrsrv_poker_actions_t * | actions | |
| bool | is_raised | |
| struct pkrsrv_poker |
! ! Gets serialized to save every state to database
Public Member Functions | |
| pkrsrv_poker_players_t * | pkrsrv_poker_players_new (pkrsrv_poker_players_new_params_t params) |
| void | pkrsrv_poker_players_free (pkrsrv_poker_players_t *players) |
| bool | pkrsrv_poker_players_add (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_players_remove (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_players_get_sorted (pkrsrv_poker_t *poker, pkrsrv_poker_player_t **result) |
| pkrsrv_poker_player_t * | pkrsrv_poker_players_getby_index (pkrsrv_poker_t *poker, int index) |
| pkrsrv_poker_player_t * | pkrsrv_poker_players_getby_id (pkrsrv_poker_t *poker, uint64_t id) |
| pkrsrv_poker_player_t * | pkrsrv_poker_players_getby_position (pkrsrv_poker_t *poker, int position) |
| pkrsrv_poker_player_t * | pkrsrv_poker_players_getby_position_in_sorted (pkrsrv_poker_t *poker, pkrsrv_poker_player_t **sorted, int position) |
| int | pkrsrv_poker_players_get_playable_count (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_player_is_playing (pkrsrv_poker_player_t *player) |
| int | pkrsrv_poker_players_get_playing_count (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_players_get_ingame_count (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_players_get_mustplay_count (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_player_set_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| bool | pkrsrv_poker_player_remove_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| bool | pkrsrv_poker_player_add_balance (pkrsrv_poker_player_t *player, uint64_t amount) |
| void | pkrsrv_poker_players_deal (pkrsrv_poker_t *poker) |
| pkrsrv_poker_player_t * | pkrsrv_poker_player_new (pkrsrv_poker_player_new_params_t params) |
| void | pkrsrv_poker_player_free (pkrsrv_poker_player_t *player) |
| pkrsrv_poker_player_t * | pkrsrv_poker_players_addby_account (pkrsrv_poker_t *poker, pkrsrv_account_t *account, int position) |
| void | pkrsrv_poker_player_deal (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player) |
| void | pkrsrv_poker_deal (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_ready (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_starting (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_start (pkrsrv_poker_t *poker) |
| void | pkrsrv_poker_proceed (pkrsrv_poker_t *poker) |
| bool | pkrsrv_poker_restart (pkrsrv_poker_t *poker) |
| int | pkrsrv_poker_get_last_playing_position (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *action_player) |
| pkrsrv_poker_action_result_t | pkrsrv_poker_do_action (pkrsrv_poker_t *poker, pkrsrv_poker_player_t *player, pkrsrv_poker_action_t action) |
Data Fields | |
| pkrsrv_ref_counted_t | ref_counted |
| void * | owner |
| pkrsrv_eventloop_t * | eventloop |
| int | process_latency |
| pkrsrv_table_t * | table |
| pkrsrv_poker_players_t * | players |
| pkrsrv_poker_player_t ** | sorted_players |
| pkrsrv_poker_state_t | state |
| pkrsrv_poker_hand_t | hand_preflop |
| pkrsrv_poker_hand_t | hand_flop |
| pkrsrv_poker_hand_t | hand_turn |
| pkrsrv_poker_hand_t | hand_river |
| pkrsrv_poker_hand_kind_t | hand_kind |
| uint64_t | action_time |
| uint64_t | proceed_time |
| uint64_t | starting_time |
| pkrsrv_card_t | card_history [52] |
| uint64_t | current_raise |
| uint64_t | current_raise_total |
| uint64_t | current_bet |
| int | button_position |
| int | playing_position |
| uint64_t | pot_amount |
| int | starter_players_num |
| int | last_raised_pos |
| int | last_pos_before_last_raise |
| int | synced_action_counter |
| bool | is_playing_last |
| bool | is_sb_must_call |
| pkrsrv_poker_on_action_t | on_action |
| pkrsrv_poker_player_t * | winner |
| pkrsrv_card_score_result_t | winner_score_result |
| pkrsrv_poker_player_score_t | scores [10] |
| int | scores_length |
| pkrsrv_ref_counted_t pkrsrv_poker_t::ref_counted |
| void* pkrsrv_poker_t::owner |
| pkrsrv_eventloop_t* pkrsrv_poker_t::eventloop |
| int pkrsrv_poker_t::process_latency |
| pkrsrv_table_t* pkrsrv_poker_t::table |
| pkrsrv_poker_players_t* pkrsrv_poker_t::players |
Referenced by pkrsrv_poker_players_free().
| pkrsrv_poker_player_t** pkrsrv_poker_t::sorted_players |
| pkrsrv_poker_state_t pkrsrv_poker_t::state |
| pkrsrv_poker_hand_t pkrsrv_poker_t::hand_preflop |
| pkrsrv_poker_hand_t pkrsrv_poker_t::hand_flop |
| pkrsrv_poker_hand_t pkrsrv_poker_t::hand_turn |
| pkrsrv_poker_hand_t pkrsrv_poker_t::hand_river |
| pkrsrv_poker_hand_kind_t pkrsrv_poker_t::hand_kind |
| uint64_t pkrsrv_poker_t::action_time |
| uint64_t pkrsrv_poker_t::proceed_time |
| uint64_t pkrsrv_poker_t::starting_time |
| pkrsrv_card_t pkrsrv_poker_t::card_history[52] |
| uint64_t pkrsrv_poker_t::current_raise |
| uint64_t pkrsrv_poker_t::current_raise_total |
| uint64_t pkrsrv_poker_t::current_bet |
| int pkrsrv_poker_t::button_position |
| int pkrsrv_poker_t::playing_position |
| uint64_t pkrsrv_poker_t::pot_amount |
| int pkrsrv_poker_t::starter_players_num |
| int pkrsrv_poker_t::last_raised_pos |
| int pkrsrv_poker_t::last_pos_before_last_raise |
| int pkrsrv_poker_t::synced_action_counter |
| bool pkrsrv_poker_t::is_playing_last |
| bool pkrsrv_poker_t::is_sb_must_call |
| pkrsrv_poker_on_action_t pkrsrv_poker_t::on_action |
| pkrsrv_poker_player_t* pkrsrv_poker_t::winner |
| pkrsrv_card_score_result_t pkrsrv_poker_t::winner_score_result |
| pkrsrv_poker_player_score_t pkrsrv_poker_t::scores[10] |
| int pkrsrv_poker_t::scores_length |
| struct pkrsrv_poker_players |
| struct pkrsrv_poker_player |
| struct pkrsrv_poker_player_new_params_t |
| struct pkrsrv_poker_action |
! Serializable, client builds and sends to do action, server interprets and adds to the circle
| Data Fields | ||
|---|---|---|
| pkrsrv_account_t | account | |
| pkrsrv_poker_actions_action_kind_t | kind | |
| uint64_t | amount | |
| struct pkrsrv_poker_actions |
| struct pkrsrv_poker_actions_action |
| struct pkrsrv_poker_actions_action_new_params_t |
| struct pkrsrv_poker_new_params_t |
| Data Fields | ||
|---|---|---|
| void * | owner | |
| pkrsrv_table_t * | table | |
| pkrsrv_poker_on_action_t | on_action | |
| pkrsrv_eventloop_t * | eventloop | |
| struct pkrsrv_poker_on_action_params |
| typedef void(* pkrsrv_poker_on_action_t) (pkrsrv_eventloop_task_t *task) |
| enum pkrsrv_poker_state_t |
| pkrsrv_poker_t * pkrsrv_poker_new | ( | pkrsrv_poker_new_params_t | params | ) |
| void pkrsrv_poker_free | ( | pkrsrv_poker_t * | poker | ) |
| pkrsrv_poker_hand_t * pkrsrv_poker_get_current_hand | ( | pkrsrv_poker_t * | poker | ) |
| pkrsrv_poker_actions_action_t * pkrsrv_poker_get_last_action | ( | pkrsrv_poker_t * | poker | ) |
| pkrsrv_poker_actions_action_t * pkrsrv_poker_actions_action_new | ( | pkrsrv_poker_actions_action_new_params_t | params | ) |
| void pkrsrv_poker_actions_add | ( | pkrsrv_poker_actions_t * | actions, |
| pkrsrv_poker_actions_action_t * | action ) |
| pkrsrv_poker_players_t * pkrsrv_poker_players_new | ( | pkrsrv_poker_players_new_params_t | params | ) |
| void pkrsrv_poker_players_free | ( | pkrsrv_poker_players_t * | players | ) |
References players.
| bool pkrsrv_poker_players_add | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t * | player ) |
| void pkrsrv_poker_players_remove | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t * | player ) |
| void pkrsrv_poker_players_get_sorted | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t ** | result ) |
| pkrsrv_poker_player_t * pkrsrv_poker_players_getby_index | ( | pkrsrv_poker_t * | poker, |
| int | index ) |
| pkrsrv_poker_player_t * pkrsrv_poker_players_getby_id | ( | pkrsrv_poker_t * | poker, |
| uint64_t | id ) |
| pkrsrv_poker_player_t * pkrsrv_poker_players_getby_position | ( | pkrsrv_poker_t * | poker, |
| int | position ) |
| pkrsrv_poker_player_t * pkrsrv_poker_players_getby_position_in_sorted | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t ** | sorted, | ||
| int | position ) |
| int pkrsrv_poker_players_get_playable_count | ( | pkrsrv_poker_t * | poker | ) |
| bool pkrsrv_poker_player_is_playing | ( | pkrsrv_poker_player_t * | player | ) |
| int pkrsrv_poker_players_get_playing_count | ( | pkrsrv_poker_t * | poker | ) |
| int pkrsrv_poker_players_get_ingame_count | ( | pkrsrv_poker_t * | poker | ) |
| int pkrsrv_poker_players_get_mustplay_count | ( | pkrsrv_poker_t * | poker | ) |
| bool pkrsrv_poker_player_set_balance | ( | pkrsrv_poker_player_t * | player, |
| uint64_t | amount ) |
| bool pkrsrv_poker_player_remove_balance | ( | pkrsrv_poker_player_t * | player, |
| uint64_t | amount ) |
| bool pkrsrv_poker_player_add_balance | ( | pkrsrv_poker_player_t * | player, |
| uint64_t | amount ) |
| void pkrsrv_poker_players_deal | ( | pkrsrv_poker_t * | poker | ) |
Deals the cards to the all playing players
| pkrsrv_poker_player_t * pkrsrv_poker_player_new | ( | pkrsrv_poker_player_new_params_t | params | ) |
| void pkrsrv_poker_player_free | ( | pkrsrv_poker_player_t * | player | ) |
| pkrsrv_poker_player_t * pkrsrv_poker_players_addby_account | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_account_t * | account, | ||
| int | position ) |
| void pkrsrv_poker_player_deal | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t * | player ) |
| void pkrsrv_poker_deal | ( | pkrsrv_poker_t * | poker | ) |
Deals the cards to the all playing players
| void pkrsrv_poker_ready | ( | pkrsrv_poker_t * | poker | ) |
| void pkrsrv_poker_starting | ( | pkrsrv_poker_t * | poker | ) |
Sets the poker state to starting
| bool pkrsrv_poker_start | ( | pkrsrv_poker_t * | poker | ) |
Starts the game, does SB and BB actions
| void pkrsrv_poker_proceed | ( | pkrsrv_poker_t * | poker | ) |
| bool pkrsrv_poker_restart | ( | pkrsrv_poker_t * | poker | ) |
| int pkrsrv_poker_get_last_playing_position | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t * | action_player ) |
Gives the actual player who will act last in the current round if a raise doesn't happen
| pkrsrv_poker_action_result_t pkrsrv_poker_do_action | ( | pkrsrv_poker_t * | poker, |
| pkrsrv_poker_player_t * | player, | ||
| pkrsrv_poker_action_t | action ) |