v1.9.92.4

This commit is contained in:
Spmario233 2019-09-13 21:35:44 +08:00 committed by GitHub
parent b85d0bbafe
commit f775ff4c91
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 725 additions and 83 deletions

View File

@ -223,6 +223,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
enable:true,
filterTarget:true,
selectTarget:[1,2],
complexTarget:true,
content:function(){
target.link();
},

View File

@ -660,14 +660,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
};
"step 1"
if(result.bool){
player.respond(result.cards,'highlight');
player.respond(result.cards,'highlight','jilue_guicai');
}
else{
event.finish();
}
"step 2"
if(result.bool){
player.logSkill('jilue_guicai');
//player.logSkill('jilue_guicai');
player.storage.renjie--;
player.updateMarks();
if(trigger.player.judging[0].clone){
@ -1828,7 +1828,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.dialog.close();
var card=event.card;
if(result.control=='gongxin_top'){
target.lose(card);
target.lose(card,ui.special);
player.showCards(card,'置于牌堆顶');
}
else{

View File

@ -1584,7 +1584,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
content:function(){
player.storage.nzry_shicai.push(get.type(trigger.card,'trick'));
if(trigger.name=='useCard'&&['equip','delay'].contains(get.type(trigger.card))) trigger.cancel();
for(var i=0;i<trigger.cards.length;i++){
if(get.position(trigger.cards[i])=='d'){
ui.cardPile.insertBefore(trigger.cards[i],ui.cardPile.firstChild);
@ -1593,6 +1592,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
};
player.draw();
if(event.triggername=='useCard'&&['equip','delay'].contains(get.type(trigger.card))){
trigger.cancel();
game.broadcastAll(ui.clear);
}
},
},
"3":{

View File

@ -12050,7 +12050,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
kongrong:'孔融',
fuwan:'伏完',
sp_pangde:'SP庞德',
sp_sunshangxiang:'孙尚香',
sp_sunshangxiang:'SP孙尚香',
zhugedan:'诸葛诞',
sp_machao:'SP马超',
sp_jiangwei:'SP姜维',

View File

@ -4020,13 +4020,49 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.lose(trigger.cards,ui.special);
player.line(trigger.targets,trigger.card.nature);
trigger.line=false;
trigger.animate=false;
event.prompt=get.translation(player)+'声明了'+get.translation(trigger.card.name)+',是否质疑?';
event.guessers=game.filterPlayer(function(current){
return current!=player&&!current.hasSkill('chanyuan');
});
event.guessers.sort(lib.sort.seat);
game.broadcastAll(function(card){
_status.guhuoNode=card.copy('thrown');
if(lib.config.cardback_style!='default'){
_status.guhuoNode.style.transitionProperty='none';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.classList.add('infohidden');
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transitionProperty='';
}
else{
_status.guhuoNode.classList.add('infohidden');
}
_status.guhuoNode.style.transform='perspective(600px) rotateY(180deg) translateX(0)';
player.$throwordered2(_status.guhuoNode);
},trigger.cards[0]);
event.onEnd01=function(){
_status.guhuoNode.removeEventListener('webkitTransitionEnd',event.onEnd01);
_status.guhuoNode.style.transition='all ease-in 0.3s';
_status.guhuoNode.style.transform='perspective(600px) rotateY(270deg) translateX(52px)';
var onEnd=function(){
_status.guhuoNode.classList.remove('infohidden');
_status.guhuoNode.style.transition='all 0s';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transform='perspective(600px) rotateY(-90deg) translateX(52px)';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transition='';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transform='';
_status.guhuoNode.removeEventListener('webkitTransitionEnd',onEnd);
}
_status.guhuoNode.listenTransition(onEnd);
};
'step 1'
if(event.guessers.length==0) event.finish();
if(event.guessers.length==0) event.goto(3);
else{
event.guessers[0].chooseControl('质疑','不质疑').set('prompt',event.prompt).set('ai',function(){
if(get.attitude(event.guessers[0],player)>0) return '不质疑';
@ -4036,7 +4072,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 2'
if(!result.control) result.control='不质疑';
event.guessers[0].chat(result.control);
game.delay();
game.delay(1);
if(result.control=='不质疑'){
game.log(event.guessers[0],'#g不质疑');
event.guessers.remove(event.guessers[0]);
@ -4045,6 +4081,14 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.log(event.guessers[0],'#y质疑');
}
'step 3'
game.broadcastAll(function(onEnd){
_status.guhuoNode.listenTransition(onEnd);
},event.onEnd01);
'step 4'
game.delay(3.2);
'step 5'
if(!event.guessers.length) event.finish();
'step 6'
if(trigger.card.name==trigger.cards[0].name){
event.guessers[0].popup('质疑错误','fire');
event.guessers[0].addSkill('chanyuan');
@ -4054,8 +4098,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.guessers[0].popup('质疑正确','wood');
game.log(player,'使用的',trigger.card,'作废了');
game.cardsDiscard(trigger.cards);
game.broadcastAll(ui.clear);
trigger.cancel();
}
game.delay();
},
},
chanyuan:{
@ -4148,9 +4194,45 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return current!=player&&!current.hasSkill('chanyuan');
});
event.guessers.sort(lib.sort.seat);
game.broadcastAll(function(card){
_status.guhuoNode=card.copy('thrown');
if(lib.config.cardback_style!='default'){
_status.guhuoNode.style.transitionProperty='none';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.classList.add('infohidden');
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transitionProperty='';
}
else{
_status.guhuoNode.classList.add('infohidden');
}
_status.guhuoNode.style.transform='perspective(600px) rotateY(180deg) translateX(0)';
player.$throwordered2(_status.guhuoNode);
},result.cards[0]);
event.onEnd01=function(){
_status.guhuoNode.removeEventListener('webkitTransitionEnd',event.onEnd01);
_status.guhuoNode.style.transition='all ease-in 0.3s';
_status.guhuoNode.style.transform='perspective(600px) rotateY(270deg) translateX(52px)';
var onEnd=function(){
_status.guhuoNode.classList.remove('infohidden');
_status.guhuoNode.style.transition='all 0s';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transform='perspective(600px) rotateY(-90deg) translateX(52px)';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transition='';
ui.refresh(_status.guhuoNode);
_status.guhuoNode.style.transform='';
_status.guhuoNode.removeEventListener('webkitTransitionEnd',onEnd);
}
_status.guhuoNode.listenTransition(onEnd);
};
}else event.finish();
"step 2"
if(event.guessers.length==0) event.goto(5);
if(event.guessers.length==0) event.goto(4);
else{
event.guessers[0].chooseControl('质疑','不质疑').set('prompt',event.prompt).set('ai',function(){
if(get.attitude(event.guessers[0],player)>0) return '不质疑';
@ -4169,6 +4251,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.log(event.guessers[0],'#y质疑');
}
"step 4"
game.broadcastAll(function(onEnd){
_status.guhuoNode.listenTransition(onEnd);
},event.onEnd01);
"step 5"
game.delay(3.2);
if(!event.guessers.length) event.goto(7);
"step 6"
if(event.name==event.card.name){
event.guessers[0].popup('质疑错误','fire');
event.guessers[0].addSkill('chanyuan');
@ -4180,10 +4269,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.cardsDiscard(event.card);
event.finish();
}
"step 5"
"step 7"
trigger.untrigger();
trigger.responded=true;
trigger.result={bool:true,card:{name:event.name},cards:[event.card]};
trigger.result={bool:true,card:{name:event.name},cards:[event.card],noanimate:true};
},
ai:{
order:4,

View File

@ -7247,6 +7247,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.bool){
trigger.player.addTempSkill('zishou2');
}
else{
trigger.player.storage.zhuikong_distance=player;
trigger.player.addTempSkill('zhuikong_distance');
}
},
subSkill:{
distance:{
sub:true,
onremove:true,
mod:{
globalFrom:function(from,to,distance){
if(from.storage.zhuikong_distance==to) return -Infinity;
},
},
},
},
},
qiuyuan:{
@ -10086,7 +10101,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
quanji_info:'每当你受到1点伤害后你可以可摸一张牌然后将一张手牌置于武将牌上称为“权”你的手牌上限+XX为“权”的数量。',
xianzhou_info:'限定技。出牌阶段你可以将装备区里的所有牌交给一名其他角色然后该角色选择一项令你回复X点体力;或对其攻击范围内的X名角色各造成1点伤害(X为你以此法交给该角色的牌的数量)。',
qieting_info:'一名其他角色的结束阶段,若其未于此回合内使用过指定另一名角色为目标的牌,你可以选择一项:将其装备区里的一张牌移动至你装备区里的相应位置(可替换原装备);或摸一张牌。',
zhuikong_info:'一名其他角色的准备阶段,若你已受伤,你可以与该角色拼点,若你赢,该角色本回合使用的牌不能指定除该角色外的角色为目标',
zhuikong_info:'一名其他角色的准备阶段,若你已受伤,你可以与该角色拼点,若你赢,该角色本回合使用的牌不能指定除该角色外的角色为目标。若你没赢其本回合至你的距离视为1。',
qiuyuan_info:'当你成为【杀】的目标时,你可以令另一名其他角色选择一项:①、交给你一张【闪】;②、成为此【杀】的额外目标。',
gongji_info:'出牌阶段,你可以弃置一张牌,令你的攻击范围无限,直到回合结束,然后若你以此法弃置的牌为装备牌,你可以弃置一名其他角色的一张牌。每回合限一次。',
zhuiyi_info:'你死亡时可以令一名其他角色杀死你的角色除外摸三张牌然后令其回复1点体力。',

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'1.9.92.3',
'1.9.92.4',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/music_danji.mp3',
@ -1879,7 +1879,6 @@ window.noname_asset_list=[
'image/background/wangshi_bg.jpg',
'image/background/xiongxin_bg.jpg',
'image/background/zhanyun_bg.jpg',
'image/background/xinsha_bg.jpg',
'image/card/db_atk1.jpg',
'image/card/db_atk2.jpg',
@ -3156,6 +3155,18 @@ window.noname_asset_list=[
'image/mode/boss/card/xuwangzhimian.jpg',
'image/mode/boss/card/yihuajiemu.png',
'image/mode/boss/card/qicaishenlu.jpg',
'image/mode/boss/character/boss_bianchengwang.jpg',
'image/mode/boss/character/boss_chujiangwang.jpg',
'image/mode/boss/character/boss_dushiwang.jpg',
'image/mode/boss/character/boss_pingdengwang.jpg',
'image/mode/boss/character/boss_qinguangwang.jpg',
'image/mode/boss/character/boss_songdiwang.jpg',
'image/mode/boss/character/boss_taishanwang.jpg',
'image/mode/boss/character/boss_wuguanwang.jpg',
'image/mode/boss/character/boss_yanluowang.jpg',
'image/mode/boss/character/boss_zhuanlunwang.jpg',
'image/mode/boss/character/boss_xiangliu.jpg',
'image/mode/boss/character/boss_zhuyan.jpg',
'image/mode/boss/character/boss_bifang.jpg',

View File

@ -11184,6 +11184,7 @@
info.prerespond(event.result,player);
}
var next=player.respond(event.result.cards,event.result.card,event.animate,event.result.skill,event.source);
if(event.result.noanimate) next.animate=false;
if(event.parent.card&&event.parent.type=='card'){
next.set('respondTo',[event.parent.player,event.parent.card]);
}
@ -13234,11 +13235,26 @@
next.type='precard';
}
"step 2"
var info=get.info(card);
if(num==0&&targets.length>1){
if(!info.multitarget){
if(!event.fixedSeat){
targets.sortBySeat(player);
}
for(var i=0;i<targets.length;i++){
targets[i].animate('target');
}
}
else{
for(var i=0;i<targets.length;i++){
targets[i].animate('target');
}
}
}
if(targets[num]&&targets[num].isDead()) return;
if(targets[num]&&targets[num].isOut()) return;
if(targets[num]&&targets[num].removed) return;
if(targets[num]&&event.excluded.contains(targets[num])) return;
var info=get.info(card);
if(targets.length==0&&!info.notarget) return;
var next=game.createEvent(card.name);
next.setContent(info.content);
@ -13259,21 +13275,6 @@
if(info.targetDelay===false){
event.targetDelay=false;
}
if(num==0&&next.targets.length>1){
if(!info.multitarget){
if(!event.fixedSeat){
targets.sortBySeat(player);
}
for(var i=0;i<targets.length;i++){
targets[i].animate('target');
}
}
else{
for(var i=0;i<targets.length;i++){
targets[i].animate('target');
}
}
}
next.target=targets[num];
if(next.target&&!info.multitarget){
if(num==0&&targets.length>1){
@ -14438,17 +14439,22 @@
if(event.animate!==false){
player.$die(source);
}
if(player.dieAfter) player.dieAfter(source);
event.trigger('die');
"step 1"
if(player.dieAfter) player.dieAfter(source);
"step 2"
event.trigger('die');
"step 3"
if(player.isDead()){
event.cards=player.getCards('hej');
if(event.cards.length){
player.lose(event.cards).forceDie=true;
player.$throw(event.cards,1000);
game.log(player,'弃置了',event.cards,event.logvid);
game.cardsDiscard(event.cards);
}
}
"step 4"
if(player.dieAfter2) player.dieAfter2(source);
"step 5"
if(typeof _status.coin=='number'&&source&&!_status.auto){
if(source==game.me||source.isUnderControl()){
_status.coin+=10;
@ -42178,10 +42184,10 @@
var list=ui.create.div('.caption');
if(get.is.phoneLayout()){
list.style.maxHeight='250px';
list.style.maxHeight='150px';
}
else{
list.style.maxHeight='350px';
list.style.maxHeight='250px';
}
list.style.overflow='scroll';
lib.setScroll(list);
@ -46655,10 +46661,13 @@
var i,j;
if(typeof obj=='string'){
if(obj.length<=3){
var bool=true;
for(i=0;i<obj.length;i++){
if(/h|e|j/.test(obj[i])==false) return;
if(/h|e|j/.test(obj[i])==false){
bool=false;break;
}
}
return 'position';
if(bool) return 'position';
}
if(lib.nature.contains(obj)) return 'nature';
}

View File

@ -1,24 +1,21 @@
window.noname_update={
version:'1.9.92.3',
update:'1.9.92.2.1',
version:'1.9.92.4',
update:'1.9.92.3',
changeLog:[
'聊天表情by 极光)',
'蒋干手杀台服武将一将成名TW',
'新杀background',
'十殿阎罗强势来袭',
'BUG修复',
],
files:[
'character/refresh.js',
'card/extra.js',
'character/extra.js',
'character/shenhua.js',
'character/sp.js',
'character/standard.js',
'character/tw.js',
'character/xinghuoliaoyian.js',
'character/yijiang.js',
'mode/boss.js',
'mode/guozhan.js',
'mode/identity.js',
'mode/versus.js',
'game/config.js',
'game/game.js',
'game/package.js',
'game/source.js',
]
};

View File

@ -944,19 +944,19 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
characterPack:{
mode_boss:{
boss_hundun:['male','shen',25,['boss_xiongshou','boss_wuzang','boss_xiangde','boss_yinzei','boss_yinzei_switch'],['qun','boss','bossallowed'],'qun'],
boss_qiongqi:['male','shen','20/25',['boss_xiongshou','boss_zhue','boss_futai','boss_yandu','boss_yandu_switch'],['qun','boss','bossallowed'],'qun'],
boss_taotie:['male','shen',20,['boss_xiongshou','boss_tanyu','boss_cangmu','boss_jicai','boss_jicai_switch'],['qun','boss','bossallowed'],'qun'],
boss_taowu:['male','shen',25,['boss_xiongshou','boss_minwan','boss_nitai','boss_luanchang','boss_luanchang_switch'],['qun','boss','bossallowed'],'qun'],
boss_zhuyin:['male','shen',4,['boss_xiongshou'],['qun','hiddenboss','bossallowed'],'qun'],
boss_hundun:['male','qun',25,['boss_xiongshou','boss_wuzang','boss_xiangde','boss_yinzei','boss_yinzei_switch'],['qun','boss','bossallowed'],'qun'],
boss_qiongqi:['male','qun','20/25',['boss_xiongshou','boss_zhue','boss_futai','boss_yandu','boss_yandu_switch'],['qun','boss','bossallowed'],'qun'],
boss_taotie:['male','qun',20,['boss_xiongshou','boss_tanyu','boss_cangmu','boss_jicai','boss_jicai_switch'],['qun','boss','bossallowed'],'qun'],
boss_taowu:['male','qun',25,['boss_xiongshou','boss_minwan','boss_nitai','boss_luanchang','boss_luanchang_switch'],['qun','boss','bossallowed'],'qun'],
boss_zhuyin:['male','qun',4,['boss_xiongshou'],['qun','hiddenboss','bossallowed'],'qun'],
boss_xiangliu:['male','shen',25,['boss_yaoshou','boss_duqu','boss_jiushou','boss_echou','boss_echou_switch'],['qun','boss','bossallowed'],'qun'],
boss_zhuyan:['male','shen','25/30',['boss_yaoshou','boss_bingxian','boss_juyuan','boss_xushi','boss_xushi_switch'],['qun','boss','bossallowed'],'qun'],
boss_bifang:['male','shen',25,['boss_yaoshou','boss_zhaohuo','boss_honglianx','boss_yanyu','boss_yanyu_switch'],['qun','boss','bossallowed'],'qun'],
boss_yingzhao:['male','shen',25,['boss_yaoshou','boss_fengdong','boss_xunyou','boss_sipu','boss_sipu_switch'],['qun','boss','bossallowed'],'qun'],
boss_xiangliu:['male','qun',25,['boss_yaoshou','boss_duqu','boss_jiushou','boss_echou','boss_echou_switch'],['qun','boss','bossallowed'],'qun'],
boss_zhuyan:['male','qun','25/30',['boss_yaoshou','boss_bingxian','boss_juyuan','boss_xushi','boss_xushi_switch'],['qun','boss','bossallowed'],'qun'],
boss_bifang:['male','qun',25,['boss_yaoshou','boss_zhaohuo','boss_honglianx','boss_yanyu','boss_yanyu_switch'],['qun','boss','bossallowed'],'qun'],
boss_yingzhao:['male','qun',25,['boss_yaoshou','boss_fengdong','boss_xunyou','boss_sipu','boss_sipu_switch'],['qun','boss','bossallowed'],'qun'],
boss_qingmushilian:['male','',0,['boss_qingmu','boss_qingmu_intro1','boss_qingmu_intro2','boss_qingmu_intro3'],['boss'],'wu'],
boss_qinglong:['male','shen',4,['boss_shenyi','releiji','boss_qingmu2'],['wu','hiddenboss','bossallowed']],
boss_qinglong:['male','qun',4,['boss_shenyi','releiji','boss_qingmu2'],['wu','hiddenboss','bossallowed']],
boss_mushengoumang:['male','shen',5,['boss_shenyi','boss_buchun','boss_qingmu3'],['wu','hiddenboss','bossallowed']],
boss_shujing:['female','shen',2,['boss_cuidu'],['wu','hiddenboss','bossallowed']],
boss_taihao:['male','shen',6,['boss_shenyi','boss_shenen','boss_qingyi'],['wu','hiddenboss','bossallowed']],
@ -996,6 +996,17 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
boss_mo:['female','shen',5,['boss_guimei','enyuan','boss_beiming','boss_bianshen2'],['shu','hiddenboss','bossallowed']],
boss_wang:['male','shen',5,['boss_guimei','boss_luolei','huilei','boss_bianshen2'],['shu','hiddenboss','bossallowed']],
boss_liang:['female','shen',5,['boss_guimei','boss_guihuo','boss_minbao','boss_bianshen2'],['shu','hiddenboss','bossallowed']],
boss_qinguangwang:['male','qun',3,['boss_panguan','boss_juhun','boss_wangxiang','boss_xhuanren'],['shu','boss','bossallowed'],'shu'],
boss_chujiangwang:['male','qun',4,['weimu','refankui','boss_bingfeng'],['shu','hiddenboss','bossallowed']],
boss_songdiwang:['male','qun',4,['boss_heisheng','boss_shengfu','enyuan'],['shu','hiddenboss','bossallowed']],
boss_wuguanwang:['male','qun',4,['boss_zhiwang','boss_gongzheng','boss_xuechi'],['shu','hiddenboss','bossallowed']],
boss_yanluowang:['male','qun',4,['boss_tiemian','boss_zhadao','boss_zhuxin'],['shu','hiddenboss','bossallowed']],
boss_bianchengwang:['male','qun',4,['boss_leizhou','boss_leifu','boss_leizhu'],['shu','hiddenboss','bossallowed']],
boss_taishanwang:['male','qun',4,['boss_fudu','boss_kujiu','boss_renao'],['shu','hiddenboss','bossallowed']],
boss_dushiwang:['male','qun',4,['boss_remen','boss_zhifen','boss_huoxing'],['shu','hiddenboss','bossallowed']],
boss_pingdengwang:['male','qun',4,['boss_suozu','boss_abi','boss_pingdeng'],['shu','hiddenboss','bossallowed']],
boss_zhuanlunwang:['male','qun',6,['boss_modao','boss_lunhui','boss_wangsheng','boss_fanshi'],['shu','hiddenboss','bossallowed']],
boss_lvbu1:['male','shen',8,['mashu','wushuang','boss_baonu','boss_jingjia','boss_aozhan'],['qun','boss','bossallowed'],'wei'],
boss_lvbu2:['male','shen',6,['mashu','wushuang','xiuluo','shenwei','shenji'],['qun','hiddenboss','bossallowed'],'qun'],
@ -1810,6 +1821,19 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
}
}
},
boss_qinguangwang:{
chongzheng:0,
checkResult:function(player){
if(player==game.boss&&(!_status.shidianyanluo_level||_status.shidianyanluo_level<3)){
return false;
}
},
init:function(){
_status.additionalReward=function(){
return 500;
}
}
},
boss_nianshou:{
chongzheng:0,
init:function(){
@ -1946,6 +1970,420 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
},
skill:{
boss_panguan:{
mod:{
targetEnabled:function(card){
if(get.type(card)=='delay') return false;
},
},
},
boss_juhun:{
trigger:{player:'phaseEnd'},
forced:true,
content:function(){
var list=game.filterPlayer(function(current){
return current!=player;
});
if(list.length){
var target=list.randomGet();
player.line(target);
target[['turnOver','link'].randomGet()]();
}
},
},
boss_wangxiang:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
game.countPlayer(function(current){
if(current!=player&&current.countCards('e')){
player.line(current);
current.discard(current.getCards('e'));
};
});
},
},
boss_xhuanren:{
nobracket:true,
global:'boss_xhuanren2'
},
boss_xhuanren2:{
trigger:{player:'dieBegin'},
forced:true,
priority:-10,
fixed:true,
globalFixed:true,
charlotte:true,
silent:true,
popup:false,
filter:function(event,player){
if(lib.config.mode!='boss') return false;
return player==game.boss;
},
content:function(){
var next=game.createEvent('shidianyanluo_huanren',false,trigger.getParent());
next.player=player;
next.forceDie=true;
next.setContent(lib.skill.boss_xhuanren2.contentx);
},
contentx:function(){
'step 0'
game.delay();
if(!_status.shidianyanluo_level) _status.shidianyanluo_level=0;
var list=[
['boss_chujiangwang','boss_songdiwang','boss_wuguanwang','boss_yanluowang'],
['boss_bianchengwang','boss_taishanwang','boss_dushiwang','boss_pingdengwang'],
['boss_zhuanlunwang'],
][_status.shidianyanluo_level];
if(list.length==1) event._result={control:list[0]};
else player.chooseControl(list).set('prompt','请选择下一个出战的角色').set('forceDie',true).ai=function(){
return list.randomGet();
};
'step 1'
_status.shidianyanluo_level++;
game.changeBoss(result.control);
}
},
boss_bingfeng:{
trigger:{player:'dieBegin'},
forced:true,
filter:function(event){
return event.source&&!event.source.isTurnedOver();
},
logTarget:'source',
content:function(){
trigger.source.turnOver();
}
},
boss_heisheng:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
player.line(game.players.slice(0));
game.countPlayer(function(current){
if(current!=player) current.link();
});
},
},
boss_shengfu:{
trigger:{player:'phaseEnd'},
forced:true,
popup:false,
content:function(){
var list=[];
game.countPlayer(function(current){
if(current==player) return;
var es=current.getCards('e',{subtype:['equip3','equip4','equip6']})
if(es.length) list.push([current,es]);
});
if(list.length){
player.logSkill('boss_heisheng');
var current=list.randomGet();
player.line(current[0]);
current[0].discard(current[1].randomGet());
}
},
},
boss_zhiwang:{
derivation:'boss_zhiwang_planetarian',
trigger:{global:'gainEnd'},
filter:function(event,player){
return event.player!=player&&!(event.getParent().name=='draw'&&event.getParent(2).name=='phaseDraw')&&event.player.countCards('h');
},
forced:true,
logTarget:'player',
content:function(){
var evt=trigger.getParent('boss_zhiwang');
if(evt&&evt.name=='boss_zhiwang'){
trigger.player.uninit();
trigger.player.init('sunce');
}
var hs=trigger.player.getCards('h');
if(hs.length){
trigger.player.discard(hs.randomGet());
}
},
subSkill:{planetarian:{}},
},
boss_gongzheng:{
trigger:{player:'phaseBegin'},
forced:true,
filter:function(event,player){
return player.countCards('j')>0;
},
content:function(){
player.discard(player.getCards('j').randomGet())
},
},
boss_xuechi:{
trigger:{player:'phaseEnd'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
var target=list.randomGet();
player.line(target);
target.loseHp(2);
},
},
boss_tiemian:{
inherit:'renwang_skill',
filter:function(event,player){
if(!player.isEmpty(2)) return false;
return lib.skill.renwang_skill.filter.apply(this,arguments);
},
},
boss_zhadao:{
inherit:'qingang_skill',
},
boss_zhuxin:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
'step 0'
player.chooseTarget('【诛心】请选择一名角色令其受到2点伤害。',function(card,player,target){
return target!=player&&!game.hasPlayer(function(current){
return current!=player&&current!=target&&current.hp<target.hp;
})
}).ai=function(target){
return -get.attitude(_status.event.player,target);
};
'step 1'
if(result.bool){
var target=result.targets[0];
player.line(target);
target.damage(2);
}
},
},
boss_leizhou:{
trigger:{player:'phaseBegin'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
var target=list.randomGet();
player.line(target);
target.damage('thunder');
}
}
},
boss_leifu:{
trigger:{player:'phaseAfter'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
var target=list.randomGet();
player.line(target);
target.link();
}
}
},
boss_leizhu:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
list.sort(lib.sort.seat);
player.line(list);
for(var i=0;i<list.length;i++){
list[i].damage('thunder');
}
}
}
},
boss_fudu:{
trigger:{global:'useCard'},
forced:true,
filter:function(event,player){
return event.card.name=='tao'&&event.player!=player&&game.players.length>2;
},
content:function(){
var list=game.players.slice(0);
list.remove(player);
list.remove(trigger.player);
var target=list.randomGet();
player.line(target);
target.loseHp();
},
},
boss_kujiu:{
trigger:{global:'phaseBegin'},
forced:true,
filter:function(event,player){
return event.player!=player;
},
logTarget:'player',
content:function(){
'step 0'
trigger.player.loseHp();
'step 1'
trigger.player.useCard({name:'jiu'},trigger.player);
},
},
boss_renao:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
var target=list.randomGet();
player.line(target);
target.damage(3,'fire');
}
}
},
boss_remen:{
inherit:'boss_manjia',
},
boss_zhifen:{
trigger:{player:'phaseBegin'},
forced:true,
content:function(){
'step 0'
var list=game.players.slice(0);
list.remove(player);
if(list.length){
var target=list.randomGet();
player.line(target);
event.target=target;
if(target.countGainableCards(player,'h')) player.gainPlayerCard(target,'h',true);
}
else event.finish();
'step 1'
target.damage('fire');
}
},
boss_huoxing:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
list.sort(lib.sort.seat);
player.line(list);
for(var i=0;i<list.length;i++){
list[i].damage('fire');
}
}
}
},
boss_suozu:{
trigger:{player:'phaseBegin'},
forced:true,
content:function(){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
list.sort(lib.sort.seat);
player.line(list);
for(var i=0;i<list.length;i++){
list[i].link();
}
}
}
},
boss_abi:{
trigger:{player:'damageEnd'},
forced:true,
filter:function(event){
return event.source!=undefined;
},
logTarget:'source',
content:function(){
trigger.source.damage().nature=lib.linked.randomGet();
},
},
boss_pingdeng:{
trigger:{player:'dieBegin'},
forced:true,
content:function(){
'step 0'
var list=game.filterPlayer(function(current){
return current!=player&&!game.hasPlayer(function(current2){
return current2.hp>current.hp;
});
});
if(list.length){
var target=list.randomGet()
player.line(target);
target.damage(2).nature=lib.linked.randomGet();
}
else event.finish();
'step 1'
var list=game.filterPlayer(function(current){
return current!=player&&!game.hasPlayer(function(current2){
return current2.hp>current.hp;
});
});
if(list.length){
var target=list.randomGet();
player.line(target);
target.damage().nature=lib.linked.randomGet();
}
},
},
boss_lunhui:{
trigger:{player:'phaseBegin'},
forced:true,
filter:function(event,player){
return player.hp<=2&&game.hasPlayer(function(current){
return current!=player&&current.hp>2;
});
},
content:function(){
var list=game.filterPlayer(function(current){
return current!=player&&current.hp>2;
});
if(list.length){
var target=list.randomGet();
player.line(target);
var hp1=player.hp;
var hp2=target.hp;
player.hp=Math.min(player.maxHp,hp2);
target.hp=Math.min(target.maxHp,hp1);
player.update();
target.update();
game.log(player,'和',target,'交换了体力值')
}
},
},
boss_wangsheng:{
trigger:{player:'phaseUseBegin'},
forced:true,
content:function(){
var name=['nanman','wanjian'].randomGet();
player.useCard({name:name},game.filterPlayer(function(current){
return player.canUse({name:name},current)
}),'noai');
},
},
boss_fanshi:{
trigger:{player:'damageEnd'},
forced:true,
content:function(){
if(player.hasSkill('boss_fanshi_terra')){
var list=game.players.slice(0);
list.remove(player);
if(list.length){
var target=list.randomGet();
player.line(target);
target.damage();
}
}
else player.addTempSkill('boss_fanshi_terra');
},
},
boss_fanshi_terra:{charlotte:true},
"boss_jingjia":{},
"boss_aozhan":{
forced:true,
@ -7908,6 +8346,77 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
"hongmianbaihuapao_info":"锁定技,防止你受到的属性伤害。",
"linglongshimandai":"玲珑狮蛮带",
"linglongshimandai_info":"当其他角色使用牌指定你为唯一目标后,你可以进行一次判定,若判定结果为红桃,则此牌对你无效。",
boss_qinguangwang:'秦广王',
boss_panguan:'判官',
boss_panguan_info:' 锁定技,你不能成为延时类锦囊的目标。',
boss_juhun:'拘魂',
boss_juhun_info:'锁定技,结束阶段,你令随机一名其他角色的武将牌翻面或横置。',
boss_wangxiang:'望乡',
boss_wangxiang_info:'锁定技,当你死亡时,你令所有其他角色弃置其装备区内的所有牌。',
boss_chujiangwang:'楚江王',
boss_bingfeng:'冰封',
boss_bingfeng_info:'锁定技,你死亡时,若杀死你的角色武将牌是正面朝上, 你令其翻面。',
boss_songdiwang:'宋帝王',
boss_heisheng:'黑绳',
boss_heisheng_info:'锁定技,你死亡时,横置所有场上角色。',
boss_shengfu:'绳缚',
boss_shengfu_info:'锁定技,你的回合结束时,随机弃置一张场上其他角色的坐骑牌。',
boss_wuguanwang:'五官王',
boss_zhiwang:'治妄',
boss_zhiwang_info:'锁定技,当其他角色于摸牌阶段外获得牌时,你随机弃置其一张手牌。',
boss_zhiwang_planetarian:'注意事项',
boss_zhiwang_planetarian_info:'若触发【治妄】的角色因【治妄】触发的其他的技能(如【伤逝】【连营】等)继续获得了牌,则该角色将其武将牌变更为孙策。',
boss_gongzheng:'公正',
boss_gongzheng_info:'锁定技,准备阶段,若你判定区有牌,你随机弃置一张你判定区的牌。',
boss_xuechi:'血池',
boss_xuechi_info:'锁定技你的回合结束时令随机一名其他角色失去2点体力。',
boss_yanluowang:'阎罗王',
boss_tiemian:'铁面',
boss_tiemian_info:'锁定技,你的防具区没有牌时,视为你装备【仁王盾】。',
boss_zhadao:'铡刀',
boss_zhadao_info:'锁定技,你使用【杀】指定目标后,你令目标角色防具无效。',
boss_zhuxin:'诛心',
boss_zhuxin_info:'锁定技你死亡时你令场上血量最少的一名其他角色受到2点伤害。',
boss_bianchengwang:'卞城王',
boss_leizhou:'雷咒',
boss_leizhou_info:'锁定技准备阶段你对随机一名其他角色造成1点雷属性伤害',
boss_leifu:'雷缚',
boss_leifu_info:'锁定技,你的回合结束时,随机横置一名其他角色。',
boss_leizhu:'雷诛',
boss_leizhu_info:'锁定技你死亡时对所有其他角色造成依次造成1点雷属性伤害。',
boss_taishanwang:'泰山王',
boss_fudu:'服毒',
boss_fudu_info:'锁定技其他角色使用【桃】时你令随机另一名其他角色失去1点体力。',
boss_kujiu:'苦酒',
boss_kujiu_info:'锁定技其他角色准备阶段你令其失去1点体力然后该角色视为使用一张【酒】。',
boss_renao:'热恼',
boss_renao_info:'锁定技你死亡时你令随机一名其他角色受到3点火属性伤害。',
boss_dushiwang:'都市王',
boss_remen:'热闷',
boss_remen_info:'锁定技,若你的装备区内没有防具牌,则【南蛮入侵】、【万箭齐发】和普通【杀】对你无效。',
boss_zhifen:'炙焚',
boss_zhifen_info:'锁定技准备阶段你随机选择一名其他角色获得其1张手牌没有则不获得并对其造成1点火属性伤害。',
boss_huoxing:'火刑',
boss_huoxing_info:'锁定技你死亡时你对所有其他角色造成1点火属性伤害。',
boss_pingdengwang:'平等王',
boss_suozu:'锁足',
boss_suozu_info:'锁定技,准备阶段,你令所有其他角色横置。',
boss_abi:'阿鼻',
boss_abi_info:'锁定技锁定技你受到伤害时你对伤害来源造成伤害的角色造成1点随机属性伤害雷或火随机。',
boss_pingdeng:'平等',
boss_pingdeng_info:'锁定技你死亡时你对体力最多的一名其他角色造成2点随机属性伤害属性随机然后再对一名体力最多的其他角色造成1点随机属性伤害属性随机。',
boss_zhuanlunwang:'转轮王',
boss_lunhui:'轮回',
boss_lunhui_info:'锁定技准备阶段若你的体力小于等于2则你与场上除你以外体力最高且大于2的角色交换体力值。',
boss_wangsheng:'往生',
boss_wangsheng_info:'锁定技,你的出牌阶段开始时,视为你随机使用一张【南蛮入侵】或【万箭齐发】。',
boss_fanshi:'反噬',
boss_fanshi_info:'锁定技每个回合你受到第一次伤害后若再次受到伤害则对随机一名其他角色造成1点伤害。',
boss_xhuanren:'关卡说明',
boss_xhuanren_info:'',
boss_xhuanren_info_boss:'第一关:挑战秦广王。<br>第二关:挑战楚江王,宋帝王,五官王,阎罗王中的一个。<br>第三关:挑战卞城王,泰山王,都市王,平等王中的一个。<br>第四关:挑战转轮王。',
mode_boss_card_config:'挑战卡牌',
mode_boss_character_config:'挑战武将',

View File

@ -1235,7 +1235,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var choices=[];
if(game.hasPlayer(function(current){return current.isUnseen()})) choices.push('选择一名未确定势力的角色');
if(game.hasPlayer(function(current){return current!=player&&!current.isUnseen()})&&player.countCards('h',{type:'basic'})) choices.push('交给一名已确定势力角色一张基本牌');
player.chooseControl(choices,ui.create.dialog('征辟</br></br><div class="center text">选择一项</div>','hidden')).set('ai',function(){
player.chooseControl(choices).set('ai',function(){
if(choices.length>1){
var player=_status.event.player;
if(!game.hasPlayer(function(current){
@ -1252,7 +1252,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
return 1;
}
return 0;
});
}).set('prompt','征辟</br></br><div class="center text">选择一项</div>');
'step 1'
if(result.control=='选择一名未确定势力的角色') player.chooseTarget('征辟</br></br><div class="center text">选择一名未确定势力角色,你对其使用牌没有次数和距离限制直到回合结束</div>',function(card,player,target){
return target!=player&&target.identity=='unknown'
@ -1284,13 +1284,13 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
var choices=[];
if(target.countCards('he',{type:['trick','delay','equip']})) choices.push('一张非基本牌');
if(target.countCards('h',{type:'basic'})>1) choices.push('两张基本牌');
if(choices.length) target.chooseControl(choices,ui.create.dialog('征辟</br></br><div class="center text">交给'+get.translation(player)+'</div>')).set('ai',function(event,player){
if(choices.length) target.chooseControl(choices).set('ai',function(event,player){
if(choices.length>1){
if(player.countCards('he',{type:['trick','delay','equip']},function(card){return get.value(card)<7})) return 0;
return 1;
}
return 0;
});
}).set('prompt','征辟</br></br><div class="center text">交给'+get.translation(player)+'</div>');
else{
if(target.countCards('h')){
var cards=target.getCards('h');
@ -5599,7 +5599,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
direct:true,
content:function(){
'step 0'
player.chooseControl('点数+3','点数-3','cancel2').set('prompt',get.prompt3('yingyang')).set('ai',function(){
player.chooseControl('点数+3','点数-3','cancel2').set('prompt',get.prompt2('yingyang')).set('ai',function(){
if(_status.event.small) return 1;
else return 0;
}).set('small',trigger.small);
@ -7599,13 +7599,13 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
},
chooseJunlingControl:function(){
'step 0'
var dialog=ui.create.dialog('hidden');
var dialog=[];
var str1=source==player?'(你)':'';
var str2=event.targets?'(被指定的角色为'+get.translation(event.targets)+'':'';
if(!event.prompt) dialog.add(get.translation(event.source)+str1+'选择的军令'+str2+'为');
else{
dialog.add(event.prompt);
dialog.addText(get.translation(event.source)+str1+'选择的军令'+str2+'为');
dialog.add(get.translation(event.source)+str1+'选择的军令'+str2+'为');
}
dialog.add([[event.junling],'vcard']);
var controls=[];
@ -7827,16 +7827,22 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
this.node.identity.classList.add('guessing');
}
},
dieAfter:function(source){
this.showCharacter(2);
if(source&&source.identity!='unknown'){
dieAfter2:function(source){
if(source.shijun){
source.discard(source.getCards('he'));
delete source.shijun;
}
else if(source&&source.identity!='unknown'){
if(source.identity=='ye') source.draw(3);
else if(this.identity=='ye') source.draw(1);
else if(this.identity!=source.identity) source.draw(get.population(this.identity)+1);
else source.discard(source.getCards('he'));
}
},
dieAfter:function(source){
this.showCharacter(2);
if(get.is.jun(this.name1)){
if(source&&source.identity==this.identity) source.shijun=true;
var yelist=[];
for(var i=0;i<game.players.length;i++){
if(game.players[i].identity==this.identity){

View File

@ -1555,6 +1555,20 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
this.node.dieidentity.style.transform='';
}
},
dieAfter2:function(source){
if(this.identity=='fan'&&source) source.draw(3);
else if(this.identity=='mingzhong'&&source){
if(source.identity=='zhu'){
source.discard(source.getCards('he'));
}
else{
source.draw(3);
}
}
else if(this.identity=='zhong'&&source&&source.identity=='zhu'&&source.isZhu){
source.discard(source.getCards('he'));
}
},
dieAfter:function(source){
if(!this.identityShown){
game.broadcastAll(function(player,identity,identity2){
@ -1582,18 +1596,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
game.broadcastAll(game.showIdentity);
}
}
if(this.identity=='fan'&&source) source.draw(3);
else if(this.identity=='mingzhong'&&source){
if(source.identity=='zhu'){
source.discard(source.getCards('he'));
}
else{
source.draw(3);
}
}
else if(this.identity=='zhong'&&source&&source.identity=='zhu'&&source.isZhu){
source.discard(source.getCards('he'));
}
if(game.zhu&&game.zhu.storage.enhance_zhu&&get.population('fan')<3){
game.zhu.removeSkill(game.zhu.storage.enhance_zhu);
delete game.zhu.storage.enhance_zhu;

View File

@ -3184,17 +3184,17 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
});
},
replacePlayerOL:function(player){
var next=game.createEvent('replacePlayer');
var next=game.createEvent('replacePlayer',false,_status.event.getParent());
next.source=player;
next.setContent('replacePlayerOL');
},
replacePlayer:function(player){
var next=game.createEvent('replacePlayer');
var next=game.createEvent('replacePlayer',false,_status.event.getParent());
next.source=player;
next.setContent('replacePlayer');
},
replacePlayerTwo:function(player,character){
var next=game.createEvent('replacePlayerTwo');
var next=game.createEvent('replacePlayerTwo',false,_status.event.getParent());
next.source=player;
next.character=character;
next.setContent('replacePlayerTwo');