character.old={ character:{ zhangjiao:['male','qun',3,['leiji','guidao','huangtian'],['zhu']], masu:['male','shu',3,['xinzhan','huilei']], xushu:['male','shu',3,['wuyan','jujian']], fazheng:['male','shu',3,['enyuan','xuanhuo']], liru:['male','qun',3,['juece','mieji','fencheng']], yujin:['male','wei',4,['yizhong']], lusu:['male','wu',3,['haoshi','dimeng']], yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']], old_zhonghui:['male','wei',3,['zzhenggong','zquanji','zbaijiang']], old_xusheng:['male','wu',4,['pojun']], old_zhuran:['male','wu',4,['olddanshou']], old_lingtong:['male','wu',4,['oldxuanfeng']], old_madai:['male','shu',4,['mashu','oldqianxi']], old_caoxiu:['male','wei',4,['taoxi']], old_huaxiong:['male','qun',6,['shiyong']], old_wangyi:['female','wei',3,['oldzhenlie','oldmiji']], old_caozhen:['male','wei',4,['sidi']], old_quancong:['male','wu',4,['zhenshan']], old_yuanshu:['male','qun',4,['yongsi','weidi']], }, skill:{ zhenshan:{ trigger:{player:'chooseToRespondBegin'}, filter:function(event,player){ if(event.responded) return false; if(!event.filterCard({name:'shan'})&&!!event.filterCard({name:'sha'})) return false; if(player.hasSkill('zhenshan2')) return false; var nh=player.num('h'); for(var i=0;i0&&game.players[i].num('h')0&&game.players[i].num('h')player.hp){ var cards=get.cards(player.maxHp-player.hp); event.cards=cards; var dialog=ui.create.dialog('选择获得卡牌的目标',cards,'hidden'); dialog.classList.add('noselect'); player.chooseTarget(true,dialog).ai=function(target){ return ai.get.attitude(player,target)/Math.sqrt(1+target.num('h')); } } else{ event.finish(); } 'step 2' player.line(result.targets); result.targets[0].gain(event.cards,'draw'); }, ai:{ effect:{ target:function(card,player,target){ if(get.tag(card,'recover')&&target.hp==target.maxHp-1) return [0,0]; if(target.hasFriend()){ if((get.tag(card,'damage')==1||get.tag(card,'loseHp'))&&target.hp==target.maxHp) return [0,1]; } } }, threaten:function(player,target){ if(target.hp==1) return 3; if(target.hp==2) return 2; return 1; }, } }, shiyong:{ audio:2, trigger:{player:'damageEnd'}, forced:true, check:function(){ return false; }, filter:function(event,player){ return event.card.name=='sha'&&(get.color(event.card)=='red'||event.player.hasSkill('jiu')); }, content:function(){ player.loseMaxHp(); } }, oldqianxi:{ trigger:{source:'damageBefore'}, check:function(event,player){ var att=ai.get.attitude(player,event.player); if(event.player.hp==event.player.maxHp) return att<0; if(event.player.hp==event.player.maxHp-1&& (event.player.maxHp<=3||event.player.hasSkillTag('maixie'))) return att<0; return att>0; }, filter:function(event,player){ return event.card&&event.card.name=='sha'&&get.distance(player,event.player)<=1; }, logTarget:'player', content:function(){ 'step 0' player.judge(function(card){ return get.suit(card)!='heart'?1:-1; }); 'step 1' if(result.bool){ trigger.untrigger(); trigger.finish(); trigger.player.loseMaxHp(true); } } }, oldxuanfeng:{ audio:'xuanfeng', trigger:{player:'loseEnd'}, direct:true, filter:function(event,player){ for(var i=0;i