From 660b74d8aaf1144868a04106424cbcc897692cf7 Mon Sep 17 00:00:00 2001 From: PZ157 <3619242020@qq.com> Date: Tue, 7 Nov 2023 21:49:42 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=8A=80=E8=83=BDai?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit rezhenjun不能对无牌角色发动技能; 增加xindanxin卖血ai --- character/yijiang.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/character/yijiang.js b/character/yijiang.js index d135fe7f5..d9307920a 100755 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -3304,7 +3304,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ direct:true, content:function (){ 'step 0' - player.chooseTarget(get.prompt2('rezhenjun')).ai=function(target){ + player.chooseTarget(get.prompt2('rezhenjun'),(card,player,target)=>{ + return target.countCards('he'); + }).ai=function(target){ return -get.attitude(_status.event.player,target)*(target.countCards('e')+1); }; 'step 1' @@ -6121,6 +6123,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.popup('更改描述'); player.addMark('xindanxin',1,false); } + }, + ai:{ + maixie:true, + effect:{ + target:(card,player,target)=>{ + if(!get.tag(card,'damage')) return; + if(target.hp<2||player.hasSkillTag('jueqing',false,target)) return -1.5; + return [1,1]; + } + } } }, zongzuo:{ From 72a45a47e66974dd55b30e63cbd4ee7c8107f6a5 Mon Sep 17 00:00:00 2001 From: PZ157 <3619242020@qq.com> Date: Tue, 7 Nov 2023 21:58:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E3=80=90=E6=AE=9A?= =?UTF-8?q?=E5=BF=83=E3=80=91=E3=80=90=E5=8D=95=E9=AA=91=E3=80=91ai?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- character/refresh.js | 11 +++++++++++ character/sp.js | 35 +++++++++++++++++++++++++++++++++++ character/sp2.js | 16 ++++++++++++++++ 3 files changed, 62 insertions(+) diff --git a/character/refresh.js b/character/refresh.js index 340ae47ce..2140b385b 100755 --- a/character/refresh.js +++ b/character/refresh.js @@ -4415,6 +4415,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(player.countMark('redanxin')<2) player.addMark('redanxin',1,false); }, intro:{content:'当前升级等级。:Lv#'}, + ai:{ + maixie:true, + effect:{ + target:(card,player,target)=>{ + if(!get.tag(card,'damage')) return; + if(target.hp<2&&target.countCards('hs')<3||player.hasSkillTag('jueqing',false,target)) return -2; + if(target.countMark('redanxin')>1) return [1,1]; + return [1,Math.min(3.2,0.8*target.hp)]; + } + } + } }, //马岱 reqianxi:{ diff --git a/character/sp.js b/character/sp.js index ecaf811c8..82984e2d8 100755 --- a/character/sp.js +++ b/character/sp.js @@ -19625,6 +19625,41 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.addSkill('mashu'); player.addSkill('nuzhan'); player.awakenSkill('danji'); + }, + ai:{ + maixie:true, + skillTagFilter:(player,tag,arg)=>{ + if(tag==='maixie'){ + if(player.hp<2||player.storage.danji||player.hasSkill('nuzhan')||player.countCards('h')!==player.hp) return false; + let zhu=get.zhu(player); + if(zhu&&zhu.isZhu){ + let name=zhu.name; + while(name.indexOf('_')!==-1){ + name=name.slice(name.indexOf('_')+1); + } + if(name.indexOf('liubei')==0) return false; + } + return true; + } + }, + effect:{ + target:(card,player,target)=>{ + let hs=target.countCards('h'); + if(target.hp<3||target.storage.danji||target.hasSkill('nuzhan')||hs>target.hp+1) return; + let zhu=get.zhu(target); + if(zhu&&zhu.isZhu){ + let name=zhu.name; + while(name.indexOf('_')!==-1){ + name=name.slice(name.indexOf('_')+1); + } + if(name.indexOf('liubei')==0) return; + } + if(get.tag(card,'draw')) return 1.6; + if(get.tag(card,'lose')||get.tag(card,'discard')) return [1,-0.8]; + if(hs===target.hp&&get.tag(card,'damage')) return [1,target.hp/3]; + if(hs>target.hp&&target.hp>3&&(card.name==='shan'||card.name==='wuxie')) return 'zeroplayertarget'; + } + } } }, nuzhan:{ diff --git a/character/sp2.js b/character/sp2.js index 77763cede..9dbe63596 100644 --- a/character/sp2.js +++ b/character/sp2.js @@ -793,6 +793,22 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.addSkill('mashu'); player.addSkill('dcnuchen'); player.awakenSkill('dcdanji'); + }, + ai:{ + maixie:true, + skillTagFilter:(player,tag,arg)=>{ + if(tag==='maixie') return player.hp>=2&&!player.storage.dcdanji&&!player.hasSkill('dcnuchen')&&player.countCards('h')===player.hp; + }, + effect:{ + target:(card,player,target)=>{ + let hs=target.countCards('h'); + if(target.hp<3||target.storage.dcdanji||target.hasSkill('dcnuchen')||hs>target.hp+1) return; + if(get.tag(card,'draw')) return 1.6; + if(get.tag(card,'lose')||get.tag(card,'discard')) return [1,-0.8]; + if(hs===target.hp&&get.tag(card,'damage')) return [1,target.hp/3]; + if(hs>target.hp&&target.hp>3&&(card.name==='shan'||card.name==='wuxie')) return 'zeroplayertarget'; + } + } } }, dcnuchen:{