v1.9.96
This commit is contained in:
parent
a3b01fdb4f
commit
0c94a14670
|
@ -78,7 +78,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
if(typeof event.baseDamage!='number') event.baseDamage=1;
|
if(typeof event.baseDamage!='number') event.baseDamage=1;
|
||||||
if(typeof event.extraDamage!='number') event.extraDamage=0;
|
if(typeof event.extraDamage!='number') event.extraDamage=0;
|
||||||
"step 1"
|
"step 1"
|
||||||
if(event.directHit||(!target.hasShan()&&!_status.connectMode)){
|
if(event.directHit||(!_status.connectMode&&lib.config.skip_shan&&!target.hasShan())){
|
||||||
event._result={bool:false};
|
event._result={bool:false};
|
||||||
}
|
}
|
||||||
else if(event.skipShan){
|
else if(event.skipShan){
|
||||||
|
@ -1820,8 +1820,14 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
audio:true,
|
audio:true,
|
||||||
check:function(event,player){
|
check:function(event,player){
|
||||||
var source=event.getParent().player;
|
if(event&&(event.ai||event.ai1)){
|
||||||
if(get.damageEffect(player,source,player)>0) return false;
|
var ai=event.ai||event.ai1;
|
||||||
|
var tmp=_status.event;
|
||||||
|
_status.event=event;
|
||||||
|
var result=ai({name:'shan'},_status.event.player,event);
|
||||||
|
_status.event=tmp;
|
||||||
|
return result>0;
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
|
|
|
@ -33,12 +33,153 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
re_zhenji:['female','wei',3,['reluoshen','reqingguo']],
|
re_zhenji:['female','wei',3,['reluoshen','reqingguo']],
|
||||||
re_zhugeliang:['male','shu',3,['reguanxing','kongcheng']],
|
re_zhugeliang:['male','shu',3,['reguanxing','kongcheng']],
|
||||||
re_huaxiong:["male","qun",6,["new_reyaowu"]],
|
re_huaxiong:["male","qun",6,["new_reyaowu"]],
|
||||||
|
|
||||||
|
re_zhangjiao:['male','qun',3,['xinleiji','xinguidao','huangtian'],['zhu']],
|
||||||
},
|
},
|
||||||
characterIntro:{
|
characterIntro:{
|
||||||
re_gongsunzan:'群雄之一。出身贵族,因母地位卑贱,只当了郡中小吏。他貌美,声音洪亮,机智善辩。后随卢植于缑氏山中读书,粗通经传。',
|
re_gongsunzan:'群雄之一。出身贵族,因母地位卑贱,只当了郡中小吏。他貌美,声音洪亮,机智善辩。后随卢植于缑氏山中读书,粗通经传。',
|
||||||
re_lidian:'字曼成,曹操麾下将领。李典深明大义,不与人争功,崇尚学习与高贵儒雅,尊重博学之士,在军中被称为长者。李典有长者之风,官至破虏将军,三十六岁去世。魏文帝曹丕继位后追谥号为愍侯。',
|
re_lidian:'字曼成,曹操麾下将领。李典深明大义,不与人争功,崇尚学习与高贵儒雅,尊重博学之士,在军中被称为长者。李典有长者之风,官至破虏将军,三十六岁去世。魏文帝曹丕继位后追谥号为愍侯。',
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
xinleiji:{
|
||||||
|
group:'xinleiji_misa',
|
||||||
|
audio:'releiji',
|
||||||
|
audioname:['boss_qinglong'],
|
||||||
|
trigger:{player:['useCard','respond']},
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.card.name=='shan'||event.card.name=='shandian';
|
||||||
|
},
|
||||||
|
judgeCheck:function(card,bool){
|
||||||
|
var suit=get.suit(card);
|
||||||
|
if(suit=='spade'){
|
||||||
|
if(bool&&card.number>1&&card.number<10) return 5;
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
if(suit=='club') return 2;
|
||||||
|
return 0;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.judge(lib.skill.xinleiji.judgeCheck);
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
useShan:true,
|
||||||
|
effect:{
|
||||||
|
target:function(card,player,target,current){
|
||||||
|
if(get.tag(card,'respondShan')){
|
||||||
|
var hastarget=game.hasPlayer(function(current){
|
||||||
|
return get.attitude(target,current)<0;
|
||||||
|
});
|
||||||
|
var be=target.countCards('e',{color:'black'});
|
||||||
|
if(target.countCards('h','shan')&&be){
|
||||||
|
if(!target.hasSkill('xinguidao')) return 0;
|
||||||
|
return [0,hastarget?target.countCards('he')/2:0];
|
||||||
|
}
|
||||||
|
if(target.countCards('h','shan')&&target.countCards('h')>2){
|
||||||
|
if(!target.hasSkill('xinguidao')) return 0;
|
||||||
|
return [0,hastarget?target.countCards('h')/4:0];
|
||||||
|
}
|
||||||
|
if(target.countCards('h')>3||(be&&target.countCards('h')>=2)){
|
||||||
|
return [0,0];
|
||||||
|
}
|
||||||
|
if(target.countCards('h')==0){
|
||||||
|
return [1.5,0];
|
||||||
|
}
|
||||||
|
if(target.countCards('h')==1&&!be){
|
||||||
|
return [1.2,0];
|
||||||
|
}
|
||||||
|
if(!target.hasSkill('xinguidao')) return [1,0.05];
|
||||||
|
return [1,Math.min(0.5,(target.countCards('h')+be)/4)];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
xinleiji_misa:{
|
||||||
|
audio:'releiji',
|
||||||
|
trigger:{player:'judgeAfter'},
|
||||||
|
forced:true,
|
||||||
|
locked:false,
|
||||||
|
filter:function(event,player){
|
||||||
|
return ['spade','club'].contains(event.result.suit);
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
event.num=1+['club','spade'].indexOf(trigger.result.suit);
|
||||||
|
if(event.num==1) player.recover();
|
||||||
|
player.chooseTarget(true,'雷击:对一名角色造成'+event.num+'点雷电伤害。').ai=function(target){
|
||||||
|
var player=_status.event.player;
|
||||||
|
return get.damageEffect(target,player,player,'thunder');
|
||||||
|
};
|
||||||
|
'step 1'
|
||||||
|
if(result.bool&&result.targets&&result.targets.length){
|
||||||
|
player.line(result.targets,'thunder');
|
||||||
|
result.targets[0].damage(event.num,'thunder');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
xinguidao:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{global:'judge'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.countCards('he',{color:'black'})>0;
|
||||||
|
},
|
||||||
|
direct:true,
|
||||||
|
content:function(){
|
||||||
|
"step 0"
|
||||||
|
player.chooseCard(get.translation(trigger.player)+'的'+(trigger.judgestr||'')+'判定为'+
|
||||||
|
get.translation(trigger.player.judging[0])+','+get.prompt('xinguidao'),'he',function(card){
|
||||||
|
return get.color(card)=='black';
|
||||||
|
}).set('ai',function(card){
|
||||||
|
var trigger=_status.event.getTrigger();
|
||||||
|
var player=_status.event.player;
|
||||||
|
var judging=_status.event.judging;
|
||||||
|
var result=trigger.judge(card)-trigger.judge(judging);
|
||||||
|
var attitude=get.attitude(player,trigger.player);
|
||||||
|
if(attitude==0||result==0){
|
||||||
|
if(trigger.player!=player) return 0;
|
||||||
|
if(game.hasPlayer(function(current){
|
||||||
|
return get.attitude(player,current)<0;
|
||||||
|
})){
|
||||||
|
var checkx=lib.skill.xinleiji.judgeCheck(card,true)-lib.skill.xinleiji.judgeCheck(judging);
|
||||||
|
if(checkx>0) return checkx;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
};
|
||||||
|
if(attitude>0){
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return -result;
|
||||||
|
}
|
||||||
|
}).set('judging',trigger.player.judging[0]);
|
||||||
|
"step 1"
|
||||||
|
if(result.bool){
|
||||||
|
player.respond(result.cards,'highlight','xinguidao');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.finish();
|
||||||
|
}
|
||||||
|
"step 2"
|
||||||
|
if(result.bool){
|
||||||
|
player.$gain2(trigger.player.judging[0]);
|
||||||
|
player.gain(trigger.player.judging[0]);
|
||||||
|
var card=result.cards[0];
|
||||||
|
if(get.suit(card)=='spade'&&card.number>1&&card.number<10) player.draw('nodelay');
|
||||||
|
trigger.player.judging[0]=result.cards[0];
|
||||||
|
if(!get.owner(result.cards[0],'judge')){
|
||||||
|
trigger.position.appendChild(result.cards[0]);
|
||||||
|
}
|
||||||
|
game.log(trigger.player,'的判定牌改为',result.cards[0]);
|
||||||
|
}
|
||||||
|
"step 3"
|
||||||
|
game.delay(2);
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
tag:{
|
||||||
|
rejudge:1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
reqingguo:{
|
reqingguo:{
|
||||||
audio:'qingguo',
|
audio:'qingguo',
|
||||||
enable:['chooseToRespond','chooseToUse'],
|
enable:['chooseToRespond','chooseToUse'],
|
||||||
|
@ -3116,7 +3257,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
"re_yanwen":"界颜良文丑",
|
"re_yanwen":"界颜良文丑",
|
||||||
re_pangtong:"界庞统",
|
re_pangtong:"界庞统",
|
||||||
xin_yuanshao:"界袁绍",
|
xin_yuanshao:"界袁绍",
|
||||||
|
re_zhangjiao:'界张角',
|
||||||
|
|
||||||
|
xinleiji:'雷击',
|
||||||
|
xinguidao:'鬼道',
|
||||||
|
xinleiji_info:'当你使用或打出【闪】或【闪电】时,你可以进行判定。当你的判定牌生效后,若结果为:黑桃,你对一名角色造成2点雷电伤害;梅花:你回复1点体力并对一名其他角色造成1点雷电伤害。',
|
||||||
|
xinguidao_info:'一名角色的判定牌生效前,你可以打出一张黑色牌作为判定牌并获得原判定牌。若你以此法打出的牌为黑桃2-9,则你摸一张牌。',
|
||||||
reqiangxi:"强袭",
|
reqiangxi:"强袭",
|
||||||
"reqiangxi_info":"出牌阶段对每名其他角色限一次,你可以选择一项:1. 失去一点体力并对你攻击范围内的一名其他角色造成一点伤害;2. 弃置一张武器牌并对你攻击范围内的一名其他角色造成一点伤害。",
|
"reqiangxi_info":"出牌阶段对每名其他角色限一次,你可以选择一项:1. 失去一点体力并对你攻击范围内的一名其他角色造成一点伤害;2. 弃置一张武器牌并对你攻击范围内的一名其他角色造成一点伤害。",
|
||||||
rehuoji:"火计",
|
rehuoji:"火计",
|
||||||
|
|
|
@ -439,6 +439,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
|
|
||||||
"drlt_qianjie":{
|
"drlt_qianjie":{
|
||||||
group:["drlt_qianjie_1","drlt_qianjie_2","drlt_qianjie_3"],
|
group:["drlt_qianjie_1","drlt_qianjie_2","drlt_qianjie_3"],
|
||||||
|
locked:true,
|
||||||
subSkill:{
|
subSkill:{
|
||||||
'1':{
|
'1':{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
@ -6077,6 +6078,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
buqu:{
|
buqu:{
|
||||||
audio:2,
|
audio:2,
|
||||||
|
audioname:['key_yuri'],
|
||||||
trigger:{player:'chooseToUseBefore'},
|
trigger:{player:'chooseToUseBefore'},
|
||||||
forced:true,
|
forced:true,
|
||||||
filter:function(event,player){return event.type=='dying'&&player.isDying()&&event.dying==player},
|
filter:function(event,player){return event.type=='dying'&&player.isDying()&&event.dying==player},
|
||||||
|
|
119
character/sp.js
119
character/sp.js
|
@ -5,11 +5,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
connect:true,
|
connect:true,
|
||||||
characterSort:{
|
characterSort:{
|
||||||
sp:{
|
sp:{
|
||||||
sp_default:["caoying","simahui","baosanniang","yangxiu","chenlin","caohong","xiahouba","yuanshu","sp_diaochan","sp_zhaoyun","liuxie","zhugejin","zhugeke","guanyinping","simalang","zhangxingcai","fuwan","sp_sunshangxiang","caoang","sp_caoren","zhangbao","maliang","zhugedan","sp_jiangwei","sp_machao","sunhao","shixie","mayunlu","zhanglu","wutugu","sp_caiwenji","zhugeguo","lingju","jsp_guanyu","jsp_huangyueying","sunluyu","zumao","wenpin","daxiaoqiao","guansuo","tadun","yanbaihu","chengyu","wanglang","sp_pangde","sp_jiaxu","litong","mizhu","buzhi","caochun","dongbai","zhaoxiang","mazhong","dongyun","kanze","heqi","wangyun","sunqian","xizhicai","quyi","luzhi","wenyang","guanlu","gexuan","xinpi"],
|
sp_default:["caoying","simahui","baosanniang","yangxiu","chenlin","caohong","xiahouba","yuanshu","sp_diaochan","sp_zhaoyun","liuxie","zhugejin","zhugeke","guanyinping","simalang","zhangxingcai","fuwan","sp_sunshangxiang","caoang","sp_caoren","zhangbao","maliang","zhugedan","sp_jiangwei","sp_machao","sunhao","shixie","mayunlu","zhanglu","wutugu","sp_caiwenji","zhugeguo","lingju","jsp_guanyu","jsp_huangyueying","sunluyu","zumao","wenpin","daxiaoqiao","guansuo","tadun","yanbaihu","chengyu","wanglang","sp_pangde","sp_jiaxu","litong","mizhu","buzhi","caochun","dongbai","zhaoxiang","mazhong","dongyun","kanze","heqi","wangyun","sunqian","xizhicai","quyi","luzhi","wenyang","guanlu","gexuan"],
|
||||||
sp_whlw:["xurong","lijue","zhangji","fanchou","guosi"],
|
sp_whlw:["xurong","lijue","zhangji","fanchou","guosi"],
|
||||||
sp_zlzy:["zhangqiying","lvkai","zhanggong","weiwenzhugezhi","beimihu"],
|
sp_zlzy:["zhangqiying","lvkai","zhanggong","weiwenzhugezhi","beimihu"],
|
||||||
sp_longzhou:["xf_tangzi","xf_huangquan","xf_sufei","sp_liuqi"],
|
sp_longzhou:["xf_tangzi","xf_huangquan","xf_sufei","sp_liuqi"],
|
||||||
sp_zizouqi:["mangyachang","xugong","zhangchangpu"],
|
sp_zizouqi:["mangyachang","xugong","zhangchangpu"],
|
||||||
|
sp_sbfm:["lisu","xinpi"],
|
||||||
sp_zhongdan:["cuiyan","huangfusong"],
|
sp_zhongdan:["cuiyan","huangfusong"],
|
||||||
sp_star:["sp_xiahoushi","jsp_zhaoyun","huangjinleishi","sp_pangtong","sp_daqiao","sp_ganning","sp_xiahoudun","sp_lvmeng","sp_zhangfei","sp_liubei"],
|
sp_star:["sp_xiahoushi","jsp_zhaoyun","huangjinleishi","sp_pangtong","sp_daqiao","sp_ganning","sp_xiahoudun","sp_lvmeng","sp_zhangfei","sp_liubei"],
|
||||||
sp_guozhan:["shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"],
|
sp_guozhan:["shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"],
|
||||||
|
@ -20,6 +21,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
character:{
|
character:{
|
||||||
xinpi:['male','wei',3,['xpchijie','yinju'],['unseen']],
|
xinpi:['male','wei',3,['xpchijie','yinju'],['unseen']],
|
||||||
|
lisu:['male','qun',2,['lslixun','lskuizhu']],
|
||||||
|
|
||||||
hejin:['male','qun',4,['mouzhu','yanhuo']],
|
hejin:['male','qun',4,['mouzhu','yanhuo']],
|
||||||
hansui:['male','qun',4,['mashu','niluan']],
|
hansui:['male','qun',4,['mashu','niluan']],
|
||||||
niujin:['male','wei',4,['cuorui','liewei']],
|
niujin:['male','wei',4,['cuorui','liewei']],
|
||||||
|
@ -574,7 +577,110 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
//辛毗
|
//上兵伐谋
|
||||||
|
//伊籍在标包 不会移动
|
||||||
|
lslixun:{
|
||||||
|
audio:2,
|
||||||
|
forced:true,
|
||||||
|
trigger:{player:'damageBegin4'},
|
||||||
|
init:function(player,skill){
|
||||||
|
if(!player.storage[skill]) player.storage[skill]=0;
|
||||||
|
},
|
||||||
|
marktext:'珠',
|
||||||
|
intro:{
|
||||||
|
content:'共有#个“珠”',
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
trigger.cancel();
|
||||||
|
player.storage.lslixun+=trigger.num;
|
||||||
|
player.markSkill('lslixun');
|
||||||
|
},
|
||||||
|
group:'lslixun_fate',
|
||||||
|
},
|
||||||
|
lslixun_fate:{
|
||||||
|
audio:'lslixun',
|
||||||
|
trigger:{player:'phaseUseBegin'},
|
||||||
|
forced:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.storage.lslixun&&player.storage.lslixun>0;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
event.forceDie=true;
|
||||||
|
_status.lslixun=player.storage.lslixun;
|
||||||
|
player.judge(function(card){
|
||||||
|
if(get.number(card)<_status.lslixun) return -_status.lslixun;
|
||||||
|
return 1;
|
||||||
|
});
|
||||||
|
'step 1'
|
||||||
|
delete _status.lslixun;
|
||||||
|
if(!result.bool){
|
||||||
|
player.chooseToDiscard(true,'h',player.storage.lslixun).ai=lib.skill.qiangxi.check;
|
||||||
|
}
|
||||||
|
else event.finish();
|
||||||
|
'step 2'
|
||||||
|
var num=player.storage.lslixun;
|
||||||
|
if(result.cards&&result.cards.length) num-=result.cards.length;
|
||||||
|
if(num) player.loseHp(num);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
lskuizhu:{
|
||||||
|
audio:2,
|
||||||
|
trigger:{player:'phaseUseEnd'},
|
||||||
|
direct:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.isMaxHp(true)==false;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.chooseTarget(get.prompt2('lskuizhu'),function(card,player,target){
|
||||||
|
return target!=player&&target.isMaxHp();
|
||||||
|
}).ai=function(){return -1};
|
||||||
|
'step 1'
|
||||||
|
if(result.bool){
|
||||||
|
var target=result.targets[0];
|
||||||
|
event.target=target;
|
||||||
|
player.logSkill('lskuizhu',target);
|
||||||
|
player.drawTo(Math.min(5,target.countCards('h')));
|
||||||
|
}
|
||||||
|
else event.finish();
|
||||||
|
'step 2'
|
||||||
|
if(!player.countCards('h')){
|
||||||
|
event.finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
target.viewHandcards(player);
|
||||||
|
'step 3'
|
||||||
|
if(!target.countCards('h')){
|
||||||
|
event.finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
target.chooseToDiscard(true,'h',[1,player.countCards('h')],'弃置至多'+get.cnNumber(player.countCards('h'))+'张手牌,并获得'+get.translation(player)+'等量的手牌').ai=lib.skill.zhiheng.check;
|
||||||
|
'step 4'
|
||||||
|
if(result.bool&&result.cards&&result.cards.length&&player.countGainableCards(target,'h')>0){
|
||||||
|
target.gainPlayerCard(player,'h',true,result.cards.length)
|
||||||
|
}
|
||||||
|
'step 5'
|
||||||
|
if(result.bool&&result.cards&&result.cards.length>1){
|
||||||
|
var bool=player.storage.lslixun>0!==true;
|
||||||
|
player.chooseTarget(bool,'令'+get.translation(target)+'对其攻击范围内的一名角色造成1点伤害'+(bool?'':',或点「取消」移去一个“珠”'),function(card,player,target){
|
||||||
|
var source=_status.event.source;
|
||||||
|
return target!=source&&get.distance(source,target,'attack')<=1;
|
||||||
|
}).set('source',target).set('ai',function(target){
|
||||||
|
return get.damageEffect(target,_status.event.source,_status.event.player);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else event.finish();
|
||||||
|
'step 6'
|
||||||
|
if(result.bool&&result.targets&&result.targets.length){
|
||||||
|
result.targets[0].damage(target);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player.storage.lslixun--;
|
||||||
|
player[player.storage.lslixun?'markSkill':'unmarkSkill']('lslixun');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
xpchijie:{
|
xpchijie:{
|
||||||
audio:2,
|
audio:2,
|
||||||
trigger:{
|
trigger:{
|
||||||
|
@ -2863,6 +2969,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
prompt:'视为使用一张闪',
|
prompt:'视为使用一张闪',
|
||||||
ai:{
|
ai:{
|
||||||
order:function(){
|
order:function(){
|
||||||
|
var player=_status.event.player;
|
||||||
if(player.hasSkill('qingzhong_give')) return 2.95;
|
if(player.hasSkill('qingzhong_give')) return 2.95;
|
||||||
return 3.15;
|
return 3.15;
|
||||||
},
|
},
|
||||||
|
@ -7356,6 +7463,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
respondShan:true,
|
||||||
effect:{
|
effect:{
|
||||||
target:function(card,player,target){
|
target:function(card,player,target){
|
||||||
if(player==target&&get.subtype(card)=='equip2'){
|
if(player==target&&get.subtype(card)=='equip2'){
|
||||||
|
@ -13021,6 +13129,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
hansui:'韩遂',
|
hansui:'韩遂',
|
||||||
niujin:'牛金',
|
niujin:'牛金',
|
||||||
xinpi:'辛毗',
|
xinpi:'辛毗',
|
||||||
|
lisu:'李肃',
|
||||||
|
lslixun:'利熏',
|
||||||
|
lslixun_fate:'利熏',
|
||||||
|
lslixun_info:'锁定技,当你受到伤害时,你防止此伤害,然后获得等同于伤害值的“珠”标记。出牌阶段开始时,你进行一次判定,若结果点数小于“珠”的数量,你弃置等同于“珠”数量的手牌(若弃牌的牌数不够,则失去剩余数量的体力值)。',
|
||||||
|
lskuizhu:'馈珠',
|
||||||
|
lskuizhu_info:'出牌阶段结束时,你可以选择体力值全场最多的一名其他角色,将手牌摸至与该角色相同(最多摸至五张),然后该角色观看你的手牌,弃置任意张手牌并从观看的牌中获得等量的牌。若其获得的牌大于一张,则你选择一项:移去一个“珠”;或令其对其攻击范围内的一名角色造成1点伤害。',
|
||||||
|
|
||||||
xpchijie:'持节',
|
xpchijie:'持节',
|
||||||
xpchijie_info:'每回合限一次,当你成为其他角色使用牌的目标后,你可以获得如下效果:当此牌对其他角色造成伤害时,若此牌已对你造成过伤害,则你获得此牌;当此牌使用结算完成时,你可以获得此牌对应的所有实体牌。',
|
xpchijie_info:'每回合限一次,当你成为其他角色使用牌的目标后,你可以获得如下效果:当此牌对其他角色造成伤害时,若此牌已对你造成过伤害,则你获得此牌;当此牌使用结算完成时,你可以获得此牌对应的所有实体牌。',
|
||||||
|
@ -13643,6 +13757,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
sp_zlzy:"逐鹿中原",
|
sp_zlzy:"逐鹿中原",
|
||||||
sp_longzhou:"同舟共济",
|
sp_longzhou:"同舟共济",
|
||||||
sp_zizouqi:"自走棋",
|
sp_zizouqi:"自走棋",
|
||||||
|
sp_sbfm:'上兵伐谋',
|
||||||
sp_zhongdan:"忠胆英杰",
|
sp_zhongdan:"忠胆英杰",
|
||||||
sp_star:"☆SP系列",
|
sp_star:"☆SP系列",
|
||||||
sp_guozhan:"国战",
|
sp_guozhan:"国战",
|
||||||
|
|
|
@ -3509,7 +3509,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
event.finish();
|
event.finish();
|
||||||
}
|
}
|
||||||
"step 2"
|
"step 2"
|
||||||
if(get.color(result.links[0])!='black') player.draw();
|
if(get.color(result.links[0])!='black') player.draw('nodelay');
|
||||||
if(result.links[0].name!='sha'&&event.target.countCards('he')){
|
if(result.links[0].name!='sha'&&event.target.countCards('he')){
|
||||||
player.gainPlayerCard('he',event.target,true);
|
player.gainPlayerCard('he',event.target,true);
|
||||||
}
|
}
|
||||||
|
|
|
@ -5095,7 +5095,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
direct:true,
|
direct:true,
|
||||||
audio:2,
|
audio:2,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.countCards('h','sha')>0&&!player.storage.chunlao.length;
|
return player.countCards('h')>0&&(_status.connectMode||player.countCards('h','sha')>0)&&!player.storage.chunlao.length;
|
||||||
},
|
},
|
||||||
init:function(player){
|
init:function(player){
|
||||||
player.storage.chunlao=[];
|
player.storage.chunlao=[];
|
||||||
|
@ -5105,7 +5105,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
player.chooseCard([1,player.countCards('h','sha')],get.prompt('chunlao'),{name:'sha'}).set('ai',function(){
|
player.chooseCard([1,Math.max(1,player.countCards('h','sha'))],get.prompt('chunlao'),{name:'sha'}).set('ai',function(){
|
||||||
return 1;
|
return 1;
|
||||||
});
|
});
|
||||||
'step 1'
|
'step 1'
|
||||||
|
|
|
@ -86,7 +86,11 @@ game.import('play',function(lib,game,ui,get,ai,_status){
|
||||||
if(lib.skill[i]) console.log(i);
|
if(lib.skill[i]) console.log(i);
|
||||||
if(i!='versus_ladder'){
|
if(i!='versus_ladder'){
|
||||||
lib.skill[i]=mode.skill[i];
|
lib.skill[i]=mode.skill[i];
|
||||||
game.finishSkill(i);
|
}
|
||||||
|
}
|
||||||
|
for(var ii in mode.skill){
|
||||||
|
if(ii!='versus_ladder'){
|
||||||
|
game.finishSkill(ii);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
storage.versus={};
|
storage.versus={};
|
||||||
|
@ -111,7 +115,11 @@ game.import('play',function(lib,game,ui,get,ai,_status){
|
||||||
for(var i in mode.skill){
|
for(var i in mode.skill){
|
||||||
if(lib.skill[i]) console.log(i);
|
if(lib.skill[i]) console.log(i);
|
||||||
lib.skill[i]=mode.skill[i];
|
lib.skill[i]=mode.skill[i];
|
||||||
game.finishSkill(i);
|
}
|
||||||
|
for(var ii in mode.skill){
|
||||||
|
if(ii!='versus_ladder'){
|
||||||
|
game.finishSkill(ii);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
storage.boss={};
|
storage.boss={};
|
||||||
for(var i in mode.characterPack.mode_boss){
|
for(var i in mode.characterPack.mode_boss){
|
||||||
|
|
7970
game/asset.js
7970
game/asset.js
File diff suppressed because it is too large
Load Diff
38
game/game.js
38
game/game.js
|
@ -145,6 +145,12 @@
|
||||||
unfrequent:true,
|
unfrequent:true,
|
||||||
intro:'当候选目标只有1个时,点击目标后无需再点击确认',
|
intro:'当候选目标只有1个时,点击目标后无需再点击确认',
|
||||||
},
|
},
|
||||||
|
skip_shan:{
|
||||||
|
name:'无闪自动取消',
|
||||||
|
init:false,
|
||||||
|
unfrequent:true,
|
||||||
|
intro:'当自己需要使用或打出闪时,若自己没有闪,则跳过该步骤',
|
||||||
|
},
|
||||||
wuxie_self:{
|
wuxie_self:{
|
||||||
name:'不无懈自己',
|
name:'不无懈自己',
|
||||||
init:true,
|
init:true,
|
||||||
|
@ -8934,6 +8940,7 @@
|
||||||
// game.saveConfig('characters',lib.config.all.characters);
|
// game.saveConfig('characters',lib.config.all.characters);
|
||||||
// game.saveConfig('cards',lib.config.all.cards);
|
// game.saveConfig('cards',lib.config.all.cards);
|
||||||
game.saveConfig('plays',['cardpile']);
|
game.saveConfig('plays',['cardpile']);
|
||||||
|
game.saveConfig('skip_shan',false);
|
||||||
game.saveConfig('tao_enemy',true);
|
game.saveConfig('tao_enemy',true);
|
||||||
game.saveConfig('layout','long2');
|
game.saveConfig('layout','long2');
|
||||||
game.saveConfig('hp_style','ol');
|
game.saveConfig('hp_style','ol');
|
||||||
|
@ -11293,7 +11300,7 @@
|
||||||
delete event.dialog;
|
delete event.dialog;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(!_status.connectMode&&event.autochoose&&event.autochoose()){
|
if(!_status.connectMode&&lib.config.skip_shan&&event.autochoose&&event.autochoose()){
|
||||||
event.result={bool:false};
|
event.result={bool:false};
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -17734,6 +17741,35 @@
|
||||||
next.setContent('useSkill');
|
next.setContent('useSkill');
|
||||||
return next;
|
return next;
|
||||||
},
|
},
|
||||||
|
drawTo:function(num,args){
|
||||||
|
var num2=num-this.countCards('h');
|
||||||
|
if(!num2) return;
|
||||||
|
var next=this.draw(num2);
|
||||||
|
if(Array.isArray(args)){
|
||||||
|
for(var i=0;i<args.length;i++){
|
||||||
|
if(get.itemtype(args[i])=='player'){
|
||||||
|
next.source=args[i];
|
||||||
|
}
|
||||||
|
else if(typeof args[i]=='boolean'){
|
||||||
|
next.animate=args[i];
|
||||||
|
}
|
||||||
|
else if(args[i]=='nodelay'){
|
||||||
|
next.animate=false;
|
||||||
|
next.$draw=true;
|
||||||
|
}
|
||||||
|
else if(args[i]=='visible'){
|
||||||
|
next.visible=true;
|
||||||
|
}
|
||||||
|
else if(args[i]=='bottom'){
|
||||||
|
next.bottom=true;
|
||||||
|
}
|
||||||
|
else if(typeof args[i]=='object'&&args[i]&&args[i].drawDeck!=undefined){
|
||||||
|
next.drawDeck=args[i].drawDeck;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return next;
|
||||||
|
},
|
||||||
draw:function(){
|
draw:function(){
|
||||||
var next=game.createEvent('draw');
|
var next=game.createEvent('draw');
|
||||||
next.player=this;
|
next.player=this;
|
||||||
|
|
|
@ -1,43 +1,45 @@
|
||||||
window.noname_update={
|
window.noname_update={
|
||||||
version:'1.9.95.9.2',
|
version:'1.9.96',
|
||||||
update:'1.9.95.9.1',
|
update:'1.9.95.9.2',
|
||||||
changeLog:[
|
changeLog:[
|
||||||
'修复有关闪的各种BUG',
|
'界张角,李肃',
|
||||||
|
'修复BUG',
|
||||||
],
|
],
|
||||||
files:[
|
files:[
|
||||||
//'card/extra.js',
|
//'card/extra.js',
|
||||||
//'card/huanlekapai.js',
|
//'card/huanlekapai.js',
|
||||||
'card/sp.js',
|
//'card/sp.js',
|
||||||
'card/standard.js',
|
'card/standard.js',
|
||||||
//'card/swd.js',
|
//'card/swd.js',
|
||||||
//'card/guozhan.js',
|
//'card/guozhan.js',
|
||||||
//'card/gwent.js',
|
//'card/gwent.js',
|
||||||
//'character/diy.js',
|
//'character/diy.js',
|
||||||
//'character/extra.js',
|
//'character/extra.js',
|
||||||
'character/hearth.js',
|
//'character/hearth.js',
|
||||||
//'character/gujian.js',
|
//'character/gujian.js',
|
||||||
//'character/gwent.js',
|
//'character/gwent.js',
|
||||||
//'character/mobile.js',
|
//'character/mobile.js',
|
||||||
//'character/mtg.js',
|
//'character/mtg.js',
|
||||||
'character/old.js',
|
//'character/old.js',
|
||||||
//'character/refresh.js',
|
'character/refresh.js',
|
||||||
'character/shenhua.js',
|
'character/shenhua.js',
|
||||||
'character/sp.js',
|
'character/sp.js',
|
||||||
//'character/tw.js',
|
//'character/tw.js',
|
||||||
'character/standard.js',
|
//'character/standard.js',
|
||||||
'character/swd.js',
|
//'character/swd.js',
|
||||||
'character/xianjian.js',
|
//'character/xianjian.js',
|
||||||
//'character/xinghuoliaoyuan.js',
|
'character/xinghuoliaoyuan.js',
|
||||||
'character/yijiang.js',
|
'character/yijiang.js',
|
||||||
//'character/yxs.js',
|
//'character/yxs.js',
|
||||||
//'mode/identity.js',
|
'extension/boss/extension.js',
|
||||||
|
'mode/identity.js',
|
||||||
//'mode/doudizhu.js',
|
//'mode/doudizhu.js',
|
||||||
//'mode/guozhan.js',
|
//'mode/guozhan.js',
|
||||||
//'mode/single.js',
|
//'mode/single.js',
|
||||||
'mode/stone.js',
|
//'mode/stone.js',
|
||||||
//'mode/versus.js',
|
//'mode/versus.js',
|
||||||
//'mode/boss.js',
|
//'mode/boss.js',
|
||||||
//'game/game.js',
|
'game/game.js',
|
||||||
//'game/config.js',
|
//'game/config.js',
|
||||||
//'game/package.js',
|
//'game/package.js',
|
||||||
//'game/asset.js',
|
//'game/asset.js',
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 45 KiB |
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
|
@ -260,6 +260,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
if(enhance_zhu){
|
if(enhance_zhu){
|
||||||
var skill;
|
var skill;
|
||||||
switch(game.zhu.name){
|
switch(game.zhu.name){
|
||||||
|
case 'key_yuri':skill='buqu';break;
|
||||||
case 'liubei':skill='jizhen';break;
|
case 'liubei':skill='jizhen';break;
|
||||||
case 'dongzhuo':skill='hengzheng';break;
|
case 'dongzhuo':skill='hengzheng';break;
|
||||||
case 'sunquan':skill='batu';break;
|
case 'sunquan':skill='batu';break;
|
||||||
|
@ -622,7 +623,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
list.remove('shen');
|
list.remove('shen');
|
||||||
if(list.length) player.group=function(){
|
if(list.length) player.group=function(){
|
||||||
if(_status.mode!='zhong'&&game.zhu&&game.zhu.group){
|
if(_status.mode!='zhong'&&game.zhu&&game.zhu.group){
|
||||||
if(['liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu'].contains(game.zhu.name)) return game.zhu.group;
|
if(['re_zhangjiao','liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu'].contains(game.zhu.name)) return game.zhu.group;
|
||||||
if(game.zhu.name=='sunhao'&&player.identity=='zhong') return 'wu';
|
if(game.zhu.name=='sunhao'&&player.identity=='zhong') return 'wu';
|
||||||
if(game.zhu.name=='yl_yuanshu'){
|
if(game.zhu.name=='yl_yuanshu'){
|
||||||
if(player.identity=='zhong') list.remove('qun');
|
if(player.identity=='zhong') list.remove('qun');
|
||||||
|
|
Loading…
Reference in New Issue