首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 网页教程 > Flash教程 > 正文
Google
游戏中牌类取出顺子的算法
来源:中国教程网 2007年11月29日 17:27 网友评论:0条 点击:
//一直忙啊,都好长时间没写BLOG了,今天刚写到一个自动从一套牌中取出顺子的算法就贴上来吧。
//以下用斗地主作为例子: 把代码贴到FLASH中导出即可看到效果,只限FLASH8  AS2版本
散牌组 = [[17, 4], [12, 3], [15, 0], [14, 2], [14, 3], [10, 3], [5, 3], [11, 3], [12, 1], [3, 0], [8, 0], [15, 3], [6, 3], [13, 1], [14, 1], [7, 2], [4, 3], [10, 1], [15, 2]];
散牌组.sortOn(0, 1 | 16);
顺子牌组 = new Array();
//建立调试点数
调试点数 = new Array();
for (var i = 0; i<散牌组.length; i++) {
    调试点数.push(散牌组[i][0]);
}
trace("原牌组="+调试点数);
for (var i = 0; i<散牌组.length-5; i++) {
    //用来记录合格的编号
    var 编号数组 = new Array();
    //追加值用来判断如果成对的跳跃判断数
    var 跳跃值 = 0;
    for (var j = 0; j<散牌组.length-i; j++) {
        //trace(散牌组[i+j][0]+"=="+(散牌组[i+j+1][0]-1+跳跃值)+" 跳跃值="+跳跃值);
        if (散牌组[i+j][0]+跳跃值 == 散牌组[i+j+1][0]+跳跃值 && 散牌组[i+j+1][0]<=15) {
            跳跃值++;
        } else if (散牌组[i+j][0]+跳跃值 == 散牌组[i+j+1][0]-1+跳跃值 && 散牌组[i+j+1][0]<=15) {
            编号数组.push(i+j);
        } else {
            break;
        }
    }
    if (编号数组.length>=5) {
        var 临时牌组 = new Array();
        var 减编号 = 0;
        for (var j = 0; j<编号数组.length; j++) {
            var 删除值 = 散牌组.splice(编号数组[j]-减编号, 1);
            减编号++;
            临时牌组.push(删除值[0]);
        }
        顺子牌组.push(临时牌组);
        i = 0;
    }
}
trace("抽取的组队数="+顺子牌组.length);
trace("=============处理取牌后的结果=========");
for (var n = 0; n<顺子牌组.length; n++) {
    调试点数 = new Array();
    for (var i = 0; i<顺子牌组[n].length; i++) {
        调试点数.push(顺子牌组[n][i][0]);
    }
    trace("顺子牌组"+n+"="+调试点数);
}
调试点数 = new Array();
for (var i = 0; i<散牌组.length; i++) {
    调试点数.push(散牌组[i][0]);
}
trace("抽取后剩下的散牌="+调试点数);
上一篇:用AS2.0制作小球沿圆周运动的动画   下一篇:Flash制作图片环绕旋转效果
收藏此页】【打印】【关闭
 相关文章  我要点评
·FLASH小游戏开发 第七节
·5款各种形状的挂牌矢量素材
·水晶质感斜纹盾牌矢量素材
·1万/3千/5千元 11届全运会奖牌/证书/挂带/包装盒征集
·多款盾牌主题矢量素材
·70多行颜色配对游戏Demo
·统一的品牌设计
·游戏制作:猜数字算法(as2.0)

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】