From 25ea4af1c23d6853e3890af0fcfcbaaa7546ab4a Mon Sep 17 00:00:00 2001 From: libccy Date: Sat, 16 Jul 2016 14:16:24 +0800 Subject: [PATCH] d --- character/ow.js | 157 +++++++++++++++++++++++++++++++++++++++++- character/xianjian.js | 3 + game/game.js | 19 ++--- game/update.js | 1 + 4 files changed, 168 insertions(+), 12 deletions(-) diff --git a/character/ow.js b/character/ow.js index 59f7eab5a..40c1879b3 100644 --- a/character/ow.js +++ b/character/ow.js @@ -11,9 +11,9 @@ character.ow={ ow_yuanshi:['male','qun',3,['feiren','lianpo','zhanlong']], ow_chanyata:['male','qun',3,['xie','luan','sheng']], ow_dva:['female','qun',2,['jijia','tuijin','zihui','chongzhuang']], + ow_mei:['female','shu',3,[]], // ow_heibaihe:['female','shu',3,[]], - // ow_mei:['female','shu',3,[]], // ow_baolei:['female','shu',3,[]], // ow_ana:['female','shu',4,[]], // ow_maikelei:['male','shu',4,[]], @@ -26,8 +26,78 @@ character.ow={ // ow_zhaliya:['female','shu',4,[]], }, skill:{ + chongzhuang:{ + trigger:{source:'damageEnd'}, + forced:true, + filter:function(event,player){ + return player.storage.jijia<=0&&event.num>0; + }, + popup:false, + unique:true, + content:function(){ + player.storage.jijia2+=trigger.num; + if(player.storage.jijia2>=4){ + player.storage.jijia=4; + player.storage.jijia2=0; + player.markSkill('jijia'); + if(lib.config.skill_animation){ + player.logSkill('chongzhuang'); + player.$skill('重装') + } + } + } + }, + tuijin:{ + enable:'phaseUse', + usable:1, + unique:true, + filter:function(event,player){ + if(!(player.storage.jijia>0)) return false; + for(var i=0;i1) return true; + } + return false; + }, + filterTarget:function(card,player,target){ + return target!=player&&get.distance(player,target)>1; + }, + content:function(){ + player.storage.tuijin2=target; + player.markSkillCharacter('tuijin2',target,'推进','与'+get.translation(target)+'的距离视为1,直到回合结束'); + player.addSkill('tuijin2'); + }, + ai:{ + order:11, + result:{ + target:function(player,target){ + if(ai.get.attitude(player,target)<0){ + if(get.distance(player,target)>2) return -1.5; + return -1; + } + return 0.3; + } + } + } + }, + tuijin2:{ + mod:{ + globalFrom:function(from,to){ + if(to==from.storage.tuijin2) return -Infinity; + } + }, + trigger:{player:'phaseEnd'}, + priority:-1, + forced:true, + popup:false, + content:function(){ + player.unmarkSkill('tuijin2'); + player.removeSkill('tuijin2'); + delete player.storage.tuijin2; + } + }, jijia:{ mark:true, + unique:true, init:function(player){ player.storage.jijia=4; player.storage.jijia2=0; @@ -60,6 +130,87 @@ character.ow={ else{ player.updateMarks(); } + }, + ai:{ + threaten:function(player,target){ + if(target.storage.jijia<=0) return 2; + return 1; + } + } + }, + zihui:{ + enable:'phaseUse', + filter:function(event,player){ + return player.storage.jijia>0; + }, + filterTarget:function(card,player,target){ + return target!=player&&get.distance(player,target)<=2; + }, + unique:true, + selectTarget:-1, + skillAnimation:true, + animationColor:'fire', + line:'fire', + content:function(){ + 'step 0' + target.chooseToDiscard(player.storage.jijia,'弃置'+get.cnNumber(player.storage.jijia)+'张牌,或受到2点火焰伤害').ai=function(card){ + if(target.hasSkillTag('nofire')) return 0; + if(get.type(card)!='basic') return 11-ai.get.value(card); + if(target.hp>4) return 7-ai.get.value(card); + if(target.hp==4&&player.storage.jijia>=3) return 7-ai.get.value(card); + if(target.hp==3&&player.storage.jijia>=4) return 7-ai.get.value(card); + if(player.storage.hujia>1) return 8-ai.get.value(card); + return 10-ai.get.value(card); + }; + 'step 1' + if(!result.bool){ + target.damage(2,'fire'); + } + if(target==targets[targets.length-1]){ + player.storage.jijia=0; + player.unmarkSkill('jijia'); + } + }, + ai:{ + order:2, + result:{ + player:function(player){ + var num=0; + for(var i=0;i2) continue; + var nh=game.players[i].num('h'); + var att=ai.get.attitude(player,game.players[i]); + if(nh0){ + if(game.players[i].hp<=2){ + num-=2; + } + else{ + num-=1.5; + } + } + } + else if(nh==player.storage.jijia){ + if(att<0){ + num+=0.5; + } + else if(att>0){ + num-=0.5; + } + } + } + if(num>=2) return 1; + return 0; + } + } } }, xiandan:{ @@ -1192,11 +1343,11 @@ character.ow={ jijia:'机甲', jijia_info:'锁定技,游戏开始时,你获得一个体力为4的机甲;你的手牌上限为你和机甲的体力之和;你受到的伤害由机甲承担', zihui:'自毁', - zihui_info:'出牌阶段,你可以摧毁你的机甲,然后令所有其他角色选择一项:弃置数量等同你机甲体力值的牌,或受到2点火焰伤害', + zihui_info:'出牌阶段,你可以令距离2以内的所有其他角色选择一项:弃置数量等同你机甲体力值的牌,或受到2点火焰伤害,并在结算完毕后摧毁你的机甲', tuijin:'推进', tuijin_info:'出牌阶段限一次,若你有机甲,你可以指定一名角色,本回合内视为与其距离为1', chongzhuang:'重装', - chongzhuang_info:'若你没有机甲,在你回合结束或造成伤害时,你获得一个机甲标记;当你有4个机甲标记时,你立即重新获得机甲', + chongzhuang_info:'在你失去机甲后,当你累计造成了4点伤害时,你重新获得机甲', shouge:'收割', shouge_info:'每当你杀死一名角色,你可以获得一张治疗波', tuji:'突击', diff --git a/character/xianjian.js b/character/xianjian.js index a56cb5506..8e965a654 100755 --- a/character/xianjian.js +++ b/character/xianjian.js @@ -376,6 +376,9 @@ character.xianjian={ player.logSkill('shuiyun5',trigger.player,'thunder'); game.addVideo('storage',player,['shuiyun',get.cardsInfo(player.storage.shuiyun),'cards']); } + else{ + event.finish(); + } "step 2" if(trigger.player!=player){ game.delay(); diff --git a/game/game.js b/game/game.js index 06d3f5c99..60c0a9e9d 100755 --- a/game/game.js +++ b/game/game.js @@ -3338,15 +3338,6 @@ game.saveConfig('layout','phone'); } } - if(lib.device&&window.devicePixelRatio>1&&document.documentElement.offsetWidth<960){ - game.documentZoom=document.documentElement.offsetWidth/960; - game.deviceZoom=game.documentZoom; - document.documentElement.style.zoom=game.documentZoom; - } - else{ - game.documentZoom=1; - game.deviceZoom=1; - } if(lib.config.extensions.length){ window.resetExtension=function(){ @@ -3672,6 +3663,16 @@ } }); } + if(lib.device&&window.devicePixelRatio>1&&document.documentElement.offsetWidth<900&& + navigator.userAgent.toLowerCase().indexOf('crosswalk')==-1){ + game.documentZoom=document.documentElement.offsetWidth/960; + game.deviceZoom=game.documentZoom; + document.documentElement.style.zoom=game.documentZoom; + } + else{ + game.documentZoom=1; + game.deviceZoom=1; + } // if(lib.config.debug&&window.require){ // window.require('remote').getCurrentWindow().openDevTools(); // } diff --git a/game/update.js b/game/update.js index a0fb46121..b941ff01b 100644 --- a/game/update.js +++ b/game/update.js @@ -12,6 +12,7 @@ window.noname_update={ 'character/rank.js', 'character/ow.js', 'character/hearth.js', + 'character/xianjian.js', ], '1.8.17.5':[], }