文档章节

js 博饼小游戏

亲爱的小丰
 亲爱的小丰
发布于 2016/09/23 09:53
字数 717
阅读 105
收藏 0

中秋博饼好玩啊,回味无穷,可惜别人公司发现金,俺们公司发卫生纸,唉。。。。心酸

    // 默认的跑动图片
    $scope.dice_a = 'move.gif';
    $scope.dice_b = 'move.gif';
    $scope.dice_c = 'move.gif';
    $scope.dice_d = 'move.gif';
    $scope.dice_e = 'move.gif';
    $scope.dice_f = 'move.gif';

    // 功能实现函数
    $scope.bobinFun = function() {

        // title 显示隐藏开关
        $scope.titleshow = false;

        // 点击后先切换成跑动图片
        $scope.dice_a = 'move.gif';
        $scope.dice_b = 'move.gif';
        $scope.dice_c = 'move.gif';
        $scope.dice_d = 'move.gif';
        $scope.dice_e = 'move.gif';
        $scope.dice_f = 'move.gif';

        // 等级划分
        var level = {
                one: '状元插金花!',
                two: '六红六子', // 六子
                three: '五红五子', // 五子
                four: '普通状元',
                five: '对堂',
                six: '三红',
                seven: '四进',
                eight: '二举',
                nine: '一秀',
                ten: '没有奖哦亲~~~~~'
            },
            this_level; // 存储当前等级

        //  存储当前随机数组
        var NumberArr = [];

        //  生成随机数据
        var a = Math.floor(Math.random() * 6) + 1,
            b = Math.floor(Math.random() * 6) + 1,
            c = Math.floor(Math.random() * 6) + 1,
            d = Math.floor(Math.random() * 6) + 1,
            e = Math.floor(Math.random() * 6) + 1,
            f = Math.floor(Math.random() * 6) + 1;

        // 数据进入数组,排序
        NumberArr.push(a, b, c, d, e, f);
        NumberArr.sort();

        //存储当前 “四” 的个数
        var isfour = 0;

        for (var i = 0; i < NumberArr.length; i++) {
            if (NumberArr[i] == 4) {
                isfour = isfour + 1;
            }
        }

        // 判断 “四” 的个数属于哪一等级;
        switch (isfour) {
            case 1:
                for (var i = 0; i < NumberArr.length; i++) {
                    //存储当前相同的数量,判断是否为四进
                    var ContrastArr = [];
                    for (var j = 0; j < NumberArr.length; j++) {
                        if (NumberArr[i] == NumberArr[j]) {
                            ContrastArr.push(NumberArr[j]);
                        }
                    }
                }
                // 等到上面遍历执行完再进行判断属于哪个级别
                if (ContrastArr.length === 4) {
                    this_level = level.seven; //四进
                    break;
                } else if (ContrastArr.length === 5) {
                    this_level = level.three; //五红
                    break;
                } else if (ContrastArr.length === 6) {
                    this_level = level.two; //六红
                    break;
                } else {
                    // 判断一下,是 "对堂"" or ”一秀“,对堂就是顺子,123456,一秀就是一个只有4;
                    var isContinuityArray = false;
                    var array = NumberArr;
                    var arrayCount = array.length;
                    for (var i = 0; i < arrayCount; i++) {
                        var currentArr = Number(array[i]) + 1;
                        var nestArr = Number(array[i + 1]);
                        if (i + 1 == arrayCount) {
                            currentArr = Number(array[i]);
                            nestArr = Number(array[i]);
                        }
                        if (currentArr != nestArr) {
                            isContinuityArray = false;
                            break;
                        } else {
                            isContinuityArray = true;
                        }
                    }
                    if (isContinuityArray) {
                        this_level = level.five;
                        break;
                    } else {
                        this_level = level.nine;
                        break;
                    }
                };
                break;
            case 2:
                for (var i = 0; i < NumberArr.length; i++) {
                    var ContrastArr = [];
                    for (var j = 0; j < NumberArr.length; j++) {
                        if (NumberArr[i] == NumberArr[j]) {
                            ContrastArr.push(NumberArr[j]);
                        }
                    }
                    // 判断是 4进 or 二举
                    if (ContrastArr.length === 4) {
                        this_level = level.seven;
                        break;
                    } else {
                        this_level = level.eight;
                    }
                };
                break;
            case 3:
                this_level = level.six;
                break;
            case 4:
                // 判断是 "普通状元" or "状元插金花",普通就是4个四,插金花就是  4个四 + 2个1 ;
                var one = 0;
                for (var i = 0; i < NumberArr.length; i++) {
                    if (NumberArr[i] === 1) {
                        one = one + 1;
                    }
                }
                if (one == 2) {
                    this_level = level.one; // 插金花
                } else {
                    this_level = level.four; //普通状元
                }
                break;
            case 5:
                this_level = level.three; // 五红五子
                break;
            case 6:
                this_level = level.two; //六红六子
                break;
            default:
                // 就是页面都没有四,来判断是否属于 “五子” 和 “六子” 和 “四进” 中的哪一种;
                for (var i = 0; i < NumberArr.length; i++) {
                    var ContrastArr = [];
                    for (var j = 0; j < NumberArr.length; j++) {
                        if (NumberArr[i] == NumberArr[j]) {
                            ContrastArr.push(NumberArr[j]);
                        }
                    }
                    if (ContrastArr.length === 4) {
                        this_level = level.seven; //四进
                        break;
                    } else if (ContrastArr.length === 5) {
                        this_level = level.three; //五子
                        break;
                    } else if (ContrastArr.length === 6) {
                        this_level = level.two; //六子
                        break;
                    } else {
                        this_level = level.ten;
                    }
                };
                break;
        }

        // 定时来设置最终显示的骰子图片
        var timeout = $timeout(function() {
            $scope.dice_a = a + '.png';
            $scope.dice_b = b + '.png';
            $scope.dice_c = c + '.png';
            $scope.dice_d = d + '.png';
            $scope.dice_e = e + '.png';
            $scope.dice_f = f + '.png';
            // 设置 title 为显示状态
            $scope.titleshow = true;
            // 显示 level 当前等级
            $scope.title = this_level;
        }, 2000);

        //$scope.bobinnumber = NumberArr;
    }

 

