This commit is contained in:
Spmario233 2021-03-28 12:32:05 +08:00
parent c0c3245bf9
commit 96e90e7b99
35 changed files with 649 additions and 136 deletions

BIN
audio/die/luyusheng.mp3 Normal file

Binary file not shown.

BIN
audio/die/re_caozhen.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/recangchu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/recangchu2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/rehuaiyi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/rehuaiyi2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/reshishou1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/reshishou2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/residi1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/residi2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhente1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhente2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhiwei1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zhiwei2.mp3 Normal file

Binary file not shown.

View File

@ -1458,8 +1458,8 @@ game.import('card',function(lib,game,ui,get,ai,_status){
value:[5,1], value:[5,1],
useful:[3,1], useful:[3,1],
result:{ result:{
player:function(player,target){ target:function(player,target){
if(current.hasSkill('gw_ciguhanshuang')) return 0; if(target.hasSkill('gw_ciguhanshuang')) return 0;
return -1; return -1;
} }
}, },

View File

@ -1804,7 +1804,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
}, },
charlotte:true, charlotte:true,
filter:function(event,player){ filter:function(event,player){
return player.storage.qinggang2&&event.card&&player.storage.qinggang2.contains(event.card); return player.storage.qinggang2&&event.card&&player.storage.qinggang2.contains(event.card)&&(event.name!='damage'||event.notLink());
}, },
silent:true, silent:true,
forced:true, forced:true,

View File

@ -61,7 +61,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
key_shiroha:['female','key',3,['shiroha_yuzhao','shiroha_guying','shiroha_jiezhao']], key_shiroha:['female','key',3,['shiroha_yuzhao','shiroha_guying','shiroha_jiezhao']],
key_shizuku:['female','key',3,['shizuku_sizhi','shizuku_biyi','shizuku_sanhua']], key_shizuku:['female','key',3,['shizuku_sizhi','shizuku_biyi','shizuku_sanhua']],
key_hiroto:['male','key',3,['hiroto_huyu','hiroto_tuolao']], key_hiroto:['male','key',3,['hiroto_huyu','hiroto_tuolao']],
key_sakuya:['male','key',4,['youlong','luanfeng','sakuya_junbu']], key_sakuya:['male','key',3,['youlong','luanfeng','sakuya_junbu']],
key_youta:['male','key',4,[]], key_youta:['male','key',4,[]],
key_rumi:['female','key','3/4',['rumi_shuwu']], key_rumi:['female','key','3/4',['rumi_shuwu']],
key_chihaya:['female','key',3,['chihaya_liewu','chihaya_youfeng']], key_chihaya:['female','key',3,['chihaya_liewu','chihaya_youfeng']],
@ -142,6 +142,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
// ns_sunhao:['male','qun',3,[]], // ns_sunhao:['male','qun',3,[]],
ns_xinnanhua:['male','qun',3,['ns_xiandao','ns_xiuzheng','ns_chuanshu'],[]], ns_xinnanhua:['male','qun',3,['ns_xiandao','ns_xiuzheng','ns_chuanshu'],[]],
ns_caimao:['male','qun',4,['nsdingzhou']], ns_caimao:['male','qun',4,['nsdingzhou']],
ns_luyusheng:['female','wu',3,['nshuaishuang','nsfengli']],
old_jiakui:['male','wei',4,['tongqu','xinwanlan']], old_jiakui:['male','wei',4,['tongqu','xinwanlan']],
ol_guohuai:['male','wei',3,['rejingce']], ol_guohuai:['male','wei',3,['rejingce']],
@ -172,7 +173,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
diy:{ diy:{
diy_yijiang:["key_kud","key_misuzu","key_kamome","key_nao", diy_yijiang:["key_kud","key_misuzu","key_kamome","key_nao",
"ns_huangchengyan","ns_sunchensunjun","ns_yuanxi","ns_caoshuang"], "ns_huangchengyan","ns_sunchensunjun","ns_yuanxi","ns_caoshuang"],
diy_tieba:["ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua"], diy_tieba:["ns_zuoci","ns_lvzhi","ns_wangyun","ns_nanhua","ns_nanhua_left","ns_nanhua_right","ns_huamulan","ns_huangzu","ns_jinke","ns_yanliang","ns_wenchou","ns_caocao","ns_caocaosp","ns_zhugeliang","ns_wangyue","ns_yuji","ns_xinxianying","ns_guanlu","ns_simazhao","ns_sunjian","ns_duangui","ns_zhangbao","ns_masu","ns_zhangxiu","ns_lvmeng","ns_shenpei","ns_yujisp","ns_yangyi","ns_liuzhang","ns_xinnanhua","ns_luyusheng"],
diy_fakenews:["diy_wenyang","ns_zhangwei","ns_caimao"], diy_fakenews:["diy_wenyang","ns_zhangwei","ns_caimao"],
diy_default:["diy_feishi","diy_liuyan","diy_yuji","diy_caiwenji","diy_lukang","diy_zhenji","diy_liufu","diy_xizhenxihong","diy_liuzan","diy_zaozhirenjun","diy_yangyi","diy_tianyu"], diy_default:["diy_feishi","diy_liuyan","diy_yuji","diy_caiwenji","diy_lukang","diy_zhenji","diy_liufu","diy_xizhenxihong","diy_liuzan","diy_zaozhirenjun","diy_yangyi","diy_tianyu"],
diy_key:["key_lucia","key_kyousuke","key_yuri","key_haruko","key_umi","key_rei","key_komari","key_yukine","key_yusa","key_misa","key_masato","key_iwasawa","key_kengo","key_yoshino","key_yui","key_tsumugi","key_saya","key_harukakanata","key_inari","key_shiina","key_sunohara","key_rin","key_sasami","key_akane","key_doruji","key_yuiko","key_riki","key_hisako","key_hinata","key_noda","key_tomoya","key_nagisa","key_ayato","key_ao","key_yuzuru","sp_key_kanade","key_mio","key_midori","key_kyoko","key_shizuru","key_shiorimiyuki","key_miki","key_shiori","key_kaori","sp_key_yuri","key_akiko","key_abyusa","key_godan","key_yuu","key_ryoichi","key_kotori","key_jojiro","key_shiroha","key_shizuku","key_hiroto","key_sakuya","key_youta","key_rumi","key_chihaya"], diy_key:["key_lucia","key_kyousuke","key_yuri","key_haruko","key_umi","key_rei","key_komari","key_yukine","key_yusa","key_misa","key_masato","key_iwasawa","key_kengo","key_yoshino","key_yui","key_tsumugi","key_saya","key_harukakanata","key_inari","key_shiina","key_sunohara","key_rin","key_sasami","key_akane","key_doruji","key_yuiko","key_riki","key_hisako","key_hinata","key_noda","key_tomoya","key_nagisa","key_ayato","key_ao","key_yuzuru","sp_key_kanade","key_mio","key_midori","key_kyoko","key_shizuru","key_shiorimiyuki","key_miki","key_shiori","key_kaori","sp_key_yuri","key_akiko","key_abyusa","key_godan","key_yuu","key_ryoichi","key_kotori","key_jojiro","key_shiroha","key_shizuku","key_hiroto","key_sakuya","key_youta","key_rumi","key_chihaya"],
@ -258,6 +259,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ns_yuanxi:'#g食茸二十四', ns_yuanxi:'#g食茸二十四',
ns_caoshuang:'#g荬庀芬兰', ns_caoshuang:'#g荬庀芬兰',
ns_luyusheng:'#g猫咪大院 - 魚と水',
ns_caimao:'#gP尔号玩家◆', ns_caimao:'#gP尔号玩家◆',
diy_wenyang:'#g最粗的梦想XD', diy_wenyang:'#g最粗的梦想XD',
ns_zuoci:'#bskystarwuwei', ns_zuoci:'#bskystarwuwei',
@ -7400,40 +7402,251 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
}, },
junktaoluan_backup:{}, junktaoluan_backup:{},
nshuaishuang:{
ns_chuanshu:{ trigger:{player:'phaseJieshuBegin'},
audio:["xingshuai",2], forced:true,
trigger:{ content:function(){
global:"dying", 'step 0'
}, var card=get.cardPile(function(card){
priority:8, return card.name=='tao';
unique:true, });
skillAnimation:true, if(card){
animationColor:"water", player.gain(card,'gain2');
filter:function (event,player){ }
return event.player.hp<=0&&event.player!=player; else event.finish();
}, 'step 1'
check:function (event,player){ game.updateRoundNumber();
return get.attitude(player,event.player)>0; player.loseHp();
}, },
logTarget:"player", },
content:function (){ nsfengli:{
'step 0' trigger:{player:'phaseEnd'},
trigger.player.chooseControl('releiji','guidao').set('prompt',''+get.translation(trigger.player)+'获得一项技能'); direct:true,
goon=true; filter:function(event,player){
if(!goon){ return player.countCards('h')>0&&game.hasPlayer(function(current){
event.finish(); return current!=player&&!current.hasSkill('nsfengli_use');
});
},
content:function(){
'step 0'
player.chooseTarget(get.prompt2('nsfengli'),function(card,player,target){
return target!=player&&!target.hasSkill('nsfengli_use');
}).set('ai',function(target){
return get.attitude(_status.event.player,target)/(5+target.countCards('h'));
});
'step 1'
if(result.bool){
var target=result.targets[0];
player.logSkill('nsfengli',target);
var cards=player.getCards('h');
player.addGaintag(cards,'nsfengli2');
player.addSkill('nsfengli2');
player.showHandcards();
target.addSkill('nsfengli_use');
target.storage.nsfengli_use=player;
}
},
group:['nsfengli_draw','nsfengli_clear'],
onremove:function(player){
player.removeSkill('nsfengli2');
},
},
nsfengli_draw:{
trigger:{
player:['loseAfter','nsfengliClear'],
global:['gainAfter','equipAfter','addJudgeAfter','loseAsyncAfter'],
target:'nsfengliUse',
},
direct:true,
charlotte:true,
filter:function(event,player,name){
if(name!='nsfengliUse'&&name!='nsfengliClear'){
var evt=event.getl(player);
if(!evt||!evt.gaintag_map) return false;
var bool=false;
for(var i in evt.gaintag_map){
if(evt.gaintag_map[i].contains('nsfengli2')) bool=true;break;
} }
'step 1' if(!bool) return false;
trigger.player.addSkillLog(result.control); }
trigger.player.recover(1-trigger.player.hp); var hs=player.countCards('h');
trigger.player.draw(2); return game.hasPlayer(function(current){
trigger.player.storage.ns_chuanshu2=player; return current!=player&&current.countCards('h')<hs;
trigger.player.addSkill('ns_chuanshu2'); });
//game.broadcastAll()+trigger.player.node.avatar.setBackgroundImage('extension/群英会/ns_zhangjiao.jpg'); },
//player.removeSkill('ns_chuanshu'); content:function(){
player.awakenSkill('ns_chuanshu'); 'step 0'
player.chooseTarget('奉礼:是否令一名手牌数小于你的其他角色摸一张牌?',function(card,player,target){
return target!=player&&target.countCards('h')<player.countCards('h');
}).set('ai',function(target){
var player=_status.event.player;
var att=get.attitude(player,target)/Math.sqrt(1+target.countCards('h'));
if(target.hasSkillTag('nogain')) att/=10;
return att;
});
'step 1'
if(result.bool){
var target=result.targets[0];
player.logSkill('nsfengli',target);
target.draw();
}
},
},
nsfengli_clear:{
trigger:{player:'phaseBegin'},
forced:true,
filter:function(event,player){
return player.hasSkill('nsfengli2');
},
content:function(){
var hs=player.getCards('h',function(card){
return card.hasGaintag('nsfengli2');
});
if(hs.length) event.trigger('nsfengliClear');
player.removeSkill('nsfengli2');
},
},
nsfengli2:{
mark:true,
intro:{
mark:function(dialog,content,player){
var hs=player.getCards('h',function(card){
return card.hasGaintag('nsfengli2');
});
if(hs.length) dialog.addAuto(hs);
else dialog.addText('没有“礼”');
},
},
onremove:function(player){
player.removeGaintag('nsfengli2');
game.countPlayer(function(current){
if(current.storage.nsfengli_use==player) current.removeSkill('nsfengli_use');
})
},
},
nsfengli_use:{
hiddenCard:function(player,name){
if(player==_status.currentPhase) return false;
var target=player.storage.nsfengli_use;
var cards=target.getCards('h',function(card){
return card.hasGaintag('nsfengli2');
});
for(var i of cards){
if(get.name(i,target)==name) return true;
}
return false;
},
enable:['chooseToUse','chooseToRespond'],
charlotte:true,
onremove:true,
filter:function(event,player){
if(player==_status.currentPhase) return false;
var target=player.storage.nsfengli_use;
var cards=target.getCards('h',function(card){
return card.hasGaintag('nsfengli2');
});
for(var i of cards){
if(event.filterCard({
name:get.name(i,target),
nature:get.nature(i,target),
isCard:true,
},player,event)) return true;
}
return false;
},
chooseButton:{
dialog:function(event,player){
var target=player.storage.nsfengli_use;
var cards=target.getCards('h',function(card){
return card.hasGaintag('nsfengli2');
});
return ui.create.dialog('奉礼',cards);
},
filter:function(button,player){
var evt=_status.event.getParent();
var target=player.storage.nsfengli_use;
return evt.filterCard({
name:get.name(button.link,target),
nature:get.nature(button.link,target),
isCard:true,
},player,evt);
},
check:function(button){
var player=_status.event.player;
var evt=_status.event.getParent();
if(evt.dying) return get.attitude(player,evt.dying);
return 1;
},
backup:function(links,player){
var target=player.storage.nsfengli_use;
return {
viewAs:{
name:get.name(links[0],target),
nature:get.nature(links[0],target),
isCard:true,
},
card:links[0],
filterCard:()=>false,
selectCard:-1,
precontent:function(){
var card=lib.skill.nsfengli_use_backup.card;
var target=player.storage.nsfengli_use;
event.target=target;
player.logSkill('nsfengli',target);
delete event.result.skill;
player.showCards(card,get.translation(player)+'发动了【奉礼】');
card.removeGaintag('nsfengli2');
event.trigger('nsfengliUse');
},
};
},
ai:{
hasSha:true,
hasShan:true,
skillTagFilter:function(player,tag){
var name='s'+tag.slice(4);
return lib.skill.nsfengli_use.hiddenCard(player,name);
},
},
},
ai:{
order:8,
result:{
player:1,
},
},
},
ns_chuanshu:{
audio:["xingshuai",2],
trigger:{
global:"dying",
},
priority:8,
unique:true,
skillAnimation:true,
animationColor:"water",
filter:function (event,player){
return event.player.hp<=0&&event.player!=player;
},
check:function (event,player){
return get.attitude(player,event.player)>0;
},
logTarget:"player",
content:function (){
'step 0'
trigger.player.chooseControl('releiji','guidao').set('prompt',''+get.translation(trigger.player)+'获得一项技能');
goon=true;
if(!goon){
event.finish();
}
'step 1'
trigger.player.addSkillLog(result.control);
trigger.player.recover(1-trigger.player.hp);
trigger.player.draw(2);
trigger.player.storage.ns_chuanshu2=player;
trigger.player.addSkill('ns_chuanshu2');
player.awakenSkill('ns_chuanshu');
}, },
}, },
ns_xiandao1:{ ns_xiandao1:{
@ -12144,6 +12357,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
ns_yangyi:'杨仪', ns_yangyi:'杨仪',
ns_liuzhang:'刘璋', ns_liuzhang:'刘璋',
ns_xinnanhua:'南华老仙', ns_xinnanhua:'南华老仙',
ns_luyusheng:'陆郁生',
sp_key_yuri:'SP仲村由理', sp_key_yuri:'SP仲村由理',
key_lucia:'此花露西娅', key_lucia:'此花露西娅',
@ -12595,6 +12809,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
diy_wenyang:'文鸯', diy_wenyang:'文鸯',
ns_zhangwei:'张葳', ns_zhangwei:'张葳',
nshuaishuang:'怀霜',
nshuaishuang_info:'锁定技,结束阶段,你从牌堆/弃牌堆获得一张【桃】然后失去1点体力。',
nsfengli:'奉礼',
nsfengli2:'奉礼',
nsfengli_draw:'奉礼',
nsfengli_clear:'奉礼',
nsfengli_use:'奉礼',
nsfengli_info:'回合结束时,你可以选择一名其他角色并展示所有手牌。你将所有手牌标记为“礼”。你的“礼”对所有角色可见。当该角色于回合外需要使用或打出牌时,其可移去一张“礼”的标记,然后视为使用或打出一张与此牌名称相同的牌。当你的“礼”减少时,你可令一名手牌数小于你的角色摸一张牌。你的回合开始时,你移去所有“礼”的标记,然后注销该角色对“礼”的操作权限。',
nsqiyue:'骑钺', nsqiyue:'骑钺',
nsqiyue_info:'锁定技,当有角色的武将牌状态改变后,你摸一张牌。', nsqiyue_info:'锁定技,当有角色的武将牌状态改变后,你摸一张牌。',
nsxuezhu:'血逐', nsxuezhu:'血逐',

View File

@ -4416,7 +4416,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
autoViewAs:'sha', autoViewAs:'sha',
ai:{ ai:{
order:function(){ order:function(){
return lib.card.sha.ai.order()+0.5; return get.order({name:'sha'})+0.5;
} }
} }
}, },
@ -4429,7 +4429,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
autoViewAs:'jiu', autoViewAs:'jiu',
ai:{ ai:{
order:function(){ order:function(){
return lib.card.jiu.ai.order()+0.5; return get.order({name:'jiu'})+0.5;
} }
} }
}, },

