| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344 |
- //////设置手牌的数值说明
- ////// 11, 12, 13, 14, 15, 16, 17, 18, 19, // 分别代表1~9筒
- ////// 21, 22, 23, 24, 25, 26, 27, 28, 29, // 分别代表1~9万
- ////// 31, 32, 33, 34, 35, 36, 37, 38, 39, // 分别代表1~9条
- ////// 41, 42, 43, 44, // 分别代表1~9东南西北风
- ////// 51, 52, 53, // 分别代表中发白字
- ////// 61, 62, 63, 64, 65, 66, 67, 68, //TL++,花 分别为春夏秋冬梅兰竹菊
- //////*****************所有标点符号必须使用英文的标点符号************
- 'use strict';
- var quick = require('quick-pomelo');
- var P = quick.Promise;
- // 构造方法
- var SetHandCard = function () {
- // this.app = table.game.app;
- };
- SetHandCard.cardGroupIndex = 0///////设置第几组手牌
- SetHandCard.setCardByPeople = [ /////// =true时手动设置百搭牌 =false时为系统自动设置百搭牌
- // //测试无红中加一码
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [11,11,11,12,12,12,12,13,14,15,15,15,39,38],
- // [11,11,11,12,12,12,12,13,14,15,15,15,39],
- // [11,11,11,12,12,12,12,13,14,15,15,15,39],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 新算法性能测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,12,13,14,15,16,18,19,21,22,24,25,36,31],
- // [51,51,12,13,14,15,16,18,19,24,25,26,29],
- // [21,21,21,21,21,21,21,21,21,21,21,21,21],
- // [21,21,21,21,21,21,21,21,21,21,21,21,21]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,32,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试重点
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,12,15,16,17,18,25,26,27,28,28,28,15],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25],
- // [39,29,51,12,12,12,12,13,14,15,15,15,51],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,32,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,11,12,13,22,23,24,34,35,36,37,37,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25],
- // [39,29,51,12,12,12,12,13,14,15,15,15,51],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,32,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,11,24,25,26,27,28,29,31,33,34,36,39,35],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25],
- // [39,29,51,12,12,12,12,13,14,15,15,15,51],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,32,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [22,23,24,24,27,28,31,32,33,33,35,35,35,38],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25],
- // [39,29,51,12,12,12,12,13,14,15,15,15,51],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [29,29,29,29,51,51,51,51,51,32,32,32,32,51],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25],
- // [51,51,51,12,12,12,12,13,14,15,15,15,51],
- // [11,11,11,12,12,12,12,13,14,15,15,15,51]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 51,51,51,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,14,17,18,22,22,22,23,25,14,35,36,37],
- // // [51,15,15,23,24,25,27,27,28,28,29,35,36,37],
- // [51,12,13,14,17,17,22,23,35,36,37,38,39],
- // [29,15,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,51,23,24,25,27,29,28,29,29,35,36,37],
- // // [51,15,15,23,24,25,27,27,28,28,29,35,36,37],
- // [51,12,13,14,17,17,22,23,35,36,37,38,39],
- // [29,15,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // {///// 复制起点 算法测试 可以用这个改前端提示框
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,15,16,18,24,25,26,26,27,28,32,33,39],
- // [51,12,13,14,17,17,22,23,35,36,37,38,39],
- // [29,17,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // {///// 复制起点 算法测试
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,15,15,23,24,25,27,29,28,28,29,35,36,37],
- // // [51,15,15,23,24,25,27,27,28,28,29,35,36,37],
- // [51,12,13,14,17,17,22,23,35,36,37,38,39],
- // [29,15,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [12,12,12,51,51,51,51,51,51,12,25,28,32,35],
- // [12,12,14,14,51,51,51,51,51,51,25,25,31],
- // [12,15,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [12,12,12,51,51,51,51,51,51,12,23,27,33,37],
- // [12,12,14,14,51,51,51,51,51,51,25,25,31],
- // [12,15,18,22,51,51,51,51,51,51,25,28,32],
- // [11,12,13,14,15,16,17,18,19,35,35,25,25]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // // },//////复制结束点
- // //测试性能
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [12,15,18,51,51,51,51,51,51,32,25,28,32,35],
- // [12,12,14,14,51,51,51,51,51,51,25,25,31],
- // [12,15,18,22,51,51,51,51,51,51,25,28,32],
- // [12,13,14,14,51,51,51,51,51,51,25,25,27]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- // //测试性能
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [12,15,18,51,51,51,51,51,51,32,25,28,32,35],
- // [12,12,14,14,51,15,16,17,31,25,25,25,31],
- // [12,12,14,14,51,15,16,17,31,25,25,25,31],
- // [12,12,14,14,51,15,16,17,31,25,25,25,31]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,35,38,
- // ],
- // },//////复制结束点
- //测试音效
- {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- handCard:[
- //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- [51,51,51,12,12,12,13,13,13,14,14,14,39,31],
- [31,34,32,35,37,39,21,24,22,25,27,29,11],
- [11,12,13,17,18,19,24,25,26,33,33,33,39],
- [15,15,15,22,23,24,22,22,22,34,34,37,38]
- ],
- leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 12,14,27,32,32,13,27,25
- 11, 12, 13, 14, 15, 16, 17, 18, 19, // 筒
- 21, 22, 23, 24, 25, 26, 27, 28, 29, // 万
- 31, 32, 33, 34, 35, 36, 37, 38, 39, // 条
- ],
- },//////复制结束点
- // {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- // baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- // isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- // handCard:[
- // //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // // [51,51,51,12,12,12,13,13,13,14,14,14,39,51],
- // [51,51,51,12,12,12,12,13,14,14,14,14,39,51],
- // [31,32,33,24,25,26,27,28,29,35,36,34,39],
- // [11,12,13,17,18,19,24,25,26,33,33,33,39],
- // [15,15,15,22,23,24,22,22,22,34,34,37,38]
- // ],
- // leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- // 12,14,27,32,32,13,27,25
- // ],
- // },//////复制结束点
- {///// 复制起点 如果想一次性设置很多局的发牌就从此行开始复制哦
- baida:25 ,///////设置本局百搭牌为1筒 23表3万 37表7条 41表东 51表红中 61表春
- isOnlySetZJSP:true ,/////// =true时只设置庄家手牌 =false时设置所有玩家的手牌
- handCard:[
- //////庄家的手牌写在下面这行,设置数值说明是最上面的那几行
- // [51,51,51,12,12,12,13,13,13,14,14,14,39,51],
- [51,51,51,12,12,12,12,13,14,14,14,14,39,51],
- [51,51,51,51,51,51,51,51,12,15,18,22,25],
- [51,51,51,51,51,51,24,25,26,33,33,33,39],
- [15,15,15,22,23,24,22,22,22,34,34,37,38]
- ],
- leftCard:[///////除了所有玩家手牌之后剩余的所有牌 也是跳底之后的发牌顺序
- 32,35,38,32,35,38,32,35,38,32,35,38,32,35,38,
- ],
- },//////复制结束点
- ]
- // 导出类
- module.exports = SetHandCard;
- // 原型对象
- var proto = SetHandCard.prototype;
- // ////设置首次发牌 返回一副假洗(相当于人工洗过)的牌
- proto.getSCFP = function () {
- if(!SetHandCard.setCardByPeople[SetHandCard.cardGroupIndex]) return/////未人工设置的话就返回空
- let cardPool = []
- let setItem = SetHandCard.setCardByPeople[SetHandCard.cardGroupIndex]
- let hancard1 = setItem.handCard[0]
- let hancard2 = setItem.handCard[1]
- let hancard3 = setItem.handCard[2]
- let hancard4 = setItem.handCard[3]
- ///////拼接各个玩家的手牌
- cardPool = cardPool.concat(hancard1)
- cardPool = cardPool.concat(hancard2)
- cardPool = cardPool.concat(hancard3)
- cardPool = cardPool.concat(hancard4)
- //////拼接整副牌剩下的牌
- cardPool = cardPool.concat(setItem.leftCard)
- return cardPool
- };
|