2008年11月11日星期二

Web Game Develop



学而不思则罔,思而不学则殆!



麻将核心算法


private function getWin(paiArray:Array):Boolean {

var _resultString:Boolean=true;
for (var i:int=0; i <>= 3) {//算是刻子
paiArray[i] -=3;
//trace(":::::::::MahJongDice 类::::::::: 刻子+++++++++++++++++++++++++++++++++++");

if (getWin(paiArray)) {
return true
}else {
paiArray[i] +=3;
}
}

if (!jiang && paiArray[i] >= 2) {

jiang = 1;
paiArray[i] -=2 ;

//trace(":::::::::MahJongDice 类::::::::: 将+++++++++++++++++++++++++++++++++++");

if (getWin(paiArray)) {
return true
}else {

paiArray[i] += 2 ;
jiang = 0;
}

}
if (paiArray[i] >= 1 && paiArray[i + 1] >= 1 && paiArray[i + 2] >= 1) {//顺子
//下面情况时:range_array = [0,0,0,2,2,2,2,0];
paiArray[i] -= 1;
paiArray[i + 1] -= 1;
paiArray[i + 2] -= 1;

//trace(":::::::::MahJongDice 类::::::::: 顺子+++++++++++++++++++++++++++++++++++");

if (getWin(paiArray)) {
return true
}else {
paiArray[i] += 1;
paiArray[i + 1] += 1;
paiArray[i + 2] += 1;
}
}else {
this.tipItem = i;
//trace(":::::::::MahJongDice 类::::::::: 提示 :" + this.getTipItem());
_resultString = false; //这里不能返回,
//"不存在 [万 条 饼 风] 中的一个系列"
}
}
}

if (jiang < 1) {
//trace(":::::::::MahJongDice 类::::::::: 必需要有一个将 jiang");
_resultString = false;
}
return _resultString;

}

没有评论: