副露
为了处理方便,我们把吃、碰、大明杠、暗杠、加杠的结果统称为 Meld。
libsaki/unit/meld.h
定义了M37
类。
一个M37
代表一组 meld。
“37”的含义与T37
中的一样,代表赤宝牌敏感。
M37
类记录了桌角牌的完整相貌,包括哪张牌是横置的。
构造
吃、碰、大明杠、暗杠分别通过chii()
, pon()
, daiminkan()
, ankan()
四个静态方法构造。
加杠与它们不同——必须先有碰,再有加杠。
因此加杠通过一个非静态的kakan()
方法形成。
使用
layIndex()
返回横置牌的下标。
重载操作符%
的含义与T34
的一致,但返回值是int
,
表示被该指示牌所指示的宝牌个数。
其它的方法都是字面意义。