所有key武将和三国杀官方武将完成addSkill更改为addSkills的升级

This commit is contained in:
Spmario233 2024-02-14 18:38:48 +08:00
parent 38c141eab1
commit 793bc74e9a
10 changed files with 91 additions and 98 deletions

View File

@ -1774,12 +1774,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.awakenSkill('tomoyo_zhengfeng');
player.loseMaxHp();
'step 1'
player.removeSkill('tomoyo_wuwei');
player.removeSkills('tomoyo_wuwei');
'step 2'
player.draw(2);
player.recover();
'step 3'
player.addSkill('tomoyo_changshi');
player.addSkills('tomoyo_changshi');
},
},
},
@ -2195,12 +2195,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
multiline:true,
line:{color:[253, 153, 182]},
content(){
game.countPlayer(function(current){
game.filterPlayer().sortBySeat().forEach(function(current){
if(!targets.includes(current)){
current.removeSkill('seira_yinyuan');
current.removeSkills('seira_yinyuan');
}
else{
current.addSkillLog('seira_yinyuan');
current.addSkills('seira_yinyuan');
}
});
game.delayx();
@ -2350,7 +2350,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.draw(2);
player.markAuto('nsxingyun',[lib.skill.nsxingyun.getSixiang(trigger.card)]);
'step 1'
if(player.getStorage('nsxingyun').length>=4) player.addSkillLog('bazhen');
if(player.getStorage('nsxingyun').length>=4) player.addSkills('bazhen');
},
},
round:{
@ -3416,8 +3416,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(owner&&owner!=player) owner.give(card,player);
'step 1'
if(player.hp<player.maxHp) player.recover(player.maxHp-player.hp);
player.removeSkill('mia_shihui');
player.addSkill('mia_fengfa');
player.changeSkills(['mia_fengfa'],['mia_shihui']);
},
},
fail:{
@ -3841,7 +3840,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.storage.tenzen_lingyu=true;
player.loseMaxHp();
if(player.isHealthy()) player.draw(2);
player.addSkill('tenzen_tianquan');
player.addSkills('tenzen_tianquan');
},
},
tenzen_tianquan:{
@ -4633,7 +4632,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var cards=target.getCards('j');
if(cards.length) target.discard(cards);
'step 3'
target.addSkill('misuzu_zhongyuan');
target.addSkills('misuzu_zhongyuan');
},
derivation:'misuzu_zhongyuan',
ai:{
@ -4860,7 +4859,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content(){
player._chihaya_liewu=true;
player.loseMaxHp(4);
player.addSkill('chihaya_huairou');
player.addSkills('chihaya_huairou');
},
},
chihaya_huairou:{
@ -5248,7 +5247,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.logSkill('hiroto_huyu',target);
target.give(result.cards,player);
player.storage.hiroto_huyu2=target;
player.addSkill('hiroto_zonglve');
player.addSkills('hiroto_zonglve');
player.addSkill('hiroto_huyu2');
}
},
@ -5348,8 +5347,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content(){
player.awakenSkill('hiroto_tuolao');
player.draw(3);
player.removeSkill('hiroto_huyu');
player.addSkill('hiroto_zonglve');
player.changeSkills(['hiroto_zonglve'],['hiroto_huyu']);
},
},
shizuku_sizhi:{
@ -5711,7 +5709,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.recover();
var list=['umi_chaofan','ao_xishi','tsumugi_mugyu','kamome_jieban'];
var skill=list.randomGet();
player.addSkillLog(skill);
player.addSkills(skill);
player.flashAvatar('shiroha_jiezhao','key_'+skill.split('_')[0]);
}
},
@ -6286,8 +6284,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return info&&info.charlotte==true;
});
if(skills.length){
target.removeSkill(skills);
player.addSkill(skills);
target.removeSkills(skills);
player.addSkills(skills);
lib.translate.yuu_lveduo_info=lib.translate.yuu_lveduo_full_info;
}
if(target.name=='key_yusa'){
@ -6882,7 +6880,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(cards.length) player.discard(cards);
player.removeSkill('kud_qiaoshou_equip');
player.draw(cards.length);
player.addSkill('kud_chongzhen');
player.addSkills('kud_chongzhen');
'step 1'
var num=2-player.hp;
if(num) player.recover(num);
@ -8043,10 +8041,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
animationColor:'orange',
content(){
player.awakenSkill('yuzuru_deyi');
player.removeSkill('yuzuru_wuxin');
player.addSkillLog('yuzuru_kunfen');
player.addSkillLog('yuzuru_quji');
player.addSkillLog('yuzuru_wangsheng');
player.changeSkills(['yuzuru_kunfen','yuzuru_quji','yuzuru_wangsheng'],['yuzuru_wuxin']);
player.loseMaxHp();
player.recover();
},
@ -8243,8 +8238,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content(){
player.awakenSkill('ao_shixin');
player.removeSkill('ao_kuihun');
player.addSkill('ao_diegui');
player.changeSkills(['ao_diegui'],['ao_kuihun']);
player.gainMaxHp();
player.recover();
},
@ -8872,10 +8866,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content(){
player.awakenSkill('riki_mengzhong');
player.removeSkill('riki_spwenji');
player.removeSkills('riki_spwenji');
player.gainMaxHp();
player.recover();
player.addSkill('riki_chongzhen');
player.addSkills('riki_chongzhen');
},
},
riki_chongzhen:{
@ -10035,7 +10029,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content(){
player.awakenSkill('yui_takaramono');
player.addSkill('yui_yinhang');
player.addSkills('yui_yinhang');
player.storage._ichiban_no_takaramono=true;
player.gainMaxHp();
player.recover();
@ -10806,8 +10800,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.chooseControl(list).set('prompt','选择获得一个技能');
}
'step 4'
player.addSkill(result.control,get.groupnature(event.temp.group)||'key');
player.addSkill(result.control);
//player.addSkills(result.control,get.groupnature(event.temp.group)||'key');
player.addSkills(result.control);
var info=get.info(result.control);
if(info.zhuSkill){
if(!player.storage.zhuSkill_umi_qihuan) player.storage.zhuSkill_umi_qihuan=[];
@ -17649,8 +17643,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
if(result.bool){
var skills=lib.skill.junkyuheng.derivation.randomGets(result.cards.length);
player.addAdditionalSkill('junkyuheng',skills);
game.log(player,'获得了以下技能:','#g'+get.translation(skills));
player.changeSkills(skills,[]).set('$handle',(player,skills)=>{
player.addAdditionalSkill('junkyuheng',skills);
game.log(player,'获得了以下技能:','#g'+get.translation(skills));
});
}
},
group:'junkyuheng_remove',
@ -17664,22 +17660,25 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player.additionalSkills.junkyuheng&&player.additionalSkills.junkyuheng.length>0;
},
content(){
player.draw(player.additionalSkills.junkyuheng.length);
game.log(player,'失去了以下技能:','#g'+get.translation(player.additionalSkills.junkyuheng));
player.removeAdditionalSkill('junkyuheng');
const skills = player.additionalSkills.junkyuheng;
player.draw(skills.length);
player.changeSkills([],skills).set('$handle',(player,addSkills,removeSkills)=>{
game.log(player,'失去了以下技能:','#g'+get.translation(removeSkills));
player.removeAdditionalSkill('junkyuheng');
});
},
},
},
},
junkdili:{
audio:'dili',
trigger:{player:'logSkill'},
trigger:{player:'changeSkillsAfter'},
forced:true,
juexingji:true,
skillAnimation:true,
animationColor:'wood',
filter(event,player){
if(event.skill!='junkyuheng') return false;
if(!event.addSkill.length) return false;
var skills=player.getSkills(null,false,false).filter(function(i){
var info=get.info(i);
return info&&!info.charlotte;
@ -17734,12 +17733,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
var skills=result.links;
game.log(player,'失去了以下技能:','#g'+get.translation(skills));
player.removeSkill(skills.slice(0));
player.removeSkills(skills.slice(0));
}
var list=lib.skill.junkdili.derivation;
for(var i=0;i<Math.min(skills.length,list.length);i++){
player.addSkillLog(list[i]);
}
list=list.slice(0,Math.min(skills.length,list.length));
player.addSkills(list);
},
derivation:['junkshengzhi','junkquandao','junkchigang'],
},
@ -18952,7 +18950,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
junkyuheng:'驭衡',
junkyuheng_info:'锁定技。①回合开始时,你须弃置任意张花色不同的牌,从<span style="font-family: yuanli">东吴命运线·改</span>中随机获得等量的技能。②回合结束时,你失去所有因〖驭衡①〗获得的技能,然后摸等量的牌。',
junkdili:'帝力',
junkdili_info:'觉醒技。当你发动〖驭衡①〗若你拥有的技能数大于你的体力上限则你减1点体力上限选择失去任意个其他技能然后获得以下技能中的前等量个〖圣质〗/〖权道〗/〖持纲〗。',
junkdili_info:'觉醒技。当你获得技能若你拥有的技能数大于你的体力上限则你减1点体力上限选择失去任意个其他技能然后获得以下技能中的前等量个〖圣质〗/〖权道〗/〖持纲〗。',
junkshengzhi:'圣质',
junkshengzhi_info:'锁定技。当你发动非锁定技后,你令你本回合使用的下一张牌无距离和次数限制。',
junkquandao:'权道',

View File

@ -1629,7 +1629,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 0'
player.awakenSkill('dcqijing');
player.loseMaxHp();
player.addSkillLog('dccuixin');
player.addSkills('dccuixin');
'step 1'
if(game.countPlayer()>2){
if(player==trigger.player&&!trigger.skill){
@ -3250,7 +3250,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
skills.add(fullskills.randomRemove(1)[0]);
}
for(var i of skills){
player.addSkillLog(i);
player.addSkills(i);
}
player.markAuto('yuheng',skills);
},
@ -4108,7 +4108,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content(){
game.log(player,'成功完成使命');
player.awakenSkill('tspowei');
player.addSkillLog('shenzhu');
player.addSkills('shenzhu');
},
},
fail:{
@ -4350,7 +4350,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var target=result.targets[0];
player.line(target,'green');
target.storage.zuoxing=player;
target.addSkill('zuoxing');
target.addSkills('zuoxing');
}
},
derivation:'zuoxing',
@ -4771,7 +4771,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(lib.character[target.name]) list.addArray(lib.character[target.name][3]);
if(lib.character[target.name1]) list.addArray(lib.character[target.name1][3]);
if(lib.character[target.name2]) list.addArray(lib.character[target.name2][3]);
player.addSkill(list);
player.addSkills(list);
game.broadcastAll(function(list){
lib.character.key_shiki[3].addArray(list);
game.expandSkills(list);
@ -5094,8 +5094,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content(){
player.awakenSkill(event.name);
player.addSkill('tianxing');
player.addSkill('new_rejianxiong');
player.addSkills(['tianxing','new_rejianxiong']);
player.loseMaxHp();
player.gain(player.getExpansions('chuyuan'),'gain2','fromStorage');
},
@ -5126,7 +5125,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return 'rerende';
});
'step 2'
player.addSkillLog(result.control);
player.addSkills(result.control);
},
},
olzhiti:{
@ -5901,9 +5900,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player.countMark('renjie')>=4;
},
content(){
player.loseMaxHp();
player.addSkill('jilue');
player.awakenSkill('sbaiyin');
player.loseMaxHp();
player.addSkills('jilue');
},
derivation:['jilue','reguicai','fangzhu','rejizhi','rezhiheng','rewansha'],
},

