From cfeea1b34cdc732b9af9b4788d0cad72f094b087 Mon Sep 17 00:00:00 2001 From: 157 <3619242020@qq.com> Date: Tue, 26 Mar 2024 21:38:09 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E3=80=90=E5=86=B3=E6=96=97=E3=80=91?= =?UTF-8?q?=E6=8E=92=E9=99=A4=E4=BD=BF=E7=94=A8=E7=89=8C=E8=80=83=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- card/standard.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/card/standard.js b/card/standard.js index bab619aef..8090f66a1 100644 --- a/card/standard.js +++ b/card/standard.js @@ -1535,7 +1535,9 @@ game.import('card',function(lib,game,ui,get,ai,_status){ if (get.damageEffect(target, player, target) >= 0) return 0; let pd = get.damageEffect(player, target, player), att = get.attitude(player, target); if (att > 0 && get.damageEffect(target, player, player) > pd) return 0; - let ts = target.mayHaveSha(player, 'respond', null, 'count'), ps = player.mayHaveSha(player, 'respond', null, 'count'); + let ts = target.mayHaveSha(player, 'respond', null, 'count'), ps = player.mayHaveSha(player, 'respond', player.getCards('h', i => { + return card === i || card.cards && card.cards.includes(i) || ui.selected.cards.includes(i); + }), 'count'); if (ts < 1 && ts << 3 < Math.pow(player.hp, 2)) return 0; if (att > 0) { if (ts < 1) return 0; @@ -1554,7 +1556,9 @@ game.import('card',function(lib,game,ui,get,ai,_status){ if (td >= 0) return td / get.attitude(target, target); let pd = get.damageEffect(player, target, player), att = get.attitude(player, target); if (att > 0 && get.damageEffect(target, player, player) > pd) return -2; - let ts = target.mayHaveSha(player, 'respond', null, 'count'), ps = player.mayHaveSha(player, 'respond', null, 'count'); + let ts = target.mayHaveSha(player, 'respond', null, 'count'), ps = player.mayHaveSha(player, 'respond', player.getCards('h', i => { + return card === i || card.cards && card.cards.includes(i) || ui.selected.cards.includes(i); + }), 'count'); if (ts < 1) return -1.5; if (att > 0) return -2; if (ts - ps < 1) return -2 - ts; From bf5f7ef1398cbb30d71fb74cbfb201bd3ca59ae9 Mon Sep 17 00:00:00 2001 From: 157 <3619242020@qq.com> Date: Tue, 26 Mar 2024 21:39:56 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E3=80=90=E6=95=B4?= =?UTF-8?q?=E5=86=9B=E3=80=91=E5=A4=9A=E7=9B=AE=E6=A0=87=E6=97=A0=E6=95=88?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- character/ddd.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/character/ddd.js b/character/ddd.js index dbc3693fe..493032017 100644 --- a/character/ddd.js +++ b/character/ddd.js @@ -1689,12 +1689,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){ let target; if(hs_targets.length==1) target=hs_targets[0]; else{ - target=await player.chooseTarget(get.prompt('dddzhengjun'),'令其中一名角色摸一张牌或弃置一张牌',(card,player,target)=>{ + let targets=await player.chooseTarget(get.prompt('dddzhengjun'),'令其中一名角色摸一张牌或弃置一张牌',(card,player,target)=>{ return get.event('targets').includes(target); }).set('ai',target=>{ const player=get.event('player'); return Math.max(get.effect(target,{name:'guohe_copy2'},target,player),get.effect(target,{name:'draw'},player,player)); - }).set('targets',hs_targets).forResultTargets()[0]; + }).set('targets',hs_targets).forResultTargets(); + if(targets&&targets.length) target=targets[0]; } if(target){ let list=['摸牌']; @@ -1722,12 +1723,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(bool) target=hs_targets[0]; } else{ - target=await player.chooseTarget(get.prompt('dddzhengjun'),'移动其中一名角色的一张装备牌',(card,player,target)=>{ + let targets=await player.chooseTarget(get.prompt('dddzhengjun'),'移动其中一名角色的一张装备牌',(card,player,target)=>{ return get.event('targets').includes(target); }).set('ai',target=>{ const player=get.event('player'); return player.canMoveCard(true,true,target)?(1+Math.random()):0; - }).set('targets',es_targets).forResultTargets()[0]; + }).set('targets',es_targets).forResultTargets(); + if(targets&&targets.length) target=targets[0]; } if(target){ map.es_target=target;