invisible change

This commit is contained in:
Spmario233 2023-06-05 12:29:07 +08:00
parent 69ef667658
commit 82dc7bc2cb
5 changed files with 29 additions and 18 deletions

View File

@ -11218,17 +11218,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{target:'useCardToTarget'}, trigger:{target:'useCardToTarget'},
direct:true, direct:true,
filter:function(event,player){ filter:function(event,player){
return event.card.name=='sha'; return event.card.name=='sha'&&game.hasPlayer(function(current){
return current!=player&&!event.targets.contains(current)&&lib.filter.targetEnabled(event.card,event.player,current);
});
}, },
content:function(){ content:function(){
"step 0" "step 0"
player.chooseTarget(get.prompt2('xinqiuyuan'),function(card,player,target){ player.chooseTarget(get.prompt2('xinqiuyuan'),function(card,player,target){
return target!=player&&!_status.event.targets.contains(target)&&_status.event.playerx.canUse('sha',target,false); var evt=_status.event.getTrigger();
return target!=player&&!evt.targets.contains(target)&&lib.filter.targetEnabled(evt.card,evt.player,target);
}).set('ai',function(target){ }).set('ai',function(target){
var trigger=_status.event.getTrigger(); var trigger=_status.event.getTrigger();
var player=_status.event.player; var player=_status.event.player;
return get.effect(target,trigger.card,trigger.player,player)+0.1; return get.effect(target,trigger.card,trigger.player,player)+0.1;
}).set('targets',trigger.targets).set('playerx',trigger.player); });
"step 1" "step 1"
if(result.bool){ if(result.bool){
var target=result.targets[0]; var target=result.targets[0];
@ -17943,6 +17946,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"shuijing_card_info":"将一名角色装备区内的防具牌移动到另一名角色对应区域。若场上有存活的司马徽则改为将1名角色装备区内的1件装备移动到另1角色对应区域。","xinfu_pingcai":"评才", "shuijing_card_info":"将一名角色装备区内的防具牌移动到另一名角色对应区域。若场上有存活的司马徽则改为将1名角色装备区内的1件装备移动到另1角色对应区域。","xinfu_pingcai":"评才",
"xinfu_pingcai_info":"出牌阶段限一次,你可以挑选一个宝物并擦拭掉其上面的灰尘。然后,你可以根据宝物类型执行对应的效果。", "xinfu_pingcai_info":"出牌阶段限一次,你可以挑选一个宝物并擦拭掉其上面的灰尘。然后,你可以根据宝物类型执行对应的效果。",
"xinfu_pdgyingshi":"隐世", "xinfu_pdgyingshi":"隐世",
"xinfu_pdgyingshi2":"隐世",
"xinfu_pdgyingshi_info":"锁定技,你始终跳过准备阶段,判定阶段,结束阶段。你不能被选择为延时锦囊牌的目标。", "xinfu_pdgyingshi_info":"锁定技,你始终跳过准备阶段,判定阶段,结束阶段。你不能被选择为延时锦囊牌的目标。",
"pcaudio_wolong_card":"卧龙", "pcaudio_wolong_card":"卧龙",
"pcaudio_wolong_card_info":"", "pcaudio_wolong_card_info":"",

View File

@ -8483,7 +8483,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sbyingmen:'盈门', sbyingmen:'盈门',
sbyingmen_info:'锁定技。①游戏开始时你将武将牌堆中随机四张武将牌置于你的武将牌上称为“访客”。②回合开始时若你的“访客”数小于4你随机从武将牌堆中将“访客”补至四张。', sbyingmen_info:'锁定技。①游戏开始时你将武将牌堆中随机四张武将牌置于你的武将牌上称为“访客”。②回合开始时若你的“访客”数小于4你随机从武将牌堆中将“访客”补至四张。',
sbpingjian:'评鉴', sbpingjian:'评鉴',
sbpingjian_info:'你可以于满足你“访客”上的一个无技能标签或仅有锁定技标签的技能条件的时机发动此技能,然后你选择移去一张“访客”。若移去的是本次发动技能的“访客”,你摸一张牌。', sbpingjian_info:'你可以于满足你“访客”上的一个无技能标签或仅有锁定技标签的技能条件的时机发动此技能。你发动的技能结算结束后,若此技能位于你的“访客”中,则你选择移去一张“访客”。若移去的是本次发动技能的“访客”,你摸一张牌。',
offline_star:'桌游志·SP', offline_star:'桌游志·SP',
offline_sticker:'桌游志·贴纸', offline_sticker:'桌游志·贴纸',

View File

@ -6003,17 +6003,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{target:'useCardToTarget'}, trigger:{target:'useCardToTarget'},
direct:true, direct:true,
filter:function(event,player){ filter:function(event,player){
return event.card.name=='sha'; return event.card.name=='sha'&&game.hasPlayer(function(current){
return current!=player&&!event.targets.contains(current)&&lib.filter.targetEnabled(event.card,event.player,current);
});
}, },
content:function(){ content:function(){
"step 0" "step 0"
player.chooseTarget(get.prompt2('reqiuyuan'),function(card,player,target){ player.chooseTarget(get.prompt2('reqiuyuan'),function(card,player,target){
return target!=player&&!_status.event.targets.contains(target)&&_status.event.playerx.canUse('sha',target,false); var evt=_status.event.getTrigger();
return target!=player&&!evt.targets.contains(target)&&lib.filter.targetEnabled(evt.card,evt.player,target);
}).set('ai',function(target){ }).set('ai',function(target){
var trigger=_status.event.getTrigger(); var trigger=_status.event.getTrigger();
var player=_status.event.player; var player=_status.event.player;
return get.effect(target,trigger.card,trigger.player,player)+0.1; return get.effect(target,trigger.card,trigger.player,player)+0.1;
}).set('targets',trigger.targets).set('playerx',trigger.player); });
"step 1" "step 1"
if(result.bool){ if(result.bool){
var target=result.targets[0]; var target=result.targets[0];

View File

@ -10931,10 +10931,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
oldqiuyuan:{ oldqiuyuan:{
audio:'qiuyuan', audio:'qiuyuan',
inherit:'qiuyuan', inherit:'qiuyuan',
filter:function(event,player){
return event.card.name=='sha'&&game.hasPlayer(function(current){
return current!=player&&!event.targets.contains(current)&&current.countCards('h')>0&&lib.filter.targetEnabled(event.card,event.player,current);
});
},
content:function(){ content:function(){
"step 0" "step 0"
player.chooseTarget(get.prompt2('oldqiuyuan'),function(card,player,target){ player.chooseTarget(get.prompt2('oldqiuyuan'),function(card,player,target){
return target!=player&&!_status.event.targets.contains(target)&&_status.event.playerx.canUse('sha',target,false)&&target.countCards('h'); var evt=_status.event.getTrigger();
return target!=player&&!evt.targets.contains(target)&&lib.filter.targetEnabled(evt.card,evt.player,target)&&target.countCards('h')>0;
}).set('ai',function(target){ }).set('ai',function(target){
var trigger=_status.event.getTrigger(); var trigger=_status.event.getTrigger();
var player=_status.event.player; var player=_status.event.player;
@ -10971,12 +10977,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{target:'useCardToTarget'}, trigger:{target:'useCardToTarget'},
direct:true, direct:true,
filter:function(event,player){ filter:function(event,player){
return event.card.name=='sha'; return event.card.name=='sha'&&game.hasPlayer(function(current){
return current!=player&&!event.targets.contains(current)&&lib.filter.targetEnabled(event.card,event.player,current);
});
}, },
content:function(){ content:function(){
"step 0" "step 0"
player.chooseTarget(get.prompt2('qiuyuan'),function(card,player,target){ player.chooseTarget(get.prompt2('qiuyuan'),function(card,player,target){
return target!=player&&!_status.event.targets.contains(target)&&_status.event.playerx.canUse('sha',target,false); var evt=_status.event.getTrigger();
return target!=player&&!evt.targets.contains(target)&&lib.filter.targetEnabled(evt.card,evt.player,target);
}).set('ai',function(target){ }).set('ai',function(target){
var trigger=_status.event.getTrigger(); var trigger=_status.event.getTrigger();
var player=_status.event.player; var player=_status.event.player;

View File

@ -12073,13 +12073,8 @@
} }
} }
else if(invisible.contains(event.skill)){ else if(invisible.contains(event.skill)){
if(!info.direct){
event.trigger('triggerInvisible'); event.trigger('triggerInvisible');
} }
else{
event.skillHidden=true;
}
}
else{ else{
var keep=false; var keep=false;
for(var i in player.additionalSkills){ for(var i in player.additionalSkills){
@ -17999,7 +17994,7 @@
hasUsableCard:function(name){ hasUsableCard:function(name){
var player=this; var player=this;
if(player.countCards('hs',name)) return true; if(player.countCards('hs',name)) return true;
var skills=player.getSkills(true).concat(lib.skill.global); var skills=player.getSkills('invisible').concat(lib.skill.global);
game.expandSkills(skills); game.expandSkills(skills);
for(var i=0;i<skills.length;i++){ for(var i=0;i<skills.length;i++){
var ifo=get.info(skills[i]); var ifo=get.info(skills[i]);
@ -24274,7 +24269,7 @@
}, },
hasWuxie:function(){ hasWuxie:function(){
if(this.countCards('hs','wuxie')) return true; if(this.countCards('hs','wuxie')) return true;
var skills=this.getSkills(true).concat(lib.skill.global); var skills=this.getSkills('invisible').concat(lib.skill.global);
game.expandSkills(skills); game.expandSkills(skills);
for(var i=0;i<skills.length;i++){ for(var i=0;i<skills.length;i++){
var ifo=get.info(skills[i]); var ifo=get.info(skills[i]);