新增族钟琰、谋孟获、谋祝融,解禁陈泰、牵招、新杀孙寒华、桓范;修改info.chooseButton结构中,只有一个可选时,可以跳过选择框
|
@ -15,6 +15,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
clan_hanrong:['male','qun',3,['clanlianhe','clanhuanjia','clanxumin'],['clan:颍川韩氏']],
|
clan_hanrong:['male','qun',3,['clanlianhe','clanhuanjia','clanxumin'],['clan:颍川韩氏']],
|
||||||
clan_wukuang:['male','qun',4,['clanlianzhu','clanmuyin'],['clan:陈留吴氏']],
|
clan_wukuang:['male','qun',4,['clanlianzhu','clanmuyin'],['clan:陈留吴氏']],
|
||||||
clan_wangling:['male','wei',4,['clanbolong','clanzhongliu'],['clan:太原王氏']],
|
clan_wangling:['male','wei',4,['clanbolong','clanzhongliu'],['clan:太原王氏']],
|
||||||
|
clan_zhongyan:['female','jin',3,['clanguangu','clanxiaoyong','clanbaozu'],['clan:颍川钟氏']],
|
||||||
},
|
},
|
||||||
characterSort:{
|
characterSort:{
|
||||||
clan:{
|
clan:{
|
||||||
|
@ -25,6 +26,257 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
//钟琰族钟琰
|
||||||
|
clanguangu:{
|
||||||
|
audio:2,
|
||||||
|
enable:'phaseUse',
|
||||||
|
usable:1,
|
||||||
|
zhuanhuanji:true,
|
||||||
|
mark:true,
|
||||||
|
marktext:'☯',
|
||||||
|
intro:{
|
||||||
|
content:function(storage){
|
||||||
|
return '转换技。出牌阶段限一次,你可以观看'+(storage?'一名角色的至多四张手':'牌堆顶的至多四张')+'牌,然后可以使用其中的一张牌';
|
||||||
|
},
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
if(player.storage.clanguangu) return game.hasPlayer(current=>{
|
||||||
|
return current.countCards('h');
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
chooseButton:{
|
||||||
|
dialog:function(event,player){
|
||||||
|
var dialog=ui.create.dialog('观骨:选择观看牌堆的牌数','hidden');
|
||||||
|
if(player.storage.clanguangu) dialog.forceDirect=true;
|
||||||
|
return dialog;
|
||||||
|
},
|
||||||
|
chooseControl:function(event,player){
|
||||||
|
var list=[1,2,3,4].map(i=>{
|
||||||
|
return get.cnNumber(i,true);
|
||||||
|
});
|
||||||
|
list.push('cancel2');
|
||||||
|
return list;
|
||||||
|
},
|
||||||
|
check:function(button,player){
|
||||||
|
var ret;
|
||||||
|
if(!player.hasSkill('clanxiaoyong')) ret=4;
|
||||||
|
else{
|
||||||
|
var list=[4,3,2,1];
|
||||||
|
player.getHistory('useCard',evt=>{
|
||||||
|
var len=lib.skill.dcweidang.getLength(evt.card);
|
||||||
|
list.remove(len);
|
||||||
|
});
|
||||||
|
if(list.length) ret=list[0];
|
||||||
|
else ret=4;
|
||||||
|
}
|
||||||
|
return get.cnNumber(ret,true);
|
||||||
|
},
|
||||||
|
backup:function(result,player){
|
||||||
|
return {
|
||||||
|
audio:'clanguangu',
|
||||||
|
filterCard:()=>false,
|
||||||
|
selectCard:-1,
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
if(player.storage.clanguangu) return true;
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
selectTarget:function(){
|
||||||
|
var player=_status.event.player;
|
||||||
|
if(player.storage.clanguangu) return 1;
|
||||||
|
return -1;
|
||||||
|
},
|
||||||
|
num:result.index+1,
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.changeZhuanhuanji('clanguangu');
|
||||||
|
if(!targets.length){
|
||||||
|
var num=lib.skill.clanguangu_backup.num;
|
||||||
|
var cards=get.cards(num);
|
||||||
|
game.cardsGotoOrdering(cards);
|
||||||
|
event.cards=cards;
|
||||||
|
event.goto(2);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
var ret;
|
||||||
|
if(!player.hasSkill('clanxiaoyong')) ret=4;
|
||||||
|
else{
|
||||||
|
var list=[4,3,2,1];
|
||||||
|
player.getHistory('useCard',evt=>{
|
||||||
|
var len=lib.skill.dcweidang.getLength(evt.card);
|
||||||
|
list.remove(len);
|
||||||
|
});
|
||||||
|
if(list.length) ret=list[0];
|
||||||
|
else ret=4;
|
||||||
|
}
|
||||||
|
player.choosePlayerCard(target,'h',true,[1,4]).set('prompt','观骨:观看'+get.translation(target)+'的至多四张牌').set('ai',button=>{
|
||||||
|
if(ui.selected.buttons.length>=_status.event.num) return 0;
|
||||||
|
return Math.random();
|
||||||
|
}).set('num',ret);
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
if(result.bool){
|
||||||
|
event.cards=result.links;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.finish();
|
||||||
|
}
|
||||||
|
'step 2'
|
||||||
|
var count=cards.length;
|
||||||
|
event.getParent().viewedCount=count;
|
||||||
|
player.chooseButton(['观骨:是否使用其中一张牌?',cards]).set('filterButton',button=>{
|
||||||
|
var player=_status.event.player;
|
||||||
|
var card=button.link;
|
||||||
|
var cardx={
|
||||||
|
name:get.name(card,get.owner(card)),
|
||||||
|
nature:get.nature(card,get.owner(card)),
|
||||||
|
cards:[card],
|
||||||
|
}
|
||||||
|
return player.hasUseTarget(cardx);
|
||||||
|
}).set('ai',button=>{
|
||||||
|
var len=_status.event.len;
|
||||||
|
var card=button.link;
|
||||||
|
var fix=1;
|
||||||
|
if(lib.skill.dcweidang.getLength(card)==len) fix=2;
|
||||||
|
return fix*_status.event.player.getUseValue(card);
|
||||||
|
}).set('len',function(){
|
||||||
|
if(!player.hasSkill('clanxiaoyong')) return 0;
|
||||||
|
var list=[];
|
||||||
|
player.getHistory('useCard',evt=>{
|
||||||
|
var len=lib.skill.dcweidang.getLength(evt.card);
|
||||||
|
list.add(len);
|
||||||
|
});
|
||||||
|
if(!list.contains(count)) return count;
|
||||||
|
if(list.length) return list.randomGet();
|
||||||
|
return 4;
|
||||||
|
}());
|
||||||
|
'step 3'
|
||||||
|
if(result.bool){
|
||||||
|
var card=result.links[0];
|
||||||
|
cards.remove(card);
|
||||||
|
var cardx={
|
||||||
|
name:get.name(card,get.owner(card)),
|
||||||
|
nature:get.nature(card,get.owner(card)),
|
||||||
|
cards:[card],
|
||||||
|
}
|
||||||
|
var next=player.chooseUseTarget(cardx,[card],true).set('oncard',(card)=>{
|
||||||
|
var owner=_status.event.getParent().owner;
|
||||||
|
if(owner) owner.$throw(card.cards);
|
||||||
|
});
|
||||||
|
if(card.name!=cardx.name||card.nature!=cardx.nature) next.viewAs=true;
|
||||||
|
var owner=get.owner(card);
|
||||||
|
if(owner!=player&&get.position(card)=='h'){
|
||||||
|
next.throw=false;
|
||||||
|
next.set('owner',owner);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'step 4'
|
||||||
|
if(!targets.length){
|
||||||
|
while(cards.length) ui.cardPile.insertBefore(cards.pop().fix(),ui.cardPile.firstChild);
|
||||||
|
game.updateRoundNumber();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:10,
|
||||||
|
result:{
|
||||||
|
target:function(player,target){
|
||||||
|
return -Math.min(target.countCards('h'),4)/2;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
prompt:function(result){
|
||||||
|
if(result.index) return '点击“确定”以观看牌堆顶牌';
|
||||||
|
return '观骨:选择观看牌的目标';
|
||||||
|
},
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
backup:{},
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:10,
|
||||||
|
result:{
|
||||||
|
player:1,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
clanxiaoyong:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{
|
||||||
|
player:'useCard',
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
if(!player.getStat().skill.clanguangu) return false;
|
||||||
|
var history=player.getAllHistory('useSkill',evt=>{
|
||||||
|
return evt.skill=='clanguangu_backup';
|
||||||
|
}).map(evt=>evt.event);
|
||||||
|
if(!history.length) return false;
|
||||||
|
var num=0;
|
||||||
|
for(var i=history.length-1;i>=0;i--){
|
||||||
|
var evt=history[i];
|
||||||
|
if(evt.viewedCount){
|
||||||
|
num=evt.viewedCount;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(num&&lib.skill.dcweidang.getLength(event.card)==num) return true;
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
delete player.getStat().skill.clanguangu;
|
||||||
|
game.log(player,'重置了','#g【观骨】');
|
||||||
|
},
|
||||||
|
mod:{
|
||||||
|
aiOrder:function(player,card,num){
|
||||||
|
if(!player.hasSkill('clanguangu')||!player.getStat().skill.clanguangu) return;
|
||||||
|
var history=player.getAllHistory('useSkill',evt=>{
|
||||||
|
return evt.skill=='clanguangu_backup';
|
||||||
|
}).map(evt=>evt.event);
|
||||||
|
if(!history.length) return;
|
||||||
|
var numx=0;
|
||||||
|
for(var i=history.length-1;i>=0;i--){
|
||||||
|
var evt=history[i];
|
||||||
|
if(evt.viewedCount){
|
||||||
|
numx=evt.viewedCount;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(numx==lib.skill.dcweidang.getLength(card)){
|
||||||
|
if(!player.hasHistory('useCard',evt=>{
|
||||||
|
return numx==lib.skill.dcweidang.getLength(evt.card);
|
||||||
|
})){
|
||||||
|
return num+9;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
clanbaozu:{
|
||||||
|
audio:2,
|
||||||
|
audioname:['clan_zhongyan'],
|
||||||
|
trigger:{
|
||||||
|
gloabl:'dying',
|
||||||
|
},
|
||||||
|
clanSkill:true,
|
||||||
|
limited:true,
|
||||||
|
skillAnimation:true,
|
||||||
|
animationColor:'water',
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.player.hasClan('颍川钟氏')&&event.player.hp<=0&&!event.player.isLinked();
|
||||||
|
},
|
||||||
|
logTarget:'player',
|
||||||
|
check:function(event,player){
|
||||||
|
return get.recoverEffect(event.player,player,player)>10;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
trigger.player.link(true);
|
||||||
|
trigger.player.recover();
|
||||||
|
}
|
||||||
|
},
|
||||||
//族王凌
|
//族王凌
|
||||||
clanbolong:{
|
clanbolong:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -1548,6 +1800,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(player.storage.clanlianzhu) return '转换技。每名角色A的出牌阶段限一次。阴:A可以重铸一张牌,然后你可以重铸一张牌。若这两张牌颜色不同,则你的手牌上限-1;<span class="bluetext">阳:A可以令你选择一名在你或A攻击范围内的另一名其他角色B,然后A和你可依次选择是否对B使用一张【杀】。若这两张【杀】颜色相同,则你的手牌上限+1</span>。';
|
if(player.storage.clanlianzhu) return '转换技。每名角色A的出牌阶段限一次。阴:A可以重铸一张牌,然后你可以重铸一张牌。若这两张牌颜色不同,则你的手牌上限-1;<span class="bluetext">阳:A可以令你选择一名在你或A攻击范围内的另一名其他角色B,然后A和你可依次选择是否对B使用一张【杀】。若这两张【杀】颜色相同,则你的手牌上限+1</span>。';
|
||||||
return '转换技。每名角色A的出牌阶段限一次。<span class="bluetext">阴:A可以重铸一张牌,然后你可以重铸一张牌。若这两张牌颜色不同,则你的手牌上限-1</span>;阳:A可以令你选择一名在你或A攻击范围内的另一名其他角色B,然后A和你可依次选择是否对B使用一张【杀】。若这两张【杀】颜色相同,则你的手牌上限+1。';
|
return '转换技。每名角色A的出牌阶段限一次。<span class="bluetext">阴:A可以重铸一张牌,然后你可以重铸一张牌。若这两张牌颜色不同,则你的手牌上限-1</span>;阳:A可以令你选择一名在你或A攻击范围内的另一名其他角色B,然后A和你可依次选择是否对B使用一张【杀】。若这两张【杀】颜色相同,则你的手牌上限+1。';
|
||||||
},
|
},
|
||||||
|
clanguangu:function(player){
|
||||||
|
if(player.storage.clanguangu) return '转换技,出牌阶段限一次。阴:你可以观看牌堆顶的至多四张牌;<span class="bluetext">阳:你可以观看一名角色的至多四张手牌。</span>然后你可以使用其中的一张牌。';
|
||||||
|
return '转换技,出牌阶段限一次。<span class="bluetext">阴:你可以观看牌堆顶的至多四张牌;</span>阳:你可以观看一名角色的至多四张手牌。然后你可以使用其中的一张牌。';
|
||||||
|
},
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
clan_wuxian:'族吴苋',
|
clan_wuxian:'族吴苋',
|
||||||
|
@ -1607,11 +1863,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
clanbolong_info:'出牌阶段限一次。你可以令一名其他角色选择一项:1.你交给其一张牌,然后视为对其使用一张雷【杀】;2.交给你等同于你手牌数的牌,然后视为对你使用一张【酒】。',
|
clanbolong_info:'出牌阶段限一次。你可以令一名其他角色选择一项:1.你交给其一张牌,然后视为对其使用一张雷【杀】;2.交给你等同于你手牌数的牌,然后视为对你使用一张【酒】。',
|
||||||
clanzhongliu:'中流',
|
clanzhongliu:'中流',
|
||||||
clanzhongliu_info:'宗族技,锁定技。当你使用牌时,若此牌对应的实体牌不全为同族角色的手牌,你重置武将牌上的技能。',
|
clanzhongliu_info:'宗族技,锁定技。当你使用牌时,若此牌对应的实体牌不全为同族角色的手牌,你重置武将牌上的技能。',
|
||||||
|
clan_zhongyan:'族钟琰',
|
||||||
|
clanguangu:'观骨',
|
||||||
|
clanguangu_info:'转换技,出牌阶段限一次。阴:你可以观看牌堆顶的至多四张牌;阳:你可以观看一名角色的至多四张手牌。然后你可以使用其中的一张牌。',
|
||||||
|
clanxiaoyong:'啸咏',
|
||||||
|
clanxiaoyong_info:'锁定技。当你于回合内首次使用字数为X的牌时,你重置〖观骨〗(X为你上次发动〖观骨〗观看的牌数)。',
|
||||||
|
clanbaozu:'保族',
|
||||||
|
clanbaozu_info:'宗族技,限定技。当一名同族角色进入濒死状态时,你可以令其横置并回复1点体力。',
|
||||||
|
|
||||||
clan_wu:'陈留·吴氏',
|
clan_wu:'陈留·吴氏',
|
||||||
clan_xun:'颍川·荀氏',
|
clan_xun:'颍川·荀氏',
|
||||||
clan_han:'颍川·韩氏',
|
clan_han:'颍川·韩氏',
|
||||||
clan_wang:'太原·王氏',
|
clan_wang:'太原·王氏',
|
||||||
|
clan_zhong:'颍川·钟氏',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
|
@ -27,7 +27,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
character:{
|
character:{
|
||||||
re_zhangzhang:['male','wu',3,['rezhijian','guzheng']],
|
re_zhangzhang:['male','wu',3,['rezhijian','guzheng']],
|
||||||
qianzhao:['male','wei',4,['mbshihe','mbzhenfu'],['unseen']],
|
qianzhao:['male','wei',4,['mbshihe','mbzhenfu']],
|
||||||
old_wanglang:['male','wei',3,['gushe','jici']],
|
old_wanglang:['male','wei',3,['gushe','jici']],
|
||||||
re_yanwen:["male","qun",4,["reshuangxiong"]],
|
re_yanwen:["male","qun",4,["reshuangxiong"]],
|
||||||
xin_zhoutai:['male','wu',4,['buqu','new_fenji']],
|
xin_zhoutai:['male','wu',4,['buqu','new_fenji']],
|
||||||
|
@ -84,7 +84,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
qiaozhou:['male','shu',3,['zhiming','xingbu']],
|
qiaozhou:['male','shu',3,['zhiming','xingbu']],
|
||||||
db_wenyang:['male','wei',4,['dbquedi','dbzhuifeng','dbchongjian','dbchoujue'],['doublegroup:wei:wu']],
|
db_wenyang:['male','wei',4,['dbquedi','dbzhuifeng','dbchongjian','dbchoujue'],['doublegroup:wei:wu']],
|
||||||
xin_guyong:['male','wu',3,['xinshenxing','xinbingyi']],
|
xin_guyong:['male','wu',3,['xinshenxing','xinbingyi']],
|
||||||
re_zhonghui:['male','wei',4,['requanji','zili']],
|
re_zhonghui:['male','wei',4,['requanji','zili'],['clan:颍川钟氏']],
|
||||||
xin_caifuren:['female','qun',3,['xinqieting','xianzhou']],
|
xin_caifuren:['female','qun',3,['xinqieting','xianzhou']],
|
||||||
sp_yanghu:['male','qun',3,['mingfa','rongbei']],
|
sp_yanghu:['male','qun',3,['mingfa','rongbei']],
|
||||||
qiaogong:['male','wu',3,['yizhu','luanchou']],
|
qiaogong:['male','wu',3,['yizhu','luanchou']],
|
||||||
|
|
|
@ -67,7 +67,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
pe_wenqin:['male','wei',4,['gzjinfa']],
|
pe_wenqin:['male','wei',4,['gzjinfa']],
|
||||||
pe_sunchen:['male','wu',4,['zyshilu','zyxiongnve']],
|
pe_sunchen:['male','wu',4,['zyshilu','zyxiongnve']],
|
||||||
pe_mengda:['male','wei',4,['qiuan','liangfan']],
|
pe_mengda:['male','wei',4,['qiuan','liangfan']],
|
||||||
pe_zhonghui:['male','wei',4,['zyquanji','zypaiyi']],
|
pe_zhonghui:['male','wei',4,['zyquanji','zypaiyi'],['clan:颍川钟氏']],
|
||||||
pe_wangyun:['male','qun',3,['zylianji','zymoucheng'],['clan:太原王氏']],
|
pe_wangyun:['male','qun',3,['zylianji','zymoucheng'],['clan:太原王氏']],
|
||||||
shen_jiaxu:['male','shen',3,['weimu','zybishi','zyjianbing'],['qun']],
|
shen_jiaxu:['male','shen',3,['weimu','zybishi','zyjianbing'],['qun']],
|
||||||
yj_zhenji:['female','wei',3,['yjluoshen','qingguo']],
|
yj_zhenji:['female','wei',3,['yjluoshen','qingguo']],
|
||||||
|
|
|
@ -66,7 +66,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
xin_yujin:['male','wei',4,['jieyue']],
|
xin_yujin:['male','wei',4,['jieyue']],
|
||||||
//lusu:['male','wu',3,['haoshi','dimeng']],
|
//lusu:['male','wu',3,['haoshi','dimeng']],
|
||||||
//yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']],
|
//yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']],
|
||||||
old_zhonghui:['male','wei',3,['zzhenggong','zquanji','zbaijiang']],
|
old_zhonghui:['male','wei',3,['zzhenggong','zquanji','zbaijiang'],['clan:颍川钟氏']],
|
||||||
old_xusheng:['male','wu',4,['pojun']],
|
old_xusheng:['male','wu',4,['pojun']],
|
||||||
old_zhuran:['male','wu',4,['olddanshou']],
|
old_zhuran:['male','wu',4,['olddanshou']],
|
||||||
old_lingtong:['male','wu',4,['oldxuanfeng']],
|
old_lingtong:['male','wu',4,['oldxuanfeng']],
|
||||||
|
|
|
@ -582,6 +582,7 @@ window.noname_character_rank={
|
||||||
'dc_ruiji',
|
'dc_ruiji',
|
||||||
'yuantanyuanxiyuanshang',
|
'yuantanyuanxiyuanshang',
|
||||||
'yanghong',
|
'yanghong',
|
||||||
|
'dc_sunhanhua',
|
||||||
],
|
],
|
||||||
bp:[
|
bp:[
|
||||||
'chess_diaochan',
|
'chess_diaochan',
|
||||||
|
@ -926,6 +927,7 @@ window.noname_character_rank={
|
||||||
'ol_zhangzhang',
|
'ol_zhangzhang',
|
||||||
'ol_mengda',
|
'ol_mengda',
|
||||||
'dc_wuban',
|
'dc_wuban',
|
||||||
|
're_caochong',
|
||||||
],
|
],
|
||||||
b:[
|
b:[
|
||||||
'diy_feishi',
|
'diy_feishi',
|
||||||
|
@ -1216,6 +1218,9 @@ window.noname_character_rank={
|
||||||
'vtb_xiaotao',
|
'vtb_xiaotao',
|
||||||
'zhangchu',
|
'zhangchu',
|
||||||
'dc_duyu',
|
'dc_duyu',
|
||||||
|
'chentai',
|
||||||
|
'clan_zhongyan',
|
||||||
|
'sb_zhurong',
|
||||||
],
|
],
|
||||||
bm:[
|
bm:[
|
||||||
'diy_xizhenxihong',
|
'diy_xizhenxihong',
|
||||||
|
@ -1404,6 +1409,7 @@ window.noname_character_rank={
|
||||||
'yeshiwen',
|
'yeshiwen',
|
||||||
'qianzhao',
|
'qianzhao',
|
||||||
'vtb_xiaosha',
|
'vtb_xiaosha',
|
||||||
|
'huanfan',
|
||||||
],
|
],
|
||||||
c:[
|
c:[
|
||||||
'xiahoudun',
|
'xiahoudun',
|
||||||
|
@ -1465,6 +1471,7 @@ window.noname_character_rank={
|
||||||
'old_liubiao',
|
'old_liubiao',
|
||||||
'luoxian',
|
'luoxian',
|
||||||
'ol_huban',
|
'ol_huban',
|
||||||
|
'sb_menghuo',
|
||||||
],
|
],
|
||||||
d:[
|
d:[
|
||||||
'lvmeng',
|
'lvmeng',
|
||||||
|
@ -1505,6 +1512,7 @@ window.noname_character_rank={
|
||||||
'junk_lidian',
|
'junk_lidian',
|
||||||
'junk_duanwei',
|
'junk_duanwei',
|
||||||
'std_panfeng',
|
'std_panfeng',
|
||||||
|
'qianzhao',
|
||||||
],
|
],
|
||||||
rarity:{
|
rarity:{
|
||||||
legend:[
|
legend:[
|
||||||
|
|
|
@ -11,7 +11,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
refresh_shan:['ol_jiangwei','ol_caiwenji','ol_liushan','ol_zhangzhang','re_zuoci','re_sunce','ol_dengai','re_zhanghe'],
|
refresh_shan:['ol_jiangwei','ol_caiwenji','ol_liushan','ol_zhangzhang','re_zuoci','re_sunce','ol_dengai','re_zhanghe'],
|
||||||
refresh_yijiang1:['xin_wuguotai','xin_gaoshun','dc_caozhi','yujin_yujin','re_masu','xin_xusheng','re_fazheng','xin_lingtong','re_zhangchunhua','dc_xushu','re_chengong'],
|
refresh_yijiang1:['xin_wuguotai','xin_gaoshun','dc_caozhi','yujin_yujin','re_masu','xin_xusheng','re_fazheng','xin_lingtong','re_zhangchunhua','dc_xushu','re_chengong'],
|
||||||
refresh_yijiang2:['re_madai','re_wangyi','xin_handang','xin_zhonghui','re_liaohua','re_chengpu','re_caozhang','dc_bulianshi','xin_liubiao','re_xunyou','re_guanzhang'],
|
refresh_yijiang2:['re_madai','re_wangyi','xin_handang','xin_zhonghui','re_liaohua','re_chengpu','re_caozhang','dc_bulianshi','xin_liubiao','re_xunyou','re_guanzhang'],
|
||||||
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','xin_yufan','dc_liru','re_manchong','re_fuhuanghou','re_guanping','re_liufeng'],
|
refresh_yijiang3:['re_jianyong','re_guohuai','re_zhuran','re_panzhangmazhong','xin_yufan','dc_liru','re_manchong','re_fuhuanghou','re_guanping','re_liufeng','re_caochong'],
|
||||||
refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','dc_chenqun','re_caifuren','re_guyong','re_jushou','re_zhuhuan','re_zhangsong'],
|
refresh_yijiang4:['re_sunluban','re_wuyi','re_hanhaoshihuan','re_caozhen','re_zhoucang','dc_chenqun','re_caifuren','re_guyong','re_jushou','re_zhuhuan','re_zhangsong'],
|
||||||
refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji','re_xiahoushi','re_liuchen','re_zhuzhi'],
|
refresh_yijiang5:['re_zhangyi','re_quancong','re_caoxiu','re_sunxiu','re_gongsunyuan','re_guotufengji','re_xiahoushi','re_liuchen','re_zhuzhi'],
|
||||||
refresh_yijiang6:['re_guohuanghou','re_sundeng'],
|
refresh_yijiang6:['re_guohuanghou','re_sundeng'],
|
||||||
|
@ -20,6 +20,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
connect:true,
|
connect:true,
|
||||||
character:{
|
character:{
|
||||||
|
re_caochong:['male','wei',3,['rechengxiang','renxin']],
|
||||||
ol_zhangzhang:['male','wu',3,['olzhijian','olguzheng']],
|
ol_zhangzhang:['male','wu',3,['olzhijian','olguzheng']],
|
||||||
re_jsp_huangyueying:['female','qun',3,['rejiqiao','relinglong']],
|
re_jsp_huangyueying:['female','qun',3,['rejiqiao','relinglong']],
|
||||||
re_zhangsong:['male','shu',3,['qiangzhi','rexiantu']],
|
re_zhangsong:['male','shu',3,['qiangzhi','rexiantu']],
|
||||||
|
@ -52,7 +53,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
ol_lusu:['male','wu',3,['olhaoshi','oldimeng']],
|
ol_lusu:['male','wu',3,['olhaoshi','oldimeng']],
|
||||||
re_jiaxu:['male','qun',3,['rewansha','reluanwu','reweimu']],
|
re_jiaxu:['male','qun',3,['rewansha','reluanwu','reweimu']],
|
||||||
re_guyong:['male','wu',3,['reshenxing','rebingyi']],
|
re_guyong:['male','wu',3,['reshenxing','rebingyi']],
|
||||||
xin_zhonghui:['male','wei',4,['xinquanji','xinzili']],
|
xin_zhonghui:['male','wei',4,['xinquanji','xinzili'],['clan:颍川钟氏']],
|
||||||
re_caifuren:['female','qun',3,['reqieting','rexianzhou']],
|
re_caifuren:['female','qun',3,['reqieting','rexianzhou']],
|
||||||
re_guanping:['male','shu',4,['relongyin','jiezhong']],
|
re_guanping:['male','shu',4,['relongyin','jiezhong']],
|
||||||
re_guotufengji:['male','qun',3,['rejigong','shifei']],
|
re_guotufengji:['male','qun',3,['rejigong','shifei']],
|
||||||
|
@ -161,6 +162,35 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
re_guohuai:['xiahouyuan','zhanghe'],
|
re_guohuai:['xiahouyuan','zhanghe'],
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
//不想突破可以不突破的界曹冲
|
||||||
|
rechengxiang:{
|
||||||
|
audio:2,
|
||||||
|
group:'rechengxiang_gain',
|
||||||
|
trigger:{
|
||||||
|
player:'rechengxiang_gainEnd',
|
||||||
|
},
|
||||||
|
direct:true,
|
||||||
|
subfrequent:['gain'],
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.cards2&&event.cards2.map(card=>{
|
||||||
|
return get.number(card);
|
||||||
|
}).reduce((sum,num)=>{
|
||||||
|
return sum+=num;
|
||||||
|
},0)==13;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.link(false);
|
||||||
|
'step 1'
|
||||||
|
player.turnOver(false);
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
gain:{
|
||||||
|
inherit:'chengxiang',
|
||||||
|
audio:'rechengxiang',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
//OL界二张
|
//OL界二张
|
||||||
olzhijian:{
|
olzhijian:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -14655,6 +14685,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
olzhijian_info:'出牌阶段,你可以将一张装备牌置于其他角色的装备区(可替换原装备),然后摸一张牌。',
|
olzhijian_info:'出牌阶段,你可以将一张装备牌置于其他角色的装备区(可替换原装备),然后摸一张牌。',
|
||||||
olguzheng:'固政',
|
olguzheng:'固政',
|
||||||
olguzheng_info:'每阶段限一次。当其他角色的至少两张牌因弃置而进入弃牌堆后,你可以令其获得其中一张牌,然后你可以获得剩余的牌。',
|
olguzheng_info:'每阶段限一次。当其他角色的至少两张牌因弃置而进入弃牌堆后,你可以令其获得其中一张牌,然后你可以获得剩余的牌。',
|
||||||
|
re_caochong:'界曹冲',
|
||||||
|
rechengxiang:'称象',
|
||||||
|
rechengxiang_info:'当你受到伤害后,你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于13的牌。若你获得的牌点数之和为13,你复原武将牌。',
|
||||||
|
|
||||||
refresh_standard:'界限突破·标',
|
refresh_standard:'界限突破·标',
|
||||||
refresh_feng:'界限突破·风',
|
refresh_feng:'界限突破·风',
|
||||||
|
|
158
character/sb.js
|
@ -35,7 +35,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sb_sunce:['male','wu',4,['sbjiang','sbhunzi','sbzhiba'],['zhu']],
|
sb_sunce:['male','wu',4,['sbjiang','sbhunzi','sbzhiba'],['zhu']],
|
||||||
sb_daqiao:['female','wu',3,['sbguose','sbliuli']],
|
sb_daqiao:['female','wu',3,['sbguose','sbliuli']],
|
||||||
sb_liubiao:['male','qun',3,['sbzishou','sbzongshi']],
|
sb_liubiao:['male','qun',3,['sbzishou','sbzongshi']],
|
||||||
sb_zhurong:['female','shu',4,['sblieren','sbjuxiang'],['unseen']],
|
sb_zhurong:['female','shu',4,['sblieren','sbjuxiang']],
|
||||||
|
sb_menghuo:['male','shu',4,['sbhuoshou','sbzaiqi']],
|
||||||
},
|
},
|
||||||
characterSort:{
|
characterSort:{
|
||||||
sb:{
|
sb:{
|
||||||
|
@ -43,10 +44,158 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sb_shi:['sb_xuhuang','sb_machao','sb_fazheng','sb_chengong','sb_diaochan','sb_pangtong'],
|
sb_shi:['sb_xuhuang','sb_machao','sb_fazheng','sb_chengong','sb_diaochan','sb_pangtong'],
|
||||||
sb_tong:['liucheng','sp_yangwan','sb_xiahoushi','sb_zhangfei','sb_zhaoyun','sb_sunce','sb_zhurong'],
|
sb_tong:['liucheng','sp_yangwan','sb_xiahoushi','sb_zhangfei','sb_zhaoyun','sb_sunce','sb_zhurong'],
|
||||||
sb_yu:['sb_yujin','sb_lvmeng','sb_huangzhong','sb_huanggai','sb_zhouyu','sb_caoren','sb_ganning'],
|
sb_yu:['sb_yujin','sb_lvmeng','sb_huangzhong','sb_huanggai','sb_zhouyu','sb_caoren','sb_ganning'],
|
||||||
sb_neng:['sb_huaxiong','sb_sunshangxiang','sb_jiangwei','sb_yuanshao'],
|
sb_neng:['sb_huaxiong','sb_sunshangxiang','sb_jiangwei','sb_yuanshao','sb_menghuo'],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
//萌货
|
||||||
|
sbhuoshou:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{
|
||||||
|
player:'phaseUseBegin',
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
onremove:true,
|
||||||
|
group:['sbhuoshou_cancel','sbhuoshou_source','sbhuoshou_nanmaned'],
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
var card=get.discardPile(card=>{
|
||||||
|
return card.name=='nanman';
|
||||||
|
});
|
||||||
|
if(card){
|
||||||
|
player.gain(card,'gain2');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
game.log('但是弃牌堆里并没有','#y南蛮入侵','!');
|
||||||
|
player.addMark('sbhuoshou',1,false);
|
||||||
|
if(player.countMark('sbhuoshou')>=5&&Math.random()<0.25) player.chat('我南蛮呢');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
cancel:{
|
||||||
|
audio:'sbhuoshou',
|
||||||
|
trigger:{target:'useCardToBefore'},
|
||||||
|
forced:true,
|
||||||
|
priority:15,
|
||||||
|
filter:function(event,player){
|
||||||
|
return (event.card.name=='nanman');
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
trigger.cancel();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
source:{
|
||||||
|
audio:'sbhuoshou',
|
||||||
|
trigger:{global:'useCardToPlayered'},
|
||||||
|
forced:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.isFirstTarget&&event.card&&event.card.name=='nanman'&&event.player!=player;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
trigger.getParent().customArgs.default.customSource=player;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
nanmaned:{
|
||||||
|
trigger:{
|
||||||
|
player:'useCard1',
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.card.name=='nanman';
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
popup:false,
|
||||||
|
charlotte:true,
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.addTempSkill('sbhuoshou_ban','phaseUseAfter');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ban:{
|
||||||
|
charlotte:true,
|
||||||
|
intro:{
|
||||||
|
content:'此阶段不能再使用【南蛮入侵】',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mod:{
|
||||||
|
cardEnabled:function(card,player){
|
||||||
|
if(player.hasSkill('sbhuoshou_ban')&&card.name=='nanman') return false;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
threaten:1.9,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sbzaiqi:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{
|
||||||
|
player:'phaseDiscardEnd',
|
||||||
|
},
|
||||||
|
chargeSkill:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.hasMark('charge');
|
||||||
|
},
|
||||||
|
group:'sbzaiqi_backflow',
|
||||||
|
direct:true,
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.chooseTarget(get.prompt('sbzaiqi'),'选择任意名角色并消耗等量蓄力值,令这些角色选择一项:1.令你摸一张牌;2.弃置一张牌,然后你回复1点体力',[1,player.countMark('charge')]).set('ai',function(target){
|
||||||
|
var player=_status.event.player;
|
||||||
|
return get.attitude(player,target)+player.getDamagedHp()*3.5;
|
||||||
|
});
|
||||||
|
'step 1'
|
||||||
|
if(result.bool){
|
||||||
|
var targets=result.targets;
|
||||||
|
targets.sortBySeat();
|
||||||
|
event.targets=targets;
|
||||||
|
player.logSkill('sbzaiqi',targets);
|
||||||
|
player.removeMark('charge',targets.length);
|
||||||
|
}
|
||||||
|
else event.finish();
|
||||||
|
'step 2'
|
||||||
|
var target=targets.shift();
|
||||||
|
event.target=target;
|
||||||
|
if(!target.countCards('he')) event._result={bool:false};
|
||||||
|
else target.chooseToDiscard(get.translation(player)+'对你发动了【再起】','是否弃置一张牌令其回复1点体力?或者点击“取消”,令该角色摸一张牌。','he').set('ai',card=>{
|
||||||
|
var eff=_status.event.eff,att=_status.event.att;
|
||||||
|
if(eff>0&&att>0||eff<=0&&att<0) return 5.5-get.value(card);
|
||||||
|
return 0;
|
||||||
|
}).set('eff',get.recoverEffect(player,player,target)).set('att',get.attitude(target,player));
|
||||||
|
'step 3'
|
||||||
|
target.line(player);
|
||||||
|
if(result.bool){
|
||||||
|
player.recover();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player.draw();
|
||||||
|
}
|
||||||
|
game.delayex();
|
||||||
|
if(targets.length) event.goto(2);
|
||||||
|
},
|
||||||
|
subSkill:{
|
||||||
|
backflow:{
|
||||||
|
audio:'sbzaiqi',
|
||||||
|
trigger:{
|
||||||
|
player:'enterGame',
|
||||||
|
source:'damageSource',
|
||||||
|
global:'phaseBefore',
|
||||||
|
},
|
||||||
|
usable:1,
|
||||||
|
forced:true,
|
||||||
|
locked:false,
|
||||||
|
filter:function(event,player){
|
||||||
|
if(event.name=='damage') return true;
|
||||||
|
return (event.name!='phase'||game.phaseNumber==0);
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.addMark('charge',1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
//祝融
|
//祝融
|
||||||
sblieren:{
|
sblieren:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -4491,6 +4640,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sblieren_info:'当你使用【杀】指定唯一目标后,你可以摸一张牌并与其拼点。若你赢,此【杀】结算结束后,你可以对另一名其他角色造成1点伤害。',
|
sblieren_info:'当你使用【杀】指定唯一目标后,你可以摸一张牌并与其拼点。若你赢,此【杀】结算结束后,你可以对另一名其他角色造成1点伤害。',
|
||||||
sbjuxiang:'巨象',
|
sbjuxiang:'巨象',
|
||||||
sbjuxiang_info:'锁定技。①【南蛮入侵】对你无效。②当其他角色使用【南蛮入侵】结算结束后,你获得此牌对应的所有实体牌。③结束阶段,若你未于本回合使用过【南蛮入侵】,你可以将一张游戏外的随机【南蛮入侵】(共八张)交给一名角色。',
|
sbjuxiang_info:'锁定技。①【南蛮入侵】对你无效。②当其他角色使用【南蛮入侵】结算结束后,你获得此牌对应的所有实体牌。③结束阶段,若你未于本回合使用过【南蛮入侵】,你可以将一张游戏外的随机【南蛮入侵】(共八张)交给一名角色。',
|
||||||
|
sb_menghuo:'谋孟获',
|
||||||
|
sbhuoshou:'祸首',
|
||||||
|
sbhuoshou_info:'锁定技。①【南蛮入侵】对你无效。②当其他角色使用【南蛮入侵】指定第一个目标后,你代替其成为此牌的伤害来源。③出牌阶段开始时,你随机获得弃牌堆中的一张【南蛮入侵】。④出牌阶段,若你于此阶段使用过【南蛮入侵】,你不能使用【南蛮入侵】。',
|
||||||
|
sbzaiqi:'再起',
|
||||||
|
sbzaiqi_info:'蓄力技(1/7)。①弃牌阶段结束时,你可以消耗任意点蓄力值并选择等量名角色,然后令这些角色选择一项:1.令你摸一张牌;2.弃置一张牌,然后你回复1点体力。②每回合限一次。当你造成伤害后,你获得1点蓄力值。',
|
||||||
|
|
||||||
sb_zhi:'谋攻篇·知',
|
sb_zhi:'谋攻篇·知',
|
||||||
sb_shi:'谋攻篇·识',
|
sb_shi:'谋攻篇·识',
|
||||||
|
|
|
@ -18,9 +18,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
zhangjinyun:['female','shu',3,['dchuizhi','dcjijiao']],
|
zhangjinyun:['female','shu',3,['dchuizhi','dcjijiao']],
|
||||||
dc_mengda:['male','wei',4,['dclibang','dcwujie']],
|
dc_mengda:['male','wei',4,['dclibang','dcwujie']],
|
||||||
dc_zhangmancheng:['male','qun',4,['dclvecheng','dczhongji'],['unseen']],
|
dc_zhangmancheng:['male','qun',4,['dclvecheng','dczhongji'],['unseen']],
|
||||||
huanfan:['male','wei',3,['dcjianzheng','dcfumou'],['unseen']],
|
huanfan:['male','wei',3,['dcjianzheng','dcfumou']],
|
||||||
mengyou:['male','qun',5,['hmmanyi','dcmanzhi'],['unseen']],
|
mengyou:['male','qun',5,['hmmanyi','dcmanzhi'],['unseen']],
|
||||||
chentai:['male','wei',4,['dcjiuxian','dcchenyong'],['unseen']],
|
chentai:['male','wei',4,['dcctjiuxian','dcchenyong']],
|
||||||
dc_sunchen:['male','wu',4,['dczigu','dczuowei'],['unseen']],
|
dc_sunchen:['male','wu',4,['dczigu','dczuowei'],['unseen']],
|
||||||
sunyu:['male','wu',3,['dcquanshou','dcshexue'],['unseen']],
|
sunyu:['male','wu',3,['dcquanshou','dcshexue'],['unseen']],
|
||||||
xizheng:['male','shu',3,['dcdanyi','dcwencan'],['unseen']],
|
xizheng:['male','shu',3,['dcdanyi','dcwencan'],['unseen']],
|
||||||
|
@ -41,7 +41,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
dc_yangbiao:['male','qun',3,['dczhaohan','dcjinjie','dcjue']],
|
dc_yangbiao:['male','qun',3,['dczhaohan','dcjinjie','dcjue']],
|
||||||
dc_huojun:['male','shu',4,['dcgue','dcsigong']],
|
dc_huojun:['male','shu',4,['dcgue','dcsigong']],
|
||||||
guānning:['male','shu',3,['dcxiuwen','dclongsong']],
|
guānning:['male','shu',3,['dcxiuwen','dclongsong']],
|
||||||
dc_sunhanhua:['female','wu',3,['dchuiling','dcchongxu'],['unseen']],
|
dc_sunhanhua:['female','wu',3,['dchuiling','dcchongxu']],
|
||||||
dc_sunziliufang:['male','wei',3,['dcqinshen','dcweidang']],
|
dc_sunziliufang:['male','wei',3,['dcqinshen','dcweidang']],
|
||||||
dc_tengfanglan:['female','wu',3,['dcluochong','dcaichen']],
|
dc_tengfanglan:['female','wu',3,['dcluochong','dcaichen']],
|
||||||
yuantanyuanxiyuanshang:['male','qun',4,['dcneifa']],
|
yuantanyuanxiyuanshang:['male','qun',4,['dcneifa']],
|
||||||
|
@ -2333,7 +2333,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//陈泰
|
//陈泰
|
||||||
dcjiuxian:{
|
dcctjiuxian:{
|
||||||
audio:2,
|
audio:2,
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
usable:1,
|
usable:1,
|
||||||
|
@ -2359,18 +2359,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
'step 0'
|
'step 0'
|
||||||
player.draw(cards.length);
|
player.draw(cards.length);
|
||||||
'step 1'
|
'step 1'
|
||||||
player.addTempSkill('dcjiuxian_help');
|
player.addTempSkill('dcctjiuxian_help');
|
||||||
player.chooseUseTarget({
|
player.chooseUseTarget({
|
||||||
name:'juedou',
|
name:'juedou',
|
||||||
isCard:true,
|
isCard:true,
|
||||||
storage:{dcjiuxian:true}
|
storage:{dcctjiuxian:true}
|
||||||
},true);
|
},true);
|
||||||
},
|
},
|
||||||
subSkill:{
|
subSkill:{
|
||||||
help:{
|
help:{
|
||||||
trigger:{global:'damageSource'},
|
trigger:{global:'damageSource'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return event.card&&event.card.storage&&event.card.storage.dcjiuxian&&event.player.isIn()&&
|
return event.card&&event.card.storage&&event.card.storage.dcctjiuxian&&event.player.isIn()&&
|
||||||
event.getParent(2).targets.contains(event.player)&&game.hasPlayer(current=>{
|
event.getParent(2).targets.contains(event.player)&&game.hasPlayer(current=>{
|
||||||
return current!=player&&event.player.inRange(current)&¤t.isDamaged();
|
return current!=player&&event.player.inRange(current)&¤t.isDamaged();
|
||||||
});
|
});
|
||||||
|
@ -2387,7 +2387,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
'step 1'
|
'step 1'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
var target=result.targets[0];
|
var target=result.targets[0];
|
||||||
player.logSkill('dcjiuxian_help',target);
|
player.logSkill('dcctjiuxian_help',target);
|
||||||
target.recover(player);
|
target.recover(player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4196,7 +4196,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
var card={name:name,isCard:true};
|
var card={name:name,isCard:true};
|
||||||
if(event.filterCard(card,player,event)) vcards.push(['基本','',name]);
|
if(event.filterCard(card,player,event)) vcards.push(['基本','',name]);
|
||||||
}
|
}
|
||||||
return ui.create.dialog('胆迎',[vcards,'vcard'],'hidden');
|
var dialog=ui.create.dialog('胆迎',[vcards,'vcard'],'hidden');
|
||||||
|
dialog.direct=true;
|
||||||
|
return dialog;
|
||||||
},
|
},
|
||||||
backup:function(links,player){
|
backup:function(links,player){
|
||||||
return {
|
return {
|
||||||
|
@ -31225,8 +31227,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
dcmanzhi:'蛮智',
|
dcmanzhi:'蛮智',
|
||||||
dcmanzhi_info:'①准备阶段,你可以选择一名其他角色并选择一项:1.令其交给你两张牌,然后其视为使用一张无距离限制的【杀】;2.获得其区域内至多两张牌,然后交给其等量的牌并摸一张牌。②结束阶段,若你的体力值与本回合准备阶段时的体力值相等,你可以执行你未于本回合执行过的〖蛮智①〗的分支。',
|
dcmanzhi_info:'①准备阶段,你可以选择一名其他角色并选择一项:1.令其交给你两张牌,然后其视为使用一张无距离限制的【杀】;2.获得其区域内至多两张牌,然后交给其等量的牌并摸一张牌。②结束阶段,若你的体力值与本回合准备阶段时的体力值相等,你可以执行你未于本回合执行过的〖蛮智①〗的分支。',
|
||||||
chentai:'陈泰',
|
chentai:'陈泰',
|
||||||
dcjiuxian:'救陷',
|
dcctjiuxian:'救陷',
|
||||||
dcjiuxian_info:'出牌阶段限一次。你可以重铸一半数量的手牌(向上取整),然后视为使用一张【决斗】。当此牌对目标角色造成伤害后,你可以令其攻击范围内的一名其他角色回复1点体力。',
|
dcctjiuxian_info:'出牌阶段限一次。你可以重铸一半数量的手牌(向上取整),然后视为使用一张【决斗】。当此牌对目标角色造成伤害后,你可以令其攻击范围内的一名其他角色回复1点体力。',
|
||||||
dcchenyong:'沉勇',
|
dcchenyong:'沉勇',
|
||||||
dcchenyong_info:'结束阶段,你可以摸X张牌(X为本回合你使用过的牌的类型数)。',
|
dcchenyong_info:'结束阶段,你可以摸X张牌(X为本回合你使用过的牌的类型数)。',
|
||||||
dc_sunchen:'孙綝',
|
dc_sunchen:'孙綝',
|
||||||
|
|
|
@ -7577,7 +7577,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(event.filterCard({name:'shan'},player,event)){
|
if(event.filterCard({name:'shan'},player,event)){
|
||||||
list.push(['基本','','shan']);
|
list.push(['基本','','shan']);
|
||||||
}
|
}
|
||||||
return ui.create.dialog('朝凤',[list,'vcard'],'hidden');
|
var dialog=ui.create.dialog('朝凤',[list,'vcard'],'hidden');
|
||||||
|
dialog.direct=true;
|
||||||
|
return dialog;
|
||||||
},
|
},
|
||||||
check:function(button){
|
check:function(button){
|
||||||
var player=_status.event.player;
|
var player=_status.event.player;
|
||||||
|
|
|
@ -46,7 +46,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
bulianshi:['female','wu',3,['old_anxu','zhuiyi']],
|
bulianshi:['female','wu',3,['old_anxu','zhuiyi']],
|
||||||
handang:['male','wu',4,['gongji','jiefan']],
|
handang:['male','wu',4,['gongji','jiefan']],
|
||||||
fuhuanghou:['female','qun',3,['qiuyuan','zhuikong']],
|
fuhuanghou:['female','qun',3,['qiuyuan','zhuikong']],
|
||||||
zhonghui:['male','wei',4,['quanji','zili']],
|
zhonghui:['male','wei',4,['quanji','zili'],['clan:颍川钟氏']],
|
||||||
jianyong:['male','shu',3,['qiaoshui','jyzongshi']],
|
jianyong:['male','shu',3,['qiaoshui','jyzongshi']],
|
||||||
old_madai:['male','shu',4,['mashu','qianxi']],
|
old_madai:['male','shu',4,['mashu','qianxi']],
|
||||||
liufeng:['male','shu',4,['xiansi']],
|
liufeng:['male','shu',4,['xiansi']],
|
||||||
|
@ -72,7 +72,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
|
|
||||||
caorui:['male','wei',3,['huituo','mingjian','xingshuai'],['zhu']],
|
caorui:['male','wei',3,['huituo','mingjian','xingshuai'],['zhu']],
|
||||||
caoxiu:['male','wei',4,['qianju','qingxi']],
|
caoxiu:['male','wei',4,['qianju','qingxi']],
|
||||||
zhongyao:['male','wei',3,['huomo','zuoding']],
|
zhongyao:['male','wei',3,['huomo','zuoding'],['clan:颍川钟氏']],
|
||||||
liuchen:['male','shu',4,['zhanjue','qinwang'],['zhu']],
|
liuchen:['male','shu',4,['zhanjue','qinwang'],['zhu']],
|
||||||
zhangyi:['male','shu',4,['wurong','shizhi']],
|
zhangyi:['male','shu',4,['wurong','shizhi']],
|
||||||
sunxiu:['male','wu',3,['yanzhu','xingxue','xinzhaofu'],['zhu']],
|
sunxiu:['male','wu',3,['yanzhu','xingxue','xinzhaofu'],['zhu']],
|
||||||
|
@ -12835,7 +12835,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
var dialog=ui.create.dialog(str,cards);
|
var dialog=ui.create.dialog(str,cards);
|
||||||
dialog.videoId=id;
|
dialog.videoId=id;
|
||||||
},player,event.videoId,event.cards,event.name=='chengxiang'?13:12);
|
},player,event.videoId,event.cards,event.name=='oldchengxiang'?12:13);
|
||||||
event.time=get.utc();
|
event.time=get.utc();
|
||||||
game.addVideo('showCards',player,['称象',get.cardsInfo(event.cards)]);
|
game.addVideo('showCards',player,['称象',get.cardsInfo(event.cards)]);
|
||||||
game.addVideo('delay',null,2);
|
game.addVideo('delay',null,2);
|
||||||
|
@ -12849,7 +12849,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
return (num+get.number(button.link)<=_status.event.maxNum);
|
return (num+get.number(button.link)<=_status.event.maxNum);
|
||||||
});
|
});
|
||||||
next.set('maxNum',event.name=='chengxiang'?13:12);
|
next.set('maxNum',event.name=='oldchengxiang'?12:13);
|
||||||
next.set('ai',function(button){
|
next.set('ai',function(button){
|
||||||
return get.value(button.link,_status.event.player);
|
return get.value(button.link,_status.event.player);
|
||||||
});
|
});
|
||||||
|
@ -12915,6 +12915,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
renxin:{
|
renxin:{
|
||||||
trigger:{global:'damageBegin4'},
|
trigger:{global:'damageBegin4'},
|
||||||
audio:2,
|
audio:2,
|
||||||
|
audioname:['re_caochong'],
|
||||||
//priority:6,
|
//priority:6,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return event.player!=player&&event.player.hp==1&&player.countCards('he',{type:'equip'})>0;
|
return event.player!=player&&event.player.hp==1&&player.countCards('he',{type:'equip'})>0;
|
||||||
|
@ -13543,7 +13544,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
chengpu:['re_chengpu','tw_chengpu','ns_chengpu','chengpu','xin_chengpu'],
|
chengpu:['re_chengpu','tw_chengpu','ns_chengpu','chengpu','xin_chengpu'],
|
||||||
liubiao:['re_liubiao','xin_liubiao','liubiao','oldre_liubiao','old_liubiao'],
|
liubiao:['re_liubiao','xin_liubiao','liubiao','oldre_liubiao','old_liubiao'],
|
||||||
manchong:['re_manchong','manchong'],
|
manchong:['re_manchong','manchong'],
|
||||||
caochong:['caochong','old_caochong'],
|
caochong:['re_caochong','caochong','old_caochong'],
|
||||||
guohuai:['guohuai','tw_guohuai','re_guohuai','xin_guohuai','ol_guohuai'],
|
guohuai:['guohuai','tw_guohuai','re_guohuai','xin_guohuai','ol_guohuai'],
|
||||||
jianyong:['re_jianyong','xin_jianyong','jianyong'],
|
jianyong:['re_jianyong','xin_jianyong','jianyong'],
|
||||||
panzhangmazhong:['xin_panzhangmazhong','re_panzhangmazhong','panzhangmazhong'],
|
panzhangmazhong:['xin_panzhangmazhong','re_panzhangmazhong','panzhangmazhong'],
|
||||||
|
@ -14103,8 +14104,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
zhiyan_info:'结束阶段,你可以令一名角色摸一张牌并展示之,若为装备牌,其使用此牌并回复一点体力。',
|
zhiyan_info:'结束阶段,你可以令一名角色摸一张牌并展示之,若为装备牌,其使用此牌并回复一点体力。',
|
||||||
miji_info:'结束阶段,若你已受伤,则可以摸X张牌,然后可以将等量的牌交给一名其他角色(X为你已损失的体力值)。',
|
miji_info:'结束阶段,若你已受伤,则可以摸X张牌,然后可以将等量的牌交给一名其他角色(X为你已损失的体力值)。',
|
||||||
zhenlie_info:'当你成为其他角色使用【杀】或普通锦囊牌的目标后,你可以失去一点体力并令此牌对你无效,然后弃置对方一张牌。',
|
zhenlie_info:'当你成为其他角色使用【杀】或普通锦囊牌的目标后,你可以失去一点体力并令此牌对你无效,然后弃置对方一张牌。',
|
||||||
chengxiang_info:'当你受到伤害后,你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于13的牌',
|
chengxiang_info:'当你受到伤害后,你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于13的牌。',
|
||||||
oldchengxiang_info:'当你受到伤害后,你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于12的牌',
|
oldchengxiang_info:'当你受到伤害后,你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于12的牌。',
|
||||||
renxin_info:'当体力值为1的一名其他角色受到伤害时,你可以将武将牌翻面并弃置一张装备牌,然后防止此伤害。',
|
renxin_info:'当体力值为1的一名其他角色受到伤害时,你可以将武将牌翻面并弃置一张装备牌,然后防止此伤害。',
|
||||||
oldrenxin_info:'其他角色进入濒死状态时,你可以将所有手牌交给该角色并翻面,然后该角色回复1点体力。',
|
oldrenxin_info:'其他角色进入濒死状态时,你可以将所有手牌交给该角色并翻面,然后该角色回复1点体力。',
|
||||||
jingce_info:'出牌阶段结束时,若你本回合使用的牌数量大于或等于你的当前体力值,你可以摸两张牌。',
|
jingce_info:'出牌阶段结束时,若你本回合使用的牌数量大于或等于你的当前体力值,你可以摸两张牌。',
|
||||||
|
|
|
@ -11,7 +11,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
yangzhi:['female','jin',3,['xinwanyi','maihuo']],
|
yangzhi:['female','jin',3,['xinwanyi','maihuo']],
|
||||||
yangyan:['female','jin',3,['xinxuanbei','xianwan']],
|
yangyan:['female','jin',3,['xinxuanbei','xianwan']],
|
||||||
ol_huaxin:['male','wei',3,['caozhao','olxibing']],
|
ol_huaxin:['male','wei',3,['caozhao','olxibing']],
|
||||||
zhongyan:['female','jin',3,['bolan','yifa']],
|
zhongyan:['female','jin',3,['bolan','yifa'],['clan:颍川钟氏']],
|
||||||
weiguan:['male','jin',3,['zhongyun','shenpin']],
|
weiguan:['male','jin',3,['zhongyun','shenpin']],
|
||||||
cheliji:['male','qun',4,['chexuan','qiangshou']],
|
cheliji:['male','qun',4,['chexuan','qiangshou']],
|
||||||
simazhou:['male','jin',4,['recaiwang','naxiang']],
|
simazhou:['male','jin',4,['recaiwang','naxiang']],
|
||||||
|
|
96
game/game.js
|
@ -12940,19 +12940,48 @@
|
||||||
if(event.dialog&&typeof event.dialog=='object') event.dialog.close();
|
if(event.dialog&&typeof event.dialog=='object') event.dialog.close();
|
||||||
var dialog=info.chooseButton.dialog(event,player);
|
var dialog=info.chooseButton.dialog(event,player);
|
||||||
if(info.chooseButton.chooseControl){
|
if(info.chooseButton.chooseControl){
|
||||||
var next=player.chooseControl(info.chooseButton.chooseControl(event,player));
|
var choices=info.chooseButton.chooseControl(event,player);
|
||||||
next.dialog=dialog;
|
var choicesx=choices.slice(0);
|
||||||
next.set('ai',info.chooseButton.check||function(){return 0;});
|
choicesx.remove('cancel2');
|
||||||
if(event.id) next._parent_id=event.id;
|
if(choicesx.length==1&&dialog.direct||dialog.forceDirect){
|
||||||
next.type='chooseToUse_button';
|
event._result={
|
||||||
|
bool:true,
|
||||||
|
control:choicesx[0],
|
||||||
|
index:0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
var next=player.chooseControl(choices);
|
||||||
|
next.dialog=dialog;
|
||||||
|
next.set('ai',info.chooseButton.check||function(){return 0;});
|
||||||
|
if(event.id) next._parent_id=event.id;
|
||||||
|
next.type='chooseToUse_button';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
var next=player.chooseButton(dialog);
|
var ai=info.chooseButton.check||function(){return 1;};
|
||||||
next.set('ai',info.chooseButton.check||function(){return 1;});
|
var filterButton=info.chooseButton.filter||function(){return true};
|
||||||
next.set('filterButton',info.chooseButton.filter||function(){return true;});
|
var selectButton=info.chooseButton.select||1;
|
||||||
next.set('selectButton',info.chooseButton.select||1);
|
var chooseable=[];
|
||||||
if(event.id) next._parent_id=event.id;
|
for(var i=0;i<dialog.buttons.length;i++){
|
||||||
next.type='chooseToUse_button';
|
var btn=dialog.buttons[i];
|
||||||
|
if(filterButton(btn)) chooseable.push(btn);
|
||||||
|
}
|
||||||
|
if(chooseable.length==1&&dialog.direct||dialog.forceDirect){
|
||||||
|
event._result={
|
||||||
|
bool:true,
|
||||||
|
buttons:chooseable[0],
|
||||||
|
links:[chooseable[0].link],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
var next=player.chooseButton(dialog);
|
||||||
|
next.set('ai',ai);
|
||||||
|
next.set('filterButton',filterButton);
|
||||||
|
next.set('selectButton',selectButton);
|
||||||
|
if(event.id) next._parent_id=event.id;
|
||||||
|
next.type='chooseToUse_button';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
event.buttoned=event.result.skill;
|
event.buttoned=event.result.skill;
|
||||||
}
|
}
|
||||||
|
@ -13121,15 +13150,44 @@
|
||||||
if(event.dialog&&typeof event.dialog=='object') event.dialog.close();
|
if(event.dialog&&typeof event.dialog=='object') event.dialog.close();
|
||||||
var dialog=info.chooseButton.dialog(event,player);
|
var dialog=info.chooseButton.dialog(event,player);
|
||||||
if(info.chooseButton.chooseControl){
|
if(info.chooseButton.chooseControl){
|
||||||
var next=player.chooseControl(info.chooseButton.chooseControl(event,player));
|
var choices=info.chooseButton.chooseControl(event,player);
|
||||||
next.dialog=dialog;
|
var choicesx=choices.slice(0);
|
||||||
next.set('ai',info.chooseButton.check||function(){return 0;});
|
choicesx.remove('cancel2');
|
||||||
|
if(choicesx.length==1&&dialog.direct||dialog.forceDirect){
|
||||||
|
event._result={
|
||||||
|
bool:true,
|
||||||
|
control:choicesx[0],
|
||||||
|
index:0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
var next=player.chooseControl(choices);
|
||||||
|
next.dialog=dialog;
|
||||||
|
next.set('ai',info.chooseButton.check||function(){return 0;});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
var next=player.chooseButton(dialog);
|
var ai=info.chooseButton.check||function(){return 1;};
|
||||||
next.set('ai',info.chooseButton.check||function(){return 1;});
|
var filterButton=info.chooseButton.filter||function(){return true};
|
||||||
next.set('filterButton',info.chooseButton.filter||function(){return true;});
|
var selectButton=info.chooseButton.select||1;
|
||||||
next.set('selectButton',info.chooseButton.select||1);
|
var chooseable=[];
|
||||||
|
for(var i=0;i<dialog.buttons.length;i++){
|
||||||
|
var btn=dialog.buttons[i];
|
||||||
|
if(filterButton(btn)) chooseable.push(btn);
|
||||||
|
}
|
||||||
|
if(chooseable.length==1&&dialog.direct||dialog.forceDirect){
|
||||||
|
event._result={
|
||||||
|
bool:true,
|
||||||
|
buttons:chooseable[0],
|
||||||
|
links:[chooseable[0].link],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
var next=player.chooseButton(dialog);
|
||||||
|
next.set('ai',ai);
|
||||||
|
next.set('filterButton',filterButton);
|
||||||
|
next.set('selectButton',selectButton);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
event.buttoned=event.result.skill;
|
event.buttoned=event.result.skill;
|
||||||
}
|
}
|
||||||
|
@ -50668,7 +50726,7 @@
|
||||||
}
|
}
|
||||||
game.uncheck();
|
game.uncheck();
|
||||||
game.check();
|
game.check();
|
||||||
if(event.skillDialog){
|
if(event.skillDialog===true){
|
||||||
var str=get.translation(skill);
|
var str=get.translation(skill);
|
||||||
if(info.prompt){
|
if(info.prompt){
|
||||||
var str2;
|
var str2;
|
||||||
|
|
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 27 KiB |