From 1d24aa191b47a69af964a0b1e8bd332cb2b3507c Mon Sep 17 00:00:00 2001 From: libccy Date: Fri, 17 Feb 2017 11:25:37 +0800 Subject: [PATCH] y --- card/hearth.js | 8 ++++---- character/gujian.js | 11 +---------- character/hearth.js | 21 +++++++++++++++++++-- character/rank.js | 2 +- character/yijiang.js | 2 +- character/yxs.js | 2 +- game/game.js | 32 +++++++++++++++++++++----------- 7 files changed, 48 insertions(+), 30 deletions(-) diff --git a/card/hearth.js b/card/hearth.js index 6aae8e1eb..d481477cd 100644 --- a/card/hearth.js +++ b/card/hearth.js @@ -69,15 +69,15 @@ card.hearth={ content:function(){ 'step 0' if(target.num('hej')){ - player.choosePlayerCard('hej','重铸'+get.translation(target)+'的一张牌',target,true).visible=true; + var next=player.discardPlayerCard('hej',target,true); + next.visible=true; + next.delay=false; } else{ event.goto(2); } 'step 1' if(result.bool){ - target.$throw(result.links,1000); - target.lose(result.links); game.delay(0.5); } 'step 2' @@ -686,7 +686,7 @@ card.hearth={ shijieshu:'视界术', shijieshu_info:'目标随机装备两张装备牌,然后弃置一张手牌', zhaomingdan:'照明弹', - zhaomingdan_info:'观看一名其他角色的手牌,并重置其区域内的一张牌,然后摸一张牌', + zhaomingdan_info:'观看一名其他角色的手牌,并弃置其区域内的一张牌,然后其与你各摸一张牌', jihuocard:'激活', jihuocard_info:'摸一张牌,本回合手牌上限+2', }, diff --git a/character/gujian.js b/character/gujian.js index 85841bc78..9a3b92714 100644 --- a/character/gujian.js +++ b/character/gujian.js @@ -462,16 +462,7 @@ character.gujian={ }, result:{ target:function(player,target){ - var card=get.card(); - if(card==undefined){ - card={name:name}; - } - var value1=ai.get.value(card,target); - var value2=0; - if(target[get.subtype(card)]&&target[get.subtype(card)]!=card){ - value2=ai.get.value(target[get.subtype(card)],target); - } - return Math.max(0,value1-value2)/5; + return ai.get.equipResult(player,target,name); } } } diff --git a/character/hearth.js b/character/hearth.js index a510807a5..748d5b30f 100644 --- a/character/hearth.js +++ b/character/hearth.js @@ -3177,6 +3177,7 @@ character.hearth={ malymowang:{ trigger:{source:'damageBegin'}, forced:true, + usable:1, filter:function(event){ return event.card&&get.type(event.card)=='trick'&&event.parent.name!='_lianhuan'&&event.parent.name!='_lianhuan2'; }, @@ -3192,7 +3193,23 @@ character.hearth={ trigger:{player:'phaseUseBegin'}, forced:true, content:function(){ - player.gain(game.createCard(get.inpile('trick').randomGet()),'draw'); + 'step 0' + var list=get.inpile('trick'); + list=list.randomGets(3); + for(var i=0;i0; + return player.num('h')>0&&player.isDamaged(); }, content:function(){ "step 0" diff --git a/character/yxs.js b/character/yxs.js index 832facf45..923c6d8f0 100644 --- a/character/yxs.js +++ b/character/yxs.js @@ -2709,7 +2709,7 @@ character.yxs={ zhensha:'鸩杀', zhensha_info:'当场上有角色进入濒死状态时,你可以弃置一张酒或两张黑色手牌,则该角色立即死亡。', xumou:'蓄谋', - xumou_info:'结束阶段,你可以将武将牌翻页并摸3张牌', + xumou_info:'结束阶段,你可以将武将牌翻面并摸3张牌', guifu:'鬼斧', guifu_info:'出牌阶段限一次,你可以指定一名角色装备区内的一张牌,将其弃掉,自己和对方同时摸取一张牌', lshengong:'神工', diff --git a/game/game.js b/game/game.js index e389ecf3a..f84b5de8c 100644 --- a/game/game.js +++ b/game/game.js @@ -8278,7 +8278,10 @@ cards.push(event.result.links[i]); } event.result.cards=event.result.links.slice(0); - target.discard(cards); + var next=target.discard(cards); + if(event.delay===false){ + next.delay=event.delay; + } } }, gainPlayerCard:function(){ @@ -22229,16 +22232,7 @@ } card.ai.result.target=(function(name){ return (function(player,target){ - var card=get.card(); - if(card==undefined){ - card={name:name}; - } - var value1=ai.get.value(card,target); - var value2=0; - if(target[get.subtype(card)]&&target[get.subtype(card)]!=card){ - value2=ai.get.value(target[get.subtype(card)],target); - } - return Math.max(0,value1-value2)/5; + return ai.get.equipResult(player,target,name); }); }(i)); } @@ -36772,6 +36766,22 @@ } return 0; }, + equipResult:function(player,target,name){ + var card=get.card(); + if(card==undefined){ + card={name:name}; + } + var value1=ai.get.value(card,target); + var value2=0; + var current=target.get('e',get.subtype(card)[5]); + if(current&¤t!=card){ + value2=ai.get.value(current,target); + if(value2>0&&!target.needsToDiscard()){ + return 0; + } + } + return Math.max(0,value1-value2)/5; + }, equipValue:function(card,player){ if(player==undefined||get.itemtype(player)!='player') player=get.owner(card); if(player==undefined||get.itemtype(player)!='player') player=_status.event.player;