Libsaki
Core library of Pancake Mahjong
Public Member Functions | List of all members
saki::GirlX Class Reference

Lua intepreter for custom characters. More...

#include <girl_x.h>

Inheritance diagram for saki::GirlX:
Inheritance graph
[legend]
Collaboration diagram for saki::GirlX:
Collaboration graph
[legend]

Public Member Functions

 GirlX (Who who, std::string luaCode)
 
 GirlX (const GirlX &copy)
 
 GirlX (GirlX &&move)=default
 
GirlXoperator= (const GirlX &copy)=delete
 
GirlXoperator= (GirlX &&move)=delete
 
std::unique_ptr< Girlclone () const override
 
bool checkInit (Who who, const Hand &init, const Table &table, int iter) override
 
void onDice (util::Rand &rand, const Table &table) override
 Called when someone is about to dice.
 
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.
 
std::string popUpStr () const override
 
void onTableEvent (const Table &table, const TableEvent &event) override
 
- 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 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.
 
virtual void onFlipKandoraIndic (const Table &table, Mount &mount)
 Called before flipping kandora indicator.
 
virtual void onDigUradoraIndic (const Table &table, Mount &mount, util::Stactor< Who, 4 > openers)
 Called after someone's win, before digging uradora indicator. More...
 
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 HrhBargaineronHrhBargain (const Table &table)
 
virtual std::optional< HrhInitFixonHrhBeg (util::Rand &rand, const Table &table, const TileCount &stock)
 
bool handleIrs (const Table &table, Mount &mount, const Action &action)
 Process an IRS action input. More...
 
- Public Member Functions inherited from saki::LuaUserErrorHandler
 LuaUserErrorHandler (const LuaUserErrorHandler &copy)=default
 
 LuaUserErrorHandler (LuaUserErrorHandler &&move)=default
 
LuaUserErrorHandleroperator= (const LuaUserErrorHandler &copy)=default
 
LuaUserErrorHandleroperator= (LuaUserErrorHandler &&move)=default
 

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
}
 
- Static Public Member Functions inherited from saki::Girl
static std::unique_ptr< Girlcreate (Who who, Id id)
 
- 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 attachIrsOnDice ()
 Overriden to define a dice-time IRS's showing condition. More...
 
virtual IrsCtrlGetter attachIrsOnDrawn (const Table &table)
 Overriden to define a drawn-time IRS's showing condition. More...
 
- 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
 

Detailed Description

Lua intepreter for custom characters.


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