无名杀吧 关注:64,714贴子:289,030
  • 4回复贴,共1

【求助】请问为什么没有回合结束的效果,代码如下

取消只看楼主收藏回复

skill={
audio:"ext:无名扩展:2",
init:function (player,skill){
if(!player.storage.dlchangbiao1) player.storage.dlchangbiao1=0;
if(!player.storage.dlchangbiao2) player.storage.dlchangbiao2=0;
},
mod:{
targetInRange:function (card,player,target){
if(card.dlchangbiao) return true;
},
},
enable:"phaseUse",
usable:1,
position:"hs",
viewAs:{
name:"sha",
dlchangbiao:true,
},
locked:false,
filter:function (event,player){
return player.countCards('hs')>0;
},
filterCard:true,
selectCard:[1,Infinity],
onuse:function (result,player){
player.addTempSkill('dlchangbiao_isdamage');
player.addTempSkill('dlchangbiao_draw');
},
subSkill:{
isdamage:{
trigger:{
player:"useCardAfter",
},
silent:true,
filter:function (event,player){
return event&&event.name=='sha'&&event.skill=='dlchangbiao';
},
content:function (){
player.getHistory('sourceDamage',function(evxt){
var evt=evxt.getParent();
if(evt&&evt.name=='sha'&&evt.skill=='dlchangbiao'&&evt.getParent('phaseUse')==trigger) {
player.storage.dlchangbiao1=evt.cards.length;
if(evt.target[0].isDead()) player.storage.dlchangbiao2=1;
}
});
if(!player.storage.dlchangbiao1) trigger.target[0].gain(player.getEquip(1),player,'give','bySelf');
},
forced:true,
popup:false,
sub:true,
},
draw:{
trigger:{
player:"phaseAfter",
},
forced:true,
charlotte:true,
filter:function (){
return player.storage.dlchangbiao1>0;
},
content:function (){
player.draw(player.storage.dlchangbiao1);
if(player.storage.dlchangbiao2) player.insertPhase();
player.storage.dlchangbiao1=0;
player.storage.dlchangbiao2=0;
},
sub:true,
},
},


IP属地:宁夏1楼2021-08-03 18:30回复
    加一下描述吧,我想把长标改成结束阶段摸,如果用这个技能杀死角色可以获得额外回合,如果没中让别人把我武器拿走,这张杀不计入次数


    IP属地:宁夏3楼2021-08-04 20:20
    收起回复
      我是按照原来的长标的基础上改的,又参考了下破竹,连破,夺刀和流矢,拼接成了这样,可是到了结束阶段,没有任何效果,甚至卡住,我找了好半天没找出问题


      IP属地:宁夏4楼2021-08-04 20:23
      回复
        修改了一下,还是有问题,按理这个难度不大啊?可我为什么改了好多遍还是没有效果?(杀可以打出去,但是回合结束时没有效果)
        加一下描述吧,我想把长标改成我的一个武器的技能,摸牌改成结束阶段摸,如果用这个技能杀死角色可以获得额外回合,如果没中就让别人把我这个武器拿走,这张杀不计入次数。
        skill={
        audio:"ext:无名扩展:2",
        mod:{
        targetInRange:function (card,player,target){
        if(card.dlchangbiao) return true;
        },
        },
        enable:"phaseUse",
        usable:1,
        position:"hs",
        viewAs:{
        name:"sha",
        dlchangbiao:true,
        },
        locked:false,
        filter:function (event,player){
        return player.countCards('hs')>0;
        },
        filterCard:true,
        selectCard:[1,Infinity],
        onuse:function (result,player){
        player.addTempSkill('dlchangbiao_isdamage');
        player.addTempSkill('dlchangbiao_draw');
        },
        subSkill:{
        isdamage:{
        init:function (player,skill){
        player.storage.dlchangbiao_isdamage=0;
        },
        trigger:{
        player:"useCardAfter",
        },
        silent:true,
        filter:function (event,player){
        return event&&event.name=='sha'&&event.skill=='dlchangbiao';
        },
        content:function (){
        player.getHistory('sourceDamage',function(evxt){
        var evt=evxt.getParent();
        if(evt&&evt.name=='sha'&&evt.skill=='dlchangbiao'&&evt.getParent('phaseUse')==trigger) {
        var n=1;
        if(evt.target[0].isDead()) player.storage.dlchangbiao_isdamage=1;
        }
        });
        if(!n) trigger.target[0].gain(player.getEquip(1),player,'give','bySelf');
        },
        forced:true,
        popup:false,
        sub:true,
        },
        draw:{
        trigger:{
        player:"phaseEnd",
        },
        forced:true,
        charlotte:true,
        filter:function (event,player){
        return player.getHistory('sourceDamage',function(evxt){
        var evt=evxt.getParent();
        return evt&&evt.name=='sha'&&evt.skill=='dlchangbiao'&&evt.getParent('phaseUse')==event;
        }).length>0;
        },
        content:function (){
        var num=0;
        player.getHistory('sourceDamage',function(evxt){
        var evt=evxt.getParent();
        if(evt&&evt.name=='sha'&&evt.skill=='dlchangbiao'&&evt.getParent('phaseUse')==trigger) num+=evt.cards.length;
        });
        player.draw(num);
        if(player.storage.dlchangbiao_isdamage) player.insertPhase();
        },
        sub:true,
        },
        },


        IP属地:宁夏7楼2021-08-06 15:51
        回复



          IP属地:宁夏8楼2021-08-06 15:57
          回复