删除 YouleNexus 内嵌 .git,统一由根仓库唯一管理。提交: - projects/ 旧 H5 模板 Game_Surface_3 与各子游戏源码 - cocoscreator_projects/YouleNexus 工程 + cocos-creator-mcp 扩展源码 - CLAUDE.md、.mcp.json 等配置 library/temp/node_modules/dist 等缓存由 .gitignore 排除。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4602 lines
133 KiB
JavaScript
4602 lines
133 KiB
JavaScript
/*
|
|
快速模式界面显示
|
|
*/
|
|
|
|
var NN_UIF = NN_UIF || {};
|
|
//对应显示配置的参数
|
|
NN_UIF.config = {
|
|
//是否显示洗牌动画
|
|
isShuffleCards: true,
|
|
|
|
};
|
|
|
|
//隐藏游戏所有界面
|
|
NN_UIF.hide = function(){
|
|
this.game.hide();
|
|
this.deskInfo.hide();
|
|
this.show.hide();
|
|
this.anim.hide();
|
|
this.btn.hide();
|
|
this.card.hide();
|
|
this.net.hide();
|
|
this.settlement.hide();
|
|
this.gameOver.hide();
|
|
this.countDown.hide();
|
|
//提示隐藏
|
|
NN_Tips.words();
|
|
//托管图标及提示
|
|
NN_UI.trusteeshipState();
|
|
};
|
|
|
|
NN_UIF.ontime = function(gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong,/* 开启后运行多少次了 */ alltimes){
|
|
//隐藏
|
|
this.btn.ontime(gameid, spid, times, timelong, alltimes);
|
|
|
|
};
|
|
|
|
//清除定时器
|
|
NN_UIF.clearTimeout = function(obj_TOId){
|
|
//清除定时器
|
|
if(typeof(obj_TOId) == "object"){
|
|
for(var sx in obj_TOId){
|
|
if(obj_TOId[sx] > -1){
|
|
clearTimeout(obj_TOId[sx]);
|
|
obj_TOId[sx] = -1;
|
|
}
|
|
}
|
|
}else if(typeof(obj_TOId) == "number"){
|
|
if(obj_TOId[sx] > -1){
|
|
clearTimeout(obj_TOId[sx]);
|
|
obj_TOId[sx] = -1;
|
|
}
|
|
}
|
|
};
|
|
//清除循环定时器
|
|
NN_UIF.clearInterval = function(obj_TOId){
|
|
//清除定时器
|
|
if(typeof(obj_TOId) == "object"){
|
|
for(var sx in obj_TOId){
|
|
if(obj_TOId[sx] > -1){
|
|
clearInterval(obj_TOId[sx]);
|
|
obj_TOId[sx] = -1;
|
|
}
|
|
}
|
|
}else if(typeof(obj_TOId) == "number"){
|
|
if(obj_TOId[sx] > -1){
|
|
clearInterval(obj_TOId[sx]);
|
|
obj_TOId[sx] = -1;
|
|
}
|
|
}
|
|
};
|
|
|
|
//牛牛界面显示
|
|
NN_UIF.draw = {
|
|
//隐藏
|
|
hide: function(){
|
|
|
|
},
|
|
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
},
|
|
};
|
|
|
|
//游戏显示及刷新
|
|
NN_UIF.game = {
|
|
//中断显示
|
|
hide: function(){
|
|
this.startWar();
|
|
this.okZhuang();
|
|
this.disbandGame();
|
|
},
|
|
//定时id
|
|
_toId: {
|
|
startWar: {
|
|
t1: -1,
|
|
t1_1: -1,
|
|
t1_2: -1,
|
|
t1_3: -1,
|
|
t2: -1,
|
|
t2_1: -1,
|
|
t3: -1,
|
|
t3_1: -1,
|
|
},
|
|
okZhuang: {
|
|
t1: -1,
|
|
t2: -1,
|
|
t3: -1,
|
|
t3_1: -1
|
|
},
|
|
disbandGame: {
|
|
t1: -1,
|
|
t2: -1,
|
|
}
|
|
},
|
|
|
|
//开战动画标记
|
|
_isAnim_startWar: false,
|
|
|
|
//游戏开战时显示
|
|
startWar: function(isFast, startType, zhuang, data){
|
|
if(startType != null){
|
|
var _time = 0;
|
|
//隐藏游戏界面
|
|
this.hide();
|
|
|
|
//更新桌信息
|
|
NN_UIF.deskInfo.update();
|
|
//开战动画标记
|
|
this._isAnim_startWar = true;
|
|
if(NN_Desk.nowCount == 1){
|
|
//"游戏开始"显示
|
|
_time = NN_UIF.anim.gameStart(1,1,1,isFast);
|
|
}
|
|
//定时显示
|
|
this._toId.startWar.t1 = setTimeout(function(){
|
|
this._toId.startWar.t1 = -1;
|
|
if(NN_Desk.nowCount == 1){
|
|
//"游戏开始"隐藏
|
|
NN_UIF.anim.gameStart();
|
|
}
|
|
//判断是否无限局
|
|
if(Utl.getIsInfinite() == 1){
|
|
_time = NN_UIF.anim.roundStart(1, 1, 1, isFast);
|
|
} else {
|
|
//第几局显示
|
|
_time = NN_UIF.anim.gamesNum(1,1,1,isFast);
|
|
}
|
|
//定时显示玩家抢庄按钮或确定庄
|
|
this._toId.startWar.t1_1 = setTimeout(function(){
|
|
this._toId.startWar.t1_1 = -1;
|
|
//第几局隐藏
|
|
NN_UIF.anim.gamesNum();
|
|
|
|
//console.log("到第几局消失时时间差:" + ((new Date()).getTime() - NN_UI.time_start));
|
|
if(startType == 0){//抢庄
|
|
//console.log("抢庄");
|
|
NN_Desk.state = NN_state.robZhuang;
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.robzhuang);
|
|
NN_UIF.btn.robZhuang(1,1,1);
|
|
//开战动画标记取消
|
|
this._isAnim_startWar = false;
|
|
//显示玩家抢庄状态
|
|
NN_UIF.update.robZhuang();
|
|
}else if(startType == 1){//显示发牌
|
|
NN_Desk.state = NN_state.robZhuang;
|
|
NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, data.dice, data.dealorder, [0,3]);
|
|
}else if(startType == 2){//显示下注
|
|
//if(data.dealCard){
|
|
//}
|
|
}else if(startType == 3){//轮庄
|
|
//console.log("轮庄");
|
|
//掷骰子随机庄
|
|
_time = NN_UIF.show.rollDice(1,1,1,data.ramZhuang.robList);
|
|
//console.log("掷骰子");
|
|
//定时显示庄,洗牌动画,下注按钮
|
|
this._toId.startWar.t1_2 = setTimeout(function(){
|
|
this._toId.startWar.t1_2 = -1;
|
|
//显示庄,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, function(){
|
|
NN_UIF.btn.betScore(1,1,1);
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.bet);
|
|
});
|
|
}.bind(this), _time);
|
|
}else if(startType == 4){//房主坐庄
|
|
//console.log("房主坐庄");
|
|
//显示庄,洗牌动画,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, function(){
|
|
NN_UIF.btn.betScore(1,1,1);
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.bet);
|
|
});
|
|
}else{
|
|
//console.log("其他");
|
|
}
|
|
|
|
//开战动画标记
|
|
this._isAnim_startWar = false;
|
|
}.bind(this), _time);
|
|
}.bind(this), _time);
|
|
}else {//中断显示
|
|
//清除相关定时器
|
|
NN_UIF.clearTimeout(this._toId.startWar);
|
|
//隐藏动画
|
|
NN_UIF.anim.gameStart();
|
|
NN_UIF.anim.gamesNum();
|
|
//NN_UIF.anim.okZhuang();
|
|
//开战动画标记
|
|
this._isAnim_startWar = false;
|
|
}
|
|
},
|
|
|
|
_isAnim_okZhuang : false,
|
|
//确定庄后显示流程
|
|
okZhuang: function(isView, isAnim, isSound, isFast, callbackFunc, data){
|
|
//判断是否一人抢庄
|
|
if(isView){
|
|
var _time = 0;
|
|
var _robList = [];
|
|
for (var i=0;i<NN_Desk.robList.length;i++) {
|
|
if(NN_Desk.robList[i] == 1){
|
|
_robList.push(i);
|
|
}
|
|
}
|
|
this._isAnim_okZhuang = true;
|
|
|
|
if(_robList.length == 0){//无人抢庄
|
|
NN_Tips.words("okZhuang",NN_Desk.nowCount);
|
|
if(isFast){
|
|
_time = 1000;
|
|
}else {
|
|
_time = 1800;
|
|
}
|
|
this._toId.okZhuang.t1 = window.setTimeout(function(){
|
|
this._toId.okZhuang.t1 = -1;
|
|
NN_Tips.words();
|
|
//显示庄,洗牌动画,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, callbackFunc);
|
|
}.bind(this),_time);
|
|
}else if(_robList.length == 1){//一人抢庄
|
|
this._toId.okZhuang.t2 = window.setTimeout(function(){
|
|
this._toId.okZhuang.t2 = -1;
|
|
//显示庄,洗牌动画,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, callbackFunc);
|
|
}.bind(this),500);
|
|
}else {//多人抢庄
|
|
//延迟执行
|
|
this._toId.okZhuang.t3 = window.setTimeout(function(){
|
|
this._toId.okZhuang.t3 = -1;
|
|
if(isFast && (NN_Desk.model == 4 || NN_Desk.model == 5)){
|
|
//多个闪现至庄桌位
|
|
_time = NN_UIF.show.ensureZhuang(1, 1, 1, isFast, NN_Desk.robList);
|
|
}else{
|
|
//掷骰子
|
|
_time = NN_UIF.show.rollDice(1,1,1,isFast, NN_Desk.robList);
|
|
}
|
|
|
|
//显示下注按钮
|
|
this._toId.okZhuang.t3_1 = window.setTimeout(function(){
|
|
this._toId.okZhuang.t3_1 = -1;
|
|
if(isFast && (NN_Desk.model == 4 || NN_Desk.model == 5)){ //不显示庄动画
|
|
//显示庄,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, callbackFunc, true);
|
|
}else{
|
|
//显示庄,下注按钮
|
|
NN_UIF.anim.okZhuang(1, 1, 1, isFast, callbackFunc);
|
|
}
|
|
}.bind(this),_time);
|
|
}.bind(this),500);
|
|
}
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.okZhuang);
|
|
//
|
|
NN_UIF.anim.okZhuang();
|
|
NN_UIF.show.rollDice();
|
|
NN_UIF.show.ensureZhuang();
|
|
|
|
//关闭确定庄动画标记
|
|
NN_UIF.game._isAnim_okZhuang = false;
|
|
}
|
|
},
|
|
|
|
//解散房间-游戏结束
|
|
disbandGame: function(isView, isAnim, isSound, isFast, data){
|
|
if(isView){
|
|
//中断显示
|
|
//this.hide();
|
|
if(data.isSett == 1){
|
|
var _time = 0;
|
|
NN_Judge.isDisband = 1;
|
|
//重画界面
|
|
//NN_UIF.update.game();
|
|
//隐藏定时闹钟
|
|
NN_UIF.countDown.hide();
|
|
|
|
//判断显示全部摆牌
|
|
if(typeof(data.putAllCard) != "undefined"){
|
|
//刷新牌显示
|
|
NN_UIF.update.cards();
|
|
//全部摆牌
|
|
NN_UIF.net.putAllCard();
|
|
_time += 3000;
|
|
}
|
|
//判断小局结算
|
|
if(typeof(data.settlement) != "undefined"){
|
|
this._toId.disbandGame.t1 = window.setTimeout(function(){
|
|
this._toId.disbandGame.t1 = -1;
|
|
//NN_UIF.net.settlement(data.settlement.result);
|
|
NN_UIF.settlement.view(1,1,1,1,data.settlement.result);
|
|
}.bind(this),_time);
|
|
_time += 4000;
|
|
}
|
|
//判断总结算
|
|
if(typeof(data.gameOver) != "undefined"){
|
|
this._toId.disbandGame.t2 = window.setTimeout(function(){
|
|
NN_TO.disbandGame.t2 = -1;
|
|
NN_UIF.net.gameOver(data.gameOver.scores, data.gameOver.rounds);
|
|
}.bind(this),_time);
|
|
}
|
|
}else {
|
|
//清除桌数据并返回大厅
|
|
NN_Exit_intoHall();
|
|
}
|
|
}else{
|
|
NN_UIF.clearTimeout(this._toId.disbandGame);
|
|
}
|
|
},
|
|
};
|
|
|
|
//刷新界面
|
|
NN_UIF.update = {
|
|
//刷新游戏界面 (断线重连)
|
|
game: function(isFast){
|
|
//console.log("开始刷新游戏界面");
|
|
if(NN_Desk){
|
|
//隐藏游戏界面
|
|
NN_UIF.hide();
|
|
//隐藏提示
|
|
NN_Tips.words();
|
|
//显示桌信息
|
|
NN_UIF.deskInfo.update();
|
|
//显示局数
|
|
//this.roundNum();
|
|
//玩家分数
|
|
this.playerScore();
|
|
//刷新所有人下注分数
|
|
this.betScore();
|
|
//刷新庄
|
|
this.zhuang();
|
|
//根据阶段具体显示
|
|
switch (NN_Desk.state){
|
|
case NN_state.ready: //准备阶段
|
|
//准备按钮显示
|
|
Utl.setDeskStage(0);
|
|
//显示倒计时
|
|
NN_UIF.countDown.reconnect();
|
|
break;
|
|
case NN_state.robZhuang: //抢庄阶段
|
|
//刷新所有玩家牌
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){
|
|
this.cards();
|
|
if(NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0){
|
|
//抢庄按钮
|
|
NN_UIF.btn.robZhuang(true);
|
|
}
|
|
}else {
|
|
//抢庄按钮
|
|
NN_UIF.btn.robZhuang(true);
|
|
}
|
|
//刷新所有玩家抢庄
|
|
this.robZhuang();
|
|
//显示倒计时
|
|
NN_UIF.countDown.reconnect();
|
|
break;
|
|
case NN_state.bet: //下注阶段
|
|
//刷新所有玩家牌
|
|
if(NN_Desk.model == 4){
|
|
this.cards();
|
|
if(NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0){
|
|
//下注按钮
|
|
this.bet();
|
|
}
|
|
}else if(NN_Desk.model == 5){
|
|
if(NN_Desk.zhuang >= 0){
|
|
this.cards();
|
|
//显示加注提示
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i] && NN_Desk.pList[i].betScoreAgain > 0){
|
|
NN_UIF.show.betScoreAgain(1,1,1,i,NN_Desk.pList[i].betScoreAgain);
|
|
}
|
|
}
|
|
//显示下注按钮和不加注按钮
|
|
this.bet(1);
|
|
}else {
|
|
this.bet();//下注按钮
|
|
}
|
|
}else {
|
|
//下注按钮
|
|
this.bet();
|
|
}
|
|
//显示倒计时
|
|
NN_UIF.countDown.reconnect();
|
|
break;
|
|
case NN_state.dealCard: //发牌阶段
|
|
if(NN_RevDataRecord.dealCards != null && NN_RevDataRecord.over == -1){
|
|
//显示
|
|
NN_UIF.card.dealCards(1,1,1,NN_Desk.model_fast,NN_RevDataRecord.dealCards.dice,NN_RevDataRecord.dealCards.dealorder);
|
|
if(NN_Desk.model != 5){ //下注抢庄 状态不改变
|
|
NN_Desk.state = NN_state.rubCard;
|
|
}
|
|
NN_RevDataRecord.over = 1;
|
|
}else {
|
|
//刷新所有玩家牌
|
|
this.cards();
|
|
}
|
|
break;
|
|
case NN_state.rubput: //搓摆牌阶段
|
|
case NN_state.rubCard: //搓
|
|
case NN_state.putCard: //摆
|
|
//刷新所有玩家牌
|
|
this.cards();
|
|
//显示倒计时
|
|
NN_UIF.countDown.reconnect();
|
|
break;
|
|
case NN_state.settlement: //小局结算阶段
|
|
//刷新所有玩家牌
|
|
this.cards();
|
|
//刷新小局结算显示
|
|
this.settlement(isFast);
|
|
break;
|
|
case NN_state.over: //总结算阶段
|
|
//总结算
|
|
this.gameOver();
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
//玩家计时读条
|
|
//if(NN_RevDataRecord.over != 1){//发牌阶段不显示
|
|
//NN_UI.Reconnect_CountDown();
|
|
//}
|
|
//托管显示
|
|
NN_UI.trusteeshipState(true, false, NN_Desk.myseat);
|
|
//牛牛状态 - 游戏中
|
|
NN_GameState = NN_State.inGame;
|
|
//无序发牌按钮显示
|
|
NN_UIF.disorderDeal.showBtn(true);
|
|
//console.log("结束刷新游戏界面");
|
|
}
|
|
},
|
|
|
|
//桌的信息显示
|
|
roundNum : function(){
|
|
//局数
|
|
if(Utl.getIsInfinite() == 1){ //系统房间-无限局
|
|
set_self(917,37,0,0,0);
|
|
set_self(918,37,0,0,0);
|
|
} else {
|
|
if(NN_Desk.nowCount < 10 && NN_Desk.roomtype[0] >= 10){
|
|
set_self(918,7,"第 "+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+"局",0,0);
|
|
} else if(NN_Desk.nowCount >= 10 && NN_Desk.roomtype[0] >= 10){
|
|
set_self(918,7,"第"+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+"局",0,0);
|
|
} else if(NN_Desk.nowCount < 10 && NN_Desk.roomtype[0] < 10){
|
|
set_self(918,7,"第 "+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+" 局",0,0);
|
|
}
|
|
set_self(917,37,1,0,0);
|
|
set_self(918,37,1,0,0);
|
|
}
|
|
},
|
|
|
|
//庄位置刷新
|
|
zhuang: function(){
|
|
NN_UIF.show.zhuang(true, false, false, false);
|
|
},
|
|
|
|
//玩家分数刷新
|
|
playerScore : function(seat, _score){
|
|
if(seat != null && seat >= 0){//单个玩家分数更新
|
|
if(_score != null){
|
|
this.setGrade(seat,_score);
|
|
}else{
|
|
this.setGrade(seat,NN_Desk.pList[seat].scores);
|
|
}
|
|
}else { //所有玩家分数更新
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i]){
|
|
this.setGrade(i,NN_Desk.pList[i].scores);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
//设置分数显示
|
|
setGrade: function(seat,_score, isNoChangeBean){
|
|
if(NN_Desk.model_bean && NN_Desk.model_bean[0] == 1 && _score != null){ //星星数量刷新
|
|
if(Utl.getIsInfinite() == 1){
|
|
if(NN_Desk.pList[seat] && NN_Desk.pList[seat].bean != null && !isNoChangeBean){
|
|
Utl.changeBean(0, seat);
|
|
Utl.changeBean(NN_Desk.pList[seat].bean - Utl.getBeanBySeat(seat), seat);
|
|
}
|
|
} else if(!isNoChangeBean){
|
|
Utl.changeBean(_score, seat);
|
|
}
|
|
}
|
|
//无限局玩家显示星星数
|
|
if(Utl.getIsInfinite() == 1){
|
|
var _bean = Utl.getBeanBySeat(seat);
|
|
if(_bean != -1){
|
|
Utl.setGrade(seat, _bean);
|
|
}
|
|
} else if(_score != null){
|
|
Utl.setGrade(seat,_score);
|
|
}
|
|
},
|
|
|
|
//刷新所有玩家抢庄
|
|
robZhuang: function(){
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i] && NN_Desk.robList[i] != 0){
|
|
NN_UIF.show.robZhuang(true,false,false,i);
|
|
}
|
|
}
|
|
},
|
|
|
|
bet: function(isNoBetBtn){
|
|
//未下注时显示
|
|
NN_UIF.btn.betScore(1,0,0,NN_Desk.model_fast,isNoBetBtn);
|
|
},
|
|
|
|
//刷新所有人下注分数
|
|
betScore: function(isSound){
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i]){
|
|
if(NN_Desk.pList[i].betScore > 0){//显示下注分数
|
|
NN_UIF.show.betScore(true,false,false, i, NN_Desk.pList[i].betScore);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
//刷新所有玩家牌
|
|
cards: function(seat){
|
|
//NN_UIF.card.
|
|
//更新牌显示及搓摆牌显示
|
|
NN_UIF.card.update(seat);
|
|
},
|
|
|
|
//刷新小局结算显示
|
|
settlement: function(isFast){
|
|
//更新牌显示及搓摆牌显示
|
|
if(NN_Desk.state == NN_state.settlement && NN_RevDataRecord.settlement && NN_RevDataRecord.settlement != "" && NN_RevDataRecord.settlement.result){
|
|
NN_UIF.settlement.view(1,0,0,isFast,NN_RevDataRecord.settlement.result);
|
|
NN_RevDataRecord.over = 1;
|
|
}
|
|
},
|
|
|
|
//刷新总结算显示
|
|
gameOver: function(){
|
|
if(NN_Desk.state == NN_state.over && NN_RevDataRecord.gameover && NN_RevDataRecord.gameover != "" && NN_RevDataRecord.over == -1){
|
|
//显示总结算
|
|
//NN_UI.gameOver(NN_RevDataRecord.gameover.scores,NN_RevDataRecord.gameover.rounds);
|
|
NN_UIF.gameOver.view(1,0,0,NN_Desk.model_fast, NN_RevDataRecord.gameover.scores, NN_RevDataRecord.gameover.rounds);
|
|
NN_RevDataRecord.over = 1;
|
|
}
|
|
},
|
|
|
|
};
|
|
|
|
//游戏桌信息
|
|
NN_UIF.deskInfo = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.roundNum();
|
|
this.modelIcon();
|
|
this.forceBet();
|
|
this.disorderDealBtn();
|
|
},
|
|
|
|
update: function(){
|
|
this.roundNum(true);
|
|
this.modelIcon(true);
|
|
this.forceBet(true);
|
|
this.disorderDealBtn(true);
|
|
},
|
|
|
|
//桌的信息显示
|
|
roundNum : function(isView){
|
|
if(isView){
|
|
if(Utl.getIsInfinite() == 1){ //系统房间-无限局
|
|
set_self(917,37,0,0,0);
|
|
set_self(918,37,0,0,0);
|
|
} else {
|
|
//局数
|
|
if(NN_Desk.nowCount < 10 && NN_Desk.roomtype[0] >= 10){
|
|
set_self(918,7,"第 "+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+"局",0,0);
|
|
} else if(NN_Desk.nowCount >= 10 && NN_Desk.roomtype[0] >= 10){
|
|
set_self(918,7,"第"+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+"局",0,0);
|
|
} else if(NN_Desk.nowCount < 10 && NN_Desk.roomtype[0] < 10){
|
|
set_self(918,7,"第 "+NN_Desk.nowCount+"/"+NN_Desk.roomtype[0]+" 局",0,0);
|
|
}
|
|
set_self(917,37,1,0,0);
|
|
set_self(918,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_self(917,37,0,0,0);
|
|
set_self(918,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//模式图标 (星星场、比赛场)
|
|
modelIcon: function(isView){
|
|
if(isView && NN_Desk.model_bean[0] == 1){
|
|
set_self(976,37,1,0,0);
|
|
if(Utl.getIsInfinite() != 1){
|
|
set_self(980,7,"倍:" + NN_Desk.model_bean[2] + " 限:"+ NN_Desk.model_bean[1],0,0);
|
|
set_self(980,37,1,0,0);
|
|
}
|
|
}else{
|
|
set_self(976,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//强制下注分数显示
|
|
forceBet: function(isView){
|
|
//游戏界面显示强制下注分数
|
|
if(isView && Utl.getIsInfinite() != 1 && NN_config.forceBetType != 1 && NN_config.force_bet[0] == 1 && NN_config.force_bet[2] > 0 && NN_Desk.personMax != 10){
|
|
set_self(987,7,"强制下注:" + NN_config.force_bet[2],0,0);
|
|
set_self(987,37,1,0,0);
|
|
} else{
|
|
set_self(987,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//显示无序发牌
|
|
disorderDealBtn: function(isView){
|
|
NN_UIF.disorderDeal.showBtn(isView);
|
|
}
|
|
};
|
|
|
|
//牛牛界面显示
|
|
NN_UIF.show = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.zhuang();
|
|
this.robZhuang();
|
|
this.rollDice();
|
|
this.ensureZhuang();
|
|
this.betScore();
|
|
this.betScoreAgain();
|
|
this.firstBetState();
|
|
},
|
|
//ontime定时器
|
|
ontime : function(gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong,/* 开启后运行多少次了 */ alltimes){
|
|
if(spid == 710 && this._ensureZhuangVal){ //庄背景框闪动
|
|
set_self(710,57,0,0,0);
|
|
if(this._ensureZhuangVal.length == 1){
|
|
//显示庄
|
|
this._ensureZhuangVal = null;
|
|
this.zhuang(1, 1, 1, NN_Desk.model_fast);
|
|
|
|
//console.log("执行结束:" + ((new Date()).getTime() - NN_UI.time_start));
|
|
}else if(this._ensureZhuangVal.length > 0){
|
|
//console.log("执行间隔:" + ((new Date()).getTime() - NN_UI.time_start));
|
|
//_ensureZhuangVal.pop();
|
|
var wz = NN_SF[this._ensureZhuangVal[0][0]];
|
|
//显示庄背景框
|
|
set_self(890,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(890,19,get_self(346+wz,19)-20,0,0);
|
|
if(wz == 0){
|
|
set_self(890,20,285,0,0);
|
|
set_self(890,21,152,0,0);
|
|
}else {
|
|
set_self(890,20,169,0,0);
|
|
set_self(890,21,218,0,0);
|
|
}
|
|
set_self(890,41,0,0,0);
|
|
set_self(890,35,255,0,0);
|
|
set_self(890,37,1,0,0);
|
|
|
|
this._ensureZhuangVal.shift();
|
|
set_self(710,57,this._ensureZhuangVal[0][1],0,0);
|
|
}
|
|
}
|
|
},
|
|
|
|
_toId: {
|
|
zhuang : { t1 : -1 },
|
|
rollDice: {
|
|
t1: -1,
|
|
t1_1: -1,
|
|
t1_2: -1,
|
|
t1_3: -1
|
|
},
|
|
firstBetState: { t1 : -1 },
|
|
ensureZhuang: {
|
|
t1 : -1,
|
|
t2 : -1
|
|
},
|
|
betScoreAgain: {
|
|
t0 : -1,
|
|
t1 : -1,
|
|
t2 : -1,
|
|
t3 : -1,
|
|
t4 : -1
|
|
},
|
|
},
|
|
|
|
//显示提示,_time为0时不定时关闭
|
|
tips: function(type, _time){
|
|
var str = "";
|
|
if(_time == null){
|
|
_time = 2000;
|
|
}
|
|
switch (type){
|
|
case "noBean": //未准备退出房间
|
|
str = "你的" + NN_config.beanDes + "数不足哦";
|
|
break;
|
|
case "noBeanBet": //星星数不够下注
|
|
str = NN_config.beanDes + "数不够,不能下注哦";
|
|
break;
|
|
case "noBeanBetFail": //星星数不够,下注失败
|
|
str = "下注失败" + NN_config.beanDes + "数不足哦";
|
|
break;
|
|
case "noBeanRob": //星星数不够抢庄
|
|
str = NN_config.beanDes + "数不够,不能抢庄哦";
|
|
break;
|
|
case "noBeanRobFail": //星星数不够,抢庄失败
|
|
str = "抢庄失败,"+ NN_config.beanDes +"数不够哦";
|
|
_time = 0;
|
|
break;
|
|
case "noBeanExit": //星星不足退出房间
|
|
str = NN_config.beanDes + "数不足,已退出房间";
|
|
_time = 0;
|
|
break;
|
|
case "noReadyExit": //未准备退出房间
|
|
str = "未准备超时,已退出房间";
|
|
_time = 0;
|
|
break;
|
|
case "zhuangNoBean": //庄星星不足
|
|
str = "庄家"+ NN_config.beanDes +"数不够哦";
|
|
_time = 3000;
|
|
break;
|
|
case "skipZhuang": //星星不足,跳过轮庄
|
|
str = "有玩家" + NN_config.beanDes + "数不足,跳过轮庄";
|
|
break;
|
|
case "noBeanGameover": //星星不足,跳过轮庄
|
|
str = "玩家"+ NN_config.beanDes +"数不足,游戏提前结束";
|
|
_time = 0;
|
|
break;
|
|
case "trusteeship": //托管中
|
|
str = "托管中。。。";
|
|
break;
|
|
case "Untrusteeship": //取消啊托管
|
|
str = "托管已取消";
|
|
break;
|
|
case "othersNoBeanRob": //庄以外其他玩家金币不够抢庄
|
|
str = "其他玩家" + NN_config.beanDes + "都不够抢庄";
|
|
_time = 3000;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
if (str != ""){
|
|
Utl.openTips(str, _time);
|
|
}
|
|
},
|
|
|
|
//显示庄图标
|
|
zhuang: function(isView, isAnim, isSound, isFast, _time){
|
|
if(isView && NN_Desk.zhuang >= 0 && NN_Desk.state != NN_state.robZhuang){
|
|
var wz = NN_SF[NN_Desk.zhuang];
|
|
var _time = 0;
|
|
if(isAnim){
|
|
set_self(708,18,602,0,0);
|
|
set_self(708,19,276,0,0);
|
|
//显示庄背景框
|
|
set_self(890,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(890,19,get_self(346+wz,19)-20,0,0);
|
|
if(wz == 0){
|
|
set_self(890,20,285,0,0);
|
|
set_self(890,21,152,0,0);
|
|
}else {
|
|
set_self(890,20,169,0,0);
|
|
set_self(890,21,218,0,0);
|
|
}
|
|
set_self(890,41,0,0,0);
|
|
set_self(890,35,255,0,0);
|
|
if(isFast){
|
|
//庄
|
|
set_self(708,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(708,19,get_self(346+wz,19)-19,0,0);
|
|
set_self(708,33,150,0,0);
|
|
set_self(708,35,0,0,0);
|
|
set_self(708,37,1,0,0);
|
|
play_ani(1,708,35,0,255,0,200,0,0,0,1,0,0);
|
|
play_ani(1,708,33,150,100,0,200,0,200,0,1,0,0);
|
|
//庄头像框
|
|
set_self(890,35,0,0,0);
|
|
set_self(890,37,1,0,0);
|
|
play_ani(1,890,35,0,255,0,200,0,200,0,1,0,0);
|
|
_time = 100;
|
|
//定时刷新庄位置
|
|
this._toId.zhuang.t1 = window.setTimeout(function(){
|
|
this._toId.zhuang.t1 = -1;
|
|
//刷新庄背景框显示
|
|
this.zhuang(true,false,false);
|
|
}.bind(this),300);
|
|
}else {
|
|
//if(NN_Desk.model == 4 || NN_Desk.model == 5){
|
|
//庄
|
|
/*
|
|
set_self(708,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(708,19,get_self(346+wz,19)-19,0,0);
|
|
set_self(708,33,150,0,0);
|
|
set_self(708,35,0,0,0);
|
|
set_self(708,37,1,0,0);
|
|
play_ani(1,708,35,0,255,0,400,0,0,0,1,0,0);
|
|
play_ani(1,708,33,150,100,0,400,0,400,0,1,0,0);
|
|
//庄头像框
|
|
set_self(890,35,0,0,0);
|
|
set_self(890,37,1,0,0);
|
|
play_ani(1,890,35,0,255,0,200,0,0,0,1,0,0);
|
|
_time = 100;
|
|
*/
|
|
//}else {
|
|
set_self(708,33,400,0,0);
|
|
set_self(708,35,0,0,0);
|
|
set_self(708,37,1,0,0);
|
|
play_ani(1,708,35,0,255,0,500,0,200,0,1,0,0);
|
|
play_ani(1,708,33,400,100,0,300,0,800,0,1,0,0);
|
|
play_ani(1,708,18,get_self(708,18),get_self(346+wz,18)-20,0,300,0,1000,0,1,0,0);
|
|
play_ani(1,708,19,get_self(708,19),get_self(346+wz,19)-19,0,300,0,1000,0,1,0,0);
|
|
|
|
//庄头像框
|
|
set_self(890,35,0,0,0);
|
|
set_self(890,37,1,0,0);
|
|
play_ani(1,890,35,0,255,0,300,0,1000,0,1,0,0);
|
|
|
|
//定时刷新庄位置
|
|
this._toId.zhuang.t1 = window.setTimeout(function(){
|
|
this._toId.zhuang.t1 = -1;
|
|
//刷新庄背景框显示
|
|
this.zhuang(true,false,false);
|
|
}.bind(this),1000);
|
|
_time = 1300;
|
|
//}
|
|
}
|
|
//播放音效
|
|
if(isSound){
|
|
NN_playSound("qdz",0);
|
|
}
|
|
return _time;
|
|
} else {
|
|
set_self(708,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(708,19,get_self(346+wz,19)-19,0,0);
|
|
set_self(708,20,75,0,0);
|
|
set_self(708,21,75,0,0);
|
|
set_self(708,33,100,0,0);
|
|
set_self(708,35,255,0,0);
|
|
set_self(708,41,0,0,0);
|
|
set_self(708,37,1,0,0);
|
|
//显示庄背景框
|
|
set_self(890,18,get_self(346+wz,18)-20,0,0);
|
|
set_self(890,19,get_self(346+wz,19)-20,0,0);
|
|
if(wz == 0){
|
|
set_self(890,20,285,0,0);
|
|
set_self(890,21,152,0,0);
|
|
}else {
|
|
set_self(890,20,169,0,0);
|
|
set_self(890,21,218,0,0);
|
|
}
|
|
set_self(890,41,0,0,0);
|
|
set_self(890,35,255,0,0);
|
|
set_self(890,37,1,0,0);
|
|
}
|
|
|
|
return 1;
|
|
} else {
|
|
NN_UIF.clearTimeout(this._toId.zhuang);
|
|
play_ani(0,708,0);
|
|
play_ani(0,890,0);
|
|
set_self(708,37,0,0,0);
|
|
set_self(890,37,0,0,0);
|
|
NN_playSound("qdz",-1);
|
|
return 1;
|
|
}
|
|
},
|
|
|
|
//玩家抢庄
|
|
robZhuang: function(isView, isAnim, isSound, seat){
|
|
if(isView && seat != null){
|
|
if(NN_Desk.pList[seat] && NN_Desk.robList[seat] != 0){
|
|
var wz = NN_SF[seat];
|
|
//位置设置
|
|
var arrLoc = [[[606,474],[999,372],[999,165],[198,165],[198,372]],[[606,474],[830,317],[830,109],[363,109],[363,317]]];
|
|
if(NN_Desk.model == 5){
|
|
set_self(784+wz,18,arrLoc[1][wz][0],0,0);
|
|
set_self(784+wz,19,arrLoc[1][wz][1],0,0);
|
|
}else {
|
|
set_self(784+wz,18,arrLoc[0][wz][0],0,0);
|
|
set_self(784+wz,19,arrLoc[0][wz][1],0,0);
|
|
//看牌抢庄显示偏上
|
|
if(NN_Desk.model == 4){
|
|
set_self(784+wz,19,get_self(725+wz*5,19) - 48,0,0);
|
|
} else {
|
|
set_self(784+wz,19,get_self(715+wz,19) + 66,0,0);
|
|
}
|
|
}
|
|
|
|
if(NN_Desk.myseat == seat){ //自己抢庄隐藏按钮
|
|
set_self(706,37,0,0,0);
|
|
set_self(707,37,0,0,0);
|
|
}
|
|
if(NN_Desk.robList[seat] == 1){//抢
|
|
set_self(784+wz,43,1,0,0);
|
|
set_self(784+wz,37,1,0,0);
|
|
if(isSound){
|
|
NN_playSound("rob",0,Utl.getSexBySeat(seat));
|
|
}
|
|
}else if(NN_Desk.robList[seat] == -1){//不抢
|
|
set_self(784+wz,43,2,0,0);
|
|
set_self(784+wz,37,1,0,0);
|
|
if(isSound){
|
|
NN_playSound("norob",0,Utl.getSexBySeat(seat));
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
set_group(208,37,0,0,0);
|
|
if(!isSound){
|
|
NN_playSound("rob",-1);
|
|
NN_playSound("norob",-1);
|
|
}
|
|
}
|
|
},
|
|
|
|
//掷骰子动画c
|
|
rollDice: function(isView, isAnim, isSound, isFast, robList, callBackFunc){
|
|
if(isView && robList){
|
|
var _time = 0;
|
|
var _robList = [];
|
|
for (var i=0; i< robList.length; i++) {
|
|
if(robList[i] == 1){
|
|
_robList.push(i);
|
|
}
|
|
}
|
|
//var _robList = data.ramZhuang.diceList;
|
|
|
|
var wz;
|
|
for(var i=0;i<_robList.length;i++){
|
|
wz = NN_SF[_robList[i]];
|
|
//丢色子动画
|
|
set_self(789+wz,37,1,0,0);
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){
|
|
if(wz == 0){
|
|
set_self(789+wz,18,535,0,0);
|
|
if(NN_Desk.model == 5){
|
|
//隐藏自己的下注
|
|
NN_UIF.show.betScore(0,0,0,NN_Desk.myseat);
|
|
}
|
|
}else if(wz == 1 || wz == 2){ //设置色子的位置
|
|
set_self(789+wz,18,700,0,0);
|
|
}else if(wz == 3 || wz == 4){
|
|
set_self(789+wz,18,370,0,0);
|
|
}
|
|
}else {
|
|
if(wz == 0){
|
|
set_self(789+wz,18,545,0,0);
|
|
}else if(wz == 1 || wz == 2){ //设置色子的位置
|
|
set_self(789+wz,18,908,0,0);
|
|
}else if(wz == 3 || wz == 4){
|
|
set_self(789+wz,18,180,0,0);
|
|
}
|
|
}
|
|
if(isFast){//快版
|
|
play_ani(1,789+wz,43,1,6,0,400,100,0,0,1,0,0);
|
|
_time = 400 + 50;
|
|
}else {
|
|
play_ani(1,789+wz,43,1,7,0,700,100,0,0,2,0,0);
|
|
_time = 700 * 2 + 100;
|
|
}
|
|
}
|
|
if(isSound){
|
|
NN_playSound("ysz",0);
|
|
}
|
|
//定时显示色子点数
|
|
this._toId.rollDice.t1 = window.setTimeout(function(){
|
|
this._toId.rollDice.t1 = -1;
|
|
for(var i=0;i<_robList.length;i++){
|
|
set_self(789+NN_SF[_robList[i]],37,0,0,0);
|
|
//显示点数
|
|
set_self(794+NN_SF[_robList[i]]*2,18,get_self(789+NN_SF[_robList[i]],18)+18,0,0);
|
|
set_self(795+NN_SF[_robList[i]]*2,18,get_self(789+NN_SF[_robList[i]],18)+110,0,0);
|
|
set_self(794+NN_SF[_robList[i]]*2,43,NN_Desk.diceList[_robList[i]][0],0,0);
|
|
set_self(795+NN_SF[_robList[i]]*2,43,NN_Desk.diceList[_robList[i]][1],0,0);
|
|
set_self(794+NN_SF[_robList[i]]*2,37,1,0,0);
|
|
set_self(795+NN_SF[_robList[i]]*2,37,1,0,0);
|
|
}
|
|
|
|
var _time_1 = 600;
|
|
if(isFast){//快版
|
|
_time_1 = 100;
|
|
}
|
|
//定时显示色子点数
|
|
this._toId.rollDice.t1_1 = window.setTimeout(function(){
|
|
this._toId.rollDice.t1_1 = -1;
|
|
var _spid;
|
|
for(var i=0;i<_robList.length;i++){
|
|
if(_robList[i] == NN_Desk.zhuang){
|
|
_spid = 900+NN_SF[_robList[i]];
|
|
}else{
|
|
_spid = 895+NN_SF[_robList[i]];
|
|
}
|
|
set_self(_spid,7,NN_Desk.diceList[_robList[i]][0] + NN_Desk.diceList[_robList[i]][1],0,0);
|
|
set_self(_spid,19,get_self(789+NN_SF[_robList[i]],19)-15,0,0);
|
|
if(NN_Desk.diceList[_robList[i]][0] + NN_Desk.diceList[_robList[i]][1] < 10){
|
|
set_self(_spid,18,get_self(789+NN_SF[_robList[i]],18)+76,0,0);
|
|
}else {
|
|
set_self(_spid,18,get_self(789+NN_SF[_robList[i]],18)+61,0,0);
|
|
}
|
|
set_self(_spid,20,String(get_self(_spid,7)).length*30,0,0);
|
|
set_self(_spid,33,150,0,0);
|
|
set_self(_spid,35,255,0,0);
|
|
if(_robList[i] == NN_Desk.zhuang){
|
|
set_self(_spid,35,255,0,0);
|
|
set_self(_spid,33,0,0,0);
|
|
set_self(_spid,37,1,0,0);
|
|
if(isFast){ //快版
|
|
play_ani(2,_spid,35,0,255,0,200,0,0,0,1,0,0);
|
|
play_ani(1,_spid,33,500,150,0,200,0,200,0,1,0,0);
|
|
var spid_m = _spid;
|
|
this._toId.rollDice.t1_2 = window.setTimeout(function(){
|
|
this._toId.rollDice.t1_2 = -1;
|
|
set_self(spid_m,35,255,0,0);
|
|
set_self(spid_m,33,150,0,0);
|
|
set_self(spid_m,37,1,0,0);
|
|
}.bind(this),400);
|
|
}else {
|
|
play_ani(2,_spid,35,0,255,0,350,0,0,0,1,0,0);
|
|
play_ani(1,_spid,33,500,150,0,400,0,350,0,1,0,0);
|
|
var spid_m = _spid;
|
|
this._toId.rollDice.t1_2 = window.setTimeout(function(){
|
|
this._toId.rollDice.t1_2 = -1;
|
|
set_self(spid_m,35,255,0,0);
|
|
set_self(spid_m,33,150,0,0);
|
|
set_self(spid_m,37,1,0,0);
|
|
}.bind(this),850);
|
|
}
|
|
}
|
|
set_self(_spid,37,1,0,0);
|
|
};
|
|
}.bind(this),_time_1);
|
|
|
|
var _time_2 = 3200;
|
|
if(isFast){//快版
|
|
_time_2 = 1200;
|
|
}
|
|
//显示下注按钮
|
|
this._toId.rollDice.t1_3 = window.setTimeout(function(){
|
|
this._toId.rollDice.t1_3 = -1;
|
|
//下注抢庄-显示自己下注
|
|
if(NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].betScore > 0){
|
|
NN_UIF.show.betScore(1,0,0,NN_Desk.myseat, NN_Desk.pList[NN_Desk.myseat].betScore);
|
|
}
|
|
//隐藏色子
|
|
set_group(205,37,0,0,0);
|
|
//显示庄,洗牌动画,下注按钮
|
|
|
|
//调用回调函数
|
|
if(callBackFunc){
|
|
callBackFunc();
|
|
}
|
|
//NN_UI.okZhuang_1();
|
|
}.bind(this),_time_2);
|
|
}.bind(this), _time);
|
|
if(isFast){//快版
|
|
return 2000;
|
|
}
|
|
return 4700;
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.rollDice);
|
|
//隐藏色子
|
|
set_group(205,37,0,0,0);
|
|
|
|
NN_playSound("ysz",-1);
|
|
}
|
|
},
|
|
|
|
_ensureZhuangVal : null,
|
|
//快板看牌抢庄确定庄动画
|
|
ensureZhuang : function(isView, isAnim, isSound, isFast, robList, callBackFunc){
|
|
if(isView){
|
|
var _time = 2000;
|
|
var _robList = []; //抢庄列表
|
|
//统计抢庄玩家列表
|
|
for (var i=0; i< robList.length; i++) {
|
|
if(robList[i] == 1){
|
|
_robList.push(i);
|
|
}
|
|
}
|
|
//统计0桌位到庄桌位的玩家
|
|
var arr_1 = [];
|
|
for (var i=0; i< robList.length; i++) {
|
|
if(robList[i] == 1){
|
|
arr_1.push(i);
|
|
if(i == NN_Desk.zhuang){
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
//获取闪动桌位列表
|
|
if(_robList.length > 0){
|
|
do{
|
|
if(!this._ensureZhuangVal){
|
|
this._ensureZhuangVal = _robList.slice(0);
|
|
}else {
|
|
this._ensureZhuangVal = this._ensureZhuangVal.concat(_robList.slice(0));
|
|
}
|
|
}while (this._ensureZhuangVal.length + arr_1.length < 10);
|
|
this._ensureZhuangVal = this._ensureZhuangVal.concat(arr_1.slice(0));
|
|
}else{
|
|
return 5;
|
|
}
|
|
//this._ensureZhuangVal.splice(0,this._ensureZhuangVal.length-10);
|
|
|
|
//NN_UI.time_start = (new Date()).getTime();
|
|
|
|
//区分快慢版
|
|
if(isFast){
|
|
//闪动座位时加上对应闪动时间
|
|
//var a = Math.floor((2*1100)/Math.pow(this._ensureZhuangVal.length,2));
|
|
//计算递增时间增量
|
|
var addVal = Math.round((_time - 600 - 45*(this._ensureZhuangVal.length - 5)) / ((6 + this._ensureZhuangVal.length) * (this._ensureZhuangVal.length - 5) / 2 - (this._ensureZhuangVal.length - 5) * 5));
|
|
for(var i=0; i<this._ensureZhuangVal.length; i++){
|
|
if(i > 5){
|
|
this._ensureZhuangVal[i] = [this._ensureZhuangVal[i], 40 + addVal * (i - 5)];
|
|
}else {
|
|
this._ensureZhuangVal[i] = [this._ensureZhuangVal[i], 40];
|
|
}
|
|
}
|
|
}else{
|
|
_time = 3000;
|
|
var addVal = Math.round((_time - 1000 - 100*(this._ensureZhuangVal.length - 5)) / ((6 + this._ensureZhuangVal.length) * (this._ensureZhuangVal.length - 5) / 2 - (this._ensureZhuangVal.length - 5) * 5));
|
|
for(var i=0; i<this._ensureZhuangVal.length; i++){
|
|
if(i > 5){
|
|
this._ensureZhuangVal[i] = [this._ensureZhuangVal[i], 100 + addVal*(i-5)];
|
|
}else {
|
|
this._ensureZhuangVal[i] = [this._ensureZhuangVal[i], 100];
|
|
}
|
|
}
|
|
}
|
|
|
|
//ontime定时执行
|
|
set_self(710,57,this._ensureZhuangVal[0][1],0,0);
|
|
//定时
|
|
this._toId.ensureZhuang.t1 = window.setTimeout(function(){
|
|
NN_UIF.show._toId.ensureZhuang.t1 = -1;
|
|
//停止闪动
|
|
set_self(710,57,0,0,0);
|
|
NN_UIF.show._ensureZhuangVal = null;
|
|
//
|
|
//NN_UIF.show._toId.ensureZhuang.t2 = setTimeout(function(){
|
|
//NN_UIF.show._toId.ensureZhuang.t2 = -1;
|
|
//NN_UIF.show.zhuang(1,0,0);
|
|
//},200);
|
|
//下注抢庄-显示自己下注
|
|
if(NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].betScore > 0){
|
|
NN_UIF.show.betScore(1,0,0,NN_Desk.myseat, NN_Desk.pList[NN_Desk.myseat].betScore);
|
|
}
|
|
//调用回调函数
|
|
if(callBackFunc){
|
|
callBackFunc();
|
|
}
|
|
}, _time);
|
|
return _time;
|
|
}else{
|
|
NN_UIF.clearTimeout(this._toId.ensureZhuang);
|
|
//
|
|
set_self(710,57,0,0,0);
|
|
this._ensureZhuangVal = null;
|
|
}
|
|
},
|
|
|
|
//玩家下注
|
|
_betScore_btm: [[554, 413, 173], [938,315,173], [938,107,173], [184,107,173], [184,315,173]],
|
|
betScore: function(isView, isAnim, isSound, seat, score){
|
|
if(isView && seat != null && score != null){
|
|
if(score <= 0){return;}
|
|
var wz = NN_SF[seat], bmpPos = [], sLen = String(score).length * 30;
|
|
if(score != null){
|
|
//数字显示调整
|
|
bmpPos = [this._betScore_btm[wz][0], this._betScore_btm[wz][1], this._betScore_btm[wz][2]];
|
|
if(score >= 10000){
|
|
bmpPos[2] = sLen + 30 + 25;
|
|
if(wz == 0){
|
|
bmpPos[0] -= (bmpPos[2] - this._betScore_btm[wz][2])/2;
|
|
}else if(wz == 1 || wz == 2){
|
|
bmpPos[0] = bmpPos[0] - (bmpPos[2] - this._betScore_btm[wz][2]);
|
|
}
|
|
}
|
|
//背景栏
|
|
set_self(710+wz,18,bmpPos[0],0,0);
|
|
set_self(710+wz,20,bmpPos[2],0,0);
|
|
//数字
|
|
set_self(720+wz,7,score,0,0);
|
|
set_self(720+wz,20,String(score).length * 30,0,0);
|
|
set_self(720+wz,18, (bmpPos[0] + 25 + (bmpPos[2] - 25)/2) - sLen/2,0,0);
|
|
//金币
|
|
set_self(715+wz,18,bmpPos[0] - 28,0,0);
|
|
//显示
|
|
set_self(710+wz,37,1,0,0); //背景栏
|
|
set_self(715+wz,37,1,0,0); //金币 -11,9
|
|
set_self(720+wz,37,1,0,0); //数字
|
|
}else {
|
|
set_self(710+wz,37,0,0,0);
|
|
set_self(715+wz,37,0,0,0);
|
|
set_self(720+wz,37,0,0,0);
|
|
}
|
|
if(wz == 0){
|
|
NN_Tips.words();
|
|
}
|
|
if(isSound){
|
|
NN_playSound("xz");
|
|
}
|
|
} else {
|
|
if(seat != null){ //隐藏个人下注
|
|
set_self(720 + NN_SF[seat],7,0,0,0);
|
|
set_self(720 + NN_SF[seat],20,30,0,0);
|
|
set_self(710 + NN_SF[seat],37,0,0,0);
|
|
set_self(715 + NN_SF[seat],37,0,0,0);
|
|
set_self(720 + NN_SF[seat],37,0,0,0);
|
|
} else { //全部隐藏
|
|
set_group(202,37,0,0,0);
|
|
}
|
|
}
|
|
},
|
|
|
|
//玩家加注
|
|
betScoreAgain: function(isView, isAnim, isSound, seat, score){
|
|
if(isView && seat != null && score != null){
|
|
if(score < 0){return;}
|
|
var wz = NN_SF[seat];
|
|
set_self(988+wz,19,get_self(710 + wz,19) + 6,0,0);
|
|
set_self(993+wz,19,get_self(710 + wz,19) + 2,0,0);
|
|
if(score > 0){
|
|
set_self(993+wz,7,score,0,0);
|
|
set_self(993+wz,20,String(score).length*30,0,0);
|
|
if(wz == 1 || wz == 2){
|
|
if(String(score).length > 2){
|
|
set_self(988+wz,18,get_self(715 + wz,18) - 128 - (String(score).length - 2)*30,0,0);
|
|
}else{
|
|
set_self(988+wz,18,get_self(715 + wz,18) - 128,0,0);
|
|
}
|
|
}else {
|
|
set_self(988+wz,18,get_self(710 + wz,18) + get_self(710 + wz,20) + 5,0,0);
|
|
}
|
|
if(String(score).length == 1 || String(score).length > 2){
|
|
set_self(993+wz,18,get_self(988+wz,18)+66,0,0);
|
|
}else if(String(score).length == 2){
|
|
set_self(993+wz,18,get_self(988+wz,18)+64,0,0);
|
|
}
|
|
set_self(993+wz,37,1,0,0);
|
|
set_self(988+wz,43,1,0,0);
|
|
set_self(988+wz,37,1,0,0);
|
|
}else if(score == 0){ //不加注
|
|
if(wz == 1 || wz == 2){
|
|
set_self(988+wz,18,810,0,0);
|
|
}
|
|
set_self(993+wz,37,0,0,0);
|
|
set_self(988+wz,43,2,0,0);
|
|
set_self(988+wz,37,1,0,0);
|
|
}else {
|
|
set_self(993+wz,37,0,0,0);
|
|
set_self(988+wz,37,0,0,0);
|
|
}
|
|
if(wz == 0){
|
|
NN_Tips.words();
|
|
}
|
|
if(isSound){
|
|
NN_playSound("xz");
|
|
}
|
|
} else {
|
|
if(seat != null){ //隐藏个人下注
|
|
set_self(993 + NN_SF[seat],7,0,0,0);
|
|
set_self(993 + NN_SF[seat],20,30,0,0);
|
|
set_self(988 + NN_SF[seat],37,0,0,0);
|
|
} else { //全部隐藏
|
|
for(var i=988;i<=997;i++){
|
|
set_self(i,37,0,0,0);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
//首发牌提示
|
|
firstBetState : function(isView, isAnim, isSound, seat){
|
|
if(isView && seat != null){
|
|
var wz = NN_SF[seat];
|
|
switch (wz){
|
|
case 0:
|
|
set_self(893,18,553,0,0);
|
|
set_self(893,19,500,0,0);
|
|
break;
|
|
case 1:
|
|
set_self(893,18,925,0,0);
|
|
set_self(893,19,398,0,0);
|
|
break;
|
|
case 2:
|
|
set_self(893,18,925,0,0);
|
|
set_self(893,19,190,0,0);
|
|
break;
|
|
case 3:
|
|
set_self(893,18,190,0,0);
|
|
set_self(893,19,190,0,0);
|
|
break;
|
|
case 4:
|
|
set_self(893,18,190,0,0);
|
|
set_self(893,19,398,0,0);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
set_self(893,37,1,0,0);
|
|
this._toId.firstBetState.t1 = window.setTimeout(function(){
|
|
this._toId.firstBetState.t1 = -1;
|
|
set_self(893,37,0,0,0);
|
|
}.bind(this),1000);
|
|
} else {
|
|
set_self(893,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
};
|
|
|
|
//牛牛纯动画显示
|
|
NN_UIF.anim = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.gameStart();
|
|
this.roundStart();
|
|
this.gamesNum();
|
|
this.shuffleCards();
|
|
this.okZhuang();
|
|
this.fingerSlide();
|
|
},
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
|
|
},
|
|
//定时器id
|
|
_toId : {
|
|
//"游戏开始"动画定时
|
|
gameStart: { t1: -1 },
|
|
//回合开始
|
|
roundStart : { t1: -1 },
|
|
//"第几局"动画定时
|
|
gamesNum : {
|
|
t1: -1,
|
|
t1_1:-1,
|
|
t1_2:-1
|
|
},
|
|
//洗牌定时
|
|
shuffleCards: {
|
|
t1: -1,
|
|
t2: -1
|
|
},
|
|
//确定庄
|
|
okZhuang: {
|
|
t1: -1,
|
|
t1_1:-1,
|
|
},
|
|
},
|
|
|
|
//"游戏开始"动画
|
|
gameStart: function(isView, isAnim, isSound, isFast, type){
|
|
if(isView){//显示
|
|
var _time = 0;
|
|
if(NN_Desk.nowCount == 1){
|
|
set_self(891,35,0,0,0);
|
|
set_self(891,33,0,0,0);
|
|
set_self(891,37,1,0,0);
|
|
if(isFast){
|
|
play_ani(1,891,35,0,255,0,250,0,0,0,1,0,0);
|
|
play_box(1,891,33,0,800,-2420,500);
|
|
//定时隐藏
|
|
this._toId.gameStart.t1 = window.setTimeout(function(){//开始游戏隐藏
|
|
this._toId.gameStart.t1 = -1;
|
|
set_self(891,35,255,0,0);
|
|
set_self(891,33,100,0,0);
|
|
play_ani(1,891,35,255,0,0,200,0,0,0,1,0,0);
|
|
}.bind(this),1000);
|
|
_time = 1200;
|
|
} else {
|
|
play_ani(1,891,35,0,255,0,300,0,0,0,1,0,0);
|
|
play_box(1,891,33,0,600,-1200,800);
|
|
|
|
//定时隐藏
|
|
this._toId.gameStart.t1 = window.setTimeout(function(){//开始游戏隐藏
|
|
this._toId.gameStart.t1 = -1;
|
|
set_self(891,35,255,0,0);
|
|
set_self(891,33,100,0,0);
|
|
play_ani(1,891,35,255,0,0,200,0,0,0,1,0,0);
|
|
}.bind(this),2000);
|
|
_time = 2200;
|
|
}
|
|
|
|
//播放音效
|
|
if(isSound){
|
|
NN_playSound("ksyx",0);
|
|
}
|
|
return _time;
|
|
}
|
|
}else {//隐藏
|
|
NN_UIF.clearTimeout(this._toId.gameStart);
|
|
set_self(891,37,0,0,0);
|
|
play_ani(0,891,0);
|
|
NN_playSound("ksyx",-1);
|
|
}
|
|
},
|
|
|
|
//回合开始
|
|
roundStart: function(isView, isAnim, isSound, isFast){
|
|
if(isView){//显示
|
|
var _time = 0;
|
|
set_self(709,35,0,0,0);
|
|
set_self(709,33,0,0,0);
|
|
set_self(709,37,1,0,0);
|
|
if(isFast){
|
|
play_ani(1,709,35,0,255,0,250,0,0,0,1,0,0);
|
|
//play_box(1,709,33,0,800,-2420,500);
|
|
play_box(1,709,33,0,1100,-4500,350);
|
|
//定时隐藏
|
|
this._toId.roundStart.t1 = window.setTimeout(function(){//开始游戏隐藏
|
|
this._toId.roundStart.t1 = -1;
|
|
set_self(709,35,255,0,0);
|
|
//set_self(709,33,100,0,0);
|
|
play_ani(1,709,35,255,0,0,200,0,0,0,1,0,0);
|
|
}.bind(this),700);
|
|
_time = 900;
|
|
} else {
|
|
//play_ani(1,709,35,0,255,0,300,0,0,0,1,0,0);
|
|
//play_box(1,709,33,0,600,-1200,800);
|
|
play_ani(1,709,35,0,255,0,250,0,0,0,1,0,0);
|
|
//play_box(1,709,33,0,800,-2420,500);
|
|
play_box(1,709,33,0,1200,-4050,500);
|
|
//定时隐藏
|
|
this._toId.roundStart.t1 = window.setTimeout(function(){//开始游戏隐藏
|
|
this._toId.roundStart.t1 = -1;
|
|
set_self(709,35,255,0,0);
|
|
//set_self(709,33,100,0,0);
|
|
play_ani(1,709,35,255,0,0,200,0,0,0,1,0,0);
|
|
}.bind(this),2000);
|
|
_time = 2500;
|
|
}
|
|
|
|
//播放音效
|
|
if(isSound && NN_Desk.nowCount > 1){
|
|
NN_playSound("ksyx",0);
|
|
}
|
|
return _time;
|
|
}else {//隐藏
|
|
NN_UIF.clearTimeout(this._toId.roundStart);
|
|
set_self(709,37,0,0,0);
|
|
play_ani(0,709,0);
|
|
NN_playSound("ksyx",-1);
|
|
}
|
|
},
|
|
|
|
//第几局动画
|
|
gamesNum: function(isView, isAnim, isSound, isFast){
|
|
if(isView){//显示
|
|
//设置第几局
|
|
set_self(701,18,-550,0,0);
|
|
set_self(702,7,NN_Desk.nowCount,0,0);
|
|
if(NN_Desk.nowCount >= 10){
|
|
set_self(702,18,get_self(701,18)+268,0,0);
|
|
}else {
|
|
set_self(702,18,get_self(701,18)+298,0,0);
|
|
}
|
|
set_self(702,19,get_self(701,19)+36,0,0);
|
|
set_self(702,20,String(NN_Desk.nowCount).length*60,0,0);
|
|
|
|
//第几局移动出现
|
|
set_self(702,37,1,0,0);
|
|
set_self(701,37,1,0,0);
|
|
set_self(702,35,255,0,0);
|
|
set_self(701,35,255,0,0);
|
|
var _time = 0;
|
|
if(isFast){ //快板
|
|
set_self(701,18,330,0,0);
|
|
if(NN_Desk.nowCount >= 10){
|
|
set_self(702,18,get_self(701,18)+268,0,0);
|
|
}else {
|
|
set_self(702,18,get_self(701,18)+298,0,0);
|
|
}
|
|
play_ani(1,701,35,0,255,0,200,0,0,0,1,0,0);
|
|
play_ani(1,702,35,0,255,0,200,0,0,0,1,0,0);
|
|
//定时移动隐藏第几局
|
|
this._toId.gamesNum.tl_1 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_1 = -1;
|
|
play_ani(1,701,35,255,0,0,200,0,0,0,1,0,0);
|
|
play_ani(1,702,35,255,0,0,200,0,0,0,1,0,0);
|
|
//定时隐藏
|
|
this._toId.gamesNum.tl_2 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_2 = -1;
|
|
//隐藏第几局
|
|
set_self(701,37,0,0,0);
|
|
set_self(702,37,0,0,0);
|
|
}.bind(this), 300);
|
|
}.bind(this),600);
|
|
_time = 900;
|
|
/*
|
|
play_box(1,701,18,get_self(701,18),5100,-15000,400);
|
|
play_box(1,702,18,get_self(702,18),5100,-15000,400);
|
|
//定时移动隐藏第几局
|
|
this._toId.gamesNum.tl_1 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_1 = -1;
|
|
play_box(1,701,18,get_self(701,18),2000,10000,400);
|
|
play_box(1,702,18,get_self(702,18),5000,10000,400);
|
|
//定时隐藏
|
|
this._toId.gamesNum.tl_2 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_2 = -1;
|
|
//隐藏第几局
|
|
set_self(701,37,0,0,0);
|
|
set_self(702,37,0,0,0);
|
|
}.bind(this), 600);
|
|
}.bind(this),1000);
|
|
_time = 1600;
|
|
*/
|
|
}else {
|
|
play_box(1,701,18,get_self(701,18),3950,-9000,500);
|
|
play_box(1,702,18,get_self(702,18),3950,-9000,500);
|
|
//定时移动隐藏第几局
|
|
this._toId.gamesNum.tl_1 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_1 = -1;
|
|
play_box(1,701,18,get_self(701,18),1000,10000,500);
|
|
play_box(1,702,18,get_self(702,18),1000,10000,500);
|
|
//定时隐藏
|
|
this._toId.gamesNum.tl_2 = window.setTimeout(function(){
|
|
this._toId.gamesNum.tl_2 = -1;
|
|
//隐藏第几局
|
|
set_self(701,37,0,0,0);
|
|
set_self(702,37,0,0,0);
|
|
}.bind(this), 1000);
|
|
}.bind(this),1500);
|
|
_time = 2500;
|
|
}
|
|
//播放音效
|
|
if(isSound){
|
|
NN_playSound("djj",0);
|
|
}
|
|
return _time;
|
|
}else {//隐藏
|
|
NN_UIF.clearTimeout(this._toId.gameStart);
|
|
set_self(702,37,0,0,0);
|
|
set_self(701,37,0,0,0);
|
|
play_box(0,701,0);
|
|
play_box(0,702,0);
|
|
NN_playSound("djj",-1);
|
|
}
|
|
},
|
|
|
|
//洗牌动画
|
|
shuffleCards: function(isView, isAnim, isSound, _time){
|
|
if(isView){
|
|
//显示洗牌动画
|
|
set_self(830,37,1,0,0);
|
|
set_self(830,43,12,0,0);
|
|
play_ani(1,830,43,0,12,0,1200,0,100,0,1,0,0);
|
|
//定时再次播放洗牌动画
|
|
this._toId.shuffleCards.t1 = window.setTimeout(function(){
|
|
this._toId.shuffleCards.t1 = -1;
|
|
play_ani(1,830,43,0,12,0,1200,0,0,0,1,0,0);
|
|
}.bind(this), 1200);
|
|
//定时隐藏
|
|
this._toId.shuffleCards.t2 = window.setTimeout(function(){
|
|
this._toId.shuffleCards.t2 = -1;
|
|
set_self(830,37,0,0,0);
|
|
}.bind(this), 2450);
|
|
//播放音效
|
|
if(isSound){
|
|
NN_playSound("xp",0,0,120);
|
|
}
|
|
return 2450;
|
|
} else {
|
|
NN_UIF.clearTimeout(this._toId.shuffleCards);
|
|
set_self(830,37,0,0,0);
|
|
play_ani(0,830,0);
|
|
NN_playSound("xp",-1);
|
|
}
|
|
},
|
|
|
|
//确定庄到下注时动画过程
|
|
okZhuang : function(isView, isAnim, isSound, isFast, callbackFunc, isNoViewZhuang){
|
|
//确定庄
|
|
if(isView){
|
|
var _time = 5;
|
|
//if(NN_Desk.model != 4 && NN_Desk.model != 5){
|
|
//_time = NN_UIF.show.zhuang(1,1,1,isFast);
|
|
//}
|
|
if(!isNoViewZhuang){
|
|
_time = NN_UIF.show.zhuang(1,1,1,isFast);
|
|
}
|
|
this._toId.okZhuang.t1 = setTimeout(function(){
|
|
this._toId.okZhuang.t1 = -1;
|
|
if(isFast){ //无洗牌动画
|
|
//显示下注按钮
|
|
//NN_UIF.btn.betScore(1,1,1,isFast);
|
|
if(callbackFunc){
|
|
callbackFunc(); //回调函数
|
|
}else {
|
|
if(Utl.getAppService()){//切后台就不显示动画
|
|
NN_UIF.btn.betScore(1,1,1,isFast);
|
|
}else {
|
|
NN_UIF.btn.betScore(1,0,0,isFast);
|
|
}
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.bet);
|
|
}
|
|
//关闭确定庄动画标记
|
|
NN_UIF.game._isAnim_okZhuang = false;
|
|
//开战动画标记取消
|
|
NN_UIF.game._isAnim_startWar = false;
|
|
//logmessage("确定庄动画执行完全",1);
|
|
} else {
|
|
//洗牌动画
|
|
//console.log("洗牌");
|
|
if(NN_UIF.config.isShuffleCards){
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){
|
|
_time = 300;
|
|
}else {
|
|
_time = NN_UIF.anim.shuffleCards(1,1,1, isFast);
|
|
}
|
|
}else {
|
|
_time = 5;
|
|
}
|
|
this._toId.okZhuang.t1_1 = setTimeout(function(){
|
|
this._toId.okZhuang.t1_1 = -1;
|
|
//关闭确定庄动画标记
|
|
NN_UIF.game._isAnim_okZhuang = false;
|
|
//开战动画标记取消
|
|
NN_UIF.game._isAnim_startWar = false;
|
|
//显示下注按钮
|
|
//console.log("下注按钮");
|
|
if(callbackFunc){
|
|
//回调函数
|
|
callbackFunc();
|
|
}else {
|
|
//显示下注按钮
|
|
NN_UIF.btn.betScore(1,1,1);
|
|
}
|
|
}.bind(this), _time);
|
|
}
|
|
}.bind(this), _time);
|
|
} else {
|
|
//关闭确定庄动画标记
|
|
NN_UIF.game._isAnim_okZhuang = false;
|
|
//开战动画标记取消
|
|
NN_UIF.game._isAnim_startWar = false;
|
|
|
|
NN_UIF.clearTimeout(this._toId.okZhuang);
|
|
NN_UIF.show.zhuang();
|
|
NN_UIF.anim.shuffleCards();
|
|
}
|
|
},
|
|
|
|
//搓牌时手指滑动
|
|
fingerSlide : function(isView, isAnim, isSound){
|
|
if(isView && NN_Desk.state == NN_state.rubCard){
|
|
var x = get_self(750,18)+10;
|
|
set_self(763,18,x,0,0);
|
|
set_self(763,19,get_self(750,19)+74,0,0);
|
|
set_self(763,37,1,0,0);
|
|
set_self(763,41,0,0,0);
|
|
play_ani(1,763,18,x+200,x,0,1000,0,0,0,0,0,0);
|
|
}else{
|
|
play_ani(0,763,0);
|
|
set_self(763,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
//相关独立按钮
|
|
NN_UIF.btn = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.robZhuang();
|
|
this.betScore();
|
|
},
|
|
|
|
_toId: {
|
|
betScore: {
|
|
v1: -1,
|
|
},
|
|
},
|
|
|
|
//ontime定时器
|
|
ontime: function(gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong,/* 开启后运行多少次了 */ alltimes){
|
|
switch (spid){
|
|
case 701: //下注按钮显示
|
|
if(NN_Desk.model_bet == 10){
|
|
if(get_self(892,19) <= 480){ //1~10
|
|
var y = 484;
|
|
set_self(892,19,y,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
set_self(809+i,19,y+151,0,0);
|
|
set_self(814+i,19,y+65,0,0);
|
|
set_self(819+i,19,y+171,0,0);
|
|
set_self(824+i,19,y+86,0,0);
|
|
}
|
|
NN_Tips.words("bet");
|
|
set_self(701,57,0,0,0);
|
|
}else {
|
|
if(get_self(892,19)-480 < 15){
|
|
set_group(207,19,480-get_self(892,19),1,0);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,2,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_group(207,19,-15,1,0);
|
|
}
|
|
}
|
|
|
|
}else if(NN_Desk.model_bet == 5){ //1~5
|
|
if(get_self(892,19) <= 546){
|
|
var y = 546;
|
|
set_self(892,19,y,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
set_self(809+i,19,y+75,0,0);
|
|
set_self(819+i,19,y+96,0,0);
|
|
}
|
|
NN_Tips.words("bet");
|
|
set_self(701,57,0,0,0);
|
|
}else {
|
|
if(get_self(892,19)-546 < 15){
|
|
var _val1 = 546-get_self(892,19);
|
|
for (var i=0;i<5;i++) { //1~5
|
|
set_self(809+i,19,_val1,1,0);
|
|
set_self(819+i,19,_val1,1,0);
|
|
}
|
|
set_self(892,19,_val1,1,0);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,2,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else {
|
|
for (var i=0;i<5;i++) { //1~5
|
|
set_self(809+i,19,-15,1,0);
|
|
set_self(819+i,19,-15,1,0);
|
|
}
|
|
set_self(892,19,-15,1,0);
|
|
}
|
|
}
|
|
}else if(NN_Desk.model_bet == 4){ //
|
|
if(get_self(892,19) <= 480){ //1~10
|
|
var y = 484;
|
|
set_self(892,19,y,0,0);
|
|
//按钮位置
|
|
set_self(1122,19,y + 149,0,0);
|
|
set_self(1123,19,y + 149,0,0);
|
|
set_self(1124,19,y + 63,0,0);
|
|
set_self(1125,19,y + 63,0,0);
|
|
set_self(1126,19,y + 167,0,0);
|
|
set_self(1127,19,y + 167,0,0);
|
|
set_self(1128,19,y + 81,0,0);
|
|
set_self(1129,19,y + 81,0,0);
|
|
NN_Tips.words("bet");
|
|
set_self(701,57,0,0,0);
|
|
}else {
|
|
if(get_self(892,19)-480 < 15){
|
|
set_group(215,19,480-get_self(892,19),1,0);
|
|
set_self(892,19,480-get_self(892,19),1,0);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,2,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_group(215,19,-15,1,0);
|
|
set_self(892,19,-15,1,0);
|
|
}
|
|
}
|
|
}else { //1~3
|
|
if(get_self(924,19) <= 536){
|
|
set_self(924,19,536,0,0);
|
|
set_self(946,19,608,0,0);
|
|
set_self(947,19,608,0,0);
|
|
set_self(948,19,608,0,0);
|
|
NN_Tips.words("bet");
|
|
set_self(701,57,0,0,0);
|
|
}else {
|
|
if(get_self(924,19)-536 < 15){
|
|
set_group(214,19,536-get_self(924,19),1,0);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,2,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_group(214,19,-15,1,0);
|
|
}
|
|
}
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
},
|
|
|
|
//抢庄按钮
|
|
robZhuang: function(isView, isAnim, isSound, isFast){
|
|
if(isView && NN_Desk.state == NN_state.robZhuang && NN_Desk.pList[NN_Desk.myseat].isReady && NN_Desk.robList[NN_Desk.myseat] == 0){
|
|
//判断星星数是否足够抢庄
|
|
if(NN_Desk.model_bean[0] == 1){
|
|
if(!NN_Desk.isBeanEnough(NN_Desk.myseat,"bet")){
|
|
//Utl.openTips(NN_config.beanDes +"数不够,不能参与游戏哦",1000);
|
|
//隐藏按钮
|
|
this.robZhuang();
|
|
return;
|
|
}else if(!NN_Desk.isBeanEnough(NN_Desk.myseat,"rob")){
|
|
//Utl.openTips(NN_config.beanDes + "数不够,不能抢庄哦",1000);
|
|
//抢庄按钮半透明
|
|
set_self(707,35,150,0,0);
|
|
}else{
|
|
set_self(707,35,255,0,0);
|
|
}
|
|
}else{
|
|
set_self(707,35,255,0,0);
|
|
}
|
|
if(NN_Desk.model == 5 || NN_Desk.model == 4){ // 下注抢庄 - 位置改变
|
|
if((NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].betScore > 0) || (NN_Desk.model == 4 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){
|
|
set_self(706,18,460,0,0);
|
|
set_self(706,19,322,0,0);
|
|
set_self(707,18,664,0,0);
|
|
set_self(707,19,322,0,0);
|
|
set_self(706,37,1,0,0);
|
|
set_self(707,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_self(706,18,400,0,0);
|
|
set_self(706,19,395,0,0);
|
|
set_self(707,18,722,0,0);
|
|
set_self(707,19,395,0,0);
|
|
set_self(706,37,1,0,0);
|
|
set_self(707,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_self(706,37,0,0,0);
|
|
set_self(707,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//下注按钮框
|
|
betScore: function(isView, isAnim, isSound, isFast, isNoBetBtn){
|
|
//显示下注按钮
|
|
if(isView && NN_Desk.state == NN_state.bet){
|
|
//判断玩家星星数是否可下注
|
|
if(NN_Desk.model_bean[0] == 1 && !NN_Desk.isBeanEnough(NN_Desk.myseat,"bet")){
|
|
if(NN_Desk.model != 5){
|
|
Utl.openTips(NN_config.beanDes +"数不够,不能下注哦",1000);
|
|
}
|
|
return 1;
|
|
}
|
|
if(!NN_Desk.pList[NN_Desk.myseat].isReady || (Utl.getIsInfinite() == 1 && Utl.getPlayerReadyState(NN_Desk.myseat) != 1) || (NN_Desk.model == 4 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length == 0) || (NN_Desk.model == 5 && NN_Desk.zhuang >= 0 && (NN_Desk.pList[NN_Desk.myseat].betScoreAgain > 0 || NN_Desk.pList[NN_Desk.myseat].cards.cards.length == 0))){ //看牌抢庄 - 没有牌时不显示
|
|
return 1;
|
|
}
|
|
if(NN_Desk.myseat != NN_Desk.zhuang && (NN_Desk.pList[NN_Desk.myseat].betScore <= 0 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0))){
|
|
set_self(892,41,0,0,0);
|
|
set_self(924,41,0,0,0);
|
|
if(isAnim){
|
|
if(NN_Desk.model_bet == 10){ //1~10
|
|
var y = 730;
|
|
set_self(892,19,y,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
set_self(819+i,1,555,0,0);
|
|
set_self(819+i,7,i+1,0,0);
|
|
set_self(824+i,1,555,0,0);
|
|
set_self(824+i,7,i+6,0,0);
|
|
|
|
set_self(809+i,19,y+151,0,0);
|
|
set_self(814+i,19,y+65,0,0);
|
|
set_self(819+i,19,y+171,0,0);
|
|
set_self(824+i,19,y+86,0,0);
|
|
set_self(809+i,41,1,0,0);
|
|
set_self(814+i,41,1,0,0);
|
|
//透明度
|
|
set_self(809+i,35,255,0,0);
|
|
set_self(809+i,43,1,0,0);
|
|
set_self(814+i,35,255,0,0);
|
|
set_self(814+i,43,1,0,0);
|
|
//
|
|
set_self(819+i,41,0,0,0);
|
|
set_self(824+i,41,0,0,0);
|
|
}
|
|
//set_group(207,35,255,0,0);
|
|
set_group(207,37,1,0,0);
|
|
}else if(NN_Desk.model_bet == 5){ //1~5
|
|
var y = 730;
|
|
set_self(892,19,y,0,0);
|
|
set_self(892,37,1,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
//1~5
|
|
set_self(819+i,1,555,0,0);
|
|
set_self(819+i,7,i+1,0,0);
|
|
|
|
set_self(809+i,19,y+75,0,0);
|
|
set_self(819+i,19,y+96,0,0);
|
|
set_self(809+i,41,1,0,0);
|
|
set_self(819+i,41,0,0,0);
|
|
set_self(809+i,37,1,0,0);
|
|
set_self(819+i,37,1,0,0);
|
|
//透明度
|
|
set_self(809+i,35,255,0,0);
|
|
set_self(809+i,43,1,0,0);
|
|
set_self(814+i,37,0,0,0);
|
|
set_self(824+i,37,0,0,0);
|
|
}
|
|
}else if(NN_Desk.model_bet == 4){ //百分比
|
|
var y = 730;
|
|
set_self(892,19,y,0,0);
|
|
//按钮位置
|
|
for (var i=0;i<2;i++) {
|
|
set_self(1122 + i,19,y + 149,0,0);
|
|
set_self(1124 + i,19,y + 63,0,0);
|
|
set_self(1126 + i,19,y + 167,0,0);
|
|
set_self(1128 + i,19,y + 81,0,0);
|
|
set_self(1126 + i,41,0,0,0);
|
|
set_self(1128 + i,41,0,0,0);
|
|
}
|
|
//显示
|
|
set_group(215,37,1,0,0);
|
|
set_self(892,37,1,0,0);
|
|
}else { //1~3
|
|
set_self(924,19,730,0,0);
|
|
set_self(946,19,802,0,0);
|
|
set_self(947,19,802,0,0);
|
|
set_self(948,19,802,0,0);
|
|
set_group(214,37,1,0,0);
|
|
}
|
|
//ontime定时执行显示下注栏
|
|
set_self(701,57,20,0,0);
|
|
//if(NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0){ //看牌抢庄显示收展按钮
|
|
//set_self(955,43,2,0,0);
|
|
//set_self(955,37,1,0,0);
|
|
//}
|
|
} else {
|
|
//下注
|
|
if(NN_Desk.model_bet == 10){ //1~10
|
|
set_self(828,20,60,0,0);
|
|
var y = 484;
|
|
set_self(892,19,y,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
set_self(809+i,19,y+151,0,0);
|
|
set_self(814+i,19,y+65,0,0);
|
|
set_self(819+i,19,y+171,0,0);
|
|
set_self(824+i,19,y+86,0,0);
|
|
//
|
|
set_self(819+i,1,555,0,0);
|
|
set_self(819+i,7,i+1,0,0);
|
|
set_self(824+i,1,555,0,0);
|
|
set_self(824+i,7,i+6,0,0);
|
|
set_self(819+i,41,0,0,0);
|
|
set_self(824+i,41,0,0,0);
|
|
//
|
|
set_self(819+i,43,1,0,0);
|
|
set_self(824+i,43,1,0,0);
|
|
}
|
|
set_group(207,37,1,0,0);
|
|
}else if(NN_Desk.model_bet == 5){ //1~5
|
|
//for(var i=1;i<=5;i++){
|
|
//set_self(818+i,7,i,0,0);
|
|
//set_self(818+i,41,0,0,0);
|
|
//}
|
|
//set_self(828,20,60,0,0);
|
|
var y = 546;
|
|
set_self(892,19,y,0,0);
|
|
set_self(892,37,1,0,0);
|
|
for (var i=0;i<5;i++) {
|
|
set_self(819+i,1,555,0,0);
|
|
set_self(819+i,7,i+1,0,0);
|
|
|
|
set_self(809+i,19,y+75,0,0);
|
|
set_self(819+i,19,y+96,0,0);
|
|
|
|
set_self(809+i,37,1,0,0);
|
|
set_self(819+i,37,1,0,0);
|
|
set_self(814+i,37,0,0,0);
|
|
set_self(824+i,37,0,0,0);
|
|
|
|
set_self(819+i,41,0,0,0);
|
|
set_self(819+i,43,1,0,0);
|
|
}
|
|
}else if(NN_Desk.model_bet == 4){ //1~5
|
|
var y = 484;
|
|
set_self(892,19,y,0,0);
|
|
//按钮位置
|
|
for (var i=0;i<2;i++) {
|
|
set_self(1122 + i,19,y + 149,0,0);
|
|
set_self(1124 + i,19,y + 63,0,0);
|
|
set_self(1126 + i,19,y + 167,0,0);
|
|
set_self(1128 + i,19,y + 81,0,0);
|
|
set_self(1126 + i,41,0,0,0);
|
|
set_self(1128 + i,41,0,0,0);
|
|
}
|
|
//显示
|
|
set_group(215,37,1,0,0);
|
|
set_self(892,37,1,0,0);
|
|
}else { //1~3
|
|
set_self(924,19,536,0,0);
|
|
set_self(946,19,608,0,0);
|
|
set_self(947,19,608,0,0);
|
|
set_self(948,19,608,0,0);
|
|
set_group(214,37,1,0,0);
|
|
}
|
|
set_self(701,57,0,0,0);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,2,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}
|
|
//下注范围值赋值及位置调整
|
|
if(NN_Desk.model_bet == 4){
|
|
for(var i=0; i<4; i++){
|
|
if(NN_Desk.pList[NN_Desk.myseat].betRange[i] != null){
|
|
set_self(1126 + i, 7, NN_Desk.pList[NN_Desk.myseat].betRange[i],0,0);
|
|
set_self(1126 + i, 18, get_self(1122+i,18) + get_self(1122+i,20)/2 - String(NN_Desk.pList[NN_Desk.myseat].betRange[i]).length * 9,0,0);
|
|
}
|
|
}
|
|
}
|
|
//按钮显示
|
|
if( NN_Desk.betRange.length > 0 && NN_Desk.betRange[NN_Desk.betRange.length-1] <= NN_Desk.model_bet){
|
|
if(NN_Desk.model_bet == 5 || NN_Desk.model_bet == 10){
|
|
var temp = NN_Desk.betRange.slice(0);
|
|
for (var i=0; i<NN_Desk.model_bet; i++) {
|
|
if(i+1 == temp[0]){
|
|
temp.shift();
|
|
}else {
|
|
//半透明
|
|
set_self(809+i,41,0,0,0);
|
|
set_self(819+i,41,0,0,0);
|
|
//set_self(809+i,35,150,0,0);
|
|
//set_self(819+i,35,160,0,0);
|
|
//变帧灰图
|
|
set_self(809+i,43,2,0,0);
|
|
set_self(819+i,1,583,0,0);
|
|
set_self(819+i,7,i+1,0,0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
if(NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0){
|
|
NN_Tips.words("betAgain");
|
|
//显示不加注按钮
|
|
if(isNoBetBtn){
|
|
set_self(956,37,1,0,0);
|
|
}
|
|
}else {
|
|
NN_Tips.words("bet");
|
|
}
|
|
} else if(NN_Desk.myseat == NN_Desk.zhuang){
|
|
NN_Tips.words("waitbet");
|
|
}
|
|
return 0;
|
|
}else {
|
|
if(isAnim){
|
|
if(get_self(892,37) == 1 || get_self(924,37) == 1){
|
|
set_self(955,37,0,0,0);
|
|
this._toId.betScore.v1 = setInterval(function(){
|
|
if(NN_Desk.model_bet == 10){ //1~10
|
|
if(get_self(892,19) >= 730){
|
|
set_group(207,37,0,0,0);
|
|
clearInterval(NN_UIF.btn._toId.betScore.v1);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,1,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else{
|
|
set_group(207,19,15,1,0);
|
|
}
|
|
}else if(NN_Desk.model_bet == 5){ //1~5
|
|
if(get_self(892,19) >= 730){
|
|
set_group(207,37,0,0,0);
|
|
clearInterval(NN_UIF.btn._toId.betScore.v1);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,1,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else{
|
|
for (var i=0;i<5;i++) {
|
|
set_self(809+i,19,15,1,0);
|
|
set_self(819+i,19,15,1,0);
|
|
}
|
|
set_self(892,19,15,1,0);
|
|
}
|
|
}else if(NN_Desk.model_bet == 4){ //百分比
|
|
if(get_self(892,19) >= 730){
|
|
set_self(892,37,0,0,0);
|
|
set_group(215,37,0,0,0);
|
|
clearInterval(NN_UIF.btn._toId.betScore.v1);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,1,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else{
|
|
set_group(215,19,15,1,0);
|
|
set_self(892,19,15,1,0);
|
|
}
|
|
}else if(NN_Desk.model_bet == 3){ //1~3
|
|
if(get_self(924,19) > 730){
|
|
set_group(214,37,0,0,0);
|
|
clearInterval(NN_UIF.btn._toId.betScore.v1);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.pList[NN_Desk.myseat].cards.cards.length > 0)){ //看牌抢庄显示收展按钮
|
|
set_self(955,43,1,0,0);
|
|
set_self(955,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_group(214,19,15,1,0);
|
|
}
|
|
}
|
|
},15);
|
|
}
|
|
//看牌抢庄显示收展按钮
|
|
set_self(955,37,0,0,0);
|
|
set_self(956,37,0,0,0);
|
|
}else {
|
|
set_self(956,37,0,0,0);
|
|
set_self(701,57,0,0,0);
|
|
set_group(207,37,0,0,0);
|
|
set_group(214,37,0,0,0);
|
|
set_group(215,37,0,0,0);
|
|
//看牌抢庄显示收展按钮
|
|
set_self(955,37,0,0,0);
|
|
}
|
|
}
|
|
},
|
|
};
|
|
|
|
//牛牛牌相关显示
|
|
NN_UIF.card = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.showBySeat();//牌
|
|
this.dealCards();
|
|
this.dealCard_seat();
|
|
this.rubCard();
|
|
this.putCard();
|
|
this.cardTypeReward();
|
|
},
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
},
|
|
|
|
_toId: {
|
|
//发牌
|
|
dealCards:{
|
|
t1: -1,
|
|
t2: -1,
|
|
t2_1: -1,
|
|
t3: -1
|
|
},
|
|
//发牌-座位
|
|
dealCard_seat: {
|
|
p0_1: -1,
|
|
p0_2: -1,
|
|
p1_1: -1,
|
|
p1_2: -1,
|
|
p2_1: -1,
|
|
p2_2: -1,
|
|
p3_1: -1,
|
|
p3_2: -1,
|
|
p4_1: -1,
|
|
p4_2: -1
|
|
},
|
|
dealCards_iv:{
|
|
i1: -1
|
|
},
|
|
//搓牌 - 格式p0_1 , p[座位]
|
|
rubCard : {
|
|
//t1: -1,
|
|
//t2: -1,
|
|
p0_1: -1,
|
|
p0_2: -1,
|
|
p1_1: -1,
|
|
p1_2: -1,
|
|
p2_1: -1,
|
|
p2_2: -1,
|
|
p3_1: -1,
|
|
p3_2: -1,
|
|
p4_1: -1,
|
|
p4_2: -1
|
|
},
|
|
//摆牌 - 格式p0_1 , p[座位]
|
|
putCard:{
|
|
p0_1: -1,
|
|
p0_2: -1,
|
|
p1_1: -1,
|
|
p1_2: -1,
|
|
p2_1: -1,
|
|
p2_2: -1,
|
|
p3_1: -1,
|
|
p3_2: -1,
|
|
p4_1: -1,
|
|
p4_2: -1
|
|
},
|
|
|
|
//摆牌1 - 格式p0_1 , p[座位]
|
|
putCard_1:{
|
|
p0_1: -1,
|
|
p1_1: -1,
|
|
p2_1: -1,
|
|
p3_1: -1,
|
|
p4_1: -1
|
|
}
|
|
},
|
|
|
|
//更新牌显示及搓摆牌显示
|
|
update: function(seat, isAnim, isSound, isFast){
|
|
if(seat != null){
|
|
if (NN_Desk.pList[seat] && NN_Desk.pList[seat].cards.cards.length == 5){
|
|
//显示牌
|
|
this.showBySeat(true, isAnim, isSound, seat);
|
|
if(NN_Desk.state == NN_state.settlement){
|
|
//结算时显示牌型
|
|
this.putCard(true, false, false, isFast, seat);
|
|
|
|
//console.log("刷新结算时玩家"+seat+"的牌");
|
|
}else {
|
|
//显示搓摆牌状态
|
|
this.updateByState(seat, isAnim, isSound);
|
|
|
|
//console.log("刷新搓摆牌玩家"+seat+"的牌");
|
|
}
|
|
}
|
|
} else {
|
|
for(var i=0;i<NN_Desk.pList.length ;i++){
|
|
if (NN_Desk.pList[i] && NN_Desk.pList[i].cards.cards.length == 5){
|
|
//显示牌
|
|
this.showBySeat(true, isAnim, isSound, i);
|
|
//显示搓摆牌状态
|
|
//this.updateByState(i, isAnim, isSound);
|
|
if(NN_Desk.state == NN_state.settlement){
|
|
//结算时显示牌型
|
|
this.putCard(true, false, false, isFast, i);
|
|
//console.log("刷新结算时玩家"+i+"的牌");
|
|
}else {
|
|
//显示搓摆牌状态
|
|
this.updateByState(i, isAnim, isSound);
|
|
//console.log("刷新搓摆牌玩家"+i+"的牌");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
//更新牌-根据搓牌状态显示
|
|
updateByState: function(seat, isAnim, isSound, isFast){
|
|
if((NN_Desk.model == 4 || NN_Desk.model == 5)&& (NN_Desk.state == NN_state.robZhuang || NN_Desk.state == NN_state.bet)){
|
|
//看牌抢庄-抢庄、下注时去掉最后一张牌显示
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i]){
|
|
if(i == NN_Desk.myseat){
|
|
//牌样式转换
|
|
for(var j = 0; j < 4; j ++){
|
|
set_self(725+j,1,561,0,0);
|
|
set_self(725+j,43,NN_toCardImg(NN_Desk.pList[i].cards.cards[j]),0,0);
|
|
set_self(725+j,20,130,0,0);
|
|
set_self(725+j,21,176,0,0);
|
|
}
|
|
}
|
|
set_self(725 + NN_SF[i]*5 + 4,37,0,0,0);
|
|
}
|
|
}
|
|
return;
|
|
}else if(NN_Desk.pList[seat].cards.cards.length != 5 || (NN_Desk.state != NN_state.rubput && NN_Desk.state != NN_state.rubCard && NN_Desk.state != NN_state.putCard && NN_Desk.state != NN_state.over)){
|
|
return;
|
|
}
|
|
var wz = NN_SF[seat];
|
|
//先判断搓牌
|
|
if(NN_Desk.pList[seat].rubcard.length < 2){
|
|
if(wz == 0){
|
|
//牌样式转换
|
|
for(var i=0;i<5;i++){
|
|
set_self(725+i,1,561,0,0);
|
|
set_self(725+i,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[i]),0,0);
|
|
set_self(725+i,20,130,0,0);
|
|
set_self(725+i,21,176,0,0);
|
|
set_self(725+i,41,1,0,0);
|
|
}
|
|
//搓牌牌背
|
|
set_self(750,18,get_self(728,18),0,0);
|
|
set_self(750,19,get_self(728,19),0,0);
|
|
set_self(750,20,get_self(728,20),0,0);
|
|
set_self(750,21,get_self(728,21),0,0);
|
|
set_self(751,18,get_self(729,18),0,0);
|
|
set_self(751,19,get_self(729,19),0,0);
|
|
set_self(751,20,get_self(729,20),0,0);
|
|
set_self(751,21,get_self(729,21),0,0);
|
|
set_self(750,37,1,0,0);
|
|
set_self(751,37,1,0,0);
|
|
|
|
NN_Judge.isRub = -1;
|
|
//游戏结束时状态不改变
|
|
if(NN_Desk.state != NN_state.over){
|
|
NN_Desk.state = NN_state.rubCard;
|
|
}
|
|
//手指滑动
|
|
NN_UIF.anim.fingerSlide(true, isAnim, isSound);
|
|
|
|
for(var j=0;j<NN_Desk.pList[seat].rubcard.length;j++){
|
|
set_self(747+NN_Desk.pList[seat].rubcard[j],37,0,0,0);
|
|
}
|
|
}else{
|
|
for(var j=0;j<NN_Desk.pList[seat].rubcard.length;j++){
|
|
set_self(725+wz*5+NN_Desk.pList[seat].rubcard[i],43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[NN_Desk.pList[seat].rubcard[i]]),0,0);
|
|
}
|
|
}
|
|
}else{
|
|
//判断摆牌
|
|
if(NN_Desk.pList[seat].putcard != 1){//未摆牌
|
|
//先判断特殊牌型-有则直接显示牌型
|
|
if(NN_Desk.pList[seat].cards.type == "bomb" || NN_Desk.pList[seat].cards.type == "wx" || NN_Desk.pList[seat].cards.type == "nmw"){//是否为特殊牌型
|
|
//摆牌 - 对应座位
|
|
this.putCard(true, isAnim, isSound, isFast, seat);
|
|
}else{
|
|
if(wz == 0){
|
|
//牌样式转换
|
|
for(var i=0;i<5;i++){
|
|
set_self(725+i,1,561,0,0);
|
|
set_self(725+i,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[i]),0,0);
|
|
set_self(725+i,20,130,0,0);
|
|
set_self(725+i,21,176,0,0);
|
|
}
|
|
set_self(750,37,0,0,0);
|
|
set_self(751,37,0,0,0);
|
|
//
|
|
set_self(807,37,1,0,0);
|
|
set_self(808,37,1,0,0);
|
|
if(NN_Judge.putLoc.length == 0){
|
|
//显示摆牌提示背景
|
|
set_self(905,37,1,0,0);
|
|
set_self(905,41,0,0,0);
|
|
//显示摆牌状态
|
|
set_self(769+wz,37,1,0,0);
|
|
set_self(769+wz,41,0,0,0);
|
|
}
|
|
//游戏结束时状态不改变
|
|
if(NN_Desk.state != NN_state.over){
|
|
NN_Desk.state = NN_state.putCard;
|
|
}
|
|
//显示自动摆牌
|
|
if(NN_Desk.pList[seat].rubcard.length == 2){
|
|
NN_putCard_autoSelection(isAnim);
|
|
//NN_Judge_selectCard(NN_Judge.putLoc);
|
|
}
|
|
}else {
|
|
//显示摆牌状态
|
|
set_self(769+wz,37,1,0,0);
|
|
set_self(769+wz,41,0,0,0);
|
|
}
|
|
}
|
|
}else{
|
|
//摆牌 - 对应座位
|
|
this.putCard(true, isAnim, isSound, isFast, seat);
|
|
}
|
|
}
|
|
},
|
|
|
|
//对应座位显示玩家的牌
|
|
showBySeat: function(isView, isAnim, isSound, seat){
|
|
if(isView && NN_Desk.pList[seat] && NN_Desk.pList[seat].cards.cards.length == 5){
|
|
var wz = NN_SF[seat];
|
|
var spid, x = 0, y = 0, z = 38;
|
|
if(wz == 0){
|
|
z = 131;
|
|
}
|
|
for(var i=0;i<5;i++){
|
|
switch (wz){
|
|
case 0:
|
|
x = 332+i*131;
|
|
y = 522;
|
|
break;
|
|
case 1:
|
|
x = 880+i*38;
|
|
y = 372;
|
|
break;
|
|
case 2:
|
|
x = 880+i*38;
|
|
y = 165;
|
|
break;
|
|
case 3:
|
|
x = 166+i*38;
|
|
y = 165;
|
|
break;
|
|
case 4:
|
|
x = 166+i*38;
|
|
y = 372;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
spid = 725+wz*5+i;
|
|
set_self(spid,18,x,0,0);
|
|
set_self(spid,19,y,0,0);
|
|
//牌样式转换
|
|
//if(wz == 0){
|
|
//set_self(spid,1,515,0,0);
|
|
//}
|
|
set_self(spid,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[i]),0,0);
|
|
if(wz == 0){
|
|
set_self(spid,20,130,0,0);
|
|
set_self(spid,21,176,0,0);
|
|
}else {
|
|
set_self(spid,20,81,0,0);
|
|
set_self(spid,21,105,0,0);
|
|
}
|
|
set_self(spid,34,0,0,0);
|
|
set_self(spid,37,1,0,0);
|
|
}
|
|
}else{
|
|
//隐藏该玩家的牌
|
|
for(var i=0;i<5;i++){
|
|
for(var j=0;j<5;j++){
|
|
set_self(725 + i * 5 + j ,37,0,0,0);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
//是否发牌中
|
|
_isDealCards : false,
|
|
|
|
dealCards: function(isView, isAnim, isSound, isFast, dice_num, deal_order, arr_sheet){//arr_sheet-发牌张数 [0,4]
|
|
if(isView){
|
|
//发牌过程标记
|
|
this._isDealCards = true;
|
|
//
|
|
NN_Judge.isDealCards = 1;
|
|
//无动画直接显示搓摆牌界面
|
|
if(!isAnim){
|
|
NN_UIF.card.update(null, isAnim, isSound, isFast);
|
|
return;
|
|
}
|
|
if(!arr_sheet){
|
|
arr_sheet = [0,4];
|
|
}
|
|
//发牌动画
|
|
if(isFast){ //快版发牌 - 无首发牌提示 - 同时发牌
|
|
var _cardsLoc = [[332,522,130,176,131],[880,372,81,105,38],[880,165,81,105,38],[166,165,81,105,38],[166,372,81,105,38]]; //[[x坐标,y坐标,w宽,h高,间隔]]
|
|
var _spid = 0;
|
|
var wz = 0;
|
|
var _time = 400;//定时显示牌牌值
|
|
if(arr_sheet[0] == 4){
|
|
_time += 1000;
|
|
}
|
|
for(var j=0;j<deal_order.length;j++){
|
|
for(var i = arr_sheet[0]; i <= arr_sheet[1]; i++){
|
|
wz = NN_SF[deal_order[j]];
|
|
_spid = 725 + wz * 5 + i;
|
|
//牌初始位置(中心)
|
|
if(wz == 0){
|
|
set_self(_spid,1,561,0,0);
|
|
}
|
|
set_self(_spid,43,55,0,0);
|
|
set_self(_spid,18,610,0,0);
|
|
set_self(_spid,19,285,0,0);
|
|
set_self(_spid,20,81,0,0);
|
|
set_self(_spid,21,105,0,0);
|
|
set_self(_spid,37,1,0,0);
|
|
//牌移动到对应位置
|
|
play_ani(1,_spid,18,610,_cardsLoc[wz][0] + _cardsLoc[wz][4] * i, 0,400,0,j*100,0,1,0,0);
|
|
play_ani(1,_spid,19,285,_cardsLoc[wz][1],0,500,0,j*100,0,1,0,0);
|
|
if(wz == 0){
|
|
play_ani(1,_spid,20,get_self(_spid,20),_cardsLoc[wz][2],0,400,0,j*100,0,1,0,0);
|
|
play_ani(1,_spid,21,get_self(_spid,21),_cardsLoc[wz][3],0,400,0,j*100,0,1,0,0);
|
|
}
|
|
}
|
|
//定时显示牌值
|
|
(function (wz,j,arr_sheet) {
|
|
setTimeout(function () {
|
|
var len = 5;
|
|
if(wz == 0){
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){ //看牌抢庄
|
|
len = 4;
|
|
}else {
|
|
len = 3;
|
|
}
|
|
}
|
|
for(var k=0;k<len;k++){
|
|
set_self(725 + wz*5 + k,43,NN_toCardImg(NN_Desk.pList[deal_order[j]].cards.cards[k]),0,0);
|
|
}
|
|
},_time + j*100);
|
|
})(wz,j,arr_sheet);
|
|
|
|
if(isSound){ //音效
|
|
NN_playSound("fp",0);
|
|
}
|
|
}
|
|
//定时刷新牌显示
|
|
this._toId.dealCards.t1 = setTimeout(function(){
|
|
NN_UIF.card._toId.dealCards.t1 = -1;
|
|
//是否发牌中
|
|
NN_UIF.card._isDealCards = false;
|
|
NN_Tips.words();
|
|
//玩家牌刷新
|
|
NN_UIF.update.cards();
|
|
//搓牌牌背
|
|
set_self(750,18,get_self(728,18),0,0);
|
|
set_self(750,19,522,0,0);
|
|
|
|
set_self(751,18,get_self(729,18),0,0);
|
|
set_self(751,19,522,0,0);
|
|
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){ //看牌抢庄
|
|
if(NN_Desk.state == NN_state.robZhuang){
|
|
//显示抢庄按钮
|
|
NN_UIF.btn.robZhuang(1,1,1);
|
|
//显示玩家抢庄状态
|
|
NN_UIF.update.robZhuang();
|
|
//显示计时闹钟
|
|
if(NN_Desk.model == 5 && NN_Desk.zhuang >= 0){
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.betAgain);
|
|
}else{
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.robzhuang);
|
|
}
|
|
}else {
|
|
NN_Desk.state = NN_state.rubCard;
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.rubput);
|
|
}
|
|
}else{
|
|
NN_Desk.state = NN_state.rubCard;
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.rubput);
|
|
}
|
|
//发牌结束标记
|
|
NN_Judge.isDealCards = -1;
|
|
//显示无序发牌
|
|
if(NN_UIF.disorderDeal.isView){
|
|
NN_UIF.disorderDeal.show(true);
|
|
}
|
|
},400 + (deal_order.length - 1) * 100 + 100);
|
|
//console.log("显示快版发牌动画");
|
|
}else {
|
|
//正常发牌
|
|
//先掷色子
|
|
var _time = 500;
|
|
if(NN_Desk.model != 4 && NN_Desk.model != 5){ //看牌抢庄跳过掷骰子
|
|
_time = 3400;
|
|
set_self(804,37,1,0,0);
|
|
play_ani(1,804,43,1,7,0,700,0,0,0,1,0,0);
|
|
this._toId.dealCards.t1 = window.setTimeout(function(){
|
|
this._toId.dealCards.t1 = -1;
|
|
play_ani(1,804,43,2,7,0,600,0,0,0,1,0,0);
|
|
}.bind(this), 800);
|
|
|
|
if(isSound){ //色子音效
|
|
NN_playSound("ysz",0);
|
|
}
|
|
//定时显示色子点数
|
|
this._toId.dealCards.t2 = window.setTimeout(function(){
|
|
this._toId.dealCards.t2 = -1;
|
|
//显示色子点数
|
|
set_self(804,37,0,0,0);
|
|
set_self(805,43,dice_num[0],0,0);
|
|
set_self(806,43,dice_num[1],0,0);
|
|
set_self(805,37,1,0,0);
|
|
set_self(806,37,1,0,0);
|
|
|
|
//首发牌提示
|
|
NN_UIF.show.firstBetState(isView, isAnim, isSound, dealcardlist[0][0]);
|
|
//
|
|
this._toId.dealCards.t2_1 = window.setTimeout(function(){
|
|
this._toId.dealCards.t2_1 = -1;
|
|
set_self(805,37,0,0,0);
|
|
set_self(806,37,0,0,0);
|
|
NN_UIF.show.firstBetState();
|
|
}.bind(this),1000);
|
|
}.bind(this), 1450);
|
|
//显示牌堆
|
|
set_self(829,19,-117,0,0);
|
|
set_self(829,37,1,0,0);
|
|
play_ani(1,829,19,-117,0,0,400,0,2700,0,1,0,0);
|
|
}else {
|
|
|
|
//显示牌堆
|
|
set_self(829,19,-117,0,0);
|
|
set_self(829,37,1,0,0);
|
|
play_ani(1,829,19,-117,0,0,400,0,0,0,1,0,0);
|
|
}
|
|
|
|
//发牌座位列表
|
|
var dealcardlist = [];
|
|
for(var i=arr_sheet[0]; i<=arr_sheet[1]; i++){
|
|
for(var j=0;j<deal_order.length;j++){
|
|
dealcardlist.push([deal_order[j],i]);
|
|
}
|
|
}
|
|
|
|
|
|
//定时发牌
|
|
this._toId.dealCards.t3 = window.setTimeout(function(){
|
|
//循环发牌
|
|
this._toId.dealCards_iv.i1 = window.setInterval(function(){
|
|
if(dealcardlist.length > 0){
|
|
//显示发牌
|
|
this.dealCard_seat(isView, isAnim, isSound, isFast, dealcardlist[0][0], dealcardlist[0][1]);
|
|
dealcardlist.shift();
|
|
}else {
|
|
window.clearInterval(this._toId.dealCards_iv.i1);
|
|
this._toId.dealCards_iv.i1 = -1;
|
|
|
|
//发完牌后显示前三张牌
|
|
for(var i=0;i<dealcardlist.length;i++){
|
|
set_self(725 + NN_SF[dealcardlist[i][0]]*5 + dealcardlist[i][1],43,NN_toCardImg(NN_Desk.pList[dealcardlist[i][0]].cards.cards[dealcardlist[i][1]]),0,0);
|
|
}
|
|
//var len = 5;
|
|
//if(deal_order[i] == NN_Desk.myseat){
|
|
//if(NN_Desk.model == 4 || NN_Desk.model == 5){ //看牌抢庄
|
|
//len = 4;
|
|
//}else {
|
|
//len = 3;
|
|
//}
|
|
//}
|
|
//for(var k=0;k<len;k++){
|
|
//set_self(725 + NN_SF[deal_order[i]]*5 + k,43,NN_toCardImg(NN_Desk.pList[deal_order[i]].cards.cards[k]),0,0);
|
|
//}
|
|
//}
|
|
//隐藏牌堆
|
|
play_ani(1,829,19,get_self(829,19),-120,0,400,0,0,0,1,0,0);
|
|
//
|
|
//NN_UIF.countDown.show(NN_Desk.timeout_m.rubput);
|
|
//是否发牌中
|
|
this._isDealCards = false;
|
|
//
|
|
NN_Judge.isDealCards = -1;
|
|
//显示自己搓牌
|
|
//if(NN_Desk.pList[NN_Desk.myseat].betScore > 0 || NN_Desk.myseat == NN_Desk.zhuang){
|
|
//搓牌牌背
|
|
//NN_Desk.state = NN_state.rubCard;
|
|
//NN_UI.rubPutUI(NN_Desk.myseat, false, false);
|
|
//NN_UIF.card.update(NN_Desk.myseat, true, true, isFast);
|
|
|
|
//for(var j=3;j<5;j++){
|
|
//set_self(725+j,43,NN_toCardImg(NN_Desk.pList[NN_Desk.myseat].cards.cards[j]),0,0);
|
|
//}
|
|
//}
|
|
/*
|
|
//刷新牌位置显示
|
|
this._toId.dealCards.t3_1 = window.setTimeout(function(){
|
|
this._toId.dealCards.t3_1 = -1;
|
|
NN_Tips.words();
|
|
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
//玩家牌刷新
|
|
//NN_UI.playerCards(i);
|
|
//NN_UIF.update.cards();
|
|
if(NN_Desk.pList[i]){
|
|
//显示搓摆牌
|
|
//NN_UI.rubPutUI(i,1);
|
|
NN_UIF.card.update(i, true, true, isFast);
|
|
}
|
|
}
|
|
//搓牌牌背
|
|
set_self(750,18,get_self(728,18),0,0);
|
|
set_self(750,19,522,0,0);
|
|
set_self(751,18,get_self(729,18),0,0);
|
|
set_self(751,19,522,0,0);
|
|
//优化-隐藏牌堆
|
|
set_self(829,37,0,0,0);
|
|
}.bind(this),50);
|
|
*/
|
|
//定时刷新牌显示
|
|
setTimeout(function(){
|
|
//是否发牌中
|
|
NN_UIF.card._isDealCards = false;
|
|
NN_Tips.words();
|
|
//玩家牌刷新
|
|
NN_UIF.update.cards();
|
|
//搓牌牌背
|
|
set_self(750,18,get_self(728,18),0,0);
|
|
set_self(750,19,522,0,0);
|
|
|
|
set_self(751,18,get_self(729,18),0,0);
|
|
set_self(751,19,522,0,0);
|
|
|
|
if(NN_Desk.model == 4 || NN_Desk.model == 5){ //看牌抢庄
|
|
if(NN_Desk.state == NN_state.robZhuang){
|
|
//显示抢庄按钮
|
|
NN_UIF.btn.robZhuang(1,1,1);
|
|
//显示玩家抢庄状态
|
|
NN_UIF.update.robZhuang();
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.robzhuang);
|
|
}else {
|
|
NN_Desk.state = NN_state.rubCard;
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.rubput);
|
|
}
|
|
}else{
|
|
NN_Desk.state = NN_state.rubCard;
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.rubput);
|
|
}
|
|
//发牌结束标记
|
|
NN_Judge.isDealCards = -1;
|
|
},50);
|
|
}
|
|
}.bind(this),360);
|
|
}.bind(this),_time);
|
|
}
|
|
}else {
|
|
NN_Judge.isDealCards = -1;
|
|
//是否发牌中
|
|
this._isDealCards = false;
|
|
|
|
//牌动画停止
|
|
for(var j=0;j<5;j++){
|
|
for(var i=0;i<5;i++){
|
|
play_ani(0, 725 + j * 5 + i, 0);
|
|
}
|
|
}
|
|
//停止发牌定时
|
|
NN_UIF.clearTimeout(this._toId.dealCards);
|
|
NN_UIF.clearInterval(this._toId.dealCards_iv);
|
|
//色子
|
|
play_ani(0,804,0);
|
|
set_self(804,37,0,0,0);
|
|
set_self(805,37,0,0,0);
|
|
set_self(806,37,0,0,0);
|
|
//牌堆
|
|
play_ani(0,829,0);
|
|
set_self(829,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//对应座位发一张牌
|
|
dealCard_seat: function(isView, isAnim, isSound, isFast, seat, loc){
|
|
if(isView){
|
|
var wz = NN_SF[seat];
|
|
var spid = 725+wz*5+loc;
|
|
var _time = 360;
|
|
//设置牌的初始位置
|
|
set_self(spid,20,54,0,0);
|
|
set_self(spid,21,77,0,0);
|
|
set_self(spid,37,-90,0,0);
|
|
set_self(spid,18,get_self(829,18)+6,0,0);
|
|
set_self(spid,19,get_self(829,19)+52,0,0);
|
|
set_self(spid,43,55,0,0);
|
|
set_self(spid,41,0,0,0);
|
|
set_self(spid,37,1,0,0);
|
|
//移动
|
|
switch (wz){
|
|
case 0:
|
|
play_ani(1,spid,18,get_self(829,18),332+loc*131,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(829,19),522,0,_time,0,0,0,1,0,0);
|
|
break;
|
|
case 1:
|
|
play_ani(1,spid,18,get_self(829,18),880+loc*38,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(829,19),372,0,_time,0,0,0,1,0,0);
|
|
break;
|
|
case 2:
|
|
play_ani(1,spid,18,get_self(829,18),880+loc*38,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(829,19),165,0,_time,0,0,0,1,0,0);
|
|
break;
|
|
case 3:
|
|
play_ani(1,spid,18,get_self(829,18),166+loc*38,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(829,19),165,0,_time,0,0,0,1,0,0);
|
|
break;
|
|
case 4:
|
|
play_ani(1,spid,18,get_self(829,18),166+loc*38,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(829,19),372,0,_time,0,0,0,1,0,0);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
if(wz == 0){
|
|
play_ani(1,spid,20,54,130,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,21,77,176,0,_time,0,0,0,1,0,0);
|
|
}else {
|
|
play_ani(1,spid,20,54,81,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,spid,21,77,105,0,_time,0,0,0,1,0,0);
|
|
}
|
|
play_ani(1,spid,34,-90,0,0,_time,0,0,0,1,0,0);
|
|
this._toId.dealCard_seat["p" + seat + " _1"] = window.setTimeout(function () {
|
|
NN_UIF.card._toId.dealCard_seat["p" + seat + " _1"] = -1;
|
|
if(wz == 0){
|
|
if(loc < 3 || ((NN_Desk.model == 4 || NN_Desk.model == 5) && loc < 4)){
|
|
set_self(spid,1,561,0,0);
|
|
set_self(spid,20,130,0,0);
|
|
set_self(spid,21,176,0,0);
|
|
set_self(spid,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[loc]),0,0);
|
|
}
|
|
}else if(loc < 3){
|
|
set_self(spid,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[loc]),0,0);
|
|
}
|
|
},_time+50);
|
|
this._toId.dealCard_seat["p" + seat + " _2"] = window.setTimeout(function () {
|
|
NN_UIF.card._toId.dealCard_seat["p" + seat + " _2"] = -1;
|
|
NN_playSound("fp",0);
|
|
},300);
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.dealCard_seat);
|
|
}
|
|
},
|
|
|
|
//搓牌
|
|
rubCard: function(isView, isAnim, isSound, isFast, seat, loc){
|
|
if(isView && seat != null){
|
|
var wz = NN_SF[seat];
|
|
var _time = 100;
|
|
//显示翻牌动画
|
|
//
|
|
if(wz == 0){
|
|
//隐藏手指
|
|
NN_UIF.anim.fingerSlide();
|
|
set_self(747+loc,37,0,0,0);
|
|
}else {
|
|
_time = 400;
|
|
//console.log("搓牌,"+seat+" 第"+loc+"张牌是:"+NN_Desk.pList[seat].cards.cards[loc]);
|
|
//显示翻牌
|
|
if(isAnim){ //有动画
|
|
var spid_c = 725+wz*5+loc, spid_b = 747+wz*2+loc;//牌、牌背
|
|
set_self(spid_b,18, get_self(spid_c, 18),0,0);
|
|
set_self(spid_b,19, get_self(spid_c, 19),0,0);
|
|
set_self(spid_b,20, get_self(spid_c, 20),0,0);
|
|
set_self(spid_b,21, get_self(spid_c, 21),0,0);
|
|
set_self(spid_b,37,1,0,0); //752+(wz-1)*2+loc-3
|
|
play_ani(1,spid_b,43,1,3,0,400,0,0,0,1,0,0);
|
|
this._toId.rubCard["p" + seat + "_1"] = window.setTimeout(function(){
|
|
this._toId.rubCard["p" + seat + "_1"] = -1;
|
|
set_self(spid_b,37,0,0,0);
|
|
set_self(725+wz*5+loc,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[loc]),0,0);
|
|
}.bind(this),500);
|
|
}else {
|
|
set_self(725+wz*5+loc,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[loc]),0,0);
|
|
}
|
|
}
|
|
var rubcard_count = NN_Desk.pList[seat].rubcard.length;
|
|
if(wz == 0 && rubcard_count < 2){
|
|
return;
|
|
}
|
|
this._toId.rubCard["p" + seat + "_2"] = window.setTimeout(function(){
|
|
this._toId.rubCard["p" + seat + "_1"] = -1;
|
|
if(wz != 0){
|
|
set_self(747+wz*2+loc,37,0,0,0);
|
|
}
|
|
var _type = NN_Desk.pList[seat].cards.type;
|
|
if(rubcard_count == 2 && (_type == "bigbomb" || _type == "bomb" || _type == "flush" || _type == "wuhua" || _type == "wuxiao" || _type == "hulu" || _type == "tonghua" || _type == "shunzi")){//是否为特殊牌型
|
|
//摆牌 - 对应座位
|
|
this.putCard(true, isAnim, isSound, isFast, seat);
|
|
}else{
|
|
//判断摆牌并显示
|
|
if(seat == NN_Desk.myseat){
|
|
//隐藏手指
|
|
NN_UIF.anim.fingerSlide();
|
|
if(NN_Desk.pList[seat].rubcard.length == 2){
|
|
NN_Desk.state = NN_state.putCard;
|
|
if(NN_Desk.pList[seat].putcard != 1){
|
|
//NN_UI.putCard(true);
|
|
//显示自己摆牌界面
|
|
set_self(750,37,0,0,0);
|
|
set_self(751,37,0,0,0);
|
|
set_self(807,37,1,0,0);
|
|
set_self(808,37,1,0,0);
|
|
|
|
set_self(760,41,0,0,0);
|
|
set_self(761,41,0,0,0);
|
|
set_self(762,41,0,0,0);
|
|
if(NN_Judge.putLoc.length == 0){
|
|
set_self(905,37,1,0,0);
|
|
set_self(769,37,1,0,0);
|
|
set_self(905,41,0,0,0);
|
|
set_self(769,41,0,0,0);
|
|
}
|
|
}else {
|
|
//已摆牌隐藏按钮
|
|
set_self(750,37,0,0,0);//牌背
|
|
set_self(751,37,0,0,0);
|
|
set_self(905,37,0,0,0);//提示
|
|
set_self(769,37,0,0,0);
|
|
set_self(807,37,0,0,0);//按钮
|
|
set_self(808,37,0,0,0);
|
|
}
|
|
}
|
|
}else{
|
|
if(NN_Desk.pList[seat].rubcard.length == 2 && NN_Desk.pList[seat].putcard != 1){
|
|
//显示摆牌状态
|
|
//if(seat == NN_Desk.myseat){
|
|
//if(NN_Judge.putLoc.length == 0){
|
|
//set_self(905,37,1,0,0);
|
|
//set_self(905,41,0,0,0);
|
|
|
|
//set_self(769+wz,37,1,0,0);
|
|
//set_self(769+wz,41,0,0,0);
|
|
//}
|
|
//}else{
|
|
set_self(769+wz,37,1,0,0);
|
|
set_self(769+wz,41,0,0,0);
|
|
//}
|
|
}
|
|
}
|
|
}
|
|
}.bind(this),_time);
|
|
}else {
|
|
if(seat != null){
|
|
NN_UIF.clearTimeout(this._toId.rubCard["p" + seat + "_1"]);
|
|
NN_UIF.clearTimeout(this._toId.rubCard["p" + seat + "_2"]);
|
|
set_self(747 + NN_SF[seat]*2 + 3,37,0,0,0);
|
|
set_self(747 + NN_SF[seat]*2 + 4,37,0,0,0);
|
|
//摆牌状态
|
|
if(seat == NN_Desk.myseat){
|
|
set_self(905 + NN_SF[seat],37,0,0,0);
|
|
set_self(769 + NN_SF[seat],37,0,0,0);
|
|
}else {
|
|
set_self(769 + NN_SF[seat],37,0,0,0);
|
|
}
|
|
} else {
|
|
NN_UIF.clearTimeout(this._toId.rubCard);
|
|
set_self(750,37,0,0,0);
|
|
set_self(751,37,0,0,0);
|
|
}
|
|
}
|
|
},
|
|
|
|
//搓摆所有玩家牌
|
|
putAllCard: function(isView, isAnim, isSound, isFast){
|
|
if(isView){
|
|
//显示出所有玩家的牌及牌型
|
|
set_group(203,37,0,0,0);
|
|
set_self(807,37,0,0,0);
|
|
set_self(808,37,0,0,0);
|
|
|
|
set_self(905,37,0,0,0);
|
|
for(var i=0;i<5;i++){
|
|
set_self(769+i,37,0,0,0);
|
|
}
|
|
//set_group(204,37,0,0,0);
|
|
//玩家
|
|
var wz;
|
|
var blist = NN_Desk.betList.slice(0);
|
|
blist.push(NN_Desk.zhuang);
|
|
for(var i=0;i<blist.length;i++){
|
|
if(NN_Desk.pList[blist[i]].putcard != 1){
|
|
//显示牌
|
|
//wz = NN_SF[blist[i]];
|
|
//set_self(728+wz*5,43,NN_toCardImg(NN_Desk.pList[blist[i]].cards.cards[3]),0,0);
|
|
//set_self(729+wz*5,43,NN_toCardImg(NN_Desk.pList[blist[i]].cards.cards[4]),0,0);
|
|
//牌型显示
|
|
this.putCard(true, true, true, isFast, blist[i]);
|
|
NN_Desk.pList[blist[i]].putcard = 1;
|
|
}else{
|
|
this.putCard(true, false, false, isFast, blist[i]);
|
|
}
|
|
}
|
|
} else {
|
|
|
|
}
|
|
},
|
|
|
|
//摆牌 - 对应座位 - 第一步
|
|
putCard: function(isView, isAnim, isSound, isFast, seat){
|
|
//玩家自己摆牌-缩小排列
|
|
NN_UIF.show.firstBetState();
|
|
if(isView && NN_Desk.pList[seat].cards.cards.length == 5){
|
|
//刷新搓牌的牌显示
|
|
for(var i=0; i<NN_Desk.pList[seat].cards.cards.length; i++){
|
|
set_self(725 + NN_SF[seat]*5 + i,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[i]),0,0);
|
|
set_self(725 + NN_SF[seat]*5 + i,37,1,0,0);
|
|
}
|
|
//set_self(725+NN_SF[seat]*5+4,43,NN_toCardImg(NN_Desk.pList[seat].cards.cards[4]),0,0);
|
|
if(NN_Desk.myseat == seat){
|
|
//隐藏摆牌按钮
|
|
set_self(807,37,0,0,0);
|
|
set_self(808,37,0,0,0);
|
|
set_self(905,37,0,0,0);
|
|
set_self(769,37,0,0,0);
|
|
//缩小移动
|
|
for(var i=0;i<5;i++){
|
|
set_self(725+i,37,1,0,0);
|
|
set_self(725+i,41,0,0,0);
|
|
set_self(725+i,34,0,0,0);
|
|
if(isAnim){ //有动画
|
|
var _time = 300;
|
|
if(isFast){
|
|
_time = 200;
|
|
}
|
|
play_ani(1,725+i,20,get_self(725+i,20),81,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,725+i,21,get_self(725+i,21),105,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,725+i,19,get_self(725+i,19),473,0,_time,0,0,0,1,0,0);
|
|
play_ani(1,725+i,18,get_self(725+i,18),530+i*38,0,_time,0,0,0,1,0,0);
|
|
}else {
|
|
set_self(725+i,20,81,0,0);
|
|
set_self(725+i,21,105,0,0);
|
|
set_self(725+i,19,473,0,0);
|
|
set_self(725+i,18,530+i*38,0,0);
|
|
}
|
|
}
|
|
|
|
if(isAnim){ //有动画
|
|
this._toId.putCard["p" + seat + "_1"] = window.setTimeout(function(){
|
|
this._toId.putCard["p" + seat + "_1"] = -1;
|
|
for(var j=0;j<5;j++){
|
|
set_self(725+j,1,515,0,0);
|
|
set_self(725+j,43,NN_toCardImg(NN_Desk.pList[NN_Desk.myseat].cards.cards[j]),0,0);
|
|
}
|
|
}.bind(this),120);
|
|
this._toId.putCard["p" + seat + "_2"] = window.setTimeout(function(){
|
|
this._toId.putCard["p" + seat + "_2"] = -1;
|
|
this.putCard_1(true, isAnim, isSound, isFast, seat);
|
|
}.bind(this),400);
|
|
} else {
|
|
for(var j=0;j<5;j++){
|
|
set_self(725+j,1,515,0,0);
|
|
set_self(725+j,43,NN_toCardImg(NN_Desk.pList[NN_Desk.myseat].cards.cards[j]),0,0);
|
|
}
|
|
this.putCard_1(true, isAnim, isSound, isFast, seat);
|
|
}
|
|
//console.log("玩家"+seat+"摆牌");
|
|
}else {
|
|
this.putCard_1(true, isAnim, isSound, isFast, seat);
|
|
//console.log("玩家"+seat+"摆牌");
|
|
}
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.putCard);
|
|
this.putCard_1();
|
|
}
|
|
},
|
|
|
|
//摆牌 - 对应座位 - 第二步
|
|
putCard_1: function(isView, isAnim, isSound, isFast, seat){
|
|
if(isView && seat != null){
|
|
//显示牌型 NN_Desk.pList[seat].cards.type
|
|
var wz = NN_SF[seat];
|
|
set_self(774+wz,37,1,0,0);
|
|
set_self(779+wz,37,0,0,0);
|
|
set_self(769+wz,37,0,0,0);
|
|
//红底位置
|
|
set_self(764+wz,20,248,0,0);
|
|
set_self(764+wz,21,80,0,0);
|
|
set_self(764+wz,18,get_self(725+wz*5,18)-6,0,0);
|
|
set_self(764+wz,19,get_self(725+wz*5,19)+56,0,0);
|
|
set_self(764+wz,37,1,0,0);
|
|
//牌型位置
|
|
set_self(774+wz,1,523,0,0);
|
|
set_self(774+wz,20,111,0,0);
|
|
set_self(774+wz,21,60,0,0);
|
|
set_self(774+wz,18,get_self(764+wz,18)+58,0,0);
|
|
set_self(774+wz,19,get_self(764+wz,19)+4,0,0);
|
|
//倍数
|
|
set_self(982+wz,18,get_self(764+wz,18)+142,0,0);
|
|
set_self(982+wz,19,get_self(764+wz,19)+12,0,0);
|
|
set_self(982+wz,37,0,0,0);
|
|
//倍
|
|
set_self(779+wz,18,get_self(982+wz,18) + 30,0,0);
|
|
set_self(779+wz,19,get_self(982+wz,19) - 2,0,0);
|
|
set_self(779+wz,37,0,0,0);
|
|
//位置调整
|
|
switch (NN_Desk.pList[seat].cards.type){
|
|
case "bigbomb": //7
|
|
case "bomb": //7
|
|
//牌型图标
|
|
set_self(774+wz,1,525,0,0);
|
|
if(NN_Desk.pList[seat].cards.type == "bigbomb"){
|
|
set_self(774+wz,43,2,0,0);
|
|
}else {
|
|
set_self(774+wz,43,1,0,0);
|
|
}
|
|
set_self(774+wz,20,223,0,0);
|
|
set_self(774+wz,21,173,0,0);
|
|
set_self(774+wz,18,get_self(725+wz*5,18)-36,0,0);
|
|
set_self(774+wz,19,get_self(725+wz*5,19)+27,0,0);
|
|
//倍数
|
|
set_self(982+wz,18,get_self(725+wz*5,18)+142,0,0);
|
|
set_self(982+wz,19,get_self(725+wz*5,19)+108,0,0);
|
|
//红底隐藏
|
|
set_self(764+wz,37,0,0,0);
|
|
break;
|
|
case "hulu":
|
|
case "wuxiao":
|
|
case "wuhua": //
|
|
case "flush": //同花顺
|
|
//牌型图标
|
|
set_self(774+wz,1,524,0,0);
|
|
if(NN_Desk.pList[seat].cards.type == "hulu"){
|
|
set_self(774+wz,43,6,0,0);
|
|
}else if(NN_Desk.pList[seat].cards.type == "wuxiao"){
|
|
set_self(774+wz,43,3,0,0);
|
|
}else if(NN_Desk.pList[seat].cards.type == "wuhua"){
|
|
set_self(774+wz,43,2,0,0);
|
|
}else if(NN_Desk.pList[seat].cards.type == "flush"){
|
|
set_self(774+wz,43,5,0,0);
|
|
}
|
|
|
|
set_self(774+wz,20,160,0,0);
|
|
set_self(774+wz,21,72,0,0);
|
|
//红底位置
|
|
set_self(764+wz,20,296,0,0);
|
|
set_self(764+wz,18,get_self(725+wz*5,18)-35,0,0);
|
|
set_self(764+wz,19,get_self(725+wz*5,19)+67,0,0);
|
|
//牌型图标位置
|
|
set_self(774+wz,18,get_self(764+wz,18)+33,0,0);
|
|
set_self(774+wz,19,get_self(764+wz,19)-9,0,0);
|
|
//倍数
|
|
set_self(982+wz,18,get_self(764+wz,18)+194,0,0);
|
|
set_self(982+wz,19,get_self(764+wz,19)+14,0,0);
|
|
break;
|
|
case "nn"://4
|
|
case "shunzi":
|
|
case "tonghua":
|
|
//牌型图标
|
|
set_self(774+wz,1,524,0,0);
|
|
if(NN_Desk.pList[seat].cards.type == "nn"){
|
|
set_self(774+wz,43,1,0,0);
|
|
}else if(NN_Desk.pList[seat].cards.type == "shunzi"){
|
|
set_self(774+wz,43,8,0,0);
|
|
}else if(NN_Desk.pList[seat].cards.type == "tonghua"){
|
|
set_self(774+wz,43,7,0,0);
|
|
}
|
|
|
|
set_self(774+wz,20,160,0,0);
|
|
set_self(774+wz,21,72,0,0);
|
|
set_self(774+wz,18,get_self(764+wz,18)+12,0,0);
|
|
set_self(774+wz,19,get_self(764+wz,19)-7,0,0);
|
|
break;
|
|
case "wn"://1
|
|
set_self(764+wz,37,0,0,0);
|
|
//半透明遮罩
|
|
set_self(906+wz,18,get_self(725+wz*5,18),0,0);
|
|
set_self(906+wz,19,get_self(725+wz*5,19),0,0);
|
|
set_self(906+wz,20,233,0,0);
|
|
set_self(906+wz,21,103,0,0);
|
|
set_self(906+wz,37,1,0,0);
|
|
//牌型图标
|
|
set_self(774+wz,43,1,0,0);
|
|
set_self(774+wz,18,get_self(906+wz,18)+55,0,0);
|
|
set_self(774+wz,19,get_self(906+wz,19)+69,0,0);
|
|
break;
|
|
default: //其他牌型位置设置
|
|
set_self(774+wz,43,NN_Desk.pList[seat].cards.niu+1,0,0);
|
|
if(NN_Desk.model_mult == 2 || NN_Desk.model_mult == 3 || (NN_Desk.model_mult == 1 && NN_Desk.pList[seat].cards.Multiple > 1)){
|
|
set_self(774+wz,18,get_self(764+wz,18)+30,0,0);
|
|
set_self(774+wz,19,get_self(764+wz,19)+2,0,0);
|
|
}
|
|
break;
|
|
}
|
|
//显示牌型图标
|
|
set_self(774+wz,37,1,0,0);
|
|
//倍数显示
|
|
if(NN_Desk.pList[seat].cards.type != "wn"){
|
|
if((NN_Desk.model_mult == 1 && NN_Desk.pList[seat].cards.Multiple > 1) || ((NN_Desk.model_mult == 2 || NN_Desk.model_mult == 3) && NN_Desk.pList[seat].cards.Multiple >= 1)){
|
|
//倍数值
|
|
set_self(982+wz,7,NN_Desk.pList[seat].cards.Multiple,0,0);
|
|
set_self(982+wz,20,String(NN_Desk.pList[seat].cards.Multiple).length * 28,0,0);
|
|
set_self(982+wz,21,40,0,0);
|
|
set_self(982+wz,37,1,0,0);
|
|
//倍
|
|
set_self(779+wz,18,get_self(982+wz,18) + get_self(982+wz,20) - 2,0,0);
|
|
set_self(779+wz,19,get_self(982+wz,19) - 2,0,0);
|
|
set_self(779+wz,37,1,0,0);
|
|
}
|
|
}
|
|
//牌型缩放
|
|
if(isAnim){
|
|
play_ani(1,774+wz,33,80,120,0,200,0,0,0,1,0,0);
|
|
}else {
|
|
set_self(774+wz,33,100,0,0);
|
|
}
|
|
this._toId.putCard_1["p" + seat + "_1"] = window.setTimeout(function(){
|
|
this._toId.putCard_1["p" + seat + "_1"] = -1;
|
|
if(isAnim){
|
|
play_ani(1,774+wz,33,120,100,0,200,0,0,0,1,0,0);
|
|
}
|
|
//牌型奖励显示
|
|
if(seat == NN_Desk.myseat){
|
|
NN_UIF.card.cardTypeReward(true,isAnim, isSound, NN_Desk.pList[seat].cards.type);
|
|
}
|
|
}.bind(this),200);
|
|
|
|
//音效播放
|
|
if((isSound && NN_Desk.state != NN_state.over) || NN_Desk.pList[seat].putcard != 1){
|
|
NN_playSound(NN_Desk.pList[seat].cards.type,0,Utl.getSexBySeat(seat));
|
|
NN_Desk.pList[seat].putcard = 1;
|
|
}
|
|
|
|
//NN_UI.cardTypeAnim(seat,NN_Desk.pList[seat].cards.type);
|
|
//判断全部摆玩牌
|
|
var blist = NN_Desk.betList.slice(0);
|
|
blist.push(NN_Desk.zhuang);
|
|
for(var i=0;i<blist.length;i++){
|
|
if(NN_Desk.pList[blist[i]].putcard != 1){
|
|
return ;
|
|
}
|
|
}
|
|
if(isAnim){
|
|
//计时读条
|
|
NN_UI.setCountDown();
|
|
NN_UIF.countDown.hide();
|
|
}
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.putCard_1);
|
|
|
|
play_ani(0,774+NN_SF[seat],0);
|
|
|
|
set_group(203,37,0,0,0);
|
|
set_group(204,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//牌型奖励界面
|
|
cardTypeReward : function(isView, isAnim, isSound, cardType){
|
|
if(isView && cardType != null && NN_Desk.constant.cardTypeReward){
|
|
var num = 0;
|
|
switch (cardType){
|
|
case "shunzi":
|
|
num = NN_Desk.constant.cardTypeReward[0];
|
|
set_self(1111,43,8,0,0);
|
|
break;
|
|
case "tonghua":
|
|
num = NN_Desk.constant.cardTypeReward[1];
|
|
set_self(1111,43,7,0,0);
|
|
break;
|
|
case "hulu":
|
|
num = NN_Desk.constant.cardTypeReward[2];
|
|
set_self(1111,43,6,0,0);
|
|
break;
|
|
case "wuxiao":
|
|
num = NN_Desk.constant.cardTypeReward[3];
|
|
set_self(1111,43,3,0,0);
|
|
break;
|
|
case "wuhua":
|
|
num = NN_Desk.constant.cardTypeReward[4];
|
|
set_self(1111,43,2,0,0);
|
|
break;
|
|
case "bomb":
|
|
num = NN_Desk.constant.cardTypeReward[5];
|
|
set_self(1111,43,4,0,0);
|
|
break;
|
|
case "flush":
|
|
num = NN_Desk.constant.cardTypeReward[6];
|
|
set_self(1111,43,5,0,0);
|
|
break;
|
|
case "bigbomb":
|
|
num = NN_Desk.constant.cardTypeReward[7];
|
|
set_self(1111,43,9,0,0);
|
|
break;
|
|
default:
|
|
return ;
|
|
break;
|
|
}
|
|
if(num > 0){
|
|
set_self(1110,7,num,0,0);
|
|
set_self(1110,20,String(num).length * 29,0,0);
|
|
set_self(1110,18,get_self(1109,18) + 197 - String(num).length * 14,0,0);
|
|
//背光旋转
|
|
play_ani(1,1107,34,0,360,0,3000,0,0,0,0,0,0);
|
|
if(isAnim){
|
|
play_ani(1,1108,33,80,100,0,500,0,0,0,1,0,0);
|
|
play_ani(1,1111,33,80,100,0,500,0,0,0,1,0,0);
|
|
}else {
|
|
set_self(1108,33,100,0,0);
|
|
set_self(1111,33,100,0,0);
|
|
}
|
|
if(isSound){
|
|
NN_playSound("typeReward",0,1);
|
|
}
|
|
set_group(213,37,1,0,0);
|
|
}
|
|
}else {
|
|
play_ani(0,1107,0);
|
|
play_ani(0,1108,0);
|
|
play_ani(0,1111,0);
|
|
|
|
set_self(1110,43,0,0,0);
|
|
set_group(213,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
};
|
|
|
|
//无序发牌显示
|
|
NN_UIF.disorderDeal = {
|
|
//5人局配置
|
|
interval_5: 24, //牌间隔
|
|
posY_5: 67, //Y轴位置
|
|
size_5: [45, 62], //尺寸
|
|
udInterval_5: 3, //上下间隔
|
|
rowMaxCount_5: 13, //每行最大显示
|
|
bgpSX_5: [468, 72, 344, 138], //背景属性
|
|
|
|
//10人局配置
|
|
interval_10: 17.5, //牌间隔
|
|
posY_10: 67, //Y轴位置(相对背景框)
|
|
size_10: [45, 62], //尺寸
|
|
udInterval_10: 3, //上下间隔
|
|
rowMaxCount_10: 25, //
|
|
bgpSX_10: [401, 186, 478, 138],
|
|
//是否显示
|
|
isView: false,
|
|
drawData: [],
|
|
|
|
//显示按钮
|
|
showBtn: function(isView){
|
|
if(isView && NN_Desk.isDisorderDeal){
|
|
set_self(1113, 37, 1, 0, 0);
|
|
if(NN_UIF.disorderDeal.isView){
|
|
set_self(1113,43,1,0,0);
|
|
}else {
|
|
set_self(1113,43,2,0,0);
|
|
}
|
|
this.show(1);
|
|
}else{
|
|
set_self(1113, 37, 0, 0, 0);
|
|
this.show();
|
|
}
|
|
},
|
|
//显示
|
|
show: function(isView, isAnim, isSound){
|
|
if(isView && NN_Desk.isDisorderDeal && NN_Desk.disorderDealCards.length && NN_UIF.disorderDeal.isView){
|
|
//显示牌转换具体绘画数据
|
|
this.drawData = [];
|
|
var ddCards = NN_Desk.disorderDealCards;
|
|
var bos_w = 0;
|
|
var cardStart_x = 0;
|
|
var cardStart_y = 0;
|
|
var rowMaxCount = 0;
|
|
var cardSize = [];
|
|
var udInterval = [];
|
|
var interval = 0;
|
|
var bgpSX = [];
|
|
//
|
|
if(NN_Desk.personMax == 10){ //10
|
|
rowMaxCount = this.rowMaxCount_10;
|
|
cardSize = this.size_10;
|
|
udInterval = this.udInterval_10;
|
|
interval = this.interval_10;
|
|
bgpSX = this.bgpSX_10;
|
|
bos_w = bgpSX[2];
|
|
if(ddCards.length <= this.rowMaxCount_10){
|
|
cardStart_x = bos_w / 2 - (this.interval_10 * (ddCards.length - 1) + this.size_10[0]) / 2;
|
|
cardStart_y = this.posY_10 - this.size_10[1] / 2;
|
|
}else {
|
|
cardStart_x = bos_w / 2 - (this.interval_10 * (rowMaxCount - 1) + this.size_10[0]) / 2;
|
|
cardStart_y = this.posY_10 - this.size_10[1] + this.udInterval_10 / 2;
|
|
}
|
|
}else { //5人
|
|
rowMaxCount = this.rowMaxCount_5;
|
|
cardSize = this.size_5;
|
|
udInterval = this.udInterval_5;
|
|
interval = this.interval_5;
|
|
bgpSX = this.bgpSX_5;
|
|
bos_w = bgpSX[2];
|
|
if(ddCards.length <= this.rowMaxCount_5){
|
|
cardStart_x = bos_w / 2 - (this.interval_5 * (ddCards.length - 1) + this.size_5[0]) / 2;
|
|
cardStart_y = this.posY_5 - this.size_5[1] / 2;
|
|
}else {
|
|
cardStart_x = bos_w / 2 - (this.interval_5 * (rowMaxCount - 1) + this.size_5[0]) / 2;
|
|
cardStart_y = this.posY_5 - this.size_5[1] + this.udInterval_5 / 2;
|
|
}
|
|
}
|
|
//
|
|
for(var i = 0; i < ddCards.length; i ++){
|
|
if(ddCards.length <= rowMaxCount){
|
|
this.drawData[i] = [cardStart_x + interval * i, cardStart_y, cardSize[0], cardSize[1], (ddCards[i] % 11) * 130, parseInt(ddCards[i] / 11) * 176];
|
|
}else {
|
|
if(i < rowMaxCount){
|
|
this.drawData[i] = [cardStart_x + interval * i, cardStart_y, cardSize[0], cardSize[1], (ddCards[i] % 11) * 130, parseInt(ddCards[i] / 11) * 176];
|
|
}else {
|
|
this.drawData[i] = [cardStart_x + interval * (i - rowMaxCount), cardStart_y + cardSize[1] + udInterval, cardSize[0], cardSize[1], (ddCards[i] % 11) * 130, parseInt(ddCards[i] / 11) * 176];
|
|
}
|
|
}
|
|
}
|
|
if(this.drawData.length > 0 && get_self(1115, 37) != 1){
|
|
this.isDraw = true;
|
|
}
|
|
//set_self(1113,43,1,0,0);
|
|
set_self(1114,18,bgpSX[0],0,0);
|
|
set_self(1114,19,bgpSX[1],0,0);
|
|
set_self(1114,20,bgpSX[2],0,0);
|
|
set_self(1114,21,bgpSX[3],0,0);
|
|
set_self(1114,37,1,0,0);
|
|
}else {
|
|
this.isDraw = false;
|
|
//set_self(1113,43,2,0,0);
|
|
set_self(1114,37,0,0,0);
|
|
set_self(1115, 37, 0, 0, 0);
|
|
}
|
|
},
|
|
//画牌显示
|
|
isDraw: false,
|
|
draw_disoDeal: function(gameid, spid, times, timelong){
|
|
if(spid == 1114 && NN_Desk.disorderDealCards.length > 0){
|
|
for(var i = 0; i < this.drawData.length; i ++){
|
|
ifast_mydrawbmp(spid, 515, this.drawData[i][0], this.drawData[i][1], this.drawData[i][2], this.drawData[i][3], this.drawData[i][4], this.drawData[i][5], 130, 176);
|
|
}
|
|
}
|
|
},
|
|
//隐藏
|
|
hide: function(){
|
|
this.show();
|
|
this.showBtn();
|
|
},
|
|
};
|
|
|
|
//玩家操作时显示
|
|
NN_UIF.net = {
|
|
//隐藏
|
|
hide: function(){
|
|
//清除定时器
|
|
if(this._toId.okZhuang > 0){
|
|
//logmessage("清除定时器-确定庄包后定时",1);
|
|
}
|
|
NN_UIF.clearTimeout(this._toId.okZhuang);
|
|
|
|
NN_UIF.clearTimeout(this._toId.dealCards);
|
|
NN_UIF.clearTimeout(this._toId.settlement);
|
|
//
|
|
},
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
},
|
|
|
|
//定时器id
|
|
_toId: {
|
|
okZhuang: { t1: -1 },
|
|
dealCards: { t1: -1 },
|
|
settlement:{ t1: -1 },
|
|
},
|
|
|
|
//准备阶段
|
|
readyStage: function(){
|
|
//隐藏界面
|
|
NN_UIF.hide();
|
|
//托管显示
|
|
NN_UI.trusteeshipState(true, false, NN_Desk.myseat);
|
|
//更新桌信息显示
|
|
NN_UIF.deskInfo.update();
|
|
//准备按钮显示
|
|
//Utl.setPlayerPrepare(NN_Desk.myseat, Utl.getPlayerReadyState(NN_Desk.myseat));
|
|
//Utl.setDeskStage(0);
|
|
//显示倒计时
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.ready);
|
|
},
|
|
|
|
//开战
|
|
startWar: function(startType, zhuang, data){
|
|
//隐藏界面
|
|
NN_UIF.hide();
|
|
//托管显示
|
|
NN_UI.trusteeshipState(true, false, NN_Desk.myseat);
|
|
//更新桌信息显示
|
|
NN_UIF.deskInfo.update();
|
|
//游戏开战时显示
|
|
NN_UIF.game.startWar(NN_Desk.model_fast, startType, zhuang, data);
|
|
},
|
|
|
|
//抢庄
|
|
robZhuang: function(seat, isrob){
|
|
//在开局动画过程中其他玩家抢庄不显示
|
|
if(!NN_UIF.game._isAnim_startWar){
|
|
NN_UIF.show.robZhuang(1,1,1, seat, isrob);
|
|
}
|
|
},
|
|
|
|
//确定庄
|
|
okZhuang: function(data){
|
|
//隐藏其他定时操作
|
|
this.hide();
|
|
//隐藏开战
|
|
NN_UIF.game.startWar();
|
|
//隐藏抢庄按钮
|
|
NN_UIF.btn.robZhuang();
|
|
//logmessage("收到确定庄包后定时",1);
|
|
//延迟显示
|
|
this._toId.okZhuang.t1 = setTimeout(function(){
|
|
this._toId.okZhuang.t1 = -1;
|
|
//隐藏玩家抢庄状态
|
|
NN_UIF.show.robZhuang(0,0,1);
|
|
//显示确定庄后显示
|
|
var callbackFunc = function(){
|
|
if(NN_Desk && NN_Desk.state != NN_state.over){
|
|
//if(NN_Desk.model == 5){ //下注抢庄
|
|
//console.log("发牌4张:" + ((new Date()).getTime() - NN_UI.time_start));
|
|
//显示发最后一张牌
|
|
//NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, [], data.dealorder, [4,4]);
|
|
//NN_Desk.state = NN_state.rubCard;
|
|
if(NN_Desk.model == 5){
|
|
NN_UIF.show.betScore(0,0,0, NN_Desk.zhuang);
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.betAgain);
|
|
//显示下注按钮
|
|
NN_UIF.btn.betScore(1,1,1,NN_Desk.model_fast,1);
|
|
}else{
|
|
//显示计时闹钟
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.bet);
|
|
//显示下注按钮
|
|
NN_UIF.btn.betScore(1,1,1);
|
|
}
|
|
}
|
|
};
|
|
NN_UIF.game.okZhuang(1,1,1,NN_Desk.model_fast, callbackFunc, data);
|
|
NN_Desk.state = NN_state.bet;
|
|
//logmessage("确定庄动画",1);
|
|
}.bind(this),500);
|
|
if(NN_Desk.model == 4 || (NN_Desk.model == 5 && NN_Desk.model_fast == 1)){
|
|
//优化-刷新牌显示
|
|
NN_UIF.card.update();
|
|
}
|
|
//下注抢庄 - 隐藏庄的下注
|
|
//if(NN_Desk.model == 5){
|
|
//NN_Desk.state = NN_state.rubCard;//搓牌状态
|
|
//NN_UIF.show.betScore(0,0,0, NN_Desk.zhuang);
|
|
//}
|
|
},
|
|
|
|
//玩家下注
|
|
betScore: function(seat, score, score2){
|
|
//显示下注分数
|
|
if(!NN_UIF.game._isAnim_okZhuang){ //确定庄动画中不显示
|
|
NN_UIF.show.betScore(1,1,1,seat,score);
|
|
//加注提示
|
|
if(NN_Desk.model == 5 && NN_Desk.zhuang >= 0 && score2 != null){
|
|
NN_UIF.show.betScoreAgain(1,1,1,seat,score2);
|
|
}
|
|
}
|
|
//隐藏下注栏
|
|
if(seat == NN_Desk.myseat){
|
|
NN_UIF.btn.betScore();
|
|
}
|
|
},
|
|
|
|
//发牌
|
|
dealCards: function(dice, dealorder){
|
|
//优化-隐藏抢庄按钮
|
|
NN_UIF.btn.robZhuang();
|
|
//优化-隐藏玩家抢庄状态
|
|
NN_UIF.show.robZhuang();
|
|
//优化-刷新玩家的下注
|
|
NN_UIF.update.betScore();
|
|
//优化-更新庄显示
|
|
NN_UIF.update.zhuang();
|
|
//if(NN_Desk.model_fast != 1){//优化-正常版-停止确定庄动画
|
|
//NN_UIF.game.startWar();
|
|
//}
|
|
//隐藏其他定时操作
|
|
this.hide();
|
|
//隐藏下注栏
|
|
NN_UIF.btn.betScore();
|
|
//隐藏提示文字
|
|
NN_Tips.words();
|
|
//隐藏玩家计时
|
|
NN_UI.setCountDown();
|
|
NN_UIF.countDown.hide();
|
|
NN_UIF.card._isDealCards = false;
|
|
//显示发牌
|
|
this._toId.dealCards.t1 = window.setTimeout(function(){
|
|
this._toId.dealCards.t1 = -1;
|
|
if(NN_Desk.model == 4){ //看牌抢庄-发最后一张牌
|
|
NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, dice, dealorder, [4,4]);
|
|
NN_Desk.state = NN_state.rubCard;
|
|
}else if(NN_Desk.model == 5){
|
|
if(NN_Desk.zhuang >= 0){
|
|
//隐藏加注提示
|
|
NN_UIF.show.betScoreAgain();
|
|
//显示发最后一张牌
|
|
NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, [], dealorder, [4,4]);
|
|
NN_Desk.state = NN_state.rubCard;
|
|
NN_UIF.show.betScore(0,0,0, NN_Desk.zhuang);
|
|
}else {
|
|
NN_Desk.state = NN_state.robZhuang;
|
|
NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, dice, dealorder, [0,3]);
|
|
}
|
|
}else {
|
|
NN_UIF.card.dealCards(1,1,1, NN_Desk.model_fast, dice, dealorder);
|
|
NN_Desk.state = NN_state.rubCard;
|
|
}
|
|
}.bind(this),1000);
|
|
},
|
|
|
|
//搓牌
|
|
rubCard: function(seat, cardloc, card){
|
|
if(!NN_UIF.card._isDealCards && this._toId.dealCards.t1 <= 0){ //发牌动画时不显示
|
|
NN_UIF.card.rubCard(1,1,1,NN_Desk.model_fast, seat, cardloc,card);
|
|
}
|
|
},
|
|
|
|
//摆牌
|
|
putCard: function(seat){
|
|
if(!NN_UIF.card._isDealCards && this._toId.dealCards.t1 <= 0){ //发牌动画时不显示
|
|
//自己为特殊牌型时不显示
|
|
var _type = NN_Desk.pList[seat].cards.type;
|
|
if(_type != "bigbomb" && _type != "bomb" && _type != "flush" && _type != "wuhua" && _type != "wuxiao" && _type != "hulu" && _type != "tonghua" && _type != "shunzi"){//是否为特殊牌型
|
|
//摆牌 - 对应座位
|
|
NN_UIF.card.putCard(1,1,1, NN_Desk.model_fast, seat);
|
|
}
|
|
}
|
|
},
|
|
|
|
//全部搓摆牌
|
|
putAllCard: function(){
|
|
//隐藏其他定时操作
|
|
this.hide();
|
|
//关闭读条
|
|
NN_UI.setCountDown();
|
|
NN_UIF.countDown.hide();
|
|
//关闭手指滑动
|
|
NN_UIF.anim.fingerSlide();//关闭手指滑动
|
|
//关闭玩家的搓摆牌
|
|
NN_UIF.card.rubCard();
|
|
NN_UIF.card.putCard();
|
|
NN_UIF.card.putCard_1();
|
|
//显示所有玩家牌型
|
|
NN_UIF.card.putAllCard(1,1,1,NN_Desk.model_fast);
|
|
},
|
|
|
|
//结算
|
|
settlement: function(result){
|
|
//隐藏其他定时操作
|
|
this.hide();
|
|
//关闭手指滑动
|
|
NN_UIF.anim.fingerSlide();//关闭手指滑动
|
|
//关闭读条
|
|
NN_UI.setCountDown();
|
|
NN_UIF.countDown.hide();
|
|
//隐藏 - 搓摆牌及确定图片
|
|
set_group(203,37,0,0,0);
|
|
//更新庄显示
|
|
NN_UIF.update.zhuang();
|
|
|
|
var _time = 1600;
|
|
if(NN_Desk.model_fast != 1){
|
|
_time = 2500;
|
|
}
|
|
//定时显示结算
|
|
this._toId.settlement.t1 = window.setTimeout(function(){
|
|
NN_UIF.net._toId.settlement.t1 = -1;
|
|
//优化-刷新牌显示
|
|
NN_UIF.card.update();
|
|
|
|
NN_UIF.settlement.view(1,1,1,NN_Desk.model_fast, result);
|
|
}.bind(this),_time);
|
|
},
|
|
|
|
//游戏结束-总结算
|
|
gameOver: function(scores, rounds){
|
|
var bigWiner = -1;
|
|
bigWiner = NN_UIF.gameOver.view(1,1,1,NN_Desk.model_fast, scores, rounds);
|
|
//大赢家调用接口
|
|
if(bigWiner == 1){
|
|
Utl.typeForActivity(1,null);
|
|
}
|
|
|
|
NN_Desk.state = NN_state.over;
|
|
},
|
|
|
|
//解散
|
|
disbandGame: function(data){
|
|
NN_UIF.game.disbandGame(1,1,1,NN_Desk.model_fast, data);
|
|
},
|
|
|
|
//玩家准备
|
|
ready : function(seat){
|
|
if(NN_Desk.pList[seat]){
|
|
NN_Desk.pList[seat].isReady = 1;
|
|
}
|
|
if(seat == NN_Desk.myseat){
|
|
if(NN_Desk.model_fast){//快版
|
|
//界面显示
|
|
if(NN_Desk.state == NN_state.robZhuang){ //抢庄状态
|
|
//显示抢庄按钮
|
|
if(NN_Desk.model == 1 && !NN_UIF.game._isAnim_startWar){
|
|
NN_UIF.btn.robZhuang(true);
|
|
}
|
|
}else if(NN_Desk.state == NN_state.bet){ //下注状态
|
|
//显示下注按钮!NN_UIF.game._isAnim_okZhuang
|
|
if(NN_Desk.model == 2 || NN_Desk.model == 3 || NN_Desk.model == 5){
|
|
if(!NN_UIF.game._isAnim_startWar){
|
|
NN_UIF.btn.betScore(1, 1, 1, NN_Desk.model_fast);
|
|
}
|
|
}else if(NN_Desk.model != 4 && !NN_UIF.game._isAnim_okZhuang){
|
|
NN_UIF.btn.betScore(1, 1, 1, NN_Desk.model_fast);
|
|
}
|
|
}
|
|
}else {//慢版
|
|
//界面显示
|
|
if(NN_Desk.state == NN_state.robZhuang){ //抢庄状态
|
|
//显示抢庄按钮
|
|
if(NN_Desk.model == 1 && NN_Judge.isStartWar != 1){
|
|
NN_UIF.btn.robZhuang(true);
|
|
}
|
|
}else if(NN_Desk.state == NN_state.bet){ //下注状态
|
|
//显示下注按钮!NN_UIF.game._isAnim_okZhuang
|
|
if(NN_Desk.model == 1){
|
|
if(NN_Judge.isOkZhuang != 1){
|
|
NN_UIF.btn.betScore(1, 1, 1, NN_Desk.model_fast);
|
|
}
|
|
}else if(NN_Desk.model == 2 || NN_Desk.model == 3){
|
|
if(NN_Judge.isStartWar != 1){
|
|
NN_UIF.btn.betScore(1, 1, 1, NN_Desk.model_fast);
|
|
}
|
|
}else if(NN_Desk.model == 5){
|
|
if(!NN_UIF.game._isAnim_startWar){
|
|
NN_UIF.btn.betScore(1, 1, 1, NN_Desk.model_fast);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//托管
|
|
NN_UI.trusteeshipState(true, false, NN_Desk.myseat);
|
|
},
|
|
};
|
|
|
|
//每小局结算时显示
|
|
NN_UIF.settlement = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.view(false);
|
|
},
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
},
|
|
|
|
//定时器id
|
|
_toId: {
|
|
settlement: {
|
|
t1: -1,
|
|
t2: -1,
|
|
t2: -1
|
|
},
|
|
winEffect: { t1: -1 },
|
|
},
|
|
|
|
//显示每局结算
|
|
view: function(isView, isAnim, isSound, isFast, result){
|
|
if(isView){
|
|
var _result = [[],[]];//庄赢和输
|
|
for(var i=0;i<result.length;i++){
|
|
if(result[i].length > 0 && i != NN_Desk.zhuang){
|
|
if(result[i][0] < 0){
|
|
_result[0].push(i);
|
|
}else if(result[i][0] > 0){
|
|
_result[1].push(i);
|
|
}
|
|
}
|
|
}
|
|
//输的玩家金币流向庄
|
|
var _time = 0;
|
|
if(isAnim){
|
|
if(_result[0].length > 0){
|
|
for(var i=0;i<_result[0].length;i++){
|
|
this.set_zhuangGold(true, isAnim, isSound, isFast, _result[0][i], NN_Desk.zhuang);
|
|
}
|
|
this.winEffect(true, isAnim, isSound, isFast,NN_Desk.zhuang);
|
|
if(isFast){
|
|
_time += 800;
|
|
} else {
|
|
_time += 1500;
|
|
}
|
|
}
|
|
//庄金币流向赢的玩家
|
|
if(_result[1].length > 0){
|
|
this._toId.settlement.t1 = window.setTimeout(function(){
|
|
this._toId.settlement.t1 = -1;
|
|
for(var i=0;i<_result[1].length;i++){
|
|
this.set_zhuangGold(true, isAnim, isSound, isFast, NN_Desk.zhuang,_result[1][i]);
|
|
this.winEffect(true, isAnim, isSound, isFast,_result[1][i]);
|
|
}
|
|
}.bind(this),_time);
|
|
if(isFast){
|
|
_time += 800;
|
|
} else {
|
|
_time += 1500;
|
|
}
|
|
}
|
|
//显示玩家输赢分数
|
|
this._toId.settlement.t2 = window.setTimeout(function(){
|
|
this._toId.settlement.t2 = -1;
|
|
set_self(916,37,1,0,0);
|
|
this.view_1(true, isAnim, isSound, isFast, result);
|
|
}.bind(this),_time);
|
|
} else {
|
|
//无动画直接显示分数
|
|
set_self(916,37,1,0,0);
|
|
this.view_1(true, isAnim, isSound, isFast, result);
|
|
}
|
|
return _time;
|
|
}else {
|
|
NN_UIF.clearTimeout(this._toId.settlement);
|
|
this.view_1();
|
|
}
|
|
},
|
|
|
|
//每局-结算1
|
|
view_1 : function(isView, isAnim, isSound, isFast, result){
|
|
if(isView){
|
|
if(result == null){
|
|
set_group(209,37,0,0,0);
|
|
return;
|
|
}
|
|
NN_Desk.state == NN_state.settlement;
|
|
//显示加减分数动画
|
|
var wz;
|
|
var sLen = 0; //分数长度
|
|
for(var i=0;i<result.length;i++){
|
|
if(result[i].length > 0){
|
|
wz = NN_SF[i];
|
|
sLen = String(Math.abs(result[i][0])).length;
|
|
//数字背景
|
|
set_self(911+wz,41,0,0,0);
|
|
set_self(911+wz,19,get_self(346+wz,19)-12,0,0);
|
|
if(wz == 1 || wz == 2){ //右侧
|
|
if(sLen > 2){
|
|
set_self(911+wz,18,get_self(346+wz,18) -25 - 30*(sLen-2),0,0);
|
|
set_self(911+wz,20,199 + 30*(sLen - 2),0,0);
|
|
}else {
|
|
set_self(911+wz,18,get_self(346+wz,18) - 34,0,0);
|
|
set_self(911+wz,20,199,0,0);
|
|
}
|
|
} else { //左侧
|
|
if(sLen > 2){
|
|
set_self(911+wz,18,get_self(346+wz,18) - 50,0,0);
|
|
set_self(911+wz,20,199 + 30*(sLen - 2),0,0);
|
|
}else {
|
|
set_self(911+wz,18,get_self(346+wz,18) - 34,0,0);
|
|
set_self(911+wz,20,199,0,0);
|
|
}
|
|
}
|
|
//加减符号
|
|
if(sLen == 0){
|
|
set_self(831+wz,18,get_self(911+wz,18)+56,0,0);
|
|
}else{
|
|
set_self(831+wz,18,get_self(911+wz,18) + (get_self(911+wz,20) - 30*sLen - 30)/2,0,0);
|
|
}
|
|
set_self(831+wz,19,get_self(911+wz,19)+32,0,0);
|
|
|
|
if(result[i][0] > 0){
|
|
//加
|
|
set_self(831+wz,43,1,0,0);
|
|
//数字
|
|
set_self(841+wz,7,Math.abs(result[i][0]),0,0);
|
|
if(result[i][0] >= 10){
|
|
set_self(841+wz,18,get_self(831+wz,18)+30,0,0);
|
|
}else {
|
|
set_self(841+wz,18,get_self(831+wz,18)+43,0,0);
|
|
}
|
|
set_self(841+wz,19,get_self(831+wz,19) - 5,0,0);
|
|
set_self(841+wz,21,40,0,0);
|
|
set_self(841+wz,20,sLen * 30,0,0);
|
|
set_self(841+wz,37,1,0,0);
|
|
set_self(831+wz,37,1,0,0);
|
|
set_self(836+wz,37,0,0,0);
|
|
//
|
|
set_self(911+wz,43,1,0,0);
|
|
set_self(911+wz,37,1,0,0);
|
|
//
|
|
if(isAnim){
|
|
if(isFast){
|
|
play_box(1,911+wz,19,get_self(911+wz,19),-400,1410,500);
|
|
play_box(1,831+wz,19,get_self(831+wz,19),-400,1410,500);
|
|
play_box(1,841+wz,19,get_self(841+wz,19),-400,1410,500);
|
|
}else {
|
|
play_box(1,911+wz,19,get_self(911+wz,19),-400,1200,600);
|
|
play_box(1,831+wz,19,get_self(831+wz,19),-400,1200,600);
|
|
play_box(1,841+wz,19,get_self(841+wz,19),-400,1200,600);
|
|
}
|
|
}else {
|
|
set_self(911+wz,19,get_self(346+wz,19)-12-36,0,0);
|
|
set_self(831+wz,19,get_self(911+wz,19)+32,0,0);
|
|
set_self(841+wz,19,get_self(831+wz,19)-5,0,0);
|
|
}
|
|
//
|
|
if(wz == 0 && isSound){
|
|
NN_playSound("sl");
|
|
}
|
|
}else if(result[i][0] < 0){
|
|
//减
|
|
set_self(831+wz,43,2,0,0);
|
|
//数字
|
|
set_self(836+wz,7,Math.abs(result[i][0]),0,0);
|
|
if(result[i][0] <= -10 ){
|
|
set_self(836+wz,18,get_self(831+wz,18)+30,0,0);
|
|
}else {
|
|
set_self(836+wz,18,get_self(831+wz,18)+43,0,0);
|
|
}
|
|
set_self(836+wz,19,get_self(831+wz,19)-5,0,0);
|
|
set_self(836+wz,20,sLen * 30,0,0);
|
|
set_self(836+wz,21,40,0,0);
|
|
set_self(836+wz,37,1,0,0);
|
|
set_self(831+wz,37,1,0,0);
|
|
set_self(841+wz,37,0,0,0);
|
|
//
|
|
set_self(911+wz,43,2,0,0);
|
|
set_self(911+wz,37,1,0,0);
|
|
//
|
|
if(isAnim){
|
|
if(isFast){
|
|
play_box(1,911+wz,19,get_self(911+wz,19),-400,1410,500);
|
|
play_box(1,831+wz,19,get_self(831+wz,19),-400,1410,500);
|
|
play_box(1,836+wz,19,get_self(836+wz,19),-400,1410,500);
|
|
} else {
|
|
play_box(1,911+wz,19,get_self(911+wz,19),-400,1200,600);
|
|
play_box(1,831+wz,19,get_self(831+wz,19),-400,1200,600);
|
|
play_box(1,836+wz,19,get_self(836+wz,19),-400,1200,600);
|
|
}
|
|
}else {
|
|
set_self(911+wz,19,get_self(346+wz,19)-12-36,0,0);
|
|
set_self(831+wz,19,get_self(911+wz,19)+32,0,0);
|
|
set_self(836+wz,19,get_self(831+wz,19)-5,0,0);
|
|
}
|
|
|
|
if(wz == 0 && isSound){
|
|
NN_playSound("sb");
|
|
}
|
|
}
|
|
//set_self(184+NN_SF[i],7,""+result[i][1],0,0);
|
|
//显示分数
|
|
//Utl.setGrade(i,result[i][1]);
|
|
if(NN_Desk.pList[i]){
|
|
NN_UIF.update.playerScore(i,NN_Desk.pList[i].scores);
|
|
}
|
|
}
|
|
//Test.addScoreData(NN_Desk.nowCount-1 , i, result[i][0]);
|
|
}
|
|
}else {
|
|
set_group(209,37,0,0,0); //隐藏 分数
|
|
for(var i=0; i<5; i++){
|
|
//停止动画
|
|
play_box(1,911+i,0);
|
|
play_box(1,831+i,0);
|
|
play_box(1,836+i,0);
|
|
play_box(1,841+i,0);
|
|
//隐藏 - 赢分效果
|
|
set_self(919+i,37,0,0,0);
|
|
}
|
|
}
|
|
},
|
|
|
|
|
|
|
|
//胜利玩家动画效果
|
|
winEffect: function(isView, isAnim, isSound, isFast, seat){
|
|
if(isView){
|
|
if(isFast){ //快版
|
|
this._toId.settlement.t1 = setTimeout(function(){
|
|
this._toId.settlement.t3 = -1;
|
|
set_self(919+NN_SF[seat],37,1,0,0);
|
|
set_self(919+NN_SF[seat],43,1,0,0);
|
|
play_ani(1,919+NN_SF[seat],43,1,13,0,800,0,0,0,1,0,0);
|
|
play_ani(1,919+NN_SF[seat],37,1,0,0,400,0,810,0,1,0,0);
|
|
}.bind(this),200);
|
|
}else {
|
|
this._toId.settlement.t1 = setTimeout(function(){
|
|
this._toId.settlement.t3 = -1;
|
|
set_self(919+NN_SF[seat],37,1,0,0);
|
|
set_self(919+NN_SF[seat],43,1,0,0);
|
|
play_ani(1,919+NN_SF[seat],43,1,13,0,1000,0,0,0,1,0,0);
|
|
play_ani(1,919+NN_SF[seat],37,1,0,0,500,0,1010,0,1,0,0);
|
|
}.bind(this),300);
|
|
}
|
|
} else {
|
|
NN_UIF.clearTimeout(this._toId.winEffect);
|
|
for (var i=0;i<5;i++) {
|
|
play_ani(0,919+i,0);
|
|
set_self(919+i,37,0,0,0);
|
|
}
|
|
}
|
|
},
|
|
//结算时显示金币流动
|
|
set_zhuangGold : function(isView, isAnim, isSound, isFast, seat1,seat2,count){
|
|
if(isView && seat1 != null){
|
|
if(count == null){
|
|
count = 3;
|
|
}
|
|
var _time = 0;
|
|
var z_wz = 100*seat1+10*seat2;
|
|
set_self(916,37,1,0,0);
|
|
for(var i=0;i<count;i++){
|
|
var spid = ifast_addtospritefromspritecopy(916,715,1300,0,z_wz+i);//创建精灵
|
|
set_self(spid,18,get_self(346+NN_SF[seat1],18)+40,0,0);
|
|
set_self(spid,19,get_self(346+NN_SF[seat1],19)+33,0,0);
|
|
set_self(spid,20,58,0,0);
|
|
set_self(spid,21,63,0,0);
|
|
set_self(spid,37,1,0,0);
|
|
if(isFast){ //快版
|
|
play_ani(1,spid,18,get_self(spid,18),get_self(346+NN_SF[seat2],18)+40,0,250,0,0+i*70,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(spid,19),get_self(346+NN_SF[seat2],19)+33,0,250,0,0+i*70,0,1,0,0);
|
|
//定时删除金币
|
|
this.set_zhuangGold_hide(z_wz+i,250+i*80);
|
|
}else {
|
|
play_ani(1,spid,18,get_self(spid,18),get_self(346+NN_SF[seat2],18)+40,0,500,0,0+i*100,0,1,0,0);
|
|
play_ani(1,spid,19,get_self(spid,19),get_self(346+NN_SF[seat2],19)+33,0,500,0,0+i*100,0,1,0,0);
|
|
//定时删除金币
|
|
this.set_zhuangGold_hide(z_wz+i,500+i*100);
|
|
}
|
|
}
|
|
if(isFast){ //快版
|
|
_time = 250 + count * 70;
|
|
}else {
|
|
_time = 500 + count * 100;
|
|
}
|
|
//音效
|
|
if(isSound){
|
|
NN_playSound("jb",0);
|
|
}
|
|
return _time;
|
|
}else {
|
|
|
|
}
|
|
},
|
|
//结算时显示金币流动
|
|
set_zhuangGold_hide : function(zz,_time){
|
|
window.setTimeout(function(){
|
|
ifast_dllpritefromspritecopy(916,zz);
|
|
},_time);
|
|
},
|
|
|
|
|
|
|
|
};
|
|
|
|
//游戏结束时显示
|
|
NN_UIF.gameOver = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.view();
|
|
//计算器分数
|
|
this.multResult();
|
|
},
|
|
|
|
//ontime定时器
|
|
ontime: function(){
|
|
|
|
},
|
|
|
|
//显示总结算界面
|
|
view: function(isView, isAnim, isSound, isFast, scores, rounds){
|
|
//游戏结束-显示结算
|
|
if(isView && scores != null && NN_Desk.state == NN_state.over){
|
|
//隐藏窗口
|
|
Utl.closeWindow();
|
|
//关闭牌型奖励界面
|
|
NN_UIF.card.cardTypeReward();
|
|
//隐藏准备按钮
|
|
set_self(515,37,0,0,0);
|
|
|
|
NN_Judge.isDisband = -1;
|
|
set_group(211,37,1,0,0);
|
|
var wz = 0;
|
|
var arr_scores = [];
|
|
var _arr = [];
|
|
NN_Judge.headViewList = [];
|
|
for(var i=0;i<scores.length;i++){
|
|
wz = scores[i][0];
|
|
//头像、昵称
|
|
set_self(859+wz,20,124,0,0);
|
|
set_self(859+wz,21,124,0,0);
|
|
NN_UI.setWordsLoc(864+wz,subString(Utl.getNicknameBySeat(scores[i][0]),8,1),get_self(854+wz,18)+86,273,11,28);
|
|
//ID
|
|
NN_UI.setWordsLoc(949+wz,"ID:" + Utl.getPlayeridBySeat(scores[i][0]),get_self(859+wz,18)+59,303,9,21);
|
|
set_self(949+wz,37,1,0,0);
|
|
//头像对应设置
|
|
set_self(859+wz,1,116+NN_SF[scores[i][0]],0,0);
|
|
set_self(859+wz,37,1,0,0);
|
|
|
|
set_self(864+wz,37,1,0,0);
|
|
//分数
|
|
NN_UI.setNumberLoc(869+wz,874+wz,879+wz,scores[i][1],210+214*wz,538,30,38);
|
|
|
|
arr_scores.push(scores[i][1]);
|
|
_arr.push([Utl.getNicknameBySeat(scores[i][0]), scores[i][1]]);
|
|
//头像显示记录
|
|
NN_Judge.headViewList.push(859+wz);
|
|
//吱口令显示
|
|
if(Utl.getPayCodeBySeat(scores[i][0])){
|
|
set_self(1000+wz,37,1,0,0);
|
|
}
|
|
}
|
|
set_self(925,41,1,0,0);
|
|
set_self(884,21,6+rounds.length*45,0,0);
|
|
set_self(884,19,334,0,0);
|
|
set_self(884,37,1,0,0);
|
|
var rec_js = [];
|
|
var bmp_js = [];
|
|
//设置rec
|
|
var rid = 1000;
|
|
for(var i=0;i<rounds.length;i++){//局
|
|
for(var j=0;j<rounds[i].length;j++){//玩家
|
|
if(rounds[i][j].length > 0){
|
|
//第几局
|
|
rid ++;
|
|
set_rec(rid,"第"+(i+1)+"局");
|
|
rec_js.push([rid,18+rounds[i][j][0]*212,10+i*45,getStrLength(get_rec(rid))*15,32]);
|
|
//分数
|
|
rid ++;
|
|
set_rec(rid,""+rounds[i][j][1]);
|
|
rec_js.push([rid,105+rounds[i][j][0]*212,10+i*45,getStrLength(get_rec(rid))*15,32]);//
|
|
}
|
|
}
|
|
}
|
|
//判断大赢家
|
|
var _max = [], bigWiner = -1;
|
|
if(scores[0].length > 0){
|
|
_max = [[scores[0][0],scores[0][1]]];
|
|
}
|
|
for(var i=0;i<scores.length-1;i++){
|
|
if(_max.length > 0 && scores[i+1].length > 0){
|
|
if(_max[0][1] == scores[i+1][1]){
|
|
_max.push([scores[i+1][0],scores[i+1][1]]);
|
|
}else {
|
|
_max = _max[0][1] > scores[i+1][1] ? _max : [[scores[i+1][0],scores[i+1][1]]];
|
|
}
|
|
}
|
|
}
|
|
for(var i=0;i<_max.length;i++){
|
|
if(_max[i][1] > 0){//大赢家
|
|
set_self(885+_max[i][0],37,1,0,0);
|
|
//判断自己是否为大赢家
|
|
if(_max[i][0] == NN_Desk.myseat){
|
|
bigWiner = 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
NN_Draw.rec_js = rec_js;
|
|
//画图片数据
|
|
NN_Draw.settlement = 1;
|
|
NN_Desk.state = NN_state.over;
|
|
if(isSound){
|
|
NN_playSound("js");
|
|
}
|
|
//显示房主图标
|
|
if(NN_Desk.owner.seat >= 0){
|
|
set_self(971,18,get_self(859 + NN_Desk.owner.seat,18) - 30,0,0);
|
|
set_self(971,19,get_self(859 + NN_Desk.owner.seat,19) - 25,0,0);
|
|
set_self(971,37,1,0,0);
|
|
} else {
|
|
set_self(971,37,0,0,0);
|
|
set_self(972,37,1,0,0);
|
|
set_self(973,7,NN_Desk.owner.name,0,0);
|
|
set_self(974,7,NN_Desk.owner.id,0,0);
|
|
set_self(973,37,1,0,0);
|
|
set_self(974,37,1,0,0);
|
|
}
|
|
//星星数量刷新
|
|
if(NN_Desk.model_bean[0] == 1){
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i]){
|
|
Utl.changeBean(NN_Desk.pList[i].scores, i);
|
|
}
|
|
}
|
|
}
|
|
|
|
try{
|
|
//打开计算器按钮
|
|
GameUI.showCalBtn(arr_scores);
|
|
//显示计算器结果
|
|
this.multResult(true);
|
|
}catch(e){
|
|
NN_Net.submit_error("计算器显示",e.stack+"传入分数:"+JSON.stringify(arr_scores));
|
|
}
|
|
//
|
|
Utl.onGameFinished(_arr);
|
|
//接口调用
|
|
Utl.gameOver();
|
|
return bigWiner;
|
|
} else {
|
|
set_group(210,37,0,0,0);
|
|
set_group(211,37,0,0,0);
|
|
set_group(212,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//显示总结算计算后的分数
|
|
multResult: function(isView, scores){
|
|
if(isView){
|
|
if(NN_Desk.gameoverScores.length > 0){
|
|
var _scores = [];
|
|
if(scores && scores.length > 0){
|
|
_scores = scores;
|
|
}else {
|
|
//得出分数数组
|
|
for(var i=0;i<NN_Desk.gameoverScores.length;i++){
|
|
_scores.push(NN_Desk.gameoverScores[i][1]);
|
|
}
|
|
//计算的数组
|
|
_scores = Utl.getMultipleResult(_scores);
|
|
}
|
|
var temp = -1;
|
|
for(var i=0;i<NN_Desk.gameoverScores.length;i++){
|
|
if(_scores[i] != NN_Desk.gameoverScores[i][1]){
|
|
temp = 1;
|
|
break;
|
|
}
|
|
}
|
|
//分数显示
|
|
if (temp == 1){
|
|
var wz = -1;
|
|
for(var i=0;i<_scores.length;i++){
|
|
wz = NN_Desk.gameoverScores[i][0];
|
|
NN_UI.setNumberLoc(936 + wz,926 + wz,931 + wz,_scores[i],217 + 214 * wz,592,21,26,1);
|
|
set_self(941+wz,37,1,0,0);
|
|
}
|
|
}else {
|
|
set_group(212,37,0,0,0);
|
|
}
|
|
}
|
|
} else {
|
|
set_group(212,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
|
|
//解散房间
|
|
disbandGame: function(data){
|
|
|
|
|
|
}
|
|
};
|
|
|
|
//玩家定时器读条
|
|
NN_UIF.countDown = {
|
|
//隐藏
|
|
hide: function(){
|
|
this.show();
|
|
},
|
|
//
|
|
_nowTimeoutCount : 0,
|
|
//显示
|
|
show : function (_time){
|
|
//显示倒计时闹钟
|
|
if(_time != null){
|
|
if(_time <= 0){return;}
|
|
|
|
//console.log("到定时闹钟显示时时间差:" + ((new Date()).getTime() - NN_UI.time_start));
|
|
|
|
if(NN_nowTimeoutId > -1){
|
|
window.clearInterval(NN_nowTimeoutId);
|
|
NN_nowTimeoutId = -1;
|
|
}
|
|
NN_nowTimeout = _time;
|
|
if(NN_Desk.state != NN_state.bet && NN_Desk.state != NN_state.ready){
|
|
this._nowTimeoutCount = 0;
|
|
NN_Desk.timeout_count.bet = 0;
|
|
}
|
|
//下注时倒计时循环
|
|
NN_nowTimeoutId = window.setInterval(function(){
|
|
//显示
|
|
NN_nowTimeout --;
|
|
if(NN_nowTimeout < 0 || (NN_Desk.state == NN_state.ready && NN_nowTimeout == 0)){
|
|
window.clearInterval(NN_nowTimeoutId);
|
|
NN_nowTimeoutId = -1;
|
|
if(NN_Desk.state == NN_state.bet || NN_Desk.state == NN_state.ready){//下注时倒计时循环
|
|
this._nowTimeoutCount ++;
|
|
NN_Desk.timeout_count.bet ++;
|
|
//NN_UI.setCountDown(NN_Desk.timeout_m.bet);
|
|
if(NN_Desk.state == NN_state.ready){
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.ready);
|
|
}else {
|
|
NN_UIF.countDown.show(NN_Desk.timeout_m.bet);
|
|
}
|
|
NN_Desk.stageTime_loc = (new Date()).getTime();
|
|
}
|
|
return;
|
|
}
|
|
if(String(NN_nowTimeout).length == 1){
|
|
set_self(704,7,"0"+NN_nowTimeout,0,0);
|
|
}else {
|
|
set_self(704,7,NN_nowTimeout,0,0);
|
|
}
|
|
set_self(704,20,40,0,0);
|
|
//下注倒计时5s震动
|
|
if(NN_Desk.state == NN_state.bet){
|
|
if((NN_Desk.model_fast == 1 && NN_nowTimeout == 2 || NN_Desk.model_fast != 1 && NN_nowTimeout == 5)&& NN_Desk.myseat != NN_Desk.zhuang && NN_Desk.pList[NN_Desk.myseat].betScore <= 0){
|
|
NN_Judge.isVibrator = 1;
|
|
//Func.vibrator(500);
|
|
Func.repeatvibrator(1);
|
|
}else if(NN_nowTimeout == 0 && NN_Judge.isVibrator == 1){
|
|
Func.canclevibrator();
|
|
NN_Judge.isVibrator = -1;
|
|
}
|
|
}
|
|
}.bind(this),1000);
|
|
if(String(NN_nowTimeout).length == 1){
|
|
set_self(704,7,"0"+NN_nowTimeout,0,0);
|
|
}else {
|
|
set_self(704,7,NN_nowTimeout,0,0);
|
|
}
|
|
set_self(704,20,40,0,0);
|
|
set_self(704,37,1,0,0);
|
|
set_self(703,37,1,0,0);
|
|
}else {
|
|
if(NN_nowTimeoutId > -1){
|
|
window.clearInterval(NN_nowTimeoutId);
|
|
NN_nowTimeoutId = -1;
|
|
NN_nowTimeout = 0;
|
|
}
|
|
if(NN_Judge.isVibrator == 1){
|
|
Func.canclevibrator();
|
|
NN_Judge.isVibrator = -1;
|
|
}
|
|
set_self(704,7,"00",0,0);
|
|
set_self(704,37,0,0,0);
|
|
set_self(703,37,0,0,0);
|
|
}
|
|
},
|
|
|
|
//恢复读条显示
|
|
reconnect: function(isFast){
|
|
//对应座位显示倒计时
|
|
if(NN_Desk.stageTime <= 0){ return ;}
|
|
this.show(); //停止当前定时
|
|
var _time = 0;
|
|
if(NN_Desk.model_fast >= 1){ //快版时间
|
|
switch (NN_Desk.state){
|
|
case NN_state.ready:
|
|
//_time = NN_Desk.timeout_m.ready*1000 - NN_Desk.stageTime;
|
|
_time = NN_Desk.timeout_m.ready*1000 - Math.floor(NN_Desk.stageTime % (NN_Desk.timeout_m.ready*1000));
|
|
break;
|
|
case NN_state.robZhuang://抢庄
|
|
if(NN_Desk.model == 1){
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 2150 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 950 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 4){ //发牌抢庄
|
|
//统计发牌玩家
|
|
var pCount = 0;
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i] && NN_Desk.pList[i].cards.cards.length > 0){
|
|
pCount ++;
|
|
}
|
|
}
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 2150 + pCount * 100 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 1050 + pCount * 100 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 5){ //下注抢庄
|
|
_time = 1450 + (NN_Desk.betList.length - 1) * 100 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
case NN_state.bet://下注状态
|
|
if( NN_Desk.timeout_count.bet <= 0){
|
|
var rob_num = [];
|
|
for (var i=0;i<NN_Desk.robList.length;i++) {
|
|
if(NN_Desk.robList[i] == 1){
|
|
rob_num ++;
|
|
}
|
|
}
|
|
if(NN_Desk.model == 1){ //每局抢庄
|
|
if(rob_num == 0){
|
|
//_time = 1650 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
_time = 3150 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(rob_num == 1){
|
|
_time = 1150 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(rob_num > 1){
|
|
_time = 3150 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 2){ //轮庄
|
|
if(NN_Desk.nowCount == 1){ //随机庄
|
|
_time = 2250 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){ //确定庄
|
|
_time = 1050 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 3){ //房主坐庄
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 2250 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 1050 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 4){ //看牌抢庄
|
|
//var pCount = [];
|
|
//for (var i=0;i<NN_Desk.pList.length;i++) {
|
|
//if(NN_Desk.pList[i]){
|
|
//pCount ++;
|
|
//}
|
|
//}
|
|
//if(NN_Desk.nowCount == 1){
|
|
//_time = 2150 + pCount * 100 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
//}else if(NN_Desk.nowCount > 1){
|
|
//_time = 1050 + pCount * 100 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
//}
|
|
if(rob_num == 0 || rob_num > 1){
|
|
_time = 3150 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(rob_num == 1){
|
|
_time = 1150 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
} else if(NN_Desk.model == 5){ //下注抢庄
|
|
if(NN_Desk.zhuang >= 0){//抢庄后显示下注按钮
|
|
if(rob_num == 0){
|
|
_time = 3150;
|
|
}else if(rob_num == 1){
|
|
_time = 1150;
|
|
}else if(rob_num > 1){
|
|
_time = 3150;
|
|
}
|
|
_time += NN_Desk.timeout_m.betAgain*1000 - NN_Desk.stageTime;
|
|
}else {
|
|
_time = NN_Desk.timeout_m.bet*1000;
|
|
if(NN_Desk.nowCount == 1){
|
|
_time += 2150 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time += 950 - NN_Desk.stageTime;
|
|
}
|
|
}
|
|
}
|
|
}else {
|
|
_time = NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
case NN_state.rubput: //搓摆牌
|
|
case NN_state.rubCard: //搓牌
|
|
case NN_state.putCard: //摆牌
|
|
if(NN_Desk.model == 5){ //下注抢庄
|
|
_time = 1000 + 100 + NN_Desk.betList.length * 100 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime;
|
|
} else {
|
|
//_time = 5400+(NN_Desk.betList.length+1)*1800 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime;
|
|
_time = 1450 + NN_Desk.betList.length * 100 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
} else {
|
|
switch (NN_Desk.state){
|
|
case NN_state.ready:
|
|
_time = NN_Desk.timeout_m.ready*1000 - Math.floor(NN_Desk.stageTime % (NN_Desk.timeout_m.ready*1000));
|
|
break;
|
|
case NN_state.robZhuang://抢庄
|
|
if(NN_Desk.model == 1){
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 5500 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 4000 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 4){ //发牌抢庄
|
|
//统计发牌玩家
|
|
var pCount = 0;
|
|
for(var i=0;i<NN_Desk.pList.length;i++){
|
|
if(NN_Desk.pList[i] && NN_Desk.pList[i].cards.cards.length > 0){
|
|
pCount ++;
|
|
}
|
|
}
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 7050 + (pCount-1) * 1450 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 4850 + (pCount-1) * 1450 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 5){ //下注抢庄
|
|
_time = 4800 + (NN_Desk.betList.length - 2) * 1450 + NN_Desk.timeout_m.robzhuang*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
case NN_state.bet://下注状态
|
|
if( NN_Desk.timeout_count.bet <= 0){
|
|
var rob_num = [];
|
|
for (var i=0;i<NN_Desk.robList.length;i++) {
|
|
if(NN_Desk.robList[i] == 1){
|
|
rob_num ++;
|
|
}
|
|
}
|
|
|
|
if(NN_Desk.model == 1){ //每局抢庄
|
|
if(rob_num == 0){
|
|
//_time = 11000 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
_time = 7600 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(rob_num == 1){
|
|
_time = 6300 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(rob_num > 1){
|
|
_time = 11000 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 2){ //轮庄
|
|
if(NN_Desk.nowCount == 1){ //随机庄
|
|
_time = 15000 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){ //确定庄
|
|
_time = 8800 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 3){ //房主坐庄
|
|
if(NN_Desk.nowCount == 1){
|
|
_time = 10300 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time = 8800 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
}else if(NN_Desk.model == 4){ //看牌抢庄
|
|
if(rob_num == 0 || rob_num > 1){
|
|
_time = 7350 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime; //4350#6050#7350
|
|
}else if(rob_num == 1){
|
|
_time = 1450 + NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
} else if(NN_Desk.model == 5){ //下注抢庄
|
|
if(NN_Desk.zhuang >= 0){
|
|
if(rob_num == 0 || rob_num > 1){
|
|
_time = 7350; //4350#6050#7350
|
|
}else if(rob_num == 1){
|
|
_time = 1450;
|
|
}
|
|
_time += NN_Desk.timeout_m.betAgain*1000 - NN_Desk.stageTime;
|
|
}else {
|
|
_time = NN_Desk.timeout_m.bet*1000;
|
|
if(NN_Desk.nowCount == 1){
|
|
_time += 5050 - NN_Desk.stageTime;
|
|
}else if(NN_Desk.nowCount > 1){
|
|
_time += 2850 - NN_Desk.stageTime;
|
|
}
|
|
}
|
|
}
|
|
}else {
|
|
_time = NN_Desk.timeout_m.bet*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
case NN_state.rubput: //搓摆牌
|
|
case NN_state.rubCard: //搓牌
|
|
case NN_state.putCard: //摆牌
|
|
if(NN_Desk.model == 4){ //看牌抢庄
|
|
_time = 2300 + NN_Desk.betList.length * 360 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime; //4767 - 1800
|
|
}else if(NN_Desk.model == 5){ //下注抢庄 3002#3
|
|
_time = 1000 + 910 + (NN_Desk.betList.length + 1) * 360 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime;
|
|
}else {
|
|
_time = 4800 + (NN_Desk.betList.length+1)*1800 + NN_Desk.timeout_m.rubput*1000 - NN_Desk.stageTime;
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
//console.log("NN_Desk.stageTime = "+NN_Desk.stageTime);
|
|
|
|
if(_time >= 1000){
|
|
//NN_UI.setCountDown(Math.floor(_time/1000));
|
|
NN_UIF.countDown.show(Math.floor(_time/1000));
|
|
}else if(_time >= 0 && _time < 1000){
|
|
//NN_UI.setCountDown(1);
|
|
NN_UIF.countDown.show(1);
|
|
}
|
|
},
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|