View File

@ -527,12 +527,12 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
var num=Math.min(cards.length,4-player.countMark('dcmanwang'));
if(num>=1) player.addSkill('dcpanqin');
if(num>=1) player.addSkills('dcpanqin');
if(num>=2) player.draw();
if(num>=3) player.recover();
if(num>=4){
player.draw(2);
player.removeSkill('dcpanqin');
player.removeSkills('dcpanqin');
}
},
ai:{
@ -578,7 +578,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
switch(player.countMark('dcmanwang')){
case 1:
player.draw(2);
player.removeSkill('dcpanqin');
player.removeSkills('dcpanqin');
break;
case 2:
player.recover();
@ -587,7 +587,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.draw();
break;
case 4:
player.addSkill('dcpanqin');
player.addSkills('dcpanqin');
break;
}
'step 1'
@ -3337,11 +3337,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
'step 0'
player.awakenSkill('dcchongxu');
player.removeSkills('dchuiling');
player.gainMaxHp(Math.min(game.countPlayer(),player.countMark('dchuiling')));
player.removeSkill('dchuiling');
'step 1'
player.addSkillLog('dctaji');
player.addSkillLog('dcqinghuang');
player.addSkills(['dctaji','dcqinghuang']);
},
ai:{
order:function(itemp,player){
@ -7643,7 +7642,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else event.goto(3);
'step 2'
game.broadcastAll('closeDialog',event.videoId);
target.addSkillLog(result.control);
target.addSkills(result.control);
'step 3'
var storage=player.storage.dunshi;
if(event.links.includes(1)){
@ -10030,8 +10029,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(player.maxHp>player.hp) player.recover(player.maxHp-player.hp);
'step 2'
player.drawTo(Math.min(5,player.maxHp));
player.addSkillLog('llqshenwei');
player.addSkillLog('wushuang');
player.addSkills(['llqshenwei','wushuang']);
},
},
llqshenwei:{

View File

@ -3965,9 +3965,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
player.awakenSkill('jsrgzhasi');
trigger.cancel();
player.removeSkill('jsrgzhiheng');
game.log(player,'失去了技能','#g【猘横】');
player.addSkillLog('rezhiheng');
player.removeSkill();
player.changeSkills(['rezhiheng'],['jsrgzhiheng']);
player.addSkill('jsrgzhasi_undist');
},
derivation:'rezhiheng',
@ -7652,8 +7651,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.awakenSkill('jsrghuilie');
player.loseMaxHp();
'step 1'
player.addSkillLog('jsrgpingrong');
player.addSkillLog('feiying');
player.addSkills(['jsrgpingrong','feiying']);
}
},
jsrgpingrong:{

View File

@ -6783,7 +6783,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
player.awakenSkill('moucuan');
player.loseMaxHp();
player.addSkill('binghuo');
player.addSkills('binghuo');
},
ai:{combo:'jibing'},
},
@ -9902,7 +9902,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return info&&!info.hiddenSkill&&!info.zhuSkill&&!info.charlotte;
});
if(skills.length){
for(var i of skills) player.addSkillLog(i);
player.addSkills(skills);
game.broadcastAll(function(list){
game.expandSkills(list);
for(var i of list){
@ -9943,7 +9943,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return list.randomGet();
});
'step 1'
player.addSkillLog(result.control);
player.addSkills(result.control);
game.broadcastAll(function(skill){
var list=[skill];game.expandSkills(list);
for(var i of list){
@ -11584,8 +11584,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.gain(gains,'gain2');
}
'step 3'
player.addSkill('reqingce');
game.log(player,'获得了技能','#g【清侧】');
player.addSkills('reqingce');
player.loseMaxHp();
},
},
@ -12960,8 +12959,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
if(result.bool){
player.line(trigger.source,'fire');
trigger.source.addSkillLog('new_rewusheng');
trigger.source.addSkillLog('redangxian');
trigger.source.addSkills(['new_rewusheng','redangxian']);
}
},
},
@ -13110,8 +13108,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
animationColor:'thunder',
content:function(){
player.awakenSkill('remoucheng');
player.removeSkill('relianji');
player.addSkill('jingong');
player.changeSkills(['jingong','relianji']);
player.gainMaxHp();
player.recover();
},

