diff --git a/character/diy.js b/character/diy.js index 9d944cc56..0779ad96b 100644 --- a/character/diy.js +++ b/character/diy.js @@ -425,6 +425,8 @@ character.diy={ if(event.nature=='thunder') return true; }, forced:true, + popup:false, + priority:1, content:function(){ player.draw(); }, diff --git a/character/woods.js b/character/woods.js index ce23a7a1a..f83c6d34d 100644 --- a/character/woods.js +++ b/character/woods.js @@ -592,8 +592,16 @@ character.woods={ filter:function(event,player){ return !player.storage.luanwu; }, + init:function(player){ + player.storage.luanwu=false; + }, + mark:true, + intro:{ + content:'limited' + }, content:function(){ "step 0" + player.unmarkSkill('luanwu') player.storage.luanwu=true; event.current=player.next; "step 1" @@ -610,7 +618,7 @@ character.woods={ if(result.bool==false) event.current.loseHp(); if(event.current.next!=player){ event.current=event.current.next; - game.delay(); + game.delay(0.5); event.goto(1); } }, diff --git a/character/yijiang.js b/character/yijiang.js index 08a939682..6a4965bb0 100644 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -2722,6 +2722,7 @@ character.yijiang={ player.storage.xiansi=[]; }, unique:true, + forceunique:true, content:function(){ "step 0" player.chooseTarget('是否发动陷嗣?',[1,2],function(card,player,target){ diff --git a/game/game.js b/game/game.js index dcf3baebe..1204e1924 100644 --- a/game/game.js +++ b/game/game.js @@ -1279,6 +1279,7 @@ window.play={}; useSkill:function(){ "step 0" var info=get.info(event.skill); + event._skill=event.skill; if(lib.config.background_speak&&!lib.skill.global.contains(event.skill)){ if(info.audio){ game.playAudio('skill',event.skill,Math.ceil(info.audio*Math.random())); @@ -1346,8 +1347,14 @@ window.play={}; "step 1" if(!event.skill){ console.log('error: no skill',get.translation(event.player),event.player.get('s')); - event.finish(); - return; + if(event._skill){ + event.skill=event._skill; + console.log(event._skill); + } + else{ + event.finish(); + return; + } } var info=get.info(event.skill); if(targets[num]&&targets[num].isDead()|| @@ -3823,7 +3830,11 @@ window.play={}; return ui.autoreplace&&ui.autoreplace.classList.contains('on')&& this.side==game.me.side; } - else if(lib.config.mode=='chess'||lib.config.mode=='boss'){ + else if(lib.config.mode=='chess'){ + return this.side==game.me.side; + } + else if(lib.config.mode=='boss'){ + if(this.gonemad) return false; return this.side==game.me.side; } return false; diff --git a/mode/boss.js b/mode/boss.js index 7328882f8..4b3a699f5 100644 --- a/mode/boss.js +++ b/mode/boss.js @@ -9,6 +9,25 @@ mode.boss={ if(this==game.boss||game.players.length==1){ game.checkResult(); } + }, + goMad:function(){ + this.mark('乱',{ + name:'混乱', + content:'已进入混乱状态' + }); + this.gonemad=true; + if(this==game.me){ + if(this.next.side==this.side){ + game.modeSwapPlayer(this.next); + } + else if(this.previous.side==this.side){ + game.modeSwapPlayer(this.previous); + } + else{ + this.die(); + } + } + game.log(get.translation(this)+'进入混乱状态'); } } }, @@ -98,6 +117,10 @@ mode.boss={ } } } + if(!event.current){ + event.current=bosslist.childNodes[1]; + event.current.classList.add('highlight'); + } ui.create.div(bosslist); lib.translate.boss_pangtong='涅槃凤雏'; ui.create.arena(); @@ -136,9 +159,6 @@ mode.boss={ setTimeout(function(){ ui.control.classList.remove('bosslist'); },500); - if(!event.current){ - event.current=event.bosslist.childNodes[1]; - } var rect=event.current.getBoundingClientRect(); var boss=ui.create.player().init(event.current.name); game.boss=boss; @@ -463,6 +483,9 @@ mode.boss={ }, }, boss:{ + boss_zhangjiao:{ + loopType:2, + }, boss_caiwenji:{ loopType:2, chongzheng:3 @@ -476,6 +499,15 @@ mode.boss={ boss_lvbu1:{ loopType:2 }, + boss_zuoci:{ + chongzheng:3, + }, + boss_diaochan:{ + chongzheng:3, + }, + boss_huatuo:{ + chongzheng:3, + }, global:{ loopType:1, chongzheng:6 @@ -492,21 +524,266 @@ mode.boss={ boss_lvbu1:['male','qun',8,['mashu','wushuang','boss_baonu'],['fullskin','boss'],'wei'], boss_lvbu2:['male','qun',4,['mashu','wushuang','swd_xiuluo','shenwei','shenji'],['fullskin','hiddenboss'],'qun'], boss_caiwenji:['female','qun',4,['tinqin','beige','boss_hujia','boss_guihan'],['fullskin','boss'],'wei'], - boss_zhangjiao:['male','qun',8,[],['fullskin','boss'],'shu'], - boss_zuoci:['male','qun',8,[],['fullskin','boss'],'shu'], + boss_zhangjiao:['male','qun',8,['diyleiji','guidao','tiangong','jidian'],['fullskin','boss'],'shu'], + boss_zuoci:['male','qun',0,['huanhua'],['fullskin','boss'],'shu'], // boss_yuji:['male','qun',8,[],['fullskin','boss'],'nei'], - boss_diaochan:['male','qun',8,[],['fullskin','boss'],'qun'], - boss_huatuo:['male','qun',8,[],['fullskin','boss'],'wu'], - boss_dongzhuo:['male','qun',8,[],['fullskin','boss'],'shu'], + boss_diaochan:['female','qun',4,['fengwu','yunshen','lianji','boss_wange','yuehun'],['fullskin','boss'],'qun'], + boss_huatuo:['male','qun',6,['chulao','mazui','boss_shengshou','guizhen'],['fullskin','boss'],'wu'], + boss_dongzhuo:['male','qun',20,['jiuchi','boss_qiangzheng','boss_baolin'],['fullskin','boss'],'shu'], // boss_shuijing:['male','qun',8,[],['fullskin','boss'],'wei'], }, skill:{ + boss_baolin:{ + inherit:'juece', + }, + boss_qiangzheng:{ + trigger:{player:'phaseEnd'}, + forced:true, + filter:function(event,player){ + for(var i=0;i=3; + }, + content:function(){ + "step 0" + player.chooseTarget(function(card,player,target){ + return target!=player; + }).ai=function(){ + return 1; + } + "step 1" + if(result.bool){ + player.logSkill('boss_konghun',result.targets); + result.targets[0].goMad(); + } + }, + group:'boss_konghun2' + }, + boss_konghun2:{ + trigger:{player:'phaseBegin'}, + forced:true, + popup:false, + content:function(){ + var players=game.players.concat(game.dead); + for(var i=0;i1){ + num--; + } + else{ + num++; + } + } + return num; + } + } + } + }, + huanhua:{ + trigger:{global:'gameDrawAfter'}, + forced:true, + unique:true, + content:function(){ + for(var i=0;i