skill={
enable:"phaseUse",
usable:111,
audio:"ext:金光:2",
check:function (card){
return 8-get.value(card);
},
filterCard:true,
discard:false,
lose:false,
delay:0,
content:function (){
'step 0'
player.showCards(cards);
'step 1'
if(player.storage.jiaozhao2){
event.target=player;
}
else{
var targets=game.filterPlayer();
targets.remove(player);
targets.sort(function(a,b){
return Math.max(1,get.distance(player,a))-Math.max(1,get.distance(player,b));
});
var distance=Math.max(1,get.distance(player,targets[0]));
for(var i=1;i<targets.length;i++){
if(Math.max(1,get.distance(player,targets[i]))>distance){
targets.splice(i);break;
}
}
'step 2'
if(!event.target){
event.target=result.targets[0];
player.line(result.targets,'green');
}
if(!event.target){
event.finish();
return;
}
var list=['sha','sha','sha','shan','tao','jiu'];
if(player.storage.jiaozhao1){
list=list.concat(['taoyuan','wugu','juedou','huogong','jiedao','tiesuo','guohe','shunshou','wuzhong','wanjian','nanman']);
}
for(var i=0;i<list.length;i++){
if(i<=6){
if(i==1){
list[i]=['基本','',list[i],'fire'];
}
else if(i==2){
list[i]=['基本','',list[i],'thunder'];
}
else{
list[i]=['基本','',list[i]];
}
}
else{
list[i]=['锦囊','',list[i]];
}
}
var choice;
if(get.attitude(event.target,player)<=0){
choice='shan';
}
else{
if(!player.storage.jiaozhao1){
var nh=player.countCards('h');
if(nh>=5){
choice=Math.random()<0.5?'sha':'jiu';
}
}
else{
var recover=0,lose=1,players=game.filterPlayer();
for(var i=0;i<players.length;i++){
if(!players[i].isOut()/*&&players[i]!=player*/){
if(players[i].hp<players[i].maxHp){
if(get.attitude(player,players[i])>0){
if(players[i].hp<2){
lose--;
recover+=0.5;
}
lose--;
recover++;
}
else if(get.attitude(player,players[i])<0){
if(players[i].hp<2){
lose++;
recover-=0.5;
}
lose++;
recover--;
}
}
else{
if(get.attitude(player,players[i])>0){
lose--;
}
else if(get.attitude(player,players[i])<0){
lose++;
}
}
}
}
}
}
event.target.chooseButton(['矫诏',[list,'vcard']],true).set('ai',function(button){
return button.link[2]==_status.event.choice?1:0;
}).set('choice',choice);
'step 3'
var chosen=result.links[0][2];
var nature=result.links[0][3];
var fakecard={name:chosen,suit:cards[0].suit,number:cards[0].number,nature:nature};
event.target.showCards(game.createCard(fakecard),get.translation(event.target)+'声明了'+get.translation(chosen));
player.storage.jiaozhao=cards[0];
player.storage.jiaozhao_card=fakecard;
game.broadcastAll(function(name){
lib.skill.jiaozhao2.viewAs=fakecard;
},fakecard);
},
ai:{
order:9,
result:{
player:1,
},
},
intro:{
content:function (storage,player){
if(player.storage.jiaozhao2){
return '出牌阶段限一次,你可以展示一张手牌,然后你声明一张基本牌或普通锦囊牌的牌名。在此出牌阶段内,你可以将此手牌当声明的牌使用且你不能被选择为目标';
}
else{
return '出牌阶段限一次,你可以展示一张手牌,然后选择距离最近的一名其他角色,该角色声明一张基本牌或普通锦囊牌的牌名。在此出牌阶段内,你可以将此手牌当声明的牌使用且你不能被选择为目标';
}
},
},
group:["xinjiaozhao_jiaozhao2","xinjiaozhao_jiaozhao3"],
subSkill:{
"jiaozhao2":{
enable:"phaseUse",
audio:"jiaozhao",
filter:function (event,player){
if(!player.storage.jiaozhao) return false;
var name=player.storage.jiaozhao_card.name;
// if(name=='tao'||name=='shan'||name=='wuzhong'||name=='jiu') return false;
return player.getCards('h').contains(player.storage.jiaozhao);
},
filterCard:function (card,player){
return card==player.storage.jiaozhao;
},
selectCard:-1,
popname:true,
filterTarget:function (card,player,target){
// if(player==target) return false;
return lib.filter.filterTarget(player.storage.jiaozhao_card,player,target);
},
check:function (card){
return 8-get.value(card);
},
ai:{
order:6,
},
sub:true,
},
"jiaozhao3":{
trigger:{
player:"phaseJieshuBegin",
},
silent:true,
content:function (){
delete player.storage.jiaozhao;
delete player.storage.jiaozhao_card;
},
sub:true,
forced:true,
popup:false,
},
},
}
我应该把所有不能指定自己为目标都删了,但是还是不能对自己用桃,用了就卡死;并且对别人矫诏也会卡死


enable:"phaseUse",
usable:111,
audio:"ext:金光:2",
check:function (card){
return 8-get.value(card);
},
filterCard:true,
discard:false,
lose:false,
delay:0,
content:function (){
'step 0'
player.showCards(cards);
'step 1'
if(player.storage.jiaozhao2){
event.target=player;
}
else{
var targets=game.filterPlayer();
targets.remove(player);
targets.sort(function(a,b){
return Math.max(1,get.distance(player,a))-Math.max(1,get.distance(player,b));
});
var distance=Math.max(1,get.distance(player,targets[0]));
for(var i=1;i<targets.length;i++){
if(Math.max(1,get.distance(player,targets[i]))>distance){
targets.splice(i);break;
}
}
'step 2'
if(!event.target){
event.target=result.targets[0];
player.line(result.targets,'green');
}
if(!event.target){
event.finish();
return;
}
var list=['sha','sha','sha','shan','tao','jiu'];
if(player.storage.jiaozhao1){
list=list.concat(['taoyuan','wugu','juedou','huogong','jiedao','tiesuo','guohe','shunshou','wuzhong','wanjian','nanman']);
}
for(var i=0;i<list.length;i++){
if(i<=6){
if(i==1){
list[i]=['基本','',list[i],'fire'];
}
else if(i==2){
list[i]=['基本','',list[i],'thunder'];
}
else{
list[i]=['基本','',list[i]];
}
}
else{
list[i]=['锦囊','',list[i]];
}
}
var choice;
if(get.attitude(event.target,player)<=0){
choice='shan';
}
else{
if(!player.storage.jiaozhao1){
var nh=player.countCards('h');
if(nh>=5){
choice=Math.random()<0.5?'sha':'jiu';
}
}
else{
var recover=0,lose=1,players=game.filterPlayer();
for(var i=0;i<players.length;i++){
if(!players[i].isOut()/*&&players[i]!=player*/){
if(players[i].hp<players[i].maxHp){
if(get.attitude(player,players[i])>0){
if(players[i].hp<2){
lose--;
recover+=0.5;
}
lose--;
recover++;
}
else if(get.attitude(player,players[i])<0){
if(players[i].hp<2){
lose++;
recover-=0.5;
}
lose++;
recover--;
}
}
else{
if(get.attitude(player,players[i])>0){
lose--;
}
else if(get.attitude(player,players[i])<0){
lose++;
}
}
}
}
}
}
event.target.chooseButton(['矫诏',[list,'vcard']],true).set('ai',function(button){
return button.link[2]==_status.event.choice?1:0;
}).set('choice',choice);
'step 3'
var chosen=result.links[0][2];
var nature=result.links[0][3];
var fakecard={name:chosen,suit:cards[0].suit,number:cards[0].number,nature:nature};
event.target.showCards(game.createCard(fakecard),get.translation(event.target)+'声明了'+get.translation(chosen));
player.storage.jiaozhao=cards[0];
player.storage.jiaozhao_card=fakecard;
game.broadcastAll(function(name){
lib.skill.jiaozhao2.viewAs=fakecard;
},fakecard);
},
ai:{
order:9,
result:{
player:1,
},
},
intro:{
content:function (storage,player){
if(player.storage.jiaozhao2){
return '出牌阶段限一次,你可以展示一张手牌,然后你声明一张基本牌或普通锦囊牌的牌名。在此出牌阶段内,你可以将此手牌当声明的牌使用且你不能被选择为目标';
}
else{
return '出牌阶段限一次,你可以展示一张手牌,然后选择距离最近的一名其他角色,该角色声明一张基本牌或普通锦囊牌的牌名。在此出牌阶段内,你可以将此手牌当声明的牌使用且你不能被选择为目标';
}
},
},
group:["xinjiaozhao_jiaozhao2","xinjiaozhao_jiaozhao3"],
subSkill:{
"jiaozhao2":{
enable:"phaseUse",
audio:"jiaozhao",
filter:function (event,player){
if(!player.storage.jiaozhao) return false;
var name=player.storage.jiaozhao_card.name;
// if(name=='tao'||name=='shan'||name=='wuzhong'||name=='jiu') return false;
return player.getCards('h').contains(player.storage.jiaozhao);
},
filterCard:function (card,player){
return card==player.storage.jiaozhao;
},
selectCard:-1,
popname:true,
filterTarget:function (card,player,target){
// if(player==target) return false;
return lib.filter.filterTarget(player.storage.jiaozhao_card,player,target);
},
check:function (card){
return 8-get.value(card);
},
ai:{
order:6,
},
sub:true,
},
"jiaozhao3":{
trigger:{
player:"phaseJieshuBegin",
},
silent:true,
content:function (){
delete player.storage.jiaozhao;
delete player.storage.jiaozhao_card;
},
sub:true,
forced:true,
popup:false,
},
},
}
我应该把所有不能指定自己为目标都删了,但是还是不能对自己用桃,用了就卡死;并且对别人矫诏也会卡死











