diff --git a/character/diy.js b/character/diy.js index cb7a7f91b..59f9cfa6b 100755 --- a/character/diy.js +++ b/character/diy.js @@ -141,23 +141,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ skill:{ haruko_haofang:{ mod:{ - cardEnabled:function(card,player){ - if(_status.event.skill==undefined&&get.type(card)=='delay') return false; + cardname:function(card,player,name){ + if(lib.card[card.name].type=='delay') return 'wuzhong'; }, - cardRespondable:function(card,player){ - if(_status.event.skill==undefined&&get.type(card)=='delay') return false; - }, - cardSavable:function(card,player){ - if(_status.event.skill==undefined&&get.type(card)=='delay') return false; - }, - }, - audio:2, - enable:'chooseToUse', - filterCard:{type:'delay'}, - viewAs:{name:'wuzhong'}, - check:function(){return 1}, - viewAsFilter:function(haruko){ - return haruko.countCards('h',{type:'delay'})>0; }, }, haruko_zhuishi:{ @@ -5125,7 +5111,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ ns_liuzhang:'刘璋', ns_xinnanhua:'南华老仙', - key_lucia:'此花露西娅', key_kyousuke:'棗恭介', key_yuri:'仲村ゆり', diff --git a/character/extra.js b/character/extra.js index 9b36104ab..4fc799a3a 100755 --- a/character/extra.js +++ b/character/extra.js @@ -604,10 +604,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, renjie2:{ audio:true, - trigger:{player:'phaseDiscardEnd'}, + trigger:{player:'discardAfter'}, forced:true, filter:function(event){ - return event.cards&&event.cards.length>0; + var evt=event.getParent('phaseDiscard'); + return evt&&evt.name=='phaseDiscard' }, content:function(){ player.storage.renjie+=trigger.cards.length; @@ -833,27 +834,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, wushen:{ mod:{ - cardEnabled:function(card,player){ - if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false; + cardname:function(card,player,name){ + if(get.suit(card)=='heart') return 'sha'; }, - cardUsable:function(card,player){ - if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false; - }, - cardRespondable:function(card,player){ - if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false; - }, - cardSavable:function(card,player){ - if(_status.event.skill==undefined&&card.name!='sha'&&get.suit(card)=='heart') return false; + cardnature:function(card,player,name){ + if(get.suit(card)=='heart') return null; }, targetInRange:function(card){ - if(get.suit(card)=='heart'||_status.event.skill=='wushen') return true; + if(get.suit(card)=='heart') return true; } }, audio:2, - enable:['chooseToUse','chooseToRespond'], - filterCard:{suit:'heart'}, - viewAs:{name:'sha'}, - check:function(){return 1}, ai:{ effect:{ target:function(card,player,target,current){ @@ -1883,27 +1874,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){ subSkill:{ '1':{ mod:{ - cardEnabled:function(card,player){ - if(_status.event.skill!='nzry_longnu_1'&&(card.name!='sha'||card.nature!='fire')&&get.color(card)=='red') return false; + cardname:function(card,player){ + if(get.color(card)=='red') return 'sha'; }, - cardUsable:function(card,player){ - if(_status.event.skill!='nzry_longnu_1'&&(card.name!='sha'||card.nature!='fire')&&get.color(card)=='red') return false; - }, - cardRespondable:function(card,player){ - if(_status.event.skill!='nzry_longnu_1'&&(card.name!='sha'||card.nature!='fire')&&get.color(card)=='red') return false; - }, - cardSavable:function(card,player){ - if(_status.event.skill!='nzry_longnu_1'&&(card.name!='sha'||card.nature!='fire')&&get.color(card)=='red') return false; + cardnature:function(card,player){ + if(get.color(card)=='red') return 'fire'; }, targetInRange:function(card){ - if((card.name=='sha'&&card.nature=='fire')||_status.event.skill=='nzry_longnu_1') return true; + if(get.color(card)=='red') return true; }, }, - prompt:'本回合你的红色手牌均视为火杀且无距离限制', - enable:['chooseToUse','chooseToRespond'], - filterCard:{color:'red'}, - viewAs:{name:'sha',nature:'fire'}, - check:function(){return 1}, ai:{ effect:{ target:function(card,player,target,current){ @@ -1911,36 +1891,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, respondSha:true, - order:4, - useful:-1, - value:-1 }, }, '2':{ prompt:'本回合你的锦囊牌均视为雷杀且无使用次数限制', mod:{ - cardEnabled:function(card,player){ - if(_status.event.skill!='nzry_longnu_2'&&get.type(card,'trick')=='trick') return false; + cardname:function(card,player){ + if(['trick','delay'].contains(lib.card[card.name].type)) return 'sha'; }, - cardUsable:function(card,player){ - if(_status.event.skill!='nzry_longnu_2'&&get.type(card,'trick')=='trick') return false; - }, - cardRespondable:function(card,player){ - if(_status.event.skill!='nzry_longnu_2'&&get.type(card,'trick')=='trick') return false; - }, - cardSavable:function(card,player){ - if(_status.event.skill!='nzry_longnu_2'&&get.type(card,'trick')=='trick') return false; + cardnature:function(card,player){ + if(['trick','delay'].contains(lib.card[card.name].type)) return 'thunder'; }, cardUsable:function(card,player){ if(card.name=='sha'&&card.nature=='thunder') return Infinity; }, }, - enable:['chooseToUse','chooseToRespond'], - filterCard:function(card){ - return get.type(card,'trick')=='trick'; - }, - viewAs:{name:'sha',nature:'thunder'}, - check:function(){return 1}, ai:{ effect:{ target:function(card,player,target,current){ @@ -1948,9 +1913,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, respondSha:true, - order:4, - useful:-1, - value:-1 }, }, }, diff --git a/character/old.js b/character/old.js index c2ce143f9..5993b9aa4 100755 --- a/character/old.js +++ b/character/old.js @@ -59,7 +59,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ old_guanzhang:['male','shu',4,['old_fuhun']], ol_xinxianying:['female','wei',3,['caishi','zhongjian']], ol_zhangrang:['male','qun',3,['taoluan']], - ol_yujin:['male','wei',4,['zhenjun']], + ol_yujin:['male','wei',4,['rezhenjun']], ol_zhuran:['male','wu',4,['danshou']], ol_liaohua:['male','shu',4,['dangxian','fuli']], ol_guansuo:['male','shu',4,['zhengnan','xiefang']], diff --git a/character/refresh.js b/character/refresh.js index 468f39ca4..f0df44bff 100755 --- a/character/refresh.js +++ b/character/refresh.js @@ -40,7 +40,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, skill:{ reqingguo:{ - audio:2, + audio:'qingguo', enable:['chooseToRespond'], filterCard:function(card){ return get.color(card)=='black'; diff --git a/character/shenhua.js b/character/shenhua.js index a7951bc9e..854a97675 100755 --- a/character/shenhua.js +++ b/character/shenhua.js @@ -2217,7 +2217,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, ai:{ basic:{ - order:10 + order:8.9 } }, group:['reluanji_count','reluanji_reset','reluanji_respond','reluanji_damage','reluanji_draw'], @@ -2416,17 +2416,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, filter:function(event,player){ if(event.target.countCards('h')<=player.countCards('h')) return true; - if(event.target.hp<=player.hp) return true; + if(event.target.hp>=player.hp) return true; return false; }, content:function(){ if(trigger.target.countCards('h')<=player.countCards('h')) trigger.directHit=true; + if(trigger.target.hp>=player.hp){ if(typeof trigger.extraDamage!='number'){ trigger.extraDamage=0; } trigger.extraDamage++; - }; + } }, ai:{ threaten:0.5 @@ -5183,7 +5184,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, ai:{ basic:{ - order:10 + order:8.5 } } }, diff --git a/character/sp.js b/character/sp.js index 0feffeaa0..e1ab8dcd3 100755 --- a/character/sp.js +++ b/character/sp.js @@ -594,6 +594,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ audio:'lianhua', sub:true, trigger:{player:'phaseBegin'}, + filter:function(event,player){ + return player.storage.lianhua&&player.storage.lianhua.red+player.storage.lianhua.black>0; + }, forced:true, content:function(){ var cards=[]; @@ -3488,7 +3491,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return 0; }, filterCard:function(card){ - return card.name=='sha'||(get.type(card,'trick')=='trick'&&get.color(card)=='black'&&!get.info(card).multitarget)&&get.info(card).enable; + return get.name(card)=='sha'||(get.type(card,'trick')=='trick'&&get.color(card)=='black'&&!get.info(card).multitarget)&&get.info(card).enable; }, filterTarget:function(card,player,target){ return target!=player&&!target.isMin()&& @@ -10164,23 +10167,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger.target.gain(result.cards,player,'give'); game.delay(); event.card=result.cards[0]; - if(get.type(event.card)!='equip'||trigger.target.isDisabled(get.subtype(event.card))) event.finish(); "step 2" - if(!trigger.target.isMin()){ - trigger.target.chooseBool('是否装备'+get.translation(event.card)+'?').set('ai',function(){ - var current=_status.event.player.getCards('e',{subtype:get.subtype(_status.event.card)}); - if(current&¤t.length){ - return get.equipValue(event.card)>get.equipValue(current[0]); - } - return true; - }).set('card',event.card); - } - else{ - event.finish(); - } - "step 3" - if(result.bool){ - trigger.target.useCard(event.card,trigger.target).nopopup=true; + if(trigger.target.getCards('h').contains(card)&&get.type(card)=='equip'){ + trigger.target.chooseUseTarget(card); } }, ai:{ @@ -13171,7 +13160,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ fengliang:'逢亮', fengliang_info:'觉醒技,当你进入濒死状态时,你减1点体力上限并将体力值回复至2点,然后获得技能挑衅,将困奋改为非锁定技', cihuai:'刺槐', - cihuai_info:'出牌阶段开始时,若你手牌中没有杀,你可以展示你的手牌,视为对一名角色使用一张杀', + cihuai_info:'出牌阶段开始时,若你的手牌中没有【杀】,则你可以展示你的手牌,并视为对一名角色使用一张【杀】。', gongao_info:'锁定技,每当一名角色死亡后,你增加一点体力上限,回复一点体力。', juyi:'举义', juyi_info:'觉醒技,准备阶段开始时,若你已受伤且体力上限大于存活角色数,你须将手牌摸至体力上限,然后获得技能“崩坏”和“威重”。',