胡秋云 6.3
九江麻将基本流程
1)麻将分成:万(36)、条(36)、筒(36),)、中(4)、发(4),白板(4),总共108+12=120张;
2)程式的开始时,庄家的设置:random(4);
0:是玩家
1:是LEFT
2:是UP
3:是RIGHT
3)在主程式中设置了些状态参数,比如:发牌,摸牌,胡,碰,杠。。。等
4) 所有的检测逻辑都在定时器中进行(Form1::timerfun() );
只要当前状态为什么,就处理相应的子程式
5)类的划分:
1) 把每张麻将划分成一个类(mjpai类)
2) 由mjpai类继生成一个麻将组类(mjpaizu类)
3) 麻将桌上(不包括玩家和电脑手上的)分成两类(由麻将组继承而来)
A) 显示部分类(mjpaitable类)
B) 没有显示部分类(mjpaitableshowed类)
4) 四个玩家设置了一个基类(man),由它产生四个玩家的类
A) Player类
B) ComputerLeft类
C) ComputerRight类
D) ComputerUp类
其中基类(man) 有三个类成员:
A) 由mjpaikuaizu类生成的显示部分成员类zuShowed
B) 由mjpaizu类生成的不显示部分成员类zuHand
C) 由mjpai类生成的一个成员新牌类 painewget类
6)碰碰胡逻辑:
首先检测显示部分是否是顺子,如果是,return 0
接着检测手上的部分再加上一个麻将(可能摸来的、可能是别人打的)
1) 进行临时的排序
2) 从头开始拿出来一个麻将,然后与后面的所有麻将比较
posted on 2004-06-03 18:29 bestofbest 阅读(297) 评论(0) 收藏 举报