2015-08-15 09:10:06 +00:00
|
|
|
|
'use strict';
|
|
|
|
|
card.hearth={
|
|
|
|
|
card:{
|
2015-09-26 15:55:56 +00:00
|
|
|
|
linghunzhihuo:{
|
|
|
|
|
fullskin:true,
|
|
|
|
|
type:'trick',
|
|
|
|
|
enable:true,
|
|
|
|
|
filterTarget:true,
|
|
|
|
|
content:function(){
|
|
|
|
|
target.damage('fire');
|
|
|
|
|
var hs=player.get('h');
|
|
|
|
|
if(hs.length){
|
|
|
|
|
player.discard(hs.randomGet());
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
basic:{
|
2015-12-28 09:08:52 +00:00
|
|
|
|
order:1.8,
|
2015-11-26 08:15:28 +00:00
|
|
|
|
value:[6,1],
|
2015-09-26 15:55:56 +00:00
|
|
|
|
useful:2,
|
|
|
|
|
},
|
|
|
|
|
result:{
|
|
|
|
|
player:function(player,target){
|
|
|
|
|
if(player==target) return -1;
|
|
|
|
|
if(player.num('h')>=player.hp) return -0.1;
|
|
|
|
|
if(player.num('h')>1) return -0.5;
|
|
|
|
|
return 0;
|
|
|
|
|
},
|
|
|
|
|
target:-1
|
|
|
|
|
},
|
|
|
|
|
tag:{
|
|
|
|
|
damage:1,
|
|
|
|
|
fireDamage:1,
|
|
|
|
|
natureDamage:1,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2015-09-16 07:31:41 +00:00
|
|
|
|
jihuocard:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2016-06-08 01:43:10 +00:00
|
|
|
|
type:'trick',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return player==target;
|
|
|
|
|
},
|
|
|
|
|
selectTarget:-1,
|
|
|
|
|
content:function(){
|
|
|
|
|
target.skip('phaseDiscard');
|
2016-06-09 15:06:55 +00:00
|
|
|
|
target.draw();
|
2015-09-16 07:31:41 +00:00
|
|
|
|
},
|
|
|
|
|
ai:{
|
2016-06-09 15:06:55 +00:00
|
|
|
|
order:10,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
result:{
|
|
|
|
|
target:1
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
zhaomingdan:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
type:'trick',
|
|
|
|
|
chongzhu:true,
|
|
|
|
|
enable:function(card,player){
|
|
|
|
|
for(var i=0;i<game.players.length;i++){
|
|
|
|
|
if(game.players[i]!=player&&game.players[i].num('j')) return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
},
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return player!=target&&target.num('j')>0;
|
|
|
|
|
},
|
|
|
|
|
content:function(){
|
|
|
|
|
target.discard(target.get('j'));
|
2015-09-17 10:04:55 +00:00
|
|
|
|
player.draw();
|
2015-09-16 07:31:41 +00:00
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:9.5,
|
|
|
|
|
value:1,
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
|
|
|
|
var js=target.get('j');
|
|
|
|
|
var num=0;
|
|
|
|
|
for(var i=0;i<js.length;i++){
|
|
|
|
|
var jj=js[i].viewAs?{name:js[i].viewAs}:js[i];
|
|
|
|
|
if(jj.name=='zhaomingdan') num++;
|
2015-09-17 10:04:55 +00:00
|
|
|
|
else if(js.length==1&&ai.get.effect(target,jj,target,target)>=0){
|
2015-09-16 07:31:41 +00:00
|
|
|
|
num--;
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
num++;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return num;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
2015-09-17 10:04:55 +00:00
|
|
|
|
shijieshu:{
|
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
type:'trick',
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return !target.isMin();
|
|
|
|
|
},
|
|
|
|
|
content:function(){
|
|
|
|
|
'step 0'
|
|
|
|
|
var cards=[];
|
|
|
|
|
for(var i=0;i<2;i++){
|
|
|
|
|
var card=get.cardPile(function(card){
|
|
|
|
|
return get.type(card)=='equip';
|
|
|
|
|
});
|
|
|
|
|
if(card){
|
|
|
|
|
ui.special.appendChild(card);
|
|
|
|
|
cards.push(card);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
switch(cards.length){
|
|
|
|
|
case 1:{
|
|
|
|
|
target.$gain(cards[0]);
|
|
|
|
|
game.delay();
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
case 2:{
|
|
|
|
|
target.$gain(cards[0]);
|
|
|
|
|
setTimeout(function(){
|
|
|
|
|
target.$gain(cards[1]);
|
|
|
|
|
},250);
|
|
|
|
|
game.delay();
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
event.cards=cards;
|
|
|
|
|
'step 1'
|
|
|
|
|
if(event.cards.length){
|
|
|
|
|
target.equip(event.cards.shift());
|
|
|
|
|
game.delay(0.5);
|
|
|
|
|
if(event.cards.length){
|
|
|
|
|
event.redo();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
'step 2'
|
|
|
|
|
game.delay(0.5);
|
|
|
|
|
'step 3'
|
2016-07-29 17:25:53 +00:00
|
|
|
|
if(target.num('h')){
|
|
|
|
|
target.chooseToDiscard('h',true);
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:9,
|
|
|
|
|
value:6,
|
|
|
|
|
useful:2,
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
2016-07-29 17:25:53 +00:00
|
|
|
|
return Math.max(0,2-target.num('e'))+(target.num('h')?0:0.5);
|
2015-09-16 07:31:41 +00:00
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
shandianjian:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
type:'trick',
|
|
|
|
|
enable:true,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
if(player!=game.me&&player.num('h')<2) return false;
|
|
|
|
|
return target.num('h')>0;
|
|
|
|
|
},
|
|
|
|
|
content:function(){
|
|
|
|
|
"step 0"
|
|
|
|
|
if(target.get('h').length==0){
|
|
|
|
|
event.finish();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
var rand=Math.random()<0.5;
|
|
|
|
|
target.chooseCard(true).ai=function(card){
|
|
|
|
|
if(rand) return Math.random();
|
|
|
|
|
return ai.get.value(card);
|
|
|
|
|
};
|
|
|
|
|
"step 1"
|
|
|
|
|
event.dialog=ui.create.dialog(get.translation(target.name)+'展示的手牌',result.cards);
|
|
|
|
|
event.card2=result.cards[0];
|
2015-11-04 01:59:00 +00:00
|
|
|
|
event.videoId=lib.status.videoId++;
|
|
|
|
|
game.addVideo('cardDialog',null,[get.translation(target.name)+'展示的手牌',get.cardsInfo(result.cards),event.videoId]);
|
2015-12-08 13:54:44 +00:00
|
|
|
|
game.log(target,'展示了',event.card2);
|
2015-09-16 07:31:41 +00:00
|
|
|
|
player.chooseToDiscard(function(card){
|
|
|
|
|
return get.suit(card)==get.suit(_status.event.parent.card2);
|
|
|
|
|
},function(card){
|
|
|
|
|
if(ai.get.damageEffect(target,player,player,'thunder')>0){
|
|
|
|
|
return 6-ai.get.value(card,_status.event.player);
|
|
|
|
|
}
|
|
|
|
|
return -1;
|
|
|
|
|
}).prompt=false;
|
|
|
|
|
game.delay(2);
|
|
|
|
|
"step 2"
|
|
|
|
|
if(result.bool){
|
|
|
|
|
target.damage('thunder');
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
target.addTempSkill('shandianjian2','phaseBegin');
|
|
|
|
|
}
|
2015-11-04 01:59:00 +00:00
|
|
|
|
game.addVideo('cardDialog',null,event.videoId);
|
2015-09-16 07:31:41 +00:00
|
|
|
|
event.dialog.close();
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
basic:{
|
|
|
|
|
order:4,
|
|
|
|
|
value:[3,1],
|
|
|
|
|
useful:1,
|
|
|
|
|
},
|
2015-11-16 01:59:54 +00:00
|
|
|
|
wuxie:function(target,card,player,current,state){
|
|
|
|
|
if(ai.get.attitude(current,player)>=0&&state>0) return false;
|
|
|
|
|
},
|
2015-09-16 07:31:41 +00:00
|
|
|
|
result:{
|
|
|
|
|
player:function(player){
|
|
|
|
|
var nh=player.num('h');
|
2015-11-12 01:12:03 +00:00
|
|
|
|
if(nh<=player.hp&&nh<=4&&_status.event.name=='chooseToUse'){
|
2015-12-08 13:54:44 +00:00
|
|
|
|
if(typeof _status.event.filterCard=='function'&&
|
2015-09-16 07:31:41 +00:00
|
|
|
|
_status.event.filterCard({name:'shandianjian'})){
|
|
|
|
|
return -10;
|
|
|
|
|
}
|
|
|
|
|
if(_status.event.skill){
|
|
|
|
|
var viewAs=get.info(_status.event.skill).viewAs;
|
|
|
|
|
if(viewAs=='shandianjian') return -10;
|
|
|
|
|
if(viewAs&&viewAs.name=='shandianjian') return -10;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return 0;
|
|
|
|
|
},
|
|
|
|
|
target:function(player,target){
|
2016-08-12 08:26:31 +00:00
|
|
|
|
if(target.hasSkill('shandianjian2')||target.num('h')==0) return 0;
|
2015-11-12 01:12:03 +00:00
|
|
|
|
if(player.num('h')<=1) return 0;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
if(target==player){
|
2015-12-08 13:54:44 +00:00
|
|
|
|
if(typeof _status.event.filterCard=='function'&&
|
2015-09-16 07:31:41 +00:00
|
|
|
|
_status.event.filterCard({name:'shandianjian'})){
|
|
|
|
|
return -1.5;
|
|
|
|
|
}
|
|
|
|
|
if(_status.event.skill){
|
|
|
|
|
var viewAs=get.info(_status.event.skill).viewAs;
|
|
|
|
|
if(viewAs=='shandianjian') return -1.5;
|
|
|
|
|
if(viewAs&&viewAs.name=='shandianjian') return -1.5;
|
|
|
|
|
}
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
return -1.5;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
tag:{
|
|
|
|
|
damage:1,
|
|
|
|
|
thunderDamage:1,
|
|
|
|
|
natureDamage:1,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
shihuawuqi:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
type:'basic',
|
|
|
|
|
enable:true,
|
|
|
|
|
usable:1,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return player==target;
|
|
|
|
|
},
|
|
|
|
|
selectTarget:-1,
|
|
|
|
|
content:function(){
|
|
|
|
|
player.addTempSkill('shihuawuqi','phaseAfter');
|
|
|
|
|
if(!player.num('h','sha')){
|
|
|
|
|
var card=get.cardPile('sha');
|
|
|
|
|
if(card){
|
|
|
|
|
player.gain(card,'gain2');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
value:4,
|
|
|
|
|
useful:2,
|
|
|
|
|
order:8,
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
|
|
|
|
return target.num('h','sha')?0:1;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
siwangchanrao:{
|
|
|
|
|
enable:true,
|
|
|
|
|
type:'trick',
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return player!=target&&target.num('h')>0;
|
|
|
|
|
},
|
|
|
|
|
selectTarget:1,
|
|
|
|
|
content:function(){
|
|
|
|
|
'step 0'
|
|
|
|
|
var hs=target.get('h');
|
|
|
|
|
if(hs.length){
|
|
|
|
|
target.discard(hs.randomGet());
|
|
|
|
|
}
|
|
|
|
|
'step 1'
|
|
|
|
|
if(!target.num('h')){
|
|
|
|
|
player.draw();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:9,
|
|
|
|
|
value:4,
|
|
|
|
|
useful:1,
|
|
|
|
|
result:{
|
|
|
|
|
target:-1,
|
|
|
|
|
player:function(player,target){
|
|
|
|
|
if(target.num('h')==1) return 1;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
dunpaigedang:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
type:'trick',
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return player==target;
|
|
|
|
|
},
|
|
|
|
|
selectTarget:-1,
|
2016-05-11 15:50:00 +00:00
|
|
|
|
modTarget:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
content:function(){
|
|
|
|
|
target.changeHujia();
|
|
|
|
|
target.draw();
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:8.5,
|
|
|
|
|
value:7,
|
|
|
|
|
useful:3,
|
|
|
|
|
result:{
|
|
|
|
|
target:1
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
chuansongmen:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-28 03:01:13 +00:00
|
|
|
|
type:'trick',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
discard:false,
|
|
|
|
|
selectTarget:-1,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return target==player;
|
|
|
|
|
},
|
|
|
|
|
usable:3,
|
2016-07-01 01:31:02 +00:00
|
|
|
|
forceUsable:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
content:function(){
|
|
|
|
|
'step 0'
|
|
|
|
|
player.storage.chuansongmen=cards[0];
|
|
|
|
|
var gained=get.cards()[0];
|
|
|
|
|
target.gain(gained,'gain2');
|
|
|
|
|
if(lib.filter.filterCard(gained,player,event.parent.parent)){
|
|
|
|
|
var next=player.chooseToUse();
|
|
|
|
|
next.filterCard=function(card){
|
|
|
|
|
return card==gained;
|
|
|
|
|
};
|
|
|
|
|
next.prompt='是否使用'+get.translation(gained)+'?';
|
2016-09-29 17:23:12 +00:00
|
|
|
|
if(cards[0]){
|
|
|
|
|
ui.special.appendChild(cards[0]);
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
event.finish();
|
|
|
|
|
}
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
else{
|
2016-09-29 17:23:12 +00:00
|
|
|
|
if(cards[0]){
|
|
|
|
|
ui.discardPile.appendChild(cards[0]);
|
|
|
|
|
}
|
2015-09-16 07:31:41 +00:00
|
|
|
|
event.finish();
|
|
|
|
|
}
|
|
|
|
|
'step 1'
|
|
|
|
|
if(result.bool){
|
|
|
|
|
player.gain(cards,'gain2');
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
ui.discardPile.appendChild(cards[0]);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:9.5,
|
|
|
|
|
value:7,
|
2015-09-17 10:04:55 +00:00
|
|
|
|
useful:3,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
result:{
|
|
|
|
|
target:1
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
tanshezhiren:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
type:'trick',
|
2016-07-04 03:32:59 +00:00
|
|
|
|
enable:function(card,player){
|
|
|
|
|
if(game.players.length<3) return false;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
for(var i=0;i<game.players.length;i++){
|
2016-07-04 03:32:59 +00:00
|
|
|
|
if(game.players[i]!=player&&game.players[i].num('h')) return true;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
},
|
2016-07-04 03:32:59 +00:00
|
|
|
|
chongzhu:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
filterTarget:function(card,player,target){
|
2016-07-04 03:32:59 +00:00
|
|
|
|
return target.num('h')>0&&target!=player;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
},
|
|
|
|
|
selectTarget:-1,
|
|
|
|
|
multitarget:true,
|
|
|
|
|
multiline:true,
|
|
|
|
|
content:function(){
|
|
|
|
|
'step 0'
|
|
|
|
|
for(var i=0;i<targets.length;i++){
|
2015-09-25 00:26:16 +00:00
|
|
|
|
if(!targets[i].num('h')) targets.splice(i--,1);
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
if(targets.contains(player)){
|
|
|
|
|
event.current=player;
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
event.current=targets.randomGet();
|
|
|
|
|
}
|
|
|
|
|
if(!targets.length) event.finish();
|
2015-11-04 01:59:00 +00:00
|
|
|
|
event.num=0;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
'step 1'
|
2015-10-20 17:44:00 +00:00
|
|
|
|
var current;
|
|
|
|
|
if(targets.length>1){
|
|
|
|
|
current=targets.randomGet(event.current);
|
|
|
|
|
event.current.line(current);
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
current=targets[0];
|
|
|
|
|
}
|
2015-09-16 07:31:41 +00:00
|
|
|
|
var hs=current.get('h');
|
|
|
|
|
if(hs.length){
|
|
|
|
|
current.discard(hs.randomGet());
|
|
|
|
|
}
|
|
|
|
|
if(hs.length>1){
|
|
|
|
|
event.current=current;
|
2015-11-04 01:59:00 +00:00
|
|
|
|
event.num++;
|
|
|
|
|
if(event.num<10){
|
|
|
|
|
event.redo();
|
|
|
|
|
}
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:8,
|
|
|
|
|
result:{
|
|
|
|
|
target:-1
|
2015-12-20 04:34:31 +00:00
|
|
|
|
},
|
|
|
|
|
tag:{
|
|
|
|
|
multineg:1,
|
|
|
|
|
multitarget:1
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
xingjiegoutong:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2016-07-20 03:17:01 +00:00
|
|
|
|
type:'trick',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
selectTarget:-1,
|
2016-05-11 15:50:00 +00:00
|
|
|
|
modTarget:true,
|
2015-09-16 07:31:41 +00:00
|
|
|
|
filterTarget:function(card,player,target){return player==target},
|
|
|
|
|
content:function(){
|
|
|
|
|
target.gainMaxHp();
|
2015-09-25 00:26:16 +00:00
|
|
|
|
target.recover();
|
2015-09-22 03:53:35 +00:00
|
|
|
|
target.discard(target.get('h'));
|
2015-09-16 07:31:41 +00:00
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
basic:{
|
|
|
|
|
useful:[1,1],
|
|
|
|
|
value:[1,1],
|
|
|
|
|
},
|
|
|
|
|
order:1,
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
2015-11-11 02:41:42 +00:00
|
|
|
|
if(target.num('h','tao')) return 0;
|
2015-09-22 03:53:35 +00:00
|
|
|
|
var nh=target.num('h');
|
2015-09-25 00:26:16 +00:00
|
|
|
|
if(nh<=2) return 1;
|
|
|
|
|
if(target.hp==1&&target.maxHp>2) return 1;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
return 0;
|
|
|
|
|
},
|
|
|
|
|
},
|
2016-08-07 18:30:02 +00:00
|
|
|
|
tag:{
|
|
|
|
|
recover:1
|
|
|
|
|
}
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
2015-08-15 09:10:06 +00:00
|
|
|
|
shenenshu:{
|
2015-09-16 07:31:41 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 02:45:45 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return target!=player;
|
|
|
|
|
},
|
|
|
|
|
type:'trick',
|
|
|
|
|
content:function(){
|
|
|
|
|
var num=player.num('h')-target.num('h');
|
2015-10-08 06:16:37 +00:00
|
|
|
|
if(num<-3) num=-3;
|
2015-09-25 00:26:16 +00:00
|
|
|
|
if(num>3) num=3;
|
2015-10-08 06:16:37 +00:00
|
|
|
|
if(num>0){
|
|
|
|
|
target.draw(num);
|
|
|
|
|
}
|
|
|
|
|
else if(num<0){
|
|
|
|
|
player.draw(-num);
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
game.asyncDraw([target,player]);
|
|
|
|
|
}
|
2015-09-16 02:45:45 +00:00
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:10,
|
|
|
|
|
value:7,
|
|
|
|
|
useful:2,
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
|
|
|
|
var nh=player.num('h')-target.num('h');
|
2016-08-12 08:26:31 +00:00
|
|
|
|
if(!player.hasSkill('jizhi')){
|
2015-09-16 02:45:45 +00:00
|
|
|
|
nh--;
|
|
|
|
|
}
|
2015-10-08 06:16:37 +00:00
|
|
|
|
if(nh>0) return nh;
|
|
|
|
|
if(nh==0) return 1;
|
|
|
|
|
return 0;
|
|
|
|
|
},
|
|
|
|
|
player:function(player,target){
|
|
|
|
|
var nh=target.num('h')-player.num('h');
|
2016-08-12 08:26:31 +00:00
|
|
|
|
if(!player.hasSkill('jizhi')){
|
2015-10-08 06:16:37 +00:00
|
|
|
|
nh++;
|
|
|
|
|
}
|
|
|
|
|
if(nh>0) return nh;
|
|
|
|
|
if(nh==0) return 1;
|
|
|
|
|
return 0;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
expose:0.2
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
zhiliaobo:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 02:45:45 +00:00
|
|
|
|
enable:true,
|
|
|
|
|
filterTarget:function(card,player,target){
|
|
|
|
|
return target.hp<target.maxHp;
|
|
|
|
|
},
|
|
|
|
|
type:'trick',
|
|
|
|
|
content:function(){
|
|
|
|
|
'step 0'
|
|
|
|
|
target.recover();
|
|
|
|
|
'step 1'
|
|
|
|
|
if(target.hp<target.maxHp){
|
|
|
|
|
target.judge(function(card){
|
2015-09-26 13:11:55 +00:00
|
|
|
|
return get.color(card)=='red'?1:0;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
event.finish();
|
|
|
|
|
}
|
|
|
|
|
'step 2'
|
|
|
|
|
if(result.bool){
|
|
|
|
|
target.recover();
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
order:4,
|
2015-11-21 05:30:26 +00:00
|
|
|
|
value:[8,3],
|
2015-09-16 02:45:45 +00:00
|
|
|
|
useful:[6,3],
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
2015-09-25 00:26:16 +00:00
|
|
|
|
var eff=ai.get.recoverEffect(target,player,target);
|
|
|
|
|
if(eff<=0) return 0;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
var num=target.maxHp-target.hp;
|
|
|
|
|
if(num<1) return 0;
|
|
|
|
|
if(num==1) return 1;
|
2015-11-21 05:30:26 +00:00
|
|
|
|
if(target.hp==1) return 2.5;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
return 2;
|
|
|
|
|
}
|
2016-08-07 18:30:02 +00:00
|
|
|
|
},
|
|
|
|
|
tag:{
|
|
|
|
|
recover:1
|
2015-09-16 02:45:45 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
yuansuhuimie:{
|
2015-09-17 10:04:55 +00:00
|
|
|
|
fullskin:true,
|
2015-09-16 02:45:45 +00:00
|
|
|
|
type:'trick',
|
|
|
|
|
enable:true,
|
|
|
|
|
selectTarget:-1,
|
2015-09-22 03:53:35 +00:00
|
|
|
|
filterTarget:true,
|
2015-09-16 02:45:45 +00:00
|
|
|
|
content:function(){
|
|
|
|
|
"step 0"
|
|
|
|
|
target.chooseToDiscard([1,2],'he').ai=function(card){
|
2016-08-07 18:30:02 +00:00
|
|
|
|
if(ai.get.damageEffect(target,player,target,'thunder')>=0){
|
|
|
|
|
if(target.hasSkillTag('maixie')){
|
|
|
|
|
if(ui.selected.cards.length) return 0;
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
2016-07-20 02:04:20 +00:00
|
|
|
|
if(player.hasSkillTag('notricksource')) return 0;
|
|
|
|
|
if(target.hasSkillTag('notrick')) return 0;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
if(card.name=='tao') return 0;
|
|
|
|
|
if(target.hp==1&&card.name=='jiu') return 0;
|
|
|
|
|
if(get.type(card)!='basic'){
|
|
|
|
|
return 10-ai.get.value(card);
|
|
|
|
|
}
|
|
|
|
|
return 8-ai.get.value(card);
|
|
|
|
|
};
|
|
|
|
|
"step 1"
|
|
|
|
|
if(!result.bool||result.cards.length<2){
|
|
|
|
|
if(result.bool) target.damage(2-result.cards.length,'thunder');
|
|
|
|
|
else target.damage(2,'thunder');
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
ai:{
|
|
|
|
|
basic:{
|
|
|
|
|
order:7,
|
|
|
|
|
useful:[5,1]
|
|
|
|
|
},
|
|
|
|
|
result:{
|
|
|
|
|
target:function(player,target){
|
|
|
|
|
if(target.hasSkillTag('nothunder')) return 0;
|
|
|
|
|
var num=0;
|
|
|
|
|
for(var i=0;i<game.players.length;i++){
|
|
|
|
|
if(game.players[i].ai.shown==0) num++;
|
|
|
|
|
}
|
|
|
|
|
if(num>1) return 0;
|
|
|
|
|
var nh=target.num('he');
|
|
|
|
|
if(target==player) nh--;
|
|
|
|
|
if(nh==2) return -2.5;
|
|
|
|
|
if(nh==1) return -3;
|
2015-09-22 03:53:35 +00:00
|
|
|
|
if(nh==0) return -4;
|
2015-09-16 02:45:45 +00:00
|
|
|
|
return -2;
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
tag:{
|
|
|
|
|
respond:1,
|
|
|
|
|
respondSha:1,
|
|
|
|
|
damage:1,
|
|
|
|
|
natureDamage:1,
|
|
|
|
|
thunderDamage:1,
|
|
|
|
|
multitarget:1,
|
|
|
|
|
multineg:1,
|
|
|
|
|
discard:2,
|
|
|
|
|
loseCard:2,
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-08-15 09:10:06 +00:00
|
|
|
|
},
|
|
|
|
|
skill:{
|
2015-09-16 07:31:41 +00:00
|
|
|
|
shihuawuqi:{
|
|
|
|
|
mod:{
|
|
|
|
|
attackFrom:function(from,to,distance){
|
2015-09-17 10:04:55 +00:00
|
|
|
|
return distance-1;
|
2015-09-16 07:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
shandianjian2:{},
|
2015-08-15 09:10:06 +00:00
|
|
|
|
},
|
|
|
|
|
translate:{
|
2015-09-26 15:55:56 +00:00
|
|
|
|
linghunzhihuo:'灵魂之火',
|
|
|
|
|
linghunzhihuo_info:'对一名角色造成一点火焰伤害,然后随机弃置一张手牌',
|
2015-09-16 02:45:45 +00:00
|
|
|
|
shenenshu:'神恩术',
|
2015-10-08 06:16:37 +00:00
|
|
|
|
shenenshu_info:'对一名其他角色使用,令你与目标中手牌数较少的摸若干张牌,直到手牌数相等(X不大于3),若手牌数已相等,改为你与目标各摸一张牌',
|
2015-09-16 02:45:45 +00:00
|
|
|
|
zhiliaobo:'治疗波',
|
|
|
|
|
zhiliaobo_info:'对一名受伤角色使用,令其回复一点体力,若其仍处于受伤状态,则进行一次判定,若结果为红色则再回复一点体力',
|
|
|
|
|
yuansuhuimie:'元素毁灭',
|
2015-09-25 00:26:16 +00:00
|
|
|
|
yuansuhuimie_info:'对所有角色使用,令目标弃置0~2张牌,并受到2-X点雷电伤害,X为其弃置的手牌数',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
xingjiegoutong:'星界沟通',
|
2015-09-25 00:26:16 +00:00
|
|
|
|
xingjiegoutong_info:'增加一点体力上限并回复一点体力,弃置你的所有手牌',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
tanshezhiren:'弹射之刃',
|
2016-07-04 03:32:59 +00:00
|
|
|
|
tanshezhiren_info:'限场存活角色不小于3时使用,弃置一名随机角色(不含你)的手牌,重复此过程直到有一名角色失去最后一张手牌(最多重复10次)',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
chuansongmen:'传送门',
|
|
|
|
|
chuansongmen_info:'摸一张牌,若你能立即使用之,则将此牌回手(每回合最多使用3次)',
|
|
|
|
|
dunpaigedang:'盾牌格挡',
|
|
|
|
|
dunpaigedang_info:'获得一点护甲值,摸一张牌',
|
|
|
|
|
siwangchanrao:'死亡缠绕',
|
2015-09-17 10:04:55 +00:00
|
|
|
|
siwangchanrao_infox:'弃置一名其他角色的一张手牌,若其此时没有手牌,则你摸一张牌',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
shihuawuqi:'石化武器',
|
2015-09-17 10:04:55 +00:00
|
|
|
|
shihuawuqi_infox:'本回合内攻击范围+1;若你手牌中没有杀,则从牌堆中获得一张杀',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
shandianjian:'闪电箭',
|
|
|
|
|
shandianjian_info:'目标角色展示一张手牌,然后若你能弃掉一张与所展示牌相同花色的手牌,则对该角色造成1点雷电伤害。',
|
2015-09-17 10:04:55 +00:00
|
|
|
|
shijieshu:'视界术',
|
2016-07-29 17:25:53 +00:00
|
|
|
|
shijieshu_info:'目标随机装备牌堆中的两张装备牌,然后弃置一张手牌',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
zhaomingdan:'照明弹',
|
2015-09-17 10:04:55 +00:00
|
|
|
|
zhaomingdan_info:'弃置一名其他角色判定区内的所有牌,然后摸一张牌',
|
2015-09-16 07:31:41 +00:00
|
|
|
|
jihuocard:'激活',
|
2016-06-09 15:06:55 +00:00
|
|
|
|
jihuocard_info:'跳过本回合的弃牌阶段,摸一张牌',
|
2015-08-15 09:10:06 +00:00
|
|
|
|
},
|
|
|
|
|
list:[
|
2016-09-13 15:52:46 +00:00
|
|
|
|
// ['heart',2,'shenenshu'],
|
|
|
|
|
// ['diamond',12,'shenenshu'],
|
2015-09-16 02:45:45 +00:00
|
|
|
|
['club',7,'zhiliaobo'],
|
|
|
|
|
['spade',1,'zhiliaobo'],
|
|
|
|
|
['spade',13,'yuansuhuimie'],
|
2015-09-16 07:31:41 +00:00
|
|
|
|
['spade',13,'xingjiegoutong'],
|
|
|
|
|
['diamond',2,'tanshezhiren'],
|
|
|
|
|
['diamond',2,'chuansongmen'],
|
|
|
|
|
['heart',2,'chuansongmen'],
|
|
|
|
|
['club',3,'dunpaigedang'],
|
2015-09-17 10:04:55 +00:00
|
|
|
|
['club',3,'shandianjian','thunder'],
|
|
|
|
|
['spade',1,'shandianjian','thunder'],
|
|
|
|
|
['spade',7,'shijieshu'],
|
2015-10-14 03:28:07 +00:00
|
|
|
|
// ['diamond',5,'zhaomingdan'],
|
|
|
|
|
// ['heart',10,'zhaomingdan'],
|
2015-09-16 07:31:41 +00:00
|
|
|
|
['diamond',2,'jihuocard'],
|
2015-09-26 15:55:56 +00:00
|
|
|
|
['diamond',1,'linghunzhihuo'],
|
2015-08-15 09:10:06 +00:00
|
|
|
|
],
|
|
|
|
|
}
|