diff --git a/card/hearth.js b/card/hearth.js
index d488a497a..a10146c91 100644
--- a/card/hearth.js
+++ b/card/hearth.js
@@ -429,7 +429,7 @@ game.import('card',function(){
fullskin:true,
type:'trick',
enable:true,
- chongzhu:true,
+ // chongzhu:true,
filterTarget:function(card,player,target){
return target==player;
},
@@ -685,7 +685,7 @@ game.import('card',function(){
xingjiegoutong:'星界沟通',
xingjiegoutong_info:'增加一点体力上限并回复一点体力,弃置你的所有手牌',
tanshezhiren:'弹射之刃',
- tanshezhiren_info:'出牌阶段对自己使用,第一次结算时随机弃置一名使用者的敌人的一张手牌,从第二次结算开始,每次随机弃置一名上一次被弃牌角色的敌人的一张手牌,共结算X次,X为存活角色数,若X为偶数,改为X-1',
+ tanshezhiren_info:'出牌阶段对自己使用,依次按敌方-友方-敌方-的顺序随机弃置阵营内一名随机角色的一张牌,共结算X次,X为存活角色数,若X为偶数,改为X-1',
chuansongmen:'传送门',
chuansongmen_info:'摸一张牌并展示,若发生在出牌阶段,你可以立即使用摸到的牌,若如此做,你将传送门收回手牌(每阶段最多收回2张传送门)',
dunpaigedang:'盾牌格挡',
diff --git a/card/swd.js b/card/swd.js
index adb700741..422996832 100644
--- a/card/swd.js
+++ b/card/swd.js
@@ -147,6 +147,7 @@ game.import('card',function(){
fullskin:true,
type:'trick',
nodelay:true,
+ chongzhu:true,
content:function(){
event.getParent('_shencaojie')._trigger.num++;
},
diff --git a/game/game.js b/game/game.js
index e82dd410a..9dcd63d2d 100644
--- a/game/game.js
+++ b/game/game.js
@@ -17748,7 +17748,7 @@
}
}
else{
- this.node.background.innerHTML=lib.translate[bg+'_bg']||get.translation(bg)[0];
+ this.node.background.innerHTML=lib.translate[bg+'_cbg']||lib.translate[bg+'_bg']||get.translation(bg)[0];
// this.node.background.style.fontFamily=lib.config.card_font;
if(this.node.background.innerHTML.length>1) this.node.background.classList.add('tight');
else this.node.background.classList.remove('tight');
@@ -18191,6 +18191,9 @@
if(_status.brawl&&_status.brawl.gameStart){
_status.brawl.gameStart();
}
+ if(lib.config.show_cardpile){
+ ui.cardPileButton.style.display='';
+ }
_status.gameStarted=true;
game.showHistory();
}
@@ -20094,6 +20097,9 @@
game.send('reinited');
game.showHistory();
_status.gameStarted=true;
+ if(lib.config.show_cardpile){
+ ui.cardPileButton.style.display='';
+ }
if(!observe&&game.me&&game.me.isDead()){
ui.exit=ui.create.control('退出联机',ui.click.exit);
}
@@ -25308,7 +25314,7 @@
return true;
}
};
- if(ui.cardPileButton) ui.cardPileButton.style.display='none';
+ // if(ui.cardPileButton) ui.cardPileButton.style.display='none';
ui.auto.hide();
ui.wuxie.hide();
event.resize();
@@ -34751,6 +34757,7 @@
ui.pause.style.display='none';
}
ui.cardPileButton=ui.create.system('牌堆',null,true);
+ ui.cardPileButton.style.display='none';
lib.setPopped(ui.cardPileButton,ui.click.cardPileButton,220);
ui.wuxie=ui.create.system('不询问无懈',ui.click.wuxie,true);
if(!lib.config.touchscreen){
@@ -34798,9 +34805,9 @@
if(!lib.config.show_wuxie){
ui.wuxie.style.display='none';
}
- if(!lib.config.show_cardpile||_status.connectMode){
- ui.cardPileButton.style.display='none';
- }
+ // if(!lib.config.show_cardpile||_status.connectMode){
+ // ui.cardPileButton.style.display='none';
+ // }
ui.playerids=ui.create.system('显示身份',function(){
if(game.showIdentity){
game.showIdentity();
@@ -40632,6 +40639,9 @@
else{
uiintro.add('
【'+translation+'】
'+lib.translate[skills[i]+'_info']+'
');
}
+ if(lib.translate[skills[i]+'_append']){
+ uiintro._place_text=uiintro.add(''+lib.translate[skills[i]+'_append']+'
')
+ }
}
}
if(get.is.phoneLayout()){
diff --git a/layout/mode/boss.css b/layout/mode/boss.css
index 65b162e41..5da1865aa 100644
--- a/layout/mode/boss.css
+++ b/layout/mode/boss.css
@@ -1,6 +1,6 @@
#bosslist{
width:100%;
- height:250px;
+ /*height:250px;*/
text-align:center;
top:calc(50% - 200px);
top:60px;
diff --git a/mode/boss.js b/mode/boss.js
index d2076f3a9..f8c6e0feb 100644
--- a/mode/boss.js
+++ b/mode/boss.js
@@ -900,7 +900,7 @@ game.import('mode',function(){
chongzheng:0,
loopType:2,
checkResult:function(player){
- if(player==game.boss&&game.boss.name!='boss_yandi'){
+ if(player==game.boss&&game.boss.name!='boss_taihao'){
return false;
}
},
@@ -1022,6 +1022,7 @@ game.import('mode',function(){
trigger:{global:'gameStart'},
forced:true,
popup:false,
+ unique:true,
content:function(){
player.smoothAvatar();
player.init('boss_zhuque');
@@ -1036,6 +1037,7 @@ game.import('mode',function(){
forced:true,
popup:false,
silent:true,
+ unique:true,
filter:function(event,player){
return player==game.boss;
},
@@ -1049,6 +1051,7 @@ game.import('mode',function(){
forced:true,
priority:-10,
globalFixed:true,
+ unique:true,
filter:function(event){
if(lib.config.mode!='boss') return false;
return event.player==game.boss&&event.player.hasSkill('boss_chiyan2');
@@ -1074,6 +1077,14 @@ game.import('mode',function(){
game.addBossFellow(game.me==game.boss?1:5,'boss_yanling');
game.addBossFellow(7,'boss_yanling');
'step 3'
+ var dnum=0;
+ var dead=game.dead.slice(0);
+ for(var i=0;i0&&dead[i].parentNode==player.parentNode){
+ dead[i].revive(dead[i].maxHp);
+ dnum++;
+ }
+ }
for(var i=0;i0){
- dead[i].revive(dead[i].maxHp);
- dead[i].directgain(get.cards(4));
- }
+ game.players[i].directgain(get.cards(4-dnum));
}
'step 4'
while(_status.event.name!='phaseLoop'){
@@ -1117,6 +1121,7 @@ game.import('mode',function(){
forced:true,
popup:false,
silent:true,
+ unique:true,
filter:function(event,player){
return player==game.boss;
},
@@ -1134,6 +1139,7 @@ game.import('mode',function(){
forced:true,
priority:-10,
globalFixed:true,
+ unique:true,
filter:function(event){
if(lib.config.mode!='boss') return false;
return event.player==game.boss&&event.player.hasSkill('boss_chiyan3');
@@ -1148,6 +1154,14 @@ game.import('mode',function(){
game.changeBoss('boss_huoshenzhurong',game.boss.previousSeat);
game.changeBoss('boss_yanling',game.boss.nextSeat);
'step 3'
+ var dnum=0;
+ var dead=game.dead.slice(0);
+ for(var i=0;i0&&dead[i].parentNode==player.parentNode){
+ dead[i].revive(dead[i].maxHp);
+ dnum++;
+ }
+ }
for(var i=0;i0){
- dead[i].revive(dead[i].maxHp);
- dead[i].directgain(get.cards(4));
- }
+ game.players[i].directgain(get.cards(4-dnum));
}
'step 4'
while(_status.event.name!='phaseLoop'){
@@ -1185,6 +1192,7 @@ game.import('mode',function(){
trigger:{global:'gameStart'},
forced:true,
popup:false,
+ unique:true,
content:function(){
player.smoothAvatar();
player.init('boss_qinglong');
@@ -1199,6 +1207,7 @@ game.import('mode',function(){
forced:true,
popup:false,
silent:true,
+ unique:true,
filter:function(event,player){
return player==game.boss;
},
@@ -1212,6 +1221,7 @@ game.import('mode',function(){
forced:true,
priority:-10,
globalFixed:true,
+ unique:true,
filter:function(event){
if(lib.config.mode!='boss') return false;
return event.player==game.boss&&event.player.hasSkill('boss_qingmu2');
@@ -1237,6 +1247,14 @@ game.import('mode',function(){
game.addBossFellow(game.me==game.boss?1:5,'boss_shujing');
game.addBossFellow(7,'boss_shujing');
'step 3'
+ var dnum=0;
+ var dead=game.dead.slice(0);
+ for(var i=0;i0&&dead[i].parentNode==player.parentNode){
+ dead[i].revive(dead[i].maxHp);
+ dnum++;
+ }
+ }
for(var i=0;i0){
- dead[i].revive(dead[i].maxHp);
- dead[i].directgain(get.cards(4));
- }
+ game.players[i].directgain(get.cards(4-dnum));
}
'step 4'
while(_status.event.name!='phaseLoop'){
@@ -1280,6 +1291,7 @@ game.import('mode',function(){
forced:true,
popup:false,
silent:true,
+ unique:true,
filter:function(event,player){
return player==game.boss;
},
@@ -1297,6 +1309,7 @@ game.import('mode',function(){
forced:true,
priority:-10,
globalFixed:true,
+ unique:true,
filter:function(event){
if(lib.config.mode!='boss') return false;
return event.player==game.boss&&event.player.hasSkill('boss_qingmu3');
@@ -1311,6 +1324,14 @@ game.import('mode',function(){
game.changeBoss('boss_mushengoumang',game.boss.previousSeat);
game.changeBoss('boss_shujing',game.boss.nextSeat);
'step 3'
+ var dnum=0;
+ var dead=game.dead.slice(0);
+ for(var i=0;i0&&dead[i].parentNode==player.parentNode){
+ dead[i].revive(dead[i].maxHp);
+ dnum++;
+ }
+ }
for(var i=0;i0){
- dead[i].revive(dead[i].maxHp);
- dead[i].directgain(get.cards(4));
- }
+ game.players[i].directgain(get.cards(4-dnum));
}
'step 4'
while(_status.event.name!='phaseLoop'){
@@ -1345,6 +1359,7 @@ game.import('mode',function(){
}
},
boss_shenyi:{
+ unique:true,
mod:{
judge:function(player,result){
if(_status.event.type=='phase'){
@@ -1402,6 +1417,7 @@ game.import('mode',function(){
},
boss_shenen:{
mode:['boss'],
+ unique:true,
global:'boss_shenen2'
},
boss_shenen2:{
@@ -1470,6 +1486,7 @@ game.import('mode',function(){
}
return !player.storage.boss_xingxia||game.roundNumber-player.storage.boss_xingxia>=2;
},
+ unique:true,
filterTarget:function(card,player,target){
return target.name=='boss_yanling';
},
@@ -1517,6 +1534,7 @@ game.import('mode',function(){
},
boss_huihuo:{
global:'boss_huihuo2',
+ unique:true,
mod:{
cardUsable:function(card,player,num){
if(card.name=='sha') return num+1;
@@ -1556,6 +1574,7 @@ game.import('mode',function(){
trigger:{global:'dieAfter'},
forced:true,
globalFixed:true,
+ unique:true,
filter:function(event,player){
return event.player.hasSkill('boss_huihuo')&&event.player.isDead()&&player.isEnemyOf(event.player);
},
@@ -1574,6 +1593,7 @@ game.import('mode',function(){
}
},
boss_furan:{
+ unique:true,
global:'boss_furan2'
},
boss_furan2:{
@@ -1605,6 +1625,7 @@ game.import('mode',function(){
boss_chiyi:{
trigger:{player:'phaseBegin'},
forced:true,
+ unique:true,
filter:function(event,player){
return [3,5,7].contains(game.roundNumber);
},
@@ -1654,6 +1675,7 @@ game.import('mode',function(){
},
boss_buchun:{
mode:['boss'],
+ unique:true,
group:['boss_buchun_recover','boss_buchun_revive'],
subSkill:{
revive:{
@@ -1761,6 +1783,7 @@ game.import('mode',function(){
boss_cuidu:{
trigger:{source:'damageEnd'},
forced:true,
+ unique:true,
filter:function(event,player){
return event.player.isIn()&&event.player.isEnemyOf(player)&&!event.player.hasSkill('boss_zhongdu');
},
@@ -1804,6 +1827,7 @@ game.import('mode',function(){
boss_qingyi:{
trigger:{player:'phaseBegin'},
forced:true,
+ unique:true,
filter:function(event,player){
return [3,5,7].contains(game.roundNumber);
},
@@ -4169,7 +4193,7 @@ game.import('mode',function(){
unique:true,
filter:function(event){
var type=get.type(event.card,'trick');
- return (type=='trick'||type=='equip')&&event.cards[0]&&event.cards[0]==event.card;
+ return type!='basic'&&event.cards[0]&&event.cards[0]==event.card;
},
content:function(){
var cards=get.cards();
@@ -4693,6 +4717,7 @@ game.import('mode',function(){
boss_yandi:'炎帝',
honghuangzhili:'洪荒之力',
+ honghuangzhili_cbg:'洪',
honghuangzhili_info:'若该角色的势力是神,你获得其一张牌,其【神裔】无效直到其下家的回合(这个下家是动态变化的,会随着一个人的死或者复活而变化)开始;若该角色的势力不是神,其翻面。',
boss_qingmushilian:'青木试炼',
@@ -4852,6 +4877,7 @@ game.import('mode',function(){
boss_chiyan_intro2_info:'挑战火神祝融、焰灵',
boss_chiyan_intro3:' 第三关',
boss_chiyan_intro3_info:'挑战炎帝、火神祝融、焰灵',
+ boss_chiyan_intro3_append:'每通过一关,游戏轮数清零,所有角色复活、重置武将牌并回复全部体力,移去区域内的的牌并将手牌补至4-X张,X为阵亡角色数',
boss_qingmu_intro1:' 第一关',
boss_qingmu_intro1_info:'挑战青龙',
@@ -4859,6 +4885,7 @@ game.import('mode',function(){
boss_qingmu_intro2_info:'挑战木神勾芒、树精',
boss_qingmu_intro3:' 第三关',
boss_qingmu_intro3_info:'挑战太昊、木神勾芒、树精',
+ boss_qingmu_intro3_append:'每通过一关,游戏轮数清零,所有角色复活、重置武将牌并回复全部体力,移去区域内的的牌并将手牌补至4-X张,X为阵亡角色数',
boss_bianshen_intro1:' 第一关',
boss_bianshen_intro1_info:'挑战魑、魅、魍、魉中的随机一个',
@@ -4928,7 +4955,7 @@ game.import('mode',function(){
boss_juejing_info:'锁定技,摸牌阶段开始时,你不摸牌;锁定技,若你的手牌数小于4,你将手牌补至四张',
boss_jizhi:'集智',
- boss_jizhi_info:'每当你使用一张锦囊牌或装备牌,你可以摸一张牌并展示之',
+ boss_jizhi_info:'每当你使用一张非转化的非基本牌,你可以摸一张牌并展示之',
boss_guiyin:'归隐',
boss_guiyin_info:'锁定技,体力值比你多的角色无法在回合内对你使用卡牌',
boss_gongshen:'工神',