View File

@ -6953,7 +6953,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xinzhilve_info:'出牌阶段限一次你可以失去1点体力并选择一项1.移动场上的一张牌2.视为使用一张无距离限制且不计入次数限制的【杀】并摸一张牌。然后你本回合的手牌上限+1。', xinzhilve_info:'出牌阶段限一次你可以失去1点体力并选择一项1.移动场上的一张牌2.视为使用一张无距离限制且不计入次数限制的【杀】并摸一张牌。然后你本回合的手牌上限+1。',
xinxhzhiyan:'治严', xinxhzhiyan:'治严',
xinxhzhiyan_false:'治严', xinxhzhiyan_false:'治严',
xinxhzhiyan_info:'出牌阶段每项各限一次,若你的手牌数:大于体力上限则你可以将X张手牌交给一名其他角色小于体力值则你可以摸X张牌且本阶段内不能再对其他角色使用牌。X为你的手牌数与体力上限之差的绝对值', xinxhzhiyan_info:'出牌阶段每项各限一次,若你的手牌数:大于体力则你可以将X张手牌交给一名其他角色X为你的手牌数与体力值之差小于体力上限则你可以摸X张牌且本阶段内不能再对其他角色使用牌。X为你的手牌数与体力上限之差',
weifeng:'威风', weifeng:'威风',
weifeng2:'威风', weifeng2:'威风',
weifeng3:'威风', weifeng3:'威风',

View File

