//回放时调用 var Recovery = { } var msgrecovery = { } Public_data.huifang = function(_msg,ju){ msgrecovery = _msg; if(typeof _msg.data.gameinfo2 == "string"){ _msg.data.gameinfo2=JSON.parse(_msg.data.gameinfo2); } Public_data.recovery.roomcode = _msg.data.gameinfo2.roomcode; //房间号 Public_data.recovery.asetcount = _msg.data.gameinfo2.asetcount; //总局数 Public_data.data.roomtype = _msg.data.gameinfo2.roomtype; //房间类型 Public_data.recovery.ziyuan = _msg.data.gameinfo2.ziyuan;//玩家信息 昵称 头像 Public_data.recovery.id = _msg.data.gameinfo2.id; //玩家id Public_data.recovery.hand_cards= _msg.data.gameinfo2.hand_cards[ju]; //手牌 Public_data.recovery.pjhf = _msg.data.gameinfo2.pjhf[ju]; //牌局回放数据 pjhf :[[出牌状态,座位号,[每个人的牌id:[],[]],[手牌ID],[玩家状态]],[],[],[].....] Public_data.recovery.num = -1;//重新回放 Public_data.data.maxman = _msg.data.gameinfo2.pjhf[dijiju][_msg.data.gameinfo2.pjhf[dijiju].length-1][2]; //人数 Public_data.data.undercards = _msg.data.gameinfo2.undercards[dijiju]; //底牌 var myseat = 0; for(var i = 0; i < Public_data.recovery.id.length; i++){ if (Public_data.recovery.id[i]==Utl.getMyPlayerid()) { myseat = i; break; } } //最大人数 //Game_Config.Max.PlayerCnt = Public_data.data.maxman; Utl.openVideo(Public_data.recovery.ziyuan,myseat,Public_data.recovery.roomcode,Public_data.data.roomtype); Recovery.show(_msg); for (var i = 0; i < Public_data.data.maxman; i++) { if (Public_data.recovery.hand_cards[i]) { Public_data.data.hand_cards = Public_data.recovery.hand_cards[i]; Public_data.data.hand_cards = Game_Modify.sort(Public_data.data.hand_cards); Hand_card.sort(i,Public_data.data.hand_cards);//手牌显示 } } Public_data.data.hand_cards = Public_data.recovery.hand_cards[myseat]; set_self(id_config.pause,43,2,0,0); Recovery.button(); Public_data.data.control = Public_data.recovery.pjhf[0][1]; clock(1); set_self(All_timer.recovery,57,All_timer.time.recovery,0,0); } Recovery.Card_Game = { show :function(){//开启牌局回放定时器 Public_data.Recovery();//数据处理 set_self(All_timer.recovery,57,All_timer.time.recovery,0,0); Recovery.show(); }, hide: function(){//关闭牌局回放定时器 set_self(All_timer.recovery,57,0,0,0);//关闭 set_self(All_timer.clock,57,0,0,0);//关闭 } } Recovery.show = function(_msg){ //回放时要显示的 Game_Modify.recovery(_msg); } Recovery.button = function(){ if (Public_data.recovery.num<=0) { set_self(id_config.retreat,41,0,0,0); }else{ set_self(id_config.retreat,41,1,0,0); } set_self(id_config.fast,37,1,0,0); set_self(id_config.pause,37,1,0,0); set_self(id_config.retreat,37,1,0,0); set_self(id_config.out,37,1,0,0); } Recovery.click = function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){ switch (spid_up){ case id_config.fast://快进 Recovery.Card_Game.hide();//关闭定时器 if (Public_data.recovery.num+10) { Public_data.recovery.num = Public_data.recovery.num -1; Public_data.Recovery(); set_group(251,37,0,0,0); //Recovery.button(); set_self(All_timer.clock,57,0,0,0); set_self(id_config.pause,43,1,0,0); } click_up(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; case id_config.out://退出 UI.hide(); Utl.closeVideo(); Game_Modify.recoveryout(); click_up(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; } } Recovery.clickdown = function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){ switch (spid_up){ case id_config.fast://快进 click_down(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; case id_config.pause://暂停 开始 click_down(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; case id_config.retreat://退一步 click_down(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; case id_config.out://退出 click_down(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2); break; default: break; } }