From 724a4f7f60005fb3c47abcd67ce5d90322bbfa16 Mon Sep 17 00:00:00 2001 From: libccy Date: Thu, 23 Feb 2017 15:33:18 +0800 Subject: [PATCH] 3 --- character/ow.js | 12 +++++++++--- character/swd.js | 14 +++++++++++++- character/xianjian.js | 22 +++++++++++++++++++--- 3 files changed, 41 insertions(+), 7 deletions(-) diff --git a/character/ow.js b/character/ow.js index b693cdf46..611871fb2 100644 --- a/character/ow.js +++ b/character/ow.js @@ -1894,8 +1894,9 @@ character.ow={ feiren:{ trigger:{source:'damageBegin'}, forced:true, + alter:true, filter:function(event,player){ - return event.card&&event.card.name=='sha'&&get.suit(event.card)=='spade'&&event.notLink(); + return !get.is.altered('feiren')&&event.card&&event.card.name=='sha'&&get.suit(event.card)=='spade'&&event.notLink(); }, content:function(){ trigger.num++; @@ -2769,6 +2770,7 @@ character.ow={ return ai.get.attitude(player,event.player)<0&& ((player.num('h')>player.hp&&player.num('h','lebu')==0)||get.distance(player,event.player)>1); }, + alter:true, intro:{ content:function(storage,player){ var str=''; @@ -2815,8 +2817,10 @@ character.ow={ logTarget:'player', content:function(){ "step 0" - player.draw(false); - player.$draw(); + if(!get.is.altered('shanxian')){ + player.draw(false); + player.$draw(); + } "step 1" player.storage.shanxian_h=player.get('h'); player.storage.shanxian_e=player.get('e'); @@ -3015,6 +3019,7 @@ character.ow={ feiren:'飞刃', feiren2:'飞刃', feiren_info:'你的杀无视距离;你的黑桃杀造成的伤害+1,梅花杀可以额外指定一个目标', + feiren_info_alter:'你的杀无视距离;你的梅花杀可以额外指定一个目标', zhanlong:'斩龙', zhanlong_info:'限定技,准备阶段,若你体力值为1,你可以弃置所有牌(至少一张),然后将三张杀置入你的手牌,若如此做,你本回合使用杀无次数限制', xie:'谐', @@ -3052,6 +3057,7 @@ character.ow={ shouhu_info:'你不能使用杀;出牌阶段,你可以弃置一张杀令一名其他角色回复一点体力', shanxian:'闪现', shanxian_info:'在一名其他角色的回合开始前,若你的武将牌正面朝上,你可以摸一张牌并进行一个额外回合,并在回合结束后将武将牌翻至背面。若如此做,你对其使用卡牌无视距离直到回合结束。', + shanxian_info_alter:'在一名其他角色的回合开始前,若你的武将牌正面朝上,你可以进行一个额外回合,并在回合结束后将武将牌翻至背面。若如此做,你对其使用卡牌无视距离直到回合结束。', shanhui:'闪回', shanhui_info:'当你造成或受到伤害后,你可以将你的牌重置为上次发动闪现时的状态,若你的牌数因此而减少,你回复一点体力', ow_liekong:'猎空', diff --git a/character/swd.js b/character/swd.js index e205307c1..1164b6038 100644 --- a/character/swd.js +++ b/character/swd.js @@ -1301,6 +1301,7 @@ character.swd={ trigger:{global:'damageEnd'}, forced:true, logv:false, + alter:true, check:function(event,player){ return game.hasPlayer(function(current){ return ai.get.attitude(player,current)>2&¤t.num('h')==1 @@ -1328,8 +1329,12 @@ character.swd={ event.cards=cards; var dialog=ui.create.dialog('聒噪:选择一个目标将手牌替换',cards,'hidden'); dialog.classList.add('noselect'); + var dist=2; + if(get.is.altered('guozao')){ + dist=1; + } var next=player.chooseTarget(true,dialog,function(card,player,target){ - return target.num('h')>0&&get.distance(player,target)<=2; + return target.num('h')>0&&get.distance(player,target)<=dist; }).ai=function(target){ var att=ai.get.attitude(player,target); var hs=target.get('h'); @@ -4413,6 +4418,7 @@ character.swd={ susheng2:{}, kunlunjing:{ unique:true, + alter:true, group:['kunlunjing1','kunlunjing2'], video:function(player,data){ if(data){ @@ -4460,6 +4466,7 @@ character.swd={ }, onremove:['kunlunjing','kunlunjing2'], check:function(event,player){ + if(get.is.altered('kunlunjing')) return false; var storage=player.storage.kunlunjing; var num=0; for(var i=0;i=3; }, + alter:true, content:function(){ "step 0" var ainum=0; @@ -1863,7 +1873,9 @@ character.xianjian={ if(result.bool){ player.storage.xuanning=0; player.unmarkSkill('xuanning'); - player.addTempSkill('qianfang2','phaseAfter'); + if(!get.is.altered('qianfang')){ + player.addTempSkill('qianfang2','phaseAfter'); + } if(!event.logged) player.logSkill('qianfang'); player.useCard({name:'wanjian'},event.targets); } @@ -1889,13 +1901,14 @@ character.xianjian={ check:function(event,player){ return ai.get.attitude(player,event.player)<0&&event.player.num('he')>1; }, + alter:true, filter:function(event,player){ return player.storage.xuanning>0&&event.player.num('he')>0; }, direct:true, content:function(){ "step 0" - player.discardPlayerCard(trigger.player,'he',get.prompt('poyun'),[1,2]).logSkill=['poyun',trigger.player]; + player.discardPlayerCard(trigger.player,'he',get.prompt('poyun',trigger.player),[1,get.is.altered('poyun')?1:2]).logSkill=['poyun',trigger.player]; "step 1" if(result.bool){ player.storage.xuanning--; @@ -2522,6 +2535,7 @@ character.xianjian={ xfenxin:'焚心', xfenxin2:'焚心', xfenxin_info:'锁定技,每当你的体力值发生改变,你摸等量的牌;每当你杀死一名角色,你增加一点体力上限并回复一点体力', + xfenxin_info_alter:'锁定技,每当你的体力值发生改变,你摸一张牌', luanjian:'乱剑', luanjian_info:'出牌阶段,你可以将两张杀当杀使用,此杀无视距离,可以指定任意名目标且有50%的机率伤害+1', tianfu:'天符', @@ -2556,8 +2570,10 @@ character.xianjian={ qijian_info:'弃牌阶段结束时,你可以指定至多X名目标视为使用一张杀,X为你于此阶段弃置的卡牌数', poyun:'破云', poyun_info:'每当你造成一次伤害,你可以弃置一枚玄凝标记,然后弃置对方两张牌', + poyun_info_alter:'每当你造成一次伤害,你可以弃置一枚玄凝标记,然后弃置对方一张牌', qianfang:'千方', qianfang_info:'准备阶段,若你有玄凝标记,可以弃置3-X张牌和所有玄凝标记,视为使用了一张【万箭齐发】,若如此做,你本回合的摸牌阶段摸牌数+1。X为你的玄凝标记数', + qianfang_info_alter:'准备阶段,若你有玄凝标记,可以弃置3-X张牌和所有玄凝标记,视为使用了一张【万箭齐发】,X为你的玄凝标记数', longxi:'龙息', longxi2:'龙息', longxi_info:'锁定技,在回合外每当你需要使用或打出一张卡牌时,若牌堆顶的前两张中有可使用或打出的牌,你立即获得之',