新杀加强:孙狼、庞会、韩遂、唐咨;界曹叡(unseen)

This commit is contained in:
copcap 2023-08-22 15:51:07 +08:00
parent 9f76f630e6
commit 7284ee9ea5
No known key found for this signature in database
GPG Key ID: 9AE7B8AF097EC926
5 changed files with 118 additions and 23 deletions

View File

@ -3472,7 +3472,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{ trigger:{
source:'damageBegin1', source:'damageBegin1',
}, },
usable:2, //usable:2,
filter:function(event,player){ filter:function(event,player){
return player.countDiscardableCards(player,'he')>0&&player!=event.player; return player.countDiscardableCards(player,'he')>0&&player!=event.player;
}, },
@ -10103,7 +10103,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dccuijin_info:'当你或你攻击范围内的角色使用【杀】时,你可以弃置一张牌,令此【杀】的伤害基数+1。然后当此杀被目标角色抵消或无效或防止伤害后你摸一张牌对使用者造成1点伤害。', dccuijin_info:'当你或你攻击范围内的角色使用【杀】时,你可以弃置一张牌,令此【杀】的伤害基数+1。然后当此杀被目标角色抵消或无效或防止伤害后你摸一张牌对使用者造成1点伤害。',
panghui:'庞会', panghui:'庞会',
dcyiyong:'异勇', dcyiyong:'异勇',
dcyiyong_info:'每回合限两次。当你对其他角色造成伤害时若你有牌你可以与其同时弃置至少一张牌。若你以此法弃置的牌的点数之和不大于其你摸X张牌不小于其此伤害+1X为其以此法弃置的牌数。', dcyiyong_info:'当你对其他角色造成伤害时若你有牌你可以与其同时弃置至少一张牌。若你以此法弃置的牌的点数之和不大于其你摸X张牌不小于其此伤害+1X为其以此法弃置的牌数。',
chenjiao:'陈矫', chenjiao:'陈矫',
dcxieshoux:'协守/清严', dcxieshoux:'协守/清严',
dcxieshou:'协守', dcxieshou:'协守',

View File

@ -13,13 +13,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
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','re_caochong'], 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','re_caorui'],
refresh_yijiang6:['re_guohuanghou','re_sundeng'], refresh_yijiang6:['re_guohuanghou','re_sundeng'],
refresh_xinghuo:['re_duji','dc_gongsunzan','re_sp_taishici','re_caiyong','re_mazhong','re_wenpin','re_jsp_huangyueying'], refresh_xinghuo:['re_duji','dc_gongsunzan','re_sp_taishici','re_caiyong','re_mazhong','re_wenpin','re_jsp_huangyueying'],
}, },
}, },
connect:true, connect:true,
character:{ character:{
re_caorui:['male','wei',3,['huituo','mingjian','rexingshuai'],['unseen','zhu']],
re_caochong:['male','wei',3,['rechengxiang','renxin']], 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']],
@ -162,6 +163,95 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_guohuai:['xiahouyuan','zhanghe'], re_guohuai:['xiahouyuan','zhanghe'],
}, },
skill:{ skill:{
//堪比界曹冲的界曹叡
rexingshuai:{
audio:2,
skillAnimation:true,
animationColor:'thunder',
trigger:{player:'dying'},
zhuSkill:true,
filter:function(event,player){
if(player.hp>0) return false;
if(!player.hasZhuSkill('rexingshuai')) return false;
return game.hasPlayer(function(current){
return current!=player&&current.group=='wei';
});
},
init:function(player){
if(player.hasZhuSkill('rexingshuai')){
player.markSkill('rexingshuai');
player.storage.rexingshuai=false;
}
},
intro:{
content:'limited',
},
limited:true,
mark:false,
content:function(){
'step 0'
player.awakenSkill('rexingshuai');
var targets=game.filterPlayer();
targets.sortBySeat(_status.currentPhase);
targets.remove(player);
event.targets=targets;
event.damages=[];
player.addSkill('rexingshuai_restore');
'step 1'
if(event.targets.length){
var current=event.targets.shift();
if(current.group=='wei'){
current.chooseBool('是否令'+get.translation(player)+'回复一点体力?').set('ai',function(){
return get.attitude(_status.event.player,_status.event.target)>2;
}).set('target',player);
event.current=current;
}
else{
event.redo();
}
}
else{
event.goto(3);
}
'step 2'
if(result.bool){
event.damages.push(event.current);
event.current.line(player,'green');
game.log(event.current,'令',player,'回复一点体力');
player.recover();
}
if(event.targets.length){
event.goto(1);
}
'step 3'
if(event.damages.length){
var next=game.createEvent('rexingshuai_next');
event.next.remove(next);
trigger.after.push(next);
next.targets=event.damages;
next.setContent(function(){
targets.shift().damage();
if(targets.length) event.redo();
});
}
},
subSkill:{
restore:{
trigger:{
global:'dieAfter',
},
charlotte:true,
forced:true,
filter:function(event,player){
return event.source&&event.source.isIn()&&event.source.hasSkill('mingjian2');
},
content:function(){
player.restoreSkill('rexingshuai');
game.log(player,'重置了','#g【兴衰】');
}
},
}
},
//不想突破可以不突破的界曹冲 //不想突破可以不突破的界曹冲
rechengxiang:{ rechengxiang:{
audio:2, audio:2,
@ -14664,6 +14754,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_caochong:'界曹冲', re_caochong:'界曹冲',
rechengxiang:'称象', rechengxiang:'称象',
rechengxiang_info:'当你受到伤害后你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于13的牌。若你获得的牌点数之和为13你复原武将牌。', rechengxiang_info:'当你受到伤害后你可以亮出牌堆顶的四张牌。然后获得其中任意数量点数之和不大于13的牌。若你获得的牌点数之和为13你复原武将牌。',
re_caorui:'界曹叡',
rexingshuai:'兴衰',
rexingshuai_info:'主公技限定技。当你进入濒死状态时你可令其他魏势力角色依次选择是否令你回复1点体力。然后这些角色依次受到1点伤害。有〖明鉴〗效果的角色于其回合内杀死角色后你重置〖兴衰〗。',
refresh_standard:'界限突破·标', refresh_standard:'界限突破·标',
refresh_feng:'界限突破·风', refresh_feng:'界限突破·风',

View File

@ -10591,20 +10591,19 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audio:2, audio:2,
enable:'phaseUse', enable:'phaseUse',
usable:1, usable:1,
viewAs:{name:'shunshou'}, viewAs:{
name:'shunshou',
storage:{spweiwu:true},
},
filterCard:{color:'red'}, filterCard:{color:'red'},
position:'hes', position:'hes',
check:function(card){ check:function(card){
return 7-get.value(card); return 7-get.value(card);
}, },
filterTarget:function(card,player,target){ mod:{
if(target.countCards('h')<player.countCards('h')) return false; targetInRange:function(card){
return lib.filter.filterTarget.apply(this,arguments); if(card.storage&&card.storage.spweiwu) return true;
}, },
viewAsFilter:function(player){
return player.countCards('hes',lib.skill.spweiwu.filterCard)>0&&game.hasPlayer(function(current){
return current.countCards('h')>=player.countCards('h')&&player.canUse('shunshou',current);
});
}, },
}, },
tuogu:{ tuogu:{
@ -23646,7 +23645,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
spniluan:'逆乱', spniluan:'逆乱',
spniluan_info:'出牌阶段,你可以将一张黑色牌当做【杀】使用。此【杀】使用结算完成后,若你未因此【杀】造成过伤害,则你令此【杀】不计入使用次数。', spniluan_info:'出牌阶段,你可以将一张黑色牌当做【杀】使用。此【杀】使用结算完成后,若你未因此【杀】造成过伤害,则你令此【杀】不计入使用次数。',
spweiwu:'违忤', spweiwu:'违忤',
spweiwu_info:'出牌阶段限一次,你可以将一张红色牌当做【顺手牵羊】对手牌数不小于你的角色使用。', spweiwu_info:'出牌阶段限一次,你可以将一张红色牌当无距离限制的【顺手牵羊】使用。',
spmouzhu:'谋诛', spmouzhu:'谋诛',
spmouzhu_backup:'谋诛', spmouzhu_backup:'谋诛',
spmouzhu_info:'出牌阶段限一次你可以选择任意名“距离为1”或“体力值等于你”的其他角色这些角色依次进行以下结算交给你一张手牌然后若其手牌数小于你则其视为对你使用一张【杀】或【决斗】。', spmouzhu_info:'出牌阶段限一次你可以选择任意名“距离为1”或“体力值等于你”的其他角色这些角色依次进行以下结算交给你一张手牌然后若其手牌数小于你则其视为对你使用一张【杀】或【决斗】。',

View File

@ -807,14 +807,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
trigger:{player:'useCardToPlayered'}, trigger:{player:'useCardToPlayered'},
usable:1, usable:1,
filter:function(event,player){ filter:function(event,player){
return player.countCards('e')>0&&event.card.name=='sha'&&event.getParent().triggeredTargets3.length==event.targets.length; return event.card.name=='sha'&&event.getParent().triggeredTargets3.length==event.targets.length;
}, },
check:function(event,player){ check:function(event,player){
return event.targets.some(target=>get.effect(target,event.card,player,player)<=0); return event.targets.some(target=>get.effect(target,event.card,player,player)<=0);
}, },
content:function(){ content:function(){
'step 0' 'step 0'
var num=player.countCards('e'); var num=player.countCards('e')+1;
event.num=num; event.num=num;
player.draw(num); player.draw(num);
'step 1' 'step 1'
@ -843,7 +843,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var eff=get.effect(targetx,{name:'sha'},player,player); var eff=get.effect(targetx,{name:'sha'},player,player);
delete _status._dctingxian_aiChecking; delete _status._dctingxian_aiChecking;
if(eff<0) return true; if(eff<0) return true;
}).length<player.countCards('e')) return [0,0,0,0.5]; }).length<player.countCards('e')+1) return [0,0,0,0.5];
} }
}, },
} }
@ -9371,7 +9371,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(num>=3){ if(num>=3){
str+=';始终跳过弃牌阶段'; str+=';始终跳过弃牌阶段';
} }
if(num>=4){ if(num==0||num>=4){
str+=';造成的伤害+1'; str+=';造成的伤害+1';
} }
return str; return str;
@ -9395,7 +9395,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"xinfu_xingzhao2":{ "xinfu_xingzhao2":{
audio:true, audio:true,
trigger:{ trigger:{
player:"phaseDiscardBefore", player:['phaseJudgeBefore','phaseDiscardBefore'],
}, },
forced:true, forced:true,
filter:function(event,player){ filter:function(event,player){
@ -9406,7 +9406,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
content:function(){ content:function(){
trigger.cancel(); trigger.cancel();
game.log(player,'跳过了弃牌阶段'); game.log(player,'跳过了'+(trigger.name=='phaseJudge'?'判定':'弃牌')+'阶段');
}, },
}, },
xinfu_xingzhao3:{ xinfu_xingzhao3:{
@ -9419,7 +9419,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var num=game.countPlayer(function(current){ var num=game.countPlayer(function(current){
return current.isDamaged(); return current.isDamaged();
}); });
return num>=4; return num==0||num>=4;
}, },
content:function(){ content:function(){
trigger.num++; trigger.num++;
@ -9874,7 +9874,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"xz_xunxun":"恂恂", "xz_xunxun":"恂恂",
"xz_xunxun_info":"摸牌阶段,你可以观看牌堆顶的四张牌,然后将其中的两张牌置于牌堆顶,并将其余的牌以任意顺序置于牌堆底。", "xz_xunxun_info":"摸牌阶段,你可以观看牌堆顶的四张牌,然后将其中的两张牌置于牌堆顶,并将其余的牌以任意顺序置于牌堆底。",
"xinfu_xingzhao":"兴棹", "xinfu_xingzhao":"兴棹",
"xinfu_xingzhao_info":"锁定技。若X≥1你视为拥有技能〖恂恂〗。若X≥2当你使用装备牌时你摸一张牌。若X≥3弃牌阶段开始时你跳过此阶段。若X≥4当你造成伤害时此伤害+1X为场上已受伤的角色数", "xinfu_xingzhao_info":"锁定技。若X≥1你视为拥有技能〖恂恂〗。若X≥2当你使用装备牌时你摸一张牌。若X≥3判定阶段或弃牌阶段开始时你跳过此阶段。若X=0或X≥4当你造成伤害时此伤害+1X为场上已受伤的角色数",
"xinfu_xingzhao2":"兴棹", "xinfu_xingzhao2":"兴棹",
"xinfu_xingzhao2_info":"", "xinfu_xingzhao2_info":"",
xinfu_xingzhao3:'兴棹', xinfu_xingzhao3:'兴棹',
@ -10287,7 +10287,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dczuojian_info:'出牌阶段结束时若你于此阶段使用过的牌数不小于体力值你可以选择一项1.令装备区牌数多于你的角色各摸一张牌2.弃置装备区牌数少于你的角色各一张手牌。', dczuojian_info:'出牌阶段结束时若你于此阶段使用过的牌数不小于体力值你可以选择一项1.令装备区牌数多于你的角色各摸一张牌2.弃置装备区牌数少于你的角色各一张手牌。',
sunlang:'孙狼', sunlang:'孙狼',
dctingxian:'铤险', dctingxian:'铤险',
dctingxian_info:'每回合限一次。当你使用【杀】指定最后一个目标后你可以摸X张牌然后令此【杀】对其中至多X个目标无效X为你装备区的牌数)。', dctingxian_info:'每回合限一次。当你使用【杀】指定最后一个目标后你可以摸X张牌然后令此【杀】对其中至多X个目标无效X为你装备区的牌数+1)。',
dcbenshi:'奔矢', dcbenshi:'奔矢',
dcbenshi_info:'锁定技。①你的攻击范围+1。②你的攻击范围基数不受装备区内武器牌的影响。③由你使用的【杀】的牌面信息中的“使用目标”产生的规则改为“攻击范围内的所有角色”。', dcbenshi_info:'锁定技。①你的攻击范围+1。②你的攻击范围基数不受装备区内武器牌的影响。③由你使用的【杀】的牌面信息中的“使用目标”产生的规则改为“攻击范围内的所有角色”。',
sunhuan:'孙桓', sunhuan:'孙桓',

View File

@ -8804,6 +8804,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
}, },
mingjian:{ mingjian:{
audio:2,
audioname:['re_caorui'],
enable:'phaseUse', enable:'phaseUse',
usable:1, usable:1,
filterTarget:function(card,player,target){ filterTarget:function(card,player,target){
@ -8916,6 +8918,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
huituo:{ huituo:{
audio:2, audio:2,
audioname:['re_caorui'],
trigger:{player:'damageEnd'}, trigger:{player:'damageEnd'},
direct:true, direct:true,
content:function(){ content:function(){
@ -13587,7 +13590,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xunyou:['re_xunyou','xunyou'], xunyou:['re_xunyou','xunyou'],
xuezong:['tw_xuezong','xuezong'], xuezong:['tw_xuezong','xuezong'],
huanghao:['huanghao','dc_huanghao','old_huanghao'], huanghao:['huanghao','dc_huanghao','old_huanghao'],
caorui:['caorui','old_caorui'], caorui:['re_caorui','caorui','old_caorui'],
sunziliufang:['dc_sunziliufang','sunziliufang'], sunziliufang:['dc_sunziliufang','sunziliufang'],
liyan:['liyan','old_liyan'], liyan:['liyan','old_liyan'],
zhangsong:['re_zhangsong','zhangsong'], zhangsong:['re_zhangsong','zhangsong'],