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:'工神',