diff --git a/character/extra.js b/character/extra.js index 6d492b6ea..145d7ffeb 100755 --- a/character/extra.js +++ b/character/extra.js @@ -44,7 +44,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ mini_zhugeliang:['male','shen',3,['qixing','minikuangfeng','minidawu'],['shu']], mini_lvbu:['male','shen',6,['miniwuqian','minishenfen']], - mini_lvmeng:['male','shen',3,['shelie','minigongxin']], + mini_lvmeng:['male','shen',3,['shelie','minigongxin'],['wu']], }, characterIntro:{ shen_guanyu:'关羽,字云长。曾水淹七军、擒于禁、斩庞德、威震华夏,吓得曹操差点迁都躲避,但是东吴偷袭荆州,关羽兵败被害。后传说吕蒙因关羽之魂索命而死。', diff --git a/character/rank.js b/character/rank.js index 2dd41db9d..8f0c5ad60 100644 --- a/character/rank.js +++ b/character/rank.js @@ -651,6 +651,8 @@ window.noname_character_rank={ 're_gongsunyuan', 're_caozhen', 'ol_lisu', + 'jin_simazhao', + 'jin_zhangchunhua', ], b:[ 'diy_feishi', @@ -799,11 +801,9 @@ window.noname_character_rank={ 'jianggan', 'yj_chendao', 'yj_caoang', - 'jin_zhangchunhua', 'xin_hansui', 'ns_caimao', 'sp_zhangliao', - 'jin_simazhao', 'xinxianying', 'key_haruko', 'key_rei', @@ -823,6 +823,7 @@ window.noname_character_rank={ 're_xiaoqiao', 'caoanmin', 'luyusheng', + 'dingfeng', ], bm:[ 'diy_xizhenxihong', @@ -953,7 +954,6 @@ window.noname_character_rank={ 'ganfuren', 'yuejin', 'hetaihou', - 'dingfeng', 'niujin', 'ns_lijue', 'ns_zhangji', @@ -964,6 +964,7 @@ window.noname_character_rank={ 'xin_zhangfei', 'xin_fuhuanghou', 'sp_xunchen', + 'zhaozhong', ], c:[ 'xiahoudun', @@ -1585,6 +1586,7 @@ window.noname_character_rank={ 'sp_wangcan', 'lisu', 'ol_lisu', + 'zhaozhong', ], junk:[ 'sunshao', diff --git a/character/shenhua.js b/character/shenhua.js index 45fecbef6..655ffec9f 100755 --- a/character/shenhua.js +++ b/character/shenhua.js @@ -325,7 +325,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, //阴雷 "drlt_zhenrong":{ - init:function (player,skill){ + init:function(player,skill){ if(!player.storage[skill]) player.storage.drlt_zhenrong=[]; }, marktext:"荣", @@ -349,7 +349,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return event.player!=player&&event.player.countCards('h')>player.countCards('h'); }, direct:true, - content:function (){ + content:function(){ 'step 0' player.choosePlayerCard('hej',get.prompt('drlt_zhenrong'),trigger.player).set('ai',function(button){ return -get.attitude(player,trigger.player)+1; @@ -529,7 +529,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{ player:"phaseJieshuBegin", }, - check:function (event,player){ + check:function(event,player){ var num=0; if(player.getHistory('lose',function(evt){ return evt.type=='discard'; @@ -539,7 +539,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(num==3) return player.hp>=2; return true; }, - prompt:function (event,player){ + prompt:function(event,player){ var num=3; if(player.getHistory('lose',function(evt){ return evt.type=='discard'; @@ -548,7 +548,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(!player.getStat('damage')) num--; return get.prompt('xinfu_zuilun')+'(可获得'+get.cnNumber(num)+'张牌)' }, - content:function (){ + content:function(){ 'step 0' event.num=0; event.cards=get.cards(3); @@ -611,7 +611,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, forced:true, audio:2, - filter:function (event,player){ + filter:function(event,player){ if(event.player.countCards('h')0; }); }, - content:function (){ + content:function(){ trigger.getParent().excluded.add(player); }, }, @@ -711,7 +711,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, 'drlt_jueyan1':{ mod:{ - cardUsable:function (card,player,num){ + cardUsable:function(card,player,num){ if(card.name=='sha') return num+3; }, }, @@ -721,7 +721,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, 'drlt_jueyan2':{ mod:{ - targetInRange:function (card,player,target,now){ + targetInRange:function(card,player,target,now){ return true; }, }, @@ -731,7 +731,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, 'drlt_jueyan3':{ mod:{ - maxHandcard:function (player,num){ + maxHandcard:function(player,num){ return num+3; }, }, @@ -771,17 +771,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){ audio:2, enable:"phaseUse", position:'he', - filter:function (event,player){ + filter:function(event,player){ return player.countCards('he',{type:'equip'})>0; }, - filterCard:function (card){ + filterCard:function(card){ return get.type(card)=='equip'; }, - check:function (card){ + check:function(card){ if(_status.event.player.isDisabled(get.subtype(card))) return 5; return 3-get.value(card); }, - content:function (){ + content:function(){ player.draw(); }, discard:false, @@ -789,7 +789,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ loseTo:'discardPile', prompt:"将一张装备牌置入弃牌堆并摸一张牌", delay:0.5, - prepare:function (cards,player){ + prepare:function(cards,player){ player.$throw(cards,1000); game.log(player,'将',cards,'置入了弃牌堆'); }, @@ -848,7 +848,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, 'drlt_yongsi1':{ mod:{ - maxHandcard:function (player,num){ + maxHandcard:function(player,num){ return num+player.maxHp-2*Math.max(0,player.hp); }, }, @@ -862,7 +862,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:"phaseDiscardBegin", }, direct:true, - filter:function (event,player){ + filter:function(event,player){ if(!player.hasZhuSkill('drlt_weidi')) return false; return player.needsToDiscard()>0&&game.countPlayer(function(current){return current!=player&¤t.group=='qun'})>0; }, @@ -968,7 +968,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ delete player.storage.drlt_xiongluan1; }, mod:{ - targetInRange:function (card,player,target){ + targetInRange:function(card,player,target){ if(target.hasSkill('drlt_xiongluan2')){ return true; } @@ -1000,7 +1000,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ target:"useCardToTargeted", }, direct:true, - filter:function (event,player){ + filter:function(event,player){ return get.type(event.card)=='trick'&&event.targets.length>1&&player.countCards('he')>0; }, content:function(){ @@ -1042,7 +1042,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, "drlt_wanglie":{ mod:{ - targetInRange:function (card,player,target,now){ + targetInRange:function(card,player,target,now){ if(game.online){ if(!player.countUsed()) return true; } @@ -1129,12 +1129,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{ global:["loseAfter","addCardToStorage"], }, - filter:function (event,player){ + filter:function(event,player){ if(event.name=='lose') return event.toStorage==true; return true; }, direct:true, - content:function (){ + content:function(){ "step 0" player.chooseTarget('是否发动【良姻】令手牌数大于你的一名角色摸一张牌?',function(card,player,target){ return target!=player&&target.countCards('h')>player.countCards('h'); @@ -1153,11 +1153,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{ global:"gainAfter", }, - filter:function (event,player){ + filter:function(event,player){ return event.fromStorage==true; }, direct:true, - content:function (){ + content:function(){ "step 0" player.chooseTarget('是否发动【良姻】令手牌数小于你的一名角色弃置一张牌?',function(card,player,target){ return target!=player&&target.countCards('h')0; @@ -1180,10 +1180,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:"phaseZhunbeiBegin", }, direct:true, - filter:function (event,player){ + filter:function(event,player){ return player.countCards('he')>0; }, - content:function (){ + content:function(){ 'step 0' player.chooseCard(get.prompt2('kongsheng'),'he',[1,player.countCards('he')]).set('ai',function(card){ if(get.position(card)=='e') return 1-get.value(card); @@ -1220,11 +1220,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{ player:"phaseJieshuBegin", }, - filter:function (event,player){ + filter:function(event,player){ return player.storage.kongsheng2!=undefined&&player.storage.kongsheng2.length>0; }, forced:true, - content:function (){ + content:function(){ 'step 0' player.addTempSkill('kongsheng_ai','kongsheng2After'); event.list=[]; @@ -1281,7 +1281,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ target:'useCardToTargeted' }, prompt2:'当你成为其他角色【杀】的目标后,你可以与其各摸一张牌,然后其本回合内不能再对你使用牌。', - filter:function (event,player){ + filter:function(event,player){ return event.card.name=='sha'&&(player.storage.nzry_juzhan1==false||player.storage.nzry_juzhan1==undefined); }, logTarget:'player', @@ -1298,10 +1298,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:'useCardToPlayered' }, prompt2:'当你使用【杀】指定一名角色为目标后,你可以获得其一张牌,然后你本回合内不能再对其使用牌', - filter:function (event,player){ + filter:function(event,player){ return event.card.name=='sha'&&event.player.countGainableCards(player,'he')>0&&player.storage.nzry_juzhan1==true; }, - check:function (event,player){ + check:function(event,player){ return event.player.countCards('he')>0&&event.targets&&event.targets.length==1; }, logTarget:'target', @@ -1323,12 +1323,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, nzry_juzhany:{}, "nzry_feijun":{ - init:function (player){ + init:function(player){ player.storage.nzry_feijun=[]; }, marktext:"飞", intro:{ - content:function (storage){ + content:function(storage){ if(!storage.length) return '尚未发动'; var str=get.translation(storage); return '已对'+str+'发动过〖飞军〗'; @@ -1339,14 +1339,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ usable:1, position:"he", audio:2, - filter:function (event,player){ + filter:function(event,player){ return game.countPlayer(function(current){return current.countCards('h')>=player.countCards('h')})>0||game.countPlayer(function(current){return current.countCards('e')>player.countCards('e')})>0; }, filterCard:true, - check:function (card){ + check:function(card){ return 5-get.value(card); }, - content:function (){ + content:function(){ 'step 0' var list=[]; if(game.countPlayer(function(current){return current.countCards('h')>player.countCards('h')})>0) list.push('令一名手牌数大于你的角色交给你一张牌'); @@ -1411,7 +1411,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ ai:{ order:11, result:{ - player:function (player){ + player:function(player){ if(game.countPlayer(function(current){return (current.countCards('h')>player.countCards('h')||current.countCards('e')>player.countCards('e'))&&get.attitude(player,current)<0&&!player.storage.nzry_feijun.contains(current)})>0||game.countPlayer(function(current){return current.countCards('h')>player.countCards('h')&&get.attitude(player,current)<0})>0||(player.countCards('h')>=2&&game.countPlayer(function(current){return current.countCards('e')>player.countCards('e')&&get.attitude(player,current)<0})>0)) return 1; }, }, @@ -1477,7 +1477,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:"phaseUseBegin", }, direct:true, - content:function (){ + content:function(){ 'step 0' player.chooseTarget(get.prompt('nzry_yili'),"移去一个【橘】或失去1点体力,然后令一名其他角色获得一个【橘】",function(card,player,target){ return target!=player @@ -1515,10 +1515,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{ player:'phaseDrawBefore' }, - filter:function (event,player){ + filter:function(event,player){ return !player.hasMark('nzry_huaiju'); }, - check:function (event,player){ + check:function(event,player){ return player.countCards('h')>=2||player.skipList.contains('phaseUse'); }, content:function(){ @@ -1532,14 +1532,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:"phaseDiscardAfter", }, direct:true, - filter:function (event,player){ + filter:function(event,player){ var cards=[]; player.getHistory('lose',function(evt){ if(evt.type=='discard'&&evt.getParent('phaseDiscard')==event) cards.addArray(evt.cards2); }); return cards.length>0; }, - content:function (){ + content:function(){ 'step 0' var cards=[]; player.getHistory('lose',function(evt){ @@ -1625,7 +1625,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player:'phaseUseEnd' }, forced:true, - filter:function (event,player){ + filter:function(event,player){ return (player.getHistory('useCard',function(evt){ return evt.getParent('phaseUse')==event; }).length0&&event.source&&event.source!=player&&player.storage.nzry_shenshi==true; }, - check:function (event,player){ + check:function(event,player){ return event.source&&event.source.countCards('h')<=2&&player.countCards('h')<4; }, content:function(){ @@ -2153,7 +2153,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, forced:true, popup:false, - filter:function (event,player){ + filter:function(event,player){ return player.storage.nzry_shenshi1!=undefined&&player.storage.nzry_shenshi2!=undefined; }, content:function(){ @@ -4975,7 +4975,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ audio:2, forced:true, firstDo:true, - filter:function (event,player,card){ + filter:function(event,player,card){ if(get.color(event.card)!='black') return false; return event.card.name=='nanman'&&player!=event.player||event.card.name=='wanjian'&&player!=event.player||event.card.name=='taoyuan'&&player.hp2; }, - content:function (){ + content:function(){ player.line(trigger.player,'green'); trigger.player.draw(2); player.loseHp(); @@ -6892,7 +6892,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ derivation:["chanyuan"], group:["guhuo_guess","guhuo_respond","guhuo_wuxie"], enable:"chooseToUse", - filter:function (event,player){ + filter:function(event,player){ if(player.hasSkill('guhuo_phase'))return false; if(!player.countCards('h')) return false; var list=['sha','shan','tao','jiu','taoyuan','wugu','juedou','huogong','jiedao','tiesuo','guohe','shunshou','wuzhong','wanjian','nanman']; @@ -6905,7 +6905,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return false; }, chooseButton:{ - dialog:function (){ + dialog:function(){ var list=[]; for(var i=0;i0; }, @@ -7295,7 +7295,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, characterReplace:{ - caoren:['caoren','sp_caoren','jsp_caoren','old_caoren'], + caoren:['caoren','old_caoren'], + sp_caoren:['sp_caoren','jsp_caoren'], xiahouyuan:['ol_xiahouyuan','re_xiahouyuan','xiahouyuan'], huangzhong:['re_huangzhong','huangzhong'], weiyan:['ol_weiyan','re_weiyan','weiyan'], @@ -7306,26 +7307,27 @@ game.import('character',function(lib,game,ui,get,ai,_status){ dianwei:['dianwei','re_dianwei'], xunyu:['re_xunyu','xunyu'], sp_zhugeliang:['ol_sp_zhugeliang','re_sp_zhugeliang','sp_zhugeliang'], - pangtong:['ol_pangtong','re_jsp_pangtong','sp_pangtong','re_pangtong','pangtong'], - taishici:['re_taishici','sp_taishici','taishici'], + pangtong:['ol_pangtong','re_pangtong','pangtong'], + re_jsp_pangtong:['re_jsp_pangtong','sp_pangtong'], + taishici:['re_taishici','taishici'], re_yuanshao:['ol_yuanshao','re_yuanshao','xin_yuanshao'], - pangde:['ol_pangde','sp_pangde','re_pangde','pangde'], + pangde:['ol_pangde','re_pangde','pangde'], yanwen:['re_yanwen','yanwen'], caopi:['caopi','re_caopi'], - xuhuang:['re_xuhuang','yj_xuhuang','xuhuang'], + xuhuang:['re_xuhuang','xuhuang'], menghuo:['re_menghuo','menghuo'], zhurong:['re_zhurong','zhurong'], sunjian:['ol_sunjian','re_sunjian','sunjian'], - jiaxu:['jiaxu','sp_jiaxu','ns_jiaxu'], + jiaxu:['jiaxu','ns_jiaxu'], dongzhuo:['ol_dongzhuo','sp_dongzhuo','re_dongzhuo','dongzhuo'], dengai:['re_dengai','ol_dengai','dengai'], - zhanghe:['zhanghe','sp_zhanghe','yj_zhanghe'], - jiangwei:['re_jiangwei','sp_jiangwei','mini_jiangwei','jiangwei'], + sp_zhanghe:['sp_zhanghe','yj_zhanghe'], + jiangwei:['re_jiangwei','mini_jiangwei','jiangwei'], liushan:['ol_liushan','re_liushan','liushan'], sunce:['re_sunben','re_sunce','sunce'], zhangzhang:['re_zhangzhang','zhangzhang'], zuoci:['re_zuoci','mini_zuoci','zuoci'], - caiwenji:['re_caiwenji','sp_caiwenji','caiwenji'], + caiwenji:['re_caiwenji','caiwenji'], xuyou:['sp_xuyou','xuyou'], guanqiujian:['guanqiujian','re_guanqiujian','old_guanqiujian'], chendao:['chendao','ns_chendao'], diff --git a/character/sp.js b/character/sp.js index d2c10f39f..c0fbc037a 100755 --- a/character/sp.js +++ b/character/sp.js @@ -25,7 +25,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ caoshuang:['male','wei',4,['retuogu','shanzhuan']], ol_zhangchangpu:['female','wei',3,['yanjiao','olxingshen']], zhangling:['male','qun',3,['zlhuji','zlshoufu']], - caiyang:['male','qun',1,['yinka'],['forbidai','unseen']], + caiyang:['male','qun',1,['yinka','zhuixi'],['forbidai','unseen']], panfeng:['male','qun',4,['kuangfu']], sunshao:['male','wu',3,['bizheng','yidian']], sp_gongsunzan:['male','qun',4,['spyicong','sptuji']], @@ -132,7 +132,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ jiangqing:['male','wu',4,['shangyi','zniaoxiang']], hetaihou:['female','qun',3,['zhendu','qiluan']], kongrong:['male','qun',3,['lirang','mingshi']], - dingfeng:['male','wu',4,['fenxun','duanbing']], + dingfeng:['male','wu',4,['reduanbing','refenxun']], bianfuren:['female','wei',3,['wanwei','yuejian']], shamoke:['male','shu',4,['gzjili']], liqueguosi:['male','qun',4,['xiongsuan']], @@ -400,6 +400,172 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, skill:{ + //新丁奉 + reduanbing:{ + audio:2, + audioname:['heqi'], + trigger:{player:'useCard2'}, + filter:function(event,player){ + if(event.card.name!='sha') return false; + return game.hasPlayer(function(current){ + return !event.targets.contains(current)&&get.distance(player,current)<=1&&player.canUse(event.card,current); + }); + }, + direct:true, + content:function(){ + 'step 0' + player.chooseTarget(get.prompt('reduanbing'),'为'+get.translation(trigger.card)+'增加一个目标',function(card,player,target){ + return !_status.event.sourcex.contains(target)&&get.distance(player,target)<=1&&player.canUse(_status.event.card,target); + }).set('sourcex',trigger.targets).set('ai',function(target){ + var player=_status.event.player; + return get.effect(target,_status.event.card,player,player); + }).set('card',trigger.card); + 'step 1' + if(result.bool){ + if(!event.isMine()&&!event.isOnline()) game.delayx(); + event.target=result.targets[0]; + } + else{ + event.finish(); + } + 'step 2' + player.logSkill('reduanbing',event.target); + trigger.targets.push(event.target); + }, + ai:{ + effect:{ + player:function(card,player,target,current,isLink){ + if(!isLink&&card.name=='sha'){ + if(player._reduanbingtmp) return; + player._reduanbingtmp=true; + if(get.effect(target,card,player,player)<=0){ + delete player._reduanbingtmp; + return; + } + if(game.hasPlayer(function(current){ + return current!=target&&get.distance(player,current)<=1&& + player.canUse(card,current)&&get.effect(current,card,player,player)>0; + })){ + delete player._reduanbingtmp; + return [1,1]; + } + delete player._reduanbingtmp; + } + } + } + }, + group:'reduanbing_sha', + subSkill:{ + sha:{ + audio:'duanbing', + audioname:['heqi'], + trigger:{player:'useCardToPlayered'}, + forced:true, + filter:function(event,player){ + return event.card.name=='sha'&&!event.getParent().directHit.contains(event.target)&&get.distance(player,event.target)<=1; + }, + logTarget:'target', + content:function(){ + var id=trigger.target.playerid; + var map=trigger.getParent().customArgs; + if(!map[id]) map[id]={}; + if(typeof map[id].shanRequired=='number'){ + map[id].shanRequired++; + } + else{ + map[id].shanRequired=2; + } + }, + ai:{ + directHit_ai:true, + skillTagFilter:function(player,tag,arg){ + if(arg.card.name!='sha'||arg.target.countCards('h','shan')>1||get.distance(player,arg.target)>1) return false; + }, + }, + }, + }, + }, + refenxun:{ + audio:'fenxun', + enable:'phaseUse', + usable:1, + position:'he', + filterTarget:function(card,player,target){ + return target!=player; + }, + content:function(){ + player.markAuto('refenxun2',targets); + player.addTempSkill('refenxun2'); + }, + ai:{ + order:6.5, + result:{ + player:function(player,target){ + if(get.distance(player,target)<=1) return 0; + var hs=player.getCards('h','shunshou'); + if(hs.length&&player.canUse(hs[0],target,false)){ + return 1; + } + var geteff=function(current){ + return player.canUse('sha',current,false,true)&&get.effect(current,{name:'sha'},player,player)>0; + } + if(player.hasSha()&&geteff(target)){ + var num=game.countPlayer(function(current){ + return current!=player&&get.distance(player,current)<=1&&geteff(current); + }); + if(num==0){ + if(game.hasPlayer(function(current){ + return player.canUse('sha',current)&&geteff(current)&¤t!=target; + })){ + return 1; + } + } + else if(num==1){ + return 1; + } + } + return 0; + } + } + } + }, + refenxun2:{ + audio:'fenxun', + trigger:{ + player:'phaseJieshuBegin', + }, + forced:true, + charlotte:true, + filter:function(event,player){ + return player.getHistory('sourceDamage',function(evt){ + return player.storage.refenxun2.contains(evt.player); + }).length==0&&player.countCards('he',function(card){ + return lib.filter.cardDiscardable(card,player,'refenxun2'); + })>0; + }, + content:function(){ + player.chooseToDiscard('he',true); + }, + onremove:true, + intro:{ + content:'到$的距离视为1' + }, + mod:{ + globalFrom:function(from,to){ + if(from.storage.refenxun2.contains(to)){ + return -Infinity; + } + } + }, + }, + //蔡阳新技能 + zhuixi:{ + mod:{ + cardUsable:function(card,player,num){ + if(card.name=='sha') return num+1; + }, + }, + }, //陆郁生 zhente:{ audio:2, @@ -727,7 +893,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ '
'+get.translation(target)+'的武将牌
', [players2,'character'], ]).set('players',players1).set('complexSelect',true).set('filterButton',function(button){ - return (ui.selected.buttons.length==0)==(_status.event.players.contains(button.link)); + return !get.is.jun(button.link)&&(ui.selected.buttons.length==0)==(_status.event.players.contains(button.link)); }); 'step 2' if(result.bool){ @@ -1435,7 +1601,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ targetprompt:['打人','被打'], content:function(){ 'step 0' - player.addMark('xinlianji',1,false); + //player.addMark('xinlianji',1,false); var card=get.cardPile2(function(card){ return get.subtype(card)=='equip1'&&targets[0].hasUseTarget(card); }); @@ -1503,7 +1669,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){ derivation:'xinjingong', unique:true, filter:function(event,player){ - return player.countMark('xinlianji')>2; + return game.hasPlayer2(function(current){ + return current.getAllHistory('sourceDamage',function(evt){ + if(!evt.card||evt.card.name!='sha'||evt.getParent().type!='card') return false; + var evt2=evt.getParent(4); + return evt2&&evt2.name=='xinlianji'&&evt2.player==player; + }).length>0; + }); }, content:function(){ player.awakenSkill('xinmoucheng'); @@ -5540,7 +5712,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{player:['phaseBefore','equipEnd','loseEnd']}, forced:true, popup:false, - derivation:['mashu','reyingzi','duanbing','fenwei'], + derivation:['mashu','reyingzi','reduanbing','fenwei'], filter:function(event,player){ if(player.equiping) return false; var suits=[]; @@ -5565,8 +5737,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ switch(suits.length){ case 1:player.addAdditionalSkill('qizhou',['mashu']);break; case 2:player.addAdditionalSkill('qizhou',['mashu','reyingzi']);break; - case 3:player.addAdditionalSkill('qizhou',['mashu','reyingzi','duanbing']);break; - case 4:player.addAdditionalSkill('qizhou',['mashu','reyingzi','duanbing','fenwei']);break; + case 3:player.addAdditionalSkill('qizhou',['mashu','reyingzi','reduanbing']);break; + case 4:player.addAdditionalSkill('qizhou',['mashu','reyingzi','reduanbing','fenwei']);break; } }, ai:{ @@ -13575,7 +13747,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(event.card.name=='sha') return event.targets[0]; return event.respondTo[0]; }, - prompt2:'每当你发动“龙胆”使用或打出一张手牌时,你可以立即获得对方的一张手牌。', + prompt2:'当你因发动〖龙胆〗而使用或打出【杀】或【闪】时,你可以获得对方的一张手牌。', content:function(){ var target=lib.skill.chongzhen1.logTarget(trigger,player); player.gainPlayerCard(target,'h',true); @@ -13590,7 +13762,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return event.source&&event.source.countGainableCards(player,'h')>0; }, logTarget:'source', - prompt2:'每当你发动“龙胆”使用或打出一张手牌时,你可以立即获得对方的一张手牌。', + prompt2:'当你因发动〖龙胆〗而使用或打出【杀】或【闪】时,你可以获得对方的一张手牌。', content:function(){ player.gainPlayerCard(trigger.source,'h',true); } @@ -15555,15 +15727,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){ caoshuang:['caoshuang','ns_caoshuang'], caoang:['caoang','yj_caoang','tw_caoang'], caohong:['caohong','tw_caohong'], - xiahouba:['re_xiahouba','xiahouba'], + xiahouba:['xiahouba','tw_xiahouba'], maliang:['maliang','re_maliang','tw_maliang','ol_maliang','old_maliang'], dingfeng:['dingfeng','tw_dingfeng'], zumao:['zumao','tw_zumao'], beimihu:['tw_beimihu','beimihu'], panfeng:['re_panfeng','panfeng'], sunluyu:['sunluyu','re_sunluyu'], - jin_simazhao:['jin_simazhao','simazhao','sp_simazhao'], - wangyuanji:['jin_wangyuanji','wangyuanji','sp_wangyuanji'], + simazhao:['simazhao','sp_simazhao'], + wangyuanji:['wangyuanji','sp_wangyuanji'], wangyun:['re_wangyun','wangyun','old_wangyun'], zhangliang:['re_zhangliang','zhangliang'], lingju:['lingju','old_lingju'], @@ -16338,7 +16510,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ mizhao_info:'出牌阶段限一次,你可以将所有手牌交给一名其他角色。若如此做,你令该角色与你指定的另一名有手牌的角色拼点,视为拼点赢的角色对没赢的角色使用一张【杀】。', yuanhu_info:'结束阶段开始时,你可以将一张装备牌置于一名角色的装备区里,然后根据此装备牌的类型执行以下对应效果。武器牌:弃置该角色距离1以内的一名角色区域中的一张牌;防具牌:该角色摸一张牌;坐骑牌:该角色回复1点体力。', lihun_info:'出牌阶段限一次,你可以弃置一张牌并选择一名其他男性角色。若如此做,你将武将牌翻面并获得其所有手牌。出牌阶段结束时,你交给其X张牌。(X为该角色的体力值)', - chongzhen_info:'当你发动〖龙胆〗使用或打出一张牌时,你可以获得对方的一张手牌。', + chongzhen_info:'当你因发动〖龙胆〗而使用或打出【杀】或【闪】时,你可以获得对方的一张手牌。', bifa_info:'结束阶段开始时,你可以将一张手牌移出游戏并指定一名其他角色。该角色的准备阶段开始时,其观看你移出游戏的牌并选择一项:交给你一张与此牌类型相同的手牌并获得此牌;或将此牌置入弃牌堆,然后失去1点体力。', songci_info:'①出牌阶段,你可以选择一名未以此法选择过的角色。若其手牌数:大于其体力值,其弃置两张牌;不小于其体力值,其摸两张牌。②弃牌阶段结束时,若你已对场上所有存活角色发动过〖颂词①〗,则你摸一张牌。', yongsi_info:'锁定技,摸牌阶段,你多摸X张牌。弃牌阶段开始时,你弃置X张牌。(X为场上势力数)', @@ -16381,7 +16553,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ xinlianji:'连计', xinlianji_info:'出牌阶段限一次,你可以弃置一张手牌,令一名角色使用牌堆中的一张随机武器牌。然后其选择一项:对你指定的一名角色使用一张【杀】,或令你将其装备区里的武器牌交给任意角色。', xinmoucheng:'谋逞', - xinmoucheng_info:'觉醒技,准备阶段,若你已经发动了3次以上的〖连计〗,则你失去〖连计〗并获得〖矜功〗。', + xinmoucheng_info:'觉醒技,准备阶段,若有角色因你发动〖连计〗使用【杀】而造成过伤害,则你失去〖连计〗并获得〖矜功〗。', xinjingong:'矜功', xinjingong_backup:'矜功', xinjingong_info:'出牌阶段限一次,你可以将一张【杀】或装备牌当做三张随机锦囊牌中的一张使用。', @@ -16436,8 +16608,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){ zhente_info:'每回合限一次,当你成为其他角色使用黑色基本牌或黑色普通锦囊牌的目标后,你可令使用者选择一项:1.本回合不能再使用黑色牌;2.此牌对你无效。 ', zhiwei:'至微', zhiwei2:'至微', - zhiwei_info:'游戏开始时,你选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。 ', + zhiwei_info:'游戏开始时,你选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。', zhiwei_info_guozhan:'你明置此武将牌时,选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。该角色死亡时,若你的两个武将牌均明置,你暗置此武将牌。 ', + zhuixi:'追袭', + zhuixi_info:'锁定技,你使用【杀】的次数上限+1。', + reduanbing:'短兵', + reduanbing_info:'你使用【杀】选择目标后,可以为此【杀】增加一名距离为1的额外目标。你对距离为1的角色使用的【杀】需两张【闪】才能抵消。', + refenxun:'奋迅', + refenxun2:'奋迅', + refenxun_info:'出牌阶段限一次,你可以选择一名其他角色,然后本回合你计算与其的距离视为1;结束阶段开始时,若你未对其造成过伤害,你弃一张牌。', sp_default:"常规", sp_zhongdan:"忠胆英杰", diff --git a/character/sp2.js b/character/sp2.js index 91d6f64a1..f2b91197b 100644 --- a/character/sp2.js +++ b/character/sp2.js @@ -4,6 +4,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ name:'sp2', connect:true, character:{ + zhaozhong:['male','qun',6,['yangzhong','huangkong']], fanyufeng:['female','qun',3,['bazhan','jiaoying']], ol_lisu:['male','qun',3,['qiaoyan','xianzhu']], jin_yanghuiyu:['female','jin',3,['huirong','ciwei','caiyuan'],['hiddenSkill','unseen']], @@ -100,7 +101,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_guandu:["sp_zhanghe","xunchen","sp_shenpei","gaolan","lvkuanglvxiang","chunyuqiong","sp_xuyou"], sp_huangjin:['liuhong','zhujun','re_hejin','re_hansui','liubian'], sp_fadong:['ol_dingyuan','wangrong','re_quyi','hanfu'], - sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','re_liuzan','re_sunluyu','caobuxing','ol_yujin','re_maliang','xin_baosanniang','re_xinxianying','dongxie','guozhao','fanyufeng'], + sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','re_liuzan','re_sunluyu','caobuxing','ol_yujin','re_maliang','xin_baosanniang','re_xinxianying','dongxie','guozhao','fanyufeng','zhaozhong'], sp_mini:["mini_sunquan","mini_zuoci","mini_jiangwei","mini_diaochan","mini_zhangchunhua"], sp_luanwu:["ns_lijue","ns_zhangji","ns_fanchou"], sp_yongjian:["ns_chendao","yj_caoang"], @@ -108,6 +109,42 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, skill:{ + //赵忠 + yangzhong:{ + trigger:{ + source:'damageSource', + player:'damageEnd', + }, + direct:true, + filter:function(event,player){ + var target=event.player,source=event.source; + if(player!=source&&!player.hasSkill('yangzhong')) return false; + if(!target||!source||!target.isAlive()||!source.isAlive()) return false; + return source.countCards('he')>1; + }, + content:function(){ + 'step 0' + trigger.source.chooseToDiscard('是否对'+get.translation(trigger.player)+'发动【殃众】?','弃置两张牌,并令其失去1点体力','he',2).set('ai',function(card){ + var evt=_status.event; + if(get.attitude(evt.player,evt.getTrigger().player)>=0) return 0; + return 7-get.value(card); + }).logSkill=['yangzhong',trigger.player]; + 'step 1' + if(result.bool) trigger.player.loseHp(); + }, + }, + huangkong:{ + trigger:{target:'useCardToTargeted'}, + forced:true, + filter:function(event,player){ + if(player==_status.currentPhase||event.targets.length!=1||player.countCards('h')) return false; + var type=get.type(event.card); + return ((type=='basic'||type=='trick')&&get.tag(event.card,'damage')>0); + }, + content:function(){ + player.draw(2); + }, + }, //樊玉凤 bazhan:{ audio:2, @@ -374,10 +411,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ event.cards=player.storage.qiaoyan; player.chooseTarget(true,'请选择【献珠】的目标','令一名角色获得'+get.translation(event.cards)+'。若该角色不为你自己,则你令其视为对其攻击范围内的另一名角色使用【杀】').set('ai',function(target){ var player=_status.event.player; - var eff=get.sgn(get.attitude(player,target))*get.value(_status.event.getParent().cards); - if(player!=target) eff+=Math.max.apply(null,game.filterPlayer().map(function(current){ - if(current!=target&&target.inRange(current)&&target.canUse('sha',current)) return get.effect(current,{name:'sha'},target,player); - return 0; + var eff=get.sgn(get.attitude(player,target))*get.value(_status.event.getParent().cards[0],target); + if(player!=target) eff+=Math.max.apply(null,game.filterPlayer(function(current){ + if(current!=target&&target.inRange(current)&&target.canUse('sha',current)) return true; + }).map(function(current){ + return get.effect(current,{name:'sha'},target,player); })); return eff; }); @@ -9186,6 +9224,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ shibao:'石苞(?~273年),字仲容,渤海南皮(今河北省南皮县)人。三国时曹魏至西晋重要将领,西晋开国功臣。西晋建立后,历任大司马、侍中、司徒等职,封乐陵郡公,卒后谥号为“武”。', caoanmin:'曹安民(?-197年),沛国谯县(今安徽亳州)人,字安民。东汉时期人物,曹德之子,曹操之侄,曹昂的堂兄弟,曹丕的堂兄,死于宛城之战。按曹丕《典论》记载的“亡兄孝廉子脩、从兄安民遇害。”等情况来看,安民应该是曹操侄子错不了,曹丕是他们属于兄弟关系肯定不会弄错。另外从典论的记载来看安民是和子脩并提的,子脩是曹昂的字,安民则肯定也是字不是名,至于三国志中记载则应取自曹丕之《典论》但陈寿又不知曹安民其名,故写为“长子昂、弟子安民”。', fanyufeng:'樊夫人,东汉末年人物,昔桂阳太守赵范寡嫂。赵云随刘备平定江南四郡后,刘备以赵云为桂阳太守。赵范居心叵测,要将自己的嫂嫂樊氏嫁给赵云,但遭到赵云的拒绝。后来,赵范逃走,樊氏也下落不明。2001年,应日本日中青少年文化中心成立50周年之邀,北京京剧院赴日进行40场巡回演出,这次访日的剧目都不同程度地进行了加工改编,以符合日本观众的需求。《取桂阳》是根据老本重新排演的,叶金援饰赵云,王怡饰樊玉凤。剧中的樊玉凤成为文武双全的巾帼英雄,被赵云收降,后来在《龙凤呈祥》中也参与堵截东吴的追兵。', + zhaozhong:'赵忠(?—189年),安平人,东汉末年宦官,赵延之兄。桓帝、灵帝时,历为小黄门、中常侍、大长秋、车骑将军等职,封都乡侯。在职时以搜刮暴敛、骄纵贪婪见称,灵帝极为宠信,常谓“赵常侍是我母”。中平六年(189年),何进谋诛宦官,事泄,他和其余几个常侍设计伏杀何进,袁绍、袁术等人闻何进被杀,入宫杀尽宦官,后捕杀赵忠。', }, characterTitle:{ wulan:'#b对决限定武将', @@ -9251,8 +9290,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ dingyuan:['ol_dingyuan','dingyuan'], quyi:['quyi','re_quyi'], hansui:['xin_hansui','re_hansui'], - jin_simashi:['jin_simashi','simashi'], - jin_yanghuiyu:['jin_yanghuiyu','yanghuiyu'], + //jin_simashi:['jin_simashi','simashi'], + //jin_yanghuiyu:['jin_yanghuiyu','yanghuiyu'], chunyuqiong:['chunyuqiong','re_chunyuqiong'], }, translate:{ @@ -9777,6 +9816,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ jiaoying3:'醮影', jiaoying3_draw:'醮影', jiaoying_info:'锁定技,其他角色获得你的手牌后,该角色本回合不能使用或打出与此牌颜色相同的牌。然后此回合结束时,若其本回合没有再使用牌,你令一名角色将手牌摸至体力上限(至多摸至五张)。', + zhaozhong:'赵忠', + yangzhong:'殃众', + yangzhong_info:'当你造成或受到伤害后,若受伤角色和伤害来源均存活,则伤害来源可弃置两张牌,然后令受伤角色失去1点体力。', + huangkong:'惶恐', + huangkong_info:'锁定技,当你于回合外成为【杀】或伤害类锦囊牌的唯一目标后,若你没有手牌,则你摸两张牌。', sp_yingbian:'文德武备', sp_whlw:"文和乱武", diff --git a/character/standard.js b/character/standard.js index 394e5a53d..2044a4761 100755 --- a/character/standard.js +++ b/character/standard.js @@ -2687,28 +2687,33 @@ game.import('character',function(lib,game,ui,get,ai,_status){ characterReplace:{ caocao:['re_caocao','caocao'], guojia:['re_guojia','guojia'], - simayi:['jin_simayi','re_simayi','junk_simayi','simayi'], + simayi:['re_simayi','simayi'], + jin_simayi:['jin_simayi','junk_simayi'], zhenji:['re_zhenji','zhenji'], xuzhu:['re_xuzhu','xuzhu'], - zhangliao:['re_zhangliao','sp_zhangliao','yj_zhangliao','zhangliao'], - xiahoudun:['re_xiahoudun','sp_xiahoudun','xin_xiahoudun','xiahoudun'], - liubei:['re_liubei','sp_liubei','liubei'], - guanyu:['re_guanyu','jsp_guanyu','guanyu'], - zhangfei:['re_zhangfei','sp_zhangfei','xin_zhangfei','old_zhangfei','zhangfei'], - zhaoyun:['re_zhaoyun','sp_zhaoyun','jsp_zhaoyun','old_zhaoyun','zhaoyun'], - machao:['re_machao','sp_machao','machao','old_machao'], + zhangliao:['re_zhangliao','zhangliao'], + sp_zhangliao:['sp_zhangliao','yj_zhangliao'], + xiahoudun:['re_xiahoudun','xin_xiahoudun','xiahoudun'], + liubei:['re_liubei','liubei'], + guanyu:['re_guanyu','guanyu'], + zhangfei:['re_zhangfei','xin_zhangfei','old_zhangfei','zhangfei'], + zhaoyun:['re_zhaoyun','old_zhaoyun','zhaoyun'], + sp_zhaoyun:['sp_zhaoyun','jsp_zhaoyun'], + machao:['re_machao','machao'], + sp_machao:['sp_machao','old_machao'], zhugeliang:['re_zhugeliang','zhugeliang'], - huangyueying:['re_huangyueying','jsp_huangyueying','huangyueying'], + huangyueying:['re_huangyueying','huangyueying'], sunquan:['re_sunquan','mini_sunquan','sunquan'], zhouyu:['re_zhouyu','zhouyu'], luxun:['re_luxun','luxun'], - lvmeng:['re_lvmeng','sp_lvmeng','lvmeng'], + lvmeng:['re_lvmeng','lvmeng'], huanggai:['re_huanggai','huanggai'], - daqiao:['re_daqiao','sp_daqiao','daqiao'], - sunshangxiang:['re_sunshangxiang','sp_sunshangxiang','sunshangxiang'], - ganning:['re_ganning','yj_ganning','sp_ganning','ganning'], + daqiao:['re_daqiao','daqiao'], + sunshangxiang:['re_sunshangxiang','sunshangxiang'], + ganning:['re_ganning','ganning'], + yj_ganning:['yj_ganning','sp_ganning'], lvbu:['re_lvbu','lvbu'], - diaochan:['re_diaochan','sp_diaochan','mini_diaochan','diaochan'], + diaochan:['re_diaochan','mini_diaochan','diaochan'], huatuo:['re_huatuo','old_huatuo','huatuo'], huaxiong:['re_huaxiong','old_huaxiong','huaxiong','ol_huaxiong'], yuanshu:['yl_yuanshu','yuanshu','re_yuanshu','old_yuanshu','ol_yuanshu'], diff --git a/character/yijiang.js b/character/yijiang.js index 8435bc50a..c412545c3 100755 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -12052,7 +12052,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, characterReplace:{ caozhi:['re_caozhi','caozhi'], - zhangchunhua:['jin_zhangchunhua','zhangchunhua','mini_zhangchunhua'], + zhangchunhua:['zhangchunhua','mini_zhangchunhua'], yujin:['yujin_yujin','re_yujin','ol_yujin','xin_yujin','yujin'], xushu:['re_xushu','xin_xushu','xushu'], fazheng:['re_fazheng','xin_fazheng','fazheng'], @@ -12087,7 +12087,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sunluban:['re_sunluban','sunluban'], zhuhuan:['zhuhuan','old_zhuhuan'], caoxiu:['re_caoxiu','caoxiu','old_caoxiu'], - xiahoushi:['xiahoushi','sp_xiahoushi'], + //xiahoushi:['xiahoushi','sp_xiahoushi'], zhangyi:['re_zhangyi','zhangyi'], quancong:['re_quancong','quancong','old_quancong'], sunxiu:['re_sunxiu','sunxiu'], diff --git a/game/asset.js b/game/asset.js index 7382a6449..d7302233d 100644 --- a/game/asset.js +++ b/game/asset.js @@ -1,5 +1,5 @@ window.noname_asset_list=[ - 'v1.9.109.3.2', + 'v1.9.109.3.3', 'audio/background/aozhan_chaoming.mp3', 'audio/background/aozhan_online.mp3', 'audio/background/aozhan_rewrite.mp3', @@ -3825,6 +3825,7 @@ window.noname_asset_list=[ 'image/character/key_yukito.jpg', 'image/character/fanyufeng.jpg', 'image/character/ol_lisu.jpg', + 'image/character/zhaozhong.jpg', 'image/character/baiwuchang.jpg', 'image/character/baosanniang.jpg', diff --git a/game/game.js b/game/game.js index 0b3da0ffc..cc006fa33 100644 --- a/game/game.js +++ b/game/game.js @@ -6772,6 +6772,7 @@ if(type=='character'){ if(lib.characterPack['mode_'+mode]&&lib.characterPack['mode_'+mode][name]){ if(mode=='guozhan'){ + nameinfo=lib.character[name]; if(name.indexOf('gz_shibing')==0){ name=name.slice(3,11); } @@ -10106,6 +10107,7 @@ event.trigger('showCharacterEnd'); 'step 1' event.trigger('showCharacterAfter'); + if(get.mode()=='identity'&&player.isZhu) event.trigger('zhuUpdate'); }, removeCharacter:function(){ player.$removeCharacter(event.num); @@ -20243,7 +20245,15 @@ if(lib.translate[name]){ this.trySkillAnimate(name,popname,checkShow); if(typeof targets=='object'&&targets.length){ - var str=(targets[0]==this?'#b自己':targets); + var str; + if(targets[0]==this){ + str='#b自己'; + if(targets.length>1){ + str+='、'; + str+=get.translation(targets.slice(1)); + } + } + else str=targets; game.log(this,'对',str,'发动了','【'+get.skillTranslation(name,this)+'】'); } else{ diff --git a/game/update.js b/game/update.js index b74a6fbcf..96afc3f2d 100644 --- a/game/update.js +++ b/game/update.js @@ -1,15 +1,16 @@ window.noname_update={ - version:'1.9.109.3.2', - update:'1.9.109.3.1', + version:'1.9.109.3.3', + update:'1.9.109.3.2', changeLog:[ - '樊玉凤、李肃', - '国战杜预、张虎乐綝、王元姬', + '赵忠', + '新丁奉', + '同名武将替换体系拆分', 'bug修复', ], files:[ //'card/extra.js', //'card/gujian.js', - 'card/guozhan.js', + //'card/guozhan.js', //'card/gwent.js', //'card/huanlekapai.js', //'card/mtg.js', @@ -21,7 +22,7 @@ window.noname_update={ //'card/zhenfa.js', //'card/zhulu.js', //'character/diy.js', - //'character/extra.js', + 'character/extra.js', //'character/hearth.js', //'character/gujian.js', //'character/gwent.js', @@ -32,22 +33,22 @@ window.noname_update={ //'character/ow.js', 'character/rank.js', //'character/refresh.js', - //'character/shenhua.js', + 'character/shenhua.js', 'character/sp.js', 'character/sp2.js', //'character/tw.js', - //'character/standard.js', + 'character/standard.js', //'character/swd.js', //'character/xianjian.js', //'character/xinghuoliaoyuan.js', - //'character/yijiang.js', + 'character/yijiang.js', //'character/yxs.js', //'extension/boss/extension.js', //'layout/default/layout.css', //'layout/default/menu.css', //'layout/nova/layout.css', //'mode/boss.js', - //'mode/brawl.js', + 'mode/brawl.js', //'mode/chess.js', //'mode/doudizhu.js', 'mode/guozhan.js', diff --git a/image/character/zhaozhong.jpg b/image/character/zhaozhong.jpg new file mode 100644 index 000000000..7ec648ef7 Binary files /dev/null and b/image/character/zhaozhong.jpg differ diff --git a/mode/brawl.js b/mode/brawl.js index ef0760f45..a5c09ead5 100644 --- a/mode/brawl.js +++ b/mode/brawl.js @@ -2654,6 +2654,29 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ ['在下一关中召唤胡班一同战斗',function(){ _status.qianlidanji.addFellow('huban'); }], + ['将一张宝物牌置入装备区并摸一张牌',function(){ + var card=get.cardPile(function(card){ + return get.subtype(card)=='equip5'&&!get.cardtag(card,'gifts'); + }); + if(card) game.zhu.equip(card); + game.zhu.draw(); + }], + ['摸五张牌,然后将自己翻面',function(){ + game.zhu.draw(5); + game.zhu.turnOver(true); + }], + ['获得一张【酒】和一张【杀】',function(){ + var list=[]; + var card=get.cardPile(function(card){ + return card.name=='sha'; + }); + if(card) list.push(card); + var card=get.cardPile(function(card){ + return card.name=='jiu'; + }); + if(card) list.push(card); + if(list.length) game.zhu.gain(list,'gain2','log'); + }], ], replace_character:function(){ 'step 0' @@ -2941,7 +2964,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ character:{ pujing:['male','qun',1,[],[]], huban:['male','qun',2,[],[]], - caiyang:['male','qun',1,[],[]], + caiyang:['male','qun',1,['zhuixi'],[]], }, translate:{ pujing:'普净', diff --git a/mode/guozhan.js b/mode/guozhan.js index 25d3444a5..38ee67c23 100644 --- a/mode/guozhan.js +++ b/mode/guozhan.js @@ -299,7 +299,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ '6':[ 'gz_zhenji','gz_guojia','gz_yujin', 'gz_jiangwei','gz_zhangfei','gz_sp_zhugeliang', - 'gz_zhouyu','gz_lingcao','gz_daqiao','gz_luyusheng', + 'gz_zhouyu','gz_lingcao','gz_daqiao','gz_dingfeng', 'gz_yuji','gz_caiwenji','gz_diaochan','gz_zuoci', ], '5':[ @@ -326,7 +326,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ '2':[ 'gz_cuimao','gz_xiahouyuan','gz_caohong', 'gz_zhurong','gz_zhurong','gz_jiangfei', - 'gz_xusheng','gz_dingfeng','gz_sunjian', + 'gz_xusheng','gz_luyusheng','gz_sunjian', 'gz_zhangren','gz_kongrong','gz_yanwen', 'gz_jin_simayi', ], @@ -419,7 +419,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ gz_zhoutai:['male','wu',4,['buqu','new_fenji']], gz_re_lusu:['male','wu',3,['haoshi','dimeng']], gz_zhangzhang:['male','wu',3,['zhijian','guzheng']], - gz_dingfeng:['male','wu',4,['fenxun','duanbing'],['gzskin']], + gz_dingfeng:['male','wu',4,['reduanbing','refenxun'],['gzskin']], gz_huatuo:['male','qun',3,['new_chuli','jijiu']], gz_lvbu:['male','qun',5,['wushuang'],['gzskin']], @@ -5386,7 +5386,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ return player.countCards('h'); }, filterTarget:function(card,player,target){ - return target.sameIdentityAs(player); + return target.isFriendOf(player); }, check:function(card){ return 7-get.value(card); @@ -7106,10 +7106,10 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ if(config.inline){ var next=target.getNext(); var previous=target.getPrevious(); - return (next==player||previous==player||next&&next.inline(player)||previous&&previous.inline(player)) + if(next==player||previous==player||next&&next.inline(player)||previous&&previous.inline(player)) return true; } - else if(config.siege){ - return (target==player.getNext().getNext()||target==player.getPrevious().getPrevious()); + if(config.siege){ + if(target==player.getNext().getNext()||target==player.getPrevious().getPrevious()) return true; } return false; }, @@ -7133,7 +7133,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ if(lib.skill._zhenfazhaohuan.getConfig(player,event.current)){ player.line(event.current,'green'); if(event.current._group==player.group&&event.current.wontYe()){ - event.current.chooseControl('明置主将','明置副将','取消').set('prompt','是否响应'+get.translation(player)+'的阵法召唤?').ai=function(){return Math.floor(Math.random()*3)}; + event.current.chooseControl('明置主将','明置副将','取消').set('prompt','是否响应'+get.translation(player)+'的阵法召唤?').ai=function(){return Math.floor(Math.random()*2)}; } else event.goto(3); }