This commit is contained in:
libccy 2017-04-01 14:51:01 +08:00
parent fd4e370bf8
commit 9ae5e8b07a
3 changed files with 59 additions and 36 deletions

View File

@ -55,6 +55,7 @@ window.characterRank={
], ],
a:[ a:[
'swd_kendi', 'swd_kendi',
'swd_shuwaner',
'hs_enzoth', 'hs_enzoth',
'hs_sapphiron', 'hs_sapphiron',
'gw_airuiting', 'gw_airuiting',

View File

@ -228,51 +228,47 @@ character.swd={
filter:function(event,player){ filter:function(event,player){
return player.countCards('he',{color:'red'})>0; return player.countCards('he',{color:'red'})>0;
}, },
filterTarget:true,
selectTarget:[1,2],
position:'he', position:'he',
check:function(card){ check:function(card){
return 7-ai.get.value(card); return 7-ai.get.value(card);
}, },
content:function(){ contentBefore:function(){
'step 0'
player.loseHp(); player.loseHp();
var enemies=player.getEnemies(); },
event.targets=enemies.randomGets(2); content:function(){
event.targets.sortBySeat(); if(targets.length==1){
'step 1' target.damage('fire',2);
if(event.targets.length){ }
var target=event.targets.shift(); else{
player.line(target,'fire');
target.damage('fire'); target.damage('fire');
target.addExpose(0.2);
event.redo();
} }
}, },
line:'fire',
ai:{ ai:{
order:5, order:15,
expose:0.2,
result:{ result:{
player:function(player){ target:function(player,target){
if(player.hp<2) return 0; if(player.hp<2) return 0;
var enemies=player.getEnemies(); if(ai.get.attitude(player,target)>=0) return 0;
if(enemies.length<2) return 0; if(ui.selected.targets.length){
var hp=0; if(ui.selected.targets[0].hp>1&&target.hp>1) return 0;
for(var i=0;i<enemies.length;i++){ }
if(ai.get.damageEffect(enemies[i],player,player,'fire')<=0){ var eff=ai.get.damageEffect(target,player,target,'fire');
return 0; if(eff<0){
var num=game.countPlayer(function(current){
return ai.get.attitude(player,current)<0&&
ai.get.damageEffect(current,player,player,'fire')>0&&
current.hp<=player.hp;
});
if(num>=2){
if(target.nodying) return eff/10;
return eff/Math.sqrt(target.hp);
} }
if(enemies[i].hasSkillTag('maixie')&&enemies[i].hp>1){
hp--;
}
hp+=enemies[i].hp;
}
hp/=enemies.length;
if(player.hp==2){
if(hp<2) return 1;
return 0;
}
else{
if(hp<=player.hp) return 1;
return 0;
} }
return 0;
} }
} }
} }
@ -315,6 +311,14 @@ character.swd={
order:1, order:1,
result:{ result:{
player:1 player:1
},
threaten:function(player,target){
if(target.storage.sxianjing&&target.storage.sxianjing.length){
return Math.sqrt(1.6/(target.storage.sxianjing.length+1));
}
else{
return 1.6
}
} }
}, },
intro:{ intro:{
@ -9038,7 +9042,7 @@ character.swd={
swd_xiaohuanglong:'小黄龙', swd_xiaohuanglong:'小黄龙',
huodan:'火丹', huodan:'火丹',
huodan_info:'出牌阶段限一次,你可以弃置一张红色牌并失去一点体力,然后对两名随机敌人各造成一点火属性伤害', huodan_info:'出牌阶段限一次,你可以弃置一张红色牌并失去一点体力,然后将两点火属性伤害分配给1~2名角色',
sxianjing:'陷阱', sxianjing:'陷阱',
sxianjing_bg:'阱', sxianjing_bg:'阱',
sxianjing_info:'出牌阶段,你可以将一张手牌背面朝上置于你的武将牌上(不能与已有花色相同)。当一名其他角色使用与一张“陷阱”牌花色相同的牌指定你为目标时,你移去对应的“陷阱”牌,然后随机获得该角色的一张牌。每当你受到一次伤害,你随机将一张“陷阱”牌返回手牌', sxianjing_info:'出牌阶段,你可以将一张手牌背面朝上置于你的武将牌上(不能与已有花色相同)。当一名其他角色使用与一张“陷阱”牌花色相同的牌指定你为目标时,你移去对应的“陷阱”牌,然后随机获得该角色的一张牌。每当你受到一次伤害,你随机将一张“陷阱”牌返回手牌',

View File

@ -10692,7 +10692,7 @@
} }
"step 4" "step 4"
if(get.info(card).contentAfter){ if(get.info(card).contentAfter){
var next=game.createEvent(card.name+'contentAfter'); var next=game.createEvent(card.name+'ContentAfter');
next.setContent(get.info(card).contentAfter); next.setContent(get.info(card).contentAfter);
next.targets=targets; next.targets=targets;
next.card=card; next.card=card;
@ -10824,6 +10824,15 @@
} }
} }
"step 1" "step 1"
var info=get.info(event.skill);
if(info&&info.contentBefore){
var next=game.createEvent(event.skill+'ContentBefore');
next.setContent(info.contentBefore);
next.targets=targets;
next.cards=cards;
next.player=player;
}
"step 2"
if(!event.skill){ if(!event.skill){
console.log('error: no skill',get.translation(event.player),event.player.getSkills()); console.log('error: no skill',get.translation(event.player),event.player.getSkills());
if(event._skill){ if(event._skill){
@ -10889,7 +10898,16 @@
event.num++; event.num++;
event.redo(); event.redo();
} }
"step 2" "step 3"
var info=get.info(event.skill);
if(info&&info.contentAfter){
var next=game.createEvent(event.skill+'ContentAfter');
next.setContent(info.contentAfter);
next.targets=targets;
next.cards=cards;
next.player=player;
}
"step 4"
if(player.getStat().allSkills>200){ if(player.getStat().allSkills>200){
player._noSkill=true; player._noSkill=true;
console.log(player.name,event.skill); console.log(player.name,event.skill);
@ -10900,7 +10918,7 @@
else{ else{
event.finish(); event.finish();
} }
"step 3" "step 5"
ui.clear(); ui.clear();
}, },
draw:function(){ draw:function(){