@ -452,6 +452,7 @@ window.noname_character_rank={
're_fazheng', 're_fazheng',
'huaxin', 'huaxin',
're_chunyuqiong', 're_chunyuqiong',
'ns_luyusheng',
], ],
bp:[ bp:[
'chess_diaochan', 'chess_diaochan',
@ -816,6 +817,7 @@ window.noname_character_rank={
'xin_panzhangmazhong', 'xin_panzhangmazhong',
're_xiaoqiao', 're_xiaoqiao',
'caoanmin', 'caoanmin',
'luyusheng',
], ],
bm:[ bm:[
'diy_xizhenxihong', 'diy_xizhenxihong',
@ -1276,6 +1278,7 @@ window.noname_character_rank={
'jin_xiahouhui', 'jin_xiahouhui',
'jin_simashi', 'jin_simashi',
'zhangling', 'zhangling',
'ns_luyusheng',
'key_haruko', 'key_haruko',
'key_akiko', 'key_akiko',
'key_sunohara', 'key_sunohara',

View File

@ -4851,7 +4851,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
viewAs:{ viewAs:{
name:"wuxie", name:"wuxie",
}, },
prompt:"将一张黑色牌当无懈可击使用", prompt:"将一张黑色牌当无懈可击使用",
check:function (card){return 8-get.value(card)}, check:function (card){return 8-get.value(card)},
}, },
rejieming:{ rejieming:{
@ -8830,7 +8830,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
rezhuikong_info:'其他角色的回合开始时,若你已受伤,你可与其拼点:若你赢,本回合该角色只能对自己使用牌;若你没赢,你获得其拼点的牌,然后其视为对你使用一张【杀】。', rezhuikong_info:'其他角色的回合开始时,若你已受伤,你可与其拼点:若你赢,本回合该角色只能对自己使用牌;若你没赢,你获得其拼点的牌,然后其视为对你使用一张【杀】。',
re_gongsunyuan:'界公孙渊', re_gongsunyuan:'界公孙渊',
rehuaiyi:'怀异', rehuaiyi:'怀异',
tehuaiyi_info:'出牌阶段限一次你可以展示所有手牌若这些牌的颜色全部相同你摸一张牌并将此技能于本阶段内改为“限两次”然后终止此技能的结算流程不全部相同则你选择一种颜色并弃置该颜色的所有手牌然后你可以获得至多X名角色的各一张牌X为你以此法弃置的手牌数。若你以此法获得的牌不少于两张则你失去1点体力。', rehuaiyi_info:'出牌阶段限一次你可以展示所有手牌若这些牌的颜色全部相同你摸一张牌并将此技能于本阶段内改为“限两次”然后终止此技能的结算流程不全部相同则你选择一种颜色并弃置该颜色的所有手牌然后你可以获得至多X名角色的各一张牌X为你以此法弃置的手牌数。若你以此法获得的牌不少于两张则你失去1点体力。',
re_caozhen:'界曹真', re_caozhen:'界曹真',
residi:'司敌', residi:'司敌',
residi_push:'司敌', residi_push:'司敌',

View File

@ -10,13 +10,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
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_sticker:['sp_gongsunzan','sp_simazhao','sp_wangyuanji','sp_xinxianying','sp_liuxie'], sp_sticker:['sp_gongsunzan','sp_simazhao','sp_wangyuanji','sp_xinxianying','sp_liuxie'],
sp_guozhan:["zangba","shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"], sp_guozhan:["zangba","shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"],
sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zhangren","zoushi","huaxin"], sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zhangren","zoushi","huaxin","luyusheng"],
sp_single:["niujin"], sp_single:["niujin"],
sp_others:["hanba","caiyang"], sp_others:["hanba","caiyang"],
}, },
}, },
characterFilter:{}, characterFilter:{},
character:{ character:{
luyusheng:['female','wu',3,['zhente','zhiwei']],
ol_xinxianying:['female','wei',3,['xincaishi','xinzhongjian']], ol_xinxianying:['female','wei',3,['xincaishi','xinzhongjian']],
huaxin:['male','wei',3,['wanggui','xibing']], huaxin:['male','wei',3,['wanggui','xibing']],
wolongfengchu:['male','shu',4,['youlong','luanfeng']], wolongfengchu:['male','shu',4,['youlong','luanfeng']],
@ -97,7 +98,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp_lvmeng:['male','wu',3,['tanhu','mouduan']], sp_lvmeng:['male','wu',3,['tanhu','mouduan']],
guansuo:['male','shu',4,['xinzhengnan','xiefang']], guansuo:['male','shu',4,['xinzhengnan','xiefang']],
tadun:['male','qun',4,['luanzhan']], tadun:['male','qun',4,['reluanzhan']],
yanbaihu:['male','qun',4,['zhidao','jili']], yanbaihu:['male','qun',4,['zhidao','jili']],
chengyu:['male','wei',3,['shefu','benyu']], chengyu:['male','wei',3,['shefu','benyu']],
@ -153,6 +154,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
//kaisa:["male","western",4,["zhengfu"]], //kaisa:["male","western",4,["zhengfu"]],
}, },
characterIntro:{ characterIntro:{
luyusheng:'陆郁生(?年-三国时期吴国官员陆绩之女。陆郁生的父亲陆绩是吴郡公认的才子又是当时吴郡陆氏的领袖。陆绩赴任担任郁林太守遂取此名。陆郁生年少的时候就定下坚贞的志向。建安二十四年219年)陆绩早亡她与两个兄弟陆宏、陆睿当时都只有几岁一起返回吴县被他们的从兄陆瑁接回抚养。13周岁的陆郁生嫁给同郡出身的张白为妻。出嫁3个月后张白因为其兄张温一族的案件遭到连坐被处以流刑后死于流放地陆郁生成为了寡妇其后公开宣言不再改嫁困难于生计但拒绝了所有提亲在艰苦中从未停止服侍、照顾张白的姐妹。事情传到朝廷皇帝褒奖陆郁生号其为“义姑”。她的表侄姚信在文集中称赞她的义举。',
wolongfengchu:'沙比武将,懒得复制粘贴,自己去看诸葛亮和庞统的介绍吧。', wolongfengchu:'沙比武将,懒得复制粘贴,自己去看诸葛亮和庞统的介绍吧。',
huaxin:'华歆157年232年1月30日字子鱼汉族。平原郡高唐县人今山东省高唐县。汉末至三国曹魏初年名士、重臣。华歆早年拜太尉陈球为师与卢植、郑玄、管宁等为同门又与管宁、邴原共称一龙华歆为龙头。汉灵帝时华歆被举为孝廉任郎中因病去官。又被大将军何进征召为尚书郎。后任豫章太守甚得民心。孙策率军南下华歆举郡投降被奉为上宾。官渡之战时被征为议郎、参司空军事。入为尚书、侍中又代荀彧为尚书令。丞相曹操讨孙权时授华歆为军师。后为魏王国的御史大夫。曹丕即王位拜华歆为相国封安乐乡侯。曹魏建立后其相国职名改称司徒。魏明帝即位升任太尉晋封博平侯。太和五年十二月232年1月华歆去世年七十五谥号“敬”。有文集三十卷今佚失其余见《全三国文》。', huaxin:'华歆157年232年1月30日字子鱼汉族。平原郡高唐县人今山东省高唐县。汉末至三国曹魏初年名士、重臣。华歆早年拜太尉陈球为师与卢植、郑玄、管宁等为同门又与管宁、邴原共称一龙华歆为龙头。汉灵帝时华歆被举为孝廉任郎中因病去官。又被大将军何进征召为尚书郎。后任豫章太守甚得民心。孙策率军南下华歆举郡投降被奉为上宾。官渡之战时被征为议郎、参司空军事。入为尚书、侍中又代荀彧为尚书令。丞相曹操讨孙权时授华歆为军师。后为魏王国的御史大夫。曹丕即王位拜华歆为相国封安乐乡侯。曹魏建立后其相国职名改称司徒。魏明帝即位升任太尉晋封博平侯。太和五年十二月232年1月华歆去世年七十五谥号“敬”。有文集三十卷今佚失其余见《全三国文》。',
caoshuang:'曹爽249年2月9日字昭伯沛国谯县今安徽亳州市人。三国时期魏国权臣大司马曹真长子。曹爽体态肥胖凭借宗室身份出入宫廷交好太子曹叡。魏明帝即位起家员外散骑侍郎累迁城门校尉、散骑常侍转武卫将军。太和五年231年袭封邵陵侯。景初三年239年魏明帝曹叡病危拜大将军、假黄钺与司马懿并为托孤大臣。少帝曹芳即位加侍中改封武安侯。势倾四海声震天下。任用私人专权乱政侵吞公产。伐蜀失败虚耗国力。起居逾制软禁郭太后。正始十年太傅司马懿发动高平陵政变掌握魏国大权。曹爽失去大将军职务以谋反之罪处死夷灭三族。', caoshuang:'曹爽249年2月9日字昭伯沛国谯县今安徽亳州市人。三国时期魏国权臣大司马曹真长子。曹爽体态肥胖凭借宗室身份出入宫廷交好太子曹叡。魏明帝即位起家员外散骑侍郎累迁城门校尉、散骑常侍转武卫将军。太和五年231年袭封邵陵侯。景初三年239年魏明帝曹叡病危拜大将军、假黄钺与司马懿并为托孤大臣。少帝曹芳即位加侍中改封武安侯。势倾四海声震天下。任用私人专权乱政侵吞公产。伐蜀失败虚耗国力。起居逾制软禁郭太后。正始十年太傅司马懿发动高平陵政变掌握魏国大权。曹爽失去大将军职务以谋反之罪处死夷灭三族。',
@ -162,7 +164,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
huban:'为《三国演义》所杜撰的人物,正史无记载,荥阳太守王植麾下从事、桓帝时议郎胡华之子。关羽过五关斩六将时其中一关就是王植所镇守,胡班奉命放火夜袭关公,因敬服公之气概,并得其父托公所带家书,班看毕,叹曰:“险些误杀忠良!”故将之放走。胡班到荆州来投降关公,公念其旧日相救之情,甚爱之;令随费诗入川,见汉中王受爵。费诗辞别关公,带了胡班,自回蜀中去了。', huban:'为《三国演义》所杜撰的人物,正史无记载,荥阳太守王植麾下从事、桓帝时议郎胡华之子。关羽过五关斩六将时其中一关就是王植所镇守,胡班奉命放火夜袭关公,因敬服公之气概,并得其父托公所带家书,班看毕,叹曰:“险些误杀忠良!”故将之放走。胡班到荆州来投降关公,公念其旧日相救之情,甚爱之;令随费诗入川,见汉中王受爵。费诗辞别关公,带了胡班,自回蜀中去了。',
chunyuqiong:'淳于琼200年字仲简颍川治今河南禹州人。东汉时期官吏于汉灵帝中平五年188被任命为西园八校尉之一的右校尉与蹇硕、袁绍、鲍鸿、曹操、赵融、冯芳、夏牟同列。为袁绍大将与张郃、高览等人齐名。在官渡之战时镇守乌巢遭到曹操的偷袭而惨败自己也被曹操处斩。', chunyuqiong:'淳于琼200年字仲简颍川治今河南禹州人。东汉时期官吏于汉灵帝中平五年188被任命为西园八校尉之一的右校尉与蹇硕、袁绍、鲍鸿、曹操、赵融、冯芳、夏牟同列。为袁绍大将与张郃、高览等人齐名。在官渡之战时镇守乌巢遭到曹操的偷袭而惨败自己也被曹操处斩。',
lvkuanglvxiang:'吕旷(生卒年不详),与吕翔同是袁绍属下,袁绍去世后,为袁尚守东平,后来投降曹操,并被封为列侯。在《三国演义》中,在曹操准备往南准备攻击前,两人跟著大将曹仁和将军李典准备要攻击刘备。但吕旷被赵云刺下马身亡,而吕翔也死于张飞矛下,可以算是出师未捷身先死', lvkuanglvxiang:'吕旷(生卒年不详),与吕翔同是袁绍属下,袁绍去世后,为袁尚守东平,后来投降曹操,并被封为列侯。在《三国演义》中,在曹操准备往南准备攻击前,两人跟著大将曹仁和将军李典准备要攻击刘备。但吕旷被赵云刺下马身亡,而吕翔也死于张飞矛下,可以算是出师未捷身先死',
caobuxing:'曹不兴亦名弗兴三国时著名画家。孙吴吴兴今浙江湖州生卒年不详。他在黄武年间222—229年享有很大的声誉。被称为“佛画之祖”。与东晋顾恺之、南朝宋陆探微、南朝梁张僧繇并称“六朝四大家”。又与赵达的算术、严武的弈棋、皇象的草书等号称“吴中八绝”。曹不兴善画龙、虎、马及人物有“落墨为蝇”等传奇故事其佛画成就对后世影响很大相传其所画龙头令谢赫叹服不已。画迹今已不存据《贞观公私画史》载作品有《青溪龙》、《赤盘龙》、《南海监牧进十种马图》、《夷事夷兽样》、《桃源图》等惜早已散佚。 但之后的著名画家卫协直接师承其法。', caobuxing:'曹不兴亦名弗兴三国时著名画家。孙吴吴兴今浙江湖州生卒年不详。他在黄武年间222—229年享有很大的声誉。被称为“佛画之祖”。与东晋顾恺之、南朝宋陆探微、南朝梁张僧繇并称“六朝四大家”。又与赵达的算术、严武的弈棋、皇象的草书等号称“吴中八绝”。曹不兴善画龙、虎、马及人物有“落墨为蝇”等传奇故事其佛画成就对后世影响很大相传其所画龙头令谢赫叹服不已。画迹今已不存据《贞观公私画史》载作品有《青溪龙》、《赤盘龙》、《南海监牧进十种马图》、《夷事夷兽样》、《桃源图》等惜早已散佚。但之后的著名画家卫协直接师承其法。',
gaolan:'高览生卒年不详一名高奂本属袁绍部将后官渡之战淳于琼被曹操击破与张郃一同投降曹操被封为偏将军东莱侯。《三国演义》里曾与许褚、徐晃大战不分胜负。201年刘备败走荆州时高览奉命追杀三合斩刘辟而后被冲阵而来的赵云刺死。', gaolan:'高览生卒年不详一名高奂本属袁绍部将后官渡之战淳于琼被曹操击破与张郃一同投降曹操被封为偏将军东莱侯。《三国演义》里曾与许褚、徐晃大战不分胜负。201年刘备败走荆州时高览奉命追杀三合斩刘辟而后被冲阵而来的赵云刺死。',
xunchen:'荀谌,字友若,荀彧之兄(一说荀彧之弟),荀绲之子,颍川人。曾任军阀袁绍的幕僚。帮助袁绍游说韩馥,夺取了冀州。', xunchen:'荀谌,字友若,荀彧之兄(一说荀彧之弟),荀绲之子,颍川人。曾任军阀袁绍的幕僚。帮助袁绍游说韩馥,夺取了冀州。',
sunshao:'孙邵163年225年字长绪青州北海国人今山东潍坊市昌乐县西。原为北海相孔融的功曹被孔融称赞为可任朝廷要职的人才后随刘繇到达江东继而辅佐孙权。孙权称吴王后孙邵成为吴国首任丞相数年后病逝。由于孙邵和当时吴国史官的关系并不是很好因此在史书中并没有详细的记载。', sunshao:'孙邵163年225年字长绪青州北海国人今山东潍坊市昌乐县西。原为北海相孔融的功曹被孔融称赞为可任朝廷要职的人才后随刘繇到达江东继而辅佐孙权。孙权称吴王后孙邵成为吴国首任丞相数年后病逝。由于孙邵和当时吴国史官的关系并不是很好因此在史书中并没有详细的记载。',
@ -396,6 +398,229 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
}, },
skill:{ skill:{
//陆郁生
zhente:{
audio:2,
trigger:{target:'useCardToTargeted'},
logTarget:'player',
usable:1,
filter:function(event,player){
if(player==event.player||get.color(event.card)!='black'||event.player.isDead()) return false;
var type=get.type(event.card);
return type=='basic'||type=='trick';
},
check:function(event,player){
return !event.excluded.contains(player)&&get.effect(player,event.card,event.player,player)<0;
},
content:function(){
'step 0'
trigger.player.chooseControl().set('choiceList',[
'本回合内不能再使用黑色牌',
'令'+get.translation(trigger.card)+'对'+get.translation(player)+'无效',
]).set('prompt',get.translation(player)+'发动了【贞特】,请选择一项').set('ai',function(){
var player=_status.event.player;
var target=_status.event.getParent().player;
var card=_status.event.getTrigger().card;
if(get.effect(target,card,player,player)<=0) return 1;
var hs=player.countCards('h',function(card){
return get.color(card,player)=='black'&&player.hasValueTarget(card,null,true);
});
if(!hs.length) return 0;
if(hs>1) return 1;
return Math.random()>0.5?0:1;
});
'step 1'
if(result.index==0) trigger.player.addTempSkill('zhente2');
else trigger.excluded.add(player);
},
},
zhente2:{
mod:{
cardEnabled:function(card){
if(get.color(card)=='black') return false;
},
cardSavable:function(card){
if(get.color(card)=='black') return false;
},
},
mark:true,
charlotte:true,
intro:{content:'本回合内不能使用黑色牌'},
},
zhiwei:{
audio:2,
trigger:{
player:['enterGame','showCharacterAfter'],
global:['gameDrawAfter'],
},
direct:true,
filter:function(event,player){
if(player.hasSkill('zhiwei2')) return false;
if(get.mode()=='guozhan') return event.name=='showCharacter'&&(event.toShow.contains('gz_luyusheng')||event.toShow.contains('luyusheng'));
return event.name!='showCharacter';
},
content:function(){
'step 0'
player.chooseTarget('请选择【至微】的目标','选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。',true,lib.filter.notMe).set('ai',function(target){
var att=get.attitude(_status.event.player,target);
if(att>0) return 1+att;
return Math.random();
});
'step 1'
if(result.bool){
var target=result.targets[0];
player.logSkill('zhiwei',target);
player.storage.zhiwei2=target;
player.addSkill('zhiwei2');
}
},
},
zhiwei2:{
group:['zhiwei2_draw','zhiwei2_discard','zhiwei2_gain','zhiwei2_clear'],
charlotte:true,
onremove:true,
mark:'character',
intro:{content:'$造成伤害后你摸一张牌;$受到伤害后你弃置一张牌;你于弃牌阶段弃置牌后交给$'},
subSkill:{
draw:{
audio:'zhiwei',
trigger:{global:'damageSource'},
forced:true,
filter:function(event,player){
return event.source==player.storage.zhiwei2;
},
logTarget:'source',
content:function(){
player.draw();
},
},
discard:{
audio:'zhiwei',
trigger:{global:'damageEnd'},
forced:true,
filter:function(event,player){
return event.player==player.storage.zhiwei2&&player.countCards('h',function(card){
return lib.filter.cardDiscardable(card,player,'zhiwei2_discard');
});
},
logTarget:'player',
content:function(){
player.discard(player.getCards('h',function(card){
return lib.filter.cardDiscardable(card,player,'zhiwei2_discard');
}).randomGet());
},
},
gain:{
audio:'zhiwei',
trigger:{player:'loseAfter'},
forced:true,
filter:function(event,player){
return event.type=='discard'&&event.getParent('phaseDiscard').player==player&&player.storage.zhiwei2&&player.storage.zhiwei2.isIn()&&event.cards2.filterInD('d').length>0;
},
logTarget:function(event,player){
return player.storage.zhiwei2;
},
content:function(){
if(trigger.delay===false) game.delay();
player.storage.zhiwei2.gain(trigger.cards2.filterInD('d'),'gain2');
},
},
clear:{
audio:'zhiwei',
trigger:{
global:'die',
player:['hideCharacterEnd','removeCharacterEnd'],
},
forced:true,
filter:function(event,player){
if(event.name=='die') return event.player==player.storage.zhiwei2;
if(event.name=='removeCharacter') return event.toRemove=='luyusheng'||event.toRemove=='gz_luyusheng';
return event.toHide=='luyusheng'||event.toHide=='gz_luyusheng';
},
content:function(){
'step 0'
player.removeSkill('zhiwei2');
if(trigger.name!='die'||get.mode()!='guozhan') event.finish();
'step 1'
if(player.name1=='gz_luyusheng'||player.name1=='luyusheng') player.hideCharacter(0);
if(player.name2=='gz_luyusheng'||player.name2=='luyusheng') player.hideCharacter(1);
},
},
},
},
//新塌顿
reluanzhan:{
audio:'luanzhan',
trigger:{
player:'damageEnd',
source:'damageSource',
},
forced:true,
content:function(){
player.addMark('reluanzhan',1,false);
},
intro:{content:'mark'},
ai:{notemp:true},
group:['reluanzhan_add','reluanzhan_remove'],
},
reluanzhan_add:{
trigger:{player:'useCard2'},
direct:true,
filter:function(event,player){
if(event.card.name!='sha'&&(get.color(event.card)!='black'||get.type(event.card)!='trick')||!player.countMark('reluanzhan')) return false;
var info=get.info(event.card);
if(info.allowMultiple==false) return false;
if(event.targets&&!info.multitarget){
if(game.hasPlayer(function(current){
return !event.targets.contains(current)&&lib.filter.targetEnabled2(event.card,player,current)&&lib.filter.targetInRange(event.card,player,current);
})){
return true;
}
}
return false;
},
content:function(){
'step 0'
var num=player.countMark('reluanzhan');
var prompt2='为'+get.translation(trigger.card)+'增加至多'+get.cnNumber(num)+'个目标'
player.chooseTarget(get.prompt('reluanzhan'),function(card,player,target){
if(_status.event.targets.contains(target)) return false;
var player=_status.event.player;
return lib.filter.targetEnabled2(_status.event.card,player,target)&&lib.filter.targetInRange(_status.event.card,player,target);
},[1,num]).set('prompt2',prompt2).set('ai',function(target){
var trigger=_status.event.getTrigger();
var player=_status.event.player;
return get.effect(target,trigger.card,player,player);
}).set('card',trigger.card).set('targets',trigger.targets);
'step 1'
if(result.bool){
if(!event.isMine()&&!event.isOnline()) game.delayx();
event.targets=result.targets;
}
else{
event.finish();
}
'step 2'
if(event.targets){
player.logSkill('reluanzhan',event.targets);
trigger.targets.addArray(event.targets);
}
},
},
reluanzhan_remove:{
audio:'luanzhan',
trigger:{player:'useCardToPlayered'},
forced:true,
filter:function(event,player){
if(!event.isFirstTarget||(event.card.name!='sha'&&(get.color(event.card)!='black'||get.type(event.card)!='trick'))||!player.countMark('reluanzhan')) return false;
var info=get.info(event.card);
if(info.allowMultiple==false||info.multitarget) return false;
return event.targets.length<player.countMark('reluanzhan');
},
content:function(){
player.removeMark('reluanzhan',Math.ceil(player.countMark('reluanzhan')/2));
},
},
//华歆 //华歆
wanggui:{ wanggui:{
audio:2, audio:2,
@ -474,16 +699,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
check:function(event,player){ check:function(event,player){
var target=event.player; var target=event.player;
var att=get.attitude(player,target); var att=get.attitude(player,target);
var num2=Math.min(5,target.hp-target.countCards('h'));
if(num2<=0) return att<=0;
var num=target.countCards('h',function(card){ var num=target.countCards('h',function(card){
return target.hasValueTarget(card,null,true); return target.hasValueTarget(card,null,true);
}); });
if(!num) return att>0; if(!num) return att>0;
var num2=Math.min(5,target.hp-target.countCards('h'));
return num>num2; return num>num2;
}, },
content:function(){ content:function(){
'step 0' 'step 0'
trigger.player.draw(Math.min(5,trigger.player.hp-trigger.player.countCards('h'))); var num=Math.min(5,trigger.player.hp-trigger.player.countCards('h'));
if(num>0) trigger.player.draw(num);
trigger.player.addTempSkill('xibing2'); trigger.player.addTempSkill('xibing2');
player._xibing=true; player._xibing=true;
if(get.mode()!='guozhan'||player.isUnseen(2)||trigger.player.isUnseen(2)) event.finish(); if(get.mode()!='guozhan'||player.isUnseen(2)||trigger.player.isUnseen(2)) event.finish();
@ -1410,7 +1637,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('targets',trigger.targets).set('card',trigger.card); }).set('targets',trigger.targets).set('card',trigger.card);
'step 1' 'step 1'
if(result.bool){ if(result.bool){
if(!event.isMine()) game.delayx(); if(!event.isMine()&&!event.isOnline()) game.delayx();
event.targets=result.targets; event.targets=result.targets;
} }
else{ else{
@ -2000,7 +2227,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('card',trigger.card); }).set('card',trigger.card);
'step 1' 'step 1'
if(result.bool){ if(result.bool){
if(!event.isMine()&&!_status.connectMode) game.delayx(); if(!event.isMine()&&!event.isOnline()) game.delayx();
event.targets=result.targets; event.targets=result.targets;
} }
else{ else{
@ -2057,7 +2284,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('targets',trigger.targets).set('card',trigger.card); }).set('targets',trigger.targets).set('card',trigger.card);
'step 1' 'step 1'
if(result.bool){ if(result.bool){
if(!event.isMine()) game.delayx(); if(!event.isMine()&&!event.isOnline()) game.delayx();
event.targets=result.targets; event.targets=result.targets;
} }
else{ else{
@ -5132,7 +5359,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
'step 3' 'step 3'
if(result.bool){ if(result.bool){
if(!event.isMine()) game.delayx(); if(!event.isMine()&&!event.isOnline()) game.delayx();
event.target=result.targets[0]; event.target=result.targets[0];
} }
else{ else{
@ -5458,7 +5685,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}).set('card',trigger.card); }).set('card',trigger.card);
'step 1' 'step 1'
if(result.bool){ if(result.bool){
if(!event.isMine()&&!_status.connectMode) game.delayx(); if(!event.isMine()&&!event.isOnline()) game.delayx();
event.target=result.targets[0]; event.target=result.targets[0];
} }
else{ else{
@ -7581,7 +7808,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 1' 'step 1'
if(result.bool){ if(result.bool){
player.getHistory('custom').push({qizhi:true}); player.getHistory('custom').push({qizhi:true});
if(!event.isMine()&&!_status.connectMode) game.delay();
player.logSkill('qizhi',result.targets); player.logSkill('qizhi',result.targets);
player.discardPlayerCard(result.targets[0],true,'he'); player.discardPlayerCard(result.targets[0],true,'he');
event.target=result.targets[0]; event.target=result.targets[0];
@ -9632,7 +9858,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}, },
content:function(){ content:function(){
player.loseHp(player.countMark('ranshang')); player.loseHp(player.countMark('ranshang'));
if(player.countMark('ranshang')>=2){ if(player.countMark('ranshang')>2){
player.loseMaxHp(2); player.loseMaxHp(2);
player.draw(2); player.draw(2);
} }
@ -9641,7 +9867,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
hanyong:{ hanyong:{
trigger:{player:'useCard'}, trigger:{player:'useCard'},
filter:function(event,player){ filter:function(event,player){
return event.card&&(event.card.name=='nanman'||event.card.name=='wanjian'||(event.card.name=='sha'&&get.color(event.card)=='black')); return event.card&&(event.card.name=='nanman'||event.card.name=='wanjian'||(event.card.name=='sha'&&!event.card.nature&&get.suit(event.card)=='spade'));
}, },
content:function(){ content:function(){
trigger.baseDamage++; trigger.baseDamage++;
@ -12216,7 +12442,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
audio:2, audio:2,
trigger:{global:'phaseJieshuBegin'}, trigger:{global:'phaseJieshuBegin'},
filter:function(event,player){ filter:function(event,player){
return event.player.countCards('h')<=1&&player.hasSkill('junbing'); return event.player.countCards('h')<=1&&(player==event.player||player.hasSkill('junbing'));
}, },
direct:true, direct:true,
checkx:function(target,player){ checkx:function(target,player){
@ -15749,9 +15975,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
mozhi_info:'结束阶段开始时,你可以将一张手牌当作你本回合出牌阶段内使用的第一张基本或普通锦囊牌使用。然后,你可以将一张手牌当做你本回合出牌阶段内使用的第二张基本或普通锦囊牌使用。(你不能通过此技能使用【酒】)', mozhi_info:'结束阶段开始时,你可以将一张手牌当作你本回合出牌阶段内使用的第一张基本或普通锦囊牌使用。然后,你可以将一张手牌当做你本回合出牌阶段内使用的第二张基本或普通锦囊牌使用。(你不能通过此技能使用【酒】)',
ranshang:'燃殇', ranshang:'燃殇',
ranshang2:'燃殇', ranshang2:'燃殇',
ranshang_info:'锁定技当你受到1点火焰伤害后你获得1枚“燃”标记结束阶段开始时你失去X点体力。若X不小于2则你减2点体力上限并摸两张牌。X为“燃”标记的数量', ranshang_info:'锁定技当你受到1点火焰伤害后你获得1枚“燃”标记结束阶段开始时你失去X点体力。若X于2则你减2点体力上限并摸两张牌。X为“燃”标记的数量',
hanyong:'悍勇', hanyong:'悍勇',
hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】或黑【杀】时,若你的体力值小于游戏轮数,你可以令此牌的伤害值基数+1。然后若你的体力值不小于游戏轮数则你获得一枚“燃”标记。', hanyong_info:'当你使用【南蛮入侵】或【万箭齐发】或黑【杀】时,若你的体力值小于游戏轮数,你可以令此牌的伤害值基数+1。然后若你的体力值不小于游戏轮数则你获得一枚“燃”标记。',
yicong:'义从', yicong:'义从',
yongsi:'庸肆', yongsi:'庸肆',
@ -16039,6 +16265,18 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xibing_info:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力值(至多摸五张)且本回合不能再使用手牌。', xibing_info:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力值(至多摸五张)且本回合不能再使用手牌。',
xibing_info_guozhan:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力(至多摸五张)值且本回合不能再使用手牌。若你与其均明置了所有武将牌,则你可以暗置你与其各一张武将牌且本回合不能再明置此武将牌。', xibing_info_guozhan:'当一名其他角色在其出牌阶段内使用第一张黑色【杀】或黑色普通锦囊牌指定唯一角色为目标后,你可令该角色将手牌摸至当前体力(至多摸五张)值且本回合不能再使用手牌。若你与其均明置了所有武将牌,则你可以暗置你与其各一张武将牌且本回合不能再明置此武将牌。',
ol_xinxianying:'辛宪英', ol_xinxianying:'辛宪英',
reluanzhan:'乱战',
reluanzhan_add:'乱战',
reluanzhan_remove:'乱战',
reluanzhan_info:'当你受到或造成伤害后你获得一个“乱”。当你使用【杀】或黑色普通锦囊牌选择目标后你可为此牌增加至多X个目标。当你使用这些牌指定第一个目标后若此牌目标数小于X则你移去X/2向上取整个“乱”。X为“乱”数',
luyusheng:'陆郁生',
zhente:'贞特',
zhente2:'贞特',
zhente_info:'每回合限一次当你成为其他角色使用黑色基本牌或黑色普通锦囊牌的目标后你可令使用者选择一项1.本回合不能再使用黑色牌2.此牌对你无效。 ',
zhiwei:'至微',
zhiwei2:'至微',
zhiwei_info:'游戏开始时,你选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。 ',
zhiwei_info_guozhan:'你明置此武将牌时,选择一名其他角色。该角色造成伤害后,你摸一张牌,该角色受到伤害后,你随机弃置一张手牌。你弃牌阶段弃置的牌均被该角色获得。该角色死亡时,若你的两个武将牌均明置,你暗置此武将牌。 ',
sp_default:"常规", sp_default:"常规",
sp_zhongdan:"忠胆英杰", sp_zhongdan:"忠胆英杰",

View File

@ -126,22 +126,31 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return num+player.countMark('recangchu'); return num+player.countMark('recangchu');
}, },
}, },
group:'recangchu2', group:['recangchu2','recangchu3'],
}, },
recangchu2:{ recangchu2:{
audio:'recangchu', audio:'recangchu',
trigger:{ trigger:{
player:'gainAfter', player:'gainAfter',
global:'die',
}, },
forced:true, forced:true,
usable:1,
filter:function(event,player){ filter:function(event,player){
if(event.name=='die') return player.countMark('recangchu')>game.countPlayer();
return player!=_status.currentPhase&&player.countMark('recangchu')<game.countPlayer(); return player!=_status.currentPhase&&player.countMark('recangchu')<game.countPlayer();
}, },
content:function(){ content:function(){
if(trigger.name=='die') player.removeMark('recangchu',player.countMark('recangchu')-game.countPlayer()); player.addMark('recangchu',1);
else player.addMark('recangchu',1); },
},
recangchu3:{
audio:'recangchu',
trigger:{global:'die'},
forced:true,
filter:function(event,player){
return player.countMark('recangchu')>game.countPlayer();
},
content:function(){
player.removeMark('recangchu',player.countMark('recangchu')-game.countPlayer());
}, },
}, },
reliangying:{ reliangying:{
@ -159,10 +168,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
} }
list.push('cancel2'); list.push('cancel2');
event.map=map; event.map=map;
player.chooseControl(list).set('prompt',get.prompt('reliangying')).set('prompt2','摸至多'+get.cnNumber(player.countMark('recangchu'))+'张牌,然后交给等量的其他角色各一张牌').set('ai',function(){ player.chooseControl(list).set('prompt',get.prompt('reliangying')).set('prompt2','摸至多'+get.cnNumber(player.countMark('recangchu'))+'张牌,然后交给等量的角色各一张牌').set('ai',function(){
var player=_status.event.player; var player=_status.event.player;
var num=Math.min(player.countMark('recangchu'),game.countPlayer(function(current){ var num=Math.min(player.countMark('recangchu'),game.countPlayer(function(current){
return current!=player&&get.attitude(player,current)>0; return get.attitude(player,current)>0;
})); }));
if(num) return get.cnNumber(num); if(num) return get.cnNumber(num);
return 'cancel2'; return 'cancel2';
@ -180,9 +189,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(num){ if(num){
player.chooseCardTarget({ player.chooseCardTarget({
prompt:'将'+get.cnNumber(num)+'张牌交给其他角色', prompt:'将'+get.cnNumber(num)+'张牌交给其他角色',
prompt2:'操作提示:先按顺序选中所有要给出的牌,然后再按顺序选择等量的目标角色', prompt2:'操作提示:先按顺序选中所有要给出的牌,然后再按顺序选择等量的目标角色。可少选一张牌,并将此牌留给自己',
selectCard:num, selectCard:[num-1,num],
selectTarget:num, selectTarget:function(){
return ui.selected.cards.length;
},
filterTarget:function(card,player,target){ filterTarget:function(card,player,target){
return target!=player; return target!=player;
}, },
@ -225,7 +236,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return (event.name=='damage')?(event.nature=='fire'):(event.card&&event.card.name=='jiu'); return (event.name=='damage')?(event.nature=='fire'):(event.card&&event.card.name=='jiu');
}, },
content:function(){ content:function(){
player.removeMark('recangchu',1); player.removeMark('recangchu',Math.min(player.countMark('recangchu'),trigger.num||1));
}, },
group:'reshishou2', group:'reshishou2',
}, },
@ -2760,7 +2771,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
enable:'phaseUse', enable:'phaseUse',
usable:1, usable:1,
filterTarget:function(event,player,target){ filterTarget:function(event,player,target){
return player.inRange(target); return player.inRange(target)&&target.countDiscardableCards(player,'he')>0;
}, },
content:function(){ content:function(){
'step 0' 'step 0'
@ -2781,6 +2792,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return -2; return -2;
}, },
target:function(player,target){ target:function(player,target){
if(target.countDiscardableCards(player,'he')<2) return 0;
return -2; return -2;
}, },
}, },
@ -4760,6 +4772,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return true; return true;
}, },
viewAs:{name:'nanman'}, viewAs:{name:'nanman'},
ai:{order:0.1},
}, },
souying:{ souying:{
audio:2, audio:2,
@ -8827,7 +8840,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhujun:'朱儁195年字公伟。会稽郡上虞县今浙江绍兴上虞区人。东汉末年名将。朱儁出身寒门赡养母亲以好义轻财闻名受乡里敬重。后被太守徐珪举为孝廉任兰陵令颇有治绩。再升任交州刺史以家兵五千大破叛军平定交州。战后以功封都亭侯入朝为谏议大夫。光和七年184年黄巾起义爆发朱儁以右中郎将、持节平定三郡之地以功进封西乡侯迁镇贼中郎将。又率军讨平黄巾“威声满天下”。中平二年185年进拜右车骑将军更封钱塘侯。后为河内太守击退进逼的张燕。权臣董卓秉政时想任朱儁为副手遭其婉拒。其后出逃荆州更屯军中牟徐州刺史陶谦等欲推举他为太师并传檄各州牧伯相邀讨伐李傕、奉迎天子。但朱儁却奉诏入京任太仆。初平三年192年升任太尉、录尚书事。兴平元年194年行骠骑将军事持节镇关东因故未成行。兴平二年195年李傕与郭汜相互攻杀郭汜扣留朱儁作为人质。朱儁性格刚烈即日发病而死。', zhujun:'朱儁195年字公伟。会稽郡上虞县今浙江绍兴上虞区人。东汉末年名将。朱儁出身寒门赡养母亲以好义轻财闻名受乡里敬重。后被太守徐珪举为孝廉任兰陵令颇有治绩。再升任交州刺史以家兵五千大破叛军平定交州。战后以功封都亭侯入朝为谏议大夫。光和七年184年黄巾起义爆发朱儁以右中郎将、持节平定三郡之地以功进封西乡侯迁镇贼中郎将。又率军讨平黄巾“威声满天下”。中平二年185年进拜右车骑将军更封钱塘侯。后为河内太守击退进逼的张燕。权臣董卓秉政时想任朱儁为副手遭其婉拒。其后出逃荆州更屯军中牟徐州刺史陶谦等欲推举他为太师并传檄各州牧伯相邀讨伐李傕、奉迎天子。但朱儁却奉诏入京任太仆。初平三年192年升任太尉、录尚书事。兴平元年194年行骠骑将军事持节镇关东因故未成行。兴平二年195年李傕与郭汜相互攻杀郭汜扣留朱儁作为人质。朱儁性格刚烈即日发病而死。',
liuhong:'汉灵帝刘宏157年一作156年189年5月13日生于冀州河间国今河北深州。东汉第十二位皇帝168年189年在位汉章帝刘炟的玄孙。刘宏早年世袭解渎亭侯。永康元年167年十二月汉桓帝刘志逝世刘宏被外戚窦氏挑选为皇位继承人于建宁元年168年正月即位。刘宏在位的大部分时期施行党锢及宦官政治。他又设置西园巧立名目搜刮钱财甚至卖官鬻爵以用于自己享乐。在位晚期爆发了黄巾起义而凉州等地也陷入持续动乱之中。中平六年189年刘宏去世谥号孝灵皇帝葬于文陵。刘宏喜好辞赋作有《皇羲篇》、《追德赋》、《令仪颂》、《招商歌》等。', liuhong:'汉灵帝刘宏157年一作156年189年5月13日生于冀州河间国今河北深州。东汉第十二位皇帝168年189年在位汉章帝刘炟的玄孙。刘宏早年世袭解渎亭侯。永康元年167年十二月汉桓帝刘志逝世刘宏被外戚窦氏挑选为皇位继承人于建宁元年168年正月即位。刘宏在位的大部分时期施行党锢及宦官政治。他又设置西园巧立名目搜刮钱财甚至卖官鬻爵以用于自己享乐。在位晚期爆发了黄巾起义而凉州等地也陷入持续动乱之中。中平六年189年刘宏去世谥号孝灵皇帝葬于文陵。刘宏喜好辞赋作有《皇羲篇》、《追德赋》、《令仪颂》、《招商歌》等。',
liubian:'刘辩176年190年3月6日是汉灵帝刘宏与何皇后的嫡长子。刘辩在灵帝驾崩后继位为帝史称少帝由于年幼实权掌握在临朝称制的母亲何太后和母舅大将军何进手中。少帝在位时期东汉政权已经名存实亡他即位后不久即遭遇以何进为首的外戚集团和以十常侍为首的内廷宦官集团这两大敌对政治集团的火并被迫出宫回宫后又受制于以“勤王”为名进京的凉州军阀董卓终于被废为弘农王成为东汉唯一被废黜的皇帝其同父异母弟陈留王刘协继位为帝是为汉献帝。被废黜一年之后刘辩在董卓胁迫下自尽时年仅十五岁一说十八岁其弟献帝追谥他为怀王。中国古代的史书中称刘辩为皇子辩、少帝和弘农王等。因为在位不逾年传统上称东汉共十二帝刘辩与东汉另一位少帝刘懿都不在其中亦皆无本纪不过现代史学界也有观点承认两位少帝均是汉朝皇帝则刘辩为东汉第十三位皇帝。', liubian:'刘辩176年190年3月6日是汉灵帝刘宏与何皇后的嫡长子。刘辩在灵帝驾崩后继位为帝史称少帝由于年幼实权掌握在临朝称制的母亲何太后和母舅大将军何进手中。少帝在位时期东汉政权已经名存实亡他即位后不久即遭遇以何进为首的外戚集团和以十常侍为首的内廷宦官集团这两大敌对政治集团的火并被迫出宫回宫后又受制于以“勤王”为名进京的凉州军阀董卓终于被废为弘农王成为东汉唯一被废黜的皇帝其同父异母弟陈留王刘协继位为帝是为汉献帝。被废黜一年之后刘辩在董卓胁迫下自尽时年仅十五岁一说十八岁其弟献帝追谥他为怀王。中国古代的史书中称刘辩为皇子辩、少帝和弘农王等。因为在位不逾年传统上称东汉共十二帝刘辩与东汉另一位少帝刘懿都不在其中亦皆无本纪不过现代史学界也有观点承认两位少帝均是汉朝皇帝则刘辩为东汉第十三位皇帝。',
luyusheng:'陆郁生(?年-三国时期吴国官员陆绩之女。陆郁生的父亲陆绩是吴郡公认的才子又是当时吴郡陆氏的领袖。陆绩赴任担任郁林太守遂取此名。陆郁生年少的时候就定下坚贞的志向。建安二十四年219年)陆绩早亡她与两个兄弟陆宏、陆睿当时都只有几岁一起返回吴县被他们的从兄陆瑁接回抚养。13周岁的陆郁生嫁给同郡出身的张白为妻。出嫁3个月后张白因为其兄张温一族的案件遭到连坐被处以流刑后死于流放地陆郁生成为了寡妇其后公开宣言不再改嫁困难于生计但拒绝了所有提亲在艰苦中从未停止服侍、照顾张白的姐妹。事情传到朝廷皇帝褒奖陆郁生号其为“义姑”。她的表侄姚信在文集中称赞她的义举。',
wangrong:'汉灵怀皇后王荣(?~181年赵国邯郸今河北邯郸市人。五官中郎将王苞孙女汉灵帝刘宏妃子汉献帝刘协生母。初以良家子选入掖庭封为美人服侍汉灵帝。光和四年181年生下陈留王刘协惨遭灵思皇后毒杀。王荣死后汉灵帝曾作《追德赋》、《令仪颂》。永汉元年189年其子刘协即位是为汉献帝追谥灵怀皇后葬于文昭陵。', wangrong:'汉灵怀皇后王荣(?~181年赵国邯郸今河北邯郸市人。五官中郎将王苞孙女汉灵帝刘宏妃子汉献帝刘协生母。初以良家子选入掖庭封为美人服侍汉灵帝。光和四年181年生下陈留王刘协惨遭灵思皇后毒杀。王荣死后汉灵帝曾作《追德赋》、《令仪颂》。永汉元年189年其子刘协即位是为汉献帝追谥灵怀皇后葬于文昭陵。',
hanfu:'韩馥—191年字文节颍川郡今河南禹州人。东汉末年的诸侯冀州牧。韩馥担任过东汉的御史中丞之后被董卓举荐为冀州牧在各诸侯起兵讨伐董卓时韩馥也是其中之一的参与者。韩馥与袁绍也曾经有意立刘虞为皇帝。当时冀州民殷人盛兵粮优足于是袁绍便用计夺取冀州韩馥被迫投靠张邈之后张邈与袁绍的使者见面韩馥以为是要来杀害自己的于是在厕所中以刻书用的小刀自杀。', hanfu:'韩馥—191年字文节颍川郡今河南禹州人。东汉末年的诸侯冀州牧。韩馥担任过东汉的御史中丞之后被董卓举荐为冀州牧在各诸侯起兵讨伐董卓时韩馥也是其中之一的参与者。韩馥与袁绍也曾经有意立刘虞为皇帝。当时冀州民殷人盛兵粮优足于是袁绍便用计夺取冀州韩馥被迫投靠张邈之后张邈与袁绍的使者见面韩馥以为是要来杀害自己的于是在厕所中以刻书用的小刀自杀。',
zhanghuyuechen:'张虎生卒年不详雁门马邑今山西朔城区大夫庄人。三国时期曹魏将领。名将张辽之子。官至偏将军袭封晋阳侯有一子张统。乐綝195~257年字号不详阳平郡卫国县今河南省清丰县人。三国时期曹魏将领右将军乐进的儿子。果毅坚毅袭封广昌亭侯累迁扬州刺史。甘露二年为叛乱的征东大将军诸葛诞所杀追赠卫尉。', zhanghuyuechen:'张虎生卒年不详雁门马邑今山西朔城区大夫庄人。三国时期曹魏将领。名将张辽之子。官至偏将军袭封晋阳侯有一子张统。乐綝195~257年字号不详阳平郡卫国县今河南省清丰县人。三国时期曹魏将领右将军乐进的儿子。果毅坚毅袭封广昌亭侯累迁扬州刺史。甘露二年为叛乱的征东大将军诸葛诞所杀追赠卫尉。',
@ -9219,7 +9231,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
panshi_info:'锁定技,准备阶段,你交给有“慈孝”技能的角色一张手牌;当你于出牌阶段因使用【杀】对其他角色造成伤害时,若其拥有技能“慈孝”,则此伤害+1且你结束出牌阶段。', panshi_info:'锁定技,准备阶段,你交给有“慈孝”技能的角色一张手牌;当你于出牌阶段因使用【杀】对其他角色造成伤害时,若其拥有技能“慈孝”,则此伤害+1且你结束出牌阶段。',
xianshuai:'先率', xianshuai:'先率',
xianshuai_info:'锁定技有角色造成伤害后若此伤害是本轮第一次造成伤害你摸一张牌若伤害来源是你则你对受伤角色再造成1点伤害。', xianshuai_info:'锁定技有角色造成伤害后若此伤害是本轮第一次造成伤害你摸一张牌若伤害来源是你则你对受伤角色再造成1点伤害。',
luyusheng:'陆郁生',
wangrong:'王荣', wangrong:'王荣',
minsi:'敏思', minsi:'敏思',
minsi2:'敏思', minsi2:'敏思',
@ -9396,12 +9407,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_chunyuqiong:'淳于琼', re_chunyuqiong:'淳于琼',
recangchu:'仓储', recangchu:'仓储',
recangchu2:'仓储', recangchu2:'仓储',
recangchu3:'仓储',
recangchu_info:'锁定技游戏开始时你获得3个“粮”。你的手牌上限+XX为“粮”数。当你于回合外获得牌时你获得一个“粮”。你的“粮”数不能超过存活角色数', recangchu_info:'锁定技游戏开始时你获得3个“粮”。你的手牌上限+XX为“粮”数。当你于回合外获得牌时你获得一个“粮”。你的“粮”数不能超过存活角色数',
reliangying:'粮营', reliangying:'粮营',
reliangying_info:'弃牌阶段开始时你可以摸至多X张牌然后交给等量的角色各一张牌。X为你的“粮”数', reliangying_info:'弃牌阶段开始时你可以摸至多X张牌然后交给等量的角色各一张牌。X为你的“粮”数',
reshishou:'失守', reshishou:'失守',
reshishou2:'失守', reshishou2:'失守',
reshishou_info:'锁定技,当你使用【酒】时或受到火焰伤害后你移去一个“粮”。准备阶段若你没有“粮”你失去1点体力。', reshishou_info:'锁定技,当你使用【酒】时或受到1点火焰伤害后你移去一个“粮”。准备阶段若你没有“粮”你失去1点体力。',
sp_yingbian:'文德武备', sp_yingbian:'文德武备',
sp_whlw:"文和乱武", sp_whlw:"文和乱武",

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[ window.noname_asset_list=[
'v1.9.109', 'v1.9.109.1',
'audio/background/aozhan_chaoming.mp3', 'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3', 'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3', 'audio/background/aozhan_rewrite.mp3',
@ -681,6 +681,10 @@ window.noname_asset_list=[
'audio/die/guozhao.mp3', 'audio/die/guozhao.mp3',
'audio/die/wolongfengchu.mp3', 'audio/die/wolongfengchu.mp3',
'audio/die/ol_dengai.mp3', 'audio/die/ol_dengai.mp3',
'audio/die/luyusheng.mp3',
'audio/die/re_caozhen.mp3',
'audio/die/re_chunyuqiong.mp3',
'audio/die/re_gongsunyuan.mp3',
'audio/skill/decadezishou1.mp3', 'audio/skill/decadezishou1.mp3',
'audio/skill/decadezishou2.mp3', 'audio/skill/decadezishou2.mp3',
@ -2989,6 +2993,20 @@ window.noname_asset_list=[
'audio/skill/oltuntian2.mp3', 'audio/skill/oltuntian2.mp3',
'audio/skill/olzaoxian1.mp3', 'audio/skill/olzaoxian1.mp3',
'audio/skill/olzaoxian2.mp3', 'audio/skill/olzaoxian2.mp3',
'audio/skill/recangchu1.mp3',
'audio/skill/recangchu2.mp3',
'audio/skill/rehuaiyi1.mp3',
'audio/skill/rehuaiyi2.mp3',
'audio/skill/reliangying1.mp3',
'audio/skill/reliangying2.mp3',
'audio/skill/reshishou1.mp3',
'audio/skill/reshishou2.mp3',
'audio/skill/residi1.mp3',
'audio/skill/residi2.mp3',
'audio/skill/zhente1.mp3',
'audio/skill/zhente2.mp3',
'audio/skill/zhiwei1.mp3',
'audio/skill/zhiwei2.mp3',
'audio/voice/male/0.mp3', 'audio/voice/male/0.mp3',
'audio/voice/male/1.mp3', 'audio/voice/male/1.mp3',
@ -3765,6 +3783,8 @@ window.noname_asset_list=[
'image/character/ol_dengai.jpg', 'image/character/ol_dengai.jpg',
'image/character/re_caozhen.jpg', 'image/character/re_caozhen.jpg',
'image/character/re_gongsunyuan.jpg', 'image/character/re_gongsunyuan.jpg',
'image/character/luyusheng.jpg',
'image/character/ns_luyusheng.jpg',
'image/character/baiwuchang.jpg', 'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg', 'image/character/baosanniang.jpg',

View File

@ -12930,10 +12930,12 @@
event.dialog.add(event.promptx[i]); event.dialog.add(event.promptx[i]);
} }
} }
event.promptbar=event.dialog.add('0/'+get.numStr(event.selectCard[1],'card')); if(Array.isArray(event.selectCard)){
event.custom.add.card=function(){ event.promptbar=event.dialog.add('0/'+get.numStr(event.selectCard[1],'card'));
_status.event.promptbar.innerHTML= event.custom.add.card=function(){
ui.selected.cards.length+'/'+get.numStr(_status.event.selectCard[1],'card'); _status.event.promptbar.innerHTML=
ui.selected.cards.length+'/'+get.numStr(_status.event.selectCard[1],'card');
}
} }
} }
} }
@ -24752,7 +24754,7 @@
this._notrigger.add(player); this._notrigger.add(player);
if(!evt||!evt.map) return; if(!evt||!evt.map) return;
for(var i=0;i<evt.map.length;i++){ for(var i=0;i<evt.map.length;i++){
if(evt.map[i].player==player) evt.map[i].list=[]; if(evt.map[i].player==player) evt.map[i].list.length=0;
} }
} }
} }

View File

@ -1,30 +1,27 @@
window.noname_update={ window.noname_update={
version:'1.9.109', version:'1.9.109.1',
update:'1.9.108.6', update:'1.9.109',
changeLog:[ changeLog:[
'全新“智斗三国”模式来袭', '陆郁生、新踏顿',
'界邓艾、界曹真、界公孙渊、淳于琼、兀突骨、曹安民',
'高达一号下放',
'水淹七军、应变牌堆调整',
'bug修复', 'bug修复',
], ],
files:[ files:[
//'card/extra.js', //'card/extra.js',
//'card/gujian.js', //'card/gujian.js',
'card/guozhan.js', //'card/guozhan.js',
//'card/gwent.js', 'card/gwent.js',
//'card/huanlekapai.js', //'card/huanlekapai.js',
//'card/mtg.js', //'card/mtg.js',
//'card/sp.js', //'card/sp.js',
//'card/standard.js', 'card/standard.js',
//'card/swd.js', //'card/swd.js',
//'card/yunchou.js', //'card/yunchou.js',
'card/yingbian.js', //'card/yingbian.js',
//'card/zhenfa.js', //'card/zhenfa.js',
'card/zhulu.js', //'card/zhulu.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/hearth.js', //'character/hearth.js',
@ -42,22 +39,22 @@ window.noname_update={
//'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',
//'extension/boss/extension.js', //'extension/boss/extension.js',
//'layout/default/layout.css', //'layout/default/layout.css',
//'layout/default/menu.css', //'layout/default/menu.css',
//'layout/nova/layout.css', //'layout/nova/layout.css',
'mode/boss.js', //'mode/boss.js',
'mode/brawl.js', //'mode/brawl.js',
//'mode/chess.js', //'mode/chess.js',
'mode/doudizhu.js', 'mode/doudizhu.js',
'mode/guozhan.js', 'mode/guozhan.js',
'mode/identity.js', //'mode/identity.js',
//'mode/single.js', //'mode/single.js',
//'mode/stone.js', //'mode/stone.js',
//'mode/tafang.js', //'mode/tafang.js',
//'mode/versus.js', 'mode/versus.js',
'game/game.js', 'game/game.js',
//'game/keyWords.js', //'game/keyWords.js',
//'game/NoSleep.js', //'game/NoSleep.js',

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

View File

@ -2197,7 +2197,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
shu:[ shu:[
're_guanyu','re_huangyueying','re_liubei','re_machao','re_zhangfei','zhaoyun','re_huangzhong','re_weiyan','re_pangtong','ol_sp_zhugeliang', 're_guanyu','re_huangyueying','re_liubei','re_machao','re_zhangfei','zhaoyun','re_huangzhong','re_weiyan','re_pangtong','ol_sp_zhugeliang',
're_menghuo','re_zhurong','re_fazheng','re_masu','guanxingzhangbao','xin_liaohua','old_madai','re_jianyong','wuyi','zhangsong','zhoucang', 're_menghuo','re_zhurong','re_fazheng','re_masu','guanxingzhangbao','xin_liaohua','old_madai','re_jianyong','wuyi','zhangsong','zhoucang',
'liuchen','xiahoushi','re_zhangyi','quancong','liyan','guanyinping','guansuo','mayunlu','mazhong','mizhu','sunqian','xiahouba','zhangxingcai', 'liuchen','xiahoushi','re_zhangyi','liyan','guanyinping','guansuo','mayunlu','mazhong','mizhu','sunqian','xiahouba','zhangxingcai',
'wangping','yanyan','chendao','ganfuren','re_maliang','dengzhi','lifeng','zhangyì', 'wangping','yanyan','chendao','ganfuren','re_maliang','dengzhi','lifeng','zhangyì',
], ],
wu:[ wu:[

View File

@ -295,7 +295,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
'6':[ '6':[
'gz_zhenji','gz_guojia','gz_yujin', 'gz_zhenji','gz_guojia','gz_yujin',
'gz_jiangwei','gz_zhangfei','gz_sp_zhugeliang', 'gz_jiangwei','gz_zhangfei','gz_sp_zhugeliang',
'gz_zhouyu','gz_lingcao','gz_daqiao', 'gz_zhouyu','gz_lingcao','gz_daqiao','gz_luyusheng',
'gz_yuji','gz_caiwenji','gz_diaochan', 'gz_yuji','gz_caiwenji','gz_diaochan',
], ],
'5':[ '5':[
@ -457,6 +457,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
gz_beimihu:["female","qun",3,["hmkguishu","hmkyuanyu"]], gz_beimihu:["female","qun",3,["hmkguishu","hmkyuanyu"]],
gz_jianggan:["male","wei",3,["weicheng","daoshu"]], gz_jianggan:["male","wei",3,["weicheng","daoshu"]],
gz_huaxin:['male','wei',3,['wanggui','xibing']], gz_huaxin:['male','wei',3,['wanggui','xibing']],
gz_luyusheng:['female','wu',3,['zhente','zhiwei']],
gz_cuimao:['male','wei',3,['gzzhengbi','gzfengying'],[]], gz_cuimao:['male','wei',3,['gzzhengbi','gzfengying'],[]],
gz_yujin:['male','wei',4,['gzjieyue'],['gzskin']], gz_yujin:['male','wei',4,['gzjieyue'],['gzskin']],
@ -879,13 +880,14 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
group:'xindiaodu_use', group:'xindiaodu_use',
frequent:true, frequent:true,
subSkill:{ subSkill:{
temp:{},
use:{ use:{
trigger:{ trigger:{
global:"useCard", global:"useCard",
}, },
filter:function (event,player){ filter:function (event,player){
return get.type(event.card)=='equip'&&event.player.isAlive()&& return get.type(event.card)=='equip'&&event.player.isAlive()&&
event.player.isFriendOf(player)&&(player==event.player||player.hasSkill('xindiaodu')); event.player.isFriendOf(player)&&(player==event.player||player.hasSkill('xindiaodu'))&&!event.player.hasSkill('xindiaodu_temp');
}, },
direct:true, direct:true,
content:function(){ content:function(){
@ -896,25 +898,9 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(result.bool){ if(result.bool){
player.logSkill('xindiaodu',trigger.player); player.logSkill('xindiaodu',trigger.player);
trigger.player.draw('nodelay'); trigger.player.draw('nodelay');
trigger.player.addTempSkill('xindiaodu_temp');
} }
}, },
ai:{
reverseEquip:true,
skillTagFilter:function (player){
if(!game.hasPlayer(function(current){
return current.isFriendOf(player)&&current.hasSkill('xindiaodu');
})){
return false;
}
},
effect:{
target:function (card,player,target,current){
if(get.type(card)=='equip'&&game.hasPlayer(function(current){
return current.isFriendOf(player)&&current.hasSkill('xindiaodu');
})) return [1,3];
},
},
},
}, },
}, },
trigger:{ trigger:{
@ -7419,7 +7405,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
gzzongyu_info:'当【六龙骖驾】进入其他角色的装备区后,你可以将你装备区内所有坐骑牌(至少一张)与【六龙骖驾】交换位置。锁定技,当你使用坐骑牌后,若场上或弃牌堆中有【六龙骖驾】,则将【六龙骖驾】置入你的装备区。', gzzongyu_info:'当【六龙骖驾】进入其他角色的装备区后,你可以将你装备区内所有坐骑牌(至少一张)与【六龙骖驾】交换位置。锁定技,当你使用坐骑牌后,若场上或弃牌堆中有【六龙骖驾】,则将【六龙骖驾】置入你的装备区。',
xindiaodu:"调度", xindiaodu:"调度",
"xindiaodu_info":"与你势力相同的角色使用装备牌时,其可以摸一张牌;出牌阶段开始时,你可以获得与你势力相同的一名角色装备区内的一张牌,然后你可以将此牌交给另一名与你势力相同的其他角色。", "xindiaodu_info":"每回合限一次,与你势力相同的角色使用装备牌时,其可以摸一张牌;出牌阶段开始时,你可以获得与你势力相同的一名角色装备区内的一张牌,然后你可以将此牌交给另一名与你势力相同的其他角色。",
yigui:"役鬼", yigui:"役鬼",
"yigui_info":"当你首次明置此武将牌时,你将剩余武将牌堆的两张牌扣置于游戏外,称为“魂”;你可以展示一张“魂”并将其置入剩余武将牌堆,视为使用了一张本回合内未以此法使用过的基本牌或普通锦囊牌。(若此牌需指定目标,则目标须为未确定势力的角色或野心家或与此“魂”势力相同的角色)", "yigui_info":"当你首次明置此武将牌时,你将剩余武将牌堆的两张牌扣置于游戏外,称为“魂”;你可以展示一张“魂”并将其置入剩余武将牌堆,视为使用了一张本回合内未以此法使用过的基本牌或普通锦囊牌。(若此牌需指定目标,则目标须为未确定势力的角色或野心家或与此“魂”势力相同的角色)",
"yigui_init":"役鬼", "yigui_init":"役鬼",
@ -8064,6 +8050,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
], ],
element:{ element:{
content:{ content:{
hideCharacter:function(){
'step 0'
event.trigger('hideCharacterEnd');
'step 1'
event.trigger('hideCharacterAfter');
},
chooseJunlingFor:function(){ chooseJunlingFor:function(){
'step 0' 'step 0'
var list=['junling1','junling2','junling3','junling4','junling5','junling6']; var list=['junling1','junling2','junling3','junling4','junling5','junling6'];
@ -8461,10 +8453,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
return; return;
} }
game.addVideo('hideCharacter',this,num); game.addVideo('hideCharacter',this,num);
var toHide;
var skills; var skills;
switch(num){ switch(num){
case 0: case 0:
if(log!==false) game.log(this,'暗置了主将'+get.translation(this.name1)); if(log!==false) game.log(this,'暗置了主将'+get.translation(this.name1));
toHide=this.name1;
skills=lib.character[this.name][3]; skills=lib.character[this.name][3];
this.name=this.name2; this.name=this.name2;
this.sex=lib.character[this.name2][0]; this.sex=lib.character[this.name2][0];
@ -8472,6 +8466,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
break; break;
case 1: case 1:
if(log!==false) game.log(this,'暗置了副将'+get.translation(this.name2)); if(log!==false) game.log(this,'暗置了副将'+get.translation(this.name2));
toHide=this.name2;
skills=lib.character[this.name2][3]; skills=lib.character[this.name2][3];
this.classList.add('unseen2'); this.classList.add('unseen2');
break; break;
@ -8499,6 +8494,11 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
this.skills.remove(skills[i]); this.skills.remove(skills[i]);
} }
this.checkConflict(); this.checkConflict();
var next=game.createEvent('hideCharacter',false);
next.player=this;
next.toHide=toHide;
next.setContent('hideCharacter');
return next;
}, },
removeCharacter:function(num){ removeCharacter:function(num){
var name=this['name'+(num+1)]; var name=this['name'+(num+1)];

View File

@ -6305,15 +6305,18 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
game.log(source,'出场'); game.log(source,'出场');
source.node.identity.dataset.color=get.translation(source.side+'Color'); source.node.identity.dataset.color=get.translation(source.side+'Color');
source.draw(4); source.draw(4);
_status.event.parent.parent.parent.untrigger(false,source); var evt=event.getParent('dying');
var evt=_status.event.parent.parent.parent; if(evt&&evt.parent){
for(var i=0;i<100;i++){
evt=evt.parent; evt=evt.parent;
if(evt.player==source){ evt.untrigger(false,source);
evt.finish(); for(var i=0;i<100;i++){
} evt=evt.parent;
if(evt.name=='phase'){ if(evt.player==source){
break; evt.finish();
}
if(evt.name=='phase'){
break;
}
} }
} }
if(lib.storage.single_control){ if(lib.storage.single_control){
@ -6345,15 +6348,18 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
game.log(source,'出场'); game.log(source,'出场');
// source.node.identity.dataset.color=source.side+'zhu'; // source.node.identity.dataset.color=source.side+'zhu';
source.draw(4); source.draw(4);
_status.event.parent.parent.parent.untrigger(false,source); var evt=event.getParent('dying');
var evt=_status.event.parent.parent.parent; if(evt&&evt.parent){
for(var i=0;i<100;i++){
evt=evt.parent; evt=evt.parent;
if(evt.player==source){ evt.untrigger(false,source);
evt.finish(); for(var i=0;i<100;i++){
} evt=evt.parent;
if(evt.name=='phase'){ if(evt.player==source){
break; evt.finish();
}
if(evt.name=='phase'){
break;
}
} }
} }
game.triggerEnter(source); game.triggerEnter(source);
@ -6488,7 +6494,20 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
game.log(source,'出场'); game.log(source,'出场');
source.draw(4); source.draw(4);
_status.event.parent.parent.parent.untrigger(false,source); var evt=event.getParent('dying');
if(evt&&evt.parent){
evt=evt.parent;
evt.untrigger(false,source);
for(var i=0;i<100;i++){
evt=evt.parent;
if(evt.player==source){
evt.finish();
}
if(evt.name=='phase'){
break;
}
}
}
game.addVideo('reinit',source,[name,color]); game.addVideo('reinit',source,[name,color]);
game.triggerEnter(source); game.triggerEnter(source);
}, },