diff --git a/card/extra.js b/card/extra.js index e49bd6e02..a95401e1e 100755 --- a/card/extra.js +++ b/card/extra.js @@ -6,6 +6,7 @@ card.extra={ fullskin:true, type:"basic", enable:true, + lianheng:true, savable:function(card,player,dying){ return dying==player; }, @@ -513,9 +514,6 @@ card.extra={ huogong_bg:'攻', huogong_info:'目标角色展示一张手牌,然后若你能弃掉一张与所展示牌相同花色的手牌,则火攻对该角色造成1点火焰伤害。', tiesuo_bg:'锁', - _chongzhu:'重铸', - _lianhuan:'连环', - _lianhuan2:'连环', bingliang:'兵粮寸断', hualiu:'骅骝', zhuque:'朱雀羽扇', diff --git a/card/guozhan.js b/card/guozhan.js index a6c71a2dc..ddef7a609 100755 --- a/card/guozhan.js +++ b/card/guozhan.js @@ -2,11 +2,360 @@ card.guozhan={ connect:true, card:{ + yuxi:{ + mode:['guozhan'], + fullskin:true, + type:'equip', + subtype:'equip5', + skills:['yuxi_skill'], + ai:{ + equipValue:9 + } + }, + xietianzi:{ + fullskin:true, + type:'trick', + lianheng:true, + enable:function(card,player){ + if(get.mode()=='guozhan'&&!player.isMajor()) return false; + return _status.event.getParent().name=='phaseUse'; + }, + filterTarget:function(card,player,target){ + return player==target; + }, + selectTarget:-1, + content:function(){ + var evt=_status.event; + for(var i=0;i<10;i++){ + if(evt&&evt.getParent){ + evt=evt.getParent(); + } + if(evt.name=='phaseUse'){ + evt.skipped=true; + break; + } + } + target.addSkill('xietianzi'); + }, + ai:{ + order:0.5, + result:{ + target:function(player,target){ + if(target.num('he')>=2) return 1; + return 0; + } + } + } + }, + shuiyanqijunx:{ + fullskin:true, + type:'trick', + filterTarget:function(card,player,target){ + return target!=player&&target.num('e')>0; + }, + enable:true, + content:function(){ + 'step 0' + target.chooseControl('discard_card','take_damage',function(event,player){ + if(ai.get.damageEffect(player,event.player,player,'thunder')>=0){ + return 'take_damage'; + } + if(player.hp>=3&&player.num('e')>=2){ + return 'take_damage'; + } + return 'discard_card'; + }); + 'step 1' + if(result.control=='discard_card'){ + target.discard(target.get('e')); + } + else{ + target.damage('thunder'); + } + }, + ai:{ + result:{ + target:function(player,target){ + return ai.get.damageEffect(target,player,target,'thunder')*target.num('e'); + } + } + } + }, + lulitongxin:{ + fullskin:true, + type:'trick', + enable:function(card,player){ + for(var i=0;i=2||target.hp>=target.maxHp-1) return 'draw_card'; + if(target.hp==2&&target.num('h')==0) return 'draw_card'; + return 'recover_hp'; + }); + } + 'step 1' + if(!event.directdraw&&result&&result.control=='recover_hp'){ + target.recover(); + event.finish(); + } + else{ + target.draw(); + } + 'step 2' + if(target.isLinked()){ + target.link(); + } + }, + ai:{ + order:3, + result:{ + player:0.8, + target:1 + } + } + }, + chiling:{ + fullskin:true, + type:'trick', + enable:true, + mode:['guozhan'], + filterTarget:function(card,player,target){ + return target.isUnseen(); + }, + selectTarget:-1, + content:function(){ + 'step 0' + if(target.num('he',{type:'equip'})){ + target.chooseControl('选项一','选项二','选项三',function(){ + return Math.random()<0.5?'选项一':'选项二'; + }).set('prompt','敕令

选项一:明置一张武将牌,然后摸一张牌

选项二:失去1点体力

选项三:弃置一张装备牌
'); + } + else{ + target.chooseControl('选项一','选项二',function(){ + if(_status.event.player.hp>=3&&Math.random()<=0.3){ + return '选项二'; + } + return '选项一'; + }).set('prompt','敕令

选项一:明置一张武将牌,然后摸一张牌

选项二:失去1点体力
'); + } + 'step 1' + if(result.control=='选项一'){ + target.showCharacter(2); + target.draw(); + } + else if(result.control=='选项二'){ + target.loseHp(); + } + else{ + target.chooseToDiscard('he',{type:'equip'},true); + } + } + }, + diaohulishan:{ + fullskin:true, + type:'trick', + lianheng:true, + enable:true, + filterTarget:function(card,player,target){ + return target!=player; + }, + content:function(){ + target.addTempSkill('diaohulishan','phaseAfter'); + }, + ai:{ + order:10, + result:{ + player:1, + target:function(player,target){ + for(var i=0;i0){ + num++; + } + else if(eff<0){ + num--; + } + } + } + return num; + } + } + } + }, yuanjiao:{ audio:true, fullskin:true, type:'trick', - enable:true, + enable:function(card,player){ + if(get.mode()=='guozhan'&&player.isUnseen()) return false; + return true; + }, filterTarget:function(card,player,target){ if(get.mode()!='guozhan') return player!=target; if(target.identity=='unknown'||player.identity=='unknown') return false; @@ -171,10 +520,254 @@ card.guozhan={ fullskin:true, type:'equip', subtype:'equip4', + lianheng:true, distance:{globalFrom:-1}, }, }, skill:{ + yuxi_skill:{ + trigger:{player:'phaseDrawBegin'}, + forced:true, + content:function(){ + trigger.num++; + }, + ai:{ + threaten:1.3 + }, + group:'yuxi_skill2' + }, + yuxi_skill2:{ + trigger:{player:'phaseUseBegin'}, + forced:true, + filter:function(event,player){ + for(var i=0;i0; + }, + forced:true, + popup:false, + content:function(){ + "step 0" + player.removeSkill('xietianzi'); + player.chooseToDiscard('he','是否弃置一张牌并获得一个额外回合?').set('ai',function(card){ + return 10-ai.get.value(card); + }); + "step 1" + if(result.bool){ + player.phase(); + } + }, + }, + _chiling1:{ + mode:['guozhan'], + trigger:{player:'discardAfter'}, + filter:function(event,player){ + for(var i=0;i
选项一:明置一张武将牌,然后摸一张牌

选项二:失去1点体力

选项三:弃置一张装备牌
'); + } + else{ + target.chooseControl('选项一','选项二',function(){ + if(_status.event.player.hp>=3&&Math.random()<=0.3){ + return '选项二'; + } + return '选项一'; + }).set('prompt','敕令

选项一:明置一张武将牌,然后摸一张牌

选项二:失去1点体力
'); + } + } + else{ + event.finish(); + } + 'step 2' + var target=event.current; + if(result.control=='选项一'){ + target.showCharacter(2); + target.draw(); + } + else if(result.control=='选项二'){ + target.loseHp(); + } + else{ + target.chooseToDiscard('he',{type:'equip'},true); + } + 'step 3' + event.goto(1); + } + }, + _diaohulishan:{ + trigger:{player:'useCardAfter'}, + forced:true, + popup:false, + filter:function(event,player){ + return event.card.name=='diaohulishan'; + }, + content:function(){ + player.draw(); + } + }, + diaohulishan:{ + mod:{ + cardEnabled:function(){ + return false; + }, + targetEnabled:function(){ + return false; + } + }, + mark:true, + intro:{ + content:'不计入距离的计算且不能使用牌且不是牌的合法目标' + }, + group:'undist' + }, + huxinjing:{ + trigger:{player:'damageBegin'}, + priority:10, + forced:true, + filter:function(event){ + return event.num>0; + }, + content:function(){ + trigger.num--; + player.addSkill('huxinjing2'); + } + }, + huxinjing2:{ + trigger:{player:'damageEnd'}, + priority:10, + forced:true, + popup:false, + content:function(){ + var cards=player.get('e','huxinjing'); + if(cards.length){ + player.discard(cards); + } + } + }, + _lianheng:{ + mode:['guozhan'], + enable:'phaseUse', + prompt:'将可连横的牌交给一名与你势力不同的角色,或未确定势力的角色,若你交给与你势力不同的角色,则你摸一张牌', + filter:function(event,player){ + return (player.get('h',function(card){ + return get.info(card).lianheng; + }).length); + }, + filterCard:function(card){ + return get.info(card).lianheng; + }, + filterTarget:function(card,player,target){ + if(target==player) return false; + if(player.isUnseen()) return target.isUnseen(); + if(player.identity=='ye') return true; + return target.identity!=player.identity; + }, + prepare:function(cards,player,targets){ + player.$give(cards,targets[0]); + }, + discard:false, + delay:0.5, + content:function(){ + "step 0" + target.gain(cards); + "step 1" + if(!target.isUnseen()){ + player.draw(); + } + }, + ai:{ + basic:{ + order:2 + }, + result:{ + player:function(player,target){ + if(target.isUnseen()) return 0; + return 0.5; + }, + target:1 + }, + } + }, wuliu_skill:{}, _wuliu_skill2:{ mod:{ @@ -230,13 +823,37 @@ card.guozhan={ }, }, translate:{ + yuxi_skill:'玉玺', + yuxi_skill2:'玉玺', + yuxi:'玉玺', + yuxi_info:'锁定技,若你有明置的武将牌,你的势力视为唯一的大势力;锁定技,摸牌阶段,若你有明置的武将牌,你多摸一张牌;锁定技,出牌阶段开始时,若你有明置的武将牌,你视为使用【知己知彼】', + xietianzi:'挟令', + xietianzi_info:'出牌阶段,对自己使用。你结束出牌阶段,若如此做,此回合结束时,你可以弃置一张牌,获得一个额外的回合', + xietianzi_info_guozhan:'出牌阶段,对为大势力角色的你使用。你结束出牌阶段,若如此做,此回合结束时,你可以弃置一张牌,获得一个额外的回合', + shuiyanqijunx:'水淹七军', + shuiyanqijunx_info:'出牌阶段,对一名装备区里有牌的其他角色使用。目标角色选择一项:1、弃置装备区里的所有牌;2、受到你造成的1点雷电伤害', + lulitongxin:'勠力同心', + lulitongxin_info:'出牌阶段,对所有大势力角色或所有小势力角色使用。若目标角色:不处于“连环状态”,其横置;处于“连环状态”,其摸一张牌', + lianjunshengyan:'联军盛宴', + lianjunshengyan_info:'出牌阶段,对你和你选择的除你的势力外的一个势力的所有角色。若目标角色:为你,你摸X张牌(X为该势力的角色数);不为你,其选择一项:1、回复1点体力;2、摸一张牌,然后重置', + chiling:'敕令', + chiling_info:'出牌阶段,对所有没有势力的角色使用。目标角色选择一项:1、明置一张武将牌,然后摸一张牌;2、弃置一张装备牌;3、失去1点体力。当【敕令】因判定或弃置而置入弃牌堆时,系统将之移出游戏,然后系统于当前回合结束后视为对所有没有势力的角色使用【敕令】', + diaohulishan:'调虎离山', + diaohulishan_info:'出牌阶段,对至多两名其他角色使用。目标角色于此回合结束之前不计入距离的计算且不能使用牌且不是牌的合法目标。此牌结算结束时,你摸一张牌', + _lianheng:'连横', + huoshaolianying:'火烧连营', + huoshaolianying_bg:'烧', + huoshaolianying_info_guozhan:'出牌阶段,对你的下家和与其处于同一队列的角色使用,每名角色受到一点火焰伤害', + huoshaolianying_info:'对离你最近的一名横置角色使用(若无横置角色则改为对距离你最近的所有角色使用),对目标造成一点火焰伤害', yuanjiao:'远交近攻', - yuanjiao_info:'对一名不同势力的角色使用,对方摸一张牌,然后你摸3张牌(非国战模式中改为摸1张)', + yuanjiao_info_guozhan:'对一名不同势力的角色使用,对方摸一张牌,然后你摸3张牌', + yuanjiao_info:'对一名其他角色使用,你与其各摸一张牌', yuanjiao_bg:'交', zhibi:'知己知彼', - zhibi_info:'出牌阶段对一名其他角色使用,观看其手牌或装备牌', + zhibi_info:'出牌阶段对一名其他角色使用,观看其手牌或武将牌', yiyi:'以逸待劳', - yiyi_info:'对与自己势力相同的所有角色使用,摸两张牌然后弃置两张牌(非国战模式改为任意指定三名角色)', + yiyi_info_guozhan:'对与自己势力相同的所有角色使用,摸两张牌然后弃置两张牌', + yiyi_info:'对与任意三名角色使用,摸两张牌然后弃置两张牌', yiyi_bg:'逸', wuliu:'吴六剑', wuliu_info:'其他与装备者势力相同的角色攻击范围+1', @@ -247,6 +864,9 @@ card.guozhan={ jingfanma_bg:'-马', jingfanma:'惊帆', jingfanma_info:'其他角色与你的距离-1', + huxinjing_bg:'镜', + huxinjing:'护心镜', + huxinjing_info:'抵消一点伤害', }, list:[ ['heart',9,'yuanjiao'], @@ -260,5 +880,21 @@ card.guozhan={ ["spade",4,'shunshou'], ["spade",12,'guohe'], ["spade",11,'wuxie'], + ['spade',3,'huoshaolianying','fire'], + ['club',11,'huoshaolianying','fire'], + ['heart',12,'huoshaolianying','fire'], + ['club',2,'huxinjing'], + ['heart',2,'diaohulishan'], + ['diamond',10,'diaohulishan'], + ['heart',1,'lianjunshengyan'], + ['club',3,'chiling'], + ['spade',12,'lulitongxin'], + ['club',10,'lulitongxin'], + ['club',12,'shuiyanqijunx'], + ['heart',13,'shuiyanqijunx'], + ['spade',1,'xietianzi'], + ['diamond',1,'xietianzi'], + ['diamond',4,'xietianzi'], + ['club',1,'yuxi'], ], } diff --git a/card/yunchou.js b/card/yunchou.js index 6eafba9a3..e1050ec84 100644 --- a/card/yunchou.js +++ b/card/yunchou.js @@ -17,17 +17,6 @@ card.yunchou={ }, }, }, - huxinjing:{ - fullskin:true, - type:"equip", - subtype:"equip2", - skills:['huxinjing'], - ai:{ - basic:{ - equipValue:6 - }, - }, - }, chenhuodajie:{ fullskin:true, type:'trick', @@ -86,80 +75,6 @@ card.yunchou={ } } }, - huoshaolianying:{ - fullskin:true, - type:'trick', - filterTarget:function(card,player,target){ - if(player==target) return false; - var link=false; - for(var i=0;i0){ - num++; - } - else if(eff<0){ - num--; - } - } - } - return num; - } - } - } - }, yihuajiemu:{ fullskin:true, type:'trick', @@ -756,31 +671,6 @@ card.yunchou={ }, }, skill:{ - huxinjing:{ - trigger:{player:'damageBegin'}, - priority:10, - forced:true, - filter:function(event){ - return event.num>0; - }, - content:function(){ - trigger.num--; - player.addSkill('huxinjing2'); - // player.discard(player.get('e','2')); - } - }, - huxinjing2:{ - trigger:{player:'damageEnd'}, - priority:10, - forced:true, - popup:false, - content:function(){ - var cards=player.get('e','huxinjing'); - if(cards.length){ - player.discard(cards); - } - } - }, suolianjia:{ trigger:{player:'damageBefore'}, filter:function(event){ @@ -883,9 +773,6 @@ card.yunchou={ suolianjia:'锁链甲', suolianjia_info:'锁定技,你防止即将受到的属性伤害,当装备时进入连环状态,当卸下时解除连环状态', suolianjia_bg:'链', - huxinjing_bg:'镜', - huxinjing:'护心镜', - huxinjing_info:'抵消一点伤害', geanguanhuo:'隔岸观火', geanguanhuo_info:'指定任意两名角色进行拚点,拚点输的一方掉1点血;若点数一样则使用该锦囊的角色掉1点血。拚点的牌不用丢弃。', toulianghuanzhu:'偷梁换柱', @@ -895,13 +782,10 @@ card.yunchou={ yihuajiemu_info:'将一名角色的宝物牌转移至另一名角色', fudichouxin:'釜底抽薪', fudichouxin_info:'与一名角色进行拼点,若成功则获得双方拼点牌', - shuiyanqijun:'水淹七军', + shuiyanqijun:'水攻', shuiyanqijun_info:'令所有有装备的角色各弃置一张装备牌', shushangkaihua:'树上开花', shushangkaihua_info:'使用者与手牌数最少的所有角色各摸一张牌', - huoshaolianying:'火烧连营', - huoshaolianying_bg:'烧', - huoshaolianying_info:'对离你最近的一名横置角色使用(若无横置角色则改为对距离你最近的所有角色使用),对目标造成一点火焰伤害', chenhuodajie:'趁火打劫', chenhuodajie_info:'任意一名其他角色受到伤害时对其使用,获得其一张牌', huoshan:'火山', @@ -949,8 +833,6 @@ card.yunchou={ ['club',10,'toulianghuanzhu'], ['spade',11,'toulianghuanzhu'], ['spade',13,'guohe'], - ['heart',7,'huoshaolianying','fire'], - ['diamond',12,'huoshaolianying','fire'], ['heart',6,'shushangkaihua'], ['club',1,'shushangkaihua'], ['diamond',6,'chenhuodajie'], @@ -958,6 +840,5 @@ card.yunchou={ ['club',3,'chenhuodajie'], ['club',13,'suolianjia'], - ['spade',9,'huxinjing'], ], } diff --git a/card/zhenfa.js b/card/zhenfa.js index ba1f9ba57..1cd1c1635 100755 --- a/card/zhenfa.js +++ b/card/zhenfa.js @@ -52,14 +52,14 @@ card.zhenfa={ tianfuzhen:{ type:'zhenfa', chongzhu:true, - enable:true, + enable:function(){ + for(var i=0;i0; }, selectTarget:-1, content:function(){ @@ -79,16 +79,16 @@ card.zhenfa={ dizaizhen:{ type:'zhenfa', chongzhu:true, - enable:true, + enable:function(){ + for(var i=0;i=3&&player.num('h')>player.hp+1; @@ -4045,6 +4050,7 @@ character.sp={ trigger:{player:'phaseUseBegin'}, forced:true, popup:false, + silent:true, content:function(){ delete player.storage.qiangwu; } diff --git a/character/swd.js b/character/swd.js index 4605e93da..309125f7c 100755 --- a/character/swd.js +++ b/character/swd.js @@ -450,7 +450,7 @@ character.swd={ return -att/2; }; "step 1" - if(result.bool){ + if(result.bool&&result.targets[0]){ var target=result.targets[0]; player.logSkill('guozao',target); var cards=target.get('h'); diff --git a/character/yijiang.js b/character/yijiang.js index bd5a8f35f..a04e3b3b5 100755 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -1060,7 +1060,7 @@ character.yijiang={ 'step 1' player.chooseControl('选项一','选项二',function(){ return Math.random()<0.5?'选项一':'选项二'; - }).set('prompt','督粮

选项一:令其观看牌堆顶的两张牌,然后获得其中的基本牌

选项二:令其于下个摸牌阶段额外摸一张牌
'); + }).set('prompt','督粮

选项一:令其观看牌堆顶的两张牌,然后获得其中的基本牌

选项二:令其于下个摸牌阶段额外摸一张牌
'); 'step 2' if(result.control=='选项一'){ var cards=get.cards(2); diff --git a/game/asset.js b/game/asset.js index 9b03d69c4..5f9704440 100644 --- a/game/asset.js +++ b/game/asset.js @@ -22,6 +22,7 @@ window.noname_asset_list=[ 'image/card/cixiong.png', 'image/card/dawan.png', 'image/card/dilu.png', + 'image/card/diaohulishan.png', 'image/card/donghuangzhong.png', 'image/card/dujian.png', 'image/card/dujian1.png', @@ -80,8 +81,10 @@ window.noname_asset_list=[ 'image/card/langeguaiyi.png', 'image/card/lebu.png', 'image/card/lianyaohu.png', + 'image/card/lianjunshengyan.png', 'image/card/linghunzhihuo.png', 'image/card/liuxinghuoyu.png', + 'image/card/lulitongxin.png', 'image/card/muniu.png', 'image/card/nanman.png', 'image/card/nvwashi.png', @@ -98,6 +101,7 @@ window.noname_asset_list=[ 'image/card/shan.png', 'image/card/shandian.png', 'image/card/shandianjian.png', + 'image/card/chiling.png', 'image/card/shenenshu.png', 'image/card/shengdong.png', 'image/card/shennongding.png', @@ -105,6 +109,7 @@ window.noname_asset_list=[ 'image/card/shihuawuqi.png', 'image/card/shijieshu.png', 'image/card/shuiyanqijun.png', + 'image/card/shuiyanqijunx.png', 'image/card/shunshou.png', 'image/card/shushangkaihua.png', 'image/card/spell_ansezhadan.jpg', @@ -256,6 +261,7 @@ window.noname_asset_list=[ 'image/card/wuxingpan.png', 'image/card/wuzhong.png', 'image/card/xiangyuye.png', + 'image/card/xietianzi.png', 'image/card/xingjiegoutong.png', 'image/card/xingjunyan.png', 'image/card/xixueguizhihuan.png', @@ -263,6 +269,7 @@ window.noname_asset_list=[ 'image/card/yihuajiemu.png', 'image/card/yiyi.png', 'image/card/yuanjiao.png', + 'image/card/yuxi.png', 'image/card/yuansuhuimie.png', 'image/card/yufulu.png', 'image/card/zengbin.png', diff --git a/game/game.js b/game/game.js index 3d94dc186..3ed478611 100755 --- a/game/game.js +++ b/game/game.js @@ -56,7 +56,7 @@ }; var lib={ configprefix:'noname_0.9_', - versionOL:11, + versionOL:12, updateURL:localStorage.getItem('noname_update_url')||'http://websha.cn/', assetURL:'', hallURL:'websha.cn', @@ -3658,9 +3658,9 @@ } }); } - if(lib.config.debug&&window.require){ - window.require('remote').getCurrentWindow().openDevTools(); - } + // if(lib.config.debug&&window.require){ + // window.require('remote').getCurrentWindow().openDevTools(); + // } ui.background=ui.create.div('.background'); ui.background.style.backgroundSize="cover"; if(lib.config.image_background&&lib.config.image_background!='default'&&lib.config.image_background!='custom'){ @@ -4619,7 +4619,8 @@ mad:'混乱', mad_bg:'疯', draw_card:'摸牌', - discard_card:'弃牌', + discard_card:'弃牌', + take_damage:'受伤害', reset_character:'重置武将牌', recover_hp:'回复体力', lose_hp:'流失体力', @@ -4650,6 +4651,9 @@ eight:'八', nine:'九', ten:'十', + _chongzhu:'重铸', + _lianhuan:'连环', + _lianhuan2:'连环', }, element:{ playerproto:{ @@ -4730,7 +4734,7 @@ "step 0"; player.chooseToUse(); "step 1" - if(result.bool){ + if(result.bool&&!event.skipped){ event.goto(0); } game.broadcastAll(function(){ @@ -7779,6 +7783,26 @@ }(i)); } }, + getNext:function(){ + var target=this; + for(var i=0;i=-1&&ai.get.attitude(this,next.targets[i])<0){ if(!this.ai.tempIgnore) this.ai.tempIgnore=[]; @@ -9813,7 +9840,7 @@ return false; }, hasSkill:function(skill){ - return this.get('s').contains(skill); + return game.expandSkills(this.get('s')).contains(skill); }, hasSkillTag:function(tag,hidden){ var skills=game.expandSkills(this.get('s',hidden)); @@ -12085,6 +12112,7 @@ global:[], storage:{}, unequip:{}, + undist:{}, mad:{ mark:true, intro:{ @@ -17769,7 +17797,11 @@ finishCards:function(){ _status.cardsFinished=true; var i,j,k; + var mode=get.mode(); for(i in lib.card){ + if(lib.translate[i+'_info_'+mode]){ + lib.translate[i+'_info']=lib.translate[i+'_info_'+mode]; + } var card=lib.card[i]; if(card.type=='equip'){ if(card.enable==undefined) card.enable=true; @@ -17826,14 +17858,17 @@ } } for(i in lib.skill){ - if(lib.skill[i].forbid&&lib.skill[i].forbid.contains(get.mode())){ + if(lib.translate[i+'_info_'+mode]){ + lib.translate[i+'_info']=lib.translate[i+'_info_'+mode]; + } + if(lib.skill[i].forbid&&lib.skill[i].forbid.contains(mode)){ lib.skill[i]={}; if(lib.translate[i+'_info']){ lib.translate[i+'_info']='此模式下不可用'; } continue; } - if(lib.skill[i].mode&&lib.skill[i].mode.contains(get.mode())==false){ + if(lib.skill[i].mode&&lib.skill[i].mode.contains(mode)==false){ lib.skill[i]={}; if(lib.translate[i+'_info']){ lib.translate[i+'_info']='此模式下不可用'; @@ -21622,7 +21657,7 @@ } if(!ui.arena.classList.contains('menupaused')){ ui.click.configMenu(); - ui.click.menuTab('帮助'); + ui.click.menuTab('其它'); } var proceed=function(){ @@ -27119,14 +27154,14 @@ for(var iwhile=0;iwhile