8个类
Animation 通用动画类
CheckHu 胡牌算番 偶尔调用
CheckOne 检查是否可以吃,碰,胡,等,偶尔调用
CreatePai 桌面上未显示的牌 全局变量
DeskPai 桌面上显示的牌 全局变量
MajiangMove
PlayerPai 两者构成引擎,让程序能够运转起来.
Mscreen 主类,游戏的入口
最开始设计的时候还比较粗犷,比如设计了N个类. ...
8个类
Animation 通用动画类
CheckHu 胡牌算番 偶尔调用
CheckOne 检查是否可以吃,碰,胡,等,偶尔调用
CreatePai 桌面上未显示的牌 全局变量
DeskPai 桌面上显示的牌 全局变量
MajiangMove
PlayerPai 两者构成引擎,让程序能够运转起来.
Mscreen 主类,游戏的入口
最开始设计的时候还比较粗犷,比如设计了N个类. ...
/***************
* 检查胡牌
*/
public class CheckHu {
//牌的情况
int paiLiSeq[]; //未倒的牌 [0]个数,[1-N]具体的牌
int paiDao[][]; //一维几个 二维[0],啥子情况,[1-4]具体的牌
int codition[]; //一些特殊情况,比如海底,绝张之类
int paiHu[][]; //一维几个,二维[0],啥子情况,[1-4]具体 ...
写成一个类:
package createpai;
import java.util.Random;
/***********************
生成一定数量的牌
数据结构为一个数组队列,可以调用其前面,或者末尾的牌
产生牌时,先生成一个临时数组的牌,依次赋麻将值,然后随机的取临时数组里面的麻将值到队列里面.
*/
public class CreatePai {
private int pai[];
privat ...
网上找了半天,有说用三叉搜索树,深度优先递归搜索,太麻烦,不懂,网上找了个简单的:
http://www.lwfb.cn/show.aspx?id=9159&cid=18
然后自己写的代码:
import java.util.Random;
public class MajianaHu {
//pai数组 一维存储类型,二维的[0]存储个数,[i]存储第i个牌的个数
//paiForAnay数组 存储14个牌的转化后的值
p ...