View File

@ -1075,7 +1075,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.awakenSkill('pksanchen');
player.gainMaxHp();
player.recover();
player.addSkillLog('pkmiewu');
player.addSkills('pkmiewu');
},
ai:{
combo:'wuku',

View File

@ -200,7 +200,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
if(result.bool){
player.logSkill('junkguixin');
player.addSkillLog(result.links[0]);
player.addSkills(result.links[0]);
}
},
content_修改势力:function(){

View File

@ -519,11 +519,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var trigger=map.trigger;
player.awakenSkill('olsbranji');
var num=lib.skill.olsbranji.getNum(trigger,player);
const skills = [];
if(num>=player.getHp()){
player.addSkillLog('kunfen');
skills.push('kunfen');
player.storage.kunfen=true;
}
if(num<=player.getHp()) player.addSkillLog('zhaxiang');
if(num<=player.getHp()) skills.push('zhaxiang');
player.addSkills(skills);
if(player.countCards('h')!=player.getHandcardLimit()||player.isDamaged()){
var result,num1=player.countCards('h')-player.getHandcardLimit();
if(!num1) result={index:1};

View File

@ -559,8 +559,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
player.drawTo(player.maxHp);
'step 2'
player.addSkillLog('benghuai');
player.addSkillLog('reweizhong');
player.addSkills(['benghuai','reweizhong']);
}
},
reweizhong:{
@ -3861,7 +3860,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
player.awakenSkill('xsqianxin');
player.loseMaxHp();
player.addSkill('rejianyan');
player.addSkills('rejianyan');
},
derivation:'rejianyan',
},
@ -5588,7 +5587,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.recover();
player.draw(2);
player.loseMaxHp();
player.addSkill('xinpaiyi');
player.addSkills('xinpaiyi');
},
},
xinpaiyi:{
@ -6102,8 +6101,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.chooseDrawRecover(2,true);
"step 1"
player.loseMaxHp();
player.storage.olzhiji=true;
player.addSkill('reguanxing');
player.addSkills('reguanxing');
}
},
//界郭图张嶷
@ -7733,7 +7731,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
content:function(){
player.awakenSkill('olzaoxian');
player.loseMaxHp();
player.addSkill('jixi');
player.addSkills('jixi');
player.insertPhase();
}
},
@ -9603,7 +9601,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return ['olhuoji','bazhen'].randomGet();
};
'step 6'
player.addSkillLog(result.control);
player.addSkills(result.control);
},
derivation:['bazhen','olhuoji','olkanpo'],
ai:{
@ -10273,14 +10271,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audioname:['re_sunyi'],
inherit:'hunzi',
content:function(){
player.awakenSkill(event.name);
player.loseMaxHp();
//player.recover();
player.addSkill('reyingzi');
player.addSkill('gzyinghun');
player.addSkills(['reyingzi','gzyinghun']);
player.addTempSkill('olhunzi_effect');
game.log(player,'获得了技能','#g【英姿】','和','#g【英魂】');
player.awakenSkill(event.name);
player.storage[event.name]=true;
},
subSkill:{
effect:{
@ -11035,7 +11030,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1'
if(!result.bool) target.loseHp();
'step 2'
target.addSkillLog('rechanyuan');
target.addSkills('rechanyuan');
if(targets.length) event.goto(0);
},
},
@ -13155,7 +13150,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.awakenSkill('qinxue');
player.loseMaxHp();
player.chooseDrawRecover(2,true);
player.addSkill('gongxin');
player.addSkills('gongxin');
}
},
qingjian:{
@ -14025,7 +14020,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
player.awakenSkill('qianxin');
player.addSkill('jianyan');
player.addSkills('jianyan');
player.loseMaxHp();
}
},

View File

@ -12,7 +12,7 @@ export const Content = {
event.trigger(event.name);
},
//变更技能
changeSkills: async function (event,trigger,player) {
async changeSkills (event,trigger,player) {
//去重检查
event.addSkill.unique();
event.removeSkill.unique();
@ -26,8 +26,14 @@ export const Content = {
await event.trigger('changeSkillsBefore');
await event.trigger('changeSkillsBegin');
//处理失去和获得的技能
if(event.addSkill.length) player.addSkillLog(event.addSkill);
if(event.removeSkill.length) player.removeSkillLog(event.removeSkill);
if(event.$handle){
event.$handle(player,event.addSkill,event.removeSkill,event);
}
else{
if(event.addSkill.length) player.addSkillLog(event.addSkill);
if(event.removeSkill.length) player.removeSkillLog(event.removeSkill);
}
//手动触发时机
await event.trigger('changeSkillsEnd');
await event.trigger('changeSkillsAfter');
},