diff --git a/character/onlyOL.js b/character/onlyOL.js index d19a3af1a..f5f2e18d4 100644 --- a/character/onlyOL.js +++ b/character/onlyOL.js @@ -1093,7 +1093,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{player:'phaseJieshuBegin'}, prompt2:function(event,player){ var str='获得技能'; - var num=lib.skill.olsbranji.getNum(event,player); + var num=lib.skill.olsbranji.getNum(player); if(num>=player.getHp()) str+='【困奋】'; if(num==player.getHp()) str+='和'; if(num<=player.getHp()) str+='【诈降】'; @@ -1109,7 +1109,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return str; }, check:function(event,player){ - var num=lib.skill.olsbranji.getNum(event,player); + var num=lib.skill.olsbranji.getNum(player); if(num==player.getHp()) return true; return player.getHandcardLimit()-player.countCards('h')>=3||player.getDamagedHp()>=2; }, @@ -1120,7 +1120,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ var player=map.player; var trigger=map.trigger; player.awakenSkill('olsbranji'); - var num=lib.skill.olsbranji.getNum(trigger,player); + var num=lib.skill.olsbranji.getNum(player); const skills = []; if(num>=player.getHp()){ skills.push('kunfen'); @@ -1159,8 +1159,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ getList:function(event){ return event.getParent().phaseList.map(list=>list.split('|')[0]); }, - getNum:function(event,player){ - return lib.skill.olsbranji.getList(event).slice(0,event.getParent().num).filter(name=>player.getHistory('useCard',evt=>evt.getParent(name).name==name).length).length; + getNum:function(player){ + return player.getHistory('useCard',evt=>{ + return lib.phaseName.some(name=>{ + return evt.getParent(name).name==name; + }); + }).reduce((list,evt)=>{ + return list.add(evt.getParent(lib.phaseName.find(name=>evt.getParent(name).name==name))); + },[]).length; }, subSkill:{ norecover:{ diff --git a/character/sp.js b/character/sp.js index acfcf080f..7f7b7568c 100755 --- a/character/sp.js +++ b/character/sp.js @@ -6,7 +6,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ characterSort:{ sp:{ sp_tianji:["sunhao","liuxie","caoang","hetaihou","sunluyu",'ol_wangrong',"zuofen","ol_bianfuren","qinghegongzhu","tengfanglan","ruiji",'caoxiancaohua'], - sp_sibi:["yangxiu",'guotu',"chenlin","chengyu","shixie","fuwan","wangyun","zhugejin","simalang","maliang","buzhi","dongyun","kanze","sunqian","xizhicai","sunshao",'duxi',"jianggan",'ol_dengzhi','ol_yangyi','ol_dongzhao','ol_chendeng','jin_yanghu','wangyan','xiahouxuan','quhuang','zhanghua','wangguan','sunhong','caoxi','tianchou'], + sp_sibi:['ol_lukai',"yangxiu",'guotu',"chenlin","chengyu","shixie","fuwan","wangyun","zhugejin","simalang","maliang","buzhi","dongyun","kanze","sunqian","xizhicai","sunshao",'duxi',"jianggan",'ol_dengzhi','ol_yangyi','ol_dongzhao','ol_chendeng','jin_yanghu','wangyan','xiahouxuan','quhuang','zhanghua','wangguan','sunhong','caoxi','tianchou'], sp_tianzhu:['liyi','zhangyan','niujin','hejin','hansui',"wutugu","yanbaihu","shamoke","zhugedan",'huangzu','gaogan',"tadun","fanjiangzhangda","ahuinan","dongtuna",'ol_wenqin'], sp_nvshi:['ol_dingshangwan',"lingju","guanyinping","zhangxingcai","mayunlu","dongbai","zhaoxiang",'ol_zhangchangpu',"daxiaoqiao","jin_guohuai",'ol_hujinding'], sp_shaowei:["simahui","zhangbao","zhanglu","zhugeguo","xujing","zhangling",'huangchengyan','zhangzhi','lushi'], @@ -18,7 +18,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_zhongdan:["cuiyan","huangfusong"], sp_guozhan2:["sp_dongzhuo","liqueguosi","zhangren"], sp_others:["hanba","caiyang"], - sp_waitforsort:['ol_luyusheng','ol_pengyang','ol_tw_zhangji','ol_liwan','ol_liuyan','caoyu','liupan','ol_lukai','ol_liupi'], + sp_waitforsort:['ol_luyusheng','ol_pengyang','ol_tw_zhangji','ol_liwan','ol_liuyan','caoyu','liupan','ol_liupi'], }, }, characterFilter:{ diff --git a/mode/guozhan.js b/mode/guozhan.js index b96c965a7..86e4f304c 100644 --- a/mode/guozhan.js +++ b/mode/guozhan.js @@ -2117,20 +2117,24 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ return lib.filter.cardDiscardable(card,player)&&!player.getStorage('fakezhufu_effect').includes(get.suit(card)); }, position:'he', + /* check(card){ const player=get.event('player'); if(player.hasUseTarget(card,true,true)) return 0; return 5+3*Math.random()-get.value(card); }, + */ async content(event,trigger,player){ const suit=get.suit(event.cards[0],player); player.addTempSkill('fakezhufu_effect','phaseUseAfter'); player.markAuto('fakezhufu_effect',[[suit,false]]); }, + /* ai:{ order:7, result:{player:1}, }, + */ subSkill:{ effect:{ charlotte:true, @@ -2143,7 +2147,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ let str=''; str+='