修复bug
This commit is contained in:
parent
e7e939ecc1
commit
00cfb844ef
|
@ -932,6 +932,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
player.line(target,'thunder');
|
player.line(target,'thunder');
|
||||||
target.damage('thunder');
|
target.damage('thunder');
|
||||||
},
|
},
|
||||||
|
ai:{
|
||||||
|
effect:{
|
||||||
|
player:function(card,player,target){
|
||||||
|
if(ui.selected.targets.length) return;
|
||||||
|
if(player!=target&&get.type2(card)=='trick') return [1,0,1,-2];
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
subSkill:{
|
subSkill:{
|
||||||
add:{
|
add:{
|
||||||
audio:'dcnutao',
|
audio:'dcnutao',
|
||||||
|
|
|
@ -1854,7 +1854,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
target:function(card,player,target){
|
target:function(card,player,target){
|
||||||
if(get.tag(card,'damage')){
|
if(get.tag(card,'damage')){
|
||||||
if(player.hasSkillTag('jueqing',false,target)) return [1,-2];
|
if(player.hasSkillTag('jueqing',false,target)) return [1,-2];
|
||||||
if(!target.canMoveCard(true)||!target.hasFriend()) return;
|
if(target._jsrgrangjie_aiChecking) return;
|
||||||
|
target._jsrgrangjie_aiChecking=true;
|
||||||
|
var moveCard=target.canMoveCard(true);
|
||||||
|
delete target._jsrgrangjie_aiChecking;
|
||||||
|
if(!moveCard||!target.hasFriend()) return;
|
||||||
var num=1;
|
var num=1;
|
||||||
if(get.attitude(player,target)>0){
|
if(get.attitude(player,target)>0){
|
||||||
if(player.needsToDiscard()){
|
if(player.needsToDiscard()){
|
||||||
|
|
|
@ -166,7 +166,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
audio:2,
|
audio:2,
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.countCards('h',{type:'equip'})>0;
|
return player.countCards('he',{type:'equip'})>0;
|
||||||
},
|
},
|
||||||
filterCard:function(card){
|
filterCard:function(card){
|
||||||
return get.type(card)=='equip';
|
return get.type(card)=='equip';
|
||||||
|
@ -277,6 +277,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(typeof result.links[0]!='string') result.links.reverse();
|
if(typeof result.links[0]!='string') result.links.reverse();
|
||||||
var card=result.links[1];
|
var card=result.links[1];
|
||||||
target.gain(card,'gain2');
|
target.gain(card,'gain2');
|
||||||
|
event.cards.remove(card);
|
||||||
if(result.links[0]!='获得剩余的牌') event.finish();
|
if(result.links[0]!='获得剩余的牌') event.finish();
|
||||||
}
|
}
|
||||||
else event.finish();
|
else event.finish();
|
||||||
|
|
|
@ -725,6 +725,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(targets[i].hp==1){
|
if(targets[i].hp==1){
|
||||||
eff*=1.5;
|
eff*=1.5;
|
||||||
}
|
}
|
||||||
|
if(get.attitude(player,targets[i])==0||targets[i].group=='qun'){
|
||||||
|
eff+=0.5;
|
||||||
|
}
|
||||||
num+=eff;
|
num+=eff;
|
||||||
}
|
}
|
||||||
if(!player.needsToDiscard(-1)){
|
if(!player.needsToDiscard(-1)){
|
||||||
|
@ -766,6 +769,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return num+2*game.countPlayer(current=>player!=current&¤t.group=='qun');
|
return num+2*game.countPlayer(current=>player!=current&¤t.group=='qun');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
effect:{
|
||||||
|
player:function(card,player,target){
|
||||||
|
if(player!=target&&target&&target.group=='qun') return [1,0.2];
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//庞统
|
//庞统
|
||||||
|
@ -1614,13 +1624,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
var player=_status.event.player;
|
var player=_status.event.player;
|
||||||
if(ui.selected.targets.length){
|
if(ui.selected.targets.length){
|
||||||
var current=ui.selected.targets[0];
|
var current=ui.selected.targets[0];
|
||||||
if(current.group=='shu'&¤t.hp>=player.hp){
|
if(current.group=='shu'&¤t.hp>=player.hp&¤t!=player){
|
||||||
return -get.attitude(player,target);
|
return -get.attitude(player,target);
|
||||||
}
|
}
|
||||||
return Math.abs(get.attitude(player,current));
|
return Math.abs(get.attitude(player,current));
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(target.group=='shu'&&target.hp>=player.hp&&game.hasPlayer(current=>{
|
if(target.group=='shu'&&target.hp>=player.hp&&target!=player&&game.hasPlayer(current=>{
|
||||||
return get.attitude(player,current)<0;
|
return get.attitude(player,current)<0;
|
||||||
})) return 10;
|
})) return 10;
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -1630,7 +1640,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
var targets=result.targets;
|
var targets=result.targets;
|
||||||
event.targets=targets;
|
event.targets=targets;
|
||||||
if(targets[0].group!='shu'||targets[0].hp<player.hp) targets.reverse();
|
if(targets[0].group!='shu'||targets[0].hp<player.hp||targets[0]==player) targets.reverse();
|
||||||
player.logSkill('sbjijiang',targets,false);
|
player.logSkill('sbjijiang',targets,false);
|
||||||
player.line2(targets);
|
player.line2(targets);
|
||||||
var choiceList=[
|
var choiceList=[
|
||||||
|
@ -3442,7 +3452,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
sbjiuyuan:{
|
sbjiuyuan:{
|
||||||
audio:2,
|
audio:2,
|
||||||
usable:1,
|
|
||||||
trigger:{global:'useCard'},
|
trigger:{global:'useCard'},
|
||||||
forced:true,
|
forced:true,
|
||||||
zhuSkill:true,
|
zhuSkill:true,
|
||||||
|
|
|
@ -5,8 +5,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
connect:true,
|
connect:true,
|
||||||
character:{
|
character:{
|
||||||
ganfurenmifuren:['female','shu',3,['dcchanjuan','dcxunbie']],
|
ganfurenmifuren:['female','shu',3,['dcchanjuan','dcxunbie']],
|
||||||
dc_ganfuren:['female','shu',3,['dcshushen','dcshenzhi'],['unseen']],
|
dc_ganfuren:['female','shu',3,['dcshushen','dcshenzhi']],
|
||||||
dc_mifuren:['female','shu',3,['dcguixiu','dccunsi'],['unseen']],
|
dc_mifuren:['female','shu',3,['dcguixiu','dccunsi']],
|
||||||
yue_caiwenji:['female','qun',3,['dcshuangjia','dcbeifen']],
|
yue_caiwenji:['female','qun',3,['dcshuangjia','dcbeifen']],
|
||||||
wanglang:['male','wei',3,['regushe','rejici']],
|
wanglang:['male','wei',3,['regushe','rejici']],
|
||||||
ruanji:['male','wei',3,['dczhaowen','dcjiudun']],
|
ruanji:['male','wei',3,['dczhaowen','dcjiudun']],
|
||||||
|
@ -286,7 +286,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
if(event.targets.length!=1) return false;
|
if(event.targets.length!=1) return false;
|
||||||
if(event.card.name!='sha'&&get.type(event.card,false)!='trick') return false;
|
if(!['basic','trick'].contains(get.type(event.card,false))) return false;
|
||||||
if(event.getParent(2).name=='dcchanjuan') return false;
|
if(event.getParent(2).name=='dcchanjuan') return false;
|
||||||
return !player.getStorage('dcchanjuan').contains(event.card.name);
|
return !player.getStorage('dcchanjuan').contains(event.card.name);
|
||||||
},
|
},
|
||||||
|
@ -298,12 +298,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
nature:trigger.card.nature,
|
nature:trigger.card.nature,
|
||||||
isCard:true,
|
isCard:true,
|
||||||
}
|
}
|
||||||
player.chooseUseTarget(card,get.prompt('dcchanjuan'),false,false).set('prompt2','再视为使用一张'+get.translation(card)).set('logSkill','dcchanjuan');
|
player.chooseUseTarget(card,get.prompt('dcchanjuan'),false,false).set('prompt2','视为再使用一张'+get.translation(card)).set('logSkill','dcchanjuan');
|
||||||
'step 1'
|
'step 1'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.markAuto('dcchanjuan',[trigger.card.name]);
|
player.markAuto('dcchanjuan',[trigger.card.name]);
|
||||||
var list1=trigger.targets.slice(),list2=result.targets.slice();
|
var list1=trigger.targets,list2=result.targets;
|
||||||
if(list1.removeArray(list2).length==0&&list2.removeArray(list1).length==0) player.draw();
|
if(list1.slice().removeArray(list2).length==0&&list2.slice().removeArray(list1).length==0) player.draw();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -368,7 +368,32 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
player.reinit('ganfurenmifuren',character,false);
|
player.reinit('ganfurenmifuren',character,false);
|
||||||
'step 2'
|
'step 2'
|
||||||
player.recover(1-player.hp);
|
player.recover(1-player.hp);
|
||||||
|
player.addTempSkill('dcxunbie_muteki');
|
||||||
},
|
},
|
||||||
|
subSkill:{
|
||||||
|
muteki:{
|
||||||
|
trigger:{
|
||||||
|
player:'damageBegin4',
|
||||||
|
},
|
||||||
|
charlotte:true,
|
||||||
|
forced:true,
|
||||||
|
content:function(){
|
||||||
|
trigger.cancel();
|
||||||
|
},
|
||||||
|
mark:true,
|
||||||
|
intro:{content:'防止本回合受到的所有伤害'},
|
||||||
|
ai:{
|
||||||
|
nofire:true,
|
||||||
|
nothunder:true,
|
||||||
|
nodamage:true,
|
||||||
|
effect:{
|
||||||
|
target:function(card,player,target,current){
|
||||||
|
if(get.tag(card,'damage')) return 'zeroplayertarget';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
//散装版糜夫人
|
//散装版糜夫人
|
||||||
dcguixiu:{
|
dcguixiu:{
|
||||||
|
@ -377,6 +402,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
player:'phaseBegin',
|
player:'phaseBegin',
|
||||||
},
|
},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
onremove:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return !player.hasMark('dcguixiu');
|
return !player.hasMark('dcguixiu');
|
||||||
},
|
},
|
||||||
|
@ -499,7 +525,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
];
|
];
|
||||||
if(target.isDamaged()) choices.unshift('选项一');
|
if(target.isDamaged()) choices.unshift('选项一');
|
||||||
else choiceList[0]='<span style="opacity:0.5">'+choiceList[0]+'</span>';
|
else choiceList[0]='<span style="opacity:0.5">'+choiceList[0]+'</span>';
|
||||||
player.chooseControl(choice).set('choiceList',choiceList).set('prompt','淑慎:请选择一项').set('ai',()=>{
|
player.chooseControl(choices).set('choiceList',choiceList).set('prompt','淑慎:请选择一项').set('ai',()=>{
|
||||||
return _status.event.choice;
|
return _status.event.choice;
|
||||||
}).set('choice',function(){
|
}).set('choice',function(){
|
||||||
if(target.hp<=2||get.recoverEffect(target,player,player)>20) return 0;
|
if(target.hp<=2||get.recoverEffect(target,player,player)>20) return 0;
|
||||||
|
@ -7743,9 +7769,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
forced:true,
|
forced:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
if(player==_status.currentPhase) return false;
|
if(player==_status.currentPhase) return false;
|
||||||
return !player.hasHistory('damage',evt=>{
|
return !event.nature&&!player.hasHistory('damage',evt=>{
|
||||||
return !evt.nature&&evt!=event;
|
return !evt.nature&&evt!=event;
|
||||||
},event)||!player.hasHistory('damage',evt=>{
|
},event)||event.nature&&!player.hasHistory('damage',evt=>{
|
||||||
return evt.nature&&evt!=event;
|
return evt.nature&&evt!=event;
|
||||||
},event)&&event.source&&event.source.isIn()&&event.source.countGainableCards(player,'h');
|
},event)&&event.source&&event.source.isIn()&&event.source.countGainableCards(player,'h');
|
||||||
},
|
},
|
||||||
|
@ -13643,7 +13669,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(evtx.getParent('phaseUse')!=evt) return false;
|
if(evtx.getParent('phaseUse')!=evt) return false;
|
||||||
return !evtx.card.storage||!evtx.card.storage.tongli;
|
return !evtx.card.storage||!evtx.card.storage.tongli;
|
||||||
}).length;
|
}).length;
|
||||||
var str='视为额外使用'+get.cnNumber(num)+'张'
|
//var str='视为额外使用'+get.cnNumber(num)+'张'
|
||||||
|
var str='额外结算'+get.cnNumber(num)+'次'
|
||||||
if(event.card.name=='sha'&&event.card.nature) str+=get.translation(event.card.nature);
|
if(event.card.name=='sha'&&event.card.nature) str+=get.translation(event.card.nature);
|
||||||
return (str+'【'+get.translation(event.card.name)+'】');
|
return (str+'【'+get.translation(event.card.name)+'】');
|
||||||
},
|
},
|
||||||
|
@ -28419,13 +28446,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
"xinfu_bijing":{
|
"xinfu_bijing":{
|
||||||
audio:2,
|
audio:2,
|
||||||
group:["xinfu_bijing_lose","xinfu_bijing_discard"],
|
|
||||||
subSkill:{
|
subSkill:{
|
||||||
lose:{
|
lose:{
|
||||||
trigger:{
|
trigger:{
|
||||||
global:"phaseDiscardBegin",
|
global:"phaseDiscardBegin",
|
||||||
},
|
},
|
||||||
audio:'xinfu_bijing',
|
audio:'xinfu_bijing',
|
||||||
|
charlotte:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
if(event.player==player) return false;
|
if(event.player==player) return false;
|
||||||
return player.getHistory('lose',function(evt){
|
return player.getHistory('lose',function(evt){
|
||||||
|
@ -28446,6 +28473,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
player:"phaseZhunbeiBegin",
|
player:"phaseZhunbeiBegin",
|
||||||
},
|
},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
charlotte:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.getCards('h',function(card){
|
return player.getCards('h',function(card){
|
||||||
return card.hasGaintag('xinfu_bijing');
|
return card.hasGaintag('xinfu_bijing');
|
||||||
|
@ -28478,6 +28506,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.logSkill('xinfu_bijing');
|
player.logSkill('xinfu_bijing');
|
||||||
player.addGaintag(result.cards,'xinfu_bijing');
|
player.addGaintag(result.cards,'xinfu_bijing');
|
||||||
|
player.addSkill('xinfu_bijing_lose');
|
||||||
|
player.addSkill('xinfu_bijing_discard');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -29626,7 +29656,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
"xinfu_tunan":"图南",
|
"xinfu_tunan":"图南",
|
||||||
"xinfu_tunan_info":"出牌阶段限一次,你可以展示牌堆顶的一张牌并选择一名其他角色,然后该角色选择一项:使用此牌(无距离限制);或将此牌当普通【杀】使用。",
|
"xinfu_tunan_info":"出牌阶段限一次,你可以展示牌堆顶的一张牌并选择一名其他角色,然后该角色选择一项:使用此牌(无距离限制);或将此牌当普通【杀】使用。",
|
||||||
"xinfu_bijing":"闭境",
|
"xinfu_bijing":"闭境",
|
||||||
"xinfu_bijing_info":"①结束阶段,你可以选择至多两张手牌并标记为“闭境”。②其他角色的弃牌阶段开始时,若你于本回合内失去过“闭境”,其弃置两张牌。③准备阶段,你重铸所有“闭境”牌。",
|
"xinfu_bijing_info":"结束阶段,你可以选择至多两张手牌并标记为“闭境”,然后你获得如下效果:1.其他角色的弃牌阶段开始时,若你于本回合内失去过“闭境”,其弃置两张牌;2.准备阶段,你重铸所有“闭境”牌。",
|
||||||
"xinfu_zhenxing":"镇行",
|
"xinfu_zhenxing":"镇行",
|
||||||
"xinfu_zhenxing_info":"结束阶段开始时或当你受到伤害后,你可以观看牌堆顶的至多三张牌,然后你获得其中与其余牌花色均不相同的一张牌。",
|
"xinfu_zhenxing_info":"结束阶段开始时或当你受到伤害后,你可以观看牌堆顶的至多三张牌,然后你获得其中与其余牌花色均不相同的一张牌。",
|
||||||
"xinfu_qianxin":"遣信",
|
"xinfu_qianxin":"遣信",
|
||||||
|
@ -30366,7 +30396,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
dcmingfa_info:'①出牌阶段限一次。当你使用【杀】或普通锦囊牌结算结束后,若你的武将牌上没有“明伐”牌,则你可以将此牌作为“明伐”牌置于武将牌上并选择一名其他角色,记录该角色和此牌的名称。②一名角色的回合结束时,若其是你〖明伐①〗记录的角色,则你视为对其依次使用X张〖明伐①〗记录的牌,然后移去“明伐”牌(X为其手牌数且至少为1,至多为5)。③一名角色死亡时,若其是你〖明伐①〗记录的角色,则你移去“明伐”牌。',
|
dcmingfa_info:'①出牌阶段限一次。当你使用【杀】或普通锦囊牌结算结束后,若你的武将牌上没有“明伐”牌,则你可以将此牌作为“明伐”牌置于武将牌上并选择一名其他角色,记录该角色和此牌的名称。②一名角色的回合结束时,若其是你〖明伐①〗记录的角色,则你视为对其依次使用X张〖明伐①〗记录的牌,然后移去“明伐”牌(X为其手牌数且至少为1,至多为5)。③一名角色死亡时,若其是你〖明伐①〗记录的角色,则你移去“明伐”牌。',
|
||||||
zhangxuan:'张嫙',
|
zhangxuan:'张嫙',
|
||||||
tongli:'同礼',
|
tongli:'同礼',
|
||||||
tongli_info:'当你于出牌阶段内不因〖同礼〗而使用基本牌或普通锦囊牌指定第一个目标后,若你手牌中的花色数和你于本阶段内不因〖同礼〗而使用过的牌数相等,则你可以于此牌结算结束后依次视为对此牌的所有目标使用X张名称和属性相同的牌(X为你手牌中的花色数)。',
|
//tongli_info:'当你于出牌阶段内不因〖同礼〗而使用基本牌或普通锦囊牌指定第一个目标后,若你手牌中的花色数和你于本阶段内不因〖同礼〗而使用过的牌数相等,则你可以于此牌结算结束后依次视为对此牌的所有目标使用X张名称和属性相同的牌(X为你手牌中的花色数)。',
|
||||||
|
tongli_info:'当你于出牌阶段内使用基本牌或普通锦囊牌指定第一个目标后,若你手牌中的花色数和你于本阶段内使用过的牌数相等,则你可以令此牌额外结算X次(X为你手牌中的花色数)。',
|
||||||
shezang:'奢葬',
|
shezang:'奢葬',
|
||||||
shezang_info:'每轮限一次。当你或你回合内的其他角色进入濒死状态时,你可以从牌堆中获得每种花色的牌各一张。',
|
shezang_info:'每轮限一次。当你或你回合内的其他角色进入濒死状态时,你可以从牌堆中获得每种花色的牌各一张。',
|
||||||
qinyilu:'秦宜禄',
|
qinyilu:'秦宜禄',
|
||||||
|
|
|
@ -405,9 +405,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
direct:true,
|
direct:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var count=game.countPlayer(current=>{
|
var count=get.cnNumber(game.countPlayer(current=>{
|
||||||
return get.distance(player,current)<=1;
|
return get.distance(player,current)<=1;
|
||||||
});
|
}));
|
||||||
player.chooseTarget(get.prompt('twzhiqu'),'选择一名其他角色并视为使用牌堆顶'+count+'张牌中的【杀】。若你与其均在对方的攻击范围内,你改为依次对其使用牌堆顶'+count+'张牌中的【杀】或锦囊牌。',lib.filter.notMe).set('ai',target=>{
|
player.chooseTarget(get.prompt('twzhiqu'),'选择一名其他角色并视为使用牌堆顶'+count+'张牌中的【杀】。若你与其均在对方的攻击范围内,你改为依次对其使用牌堆顶'+count+'张牌中的【杀】或锦囊牌。',lib.filter.notMe).set('ai',target=>{
|
||||||
var player=_status.event.player;
|
var player=_status.event.player;
|
||||||
return get.effect(target,{name:'sha'},player,player)*(get.distance(player,target)==1?2:1);
|
return get.effect(target,{name:'sha'},player,player)*(get.distance(player,target)==1?2:1);
|
||||||
|
@ -427,8 +427,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
'step 2'
|
'step 2'
|
||||||
if(player.isIn()&&target.isIn()&&cards.length){
|
if(player.isIn()&&target.isIn()&&cards.length){
|
||||||
do var card=cards.shift();
|
do var card=cards.shift();
|
||||||
while(get.name(card)=='sha'||event.fight&&get.type2(card)=='trick');
|
while(get.name(card)!='sha'&&(!event.fight||get.type2(card)!='trick')&&cards.length);
|
||||||
if(!card) return;
|
if(get.name(card)!='sha'&&(!event.fight||get.type2(card)!='trick')) return;
|
||||||
player.chooseUseTarget(card,true,false,'nodistance').set('filterTarget',function(card,player,target){
|
player.chooseUseTarget(card,true,false,'nodistance').set('filterTarget',function(card,player,target){
|
||||||
var evt=_status.event;
|
var evt=_status.event;
|
||||||
if(_status.event.name=='chooseTarget') evt=evt.getParent();
|
if(_status.event.name=='chooseTarget') evt=evt.getParent();
|
||||||
|
@ -448,6 +448,22 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return event.card.name=='sha'||get.type(event.card)=='trick'&&get.tag(event.card,'damage');
|
return event.card.name=='sha'||get.type(event.card)=='trick'&&get.tag(event.card,'damage');
|
||||||
},
|
},
|
||||||
logTarget:'player',
|
logTarget:'player',
|
||||||
|
check:function(event,player){
|
||||||
|
var att=get.attitude(event.player,player);
|
||||||
|
if(player.hasSkill('twzhiqu')){
|
||||||
|
var cnt=game.countPlayer(current=>get.distance(player,current)==2&&!player.inRange(current));
|
||||||
|
if(cnt>=2){
|
||||||
|
if(att<0) return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if(att<0&&cnt>=2||att>0&&!cnt) return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
if(att<0) return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var target=trigger.player;
|
var target=trigger.player;
|
||||||
|
@ -461,7 +477,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
var att=get.attitude(target,player);
|
var att=get.attitude(target,player);
|
||||||
if(att==0) return 0;
|
if(att==0) return 0;
|
||||||
if(player.hasSkill('twzhiqu')){
|
if(player.hasSkill('twzhiqu')){
|
||||||
var cnt=game.countPlayer(current=>get.distance(player,current)==2);
|
var cnt=game.countPlayer(current=>get.distance(player,current)==2&&!player.inRange(current));
|
||||||
if(cnt>=2){
|
if(cnt>=2){
|
||||||
if(att<0) return 1;
|
if(att<0) return 1;
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue