diff --git a/character/diy.js b/character/diy.js old mode 100644 new mode 100755 index 266bc7975..2c3986e77 --- a/character/diy.js +++ b/character/diy.js @@ -21,7 +21,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ // diy_weiyan:['male','shu',4,['diykuanggu']], diy_zhenji:['female','wei',3,['diy_jiaoxia','yiesheng']], // diy_menghuo:['male','shu',4,['huoshou','zaiqix']], - re_huangyueying:['female','shu',3,['rejizhi','qicai']], + //re_huangyueying:['female','shu',3,['rejizhi','qicai']], diy_liufu:['male','wei',3,['zhucheng','duoqi']], diy_xizhenxihong:['male','shu',4,['fuchou','jinyan']], @@ -78,7 +78,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, characterIntro:{ diy_feishi:'字公举,生卒年不详,益州犍为郡南安县(今四川省乐山市)人。刘璋占据益州时,以费诗为绵竹县县令。刘备进攻刘璋夺取益州,费诗举城而降,后受拜督军从事,转任牂牁郡太守,再为州前部司马。', - diy_liuyan:'字元海,新兴(今山西忻州北)人,匈奴族,匈奴首领冒顿单于之后[1] ,南匈奴单于于夫罗之孙,左贤王刘豹之子,母呼延氏,十六国时期前赵政权开国皇帝,304年-310年在位。', + //diy_liuyan:'字元海,新兴(今山西忻州北)人,匈奴族,匈奴首领冒顿单于之后[1] ,南匈奴单于于夫罗之孙,左贤王刘豹之子,母呼延氏,十六国时期前赵政权开国皇帝,304年-310年在位。', diy_lukang:'字幼节,吴郡吴县(今江苏苏州)人。三国时期吴国名将,丞相陆逊次子。', diy_liufu:'字元颖,沛国相县(今安徽濉溪县西北)人。东汉末年名守。在汉末避难于淮南,说服袁术将戚寄和秦翊率部投奔曹操,曹操大悦,使司徒辟其为掾属。', diy_xizhenxihong:'习珍,襄阳人。三国时蜀汉将领。先主刘备时曾任零陵北部都尉,加裨将军。建安二十四年,关羽率荆州大军攻打樊城,唯有习珍据城不降。被困月余,直到箭尽粮绝,拔剑自刎而死。习宏,生卒年不详,习珍之弟。曾在东吴入侵蜀汉时建议哥哥习珍伪降,约樊胄举兵。习珍死后,弟弟习宏落在东吴,有问必不答,终身不为孙权发一言。', diff --git a/character/extra.js b/character/extra.js old mode 100644 new mode 100755 index 07a61dd1f..e6d25ebc7 --- a/character/extra.js +++ b/character/extra.js @@ -11,6 +11,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ shen_simayi:['male','shen',4,['renjie','sbaiyin','lianpo'],['wei']], shen_caocao:['male','shen',3,['guixin','feiying'],['wei']], shen_lvbu:['male','shen',5,['baonu','wumou','ol_wuqian','ol_shenfen'],['qun']], + "shen_liubei":["male","shen",6,["nzry_longnu","nzry_jieying"],["shu"]], + "shen_luxun":["male","shen",4,["nzry_junlve","nzry_cuike","nzry_dinghuo"],["wu"]], }, characterIntro:{ shen_guanyu:'关羽,字云长。曾水淹七军、擒于禁、斩庞德、威震华夏,吓得曹操差点迁都躲避,但是东吴偷袭荆州,关羽兵败被害。后传说吕蒙因关羽之魂索命而死。', @@ -436,7 +438,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, jilue:{ unique:true, - group:['jilue_guicai','jilue_fangzhu','jilue_wansha','jilue_zhiheng','jilue_jizhi'] + group:['jilue_guicai','jilue_fangzhu','jilue_wansha','jilue_zhiheng','jilue_jizhi','rezhiheng_draw','jilue_jizhi_clear'] }, jilue_guicai:{ audio:true, @@ -447,7 +449,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, content:function(){ "step 0" - player.chooseCard('是否弃置一枚“忍”,并发动【鬼才】?').ai=function(card){ + player.chooseCard('是否弃置一枚“忍”,并发动【鬼才】?','he').ai=function(card){ var trigger=_status.event.parent._trigger; var player=_status.event.player; var result=trigger.judge(card)-trigger.judge(trigger.player.judging[0]); @@ -546,12 +548,23 @@ game.import('character',function(lib,game,ui,get,ai,_status){ position:'he', filterCard:true, selectCard:[1,Infinity], - prompt:'弃置一枚“忍”,然后弃置任意张牌并摸等量的牌', - check:function(card){return 6-get.value(card)}, + prompt:'弃置一枚“忍”,然后弃置任意张牌并摸等量的牌。若弃置了所有的手牌,则可以多摸一张牌。', + check:function(card){ + var player=_status.event.player; + if(get.position(card)=='h'&&!player.countCards('h',function(card){ + return get.value(card)>=8; + })){ + return 8-get.value(card); + } + return 6-get.value(card) + }, content:function(){ + 'step 0' player.storage.renjie--; player.updateMarks(); - player.draw(cards.length); + event.num=player.hasSkill('rezhiheng_delay')?1:0; + 'step 1' + player.draw(event.num+cards.length); }, ai:{ order:1, @@ -578,13 +591,50 @@ game.import('character',function(lib,game,ui,get,ai,_status){ filter:function(event,player){ return (get.type(event.card)=='trick'&&event.cards[0]&&event.cards[0]==event.card)&&player.storage.renjie>0; }, + init:function(player){ + player.storage.jilue_jizhi=0; + }, content:function(){ + 'step 0' player.storage.renjie--; player.updateMarks(); player.draw(); + 'step 1' + event.card=result[0]; + if(get.type(event.card)=='basic'){ + player.chooseBool('是否弃置'+get.translation(event.card)+'并令本回合手牌上限+1?').set('ai',function(evt,player){ + return _status.currentPhase==player&&player.needsToDiscard(-3)&&_status.event.value<6; + }).set('value',get.value(event.card,player)); + } + 'step 2' + if(result.bool){ + player.discard(event.card); + player.storage.jilue_jizhi++; + if(_status.currentPhase==player){ + player.markSkill('jilue_jizhi'); + } + } }, ai:{ threaten:1.4 + }, + mod:{ + maxHandcard:function(player,num){ + return num+player.storage.jilue_jizhi; + } + }, + intro:{ + content:'本回合手牌上限+#', + }, + subSkill:{ + clear:{ + trigger:{global:'phaseAfter'}, + silent:true, + content:function(){ + player.storage.jilue_jizhi=0; + player.unmarkSkill('jilue_jizhi'); + } + } } }, wushen:{ @@ -1573,9 +1623,300 @@ game.import('character',function(lib,game,ui,get,ai,_status){ order:10, expose:0.4, } - } + }, + + "nzry_longnu":{ + mark:true, + locked:true, + marktext:'龙', + intro:{ + content:function(storage,player,skill){ + if(player.storage.nzry_longnu==true) return '锁定技,出牌阶段开始时,你减1点体力上限并摸一张牌,然后本回合你的锦囊牌均视为雷杀且无使用次数限制'; + return '锁定技,出牌阶段开始时,你流失一点体力并摸一张牌,然后本回合你的红色手牌均视为火杀且无距离限制'; + }, + }, + audio:2, + trigger:{ + player:'phaseUseBegin' + }, + forced:true, + content:function(){ + if(player.storage.nzry_longnu==true){ + player.storage.nzry_longnu=false; + player.loseMaxHp(); + player.draw(); + player.addTempSkill('nzry_longnu_2',{player:'phaseAfter'}); + }else{ + player.storage.nzry_longnu=true; + player.loseHp(); + player.draw(); + player.addTempSkill('nzry_longnu_1',{player:'phaseAfter'}); + }; + }, + 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; + }, + 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; + }, + targetInRange:function(card){ + if((card.name=='sha'&&card.nature=='fire')||_status.event.skill=='nzry_longnu_1') 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){ + if(get.tag(card,'respondSha')&¤t<0) return 0.6 + } + }, + 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; + }, + 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; + }, + 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){ + if(get.tag(card,'respondSha')&¤t<0) return 0.6 + } + }, + respondSha:true, + order:4, + useful:-1, + value:-1 + }, + }, + }, + }, + "nzry_jieying":{ + audio:2, + init:function(player){ + if(!player.isLinked()){ + player.link(); + player.logSkill('nzry_jieying'); + }; + }, + group:["nzry_jieying_1","nzry_jieying_2"], + subSkill:{ + '1':{ + audio:2, + trigger:{ + player:'linkAfter' + }, + forced:true, + filter:function (event,player){ + return !player.isLinked(); + }, + content:function(){ + setTimeout(function(){ + if(!player.isLinked()) player.link(); + },1200); + }, + }, + '2':{ + audio:2, + trigger:{ + player:'phaseEnd', + }, + direct:true, + content:function(){ + "step 0" + player.chooseTarget(true,get.prompt('nzry_jieying'),function(card,player,target){ + return target!=player; + }).ai=function(target){ + if(!target.isLinked()) return get.attitude(player,target); + return 1; + }; + "step 1" + if(result.bool){ + player.line(result.targets); + player.logSkill('nzry_jieying'); + result.targets[0].link(); + }else{ + event.finish(); + }; + }, + }, + }, + }, + "_nzry_jieying":{ + mod:{ + maxHandcard:function (player,num){ + if(game.countPlayer(function(current){return current.hasSkill('nzry_jieying')})>0&&player.isLinked()) return num+2; + }, + }, + }, + "nzry_junlve":{ + audio:2, + init:function(player){ + if(!player.storage.nzry_junlve) player.storage.nzry_junlve=0; + }, + marktext:"军", + intro:{ + content:'当前有#个“军略”标记', + }, + mark:true, + trigger:{ + player:"damageAfter", + source:"damageAfter", + }, + forced:true, + content:function(){ + player.storage.nzry_junlve++; + player.syncStorage('nzry_junlve'); + game.log(player,'获得一个“军略”标记'); + }, + }, + "nzry_cuike":{ + audio:2, + trigger:{ + player:"phaseUseBegin", + }, + direct:true, + content:function(){ + 'step 0' + if(player.storage.nzry_junlve%2==1){ + player.chooseTarget('是否发动【摧克】来对一名角色造成一点伤害?').ai=function(target){ + return -get.attitude(player,target); + }; + }else if(player.storage.nzry_junlve%2==0){ + player.chooseTarget('是否发动【摧克】来横置一名角色并弃置其区域内的一张牌?').ai=function(target){ + return -get.attitude(player,target); + }; + }else{ + event.finish(); + }; + 'step 1' + if(result.bool){ + player.line(result.targets); + player.logSkill('nzry_cuike'); + if(player.storage.nzry_junlve%2==1){ + result.targets[0].damage(); + }else{ + result.targets[0].link(); + player.discardPlayerCard(result.targets[0],1,'hej'); + }; + }; + 'step 2' + if(player.storage.nzry_junlve>7){ + player.chooseBool().set('ai',function(){ + return true; + }).set('prompt','是否弃置所有“军略”标记并对所有其他角色造成一点伤害?'); + }else{ + event.finish(); + }; + 'step 3' + if(result.bool){ + player.line(game.players); + player.logSkill('nzry_cuike'); + player.storage.nzry_junlve=0; + player.syncStorage('nzry_junlve'); + game.log(player,'移去了所有“军略”标记'); + for(var i=0;i0; + }, + check:function (event,player){ + var num=game.countPlayer(function(current){return get.attitude(player,current)<0&¤t.isLinked()}); + return player.storage.nzry_junlve>=num&&num==game.countPlayer(function(current){return get.attitude(player,current)<0}); + }, + content:function (){ + 'step 0' + player.awakenSkill('nzry_dinghuo'); + player.storage.nzry_dinghuo=true; + player.chooseTarget([0,player.storage.nzry_junlve],'请选择【绽火】的目标',function(card,player,target){ + return target.isLinked(); + }).ai=function(target){ + return -get.attitude(player,target); + }; + 'step 1' + if(result.bool){ + player.line(result.targets); + player.storage.nzry_junlve=0; + player.syncStorage('nzry_junlve'); + game.log(player,'移去了所有“军略”标记'); + for(var i=0;i0){ + return att+Math.max(0,5-target.countCards('h')); + } + return att; + }).set('du',event.card.name=='du').set('same',event.same); + "step 1" + if(result.targets){ + player.line(result.targets,'green'); + result.targets[0].gain(event.card,'gain2'); + if(!event.same) player.chooseToDiscard(true); + } + }, + ai:{ + effect:{ + target:function (card,player){ + if(get.tag(card,'respond')&&player.countCards('h')>1) return [1,0.2]; + }, + }, + }, + }, + "new_liyu":{ + audio:"liyu", + trigger:{ + source:"damageEnd", + }, + filter:function (event,player){ + if(event._notrigger.contains(event.player)) return false; + return event.card&&event.card.name=='sha'&&event.player.isAlive()&&event.player.countGainableCards(player,'he')>0; + }, + direct:true, + content:function (){ + 'step 0' + player.gainPlayerCard(get.prompt('new_liyu',trigger.player),trigger.player,'he').set('ai',function(card){ + var player=_status.event.player; + var evt=_status.event.target; + if(get.type(card)=='equip'){ + if(get.attitude(player,evt)>0&&game.hasPlayer(function(current){ + return (player.canUse({name:'juedou'},current)&¤t!=evt.target&&get.effect(current,{name:'juedou'},player,player)>2); + })){ + return 5; + } + else if(game.hasPlayer(function(current){ + return (player.canUse({name:'juedou'},current)&¤t!=evt&¤t!=player&&get.effect(current,{name:'juedou'},player,player)<0); + })){ + return 1; + } + else return 4; + }; + return 3; + }); + 'step 1' + if(result.bool){ + player.showCards(result.cards); + player.logSkill('new_liyu',trigger.player); + if(get.type(result.cards[0])!='equip'){ + trigger.player.draw(); + event.finish(); + } + else{ + trigger.player.chooseTarget(function(card,player,target){ + var evt=_status.event.getParent(); + return evt.player.canUse({name:'juedou'},target)&&target!=_status.event.player; + },get.prompt('liyu')).set('ai',function(target){ + var evt=_status.event.getParent(); + return get.effect(target,{name:'juedou'},evt.player,_status.event.player)-2; + }); + } + } + else event.finish(); + 'step 2' + if(result.targets){ + player.useCard({name:'juedou'},result.targets[0],'noai'); + } + }, + ai:{ + halfneg:true, + }, + }, + "new_retuxi":{ + audio:"retuxi", + trigger:{ + player:"phaseDrawBegin", + }, + direct:true, + priority:-10, + filter:function (event){ + return event.num>0; + }, + content:function (){ + "step 0" + player.chooseTarget(get.prompt('new_retuxi'),[1,trigger.num],function(card,player,target){ + return target.countCards('h')>0&&player!=target; + },function(target){ + var att=get.attitude(_status.event.player,target); + if(target.hasSkill('tuntian')) return att/10; + return 1-att; + }); + "step 1" + if(result.bool){ + player.logSkill('new_retuxi',result.targets); + player.gainMultiple(result.targets); + trigger.num-=result.targets.length; + } + else{ + event.finish(); + } + "step 2" + if(trigger.num<=0) game.delay(); + }, + ai:{ + threaten:1.6, + expose:0.2, + }, + }, + "new_reyiji":{ + audio:"reyiji", + trigger:{ + player:"damageEnd", + }, + frequent:true, + filter:function (event){ + return (event.num>0) + }, + content:function (){ + "step 0" + event.num=1; + event.count=1; + "step 1" + player.gain(get.cards(2)); + player.$draw(2); + "step 2" + player.chooseCardTarget({ + filterCard:true, + selectCard:[1,2], + filterTarget:function(card,player,target){ + return player!=target&&target!=event.temp; + }, + ai1:function(card){ + if(ui.selected.cards.length>0) return -1; + if(card.name=='du') return 20; + return (_status.event.player.countCards('h')-_status.event.player.hp); + }, + ai2:function(target){ + var att=get.attitude(_status.event.player,target); + if(ui.selected.cards.length&&ui.selected.cards[0].name=='du'){ + if(target.hasSkillTag('nodu')) return 0; + return 1-att; + } + return att-4; + }, + prompt:'请选择要送人的卡牌' + }); + "step 3" + if(result.bool){ + player.$give(result.cards.length,result.targets[0]); + player.line(result.targets,'green'); + result.targets[0].gain(result.cards); + if(num==1){ + event.temp=result.targets[0]; + event.num++; + event.goto(2); + } + else if(event.count0){ + if(player.needsToDiscard()){ + num=0.7; + } + else{ + num=0.5; + } + } + if(player.hp>=4) return [1,num*2]; + if(target.hp==3) return [1,num*1.5]; + if(target.hp==2) return [1,num*0.5]; + } + }, + }, + threaten:0.6, + }, + }, + "new_rejianxiong":{ + audio:"rejianxiong", + trigger:{ + player:"damageEnd", + }, + content:function (){ + "step 0" + if(get.itemtype(trigger.cards)=='cards'&&get.position(trigger.cards[0])=='d'){ + player.gain(trigger.cards,"gain2"); + } + player.draw(); + }, + ai:{ + maixie:true, + "maixie_hp":true, + effect:{ + target:function (card,player,target){ + if(player.hasSkillTag('jueqing',false,target)) return [1,-1]; + if(get.tag(card,'damage')&&player!=target) return [1,0.6]; + }, + }, + }, + }, + "new_reluoyi":{ + audio:"reluoyi", + trigger:{ + player:"phaseDrawBegin", + }, + content:function (){ + "step 0" + event.cards=get.cards(3); + player.showCards(event.cards,'裸衣'); + player.chooseBool("是否放弃摸牌?").ai=function(event,player){ + var num=3 + for(var i=0;i1 + }; + "step 1" + if(result.bool){ + for(var i=0;i0){ + return -6; + } + else{ + return -3; + } + } + return -1.5; + }, + }, + tag:{ + respond:1, + respondShan:1, + damage:function (card){ + if(card.nature=='poison') return; + return 1; + }, + natureDamage:function (card){ + if(card.nature) return 1; + }, + fireDamage:function (card,nature){ + if(card.nature=='fire') return 1; + }, + thunderDamage:function (card,nature){ + if(card.nature=='thunder') return 1; + }, + poisonDamage:function (card,nature){ + if(card.nature=='poison') return 1; + }, + }, + }, + }, + "new_yijue":{ + audio:"yijue", + enable:"phaseUse", + usable:1, + position:"he", + filterTarget:function (card,player,target){ + return player!=target&&target.countCards('h'); + }, + filterCard:true, + check:function (card){ + return 8-get.value(card); + }, + content:function (){ + "step 0" + target.chooseCard(true).ai=function(card){ + var player=_status.event.player; + if((player.hasShan()||player.hp<3)&&get.color(card)=='black') return 0.5; + return Math.max(1,20-get.value(card)); + }; + "step 1" + target.showCards(result.cards); + event.card2=result.cards[0]; + if(get.color(event.card2)=='black'){ + if(!target.hasSkill('fengyin')){ + target.addTempSkill('fengyin'); + } + target.addTempSkill('new_yijue2'); + event.finish(); + } + else{ + target.$give(event.card2,player); + player.gain(event.card2); + if(target.hp0; + }; + } + } + "step 2" + if(result.bool){ + target.recover(); + } + }, + ai:{ + result:{ + target:function (player,target){ + var hs=player.getCards('h'); + if(hs.length<3) return 0; + if(target.countCards('h')>target.hp+1&&get.recoverEffect(target)>0){ + return 1; + } + if(player.canUse('sha',target)&&(player.countCards('h','sha')||player.countCards('he',{color:'red'}))){ + return -2; + } + return -0.5; + }, + }, + order:9, + }, + }, + "new_yijue2":{ + trigger:{ + player:"damageBegin", + }, + filter:function (event){ + return event.source&&event.source.hasSkill('new_yijue')&&event.card&&event.card.name=='sha'&&get.suit(event.card)=='heart'&&event.notLink(); + }, + silent:true, + popup:false, + forced:true, + content:function (){ + trigger.num++; + }, + mark:true, + mod:{ + cardEnabled:function (){ + return false; + }, + cardUsable:function (){ + return false; + }, + cardRespondable:function (){ + return false; + }, + cardSavable:function (){ + return false; + }, + }, + intro:{ + content:"不能使用或打出卡牌", + }, + }, + "new_repaoxiao":{ + audio:"paoxiao", + inherit:"paoxiao", + mod:{ + targetInRange:function (card,player){ + if(get.cardCount({name:'sha'},player)>0) return true; + }, + cardUsable:function (card,player,num){ + if(card.name=='sha') return Infinity; + }, + }, + ai:{ + unequip:true, + skillTagFilter:function (player,tag,arg){ + if(!get.zhu(player,'shouyue')) return false; + if(arg&&arg.name=='sha') return true; + return false; + }, + }, + }, + "new_tishen":{ + trigger:{ + player:"phaseUseEnd", + }, + check:function (event,player){ + var num=0; + var he=player.getCards('he'); + for(var i=0;i0 + }, + content:function (){ + "step 0" + player.chooseCardTarget({ + position:'h', + filterCard:true, + selectCard:[1,Infinity], + filterTarget:function(card,player,target){ + return player!=target; + }, + ai1:function(card){ + if(get.attitude(_status.event.player,_status.currentPhase)<0&&_status.currentPhase.needsToDiscard()&&card.name!='du') return -1; + for(var i=0;i_status.event.player.countCards('h')) return 0; + return att-4; + }, + prompt:'请选择要送人的卡牌' + }); + "step 1" + if(result.bool){ + var target=result.targets[0]; + var cards=result.cards; + var type=[]; + for(var i=0;i0&&get.attitude(player,current)>2); + })>1&&get.color(card)=='black'&&player.countCards('h',{color:'red'})>0) return 3-get.value(card); + return 9-get.value(card); + }, + filter:function (event,player){ + return !player.hasSkill('new_reqingnang_off2'); + }, + filterTarget:function (card,player,target){ + if(target.hp>=target.maxHp||target.hasSkill('new_reqingnang_off')) return false; + return true; + }, + content:function (){ + target.addTempSkill('new_reqingnang_off'); + if(get.color(cards[0])=='black') player.addTempSkill('new_reqingnang_off2'); + target.recover(); + }, + ai:{ + order:9, + result:{ + target:function (player,target){ + if(target.hp==1) return 5; + if(player==target&&player.countCards('h')>player.hp) return 5; + return 2; + }, + }, + threaten:2, + }, + }, + "new_reyaowu":{ + trigger:{ + player:"damageEnd", + }, + priority:1, + audio:"yaowu", + filter:function (event){ + if(event.card&&(event.card.name=='sha')){ + if(['red','black'].contains(get.color(event.card))) return true; + } + return false; + }, + forced:true, + check:function (event){ + if(event.card&&(event.card.name=='sha')){ + return get.color(event.card)=='black'; + } + }, + content:function (){ + if(get.color(trigger.cards)=='black') player.draw(); + else trigger.source.chooseDrawRecover(true); + }, + ai:{ + effect:{ + target:function (card,player,target,current){ + if(card.name=='sha'&&(get.color(card)=='red')){ + return [1,-2]; + } + if(card.name=='sha'&&(get.color(card)=='black')){ + return [1,0.6]; + } + }, + }, + }, + }, + reguanxing:{ audio:'guanxing', trigger:{player:['phaseBegin','phaseEnd']}, @@ -369,12 +1068,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } return 6-get.value(card) }, - delay:0, content:function(){ 'step 0' - if(!player.hasSkill('rezhiheng_delay')) game.delayx(); + event.num=player.hasSkill('rezhiheng_delay')?1:0; 'step 1' - player.draw(cards.length); + player.draw(event.num+cards.length); }, group:'rezhiheng_draw', subSkill:{ @@ -382,7 +1080,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{player:'loseEnd'}, silent:true, filter:function(event,player){ - if(event.getParent(2).skill!='rezhiheng') return false; + if(event.getParent(2).skill!='rezhiheng'&&event.getParent(2).skill!='jilue_zhiheng') return false; if(player.countCards('h')) return false; for(var i=0;i0&&event.targets&&event.targets.length==1; + }, + content:function(){ + player.gainPlayerCard(trigger.targets[0],'he'); + player.storage.nzry_juzhan1=false; + player.markSkill('nzry_juzhan1'); + player.storage.nzry_juzhan2=true; + }, + }, + }, + }, + "nzry_juzhan1":{ + marktext:'拒', + intro:{ + content:'', + }, + }, + "_nzry_juzhan":{ + mod:{ + targetEnabled:function(card,player,target){ + if(player.storage.nzry_juzhan2==true) return false; + }, + }, + audio:2, + trigger:{ + player:'phaseAfter' + }, + filter:function (event,player){ + return player.storage.nzry_juzhan==true||player.storage.nzry_juzhan2==true; + }, + forced:true, + popup:false, + content:function(){ + if(player.storage.nzry_juzhan==true) delete player.storage.nzry_juzhan; + if(player.storage.nzry_juzhan2==true) delete player.storage.nzry_juzhan2; + player.unmarkSkill('nzry_juzhan1'); + }, + }, + + "nzry_feijun":{ + init:function (player){ + player.storage.nzry_feijun=[]; + }, + marktext:"飞", + intro:{ + content:function (storage){ + var str=''; + for(var i=0;i=player.countCards('h')})>0||game.countPlayer(function(current){return current.countCards('e')>player.countCards('e')})>0; + }, + filterCard:true, + check:function (card){ + return 5-get.value(card); + }, + content:function (){ + 'step 0' + var list=[]; + if(game.countPlayer(function(current){return current.countCards('h')>player.countCards('h')})>0) list.push('令一名手牌数大于你的角色交给你一张牌'); + if(game.countPlayer(function(current){return current.countCards('e')>player.countCards('e')})>0) list.push('令一名装备区里牌数大于你的角色弃置一张装备牌'); + if(list.length==0) event.finish(); + else if(list.length<2){ + if(game.countPlayer(function(current){return current.countCards('h')>player.countCards('h')})>0) event._result={index:0}; + else event._result={index:1}; + } + else{ + player.chooseControl().set('ai',function(){ + if(game.hasPlayer(function(current){ + return current.countCards('h')>player.countCards('h')&&get.attitude(player,current)<0 + })) return 0; + return 1; + }).set('choiceList',list); + } + 'step 1' + if(result.index==0){ + event.control='令一名手牌数大于你的角色交给你一张牌'; + player.chooseTarget(function(card,player,target){ + return target.countCards('h')>player.countCards('h')&&target!=player; + },'请选择【飞军】的目标').ai=function(target){ + return -get.attitude(player,target) + }; + }else{ + event.control='令一名装备区里牌数大于你的角色弃置一张装备牌'; + player.chooseTarget(function(card,player,target){ + return target.countCards('e')>player.countCards('e')&&target!=player; + },'请选择【飞军】的目标').ai=function(target){ + return -get.attitude(player,target) + }; + }; + 'step 2' + if(result.bool){ + event.target=result.targets[0]; + if(player.hasSkill('nzry_binglve')&&!player.storage.nzry_feijun.contains(event.target)){ + player.draw(2); + player.storage.nzry_feijun.push(event.target); + player.syncStorage('nzry_feijun'); + player.logSkill('nzry_binglve'); + }; + player.line(event.target); + if(event.control=='令一名手牌数大于你的角色交给你一张牌'){ + event.target.chooseCard(1,'h',true).set('ai',function(card){ + return 6-get.value(card); + }); + }else{ + event.target.chooseToDiscard(1,'e',true); + event.finish(); + }; + }else{ + event.finish(); + }; + 'step 3' + if(result.bool){ + event.target.$give(result.cards.length,player); + player.gain(result.cards,event.target); + }; + }, + ai:{ + order:11, + result:{ + 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; + }, + }, + }, + }, + "nzry_binglve":{}, + "nzry_huaiju":{ + marktext:"橘", + init:function(player){ + player.storage.nzry_huaiju=0; + }, + intro:{ + content:'当前有#个“橘”', + }, + mark:true, + audio:2, + trigger:{ + global:'gameStart' + }, + forced:true, + content:function(){ + player.storage.nzry_huaiju+=3; + player.syncStorage('nzry_huaiju'); + game.log(player,'获得了3个“橘”'); + }, + }, + "_nzry_huaiju":{ + audio:2, + trigger:{ + player:'damageBefore' + }, + forced:true, + filter:function (event,player){ + return player.storage.nzry_huaiju>0; + }, + content:function(){ + trigger.cancel(); + player.storage.nzry_huaiju--; + player.syncStorage('nzry_huaiju'); + if(player.storage.nzry_huaiju<=0) player.unmarkSkill('nzry_huaiju'); + game.log(player,'移去了1个“橘”'); + }, + }, + "_nzry_huaiju1":{ + audio:2, + trigger:{ + player:'phaseDrawBegin' + }, + forced:true, + filter:function (event,player){ + return player.storage.nzry_huaiju>0; + }, + content:function(){ + trigger.num++; + }, + }, + "nzry_yili":{ + audio:2, + trigger:{ + player:"phaseUseBegin", + }, + direct:true, + content:function (){ + 'step 0' + player.chooseTarget(get.prompt('nzry_yili'),function(card,player,target){ + return target!=player + }).ai=function(target){ + if(player.storage.nzry_huaiju>1) return get.attitude(player,target); + return -1; + }; + 'step 1' + if(result.bool){ + event.target=result.targets[0]; + if(player.storage.nzry_huaiju>0){ + player.chooseControl().set('choiceList',['流失一点体力','移去一个“橘”']).set('ai',function(){ + return 1; + }); + } + else event._result={index:0}; + }else{ + event.finish(); + }; + 'step 2' + if(result.index==1){ + player.storage.nzry_huaiju--; + player.syncStorage('nzry_huaiju'); + if(player.storage.nzry_huaiju<=0) player.unmarkSkill('nzry_huaiju'); + game.log(player,'移去了1个“橘”'); + }else{ + player.loseHp(); + }; + player.line(event.target); + player.logSkill('nzry_huaiju'); + if(event.target.storage.nzry_huaiju==undefined) event.target.storage.nzry_huaiju=0; + event.target.markSkill('nzry_huaiju'); + event.target.storage.nzry_huaiju++; + event.target.syncStorage('nzry_huaiju'); + game.log(event.target,'获得了1个“橘”'); + }, + }, + "nzry_zhenglun":{ + audio:2, + trigger:{ + player:'phaseDrawBefore' + }, + filter:function (event,player){ + return player.storage.nzry_huaiju==undefined||player.storage.nzry_huaiju==0; + }, + check:function (event,player){ + return player.countCards('h')>=2||player.skipList.contains('phaseUse'); + }, + content:function(){ + trigger.cancel(); + if(player.storage.nzry_huaiju==undefined) player.storage.nzry_huaiju=0; + player.markSkill('nzry_huaiju'); + player.storage.nzry_huaiju++; + player.syncStorage('nzry_huaiju'); + game.log(player,'获得了1个“橘”'); + }, + }, + "nzry_kuizhu":{ + audio:2, + trigger:{ + player:"phaseDiscardAfter", + }, + direct:true, + filter:function (event,player){ + return event.num>0; + }, + content:function (){ + 'step 0' + event.str1='令至多'+trigger.num+'名角色摸一张牌'; + event.str2='对任意名体力值之和为'+trigger.num+'的角色造成一点伤害'; + player.chooseControl().set('ai',function(){ + if(game.countPlayer(function(current){return get.attitude(player,current)<0&¤t.hp==trigger.num})>0&&trigger.num<=3) return 1; + return 0; + }).set('choiceList',[event.str1,event.str2]); + 'step 1' + event.control=[event.str1,event.str2][result.index]; + 'step 2' + var str='请选择【溃诛】的目标'; + if(event.bool==false) str='所选目标体力之和不足'+trigger.num+',请重选'; + if(event.control==event.str2){ + player.chooseTarget(str,[1,Infinity],function(card,player,target){ + var targets=ui.selected.targets; + var num=0; + for(var i=0;i=2) player.damage(); + }; + }; + }; + }, + }, + "nzry_zhizheng":{ + audio:2, + group:["nzry_zhizheng_1","nzry_zhizheng_2","nzry_zhizheng_3"], + subSkill:{ + "1":{ + trigger:{ + player:'phaseUseBefore' + }, + forced:true, + popup:false, + content:function(){ + player.storage.nzry_zhizheng=0; + }, + }, + "2":{ + trigger:{ + player:'phaseUseEnd' + }, + direct:true, + filter:function (event,player){ + return player.storage.nzry_zhizheng1}); + }, + content:function(){ + 'step 0' + player.chooseTarget(get.prompt('nzry_zhizheng'),function(card,player,target){ + return get.distance(target,player,'attack')>1&&target.countDiscardableCards(player,'he'); + }).ai=function(target){ + return -get.attitude(player,target); + }; + 'step 1' + if(result.bool){ + player.line(result.targets); + player.logSkill('nzry_zhizheng'); + player.discardPlayerCard(result.targets[0],'he',1,true); + }; + }, + }, + "3":{ + trigger:{ + player:'phaseUseAfter' + }, + forced:true, + popup:false, + content:function(){ + delete player.storage.nzry_zhizheng; + }, + }, + }, + }, + "_nzry_zhizheng":{ + mod:{ + targetEnabled:function(card,player,target){ + if(player.storage.nzry_zhizheng>=0&&get.distance(target,player,'attack')>1) return false; + }, + }, + trigger:{ + player:'useCardAfter' + }, + filter:function (event,player){ + return player.storage.nzry_zhizheng>=0; + }, + forced:true, + popup:false, + content:function(){ + player.storage.nzry_zhizheng++; + }, + }, + "nzry_lijun":{ + unique:true, + global:'nzry_lijun1', + zhuSkill:true, + }, + "nzry_lijun1":{ + audio:2, + trigger:{ + player:'useCardAfter' + }, + filter:function(event,player){ + if(event.card.name!='sha') return false; + if(player.group!='wu') return false; + if(_status.currentPhase!=player) return false; + if(!game.hasPlayer(function(target){ + return player!=target&&target.hasZhuSkill('nzry_lijun',player); + })) return false; + for(var i=0;i0) return true; + return false; + }).set('prompt','是否令'+get.translation(player)+'摸一张牌?'); + } + 'step 2' + if(result.bool) player.draw(); + }, + }, + "nzry_chenglve":{ + mark:true, + locked:false, + marktext:'成', + intro:{ + content:function(storage,player,skill){ + if(player.storage.nzry_chenglve==true) return '出牌阶段限一次,你可以摸两张牌,然后弃置一张手牌。若如此做,直到本回合结束,你使用与弃置牌花色相同的牌无距离和次数限制'; + return '出牌阶段限一次,你可以摸一张牌,然后弃置两张手牌。若如此做,直到本回合结束,你使用与弃置牌花色相同的牌无距离和次数限制'; + }, + }, + enable:"phaseUse", + usable:1, + audio:2, + filter:function(event,player){ + var num=1; + if(player.storage.nzry_chenglve==true) num=0; + return player.countCards('h')>=num; + }, + content:function(){ + 'step 0' + if(player.storage.nzry_chenglve==true){ + player.storage.nzry_chenglve=false; + player.draw(2); + player.chooseToDiscard('h',true); + }else{ + player.storage.nzry_chenglve=true; + player.draw(); + player.chooseToDiscard('h',2,true); + }; + 'step 1' + if(result.bool){ + player.storage.nzry_chenglve1=result.cards; + player.addTempSkill('nzry_chenglve1',{player:'phaseAfter'}); + }; + }, + ai:{ + order:13, + result:{ + player:function(player){ + if((player.storage.nzry_chenglve==undefined||player.storage.nzry_chenglve==false)&&player.countCards('h')<3) return 0; + return 1; + }, + }, + }, + }, + "nzry_chenglve1":{ + mod:{ + cardUsable:function(card,player){ + var cards=player.storage.nzry_chenglve1; + for(var i=0;i0&&player.storage.nzry_shicai!=undefined&&!player.storage.nzry_shicai.contains(get.type(event.card)); + }, + check:function (event,player){ + return get.type(event.card)!='equip'&&event.card.name!='lebu'&&event.card.name!='bingliang'; + }, + content:function(){ + player.storage.nzry_shicai.push(get.type(trigger.card)); + for(var i=0;i=1&& + player.storage.nzry_mingren!=undefined&& + player.countCards('he',{color:get.color(player.storage.nzry_mingren[0])})>=Math.abs(current.hp-player.hp); + })>0&&player.storage.nzry_zhenliang!=true; + }, + filterTarget:function(card,player,target){ + return player.storage.nzry_mingren!=undefined&& + target!=player&& + get.distance(player,target,'attack')<=1&& + Math.abs(target.hp-player.hp)>=1&& + player.countCards('he',{color:get.color(player.storage.nzry_mingren[0])})>=Math.abs(target.hp-player.hp); + }, + content:function(){ + 'step 0' + player.chooseCard('请发动【贞良】的牌',Math.abs(target.hp-player.hp),'he',{color:get.color(player.storage.nzry_mingren[0])},true).set('ai',function(card){ + return 6-get.value(card); + }); + 'step 1' + if(result.bool){ + player.storage.nzry_zhenliang=true; + player.discard(result.cards); + target.damage(); + }; + }, + ai:{ + order:5, + result:{ + target:function(player,target){ + if(Math.abs(target.hp-player.hp)<=1) return -1; + }, + }, + }, + }, + '2':{ + audio:2, + trigger:{ + player:['useCardAfter','respondAfter'], + }, + filter:function (event,player){ + return _status.currentPhase!=player&& + player.storage.nzry_mingren!=undefined&& + player.storage.nzry_mingren[0]!=undefined&& + get.type(player.storage.nzry_mingren[0])==get.type(event.card)&& + player.storage.nzry_zhenliang==true; + }, + direct:true, + content:function(){ + "step 0" + player.chooseTarget(get.prompt('nzry_zhenliang')).ai=function(target){ + return get.attitude(player,target) + }; + "step 1" + if(result.bool){ + player.storage.nzry_zhenliang=false; + player.line(result.targets); + player.logSkill('nzry_zhenliang'); + result.targets[0].draw(); + }else{ + event.finish(); + }; + }, + }, + }, + }, + + 'nzry_jianxiang':{ + audio:2, + trigger:{ + global:'useCard', + }, + filter:function (event,player){ + return event.player!=player&&event.targets&&event.targets.contains(player); + }, + direct:true, + content:function(){ + "step 0" + player.chooseTarget(get.prompt('nzry_jianxiang'),function(card,player,target){ + return target.isMinHandcard(); + }).ai=function(target){ + return get.attitude(player,target) + }; + "step 1" + if(result.bool){ + player.line(result.targets); + player.logSkill('nzry_jianxiang'); + result.targets[0].draw(); + }else{ + event.finish(); + }; + }, + }, + "nzry_shenshi":{ + mark:true, + locked:true, + marktext:'审', + intro:{ + content:function(storage,player,skill){ + if(player.storage.nzry_shenshi==true) return '其他角色对你造成伤害后,你可以观看该角色的手牌,然后交给其一张牌,当前角色回合结束时,若该角色未失去此牌,你将手牌摸至四张'; + return '出牌阶段限一次,你可以将一张牌交给一名手牌数最多的角色,然后对其造成一点伤害,若该角色因此死亡,则你可以令一名角色将手牌摸至四张'; + }, + }, + group:["nzry_shenshi_1","nzry_shenshi_2"], + subSkill:{ + '1':{ + audio:2, + prompt:'出牌阶段限一次,你可以将一张牌交给一名手牌数最多的角色,然后对其造成一点伤害,若该角色因此死亡,则你可以令一名角色将手牌摸至四张', + enable:'phaseUse', + usable:1, + filter:function(event,player){ + return player.countCards('h')>0&&player.storage.nzry_shenshi!=true; + }, + discard:false, + line:true, + prepare:'give', + position:'he', + filterCard:true, + filterTarget:function(card,player,target){ + return target.isMaxHandcard(); + }, + check:function(card){ + return 5-get.value(card); + }, + content:function(){ + 'step 0' + player.storage.nzry_shenshi=true; + target.gain(cards,player); + target.damage(); + 'step 1' + if(!target.isAlive()){ + player.chooseTarget('请选择一名角色并令其将手牌摸至四张',function(card,player,target){ + return target.countCards('h')<4; + }).ai=function(target){ + return get.attitude(player,target) + }; + }else{ + event.finish(); + }; + 'step 2' + if(result.bool){ + player.line(result.targets); + result.targets[0].draw(4-result.targets[0].countCards('h')) + }; + }, + ai:{ + order:1, + result:{ + target:function(player,target){ + return -1; + }, + }, + }, + }, + '2':{ + audio:2, + trigger:{ + player:'damageAfter', + }, + filter:function (event,player){ + return player.countCards('he')>0&&event.source&&event.source!=player&&player.storage.nzry_shenshi==true; + }, + check:function (event,player){ + return event.source&&event.source.countCards('h')<=2&&player.countCards('h')<4; + }, + content:function(){ + "step 0" + player.storage.nzry_shenshi=false; + player.viewHandcards(trigger.source); + player.chooseCard('he',true).set('ai',function(card){ + return 5-get.value(card); + }); + "step 1" + if(result.bool){ + player.$give(result.cards.length,trigger.source); + trigger.source.gain(result.cards); + trigger.source.storage.nzry_shenshi1=result.cards[0]; + trigger.source.storage.nzry_shenshi2=player; + trigger.source.addSkill('nzry_shenshi1'); + }; + }, + }, + }, + }, + "nzry_shenshi1":{ + audio:2, + trigger:{ + global:'phaseEnd', + }, + forced:true, + popup:false, + filter:function (event,player){ + return player.storage.nzry_shenshi1!=undefined&&player.storage.nzry_shenshi2!=undefined; + }, + content:function(){ + var pl=player.storage.nzry_shenshi2; + var card=player.storage.nzry_shenshi1; + if(player.get('hej').contains(card)&&4-pl.countCards('h')>0){ + pl.draw(4-pl.countCards('h')); + pl.logSkill('nzry_shenshi'); + }; + player.removeSkill('nzry_shenshi1'); + delete player.storage.nzry_shenshi1; + delete player.storage.nzry_shenshi2; + }, + }, + xinjushou:{ audio:'jushou', trigger:{player:'phaseEnd'}, @@ -702,7 +1612,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ audio:2, unique:true, priority:-10, - derivation:'guanxing', + derivation:'reguanxing', trigger:{player:'phaseBeginStart'}, forced:true, filter:function(event,player){ @@ -728,7 +1638,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.storage.zhiji=true; if(player.hp>player.maxHp) player.hp=player.maxHp; player.update(); - player.addSkill('guanxing'); + player.addSkill('reguanxing'); } }, xiangle:{ @@ -4173,11 +5083,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, fenji:{ audio:2, - trigger:{global:'discardAfter'}, - filter:function(event){ + trigger:{ + global:"loseAfter", + }, + filter:function (event){ if(_status.currentPhase!=event.player){ - for(var i=0;i李傕本为董卓部将,后被董卓的女婿牛辅派遣至中牟与朱儁交战,大破朱儁,进而至陈留、颍川等地劫掠。初平三年(192年)董卓和牛辅被杀后,李傕归无所依,于是采用贾诩之谋,伙同郭汜、张济、樊稠等原董卓部曲将攻向长安。击败吕布,杀死王允等人,占领长安,把持朝廷大权。后诸将不和,李傕在会议上杀死了樊稠,又与郭汜分别劫持了汉献帝和众臣,相互交战,张济率兵赶来和解,于是二人罢兵,李傕出屯池阳黄白城,郭汜、张济等人随汉献帝东归前往弘农。
后来,李傕、郭汜、张济反悔,联合起来追击汉献帝,与杨奉、董承等人几番交战。汉献帝一路逃亡,狼狈不堪,到达安邑,与李傕等人讲和。不久,汉献帝被曹操迎往许都。建安三年(198年),曹操派谒者仆射裴茂召集关西诸将段煨等人征讨李傕,灭其三族。", + zhangji:"张济(?-196年),武威郡祖厉县(今甘肃靖远东南)人。东汉末年割据军阀之一。 张济原为董卓部将,董卓被诛杀后,张济与李傕一同率军攻破长安,任中郎将。不久,升任镇东将军,封平阳侯,出屯弘农。献帝东迁时,张济升任骠骑将军,率军护卫献帝,后来因与董承等人有矛盾,便与李傕、郭汜一同追赶献帝。 建安元年(196年),张济因军队缺粮而进攻穰城,中流矢而死。死后,部队由侄儿张绣接管。", + guosi:"郭汜(?-197年),又名郭多,凉州张掖(今甘肃张掖西北)人,东汉末年将领、军阀,献帝时权臣。原为董卓部下。董卓被杀后,凉州众将归无所依,于是采用贾诩之谋,联兵将攻向长安,击败吕布,杀死王允等人,占领长安,把持朝廷大权。几年后,郭汜被部将伍习杀死。", + fanchou:"樊稠(?—195年),凉州金城(治今甘肃永靖西北)人。东汉末年军阀、将领。官至右将军,封万年侯。 原为董卓部将,董卓死后,伙同李傕、郭汜、张济等人合众十余万反扑长安,败吕布、杀王允,把持朝政。后马腾因与李傕有隙,于是联合韩遂举兵进攻,李傕派樊稠、郭汜等与其交战,大败马腾、韩遂于长平观下。樊稠追至陈仓,与韩遂友好罢兵,却遭李傕猜疑。兴平二年(195年),李傕让外甥骑都尉胡封在会议上将樊稠刺死(一说趁醉用杖击杀)。", + lvkai:"吕凯(?―225年),字季平,永昌郡不韦县(今云南保山东北)人,三国时期蜀汉官员。初任永昌郡五官掾功曹。章武三年(223年),建宁太守雍闿反叛,投降吴国,吴国任雍闿为永昌太守,吕凯闭境抗拒雍闿。建兴三年(225年),丞相诸葛亮南征,表奏吕凯功劳,任命他为云南太守,封阳迁亭侯。吕凯还未上任,便被叛乱的少数民族杀害。", + zhanggong:"张恭(生卒年不详),三国时期魏国大臣,与子张就一同闻名于西域。官至西域戊己校尉、关内侯,赠执金吾。初为敦煌郡功曹。东汉末河西大乱,太守马艾卒官,他被众人推为代理长史,遂派儿子张就请曹操委任太守,直至新太守到任。魏文帝时拜西域戊己校尉。魏明帝时去世。", + weiwenzhugezhi:"卫温 (?—231年),三国时期东吴将领,曾任将军职。诸葛直(?—231年),三国时期东吴将领。黄龙二年(230年)正月,孙权派卫温、诸葛直带领上万士兵出海寻找夷洲、亶洲,想要俘获那里的民众以充实东吴的人口,陆逊和全琮都谏言反对,孙权不听。230年和卫温一起登上台湾(当时的台湾叫做夷洲),他们是中国历史上记载的最早登陆台湾的人。卫温和诸葛直花费了约一年时间行军,士兵们因为疾病死去了十分之八到十分之九,因为亶洲太过遥远,卫温和诸葛直最终没能到达那里,只带了几千名夷洲的人返回。黄龙三年(231年),孙权认为诸葛直违背诏令,劳财伤民,无功而返,和卫温一同入狱被处死。", + xf_tangzi:"唐咨(生卒年不详),三国时魏利城(今江苏赣榆西)人。魏文帝黄初中利城郡反,推唐咨为主。后为魏军击破,遂亡至吴,官至左将军,封侯、持节。后助诸葛诞拒魏,兵败被俘。为安抚吴国军民,魏主拜唐咨为安远将军。", + xf_huangquan:"黄权(?-240年),字公衡。巴西郡阆中县(今四川阆中)人。三国时期蜀汉、曹魏将领。
黄权年轻时为郡吏,后被益州牧刘璋召为主簿。曾劝谏刘璋不要迎接刘备,因而被外放为广汉县长。刘璋败,才降刘备,被拜为偏将军。建计取汉中,拜护军。刘备为汉中王,仍领益州牧,以黄权为治中从事。及刘备称帝,将伐吴,黄权劝谏而不纳。以其为镇北将军,督江北军以防魏师进攻。刘备伐吴败还,而归途隔绝,黄权不得归,无奈之下率部降魏。被魏文帝所赏识,拜镇南将军,封育阳侯,加侍中,使同车陪乘。后领益州刺史,进驻河南。景初三年(239年),迁车骑将军、仪同三司。正始元年(240年),黄权去世,谥号“景”。", + xf_sufei:"苏飞(生卒年不详),东汉末年人物,原为东汉末年荆州牧刘表的部将,任江夏都督。
苏飞与甘宁交好,但是数次向黄祖推荐都失败。甘宁决定投效孙权时助其逃离。后来甘宁率吴军攻破江夏,苏飞兵败被俘。孙权打算将苏飞处斩,但是因为甘宁用性命担保而赦免了苏飞。降吴后官至军都督。", + caoying:"曹婴是在电影《三国志之见龙卸甲》中登场的虚拟人物,由李美琪饰演。曹婴是曹操的孙女,弓马娴熟,文武双全,深得曹操的用兵之道及心术。于凤鸣山一战中担任魏军大都督阻止诸葛亮北伐并因罗平安的告密而全歼关兴、张苞、赵云率领的蜀军部队。", + simahui:"司马徽(约145—208年),字德操,颍川阳翟(今河南禹州)人。东汉末年名士,精通道学、奇门、兵法、经学。有“水镜先生”之称。 司马徽为人清雅,学识广博,有知人之明,并向刘备推荐了诸葛亮、庞统等人,受到世人的敬重。", + baosanniang:"鲍三娘是中国民间传说中的人物,事迹多见于《花关索传》。相传她是鲍家庄鲍员外的小女儿。后来与关索成亲,关羽自传授其武艺,因此也造就了鲍三娘的文武双全。荆州失守之后鲍三娘就跟随关索一同投奔蜀汉,并随诸葛亮征讨南蛮。平定了南蛮之后,夫妻二人就此一直替诸葛亮镇守着南中,他们也的确留下了许多脍炙人口的行侠仗义故事,在民间广为流传。", + xurong:"徐荣(?-192年),玄菟人(一说为辽东襄平人,《公孙度传》中说公孙度本辽东襄平人,迁居玄菟,为同郡徐荣所举,任辽东太守。同郡当是同“玄菟”郡),东汉末年将领。本为中郎将,曾向董卓推举同郡出身的公孙度出任辽东太守。于汴水之战中击败曹操的独立追击军,以及在梁东之战中击败孙坚的部队。在董卓死后,受司徒王允的命令与李傕、郭汜交战,因部将胡珍投降,寡不敌众,于新丰之战被击败,战死在乱军之中。", + zhangqiying:"张琪瑛(196年-217年),字不详(或琪瑛为字,名不详),祖籍沛国丰县(今江苏省丰县)。她的曾祖父张陵是西汉留侯张良的十一世孙、天师道(五斗米道)教祖,她的父亲是东汉末年割据汉中的军阀张鲁。张琪瑛继承家说,是五斗米教的传人。", + pangdegong:"庞德公,字尚长,荆州襄阳人,东汉末年名士、隐士。 庞德公与当时徐庶、司马徽、诸葛亮、庞统等人交往密切。庞德公曾称诸葛亮为\"卧龙\",庞统为\"凤雏\",司马徽为\"水镜\",被誉为知人。对诸葛亮、庞统等人早年影响较大,并得到诸葛亮的敬重。庞德公最后隐居于鹿门山,采药而终。", + zhaotongzhaoguang:"赵统,赵云长子,生卒年不详。常山真定(今为河北正定)人,陈寿在正史《三国志》中记载赵云去世后,赵统袭爵永昌亭侯,官至蜀汉虎贲中郎督,加行领军。赵广(?—263年),三国时期蜀汉牙门将,赵云的次子,赵统之弟。随姜维前往沓中,官拜牙门将。曹魏司马氏派五路大军伐蜀时,随大将军姜维与魏兵战于疆川口,姜维败绩还守剑阁,赵广于沓中战死。", + majun:"马钧,字德衡,扶风(今陕西扶风)人,生活在汉朝末期,是中国古代科技史上最负盛名的机械发明家之一。马钧年幼时家境贫寒,自己又有口吃的毛病,所以不擅言谈却精于巧思,后来在魏国担任给事中的官职。马钧最突出的表现有还原指南车;改进当时操作笨重的织绫机;发明一种由低处向高地引水的龙骨水车;制作出一种轮转式发石机,能连续发射石块,远至数百步;把木制原动轮装于木偶下面,叫做“水转百戏”。此后,马钧还改制了诸葛连弩,对科学发展和技术进步做出了贡献。", + simazhao:"司马昭(211年—265年9月6日),字子上(小说《三国演义》为子尚),河内温县(今属河南)人。三国时期曹魏权臣,西晋王朝的奠基人之一。为晋宣帝司马懿与宣穆皇后张春华次子、晋景帝司马师之弟、晋武帝司马炎之父。 司马昭早年随父抗击蜀汉,多有战功。累官洛阳典农中郎将,封新城乡侯。正元二年(255年),继兄司马师为大将军,专揽国政。甘露五年(260年),魏帝曹髦被弑杀,司马昭立曹奂为帝。景元四年(263年),分兵遣钟会、邓艾、诸葛绪三路灭亡蜀汉,受封晋公。次年,进爵晋王。 咸熙二年(265年),司马昭病逝,年五十四,葬于崇阳陵。数月后,其子司马炎代魏称帝,建立晋朝,追尊司马昭为文帝,庙号太祖。", + wangyuanji:"王元姬(217年—268年4月20日),东海郯县(今山东郯城西北)人。三国时期曹魏经学家王朗之孙女、王肃之女,晋文帝司马昭妻子,晋武帝司马炎与齐王司马攸的生母。 王元姬幼时便通《诗经》、《论语》,嫁司马昭后竭尽妇道、谦虚谨慎。其人颇有远见,曾预言钟会谋反之事。泰始元年(265年),司马炎建立西晋,尊王元姬为皇太后,宫号曰崇化宫。王元姬身处太后之位,提倡节俭,身体力行,作为众妃子的表率。在其治理之下,后宫井井有条,众人和睦相处。 泰始四年(268年),王元姬崩逝,终年五十二岁。谥号文明皇后,与司马昭合葬于崇阳陵。", + + liuye:'刘晔(?-234年),字子扬,淮南成德人,是光武帝刘秀之子阜陵王刘延的后代,三国时期魏国著名的战略家。刘晔年少知名,人称有佐世之才,是曹操手下举足轻重的谋士,他屡献妙计,对天下形势的发展往往一语中的。刘晔历仕数朝,是曹魏的三朝元老。', + luzhi:'鲁芝(190年—273年),字世英。扶风郡郿县(今陕西眉县)人。魏晋时期名臣。官至光禄大夫,位特进,封阴平侯。泰始九年(273年)卒,时年八十四。谥号“贞”。', + xizhicai:'戏志才(生卒年不详),或志才为字,名不详(一说名忠),东汉颍川郡(今河南禹州)人。经张邈推荐,成为曹操手下谋士。为人多谋略,曹操十分器重,不幸早卒。三国演义中并无此人,三国志中只有寥寥数语。由荀彧推荐给曹操,被称为有“负俗之讥”。死后,荀彧又举荐了郭嘉。
陈寿《三国志》记载:太祖与荀彧书曰:自志才亡后,莫可与计事者。汝、颍固多奇士,谁可以继之?彧荐嘉。', + sunqian:'孙乾(?—约215年),字公祐。北海郡(治今山东昌乐西)人。东汉末年刘备的幕僚。最初被大儒郑玄推荐于州里。刘备领徐州,以孙乾为从事。自徐州跟随刘备,多次作为刘备的使臣。刘备定益州后,拜孙乾为秉忠将军,其待遇仅次于麋竺,与简雍相同。不久后便病逝。', + beimihu:'卑弥呼(ひみこ,约159年-约249年,有的史书也写成“俾弥呼”)是日本弥生时代邪马台国(今日本本州近畿地区)的女王,在《三国志·魏书·倭人传》中有关于她的记载。关于她的真实身份一直众说纷纭,是个极具神秘色彩的古代女性统治者。亦是日本古代宗教鬼道教的发源者。', + liuqi:'刘琦(?-209年)。兖州山阳郡高平县(今山东省济宁市微山县两城镇)人。荆州牧刘表的长子、谏议大夫刘琮兄。官至荆州刺史。建安十四年(209年)病逝。', + miheng:'祢衡(173年-198年),字正平,平原郡(今山东德州临邑德平镇)人。个性恃才傲物.和孔融交好。孔融著有《荐祢衡表》,向曹操推荐祢衡,但是祢衡称病不肯去,曹操封他为鼓手,想要羞辱祢衡,却反而被祢衡裸身击鼓而羞辱。后来祢衡骂曹操,曹操就把他遣送给刘表,祢衡对刘表也很轻慢,刘表又把他送去给江夏太守黄祖,最后因为和黄祖言语冲突而被杀,时年二十六岁。黄祖对杀害祢衡一事感到十分后悔,便将其加以厚葬。', + quyi:'麴义(又作曲义、鞠义),生卒年不详,是东汉末年军阀袁绍部下的将领,能征善战,屡建战功,早年在凉州,精通羌人战法,率领着袁绍的精锐部队。后来由于自恃功高而骄纵不轨,被袁绍所杀。', + taoqian:'陶谦(132年-194年),字恭祖。丹阳郡(治今安徽宣城)人。汉末群雄之一。陶谦最初为诸生,在州郡任职,被举茂才,历任舒、卢二县令、幽州刺史、议郎,性格刚直,有大志。后随左车骑将军皇甫嵩对抗北宫伯玉,任扬武校尉,之后又随张温征韩遂、边章。中平五年(188年),徐州黄巾起,陶谦被朝廷任为徐州刺史,击破徐州黄巾,并推行屯田,恢复生产。尔后听从王朗、赵昱建议遣使进京朝贡,获拜安东将军、徐州牧,封溧阳侯。晚年因战事上为曹操大败,徐州大半几乎遭兵祸所害,以致过度忧劳而逝,终年六十三岁。', + wangyun:'王允(137~192年),字子师,太原郡祁县(今山西祁县)人。东汉末年时期大臣。出身太原王氏,世代官宦。举孝廉出身,司徒高第征为侍御史。出任豫州刺史,勤政爱民。斗争中常侍张让失败后,去官隐居。中平六年,大将军何进掌权之后,辟为从事中郎,迁河南尹。董卓拥立汉献帝即位后,代替杨彪,拜太仆、尚书令、司徒,密谋刺死董卓,联合吕布共同执政,日益骄傲自满。初平三年(192年),董卓余党李傕、郭汜、樊稠等攻破长安。王允兵败处死,时年五十六岁。', + + huangfusong:'字义真。安定郡朝那县(今宁夏彭阳)人。于黄巾起义时,以中郎将身份讨伐黄巾,用火攻大破张梁、张宝。后接替董卓进攻张梁,连胜七阵。掘张角墓,拜左车骑将军、冀州牧,因拒绝贿赂宦官而被免职。 董卓死,王允命其与吕布等共至郿坞抄籍董卓家产、人口,皇甫嵩将坞中所藏良家子女,尽行释放。', zangba:'其父臧戒,有二子臧艾与臧舜。年少时曾召集数人将获罪的父亲救出,此后四处流亡。后来成为陶谦麾下的骑都尉,负责募兵抵抗黄巾军。与孙观、尹礼等人拥兵驻屯于开阳,自成一股独立势力,后跟随吕布。吕布战败后,投降了曹操。后与袁绍、孙权等的战役里战功赫赫,官至镇东将军。', zhangren:'刘璋的属下,以忠勇著称。刘备入蜀时,张任曾劝刘璋提防刘备,但刘璋没有听从。魏延舞剑想趁机除掉刘璋时,张任出面对舞,解救刘璋。后在刘备进攻时于落凤坡射死了庞统。', jiling:'东汉末年袁术帐下将领,勇猛非常,曾奉命率军攻打小沛的刘备,在吕布辕门射戟的调停下撤兵。', @@ -330,6 +379,495 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, skill:{ + //OL马超 + ol_shichou:{ + audio:2, + trigger:{ + player:'useCard', + }, + direct:true, + filter:function(event,player){ + return event.card&&event.card.name=='sha'&&player.isDamaged(); + }, + content:function(){ + 'step 0' + var num=player.maxHp-player.hp; + player.chooseTarget('是否发动【誓仇】,令至多'+num+'名其他角色也成为此【杀】的目标?',[1,num],function(card,player,target){ + return target!=player&&!trigger.targets.contains(target)&&player.canUse({name:'sha'},target); + }).ai=function(target){ + return get.effect(target,{name:'sha'},_status.event.player); + }; + 'step 1' + if(result.bool&&result.targets&&result.targets.length){ + var targets=result.targets; + player.logSkill('ol_shichou',targets); + player.line(targets,trigger.card.nature); + trigger.targets.addArray(targets); + } + }, +}, + //新大小乔 + "new_xingwu":{ + audio:"xingwu", + trigger:{ + player:"phaseDiscardBegin", + }, + direct:true, + intro:{ + content:"cards", + }, + init:function (player){ + player.storage.new_xingwu=[]; + }, + content:function (){ + 'step 0' + player.chooseCard(get.prompt('new_xingwu')).set('ai',function(card){ + var player=_status.event.player; + for(var i=0;i0&& + get.attitude(player,current)<0) + })) return 0; + } + return 7-get.value(card); + }); + 'step 1' + if(result.bool){ + player.logSkill('new_xingwu'); + if(player.storage.new_xingwu.length<2){ + player.$give(result.cards,player); + } + player.lose(result.cards,ui.special); + player.storage.new_xingwu=player.storage.new_xingwu.concat(result.cards); + player.markSkill('new_xingwu'); + player.syncStorage('new_xingwu'); + } + else{ + event.finish(); + } + 'step 2' + var suitlist=[]; + for(var i=0;i0) return -1; + return get.damageEffect(target,player,player)*target.sex=='male'?2:1+target.countCards('e')/2; + }); + } + 'step 4' + if(result.bool){ + var target=result.targets[0]; + var num=target.sex=="male"?2:1; + target.damage(num); + event.target=target; + player.line(target,'green'); + } + else{ + event.finish(); + } + 'step 5' + if(event.target&&event.target.isAlive()){ + var es=event.target.getCards('e'); + if(es.length){ + event.target.discard(es); + } + } + }, + ai:{ + threaten:1.5, + }, + }, + "new_luoyan":{ + group:["new_luoyan_tianxiang","new_luoyan_liuli"], + }, + "new_luoyan_tianxiang":{ + inherit:"retianxiang", + filter:function (event,player){ + if(!player.storage.new_xingwu||!player.storage.new_xingwu.length) return false; + if(player.hasSkill('retianxiang')||player.hasSkill('tianxiang')) return false; + return lib.skill.tianxiang.filter(event,player); + }, + audio:"tianxiang", + trigger:{ + player:"damageBefore", + }, + direct:true, + content:function (){ + "step 0" + player.chooseCardTarget({ + filterCard:function(card,player){ + return get.suit(card)=='heart'&&lib.filter.cardDiscardable(card,player); + }, + filterTarget:function(card,player,target){ + return player!=target; + }, + // position:'he', + ai1:function(card){ + return 10-get.value(card); + }, + ai2:function(target){ + var att=get.attitude(_status.event.player,target); + var trigger=_status.event.getTrigger(); + var da=0; + if(_status.event.player.hp==1){ + da=10; + } + var eff=get.damageEffect(target,trigger.source,target); + if(att==0) return 0.1+da; + if(eff>=0&&att>0){ + return att+da; + } + if(att>0&&target.hp>1){ + if(target.maxHp-target.hp>=3) return att*1.1+da; + if(target.maxHp-target.hp>=2) return att*0.9+da; + } + return -att+da; + }, + prompt:get.prompt('retianxiang'), + prompt2:lib.translate.retianxiang_info + }); + "step 1" + if(result.bool){ + player.discard(result.cards,ui.special); + var target=result.targets[0]; + player.chooseControlList(true,function(event,player){ + var target=_status.event.target; + var att=get.attitude(player,target); + if(target.hasSkillTag('maihp')) att=-att; + if(att>0){ + return 0; + } + else{ + return 1; + } + }, + ['令'+get.translation(target)+'受到伤害来源对其造成的1点伤害,然后摸X张牌(X为其已损失体力值且至多为5)', + '令'+get.translation(target)+'失去1点体力,然后获得'+get.translation(result.cards)]).set('target',target); + player.logSkill(event.name,target); + trigger.cancel(); + event.target=target; + event.card=result.cards[0]; + } + else{ + event.finish(); + } + "step 2" + if(typeof result.index=='number'){ + if(result.index){ + event.target.loseHp().type='retianxiang'; + event.target.addSkill('retianxiang3'); + event.target.storage.retianxiang3=event.card; + } + else{ + event.target.damage(trigger.source).type='retianxiang'; + event.target.addSkill('retianxiang2'); + if(get.position(event.card)=='s'){ + event.card.discard(); + } + } + } + }, + ai:{ + "maixie_defend":true, + effect:{ + target:function (card,player,target){ + if(player.hasSkillTag('jueqing',false,target)) return; + if(get.tag(card,'damage')&&target.countCards('he')>1) return 0.7; + }, + }, + }, + }, + "new_luoyan_liuli":{ + inherit:"liuli", + filter:function (event,player){ + if(!player.storage.new_xingwu||!player.storage.new_xingwu.length) return false; + if(player.hasSkill('liuli')) return false; + return lib.skill.liuli.filter(event,player); + }, + audio:"ext:新•界限突破:2", + trigger:{ + target:"shaBefore", + }, + direct:true, + priority:5, + content:function (){ + "step 0" + var next=player.chooseCardTarget({ + position:'he', + filterCard:lib.filter.cardDiscardable, + filterTarget:function(card,player,target){ + var trigger=_status.event.getTrigger(); + if(get.distance(player,target,'attack')<=1&& + target!=trigger.player&&target!=player){ + if(player.canUse(trigger.card,target)) return true; + } + return false; + }, + ai1:function(card){ + return get.unuseful(card)+9; + }, + ai2:function(target){ + if(_status.event.player.countCards('h','shan')){ + return -get.attitude(_status.event.player,target); + } + if(get.attitude(_status.event.player,target)<5){ + return 6-get.attitude(_status.event.player,target); + } + if(_status.event.player.hp==1&&player.countCards('h','shan')==0){ + return 10-get.attitude(_status.event.player,target); + } + if(_status.event.player.hp==2&&player.countCards('h','shan')==0){ + return 8-get.attitude(_status.event.player,target); + } + return -1; + }, + prompt:get.prompt('liuli') + }); + "step 1" + if(result.bool){ + player.discard(result.cards); + player.logSkill(event.name,result.targets); + trigger.target=result.targets[0]; + trigger.targets.remove(player); + trigger.targets.push(result.targets[0]); + } + else{ + event.finish(); + } + "step 2" + trigger.untrigger(); + trigger.trigger('useCardToBefore'); + trigger.trigger('shaBefore'); + game.delay(); + }, + ai:{ + effect:{ + target:function (card,player,target){ + if(target.countCards('he')==0) return; + if(card.name!='sha') return; + var min=1; + var friend=get.attitude(player,target)>0; + var vcard={name:'shacopy',nature:card.nature,suit:card.suit}; + var players=game.filterPlayer(); + for(var i=0;i0){ + if(!player.canUse(card,players[0])){ + return [0,0.1]; + } + min=0; + } + } + } + return min; + }, + }, + }, + }, + //新孙鲁育 + "new_meibu":{ + audio:"meibu", + trigger:{ + global:"phaseUseBegin", + }, + filter:function (event,player){ + return event.player!=player&&get.distance(event.player,player,'attack')<=1; + }, + direct:true, + derivation:["new_zhixi"], + checkx:function (event,player){ + if(get.attitude(player,event.player)>=0) return false; + var e2=player.getEquip(2); + if(e2){ + if(e2.name=='tengjia') return true; + if(e2.name=='bagua') return true; + } + return event.player.countCards('h')>event.player.hp; + }, + content:function (){ + "step 0" + var check=lib.skill.new_meibu.checkx(trigger,player); + player.chooseToDiscard(get.prompt('new_meibu',trigger.player),'he').set('ai',function(card){ + if(_status.event.check) return 6-get.value(card); + return 0; + }).set('check',check).set('logSkill','new_meibu'); + "step 1" + if(result.bool){ + var target=trigger.player; + var card=result.cards[0]; + player.line(target,'green'); + target.addTempSkill('new_zhixi','phaseUseEnd'); + target.addTempSkill('new_meibu_range'); + if(card.name!='sha'&&get.type(card)!='trick'&&get.color(card)!='black'){ + target.storage.meibu=player; + } + target.markSkillCharacter('new_meibu',player,'魅步','锁定技,出牌阶段,你至多可使用X张牌,你使用了锦囊牌后不能再使用牌(X为你的体力值)。'); + } + }, + ai:{ + expose:0.2, + }, + subSkill:{ + range:{ + mod:{ + targetInRange:function (card,player,target){ + if(target==player.storage.meibu){ + return true; + } + }, + }, + onremove:function (player){ + game.broadcast(function(player){ + if(player.marks.new_meibu){ + player.marks.new_meibu.delete(); + delete player.marks.new_meibu; + } + },player); + if(player.marks.new_meibu){ + player.marks.new_meibu.delete(); + delete player.marks.new_meibu; + game.addVideo('unmark',player,'new_meibu'); + } + }, + trigger:{ + player:"phaseUseEnd", + }, + forced:true, + popup:false, + content:function (){ + player.removeSkill('new_meibu_viewas'); + game.broadcastAll(function(player){ + if(player.marks.new_meibu&&player.marks.new_meibu.info){ + player.marks.new_meibu.info.content=player.marks.new_meibu.info.content.slice(8); + } + },player); + }, + sub:true, + }, + viewas:{ + mod:{ + cardEnabled:function (card,player){ + return false; + }, + cardUsable:function (card,player){ + return false; + }, + cardSavable:function (card,player){ + return false; + }, + }, + sub:true, + }, + }, + }, + "new_mumu":{ + audio:"mumu", + trigger:{ + player:"phaseUseBegin", + }, + direct:true, + content:function (){ + 'step 0' + player.chooseTarget(get.prompt('new_mumu'),function(card,player,target){ + if(target==player) return false; + return target.countCards('e')>0; + }).set('ai',function(target){ + var player=_status.event.player; + var att=get.attitude(player,target) + if(target.getEquip(2)&&!player.getEquip(2)){ + return -2*att; + } + return -att; + }); + 'step 1' + if(result.bool&&result.targets&&result.targets.length){ + event.target=result.targets[0]; + player.logSkill('new_mumu',event.target); + player.line(event.target,'green'); + var e=event.target.getEquip(2); + event.e=e; + if(e){ + player.chooseControl('弃置一张装备牌','获得一张防具牌').set('ai',function(){ + if(_status.event.player.getEquip(2)){ + return '弃置一张装备牌'; + } + return '获得一张防具牌'; + }); + } + else{ + event.choice='弃置一张装备牌'; + } + }else event.finish(); + 'step 2' + var choice=event.choice||result.control; + if(choice=='弃置一张装备牌'){ + player.discardPlayerCard(event.target,'e',true); + } + else{ + if(event.e){ + player.gain(event.e); + event.target.$give(event.e,player); + player.addTempSkill('new_mumu2') + } + } + }, + }, + "new_zhixi":{ + trigger:{ + player:"useCardAfter", + }, + forced:true, + popup:false, + filter:function (event,player){ + if(get.type(event.card,'trick')=='trick') return true; + return player.countUsed()>=player.hp; + }, + content:function (){ + player.addTempSkill('new_meibu_viewas','phaseUseEnd'); + }, + }, + "new_mumu2":{ + mod:{ + cardEnabled:function (card){if(card.name=='sha') return false}, + }, + }, //双牌打出闪: yizan1:{ trigger:{player:'chooseToRespondBegin'}, @@ -5035,8 +5573,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ 'step 0' player.draw(3); var list=[]; - if(!player.hasSkill('wusheng')){ - list.push('wusheng'); + if(!player.hasSkill('new_rewusheng')){ + list.push('new_rewusheng'); } if(!player.hasSkill('dangxian')){ list.push('dangxian'); @@ -5326,7 +5864,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){ if(player.getEquip(5)) return; var type=get.type(card); if(type=='trick'||type=='delay') return true; - } + }, + canBeDiscarded:function (card,player){ + if(player.getEquip(5)) return; + if(get.position(card)=='e') return false; + }, + cardDiscardable:function (card,player){ + if(player.getEquip(5)) return; + if(get.position(card)=='e') return false; + }, } }, fenyong:{ @@ -6565,7 +7111,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.removeSkill('tunchu_choose'); var nh=player.countCards('h'); if(nh){ - player.chooseCard('h',[1,nh],true,'将任意张手牌置于你的武将牌上').set('ai',function(card){ + player.chooseCard('h',[1,nh],'将任意张手牌置于你的武将牌上').set('ai',function(card){ if(ui.selected.cards.length>=3) return -get.value(card); return 6-get.value(card); }); @@ -6574,10 +7120,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){ event.finish(); } 'step 1' - player.lose(result.cards,ui.special); - player.storage.tunchu.addArray(result.cards); - player.markSkill('tunchu'); - player.syncStorage('tunchu'); + if(result.bool){ + player.lose(result.cards,ui.special); + player.storage.tunchu.addArray(result.cards); + player.markSkill('tunchu'); + player.syncStorage('tunchu'); + } } }, disable:{ @@ -7606,7 +8154,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ zhuiji:{ mod:{ globalFrom:function(from,to){ - if(from.hp>to.hp) return -Infinity; + if(from.hp>=to.hp) return -Infinity; } } }, @@ -10071,7 +10619,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ forced:true, popup:false, unique:true, - derivation:['tiaoxin','paoxiao','xinshensu'], + derivation:['tiaoxin','new_repaoxiao','xinshensu'], content:function(){ player.removeAdditionalSkill('baobian'); var list=[]; @@ -10079,7 +10627,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ list.push('tiaoxin'); } if(player.hp<=2){ - list.push('paoxiao'); + list.push('new_repaoxiao'); } if(player.hp<=1){ list.push('xinshensu'); @@ -10579,8 +11127,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, translate:{ - zhaotongzhaoguang:"赵统赵广", - baosanniang:"鲍三娘", zhangren:'张任', zoushi:'邹氏', zangba:'臧霸', @@ -10592,7 +11138,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ buzhi:'步骘', chenlin:'陈琳', yuanshu:'袁术', - re_yuanshu:'新袁术', gongsunzan:'公孙瓒', sp_diaochan:'sp貂蝉', yangxiu:'杨修', @@ -10660,7 +11205,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ wenpin:'文聘', jsp_huangyueying:'sp黄月英', sp_lvmeng:'sp吕蒙', - wangji:'王基', guansuo:'关索', tadun:'蹋顿', yanbaihu:'严白虎', @@ -10684,7 +11228,48 @@ game.import('character',function(lib,game,ui,get,ai,_status){ beimihu:'卑弥呼', luzhi:'鲁芝', sp_liuqi:'刘琦', + + lijue:"李傕", + zhangji:"张济", + fanchou:"樊稠", + guosi:"郭汜", + lvkai:"吕凯", + zhanggong:"张恭", + weiwenzhugezhi:"卫温诸葛直", + caoying:"曹婴", + simahui:"司马徽", + baosanniang:"鲍三娘", + xurong:"徐荣", + sp_xiahoushi:"sp夏侯氏", + zhangqiying:"张琪瑛", + xf_tangzi:"唐咨", + xf_huangquan:"黄权", + xf_sufei:"苏飞", + pangdegong:"庞德公", + zhaotongzhaoguang:"赵统赵广", + majun:"马钧", + simazhao:"司马昭", + wangyuanji:"王元姬", + "new_meibu":"魅步", + "new_meibu_info":"其他角色的出牌阶段开始时,若你在其攻击范围内,你可以弃置一张牌,令该角色于本回合内拥有“止息”。若你以此法弃置的牌不是【杀】或黑色锦囊牌,则本回合其与你距离视为1。", + "new_mumu":"穆穆", + "new_mumu_info":"出牌阶段开始时,你可以选择一项:1.弃置一名其他角色装备区里的一张牌;2.获得一名角色装备区里的一张防具牌,若如此做,你本回合不能使用【杀】。", + "new_zhixi":"止息", + "new_zhixi_info":"锁定技,出牌阶段,你至多可使用X张牌,你使用了锦囊牌后不能再使用牌(X为你的体力值)。", + "new_mumu2":"穆穆", + "new_mumu2_info":"锁定技,你不能使用【杀】。", + "new_xingwu":"星舞", + "new_xingwu_info":"弃牌阶段开始时,你可以将一张手牌置于武将牌上,称之为「舞」。然后若你的「舞」中包含三种花色,则你须移去三张花色不同的「舞」并选择一名角色,该角色受到2点伤害(若为女性,则改为1点)并弃置其装备区的所有牌。", + "new_luoyan":"落雁", + "new_luoyan_info":"锁定技。若你的武将牌上有「舞」,则你视为拥有技能〖天香〗和〖流离〗。", + "new_luoyan_tianxiang":"天香", + "new_luoyan_tianxiang_info":"", + "new_luoyan_liuli":"流离", + "new_luoyan_liuli_info":"", + ol_shichou:"誓仇", + ol_shichou_info:"当你使用【杀】时,你可以令至多X名角色也成为此【杀】的目标。(X为你已损失的体力值)", + yizan:"翊赞", yizan_info:"你可以将两张牌(其中至少一张是基本牌)当任意基本牌牌使用", yizan0:"翊赞", @@ -10891,7 +11476,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ jiqiao:'机巧', jiqiao_info:'出牌阶段开始时,你可以弃置任意张装备牌,然后亮出牌堆顶三倍数量的牌,你获得其中的锦囊牌', linglong:'玲珑', - linglong_info:'锁定技,若你的装备区没有防具牌,视为你装备着【八卦阵】;若你的装备区没有坐骑牌,你的手牌上限+1;若你的装备区没有宝物牌,你使用锦囊牌无距离限制', + linglong_info:'锁定技,若你的装备区没有防具牌,视为你装备着【八卦阵】;若你的装备区没有坐骑牌,你的手牌上限+1;若你的装备区没有宝物牌,则你视为拥有技能〖奇才(界)〗', fenyong:'愤勇', fenyong2:'愤勇', fenyong2_bg:'勇', @@ -10949,7 +11534,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ danji:'单骑', danji_info:'觉醒技,准备阶段开始时,若你的手牌数大于你的体力值,你减1点体力上限,然后获得“马术”和“怒斩”', tunchu:'屯储', - tunchu_info:'摸牌阶段摸牌时,若你没有“粮”,你可以额外摸两张牌,然后将任意张手牌置于你的武将上,称为“粮”,只要你的武将牌上有“粮”,你便不能使用【杀】', + tunchu_info:'摸牌阶段摸牌时,若你没有“粮”,你可以额外摸两张牌,然后可以将任意张手牌置于你的武将上,称为“粮”,只要你的武将牌上有“粮”,你便不能使用【杀】', shuliang:'输粮', shuliang_info:'每当一名角色的结束阶段开始时,若其手牌数少于体力值,你可以移去一张“粮”,然后该角色摸两张牌', jieyuan:'竭缘', @@ -11105,7 +11690,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ canshi:'残蚀', canshi2:'残蚀', canshi_info:'摸牌阶段开始时,你可以改为摸x张牌(x为已受伤的角色数),若如此做,当你与此回合内使用基本牌或锦囊牌时,你弃置一张牌。', - zhuiji_info:'锁定技,你与体力值低于你的角色距离为1。', + zhuiji_info:'锁定技,你与体力值不大于你的角色距离为1。', kunfen:'困奋', kunfen_info:'锁定技,结束阶段开始时,你失去1点体力,然后摸两张牌', fengliang:'逢亮', diff --git a/character/standard.js b/character/standard.js old mode 100644 new mode 100755 index c644b5f4b..7e751f7b5 --- a/character/standard.js +++ b/character/standard.js @@ -30,6 +30,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ lvbu:['male','qun',4,['wushuang']], diaochan:['female','qun',3,['lijian','biyue']], huaxiong:['male','qun',6,['yaowu']], + + caozhang:['male','wei',4,['new_jiangchi']], + xf_yiji:["male","shu",3,["xinfu_jijie","xinfu_jiyuan"],[]], + re_yuanshu:['male','qun',4,['wangzun','tongji']], }, characterIntro:{ liubei:'先主姓刘,讳备,字玄德,涿郡涿县人,汉景帝子中山靖王胜之后也。以仁德治天下。', @@ -58,6 +62,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ lvbu:'字奉先,五原郡九原县人。三国第一猛将,曾独力战刘关张三人,其武力世之无双。时人语曰:“人中有吕布,马中有赤兔。”', diaochan:'中国古代四大美女之一,有闭月羞花之貌。司徒王允之义女,由王允授意施行连环计,离间董卓、吕布,借布手除卓。后貂蝉成为吕布的妾。', huaxiong:'董卓旗下名将,自荐抵抗山东地区反对董卓的诸侯联军于汜水关前,他先后斩杀济北相鲍信之弟鲍忠和孙坚部将祖茂、以及袁术部将俞涉和韩馥手下潘凤等人,最后关东联军派出关羽与之一对一决斗而被杀。', + + xf_yiji:"伊籍,字机伯,生卒年不详,兖州山阳郡(今山东金乡县)人,三国时期蜀汉官员。年少时依附于同乡刘表。刘备落难到荆州时,伊籍时常拜访,托请刘备照顾。建安十三年(208年),刘表病死,伊籍便转投刘备,一起渡江南下。建安十六年(211年),刘备入蜀帮助刘璋,伊籍亦有跟随。随后刘备和刘璋双方决裂。建安十九年(214年),刘备平定益州,任命伊籍为左将军从事中郎,其待遇次于简雍、孙乾等。后升任昭文将军,并与诸葛亮、法正、刘巴、李严共同编制《蜀科》。", }, perfectPair:{ xiahoudun:['xiahouyuan'], @@ -1000,6 +1006,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ content:function(){ 'step 0' event.num=Math.min(5,game.countPlayer()); + if(player.hasSkill('yizhi')) event.num=5; event.cards=get.cards(event.num); event.chosen=[]; event.num1=0; @@ -2321,6 +2328,44 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } } }, + "new_jiangchi":{ + audio:"jiangchi", + trigger:{ + player:"phaseDrawEnd", + }, + direct:true, + content:function (){ + "step 0" + var list=['弃牌','摸牌','取消']; + if(!player.countCards('he')) list.remove('弃牌'); + player.chooseControl(list,function(){ + var player=_status.event.player; + if(list.contains('弃牌')){ + if(player.countCards('h')>3&&player.countCards('h','sha')>1){ + return '弃牌'; + } + if(player.countCards('h','sha')>2){ + return '弃牌'; + } + } + if(!player.countCards('h','sha')){ + return '摸牌'; + } + return 'cancel2'; + }).set('prompt',get.prompt('new_jiangchi')).set('prompt2',get.translation('new_jiangchi_info')); + "step 1" + if(result.control=='弃牌'){ + player.chooseToDiscard(true,'he'); + player.addTempSkill('jiangchi2','phaseUseEnd'); + player.logSkill('new_jiangchi'); + } + else if(result.control=='摸牌'){ + player.draw(); + player.addTempSkill('jiangchi3','phaseUseEnd'); + player.logSkill('new_jiangchi'); + } + }, + }, }, translate:{ caocao:'曹操', @@ -2359,7 +2404,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ lvbu:'吕布', diaochan:'貂蝉', huaxiong:'华雄', - + "xf_yiji":"伊籍", + re_yuanshu:'袁术', + caozhang:'曹彰', ganglie:'刚烈', tuxi:'突袭', @@ -2473,6 +2520,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ xinbiyue_info_alter:'结束阶段,你可以摸一张牌,如果你没有手牌,改为摸2张牌', yaowu:'耀武', yaowu_info:'锁定技,当任意一名角色使用红色【杀】对你造成伤害时,该角色回复1点体力或摸一张牌。', + "new_jiangchi":"将驰", + "new_jiangchi_info":"摸牌阶段结束时,你可以选择一项:1、摸一张牌,若如此做,你本回合内不能使用或打出【杀】。 2、弃置一张牌,若如此做,出牌阶段你使用【杀】无距离限制且你可以额外使用一张【杀】,直到回合结束。", }, }; }); diff --git a/character/xinghuoliaoyuan.js b/character/xinghuoliaoyuan.js index ab93e7266..515bd21cf 100755 --- a/character/xinghuoliaoyuan.js +++ b/character/xinghuoliaoyuan.js @@ -1,39 +1,11 @@ 'use strict'; game.import('character',function(lib,game,ui,get,ai,_status){ - //重新定义数字获取函数 满足张琪瑛的需求 - get.number=function(card){ - if(_status.event.name=='judge'){ - var owner=get.owner(card); - if(owner){ - if(owner.hasSkill('zhenyi_spade_red')||owner.hasSkill('zhenyi_spade_black')) return 5; - } - } - return card.number; - }; return { name:'xinghuoliaoyuan', connect:true, character:{ - re_yuji:["male","qun",3,["xinfu_guhuo"],["forbidai"]], - - lijue:["male","qun",4,["xinfu_langxi","xinfu_yisuan"],[]], - zhangji:["male","qun",4,["xinfu_lveming","xinfu_tunjun"],[]], - fanchou:["male","qun",4,["xinfu_xingluan"],[]], - guosi:["male","qun",4,["xinfu_tanbei","xinfu_sidao"],[]], - lvkai:["male","shu",3,["xinfu_tunan","xinfu_bijing"],[]], - zhanggong:["male","wei",3,["xinfu_zhenxing","xinfu_qianxin"],[]], - weiwenzhugezhi:["male","wu",4,["xinfu_fuhai"],[]], - xf_tangzi:["male","wei",4,["xinfu_xingzhao"],[]], - xf_huangquan:["male","shu",3,["xinfu_dianhu","xinfu_jianji"],[]], - xf_sufei:["male","wu",4,["xinfu_lianpian"],[]], - caoying:["female","wei",4,["xinfu_lingren","xinfu_fujian"],[]], - simahui:["male","qun",3,["xinfu_jianjie","xinfu_chenghao","xinfu_yinshi"],[]], - //baosanniang:["female","shu",3,["xinfu_wuniang","xinfu_xushen"],[]], - xurong:["male","qun",4,["xinfu_xionghuo","xinfu_shajue"],[]], - zhangqiying:["female","qun",3,["xinfu_falu","xinfu_dianhua","xinfu_zhenyi"],[]], - sp_xiahoushi:["female","shu",3,["xinfu_yanyu","xinfu_xiaode"],[]], - sp_taishici:["male","qun",4,["xinfu_jixu"],[]], wangcan:["male","qun",3,["xinfu_sanwen","xinfu_qiai","xinfu_denglou"],[]], + sp_taishici:["male","qun",4,["xinfu_jixu"],[]], re_jsp_pangtong:["male","wu",3,["xinfu_guolun","xinfu_songsang"],[]], lvdai:["male","wu",4,["xinfu_qinguo"],[]], re_zhangliang:["male","qun",4,["xinfu_jijun","xinfu_fangtong"],[]], @@ -44,29 +16,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ yanjun:["male","wu",3,["xinfu_guanchao","xinfu_xunxian"],[]], liuyao:["male","qun",4,["xinfu_kannan"],[]], liuyan:["male","qun",3,["xinfu_tushe","xinfu_limu"],[]], - pangdegong:["male","qun",3,["xinfu_pingcai","xinfu_pdgyingshi"],[]], - //zhaotongzhaoguang:["male","shu",4,["yizan_use","xinfu_longyuan"],[]], - majun:["male","wei",3,["xinfu_jingxie1","xinfu_qiaosi"],[]], - "xf_yiji":["male","shu",3,["xinfu_jijie","xinfu_jiyuan"],[]], - simazhao:["male","wei",3,["xinfu_daigong","xinfu_zhaoxin"],[]], - wangyuanji:["female","wei",3,["xinfu_qianchong","xinfu_shangjian"],[]], }, characterIntro:{ - lijue:"李傕(jué,一说“傕”读音“què”)(?—198年),字稚然。北地郡泥阳县(今陕西省耀县)人,汉末群雄之一。东汉末年汉献帝时的军阀、权臣,官至大司马、车骑将军、开府、领司隶校尉、假节。
李傕本为董卓部将,后被董卓的女婿牛辅派遣至中牟与朱儁交战,大破朱儁,进而至陈留、颍川等地劫掠。初平三年(192年)董卓和牛辅被杀后,李傕归无所依,于是采用贾诩之谋,伙同郭汜、张济、樊稠等原董卓部曲将攻向长安。击败吕布,杀死王允等人,占领长安,把持朝廷大权。后诸将不和,李傕在会议上杀死了樊稠,又与郭汜分别劫持了汉献帝和众臣,相互交战,张济率兵赶来和解,于是二人罢兵,李傕出屯池阳黄白城,郭汜、张济等人随汉献帝东归前往弘农。
后来,李傕、郭汜、张济反悔,联合起来追击汉献帝,与杨奉、董承等人几番交战。汉献帝一路逃亡,狼狈不堪,到达安邑,与李傕等人讲和。不久,汉献帝被曹操迎往许都。建安三年(198年),曹操派谒者仆射裴茂召集关西诸将段煨等人征讨李傕,灭其三族。", - zhangji:"张济(?-196年),武威郡祖厉县(今甘肃靖远东南)人。东汉末年割据军阀之一。 张济原为董卓部将,董卓被诛杀后,张济与李傕一同率军攻破长安,任中郎将。不久,升任镇东将军,封平阳侯,出屯弘农。献帝东迁时,张济升任骠骑将军,率军护卫献帝,后来因与董承等人有矛盾,便与李傕、郭汜一同追赶献帝。 建安元年(196年),张济因军队缺粮而进攻穰城,中流矢而死。死后,部队由侄儿张绣接管。", - guosi:"郭汜(?-197年),又名郭多,凉州张掖(今甘肃张掖西北)人,东汉末年将领、军阀,献帝时权臣。原为董卓部下。董卓被杀后,凉州众将归无所依,于是采用贾诩之谋,联兵将攻向长安,击败吕布,杀死王允等人,占领长安,把持朝廷大权。几年后,郭汜被部将伍习杀死。", - fanchou:"樊稠(?—195年),凉州金城(治今甘肃永靖西北)人。东汉末年军阀、将领。官至右将军,封万年侯。 原为董卓部将,董卓死后,伙同李傕、郭汜、张济等人合众十余万反扑长安,败吕布、杀王允,把持朝政。后马腾因与李傕有隙,于是联合韩遂举兵进攻,李傕派樊稠、郭汜等与其交战,大败马腾、韩遂于长平观下。樊稠追至陈仓,与韩遂友好罢兵,却遭李傕猜疑。兴平二年(195年),李傕让外甥骑都尉胡封在会议上将樊稠刺死(一说趁醉用杖击杀)。", - lvkai:"吕凯(?―225年),字季平,永昌郡不韦县(今云南保山东北)人,三国时期蜀汉官员。初任永昌郡五官掾功曹。章武三年(223年),建宁太守雍闿反叛,投降吴国,吴国任雍闿为永昌太守,吕凯闭境抗拒雍闿。建兴三年(225年),丞相诸葛亮南征,表奏吕凯功劳,任命他为云南太守,封阳迁亭侯。吕凯还未上任,便被叛乱的少数民族杀害。", - zhanggong:"张恭(生卒年不详),三国时期魏国大臣,与子张就一同闻名于西域。官至西域戊己校尉、关内侯,赠执金吾。初为敦煌郡功曹。东汉末河西大乱,太守马艾卒官,他被众人推为代理长史,遂派儿子张就请曹操委任太守,直至新太守到任。魏文帝时拜西域戊己校尉。魏明帝时去世。", - weiwenzhugezhi:"卫温 (?—231年),三国时期东吴将领,曾任将军职。诸葛直(?—231年),三国时期东吴将领。黄龙二年(230年)正月,孙权派卫温、诸葛直带领上万士兵出海寻找夷洲、亶洲,想要俘获那里的民众以充实东吴的人口,陆逊和全琮都谏言反对,孙权不听。230年和卫温一起登上台湾(当时的台湾叫做夷洲),他们是中国历史上记载的最早登陆台湾的人。卫温和诸葛直花费了约一年时间行军,士兵们因为疾病死去了十分之八到十分之九,因为亶洲太过遥远,卫温和诸葛直最终没能到达那里,只带了几千名夷洲的人返回。黄龙三年(231年),孙权认为诸葛直违背诏令,劳财伤民,无功而返,和卫温一同入狱被处死。", - xf_tangzi:"唐咨(生卒年不详),三国时魏利城(今江苏赣榆西)人。魏文帝黄初中利城郡反,推唐咨为主。后为魏军击破,遂亡至吴,官至左将军,封侯、持节。后助诸葛诞拒魏,兵败被俘。为安抚吴国军民,魏主拜唐咨为安远将军。", - xf_huangquan:"黄权(?-240年),字公衡。巴西郡阆中县(今四川阆中)人。三国时期蜀汉、曹魏将领。
黄权年轻时为郡吏,后被益州牧刘璋召为主簿。曾劝谏刘璋不要迎接刘备,因而被外放为广汉县长。刘璋败,才降刘备,被拜为偏将军。建计取汉中,拜护军。刘备为汉中王,仍领益州牧,以黄权为治中从事。及刘备称帝,将伐吴,黄权劝谏而不纳。以其为镇北将军,督江北军以防魏师进攻。刘备伐吴败还,而归途隔绝,黄权不得归,无奈之下率部降魏。被魏文帝所赏识,拜镇南将军,封育阳侯,加侍中,使同车陪乘。后领益州刺史,进驻河南。景初三年(239年),迁车骑将军、仪同三司。正始元年(240年),黄权去世,谥号“景”。", - xf_sufei:"苏飞(生卒年不详),东汉末年人物,原为东汉末年荆州牧刘表的部将,任江夏都督。
苏飞与甘宁交好,但是数次向黄祖推荐都失败。甘宁决定投效孙权时助其逃离。后来甘宁率吴军攻破江夏,苏飞兵败被俘。孙权打算将苏飞处斩,但是因为甘宁用性命担保而赦免了苏飞。降吴后官至军都督。", - caoying:"曹婴是在电影《三国志之见龙卸甲》中登场的虚拟人物,由李美琪饰演。曹婴是曹操的孙女,弓马娴熟,文武双全,深得曹操的用兵之道及心术。于凤鸣山一战中担任魏军大都督阻止诸葛亮北伐并因罗平安的告密而全歼关兴、张苞、赵云率领的蜀军部队。", - simahui:"司马徽(约145—208年),字德操,颍川阳翟(今河南禹州)人。东汉末年名士,精通道学、奇门、兵法、经学。有“水镜先生”之称。 司马徽为人清雅,学识广博,有知人之明,并向刘备推荐了诸葛亮、庞统等人,受到世人的敬重。", - //baosanniang:"鲍三娘是中国民间传说中的人物,事迹多见于《花关索传》。相传她是鲍家庄鲍员外的小女儿。后来与关索成亲,关羽自传授其武艺,因此也造就了鲍三娘的文武双全。荆州失守之后鲍三娘就跟随关索一同投奔蜀汉,并随诸葛亮征讨南蛮。平定了南蛮之后,夫妻二人就此一直替诸葛亮镇守着南中,他们也的确留下了许多脍炙人口的行侠仗义故事,在民间广为流传。", - xurong:"徐荣(?-192年),玄菟人(一说为辽东襄平人,《公孙度传》中说公孙度本辽东襄平人,迁居玄菟,为同郡徐荣所举,任辽东太守。同郡当是同“玄菟”郡),东汉末年将领。本为中郎将,曾向董卓推举同郡出身的公孙度出任辽东太守。于汴水之战中击败曹操的独立追击军,以及在梁东之战中击败孙坚的部队。在董卓死后,受司徒王允的命令与李傕、郭汜交战,因部将胡珍投降,寡不敌众,于新丰之战被击败,战死在乱军之中。", - zhangqiying:"张琪瑛(196年-217年),字不详(或琪瑛为字,名不详),祖籍沛国丰县(今江苏省丰县)。她的曾祖父张陵是西汉留侯张良的十一世孙、天师道(五斗米道)教祖,她的父亲是东汉末年割据汉中的军阀张鲁。张琪瑛继承家说,是五斗米教的传人。", wangcan:"王粲(177年-217年2月17日),字仲宣。山阳郡高平县(今山东微山两城镇)人。东汉末年文学家,“建安七子”之一,太尉王龚曾孙、司空王畅之孙。", re_jsp_pangtong:"庞统,字士元,襄阳(治今湖北襄阳)人。三国时刘备帐下谋士,官拜军师中郎将。才智与诸葛亮齐名,人称“凤雏”。在进围雒县时,统率众攻城,不幸被流矢击中去世,时年三十六岁。追赐统为关内侯,谥曰靖侯。庞统死后,葬于落凤庞统墓坡。", lvdai:"吕岱(161年-256年),字定公,广陵海陵(今江苏如皋)人。三国时期吴国重臣、将领。吕岱一生戮力奉公,为孙吴开疆拓土,功勋赫赫。太平元年(256年),吕岱去世,年九十六。", @@ -77,12 +28,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ yanjun:"严畯(生卒年不详),字曼才,彭城(治今江苏徐州)人,三国时期孙吴官员、学者。性情忠厚,待人以诚。少好学,精通《诗》、《书》、《三礼》,又好《说文》。避乱江东,与诸葛瑾、步骘是好朋友,被张昭推荐给孙权作骑都尉、从事中郎。建安二十二年(217年),横江将军鲁肃去世,孙权打算让严畯接替其位。严畯很有自知之明,知道自己没有能力对抗在荆州的关羽和北面的曹魏,便坚决不接受此任命。后来担任尚书令。严畯享年七十八岁。著有《孝经传》、《潮水论》。", liuyao:"刘繇(yáo,一读yóu)(156年-197年),字正礼。东莱牟平(今山东牟平)人。东汉末年宗室、大臣,汉末群雄之一,齐悼惠王刘肥之后,太尉刘宠之侄。
刘繇最初被推举为孝廉,授郎中。任下邑县长时,因拒郡守请托而弃官。后被征辟为司空掾属,除授侍御史,因战乱而不到任,避居淮浦。兴平元年(194年),被任命为扬州刺史。他先后与袁术、孙策交战,一度被朝廷加授为扬州牧、振武将军,但最终还是败归丹徒。此后,刘繇又击破反叛的笮融,旋即病逝,年四十二。", liuyan:"刘焉(?-194年),字君郎(《华阳国志》又作君朗)。江夏郡竟陵县(今湖北省天门市)人。东汉末年宗室、军阀,汉末群雄之一,西汉鲁恭王刘余之后。
刘焉初以汉朝宗室身份,拜为中郎,历任雒阳令、冀州刺史、南阳太守、宗正、太常等官。因益州刺史郄俭在益州大肆聚敛,贪婪成风,加上当时天下大乱。刘焉欲取得一安身立命之所,割据一方,于是向朝廷求为益州牧,封阳城侯,前往益州整饬吏治。郄俭为黄巾军所杀,刘焉进入益州,派张鲁盘踞汉中,张鲁截断交通,斩杀汉使,从此益州与中央道路不通。刘焉进一步对内打击地方豪强,巩固自身势力,益州因而处于半独立的状态。兴平元年(194年),刘焉因背疮迸发而逝世,其子刘璋继领益州牧。", - pangdegong:"庞德公,字尚长,荆州襄阳人,东汉末年名士、隐士。 庞德公与当时徐庶、司马徽、诸葛亮、庞统等人交往密切。庞德公曾称诸葛亮为\"卧龙\",庞统为\"凤雏\",司马徽为\"水镜\",被誉为知人。对诸葛亮、庞统等人早年影响较大,并得到诸葛亮的敬重。庞德公最后隐居于鹿门山,采药而终。", - //zhaotongzhaoguang:"赵统,赵云长子,生卒年不详。常山真定(今为河北正定)人,陈寿在正史《三国志》中记载赵云去世后,赵统袭爵永昌亭侯,官至蜀汉虎贲中郎督,加行领军。赵广(?—263年),三国时期蜀汉牙门将,赵云的次子,赵统之弟。随姜维前往沓中,官拜牙门将。曹魏司马氏派五路大军伐蜀时,随大将军姜维与魏兵战于疆川口,姜维败绩还守剑阁,赵广于沓中战死。", - majun:"马钧,字德衡,扶风(今陕西扶风)人,生活在汉朝末期,是中国古代科技史上最负盛名的机械发明家之一。马钧年幼时家境贫寒,自己又有口吃的毛病,所以不擅言谈却精于巧思,后来在魏国担任给事中的官职。马钧最突出的表现有还原指南车;改进当时操作笨重的织绫机;发明一种由低处向高地引水的龙骨水车;制作出一种轮转式发石机,能连续发射石块,远至数百步;把木制原动轮装于木偶下面,叫做“水转百戏”。此后,马钧还改制了诸葛连弩,对科学发展和技术进步做出了贡献。", - xf_yiji:"伊籍,字机伯,生卒年不详,兖州山阳郡(今山东金乡县)人,三国时期蜀汉官员。年少时依附于同乡刘表。刘备落难到荆州时,伊籍时常拜访,托请刘备照顾。建安十三年(208年),刘表病死,伊籍便转投刘备,一起渡江南下。建安十六年(211年),刘备入蜀帮助刘璋,伊籍亦有跟随。随后刘备和刘璋双方决裂。建安十九年(214年),刘备平定益州,任命伊籍为左将军从事中郎,其待遇次于简雍、孙乾等。后升任昭文将军,并与诸葛亮、法正、刘巴、李严共同编制《蜀科》。", - simazhao:"司马昭(211年—265年9月6日),字子上(小说《三国演义》为子尚),河内温县(今属河南)人。三国时期曹魏权臣,西晋王朝的奠基人之一。为晋宣帝司马懿与宣穆皇后张春华次子、晋景帝司马师之弟、晋武帝司马炎之父。 司马昭早年随父抗击蜀汉,多有战功。累官洛阳典农中郎将,封新城乡侯。正元二年(255年),继兄司马师为大将军,专揽国政。甘露五年(260年),魏帝曹髦被弑杀,司马昭立曹奂为帝。景元四年(263年),分兵遣钟会、邓艾、诸葛绪三路灭亡蜀汉,受封晋公。次年,进爵晋王。 咸熙二年(265年),司马昭病逝,年五十四,葬于崇阳陵。数月后,其子司马炎代魏称帝,建立晋朝,追尊司马昭为文帝,庙号太祖。", - wangyuanji:"王元姬(217年—268年4月20日),东海郯县(今山东郯城西北)人。三国时期曹魏经学家王朗之孙女、王肃之女,晋文帝司马昭妻子,晋武帝司马炎与齐王司马攸的生母。 王元姬幼时便通《诗经》、《论语》,嫁司马昭后竭尽妇道、谦虚谨慎。其人颇有远见,曾预言钟会谋反之事。泰始元年(265年),司马炎建立西晋,尊王元姬为皇太后,宫号曰崇化宫。王元姬身处太后之位,提倡节俭,身体力行,作为众妃子的表率。在其治理之下,后宫井井有条,众人和睦相处。 泰始四年(268年),王元姬崩逝,终年五十二岁。谥号文明皇后,与司马昭合葬于崇阳陵。", }, characterTitle:{ lijue:"体力上限:6", @@ -97,7 +42,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ pangtong:['zhugejin'], taishici:['liuyao','kongrong'], //zhaotongzhaoguang:['zhaoyun','mayunlu'], - simazhao:['wangyuanji'], + simazhao:['wangyuanji'], }, skill:{ "xinfu_langxi":{ @@ -4409,7 +4354,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ prompt+=event.ingame?',然后你摸一张牌。':'。'; player.chooseTarget(prompt).set('ai',function(target){ var player=_status.event.player; - return get.attitude(player,target)*target.isDamaged()?2:1; + return get.attitude(player,target)*(target.isDamaged()?2:1); }); 'step 1' if(result.bool&&result.targets.length){ @@ -5657,11 +5602,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "tanbei_effect1_info":"", "tanbei_effect2":"贪狈", "tanbei_effect2_info":"", - lijue:"李傕", - zhangji:"张济", - fanchou:"樊稠", - guosi:"郭汜", - lvkai:"吕凯", + "xinfu_tunan":"图南", "xinfu_tunan_info":"出牌阶段限一次,你可以展示牌堆顶的一张牌并选择一名其他角色,然后该角色选择一项:使用此牌(无距离限制);或将此牌当普通【杀】使用。", "xinfu_bijing":"闭境", @@ -5674,15 +5615,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "qianxin_effect_info":"", "xinfu_qianxin2":"遣信", "xinfu_qianxin2_info":"", - zhanggong:"张恭", - weiwenzhugezhi:"卫温诸葛直", + "xinfu_fuhai":"浮海", "xinfu_fuhai_info":"出牌阶段对每名角色限一次,你可以展示一张手牌并选择上家或下家。该角色展示一张手牌,若你的牌点数大于等于他的牌点数,你弃置你展示的牌,然后继续对其上家或下家重复此流程;你的牌点数小于该角色牌的点数,则该角色弃置其展示的牌,然后你与其各摸X张牌(X为你此回合内发动此技能选择的角色数),且你此阶段内不能再发动“浮海”。", "fuhai_clear":"浮海", "fuhai_clear_info":"", - "xf_tangzi":"唐咨", - "xf_huangquan":"黄权", - "xf_sufei":"苏飞", + "xz_xunxun":"恂恂", "xz_xunxun_info":"摸牌阶段,你可以观看牌堆顶的四张牌,然后将其中的两张牌置于牌堆顶,并将其余的牌以任意顺序置于牌堆底。", "xinfu_xingzhao":"兴棹", @@ -5697,10 +5635,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "xinfu_jianji_info":"出牌阶段限一次,你可以令一名其他角色摸一张牌。然后,该角色可以使用此牌。", "xinfu_lianpian":"联翩", "xinfu_lianpian_info":"出牌阶段限三次。当你对一名角色连续使用牌时,你可以摸一张牌,然后可以将一张牌交给该角色。", - caoying:"曹婴", - simahui:"司马徽", - baosanniang:"鲍三娘", - xurong:"徐荣", + "xinfu_lingren":"凌人", "xinfu_lingren_info":"出牌阶段限一次。当你使用带有“伤害”这一标签的基本牌或普通锦囊牌指定目标后,你可以猜测其中的一个目标的手牌中是否有基本牌,锦囊牌或装备牌。若你猜中的项目数:≥1,此牌对该角色的伤害+1;≥2,你摸两张牌;≥3,你获得技能〖奸雄〗(新界)和〖行殇〗直到下回合开始。", "lingren_adddamage":"凌人", @@ -5747,7 +5682,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "xinfu_xushen_info":"限定技,当一名男性角色使用【桃】令你脱离濒死状态时,若场上没有“关索”,则其可以将自己的一张武将牌变更为“关索”。然后你回复一点体力,并获得技能〖镇南〗。", "xinfu_zhennan":"镇南", "xinfu_zhennan_info":"当你成为【南蛮入侵】的目标时,你可以对一名其他角色造成1-3点随机伤害。", - zhangqiying:"张琪瑛", "xinfu_falu":"法箓", "xinfu_falu_info":"锁定技,游戏开始时,你获得“紫薇”,“后土”,“玉清”,“勾陈”标记各一个。当你的牌因弃置而进入弃牌堆后,根据这些牌的花色,你获得对应的标记:黑桃,你获得1枚“紫薇”;梅花,你获得1枚“后土”;红桃,你获得1枚“玉清”;方块,你获得1枚“勾陈”。(每种标记限拥有1个)", "xinfu_dianhua":"点化", @@ -5760,13 +5694,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "zhenyi_club_info":"", "zhenyi_heart":"真仪", "zhenyi_heart_info":"", - "sp_xiahoushi":"sp夏侯氏", "xinfu_yanyu":"燕语", "xinfu_yanyu_info":"任意一名角色的出牌阶段开始时,你可以弃置一张牌。若如此做,则该出牌阶段内,每当有角色失去了与你弃置的牌类别相同的其他牌且进入弃牌堆时,你可令任意一名角色获得此牌。每阶段以此法获得的牌不能超过三张。", "xinfu_yanyu2":"燕语", "xinfu_yanyu2_info":"", "xinfu_xiaode":"孝德", "xinfu_xiaode_info":"每当有其他角色阵亡后,你可以声明该武将牌的一项技能。若如此做,你获得此技能且不能再发动〖孝德〗直到你的回合结束。(你不能声明觉醒技或主公技)", + "sp_taishici":"太史慈", wangcan:"王粲", "re_jsp_pangtong":"庞统", @@ -5843,7 +5777,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "xinfu_tushe_info":"当你使用非装备牌指定目标时,若你没有基本牌,则你可以摸X张牌。(X为此牌指定的目标数)", "xinfu_limu":"立牧", "xinfu_limu_info":"出牌阶段限一次,将一张方片花色牌当做【乐不思蜀】对自己使用,然后回复1点体力。只要你的判定区内有牌,你对攻击范围内的其他角色使用牌便没有次数和距离限制。", - "re_yuji":"于吉", + "xinfu_guhuo":"蛊惑", "xinfu_guhuo_info":"每名角色的回合限一次,你可以扣置一张手牌当一张基本牌或普通锦囊牌使用或打出。其他角色依次选择是否质疑。一旦有其他角色质疑则翻开此牌:若为假则此牌作废,若为真,则质疑角色获得技能〖缠怨〗。", "guhuo_guess":"蛊惑", @@ -5856,7 +5790,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "guhuo_wuxie_info":"", "guhuo_phase":"蛊惑", "guhuo_phase_info":"", - pangdegong:"庞德公", + "xinfu_pingcai":"评才", "xinfu_pingcai_info":"出牌阶段限一次,你可以挑选一个宝物并擦拭掉其上面的灰尘。然后,你可以根据宝物类型执行对应的效果。
【卧龙】:对1名角色造成1点火焰伤害。若场上有存活的诸葛亮(火),则改为对至多2名角色各造成1点火焰伤害。
【凤雏】:横置至多3名角色。若场上有存活的庞统(火),则改为横置至多4名角色。
【水镜】:将1名角色装备区内的防具移动到另1角色对应区域。若场上有存活的司马徽,则改为将1名角色装备区内的1件装备移动到另1角色对应区域。
【玄剑】:令1名角色摸一张牌并回复1点体力。若场上有存活的徐庶(将/界),则改为令1名角色摸一张牌并回复1点体力,然后你摸一张牌。", "xinfu_pdgyingshi":"隐世", @@ -5869,7 +5803,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "pcaudio_shuijing_card_info":"", "pcaudio_xuanjian_card":"玄剑", "pcaudio_xuanjian_card_info":"", - zhaotongzhaoguang:"赵统赵广", "yizan_respond_sha":"翊赞", "yizan_respond_sha_info":"", "yizan_use":"翊赞", @@ -5880,20 +5813,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){ "xinfu_longyuan_info":"觉醒技,当你使用或打出的基本牌结算完成后,若你本局游戏内发动过〖翊赞〗的次数大于等于3,则你将〖翊赞〗描述中的“两张牌”改为“一张牌”。", "yizan_count":"翊赞", "yizan_count_info":"", - majun:"马钧", "xinfu_jingxie1":"精械", "xinfu_jingxie1_info":"出牌阶段,你可以展示一张未强化过的【诸葛连弩】或标准包/军争包/SP包中的防具牌,然后对其进行强化。当你处于濒死状态时,你可以重铸一张防具牌,将体力回复至1点。", "xinfu_jingxie2":"精械", "xinfu_jingxie2_info":"", "xinfu_qiaosi":"巧思", "xinfu_qiaosi_info":"出牌阶段限一次,你可以投掷一枚六面骰子,展示牌堆顶的X张牌并获得之。然后,你选择一项:1.交给一名其他角色X张牌。2.弃置X张牌。(X为骰子的点数)", - "xf_yiji":"伊籍", "xinfu_jijie":"机捷", "xinfu_jijie_info":"出牌阶段限一次。你可以观看牌堆底的一张牌,然后将其交给一名角色。", "xinfu_jiyuan":"急援", "xinfu_jiyuan_info":"当一名角色进入濒死状态时,或者你交给一名其他角色牌时,你可以令其摸一张牌。", - simazhao:"司马昭", - wangyuanji:"王元姬", "xinfu_daigong":"怠攻", "xinfu_daigong_info":"每回合限一次。当你受到伤害时,你可以展示所有手牌,然后令伤害来源选择一项:交给你一张与你所有手牌花色均不相同的一张牌,或防止此伤害。", "xinfu_zhaoxin":"昭心", diff --git a/character/yijiang.js b/character/yijiang.js old mode 100644 new mode 100755 index dac347cc8..68adc8ca6 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -5,7 +5,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ connect:true, connectBanned:['qinmi'], character:{ - caozhang:['male','wei',4,['jiangchi']], guohuai:['male','wei',4,['jingce']], zhangchunhua:['female','wei',3,['jueqing','shangshi']], caozhi:['male','wei',3,['luoying','jiushi']], @@ -83,6 +82,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ jikang:['male','wei',3,['qingxian','juexiang']], qinmi:['male','shu',3,['jianzheng','zhuandui','tianbian']], xuezong:['male','wu',3,['funan','jiexun']], + + old_huaxiong:['male','qun',6,['shiyong']], }, characterIntro:{ caozhi:'字子建,沛国谯人,三国曹魏著名文学家,建安文学代表人物。魏武帝曹操之子,魏文帝曹丕之弟,生前曾为陈王,去世后谥号“思”,因此又称陈思王。南朝宋文学家谢灵运更有“天下才有一石,曹子建独占八斗”的评价。王士祯尝论汉魏以来二千年间诗家堪称“仙才”者,曹植、李白、苏轼三人耳。', @@ -148,6 +149,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sunziliufang:'孙资在曹操手下历任县令,参丞相军事;刘放曾有劝王松归顺曹操之举,为曹操所欣赏,遂招为司空府官,又外放历任几处县令。魏国初建之际,孙资与刘放俱任秘书郎。曹丕继位后,二人一同掌握机密。曹睿病危时,二人力荐曹爽,又推荐招回司马懿辅政。最后,曹睿独召曹爽、司马懿、刘放、孙资同受诏命,而免去曹宇、夏侯献、曹肇、秦朗的官职。', huanghao:'宦官。为后主刘禅所宠,专秉朝政。黄皓与大将军姜维不睦,维启后主杀之,后主不从。皓阴以心腹阎宇替维。景耀六年,蜀亡,邓艾预欲杀之,皓贿赂左右得免。及后主迁洛阳,皓为司马昭凌迟处死。', zhangrang:'汉中常侍。同赵忠、曹节、段珪等为“十常侍”,为灵帝所宠。让等专权乱政、卖官索财,朝野皆痛恨之。郎中张钧上书奏请诛杀十常侍,帝不允,让等阴杀钧。及灵帝崩,大将军何进欲杀让等,让阴结何太后,招进入宫,斩杀之。部将袁绍引兵攻让,让等劫帝走河上。追急,让投水自尽。', + jikang:'嵇(jī)康(224年-263年,一作223年-262年),字叔夜。谯国铚县(今安徽省濉溪县)人。三国时期曹魏思想家、音乐家、文学家。
嵇康幼年聪颖,博览群书,广习诸艺,又喜爱老庄学说。身长七尺八寸,容止出众。后娶魏武帝曹操曾孙女长乐亭主为妻,拜郎中,调中散大夫,世称“嵇中散”。后隐居不仕,屡拒为官。因得罪司隶校尉钟会,遭其构陷,而被掌权的大将军司马昭处死,时年四十岁。', + xinxianying:'辛氏(191年—269年),字宪英,祖籍陇西,颍川阳翟(今河南禹州)人。魏晋时期著名才女,曹魏侍中辛毗之女,卫尉羊耽之妻。辛宪英聪朗有才鉴,曾劝弟辛敞尽忠职守,预言钟会将会叛乱。泰始五年(公元269年),辛宪英逝世,享年七十九岁。', + wuxian:'穆皇后吴氏(?—245年),陈留(今河南开封)人,车骑将军吴懿之妹,三国时期蜀汉昭烈帝刘备的皇后。
吴氏早年丧父,其父生前与刘焉交情深厚,所以全家跟随刘焉来到蜀地。后刘焉听相面者说吴氏有大贵之相,于是为儿子刘瑁迎娶吴氏。刘瑁死后,吴氏成为寡妇。
建安十九年(214年),刘备平定益州,纳吴氏为夫人。建安二十四年(219年),刘备自称汉中王,立吴氏为汉中王后。章武元年(221年),刘备称帝,建立蜀汉,立吴氏为皇后。章武三年(223年),刘备去世,太子刘禅即位,尊嫡母吴氏为皇太后。延熙八年(245年),吴氏去世,谥号穆皇后,葬入刘备的惠陵。', + qinmi:'秦宓(?-226年),字子敕。广汉郡绵竹县(今四川德阳北)人。三国蜀汉时大臣、学者。秦宓善舌辩。早年仕于益州牧刘璋麾下,后降刘备。刘备伐吴时,秦宓劝阻,刘备大怒,欲杀秦宓。因诸葛亮及时求情,才保住性命,仅被下狱,后被释放,拜左中郎将、长水校尉。吴蜀同盟后,孙权派张温至成都回访。酒宴之上,秦宓与张温舌战,说得张温无言以对。后官至大司农。建兴四年(226年),秦宓病逝。', + xushi:'徐氏,孙权之弟孙翊的妻子,著名烈女。孙翊的部下妫览、戴员买通家将边鸿将孙翊杀死,并将全部罪责推给边鸿,又谋杀了前来查问的太守孙河。徐夫人一面用美人计色诱妫览、戴员,令其放松警惕;一面对孙翊生前亲信孙高、傅婴说明真相并晓以大义,最终成功地在内室中将杀夫凶手妫览、戴员诛杀。', + xuezong:'薛综(?―243年),字敬文,沛郡竹邑(今安徽濉溪)人,三国时期吴国名臣。少时避乱至交州,师从刘熙。士燮归附孙权,召其为五官中郎将,出任合浦、交阯太守。后从征至九真,回朝任谒者仆射。232年,升任尚书仆射。240年,改任选曹尚书。242年,担任太子少傅,兼任选部职任。243年,薛综去世。薛综是当时名儒,著有诗赋难论数万言,集为《私载》,并著有《五宗图述》、《二京解》。', + caiyong:'蔡邕(133年-192年),字伯喈。陈留郡圉县(今河南杞县南)人。东汉时期名臣,文学家、书法家,才女蔡文姬之父。蔡邕早年拒朝廷征召之命,后被征辟为司徒掾属,任河平长、郎中、议郎等职,曾参与续写《东观汉记》及刻印熹平石经。后因罪被流放朔方,几经周折,避难江南十二年。董卓掌权时,强召蔡邕为祭酒。三日之内,历任侍御史、治书侍御史、尚书、侍中、左中郎将等职,封高阳乡侯,世称“蔡中郎”。董卓被诛杀后,蔡邕因在王允座上感叹而被下狱,不久便死于狱中,年六十。', + caojie:'曹节(196年―260年),沛国谯县(今安徽亳州)人,汉献帝刘协第二任皇后,魏武帝曹操的女儿。建安十八年(213年),曹操将女儿曹宪、曹节、曹华三姐妹同时入宫中,封为夫人。建安十九年(214年),并封为贵人。曹操废掉汉献帝第一位皇后伏寿,将她囚禁而死。曹操要汉献帝立曹节为皇后,汉献帝只得依从。建安二十五年(220年),曹操去世,曹丕袭封魏王位。曹丕授意华歆去逼汉献帝让位。曹节怒斥华歆,华歆只好退出宫去。第二天又逼汉献帝将帝位禅让给曹丕。并以武力威胁,向曹节索要玺印,曹节无奈,将玺印掷于栏板之下。面对曹丕篡位,她极为愤怒,高喊:“老天有眼,决不让你长久!”汉献帝被废为山阳公,曹节为山阳公夫人。景元元年(260年),曹节病逝,仍以汉朝礼仪合葬于献帝的禅陵,谥号献穆皇后。', }, perfectPair:{ wuguotai:['sunjian','sunshangxiang'], @@ -2107,9 +2116,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, taoluan:{ - enable:'phaseUse', + enable:'chooseToUse', filter:function(event,player){ - return !player.hasSkill('taoluan3'); + return !player.hasSkill('taoluan3')&&player.countCards('he')>0; }, init:function(player){ player.storage.taoluan=[]; @@ -2140,25 +2149,25 @@ game.import('character',function(lib,game,ui,get,ai,_status){ var player=_status.event.player; var players=game.filterPlayer(); if(player.countCards('h',button.link)) return 0; - if(button.link=='wuzhong'){ + if(button.link[2]=='wuzhong'){ if(player.countCards('h')0){ return 1+Math.random(); } return 0; } - if(button.link=='nanman'||button.link=='wanjian'||button.link=='taoyuan'||button.link=='wugu'){ + if(button.link[2]=='nanman'||button.link[2]=='wanjian'||button.link[2]=='taoyuan'||button.link[2]=='wugu'){ var eff=0; for(var i=0;i0){ @@ -2192,12 +2201,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, backup:function(links,player){ return { - filterCard:false, - selectCard:0, + filterCard:true, + selectCard:1, popname:true, + check:function(card){ + return 6-get.value(card); + }, + position:'he', viewAs:{name:links[0][2]}, onuse:function(result,player){ - player.storage.taoluan.push(result.card.name); + player.storage.taoluan.add(result.card.name); }, } }, @@ -2222,16 +2235,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return 0; } }, - threaten:1.6, + threaten:1.9, }, - group:['taoluan2'] + group:['taoluan2','taoluan4'] }, taoluan2:{ trigger:{player:['useCardAfter','respondAfter']}, forced:true, popup:false, filter:function(event,player){ - return event.skill=='taoluan_backup'||event.skill=='taoluan5'; + return event.skill=='taoluan_backup'||event.skill=='taoluan5'||event.skill=='taoluan4'; }, content:function(){ 'step 0' @@ -2252,8 +2265,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ event.target=target; player.line(target,'green'); var type=get.type(trigger.card,'trick'); - target.chooseCard('滔乱

