This commit is contained in:
parent
0aee8cf4d4
commit
4960cdb2d1
112
card/ex.js
112
card/ex.js
|
@ -1,112 +0,0 @@
|
|||
'use strict';
|
||||
card.ex={
|
||||
connect:true,
|
||||
card:{
|
||||
hanbing:{
|
||||
fullskin:true,
|
||||
type:"equip",
|
||||
subtype:"equip1",
|
||||
distance:{attackFrom:-1},
|
||||
skills:['hanbing_skill'],
|
||||
ai:{
|
||||
basic:{
|
||||
equipValue:2
|
||||
}
|
||||
},
|
||||
},
|
||||
renwang:{
|
||||
fullskin:true,
|
||||
type:"equip",
|
||||
subtype:"equip2",
|
||||
skills:['renwang_skill'],
|
||||
ai:{
|
||||
basic:{
|
||||
equipValue:8
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
skill:{
|
||||
hanbing_skill:{
|
||||
trigger:{player:'shaHit'},
|
||||
direct:true,
|
||||
audio:true,
|
||||
filter:function(event){
|
||||
return event.target.get('he').length>0;
|
||||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.choosePlayerCard('是否发动【寒冰剑】?','he',trigger.target,Math.min(2,trigger.target.num('he')),function(button){
|
||||
var trigger=_status.event.getTrigger();
|
||||
var player=_status.event.player;
|
||||
var eff=ai.get.damageEffect(trigger.target,player,player);
|
||||
if(ai.get.attitude(player,trigger.target)>0){
|
||||
if(eff>=0) return false;
|
||||
return 10-ai.get.buttonValue(button);
|
||||
}
|
||||
if(eff<=0) return ai.get.buttonValue(button);
|
||||
if(trigger.target.hp==1) return false;
|
||||
if(player.skills.contains('jiu')||player.skills.contains('tianxianjiu')||
|
||||
player.skills.contains('luoyi2')||player.skills.contains('reluoyi2')) return false;
|
||||
if(_status.event.dialog.buttons.length<2) return -1;
|
||||
var num=0;
|
||||
for(var i=0;i<_status.event.dialog.buttons.length;i++){
|
||||
if(ai.get.buttonValue(_status.event.dialog.buttons[i])>1.5) num++;
|
||||
}
|
||||
if(num>=2) return ai.get.buttonValue(button)-1.5;
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
var cards=[];
|
||||
for(var i=0;i<result.links.length;i++) cards.push(result.links[i]);
|
||||
player.logSkill('hanbing_skill');
|
||||
trigger.unhurt=true;
|
||||
trigger.target.discard(cards);
|
||||
}
|
||||
}
|
||||
},
|
||||
renwang_skill:{
|
||||
trigger:{target:'shaBefore'},
|
||||
forced:true,
|
||||
priority:6,
|
||||
audio:true,
|
||||
filter:function(event){
|
||||
if(event.player.num('s','unequip')) return false;
|
||||
return (event.card.name=='sha'&&get.color(event.card)=='black')
|
||||
},
|
||||
content:function(){
|
||||
trigger.untrigger();
|
||||
trigger.finish();
|
||||
},
|
||||
ai:{
|
||||
effect:{
|
||||
target:function(card,player){
|
||||
var equip1=player.get('e','1');
|
||||
if(equip1&&equip1.name=='qinggang') return 1;
|
||||
if(player.num('s','unequip')) return;
|
||||
if(card.name=='sha'&&get.color(card)=='black') return 'zerotarget';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
translate:{
|
||||
hanbing:'寒冰剑',
|
||||
renwang:'仁王盾',
|
||||
hanbing_bg:'冰',
|
||||
renwang_bg:'盾',
|
||||
hanbing_skill:'寒冰剑',
|
||||
renwang_skill:'仁王盾',
|
||||
hanbing_info:'每当你使用杀命中目标后,你可以防止伤害,改为弃置目标两张牌',
|
||||
hanbing_skill_info:'每当你使用杀命中目标后,你可以防止伤害,改为弃置目标两张牌',
|
||||
renwang_info:'黑色的杀对你无效',
|
||||
renwang_skill_info:'黑色的杀对你无效',
|
||||
},
|
||||
list:[
|
||||
["spade",2,'hanbing'],
|
||||
["club",2,'renwang'],
|
||||
["heart",12,'shandian','thunder'],
|
||||
["diamond",12,'wuxie'],
|
||||
],
|
||||
}
|
101
card/standard.js
101
card/standard.js
|
@ -1208,8 +1208,94 @@ card.standard={
|
|||
}
|
||||
}
|
||||
},
|
||||
hanbing:{
|
||||
fullskin:true,
|
||||
type:"equip",
|
||||
subtype:"equip1",
|
||||
distance:{attackFrom:-1},
|
||||
skills:['hanbing_skill'],
|
||||
ai:{
|
||||
basic:{
|
||||
equipValue:2
|
||||
}
|
||||
},
|
||||
},
|
||||
renwang:{
|
||||
fullskin:true,
|
||||
type:"equip",
|
||||
subtype:"equip2",
|
||||
skills:['renwang_skill'],
|
||||
ai:{
|
||||
basic:{
|
||||
equipValue:8
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
skill:{
|
||||
hanbing_skill:{
|
||||
trigger:{player:'shaHit'},
|
||||
direct:true,
|
||||
audio:true,
|
||||
filter:function(event){
|
||||
return event.target.get('he').length>0;
|
||||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.choosePlayerCard('是否发动【寒冰剑】?','he',trigger.target,Math.min(2,trigger.target.num('he')),function(button){
|
||||
var trigger=_status.event.getTrigger();
|
||||
var player=_status.event.player;
|
||||
var eff=ai.get.damageEffect(trigger.target,player,player);
|
||||
if(ai.get.attitude(player,trigger.target)>0){
|
||||
if(eff>=0) return false;
|
||||
return 10-ai.get.buttonValue(button);
|
||||
}
|
||||
if(eff<=0) return ai.get.buttonValue(button);
|
||||
if(trigger.target.hp==1) return false;
|
||||
if(player.skills.contains('jiu')||player.skills.contains('tianxianjiu')||
|
||||
player.skills.contains('luoyi2')||player.skills.contains('reluoyi2')) return false;
|
||||
if(_status.event.dialog.buttons.length<2) return -1;
|
||||
var num=0;
|
||||
for(var i=0;i<_status.event.dialog.buttons.length;i++){
|
||||
if(ai.get.buttonValue(_status.event.dialog.buttons[i])>1.5) num++;
|
||||
}
|
||||
if(num>=2) return ai.get.buttonValue(button)-1.5;
|
||||
});
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
trigger.untrigger();
|
||||
var cards=[];
|
||||
for(var i=0;i<result.links.length;i++) cards.push(result.links[i]);
|
||||
player.logSkill('hanbing_skill');
|
||||
trigger.unhurt=true;
|
||||
trigger.target.discard(cards);
|
||||
}
|
||||
}
|
||||
},
|
||||
renwang_skill:{
|
||||
trigger:{target:'shaBefore'},
|
||||
forced:true,
|
||||
priority:6,
|
||||
audio:true,
|
||||
filter:function(event){
|
||||
if(event.player.num('s','unequip')) return false;
|
||||
return (event.card.name=='sha'&&get.color(event.card)=='black')
|
||||
},
|
||||
content:function(){
|
||||
trigger.untrigger();
|
||||
trigger.finish();
|
||||
},
|
||||
ai:{
|
||||
effect:{
|
||||
target:function(card,player){
|
||||
var equip1=player.get('e','1');
|
||||
if(equip1&&equip1.name=='qinggang') return 1;
|
||||
if(player.num('s','unequip')) return;
|
||||
if(card.name=='sha'&&get.color(card)=='black') return 'zerotarget';
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
zhuge_skill:{
|
||||
mod:{
|
||||
cardUsable:function(card,player,num){
|
||||
|
@ -1731,6 +1817,16 @@ card.standard={
|
|||
lebu:'乐不思蜀',
|
||||
shandian:'闪电',
|
||||
shandian_bg:'电',
|
||||
hanbing:'寒冰剑',
|
||||
renwang:'仁王盾',
|
||||
hanbing_bg:'冰',
|
||||
renwang_bg:'盾',
|
||||
hanbing_skill:'寒冰剑',
|
||||
renwang_skill:'仁王盾',
|
||||
hanbing_info:'每当你使用杀命中目标后,你可以防止伤害,改为弃置目标两张牌',
|
||||
hanbing_skill_info:'每当你使用杀命中目标后,你可以防止伤害,改为弃置目标两张牌',
|
||||
renwang_info:'黑色的杀对你无效',
|
||||
renwang_skill_info:'黑色的杀对你无效',
|
||||
sha_info:'出牌阶段,对攻击范围内的一名角色使用,令其打出一张【闪】或受到一点伤害。',
|
||||
shan_info:'闪避一张杀',
|
||||
tao_info:'出牌阶段,对自己使用,回复一点体力。',
|
||||
|
@ -1878,6 +1974,9 @@ card.standard={
|
|||
["club",6,'lebu'],
|
||||
["heart",6,'lebu'],
|
||||
["spade",1,'shandian','thunder'],
|
||||
|
||||
["spade",2,'hanbing'],
|
||||
["club",2,'renwang'],
|
||||
["heart",12,'shandian','thunder'],
|
||||
["diamond",12,'wuxie'],
|
||||
],
|
||||
}
|
||||
|
|
1120
card/swd.js
1120
card/swd.js
File diff suppressed because it is too large
Load Diff
888
card/yunchou.js
888
card/yunchou.js
|
@ -1,102 +1,5 @@
|
|||
card.yunchou={
|
||||
card:{
|
||||
lingjiandai:{
|
||||
fullskin:true,
|
||||
enable:true,
|
||||
type:'basic',
|
||||
range:{global:1},
|
||||
filterTarget:true,
|
||||
content:function(){
|
||||
var list=get.typeCard('hslingjian');
|
||||
if(list.length){
|
||||
list=list.randomGets(3);
|
||||
for(var i=0;i<list.length;i++){
|
||||
list[i]=game.createCard(list[i]);
|
||||
}
|
||||
}
|
||||
target.gain(list,'gain2');
|
||||
},
|
||||
ai:{
|
||||
order:10,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(target==player&&target.num('h',{type:'equip'})) return 2.5;
|
||||
if(target.hasSkill('mujiaren_skill')) return 2;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
jiguanshu:{
|
||||
fullskin:true,
|
||||
enable:true,
|
||||
type:'basic',
|
||||
range:{global:1},
|
||||
filterTarget:function(card,player,target){
|
||||
var es=target.get('e');
|
||||
for(var i=0;i<es.length;i++){
|
||||
if(lib.inpile.contains(es[i].name)) return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function(){
|
||||
var es=target.get('e');
|
||||
var list=get.typeCard('hslingjian');
|
||||
var cards=[];
|
||||
var time=0;
|
||||
for(var i=0;i<es.length;i++){
|
||||
if(lib.inpile.contains(es[i].name)){
|
||||
var card=game.createCard(list.randomGet());
|
||||
cards.push(card);
|
||||
time+=200;
|
||||
setTimeout((function(card,name){
|
||||
return function(){
|
||||
card.init([card.suit,card.number,name,card.nature]);
|
||||
card.style.transform='scale(1.1)';
|
||||
card.classList.add('glow');
|
||||
setTimeout(function(){
|
||||
card.style.transform='';
|
||||
card.classList.remove('glow');
|
||||
},500);
|
||||
}
|
||||
}(es[i],lib.skill._lingjianduanzao.process([card,es[i]]))),i*200);
|
||||
}
|
||||
}
|
||||
target.$gain2(cards);
|
||||
game.delay(0,time)
|
||||
},
|
||||
ai:{
|
||||
order:7.5,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
var es=target.get('e');
|
||||
var num=0;
|
||||
for(var i=0;i<es.length;i++){
|
||||
if(lib.inpile.contains(es[i].name)) num++;
|
||||
}
|
||||
return num;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
mujiaren:{
|
||||
fullskin:true,
|
||||
enable:true,
|
||||
type:'basic',
|
||||
range:{global:1},
|
||||
filterTarget:function(card,player,target){
|
||||
return !target.hasSkill('mujiaren_skill');
|
||||
},
|
||||
content:function(){
|
||||
target.addSkill('mujiaren_skill');
|
||||
},
|
||||
ai:{
|
||||
order:10.1,
|
||||
result:{
|
||||
target:1
|
||||
}
|
||||
}
|
||||
},
|
||||
suolianjia:{
|
||||
fullskin:true,
|
||||
type:"equip",
|
||||
|
@ -774,718 +677,8 @@ card.yunchou={
|
|||
}
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return target.num('he')>0;
|
||||
},
|
||||
content:function(){
|
||||
target.discard(target.get('he').randomGet());
|
||||
},
|
||||
ai:{
|
||||
order:6.5,
|
||||
result:{
|
||||
target:-1,
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:true,
|
||||
content:function(){
|
||||
'step 0'
|
||||
var list=[];
|
||||
for(var i=0;i<lib.inpile.length;i++){
|
||||
if(lib.card[lib.inpile[i]].subtype=='equip2'){
|
||||
list.push(lib.inpile[i]);
|
||||
}
|
||||
}
|
||||
if(list.length){
|
||||
var card=game.createCard(list.randomGet());
|
||||
target.$draw(card);
|
||||
game.delay();
|
||||
target.equip(card);
|
||||
}
|
||||
'step 1'
|
||||
var hs=target.get('h');
|
||||
if(hs.length){
|
||||
target.discard(hs.randomGet());
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
order:1,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(target.get('e','2')){
|
||||
if(target.num('h')) return -0.6;
|
||||
return 0;
|
||||
}
|
||||
else{
|
||||
if(target.num('h')) return 0.5;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
hslingjian_xingtigaizao:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return target==player;
|
||||
},
|
||||
selectTarget:-1,
|
||||
content:function(){
|
||||
target.draw();
|
||||
target.addSkill('hslingjian_xingtigaizao');
|
||||
if(typeof target.storage.hslingjian_xingtigaizao=='number'){
|
||||
target.storage.hslingjian_xingtigaizao++;
|
||||
}
|
||||
else{
|
||||
target.storage.hslingjian_xingtigaizao=1;
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
order:1,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(target.num('h')<target.hp) return 1;
|
||||
return 0;
|
||||
}
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
hslingjian_shijianhuisu:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return target!=player&&target.num('e')>0;
|
||||
},
|
||||
content:function(){
|
||||
var es=target.get('e');
|
||||
target.gain(es);
|
||||
target.$gain2(es);
|
||||
},
|
||||
ai:{
|
||||
order:5,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(target.hasSkillTag('noe')) return target.num('e')*2;
|
||||
return -target.num('e');
|
||||
}
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
tag:{
|
||||
loseCard:1,
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return !target.isTurnedOver()&&target!=player;
|
||||
},
|
||||
content:function(){
|
||||
target.draw(2);
|
||||
target.turnOver();
|
||||
},
|
||||
ai:{
|
||||
order:2,
|
||||
result:{
|
||||
target:-1,
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
hslingjian_shengxiuhaojiao:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return !target.hasSkill('hslingjian_chaofeng');
|
||||
},
|
||||
content:function(){
|
||||
target.addTempSkill('hslingjian_chaofeng',{player:'phaseBegin'});
|
||||
},
|
||||
ai:{
|
||||
order:2,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(get.distance(player,target,'absolute')<=1) return 0;
|
||||
if(target.num('h')<=target.hp) return -0.1;
|
||||
return -1;
|
||||
}
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
hslingjian_yinmilichang:{
|
||||
type:'hslingjian',
|
||||
fullimage:true,
|
||||
vanish:true,
|
||||
enable:true,
|
||||
derivation:true,
|
||||
filterTarget:function(card,player,target){
|
||||
return player!=target&&!target.hasSkill('hslingjian_yinshen');
|
||||
},
|
||||
content:function(){
|
||||
target.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'});
|
||||
},
|
||||
ai:{
|
||||
order:2,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(get.distance(player,target,'absolute')<=1) return 0;
|
||||
if(target.hp==1) return 2;
|
||||
if(target.hp==2&&target.num('h')<=2) return 1.2;
|
||||
return 1;
|
||||
}
|
||||
},
|
||||
useful:[2,0.5],
|
||||
value:[2,0.5],
|
||||
}
|
||||
},
|
||||
},
|
||||
skill:{
|
||||
hslingjian_xuanfengzhiren_equip1:{
|
||||
trigger:{source:'damageEnd'},
|
||||
forced:true,
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha'&&event.player.num('he');
|
||||
},
|
||||
content:function(){
|
||||
trigger.player.discard(trigger.player.get('he').randomGet());
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip2:{
|
||||
trigger:{player:'damageEnd'},
|
||||
forced:true,
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha'&&event.source&&event.source.num('he');
|
||||
},
|
||||
content:function(){
|
||||
trigger.source.discard(trigger.source.get('he').randomGet());
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip3:{
|
||||
trigger:{player:'loseAfter'},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return _status.currentPhase!=player&&!player.hasSkill('hslingjian_xuanfengzhiren_equip3_dist');
|
||||
},
|
||||
content:function(){
|
||||
player.addTempSkill('hslingjian_xuanfengzhiren_equip3_dist','phaseAfter');
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip3_dist:{
|
||||
mod:{
|
||||
globalTo:function(from,to,distance){
|
||||
return distance+1;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip4:{
|
||||
trigger:{player:'loseAfter'},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return _status.currentPhase==player&&!player.hasSkill('hslingjian_xuanfengzhiren_equip4_dist');
|
||||
},
|
||||
content:function(){
|
||||
player.addTempSkill('hslingjian_xuanfengzhiren_equip4_dist','phaseAfter');
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip4_dist:{
|
||||
mod:{
|
||||
globalFrom:function(from,to,distance){
|
||||
return distance-1;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_xuanfengzhiren_equip5:{
|
||||
enable:'phaseUse',
|
||||
usable:1,
|
||||
filterCard:true,
|
||||
position:'he',
|
||||
filter:function(event,player){
|
||||
return player.num('he')>0;
|
||||
},
|
||||
filterTarget:function(card,player,target){
|
||||
return target.num('he')>0;
|
||||
},
|
||||
check:function(card){
|
||||
return 5-ai.get.value(card);
|
||||
},
|
||||
content:function(){
|
||||
target.discard(target.get('he').randomGet());
|
||||
},
|
||||
ai:{
|
||||
order:5,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
var dh=player.num('he')-target.num('he');
|
||||
if(dh>0){
|
||||
return -Math.sqrt(dh);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia_equip1:{
|
||||
trigger:{source:'damageEnd'},
|
||||
check:function(event,player){
|
||||
return !player.get('e','2');
|
||||
},
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha';
|
||||
},
|
||||
content:function(){
|
||||
var card=game.createCard(get.inpile('equip2').randomGet());
|
||||
player.equip(card);
|
||||
player.$draw(card);
|
||||
game.delay();
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia_equip2:{
|
||||
trigger:{player:'damageEnd'},
|
||||
check:function(event,player){
|
||||
return ai.get.attitude(player,event.source)<0;
|
||||
},
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha'&&event.source&&event.source.get('e','2');
|
||||
},
|
||||
content:function(){
|
||||
player.line(trigger.source,'green');
|
||||
trigger.source.discard(trigger.source.get('e','2'));
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia_equip3:{
|
||||
mod:{
|
||||
globalTo:function(from,to,distance){
|
||||
if(to.get('e','2')) return distance+1;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia_equip4:{
|
||||
mod:{
|
||||
globalFrom:function(from,to,distance){
|
||||
if(from.get('e','2')) return distance-1;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_zhongxinghujia_equip5:{
|
||||
enable:'phaseUse',
|
||||
usable:1,
|
||||
filterCard:true,
|
||||
position:'he',
|
||||
filterTarget:true,
|
||||
selectCard:2,
|
||||
filter:function(event,player){
|
||||
return player.num('he')>=2;
|
||||
},
|
||||
check:function(card){
|
||||
return 5-ai.get.value(card);
|
||||
},
|
||||
content:function(){
|
||||
var card=game.createCard(get.inpile('equip2').randomGet());
|
||||
target.equip(card);
|
||||
target.$draw(card);
|
||||
game.delay();
|
||||
},
|
||||
ai:{
|
||||
order:1,
|
||||
result:{
|
||||
target:function(player,target){
|
||||
if(target.get('e','2')) return 0;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong_equip1:{
|
||||
trigger:{source:'damageEnd'},
|
||||
check:function(event,player){
|
||||
if(event.player.isTurnedOver()){
|
||||
return ai.get.attitude(player,event.player)>0;
|
||||
}
|
||||
return ai.get.attitude(player,event.player)<=0;
|
||||
},
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha'&&event.player&&event.player.isAlive();
|
||||
},
|
||||
logTarget:function(event){
|
||||
return event.player;
|
||||
},
|
||||
content:function(){
|
||||
trigger.player.draw(2);
|
||||
trigger.player.turnOver();
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong_equip2:{
|
||||
trigger:{player:'damageEnd'},
|
||||
check:function(event,player){
|
||||
if(event.player.isTurnedOver()){
|
||||
return ai.get.attitude(player,event.source)>0;
|
||||
}
|
||||
return ai.get.attitude(player,event.source)<=0;
|
||||
},
|
||||
filter:function(event){
|
||||
return event.card&&event.card.name=='sha'&&event.source&&event.source.isAlive();
|
||||
},
|
||||
logTarget:function(event){
|
||||
return event.source;
|
||||
},
|
||||
content:function(){
|
||||
player.line(trigger.source,'green');
|
||||
trigger.source.draw(2);
|
||||
trigger.source.turnOver();
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong_equip3:{
|
||||
mod:{
|
||||
globalTo:function(from,to,distance){
|
||||
if(to.isTurnedOver()) return distance+2;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong_equip4:{
|
||||
mod:{
|
||||
globalFrom:function(from,to,distance){
|
||||
if(from.isTurnedOver()) return distance-2;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_jinjilengdong_equip5:{
|
||||
trigger:{player:'phaseAfter'},
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
return !player.isTurnedOver();
|
||||
},
|
||||
content:function(){
|
||||
"step 0"
|
||||
player.chooseTarget('是否发动【冰冻】?',function(card,player,target){
|
||||
return player!=target&&!target.isTurnedOver();
|
||||
}).ai=function(target){
|
||||
return Math.max(0,-ai.get.attitude(player,target)-2);
|
||||
};
|
||||
"step 1"
|
||||
if(result.bool){
|
||||
player.logSkill('hslingjian_jinjilengdong_equip5',result.targets);
|
||||
player.turnOver();
|
||||
result.targets[0].turnOver();
|
||||
game.asyncDraw([player,result.targets[0]],2);
|
||||
}
|
||||
},
|
||||
},
|
||||
hslingjian_yinmilichang_equip1:{},
|
||||
hslingjian_yinmilichang_equip2:{},
|
||||
hslingjian_yinmilichang_equip3:{},
|
||||
hslingjian_yinmilichang_equip4:{},
|
||||
hslingjian_yinmilichang_equip5:{},
|
||||
hslingjian_xingtigaizao_equip1:{},
|
||||
hslingjian_xingtigaizao_equip2:{},
|
||||
hslingjian_xingtigaizao_equip3:{},
|
||||
hslingjian_xingtigaizao_equip4:{},
|
||||
hslingjian_xingtigaizao_equip5:{},
|
||||
hslingjian_shengxiuhaojiao_equip1:{},
|
||||
hslingjian_shengxiuhaojiao_equip2:{},
|
||||
hslingjian_shengxiuhaojiao_equip3:{},
|
||||
hslingjian_shengxiuhaojiao_equip4:{},
|
||||
hslingjian_shengxiuhaojiao_equip5:{},
|
||||
hslingjian_shijianhuisu_equip1:{},
|
||||
hslingjian_shijianhuisu_equip2:{},
|
||||
hslingjian_shijianhuisu_equip3:{},
|
||||
hslingjian_shijianhuisu_equip4:{},
|
||||
hslingjian_shijianhuisu_equip5:{},
|
||||
mujiaren_skill:{
|
||||
enable:'phaseUse',
|
||||
filter:function(event,player){
|
||||
return player.num('h',{type:'hslingjian'})>=2;
|
||||
},
|
||||
filterCard:{type:'hslingjian'},
|
||||
selectCard:2,
|
||||
content:function(){
|
||||
player.gain(game.createCard('jiguanshu'));
|
||||
},
|
||||
ai:{
|
||||
order:7,
|
||||
result:{
|
||||
player:function(player){
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(player.canUse('jiguanshu',game.players[i])&&
|
||||
ai.get.effect(game.players[i],{name:'jiguanshu'},player,player>0)){
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
_lingjianduanzao:{
|
||||
enable:'phaseUse',
|
||||
position:'he',
|
||||
prompt:function(event){
|
||||
var lingjians=[],types=[];
|
||||
var hs=event.player.get('h');
|
||||
for(var i=0;i<hs.length;i++){
|
||||
switch(get.type(hs[i])){
|
||||
case 'equip':types.add(get.subtype(hs[i]));break;
|
||||
case 'hslingjian':lingjians.add(hs[i].name);break;
|
||||
}
|
||||
}
|
||||
var str='';
|
||||
for(var i=0;i<lingjians.length;i++){
|
||||
for(var j=0;j<types.length;j++){
|
||||
if(j==0){
|
||||
str+='<p class="shadowed" style="text-align:left;line-height:18px;padding:5px;border-radius:4px;margin-top:0px;margin-bottom:12px;">';
|
||||
}
|
||||
else{
|
||||
str+='<p class="shadowed" style="text-align:left;line-height:18px;padding:5px;border-radius:4px;margin-top:12px;margin-bottom:12px;">';
|
||||
}
|
||||
str+=''+lib.translate[lingjians[i]]+'+'+lib.translate[types[j]]+
|
||||
':'+lib.translate[lingjians[i]+'_'+types[j]+'_info']+'</p>';
|
||||
}
|
||||
}
|
||||
return str;
|
||||
},
|
||||
check:function(card){
|
||||
return 1+ai.get.value(card);
|
||||
},
|
||||
filterCard:function(card){
|
||||
var type=get.type(card);
|
||||
if(!ui.selected.cards.length){
|
||||
return type=='equip'&&lib.inpile.contains(card.name);
|
||||
}
|
||||
return type=='hslingjian';
|
||||
},
|
||||
process:function(cards){
|
||||
if(cards.length==3){
|
||||
cards.sort(function(a,b){
|
||||
if(a.name<b.name) return 1;
|
||||
return -1;
|
||||
});
|
||||
}
|
||||
var equip;
|
||||
for(var i=0;i<cards.length;i++){
|
||||
if(get.type(cards[i])=='equip'){
|
||||
equip=cards[i];
|
||||
cards.splice(i--,1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
var name=equip.name;
|
||||
var equipname=equip.name;
|
||||
for(var i=0;i<cards.length;i++){
|
||||
name+=cards[i].name.slice(10);
|
||||
}
|
||||
if(lib.card[name]) return name;
|
||||
lib.card[name]={};
|
||||
for(var i in lib.card[equip.name]){
|
||||
if(i=='ai'){
|
||||
lib.card[name][i]={};
|
||||
for(var j in lib.card[equip.name][i]){
|
||||
if(j=='basic'){
|
||||
lib.card[name][i][j]={};
|
||||
for(var k in lib.card[equip.name][i][j]){
|
||||
lib.card[name][i][j][k]=lib.card[equip.name][i][j][k];
|
||||
}
|
||||
}
|
||||
else{
|
||||
lib.card[name][i][j]=lib.card[equip.name][i][j];
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
lib.card[name][i]=lib.card[equip.name][i];
|
||||
}
|
||||
}
|
||||
lib.card[name].cardimage=equip.name;
|
||||
if(cards.length==2){
|
||||
lib.card[name].legend=true;
|
||||
if(typeof lib.card[name].ai.equipValue=='number'){
|
||||
lib.card[name].ai.equipValue=Math.min(10,lib.card[name].ai.equipValue+3);
|
||||
}
|
||||
else if(typeof lib.card[name].ai.equipValue=='function'){
|
||||
lib.card[name].ai.equipValue=function(){
|
||||
return lib.card[equipname].ai.equipValue.apply(this,arguments)+2;
|
||||
}
|
||||
}
|
||||
else if(lib.card[name].ai.basic&&typeof lib.card[name].ai.basic.equipValue=='number'){
|
||||
lib.card[name].ai.basic.equipValue=Math.min(10,lib.card[name].ai.basic.equipValue+3);
|
||||
}
|
||||
else if(lib.card[name].ai.basic&&typeof lib.card[name].ai.basic.equipValue=='function'){
|
||||
lib.card[name].ai.basic.equipValue=function(){
|
||||
return lib.card[equipname].ai.basic.equipValue.apply(this,arguments)+2;
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
lib.card[name].epic=true;
|
||||
if(typeof lib.card[name].ai.equipValue=='number'){
|
||||
lib.card[name].ai.equipValue=Math.min(10,lib.card[name].ai.equipValue+1);
|
||||
}
|
||||
else if(typeof lib.card[name].ai.equipValue=='function'){
|
||||
lib.card[name].ai.equipValue=function(){
|
||||
return lib.card[equipname].ai.equipValue.apply(this,arguments)+1;
|
||||
}
|
||||
}
|
||||
else if(lib.card[name].ai.basic&&typeof lib.card[name].ai.basic.equipValue=='number'){
|
||||
lib.card[name].ai.basic.equipValue=Math.min(10,lib.card[name].ai.basic.equipValue+1);
|
||||
}
|
||||
else if(lib.card[name].ai.basic&&typeof lib.card[name].ai.basic.equipValue=='function'){
|
||||
lib.card[name].ai.basic.equipValue=function(){
|
||||
return lib.card[equipname].ai.basic.equipValue.apply(this,arguments)+1;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(Array.isArray(lib.card[name].skills)){
|
||||
lib.card[name].skills=lib.card[name].skills.slice(0);
|
||||
}
|
||||
else{
|
||||
lib.card[name].skills=[];
|
||||
}
|
||||
lib.card[name].filterTarget=true;
|
||||
lib.card[name].selectTarget=1;
|
||||
lib.card[name].range={global:1};
|
||||
var str;
|
||||
if(cards.length==2){
|
||||
str=lib.translate[cards[0].name+'_duanzao2']+lib.translate[cards[1].name+'_duanzao2'];
|
||||
}
|
||||
else{
|
||||
str=lib.translate[cards[0].name+'_duanzao'];
|
||||
}
|
||||
var str2=lib.translate[equip.name];
|
||||
if(str2.length>2){
|
||||
str2=str2.slice(0,2);
|
||||
}
|
||||
lib.translate[name]=str+str2;
|
||||
str2=lib.translate[equip.name+'_info']||'';
|
||||
if(str2[str2.length-1]=='.'||str2[str2.length-1]=='。'){
|
||||
str2=str2.slice(0,str2.length-1);
|
||||
}
|
||||
for(var i=0;i<cards.length;i++){
|
||||
var name2=cards[i].name+'_'+get.subtype(equip);
|
||||
lib.card[name].skills.add(name2);
|
||||
lib.translate[name2]=lib.translate[cards[i].name+'_duanzao'];
|
||||
str2+=';'+lib.translate[name2+'_info'];
|
||||
}
|
||||
lib.translate[name+'_info']=str2;
|
||||
return name;
|
||||
},
|
||||
selectCard:function(){
|
||||
if(_status.event.player.hasSkill('mujiaren_skill')) return [2,3];
|
||||
return 2;
|
||||
},
|
||||
filter:function(event,player){
|
||||
return player.num('h',{type:'equip'})&&player.num('h',{type:'hslingjian'});
|
||||
},
|
||||
content:function(){
|
||||
var name=lib.skill._lingjianduanzao.process(cards);
|
||||
game.me.gain(game.createCard(name),'gain2');
|
||||
},
|
||||
ai:{
|
||||
order:10,
|
||||
result:{
|
||||
player:1,
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_yinshen:{
|
||||
mark:true,
|
||||
nopop:true,
|
||||
intro:{
|
||||
content:'锁定技,你不能成为其他角色的卡牌的目标'
|
||||
},
|
||||
mod:{
|
||||
targetEnabled:function(card,player,target){
|
||||
if(player!=target) return false;
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_chaofeng:{
|
||||
global:'hslingjian_chaofeng_disable',
|
||||
nopop:true,
|
||||
unique:true,
|
||||
gainnable:true,
|
||||
mark:true,
|
||||
intro:{
|
||||
content:'锁定技,若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标',
|
||||
},
|
||||
subSkill:{
|
||||
disable:{
|
||||
mod:{
|
||||
targetEnabled:function(card,player,target){
|
||||
if(player.skills.contains('hslingjian_chaofeng')) return;
|
||||
if(card.name=='sha'){
|
||||
if(target.skills.contains('hslingjian_chaofeng')) return;
|
||||
for(var i=0;i<game.players.length;i++){
|
||||
if(game.players[i].skills.contains('hslingjian_chaofeng')){
|
||||
if(game.players[i].hp<game.players[i].num('h')&&
|
||||
get.distance(player,game.players[i],'attack')<=1){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
hslingjian_xingtigaizao:{
|
||||
nopop:true,
|
||||
mod:{
|
||||
maxHandcard:function(player,num){
|
||||
if(typeof player.storage.hslingjian_xingtigaizao=='number'){
|
||||
return num-player.storage.hslingjian_xingtigaizao;
|
||||
}
|
||||
},
|
||||
},
|
||||
mark:true,
|
||||
intro:{
|
||||
content:function(storage){
|
||||
return '手牌上限-'+storage;
|
||||
}
|
||||
},
|
||||
trigger:{player:'phaseEnd'},
|
||||
forced:true,
|
||||
popup:false,
|
||||
silent:true,
|
||||
content:function(){
|
||||
player.removeSkill('hslingjian_xingtigaizao');
|
||||
player.storage.hslingjian_xingtigaizao=0;
|
||||
}
|
||||
},
|
||||
suolianjia:{
|
||||
trigger:{player:'damageBefore'},
|
||||
filter:function(event){
|
||||
|
@ -1584,88 +777,7 @@ card.yunchou={
|
|||
check:function(){return 1},
|
||||
},
|
||||
},
|
||||
cardType:{
|
||||
hslingjian:0.5,
|
||||
},
|
||||
translate:{
|
||||
hslingjian_xuanfengzhiren_duanzao:'风刃',
|
||||
hslingjian_xuanfengzhiren_duanzao2:'风',
|
||||
hslingjian_xuanfengzhiren_equip1_info:'每当你用杀造成一次伤害,受伤害角色随机弃置一张牌',
|
||||
hslingjian_xuanfengzhiren_equip2_info:'每当你受到杀造成的伤害,伤害来源随机弃置一张牌',
|
||||
hslingjian_xuanfengzhiren_equip3_info:'当你于回合外失去牌后,你本回合的防御距离+1',
|
||||
hslingjian_xuanfengzhiren_equip4_info:'当你于回合内失去牌后,你本回合的进攻距离+1',
|
||||
hslingjian_xuanfengzhiren_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后随机弃置一名其他角色的一张牌',
|
||||
hslingjian_zhongxinghujia_duanzao:'重甲',
|
||||
hslingjian_zhongxinghujia_duanzao2:'护',
|
||||
hslingjian_zhongxinghujia_equip1_info:'每当你用杀造成一次伤害,你可以随机装备一件防具牌',
|
||||
hslingjian_zhongxinghujia_equip2_info:'每当你受到杀造成的伤害,你可以弃置伤害来源的防具牌',
|
||||
hslingjian_zhongxinghujia_equip3_info:'当你的装备区内有防具牌时,你的防御距离+1',
|
||||
hslingjian_zhongxinghujia_equip4_info:'当你的装备区内有防具牌时,你的进攻距离+1',
|
||||
hslingjian_zhongxinghujia_equip5_info:'出牌阶段限一次,你可以弃置两张牌,然后令一名角色随机装备一件防具',
|
||||
hslingjian_jinjilengdong_duanzao:'冰冻',
|
||||
hslingjian_jinjilengdong_duanzao2:'冰',
|
||||
hslingjian_jinjilengdong_equip1_info:'每当你用杀造成一次伤害,你可以令目标摸两张牌并翻面',
|
||||
hslingjian_jinjilengdong_equip2_info:'每当你受到杀造成的伤害,你可以令伤害来源摸两张牌并翻面',
|
||||
hslingjian_jinjilengdong_equip3_info:'你的武将牌背面朝上时防御距离+2',
|
||||
hslingjian_jinjilengdong_equip4_info:'你的武将牌背面朝上时进攻距离+2',
|
||||
hslingjian_jinjilengdong_equip5_info:'回合结束后,若你的武将牌正面朝上,你可以与一名武将牌正面朝上的其他角色同时翻面,然后各摸两张牌',
|
||||
hslingjian_yinmilichang_duanzao:'隐力',
|
||||
hslingjian_yinmilichang_duanzao2:'隐',
|
||||
hslingjian_yinmilichang_equip1_info:'每当你用杀造成一次伤害,你获得潜行直到下一回合开始',
|
||||
hslingjian_yinmilichang_equip2_info:'每当你受到杀造成的伤害,你本回合内获得潜行',
|
||||
hslingjian_yinmilichang_equip3_info:'当你的体力值为1时,你的防御距离+1',
|
||||
hslingjian_yinmilichang_equip4_info:'当你的体力值为1时,你的进攻距离+1',
|
||||
hslingjian_yinmilichang_equip5_info:'当你没有手牌时,你不能成为杀或决斗的目标',
|
||||
hslingjian_xingtigaizao_duanzao:'移形',
|
||||
hslingjian_xingtigaizao_duanzao2:'形',
|
||||
hslingjian_xingtigaizao_equip1_info:'每当你用杀造成一次伤害,你摸一张牌',
|
||||
hslingjian_xingtigaizao_equip2_info:'每当你受到杀造成的伤害,你摸一张牌',
|
||||
hslingjian_xingtigaizao_equip3_info:'你的防御距离+1,进攻距离-1',
|
||||
hslingjian_xingtigaizao_equip4_info:'你的防御距离-1,进攻距离+1',
|
||||
hslingjian_xingtigaizao_equip5_info:'你于摸牌阶段额外摸一张牌;你的手牌上限-1',
|
||||
hslingjian_shengxiuhaojiao_duanzao:'号角',
|
||||
hslingjian_shengxiuhaojiao_duanzao2:'角',
|
||||
hslingjian_shengxiuhaojiao_equip1_info:'有嘲讽的角色不能闪避你的杀',
|
||||
hslingjian_shengxiuhaojiao_equip2_info:'有嘲讽的角色不能对你使用杀',
|
||||
hslingjian_shengxiuhaojiao_equip3_info:'若你的手牌数大于你的体力值,你的防御距离+1',
|
||||
hslingjian_shengxiuhaojiao_equip4_info:'若你的手牌数大于你的体力值,你的进攻距离+1',
|
||||
hslingjian_shengxiuhaojiao_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名角色获得或解除嘲讽',
|
||||
hslingjian_shijianhuisu_duanzao:'回溯',
|
||||
hslingjian_shijianhuisu_duanzao2:'溯',
|
||||
hslingjian_shijianhuisu_equip1_info:'每当你使用杀指定目标后,你可以选择目标装备区内的一张牌,令其将此装备收回手牌',
|
||||
hslingjian_shijianhuisu_equip2_info:'每当你成为杀的目标后,你可以选择使用者装备区内的一张牌,令其将此装备收回手牌,且本回合内不能再次装备',
|
||||
hslingjian_shijianhuisu_equip3_info:'当你的装备区内没有其他牌时,你的防御距离+1',
|
||||
hslingjian_shijianhuisu_equip4_info:'当你的装备区内没有其他牌时,你的进攻距离+1',
|
||||
hslingjian_shijianhuisu_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名其他角色将其装备区内的牌收回手牌',
|
||||
_lingjianduanzao:'煅造',
|
||||
_lingjianduanzao_info:'出牌阶段,你可以弃置一张装备牌和一张零件牌,并获得一件强化装备;强化装备可以装备给距离1以内的角色',
|
||||
jiguanshu:'机关鼠',
|
||||
jiguanshu_info:'出牌阶段对距离1以内的一名角色使用,用随机零件强化目标装备区内的装备',
|
||||
lingjiandai:'零件袋',
|
||||
lingjiandai_info:'出牌阶段对距离1以内的一名角色使用,目标获得3张随机零件',
|
||||
mujiaren:'木甲人',
|
||||
mujiaren_skill:'木甲人',
|
||||
mujiaren_skill_info:'你在煅造装备时可以额外加入一个零件;你可以弃置两个零件并获得一个机关鼠',
|
||||
mujiaren_info:'出牌阶段对距离1以内的一名角色使用,目标获得技能木甲人(你在煅造装备时可以额外加入一个零件;你可以弃置两个零件并获得一个机关鼠)',
|
||||
hslingjian:'零件',
|
||||
hslingjian_xuanfengzhiren:'旋风之刃',
|
||||
hslingjian_xuanfengzhiren_info:'随机弃置一名角色的一张牌',
|
||||
hslingjian_zhongxinghujia:'重型护甲',
|
||||
hslingjian_zhongxinghujia_info:'令一名角色装备一件随机防具,然后随机弃置其一张手牌',
|
||||
hslingjian_jinjilengdong:'紧急冷冻',
|
||||
hslingjian_jinjilengdong_info:'令一名武将牌正面朝上的其他角色摸两张牌并翻面',
|
||||
hslingjian_yinmilichang:'隐秘力场',
|
||||
hslingjian_yinmilichang_info:'令一名其他角色获得技能潜行,直到其下一回合开始',
|
||||
hslingjian_xingtigaizao:'型体改造',
|
||||
hslingjian_xingtigaizao_info:'摸一张牌,本回合手牌上限-1',
|
||||
hslingjian_shengxiuhaojiao:'生锈号角',
|
||||
hslingjian_shengxiuhaojiao_info:'令一名角色获得技能嘲讽,直到其下一回合开始',
|
||||
hslingjian_shijianhuisu:'时间回溯',
|
||||
hslingjian_shijianhuisu_info:'令一名其他角色将其装备牌收回手牌',
|
||||
hslingjian_chaofeng:'嘲讽',
|
||||
hslingjian_chaofeng_info:'锁定技,若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标',
|
||||
hslingjian_yinshen:'潜行',
|
||||
hslingjian_yinshen_info:'锁定技,你不能成为其他角色的卡牌的目标',
|
||||
suolianjia:'锁链甲',
|
||||
suolianjia_info:'锁定技,你防止即将受到的属性伤害,当装备时进入连环状态,当卸下时解除连环状态',
|
||||
suolianjia_bg:'链',
|
||||
|
|
|
@ -4591,7 +4591,7 @@ character.swd={
|
|||
target.discard(result.buttons[0].link);
|
||||
target.draw();
|
||||
if(player.num('he')) player.chooseToDiscard(true,'he');
|
||||
player.logSkill('shengong');
|
||||
player.logSkill('shengong',target);
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
|
@ -6283,24 +6283,14 @@ character.swd={
|
|||
},
|
||||
lanzhi:{
|
||||
trigger:{source:'damageBefore'},
|
||||
filter:function(event,player){
|
||||
return event.player!=player;
|
||||
},
|
||||
prompt:function(event){
|
||||
return '是否对'+get.translation(event.player)+'发动【兰芷】?';
|
||||
},
|
||||
check:function(event,player){
|
||||
if(event.source==player){
|
||||
if(player.hp==1&&event.player.hp>1) return true;
|
||||
var att=ai.get.attitude(player,event.player);
|
||||
if(player.hp==player.maxHp) return att>0;
|
||||
return att>=0;
|
||||
}
|
||||
else{
|
||||
if(player.hp==1||event.num>1) return true;
|
||||
if(player.hp==2) return ai.get.attitude(player,event.player)>=-2;
|
||||
return ai.get.attitude(player,event.player)>=0;
|
||||
}
|
||||
if(player.hp==1&&event.player.hp>1) return true;
|
||||
var eff=ai.get.damageEffect(event.player,player,player);
|
||||
if(player.hp==player.maxHp) return eff<0;
|
||||
return eff<=0;
|
||||
},
|
||||
content:function(){
|
||||
trigger.untrigger();
|
||||
|
@ -8065,7 +8055,7 @@ character.swd={
|
|||
guxing_info:'出牌阶段,你可以将最后至多X张手牌当杀使用,此杀无视距离且可以指定至多3个目标,每造成一次伤害,你摸一张牌,X为你已损失的体力值且至少为1。',
|
||||
tianlun_info:'任意一名角色的判定生效前,你可以弃置一张场上角色的判定牌代替之',
|
||||
hlongyin_info:'出牌阶段,你可以弃置任意张颜色相同且点数不同的牌,并获得逆时针座位距离与卡牌点数相同的角色区域内的一张牌。每阶段限一次',
|
||||
lanzhi_info:'你对一名其他角色造成伤害时,你可以防止此伤害,然后回复一点体力',
|
||||
lanzhi_info:'每当你即将造成伤害,你可以防止此伤害,然后回复一点体力',
|
||||
lanzhi_old_info:'每当你即将造成伤害,可以防止此伤害,然后摸两张牌。每回合限发动一次。',
|
||||
tianhuo_info:'出牌阶段,你可以令所有角色弃置其判定区域内的牌,并受到没有来源的等量火焰伤害,每阶段限一次',
|
||||
huanyin_info:'锁定技,每当你成为其他角色的卡牌的目标时,你进行一次判定,若为黑桃则取消之,若为红桃你摸一张牌',
|
||||
|
|
19
game/game.js
19
game/game.js
|
@ -9708,6 +9708,7 @@
|
|||
this.unmarkSkill(skill);
|
||||
this.skills.remove(skill);
|
||||
this.checkConflict();
|
||||
delete this.tempSkills[skill];
|
||||
if(lib.skill[skill]&&lib.skill[skill].onremove){
|
||||
lib.skill[skill].onremove(this);
|
||||
}
|
||||
|
@ -14592,6 +14593,23 @@
|
|||
ui.updatehl();
|
||||
}
|
||||
},
|
||||
newcard:function(content){
|
||||
if(content){
|
||||
lib.translate[content.name]=content.translate;
|
||||
lib.translate[content.name+'_info']=content.info;
|
||||
lib.card[content.name]={};
|
||||
lib.card[content.name].cardimage=content.card
|
||||
for(var i in lib.card[content.card]){
|
||||
lib.card[content.name][i]=lib.card[content.card][i];
|
||||
}
|
||||
if(content.legend){
|
||||
lib.card[content.name].legend=true;
|
||||
}
|
||||
else if(content.epic){
|
||||
lib.card[content.name].epic=true;
|
||||
}
|
||||
}
|
||||
},
|
||||
playAudio:function(str){
|
||||
game.playAudio(str,'video');
|
||||
},
|
||||
|
@ -20818,6 +20836,7 @@
|
|||
node.mode=mode;
|
||||
var list=[];
|
||||
for(var i=0;i<info.length;i++){
|
||||
if(lib.card[info[i]].derivation&&mode!='mode_derivation') continue;
|
||||
list.push(['',get.translation(get.type(info[i],'trick')),info[i]]);
|
||||
}
|
||||
var cfgnode=createConfig({
|
||||
|
|
|
@ -18,11 +18,10 @@ character.pack={
|
|||
};
|
||||
card.pack={
|
||||
standard:'标准',
|
||||
ex:'EX',
|
||||
extra:'军争',
|
||||
refresh:'界限突破',
|
||||
guozhan:'国战',
|
||||
mingzhong:'忠胆英杰',
|
||||
mingzhong:'SP',
|
||||
zhenfa:'阵法',
|
||||
yunchou:'运筹帷幄',
|
||||
swd:'轩辕剑',
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
window.noname_source_list=[
|
||||
'card/compensate.js',
|
||||
'card/ex.js',
|
||||
'card/extra.js',
|
||||
'card/guozhan.js',
|
||||
'card/hearth.js',
|
||||
|
|
|
@ -2,17 +2,21 @@ window.noname_update={
|
|||
version:'1.8.17',
|
||||
changeLog:[
|
||||
'修bug',
|
||||
'新卡'
|
||||
],
|
||||
files:{
|
||||
global:[
|
||||
'game/game.js',
|
||||
'game/asset.js',
|
||||
'game/package.js',
|
||||
'game/source.js',
|
||||
'character/hearth.js',
|
||||
'character/swd.js',
|
||||
'character/sp.js',
|
||||
'card/swd.js',
|
||||
'card/hearth.js',
|
||||
'card/yunchou.js',
|
||||
'card/standard.js',
|
||||
'layout/default/layout.css',
|
||||
'theme/woodden/style.css',
|
||||
],
|
||||
|
|
Loading…
Reference in New Issue