© 著作权归作者所有

亲爱的小丰
粉丝 0
博文 1
码字总数 717
作品 0
龙岩
前端工程师
私信 提问
Chrome V8 与 Node.js

从某种意义上来说,Node.js 并不是一个从零开始编写的 JavaScript 运行时,它其实也是站在“巨人的肩膀”上进行了一系列的拼凑和封装得到的结果。它的高效离不开一些很牛的第三方程序和类库。...

博文视点
2018/06/14
0
0
javascript入门经典【推荐】—新手必备、零基础学习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a125138/article/details/7819466 本书目录 第一章: JavaScript语言基础第二章: JavaScript内置对象 第三章...

续写经典
2012/08/01
0
0
Vue进阶(三十):vue中使用element-ui进行表单验证

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunhuaqiang1/article/details/85235441 一、简单逻辑验证(直接使用rules) 实现思路 html中给el-form增加 ...

Lo秀娴ve
2018/12/24
0
0
25 个超棒的 HTML5 & JavaScript 游戏引擎开发库

就像在汽车中,引擎完成主要的工作,使汽车看起来不可思议。游戏引擎同理,游戏开发者完成细节的工作,使游戏看起来真实、吸引人眼球。游戏引擎负责其余的事情。早期,游戏开发者通常从草图做...

oschina
2015/02/26
12.5K
44
echarts IE9首次不加载问题,

请教个问题群友们,我用Echarts画了一个官网上模拟的饼形图,用谷歌和火狐测试都没问题。用IE出现问题了,第一次加载只显示标题,不显示饼图,然后F12修改浏览器模式和文档模式为IE8,之后又重...

小_康
2016/11/20
497
0

没有更多内容

加载失败,请刷新页面

加载更多

maven 环境隔离

解决问题 即 在 resource 文件夹下面 ,新增对应的资源配置文件夹,对应 开发,测试,生产的不同的配置内容 <resources> <resource> <directory>src/main/resources.${deplo......

之渊
今天
8
0
Linux创建yum仓库

第一步、搞定自己的光盘 #创建文件夹 mkdir -p /media/cdrom #挂载光盘 mount /dev/cdrom /media/cdrom #编辑配置文件使其永久生效 vim /etc/fstab 第二步,编辑yun源 vim /ect yum.repos.d...

究极小怪兽zzz
今天
6
0
jar 更新部分文件

C:\Program Files (x86)\Java\jdk1.8.0_102\bin>jar -hIllegal option: hUsage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...Options: -c c......

圣洁之子
今天
9
0
OSChina 周六乱弹 —— 感谢女装红薯开办了这个网站

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @胖达panda:分享歌词: 我有一只小毛驴我从来也不骑,有一天我心血来潮骑着去赶集,我手里拿着小皮鞭我心里正得意,不知怎么哗啦啦,我摔了一...

小小编辑
今天
2.6K
13
DDD(四)

1,引言 软件开发者大多趋向于将关注点放在数据上,而不是领域上。这对于刚入门的DDD的新手而言也是如此。以我目前的思考方式,数据库依然占据主要的地位。开发一个功能,首先我就会考虑我会...

MrYuZixian
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部