character.jiange={ character:{ jg_pangtong:['male','shu',3,['qiwu','tianyu'],['fullskin']], jg_huangyueying:['female','shu',3,['zhinang','jingmiao'],['fullskin']], jg_zhugeliang:['male','shu',3,['biantian','bazhen'],['fullskin']], jg_liubei:['male','shu',4,['jizhen','lingfeng'],['fullskin']], jg_xiahouyuan:['male','wei',4,['shensu','juechen'],['fullskin']], jg_caozhen:['male','wei',4,['chiying','jingfan'],['fullskin']], jg_zhanghe:['male','wei',4,['huodi','jueji'],['fullskin']], jg_simayi:['male','wei',6,['xuanlei','sfanshi','konghun'],['fullskin']], }, skill:{ sfanshi:{ init:function(player){ player.maxHp=Math.floor(game.players.length/2)+2; player.hp=player.maxHp; player.update(); }, trigger:{global:'dieAfter'}, forced:true, content:function(){ player.maxHp=Math.floor(game.players.length/2)+2; player.hp=Math.min(player.hp,player.maxHp); player.update(); }, group:'sfanshi2', ai:{ mingzhi:false } }, sfanshi2:{ trigger:{player:'phaseEnd'}, forced:true, check:function(){ return false; }, content:function(){ player.loseHp(); } }, konghun:{ trigger:{player:'phaseUseBegin'}, direct:true, filter:function(event,player){ return player.hp<=Math.floor(game.players.length/3); }, content:function(){ "step 0" player.chooseTarget('是否发动【控魂】?',function(card,player,target){ return player!=target; },[1,Math.floor(game.players.length/2)]).ai=function(target){ return ai.get.damageEffect(target,player,player,'thunder')+1; } "step 1" if(result.bool){ event.targets=result.targets.slice(0); player.logSkill('konghun',event.targets,'thunder'); event.targets.sort(lib.sort.seat); event.num=0; } else{ event.finish(); } "step 2" if(event.num0&&event.player!=player&&event.player.hp1||event.targets[0]!=player); }, silent:true, forced:true, popup:false, content:function(){ player.addTempSkill('huodi3','phaseAfter'); } }, huodi3:{}, jingfan:{ trigger:{player:'phaseUseEnd'}, unique:true, direct:true, content:function(){ "step 0" var num=get.cardCount(true,player)-player.num('h'); event.num=num; if(num>0){ player.draw(num); } "step 1" if(event.num>0){ player.chooseTarget('选择至多'+get.cnNumber(event.num)+'名角色令其与其他角色的距离-1',[1,event.num],function(card,player,target){ return player!=target; }).ai=function(target){ return ai.get.attitude(player,target); } } else{ event.finish(); } "step 2" if(result.bool&&result.targets){ player.logSkill('jingfan',result.targets); for(var i=0;i0; }, filter:function(event,player){ if(event.num<=1) return false; return true; }, priority:-11, content:function(){ trigger.num=1; if(trigger.source){ trigger.source.addTempSkill('chiying2','damageAfter'); } } }, chiying2:{ trigger:{source:'damageEnd'}, forced:true, popup:false, content:function(){ player.draw(); } }, juechen:{ trigger:{player:'useCard'}, filter:function(event,player){ return event.card.name=='sha'; }, direct:true, content:function(){ "step 0" game.delay(0.5); player.chooseTarget('是否发动【绝尘】?',function(card,player,target){ return player!=target&&!trigger.targets.contains(target)&&target.num('he')>0; }).ai=function(target){ return -ai.get.attitude(player,target); } "step 1" if(result.bool){ player.logSkill('juechen',result.targets); player.discardPlayerCard(true,result.targets[0],'he'); } } }, lingfeng:{ trigger:{player:'phaseDrawBefore'}, check:function(event,player){ for(i=0;i0; }).ai=function(target){ return -ai.get.attitude(player,target); } } "step 2" if(result.bool&&result.targets&&result.targets.length){ player.discardPlayerCard(result.targets[0],'he',true); } "step 3" player.gain(event.cards); player.$draw(event.cards); game.delay(); }, ai:{ threaten:1.1 } }, biantian4:{ trigger:{player:'dieBegin'}, forced:true, popup:false, content:function(){ for(var i=0;i0; }, content:function(){ "step 0" player.choosePlayerCard(trigger.player,'是否发动【精妙】弃置'+ get.translation(trigger.player)+'一张牌?','he'); "step 1" if(result.bool){ player.logSkill('jingmiao',trigger.player); trigger.player.discard(result.links); } }, ai:{ expose:0.2 } }, zhinang:{ trigger:{player:'phaseBegin'}, frequent:true, content:function(){ "step 0" event.cards=get.cards(3); event.cards2=[]; for(var i=0;iplayer.hp){ if(target==player) return Math.max(1,att-2); } if(target==player) return att+5; return att; } if(!event.isMine()){ dialog.style.display='none'; } } "step 1" if(result&&result.targets&&result.targets.length){ event.target=result.targets[0]; } if(event.cards2.length){ event.target.gain(event.cards2,'gain'); } }, ai:{ threaten:1.3 } }, qiwu:{ trigger:{player:'useCard'}, forced:true, filter:function(event,player){ return get.suit(event.card)=='club'&&player.hp