(景德镇)麻将规则

麻将规则引擎    Communication {<-, ->}; Notification {<=, =>} 



玩家(P)        <=>        规则引擎(RE)

                    RE{定庄,定宝,发牌}

P: 游戏桌初始化 <=

P(庄家):抓牌(补)    -> RE:计算状态{胡, 听}



P: 出牌                -> RE:计算状态{碰杠吃胡}

P: 状态更新{碰杠吃胡}<=



P: 吃一张            -> RE:计算状态{听}

 > 出牌                -> RE:计算状态{碰杠吃胡}

P: 状态更新{碰杠吃胡}<=



P: 碰一张            -> RE:计算状态{听}

 > 出牌                -> RE:计算状态{碰杠吃胡}

P: 状态更新{碰杠吃胡}<=



P: 杠牌                -> RE:

 > 补牌                -> RE:计算状态{胡, 听}

 > 出牌                -> RE:计算状态{碰杠吃胡}

P: 状态更新{碰杠吃胡}<=



P: 抓牌(摸)            -> RE:计算状态{胡, 听}

P: 出牌                -> RE:计算状态{碰杠吃胡}

P: 状态更新{碰杠吃胡}<=



P: 胡牌                -> RE:结算

P: 游戏结束  <=

 

四人桌,庄家,循右次序,形成逆时针出牌顺序
操作优先级:胡>杠(补),碰>吃(上家)>摸

你可能感兴趣的:(规则)