commit
88c94ff411
|
@ -6944,25 +6944,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
init:function(player,name){
|
init:function(player,name){
|
||||||
player.storage[name]=[1,2,3,4];
|
player.storage[name]=[1,2,3,4];
|
||||||
},
|
},
|
||||||
trigger:{player:'phaseBegin'},
|
|
||||||
forced:true,
|
|
||||||
popup:false,
|
|
||||||
content:function(){
|
|
||||||
trigger._shanduan=(player.storage.shanduan||[1,2,3,4]).slice(0);
|
|
||||||
player.storage.shanduan=[1,2,3,4]
|
|
||||||
},
|
|
||||||
group:['shanduan_draw','shanduan_use','shanduan_discard','shanduan_damage'],
|
|
||||||
ai:{
|
|
||||||
notemp:true,
|
|
||||||
threaten:3.6,
|
|
||||||
},
|
|
||||||
subSkill:{
|
|
||||||
damage:{
|
|
||||||
audio:'shanduan',
|
|
||||||
trigger:{player:'damageEnd'},
|
trigger:{player:'damageEnd'},
|
||||||
|
filter:(event,player)=>player!=_status.currentPhase,
|
||||||
forced:true,
|
forced:true,
|
||||||
locked:false,
|
locked:false,
|
||||||
filter:(event,player)=>player!=_status.currentPhase,
|
|
||||||
content:function(){
|
content:function(){
|
||||||
if(!player.storage.shanduan) player.storage.shanduan=[1,2,3,4];
|
if(!player.storage.shanduan) player.storage.shanduan=[1,2,3,4];
|
||||||
var list=player.storage.shanduan;
|
var list=player.storage.shanduan;
|
||||||
|
@ -6981,7 +6966,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
game.delayx();
|
game.delayx();
|
||||||
},
|
},
|
||||||
|
group:['shanduan_draw','shanduan_use','shanduan_discard'],
|
||||||
|
ai:{
|
||||||
|
notemp:true,
|
||||||
|
threaten:3.6,
|
||||||
},
|
},
|
||||||
|
subSkill:{
|
||||||
draw:{
|
draw:{
|
||||||
audio:'shanduan',
|
audio:'shanduan',
|
||||||
trigger:{player:'phaseDrawBegin'},
|
trigger:{player:'phaseDrawBegin'},
|
||||||
|
@ -6989,14 +6979,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
locked:false,
|
locked:false,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
var list=event.getParent()._shanduan;
|
var list=event.getParent()._shanduan;
|
||||||
return list&&list.length>0;
|
return !list||list.length>0;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
|
if(!list){
|
||||||
|
trigger.getParent()._shanduan=(player.storage.shanduan||[1,2,3,4]).slice(0);
|
||||||
|
player.storage.shanduan=[1,2,3,4];
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
var list=trigger.getParent()._shanduan;
|
||||||
if(list.length==1) event._result={index:0};
|
if(list.length==1) event._result={index:0};
|
||||||
else player.chooseControl(list).set('prompt','善断:为摸牌阶段的摸牌数分配一个数值').set('choice',list.indexOf(Math.max.apply(Math,list))).set('ai',()=>_status.event.choice);
|
else player.chooseControl(list).set('prompt','善断:为摸牌阶段的摸牌数分配一个数值').set('choice',list.indexOf(Math.max.apply(Math,list))).set('ai',()=>_status.event.choice);
|
||||||
'step 1'
|
'step 2'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
var num=list[result.index];
|
var num=list[result.index];
|
||||||
trigger.num=num;
|
trigger.num=num;
|
||||||
|
@ -7011,11 +7007,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
locked:false,
|
locked:false,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
var list=event.getParent()._shanduan;
|
var list=event.getParent()._shanduan;
|
||||||
return list&&list.length>0;
|
return !list||list.length>0;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
|
if(!list){
|
||||||
|
trigger.getParent()._shanduan=(player.storage.shanduan||[1,2,3,4]).slice(0);
|
||||||
|
player.storage.shanduan=[1,2,3,4];
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
var list=trigger.getParent()._shanduan;
|
||||||
if(list.length==1) event._result={index:0};
|
if(list.length==1) event._result={index:0};
|
||||||
else player.chooseControl(list).set('prompt','善断:为攻击范围基数分配一个数值').set('list',list).set('ai',function(){
|
else player.chooseControl(list).set('prompt','善断:为攻击范围基数分配一个数值').set('list',list).set('ai',function(){
|
||||||
var player=_status.event.player,list=_status.event.list,card={name:'sha'};
|
var player=_status.event.player,list=_status.event.list,card={name:'sha'};
|
||||||
|
@ -7041,7 +7043,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
return list.indexOf(Math.min.apply(Math,list));
|
return list.indexOf(Math.min.apply(Math,list));
|
||||||
});
|
});
|
||||||
'step 1'
|
'step 2'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
var num=list[result.index];
|
var num=list[result.index];
|
||||||
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
||||||
|
@ -7066,7 +7068,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
return list.indexOf(Math.min.apply(Math,list));
|
return list.indexOf(Math.min.apply(Math,list));
|
||||||
});
|
});
|
||||||
'step 2'
|
'step 3'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
var num=list[result.index];
|
var num=list[result.index];
|
||||||
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
||||||
|
@ -7082,14 +7084,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
locked:false,
|
locked:false,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
var list=event.getParent()._shanduan;
|
var list=event.getParent()._shanduan;
|
||||||
return list&&list.length>0;
|
return !list||list.length>0;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
|
if(!list){
|
||||||
|
trigger.getParent()._shanduan=(player.storage.shanduan||[1,2,3,4]).slice(0);
|
||||||
|
player.storage.shanduan=[1,2,3,4];
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
var list=trigger.getParent()._shanduan;
|
||||||
if(list.length==1) event._result={index:0};
|
if(list.length==1) event._result={index:0};
|
||||||
else player.chooseControl(list).set('prompt','善断:为手牌上限基数分配一个数值').set('choice',list.indexOf(Math.max.apply(Math,list))).set('ai',()=>_status.event.choice);
|
else player.chooseControl(list).set('prompt','善断:为手牌上限基数分配一个数值').set('choice',list.indexOf(Math.max.apply(Math,list))).set('ai',()=>_status.event.choice);
|
||||||
'step 1'
|
'step 2'
|
||||||
var list=trigger.getParent()._shanduan;
|
var list=trigger.getParent()._shanduan;
|
||||||
var num=list[result.index];
|
var num=list[result.index];
|
||||||
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
if(!player.storage.shanduan_effect) player.storage.shanduan_effect={};
|
||||||
|
@ -25352,7 +25360,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
tongxie_info:'出牌阶段开始时,你可以选择包括你在内的至多三名角色(你与这些角色均称为“同协角色”)。这些角色中手牌数唯一最少的角色摸一张牌,且你获得如下效果直到你下回合开始:①当有“同协角色”对唯一目标角色使用的【杀】结算结束后,其他“同协角色”可以依次对目标角色使用一张【杀】(无距离和次数限制,且不能再触发此效果)。②当有“同协角色”受到伤害时,其他“同协角色”(本回合内失去过体力的角色除外)可以防止此伤害,失去1点体力。',
|
tongxie_info:'出牌阶段开始时,你可以选择包括你在内的至多三名角色(你与这些角色均称为“同协角色”)。这些角色中手牌数唯一最少的角色摸一张牌,且你获得如下效果直到你下回合开始:①当有“同协角色”对唯一目标角色使用的【杀】结算结束后,其他“同协角色”可以依次对目标角色使用一张【杀】(无距离和次数限制,且不能再触发此效果)。②当有“同协角色”受到伤害时,其他“同协角色”(本回合内失去过体力的角色除外)可以防止此伤害,失去1点体力。',
|
||||||
jin_zhouchu:'周处',
|
jin_zhouchu:'周处',
|
||||||
shanduan:'善断',
|
shanduan:'善断',
|
||||||
shanduan_info:'锁定技。①回合开始时,你生成数组R=[1,2,3,4]。②摸牌阶段开始时,你从数组R中选择并移除一个数字A。你本阶段的额定摸牌数改为A。③出牌阶段开始时,你从数组R中选择并移除两个数字B和C。你将你本阶段内的攻击范围基数最小值和使用【杀】的次数上限基础值改为B和C。④弃牌阶段开始时,你从数组R中选择并移除一个数字D。你令你本回合的手牌上限基数改为D。⑤当你于回合外受到伤害后,你令下回合生成的R中最小的一个数字+1。',
|
shanduan_info:'锁定技。①摸牌/出牌/弃牌阶段开始时,你为本回合摸牌阶段摸牌数/攻击范围和使用【杀】的限制次数/手牌上限的默认值从数组R=[1,2,3,4]中分配数值。②当你于回合外受到伤害后,你令下回合〖善断①〗以此法分配的数值集合R中的最小值+1。',
|
||||||
yilie:'义烈',
|
yilie:'义烈',
|
||||||
yilie_info:'每轮每种牌名限一次。你可以将两张颜色相同的手牌当做任意一种基本牌使用。',
|
yilie_info:'每轮每种牌名限一次。你可以将两张颜色相同的手牌当做任意一种基本牌使用。',
|
||||||
caoxiancaohua:'曹宪曹华',
|
caoxiancaohua:'曹宪曹华',
|
||||||
|
|
|
@ -6302,7 +6302,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
event.list=list;
|
event.list=list;
|
||||||
player.draw(list[0]);
|
player.draw(list[0]);
|
||||||
'step 1'
|
'step 1'
|
||||||
player.storage.dchuishu_effect=event.list[2];
|
|
||||||
player.addTempSkill('dchuishu_effect');
|
player.addTempSkill('dchuishu_effect');
|
||||||
player.chooseToDiscard('h',true,event.list[1]);
|
player.chooseToDiscard('h',true,event.list[1]);
|
||||||
},
|
},
|
||||||
|
@ -6315,22 +6314,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
content:function(storage,player){
|
content:function(storage,player){
|
||||||
var list=lib.skill.dchuishu.getList(player);
|
var list=lib.skill.dchuishu.getList(player);
|
||||||
return '摸牌阶段结束时,你可以摸['+list[0]+']张牌。若如此做:你弃置['+list[1]+']张手牌,且当你于本回合内弃置第['+list[2]+']+1张牌后,你从弃牌堆中获得等同于本回合弃牌数的非基本牌。';
|
return '摸牌阶段结束时,你可以摸['+list[0]+']张牌。若如此做:你弃置['+list[1]+']张手牌,且当你于本回合内弃置第['+list[2]+']+1张牌后,你从弃牌堆中获得['+list[2]+']张非基本牌。';
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
subSkill:{
|
subSkill:{
|
||||||
effect:{
|
effect:{
|
||||||
|
charlotte:true,
|
||||||
audio:'dchuishu',
|
audio:'dchuishu',
|
||||||
trigger:{
|
trigger:{
|
||||||
player:'loseAfter',
|
player:'loseAfter',
|
||||||
global:'loseAsyncAfter',
|
global:'loseAsyncAfter',
|
||||||
},
|
},
|
||||||
forced:true,
|
|
||||||
popup:false,
|
|
||||||
charlotte:true,
|
|
||||||
onremove:true,
|
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
var num=player.storage.dchuishu_effect;
|
var num=lib.skill.dchuishu.getList(player)[2];
|
||||||
if(typeof num!='number') return false;
|
if(typeof num!='number') return false;
|
||||||
if(event.type!='discard'||event.getlx===false) return false;
|
if(event.type!='discard'||event.getlx===false) return false;
|
||||||
var evt=event.getl(player);
|
var evt=event.getl(player);
|
||||||
|
@ -6346,14 +6342,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
});
|
});
|
||||||
return prev>num;
|
return prev>num;
|
||||||
},
|
},
|
||||||
|
forced:true,
|
||||||
|
popup:false,
|
||||||
|
firstDo:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
player.removeSkill('dchuishu_effect');
|
var num=lib.skill.dchuishu.getList(player)[2];
|
||||||
var evt=trigger.getl(player);
|
|
||||||
var num=0;
|
|
||||||
player.getHistory('lose',function(evt){
|
|
||||||
if(evt.type!='discard') return false;
|
|
||||||
num+=evt.cards2.length;
|
|
||||||
});
|
|
||||||
var cards=[];
|
var cards=[];
|
||||||
for(var i=0;i<num;i++){
|
for(var i=0;i<num;i++){
|
||||||
var card=get.discardPile(function(card){
|
var card=get.discardPile(function(card){
|
||||||
|
@ -12200,7 +12193,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
dchuishu:function(player){
|
dchuishu:function(player){
|
||||||
var list=lib.skill.dchuishu.getList(player);
|
var list=lib.skill.dchuishu.getList(player);
|
||||||
return '摸牌阶段结束时,你可以摸['+list[0]+']张牌。若如此做:你弃置['+list[1]+']张手牌,且当你于本回合内弃置第['+list[2]+']+1张牌后,你从弃牌堆中随机获得等同于本回合弃牌数的非基本牌。';
|
return '摸牌阶段结束时,你可以摸['+list[0]+']张牌。若如此做:你弃置['+list[1]+']张手牌,且当你于本回合内弃置第['+list[2]+']+1张牌后,你从弃牌堆中随机获得〖慧淑〗第三个括号数字张非基本牌。';
|
||||||
},
|
},
|
||||||
dcshoutan:function(player){
|
dcshoutan:function(player){
|
||||||
if(player.storage.dcshoutan) return '转换技。出牌阶段限一次,阴:你可以弃置一张不为黑色的手牌。<span class="bluetext">阳:你可以弃置一张黑色手牌。</span>';
|
if(player.storage.dcshoutan) return '转换技。出牌阶段限一次,阴:你可以弃置一张不为黑色的手牌。<span class="bluetext">阳:你可以弃置一张黑色手牌。</span>';
|
||||||
|
@ -12457,7 +12450,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
dcpeiqi_info:'当你受到伤害后,你可以移动场上的一张牌。然后若场上所有角色均在彼此的攻击范围内,则你可以再移动场上的一张牌。',
|
dcpeiqi_info:'当你受到伤害后,你可以移动场上的一张牌。然后若场上所有角色均在彼此的攻击范围内,则你可以再移动场上的一张牌。',
|
||||||
quanhuijie:'全惠解',
|
quanhuijie:'全惠解',
|
||||||
dchuishu:'慧淑',
|
dchuishu:'慧淑',
|
||||||
dchuishu_info:'摸牌阶段结束时,你可以摸[3]张牌。若如此做:你弃置[1]张手牌,且当你于本回合内弃置第[2]+1张牌后,你从弃牌堆中随机获得等同于本回合弃牌数的非基本牌。',
|
dchuishu_info:'摸牌阶段结束时,你可以摸[3]张牌。若如此做:你弃置[1]张手牌,且当你于本回合内弃置第[2]+1张牌后,你从弃牌堆中随机获得〖慧淑〗第三个括号数字张非基本牌。',
|
||||||
dcyishu:'易数',
|
dcyishu:'易数',
|
||||||
dcyishu_info:'锁定技。当你不因出牌阶段而失去牌后,你同时令{〖慧淑〗的中括号内最小的一个数字+2}且{〖慧淑〗的中括号内最大的一个数字-1}。',
|
dcyishu_info:'锁定技。当你不因出牌阶段而失去牌后,你同时令{〖慧淑〗的中括号内最小的一个数字+2}且{〖慧淑〗的中括号内最大的一个数字-1}。',
|
||||||
dcligong:'离宫',
|
dcligong:'离宫',
|
||||||
|
|
|
@ -9547,13 +9547,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
yanyu2:{
|
yanyu2:{
|
||||||
trigger:{player:'phaseUseEnd'},
|
trigger:{player:'phaseUseEnd'},
|
||||||
direct:true,
|
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.getHistory('lose',function(evt){
|
return player.getHistory('useSkill',function(evt){
|
||||||
var evt2=evt.getParent();
|
return evt.event.getParent('phaseUse')==event&&evt.skill=='yanyu';
|
||||||
return evt2.name=='useSkill'&&evt2.skill=='yanyu'&&evt.getParent(3)==event;
|
|
||||||
}).length>=2;
|
}).length>=2;
|
||||||
},
|
},
|
||||||
|
direct:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
player.chooseTarget(get.prompt('yanyu'),'令一名男性角色摸两张牌',function(card,player,target){
|
player.chooseTarget(get.prompt('yanyu'),'令一名男性角色摸两张牌',function(card,player,target){
|
||||||
|
|
Loading…
Reference in New Issue