交给'+get.translation(player)+'一张'+get.translation(type)+'牌,或令其失去一点体力且滔乱无效直到回合',function(card,player,target){ - return get.type(card,'trick')==_status.event.cardType; + target.chooseCard('滔乱

交给'+get.translation(player)+'一张不为'+get.translation(type)+'牌的牌,或令其失去一点体力且滔乱无效直到回合结束','he',function(card,player,target){ + return get.type(card,'trick')!=_status.event.cardType; }).set('cardType',type).set('ai',function(card){ if(_status.event.att){ return 11-get.value(card); @@ -2274,41 +2287,38 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, taoluan3:{}, taoluan4:{ - trigger:{player:'chooseToRespondBegin'}, + prompt:'将一张牌当做闪使用', + enable:'chooseToRespond', filter:function(event,player){ - if(event.responded) return false; - if(!event.filterCard({name:'shan'})) return false; - if(player.storage.taoluan.contains('shan')) return false; - return true; + if(event.parent.name!='sha') return false; + return !player.storage.taoluan.contains('shan')&&!player.hasSkill('taoluan3'); }, - check:function(event,player){ - var allshown=true,players=game.filterPlayer(); - for(var i=0;i1&&get.attitude(player,players[i])>0){ - return 1; - } - } - return 0; - }, - content:function(){ - trigger.untrigger(); - trigger.responded=true; - trigger.result={bool:true,card:{name:'shan'},skill:'taoluan_backup'}; - player.storage.taoluan.push('shan'); + onuse:function(result,player){ + player.storage.taoluan.add('shan'); }, + filterCard:true, + position:'he', + selectCard:1, + viewAs:{name:'shan'}, + ai:{ + skillTagFilter:function(player){ + return !player.storage.taoluan.contains('shan')&&!player.hasSkill('taoluan3'); + }, + threaten:1.5, + respondShan:true, + } }, taoluan5:{ - enable:'chooseToUse', + /*enable:'chooseToUse', filter:function(event,player){ return event.type=='dying'&&!player.storage.taoluan.contains('tao'); }, onuse:function(result,player){ - player.storage.taoluan.push('tao'); + player.storage.taoluan.add('tao'); }, - filterCard:function(){ - return false; - }, - selectCard:-1, + filterCard:true, + position:'he', + selectCard:1, viewAs:{name:'tao'}, ai:{ skillTagFilter:function(player){ @@ -2316,7 +2326,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, threaten:1.5, save:true, - } + }*/ }, taoluan_backup:{}, jishe:{ @@ -5748,11 +5758,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ selectCard:2, position:'h', audio:2, - derivation:['wusheng','paoxiao'], + derivation:['new_rewusheng','new_repaoxiao'], viewAs:{name:'sha'}, prompt:'将两张手牌当杀使用或打出', check:function(card){ - if(_status.event.player.hasSkill('wusheng')&&get.color(card)=='red') return 0; + if(_status.event.player.hasSkill('new_rewusheng')&&get.color(card)=='red') return 0; if(_status.event.name=='chooseToRespond'){ if(card.name=='sha') return 0; return 6-get.useful(card); @@ -5763,7 +5773,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ ai:{ respondSha:true, order:function(item,player){ - if(player.hasSkill('wusheng')&&player.hasSkill('paoxiao')){ + if(player.hasSkill('new_rewusheng')&&player.hasSkill('new_repaoxiao')){ return 1; } if(player.countCards('h')<4){ @@ -5782,8 +5792,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ return event.getParent().skill=='fuhun'; }, content:function(){ - player.addTempSkill('wusheng'); - player.addTempSkill('paoxiao'); + player.addTempSkill('new_rewusheng'); + player.addTempSkill('new_repaoxiao'); player.addTempSkill('fuhun3'); } }, @@ -7075,6 +7085,75 @@ game.import('character',function(lib,game,ui,get,ai,_status){ expose:0.5, } }, + old_anxu:{ + enable:'phaseUse', + usable:1, + multitarget:true, + audio:'anxu', + filterTarget:function(card,player,target){ + if(player==target) return false; + var num=target.countCards('h'); + if(ui.selected.targets.length){ + return numplayers[i].countCards('h')) return true; + } + return false; + }, + selectTarget:2, + content:function(){ + 'step 0' + var gainner,giver; + if(targets[0].countCards('h')0) return -1; + var players=game.filterPlayer(); + for(var i=0;i=0&&num20){ - cards=get.cards(num); + if(event.bottom) cards=get.bottomCards(num); + else cards=get.cards(num); } else{ cards=[]; @@ -16625,6 +16626,9 @@ else if(arguments[i]=='visible'){ next.visible=true; } + else if(arguments[i]=='bottom'){ + next.bottom=true; + } else if(typeof arguments[i]=='object'&&arguments[i].drawDeck!=undefined){ next.drawDeck=arguments[i].drawDeck; } @@ -44208,6 +44212,64 @@ return false; }, }, + bottomCards:function(num){ + if(_status.waitingForCards){ + ui.create.cards.apply(ui.create,_status.waitingForCards); + delete _status.waitingForCards; + } + var list=[]; + var card=false; + if(typeof num!='number') num=1; + if(num==0) {card=true;num=1;} + if(num<0) num=1; + while(num--){ + if(ui.cardPile.hasChildNodes()==false){ + if(_status.maxShuffle!=undefined){ + if(_status.maxShuffle==0){ + if(_status.maxShuffleCheck){ + game.over(_status.maxShuffleCheck()); + } + else{ + game.over('平局'); + } + return []; + } + _status.maxShuffle--; + } + game.shuffleNumber++; + var cards=[],i; + for(var i=0;i