liarsdice::core::Player class

Derived classes

class liarsdice::ai::AIPlayer
class HumanPlayer

Public types

using GuessSignal = boost::signals2::signal<void(const Guess&)>
using CallLiarSignal = boost::signals2::signal<void()>
using DiceRolledSignal = boost::signals2::signal<void(const std::vector<unsigned int>&)>

Constructors, destructors, conversion operators

Player(unsigned int id, const std::string& name = "") explicit
~Player() defaulted virtual

Public functions

void roll_dice()
auto get_dice_count() const -> size_t
auto get_id() const -> unsigned int
auto get_name() const -> const std::string&
auto has_dice() const -> bool
auto get_dice_values() const -> std::vector<unsigned int>
auto count_dice_with_value(unsigned int face_value) const -> size_t
auto get_points() const -> int
void lose_points(int points_lost)
auto is_eliminated() const -> bool
auto make_guess(const std::optional<Guess>& last_guess) -> Guess pure virtual
auto decide_call_liar(const Guess& last_guess) -> bool pure virtual
void add_die()
auto remove_die() -> bool

Public variables

GuessSignal on_guess
CallLiarSignal on_call_liar
DiceRolledSignal on_dice_rolled

Protected functions

auto get_dice() const -> const std::vector<Dice>&