This commit is contained in:
libccy 2017-03-03 00:46:02 +08:00
parent 9b0a35bfb1
commit f6bab44337
6 changed files with 132 additions and 17 deletions

View File

@ -2,7 +2,7 @@ character.gwent={
character:{ character:{
gw_huoge:['male','qun',3,['quanzhang']], gw_huoge:['male','qun',3,['quanzhang']],
gw_aisinie:['female','wu',3,['huihun']], gw_aisinie:['female','wu',3,['huihun']],
gw_gaier:['male','shu',3,['hunmo']], // gw_gaier:['male','shu',3,['hunmo']],
gw_enxier:['male','wei',4,['gwbaquan']], gw_enxier:['male','wei',4,['gwbaquan']],
// gw_kuite:['male','qun',3,[]], // gw_kuite:['male','qun',3,[]],
@ -19,10 +19,10 @@ character.gwent={
gw_jieluote:['male','qun',6,['fayin']], gw_jieluote:['male','qun',6,['fayin']],
gw_yenaifa:['female','qun',3,['xuezhou']], gw_yenaifa:['female','qun',3,['xuezhou']],
gw_telisi:['female','shu',3,['huandie']], gw_telisi:['female','wei',3,['huandie']],
gw_xili:['female','qun',3,['fengjian']], gw_xili:['female','qun',3,['fengjian']],
// gw_luoqi:['male','qun',3,[]], gw_luoqi:['male','wei',4,['gwzhanjiang']],
// gw_yioufeisi:['male','qun',3,[]], gw_yioufeisi:['male','wu',4,['gwchuanxin']],
}, },
characterIntro:{ characterIntro:{
gw_huoge:'那个老年痴呆?不知道他是活着还是已经被制成标本了!', gw_huoge:'那个老年痴呆?不知道他是活着还是已经被制成标本了!',
@ -37,14 +37,93 @@ character.gwent={
gw_yioufeisi:'国王还是乞丐,两者有何区别,人类少一个是一个', gw_yioufeisi:'国王还是乞丐,两者有何区别,人类少一个是一个',
}, },
skill:{ skill:{
gwzhanjiang:{
trigger:{global:'phaseBegin'},
direct:true,
filter:function(event,player){
return !player.hasSkill('gwzhanjiang2')&&event.player!=player;
},
content:function(){
'step 0'
var bool=(ai.get.effect(trigger.player,{name:'sha'},player,player)>0&&game.hasPlayer(function(current){
return ai.get.attitude(current,player)>0&&current.hasSha();
}));
var next=player.chooseToDiscard(get.prompt('gwzhanjiang',trigger.player),'he');
next.ai=function(card){
if(bool) return 7-ai.get.value(card);
return 0;
};
next.logSkill=['gwzhanjiang',trigger.player];
'step 1'
if(result.bool){
player.addTempSkill('gwzhanjiang2',{player:'phaseBegin'});
event.targets=game.filterPlayer(function(current){
return current!=trigger.player;
});
event.targets.sortBySeat(trigger.player);
event.list=[];
}
else{
event.finish();
}
'step 2'
if(event.targets.length){
event.current=event.targets.shift();
if(event.current.hasSha()){
event.current.chooseToUse({name:'sha'},'是否对'+get.translation(trigger.player)+'使用一张杀?',trigger.player,-1);
}
else{
event.redo();
}
}
else{
event.goto(4);
}
'step 3'
if(result.bool){
event.list.push(event.current);
}
event.goto(2);
'step 4'
if(event.list.length){
game.asyncDrawAuto(event.list);
}
},
ai:{
expose:0.2
}
},
gwzhanjiang2:{},
gwchuanxin:{
trigger:{player:'shaAfter'},
filter:function(event,player){
return event.target.isAlive();
},
check:function(event,player){
return ai.get.effect(event.target,{name:'sha'},player,player)>0
},
logTarget:'target',
content:function(){
'step 0'
player.judge(function(card){
return get.color(card)=='black'?1:-1;
});
'step 1'
if(result.color=='black'){
player.useCard({name:'sha'},trigger.target,false);
}
}
},
fengjian:{ fengjian:{
trigger:{player:'useCard'}, trigger:{player:'useCard'},
direct:true, direct:true,
filter:function(event,player){ filter:function(event,player){
return get.type(event.card,'trick')=='trick'&&event.cards[0]&&event.cards[0]==event.card&&game.hasPlayer(function(current){ var type=get.type(event.card,'trick');
return (type=='trick'||type=='equip')&&game.hasPlayer(function(current){
return player.canUse('sha',current,false)&&!event.targets.contains(current); return player.canUse('sha',current,false)&&!event.targets.contains(current);
}); });
}, },
usable:2,
content:function(){ content:function(){
"step 0" "step 0"
player.chooseTarget(get.prompt('fengjian'),function(card,player,target){ player.chooseTarget(get.prompt('fengjian'),function(card,player,target){
@ -54,12 +133,8 @@ character.gwent={
} }
"step 1" "step 1"
if(result.bool){ if(result.bool){
player.logSkill('fengjian',result.targets); player.logSkill('fengjian');
player.draw(false); player.useCard({name:'sha',nature:'thunder'},result.targets,false);
player.$draw();
game.delay();
var next=player.useCard({name:'sha',nature:'thunder'},result.targets,false);
next.animate=false;
} }
}, },
ai:{ ai:{
@ -96,7 +171,7 @@ character.gwent={
result.targets.sortBySeat(); result.targets.sortBySeat();
result.targets.unshift(player); result.targets.unshift(player);
player.logSkill('huandie',result.targets); player.logSkill('huandie',result.targets);
game.asyncDraw(result.targets,function(current){ game.asyncDrawAuto(result.targets,function(current){
return current==player?1:2; return current==player?1:2;
}); });
player.addTempSkill('huandie_discard','phaseAfter'); player.addTempSkill('huandie_discard','phaseAfter');
@ -143,10 +218,10 @@ character.gwent={
content:function(storage,player){ content:function(storage,player){
var name=get.translation(player); var name=get.translation(player);
if(storage==1){ if(storage==1){
return '每当一名角色('+name+'除外)受到一次伤害,该角色失去一点体力,'+name+'回复一点体力' return '每当一名角色('+name+'除外)受到一次伤害,该角色失去一点体力,'+name+'回复一点体力';
} }
else if(storage==2){ else if(storage==2){
return '每当一名角色('+name+'除外)造成一次伤害,该角色失去一点体力,'+name+'(若不是受伤害角色)回复一点体力' return '每当一名角色('+name+'除外)造成一次伤害,该角色失去一点体力,'+name+'(若不是受伤害角色)回复一点体力';
} }
else{ else{
return '未发动'; return '未发动';
@ -348,6 +423,9 @@ character.gwent={
} }
player.gain(list,'gain2','log'); player.gain(list,'gain2','log');
}, },
ai:{
threaten:1.8,
},
group:['huihun_count','huihun_count2'], group:['huihun_count','huihun_count2'],
subSkill:{ subSkill:{
count:{ count:{
@ -456,8 +534,12 @@ character.gwent={
gw_luoqi:'罗契', gw_luoqi:'罗契',
gw_yioufeisi:'伊欧菲斯', gw_yioufeisi:'伊欧菲斯',
gwzhanjiang:'斩将',
gwzhanjiang_info:'每轮限一次,在一名角色的准备阶段,你可以弃置一张牌,然后所有角色可以对该角色使用一张杀,结算后所有出杀的角色摸一张牌',
gwchuanxin:'穿心',
gwchuanxin_info:'每当你对一名角色使用杀结算完毕后,你可以进行一判定,若结果为黑色,视为对目标再使用一张杀',
fengjian:'风剑', fengjian:'风剑',
fengjian_info:'每当你使用一张非转化的锦囊牌,你可以摸一张牌并视为对一名不是此牌目标的角色使用一张雷杀;若此杀造成伤害,你获得潜行直到下一回合开始', fengjian_info:'每当你使用一张锦囊牌或装备牌,你可以视为对一名不是此牌目标的角色使用一张雷杀;若此杀造成伤害,你获得潜行直到下一回合开始,每回合最多发动两次',
huandie:'幻蝶', huandie:'幻蝶',
huandie_info:'准备阶段,你可以摸一张牌,并令任意名其他角色摸两张牌,若如此做,此回合结束时,所有手牌数大于体力值的角色需弃置两张手牌', huandie_info:'准备阶段,你可以摸一张牌,并令任意名其他角色摸两张牌,若如此做,此回合结束时,所有手牌数大于体力值的角色需弃置两张手牌',
xuezhou:'血咒', xuezhou:'血咒',
@ -467,7 +549,7 @@ character.gwent={
gwbaquan:'霸权', gwbaquan:'霸权',
gwbaquan_info:'出牌阶段限一次,你可以获得一名其他角色的所有牌,然后还给其等量的牌,若你归还的牌均为你获得的牌且该角色体力值不小于你,你对其造成一点伤害', gwbaquan_info:'出牌阶段限一次,你可以获得一名其他角色的所有牌,然后还给其等量的牌,若你归还的牌均为你获得的牌且该角色体力值不小于你,你对其造成一点伤害',
hunmo:'魂墨', hunmo:'魂墨',
hunmo_info:'出牌阶段限一次,你可以选择任意名角色,令目标的手牌数变为你当前的体力值最多为3并视为对其中弃牌的角色使用一张杀不计入出杀次数', hunmo_info:'出牌阶段限一次,你可以选择任意名角色,令目标的手牌数变为你当前的体力值相同最多为3并视为对其中弃牌的角色使用一张杀不计入出杀次数',
huihun:'回魂', huihun:'回魂',
huihun_info:'结束阶段,你可以从弃牌堆中获得本回合使用的前两张红色牌', huihun_info:'结束阶段,你可以从弃牌堆中获得本回合使用的前两张红色牌',
quanzhang:'权杖', quanzhang:'权杖',

View File

@ -53,6 +53,15 @@ window.characterRank={
'hs_tyrande', 'hs_tyrande',
], ],
a:[ a:[
'gw_huoge',
'gw_xili',
'gw_yenaifa',
'gw_yioufeisi',
'gw_jieluote',
'gw_telisi',
'gw_luoqi',
'gw_enxier',
'gw_aisinie',
'hs_khadgar', 'hs_khadgar',
'swd_sikongyu', 'swd_sikongyu',
'swd_huzhongxian', 'swd_huzhongxian',

View File

@ -1102,6 +1102,7 @@ character.shenhua={
} }
else if(get.tag(card,'respondSha')||get.tag(card,'respondShan')){ else if(get.tag(card,'respondSha')||get.tag(card,'respondShan')){
if(ai.get.attitude(player,target)>0&&card.name=='juedou') return; if(ai.get.attitude(player,target)>0&&card.name=='juedou') return;
if(get.tag(card,'damage')&&target.hasSkillTag('maixie')) return;
if(target.num('h')==0) return 2; if(target.num('h')==0) return 2;
if(target.hasSkill('ziliang')) return 0.7; if(target.hasSkill('ziliang')) return 0.7;
if(get.mode()=='guozhan') return 0.5; if(get.mode()=='guozhan') return 0.5;

View File

@ -8960,7 +8960,7 @@ character.swd={
fushen2:'附身', fushen2:'附身',
wangchen:'忘尘', wangchen:'忘尘',
wangchen_info:'若你于弃牌阶段弃置了基本牌,可令一名角色翻面', wangchen_info:'若你于弃牌阶段弃置了基本牌,可令一名角色翻面',
wangchen_info_alter:'若你于弃牌阶段弃置了基本牌,可令一名角色翻面', wangchen_info_alter:'若你于弃牌阶段弃置了基本牌,可令一名角色失去一点体力',
guiyin:'归隐', guiyin:'归隐',
guiyin_info:'若你于弃牌阶段弃置了至少两张牌,你可以摸两张牌', guiyin_info:'若你于弃牌阶段弃置了至少两张牌,你可以摸两张牌',
shejie:'设界', shejie:'设界',

View File

@ -22640,6 +22640,29 @@
players[i].$draw(num2); players[i].$draw(num2);
} }
}, },
asyncDrawAuto:function(players,num,drawDeck){
if(players.length==1){
var num2=1;
if(typeof num=='number'){
num2=num;
}
else if(Array.isArray(num)){
num2=num[0];
}
else if(typeof num=='function'){
num2=num(players[0]);
}
if(drawDeck&&drawDeck.drawDeck){
players[0].draw(num2,drawDeck);
}
else{
players[0].draw(num2);
}
}
else{
game.asyncDraw.apply(this,arguments);
}
},
finishSkill:function(i,sub){ finishSkill:function(i,sub){
var j; var j;
var mode=get.mode(); var mode=get.mode();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 58 KiB