Libsaki
Core library of Pancake Mahjong
Classes | Public Member Functions | Protected Member Functions | List of all members
saki::Awai Class Reference
Inheritance diagram for saki::Awai:
Inheritance graph
[legend]
Collaboration diagram for saki::Awai:
Collaboration graph
[legend]

Public Member Functions

bool checkInit (Who who, const Hand &init, const Table &table, int iter) override
 
void onMonkey (std::array< Exist, 4 > &exists, const Table &table) override
 
void onDraw (const Table &table, Mount &mount, Who who, bool rinshan) override
 Called when someone is about to draw a tile from the mountain.
 
void onFlipKandoraIndic (const Table &table, Mount &mount) override
 Avoid hitting kandora when using daburii.
 
void onDigUradoraIndic (const Table &table, Mount &mount, util::Stactor< Who, 4 > openers) override
 Avoid hitting more than 4 uradoras when using daburii.
 
HrhBargaineronHrhBargain (const Table &table) override
 
Claim hrhBargainClaim (int plan, T34 t) override
 
int hrhBargainPlanCt () override
 
void onHrhBargained (int plan, Mount &mount) override
 
std::optional< HrhInitFixonHrhBeg (util::Rand &rand, const Table &table, const TileCount &stock) override
 
- Public Member Functions inherited from saki::GirlCrtp< Awai >
std::unique_ptr< Girlclone () const final
 
- Public Member Functions inherited from saki::Girl
 Girl (Who who, Id id)
 
 Girl (const Girl &copy)=default
 
Girloperator= (const Girl &assign)=delete
 
Id getId () const
 
virtual void onDice (util::Rand &rand, const Table &table)
 Called when someone is about to dice.
 
virtual void onInbox (Who who, const Action &action)
 
virtual void onChooseFirstDealer (util::Rand &rand, Who tempDealer, int &die1, int &die2)
 
virtual void onIrsChecked (const Table &table, Mount &mount)
 Called after self's IRS-check action.
 
void onFilterChoice (const Table &table, Who who, ChoiceFilter &filter)
 Called on the choice-filtering stage.
 
void onActivateDice (const Table &table)
 Called when the dealer (self or not) is about to dice.
 
void onActivate (const Table &table)
 Called when self is about to be activated.
 
bool irsReady () const
 Whether the girl is ready to process an IRS action input. More...
 
const ChoicesirsChoices () const
 IRS choice set if IRS-ready, undefined otherwise. More...
 
virtual std::optional< HrhInitFixonHrhRaid (const Table &table)
 
virtual std::string popUpStr () const
 
bool handleIrs (const Table &table, Mount &mount, const Action &action)
 Process an IRS action input. More...
 
- Public Member Functions inherited from saki::TableObserver
virtual void onTableEvent (const Table &table, const TableEvent &event)
 

Protected Member Functions

IrsCtrlGetter attachIrsOnDice () override
 Overriden to define a dice-time IRS's showing condition. More...
 
- Protected Member Functions inherited from saki::Girl
void accelerate (Mount &mount, const Hand &hand, const River &river, int delta)
 
virtual ChoiceFilter filterChoice (const Table &table, Who who)
 
virtual IrsCtrlGetter attachIrsOnDrawn (const Table &table)
 Overriden to define a drawn-time IRS's showing condition. More...
 

Additional Inherited Members

- Public Types inherited from saki::Girl
enum  Id {
  DOGE = 0, CUSTOM = 1, MIYANAGA_TERU = 710111, HIROSE_SUMIRE = 710112,
  SHIBUYA_TAKAMI = 710113, MATANO_SEIKO = 710114, OOHOSHI_AWAI = 710115, MATSUMI_KURO = 712411,
  MATSUMI_YUU = 712412, ATARASHI_AKO = 712413, SAGIMORI_ARATA = 712414, TAKAKAMO_SHIZUNO = 712415,
  ONJOUJI_TOKI = 712611, NIJOU_IZUMI = 712612, EGUCHI_SERA = 712613, FUNAKUBO_HIROKO = 712614,
  SHIMIZUDANI_RYUUKA = 712615, USUZUMI_HATSUMI = 712714, IWATO_KASUMI = 712715, ANETAI_TOYONE = 712915,
  KATAOKA_YUUKI = 713311, SOMEYA_MAKO = 713312, TAKEI_HISA = 713313, HARAMURA_NODOKA = 713314,
  MIYANAGA_SAKI = 713315, NANPO_KAZUE = 713301, UESHIGE_SUZU = 713811, SUEHARA_KYOUKO = 713815,
  TSUJIGAITO_SATOHA = 715211, HAO_HUIYU = 715212, CHOI_MYEONGHWA = 715213, MEGAN_DAVIN = 715214,
  NELLY_VIRSALADZE = 715215, SHISHIHARA_SAWAYA = 714915, INAMURA_KYOUKA = 990001, SHIRATSUKI_SHINO = 990002,
  HONDOU_YUE = 990003, MIHOROGI_UTA = 990011, TAKUWA_RIO = 990014, KAJINO_YUI = 990024
}
 
- Public Types inherited from saki::HrhBargainer
enum  Claim { NONE, ANY, ALL, FOUR }
 
- Static Public Member Functions inherited from saki::Girl
static std::unique_ptr< Girlcreate (Who who, Id id)
 
- Static Protected Member Functions inherited from saki::Girl
static void eraseRivered (util::Stactor< T34, 34 > &ts, const River &river)
 
static void eraseRivered (std::bitset< 34 > &ts, const River &river)
 
- Protected Attributes inherited from saki::Girl
const Who mSelf
 
const Id mId
 

Member Function Documentation

◆ attachIrsOnDice()

Girl::IrsCtrlGetter saki::Awai::attachIrsOnDice ( )
overrideprotectedvirtual

Overriden to define a dice-time IRS's showing condition.

Returns
A valid IrsCtrlGetter if an IRS chance should be attached, nullptr if the ordinary Table flow should be taken.

Reimplemented from saki::Girl.


The documentation for this class was generated from the following files: