This commit is contained in:
parent
f96692db14
commit
0aee8cf4d4
|
@ -379,14 +379,16 @@ card.hearth={
|
||||||
tanshezhiren:{
|
tanshezhiren:{
|
||||||
fullskin:true,
|
fullskin:true,
|
||||||
type:'trick',
|
type:'trick',
|
||||||
enable:function(){
|
enable:function(card,player){
|
||||||
|
if(game.players.length<3) return false;
|
||||||
for(var i=0;i<game.players.length;i++){
|
for(var i=0;i<game.players.length;i++){
|
||||||
if(game.players[i].num('h')) return true;
|
if(game.players[i]!=player&&game.players[i].num('h')) return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
chongzhu:true,
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
return target.num('h')>0;
|
return target.num('h')>0&&target!=player;
|
||||||
},
|
},
|
||||||
selectTarget:-1,
|
selectTarget:-1,
|
||||||
multitarget:true,
|
multitarget:true,
|
||||||
|
@ -639,7 +641,7 @@ card.hearth={
|
||||||
xingjiegoutong:'星界沟通',
|
xingjiegoutong:'星界沟通',
|
||||||
xingjiegoutong_info:'增加一点体力上限并回复一点体力,弃置你的所有手牌',
|
xingjiegoutong_info:'增加一点体力上限并回复一点体力,弃置你的所有手牌',
|
||||||
tanshezhiren:'弹射之刃',
|
tanshezhiren:'弹射之刃',
|
||||||
tanshezhiren_info:'弃置一名随机角色的手牌,重复此过程直到有一名角色失去最后一张手牌(最多重复10次)',
|
tanshezhiren_info:'限场存活角色不小于3时使用,弃置一名随机角色(不含你)的手牌,重复此过程直到有一名角色失去最后一张手牌(最多重复10次)',
|
||||||
chuansongmen:'传送门',
|
chuansongmen:'传送门',
|
||||||
chuansongmen_info:'摸一张牌,若你能立即使用之,则将此牌回手(每回合最多使用3次)',
|
chuansongmen_info:'摸一张牌,若你能立即使用之,则将此牌回手(每回合最多使用3次)',
|
||||||
dunpaigedang:'盾牌格挡',
|
dunpaigedang:'盾牌格挡',
|
||||||
|
|
282
card/yunchou.js
282
card/yunchou.js
|
@ -20,6 +20,7 @@ card.yunchou={
|
||||||
order:10,
|
order:10,
|
||||||
result:{
|
result:{
|
||||||
target:function(player,target){
|
target:function(player,target){
|
||||||
|
if(target==player&&target.num('h',{type:'equip'})) return 2.5;
|
||||||
if(target.hasSkill('mujiaren_skill')) return 2;
|
if(target.hasSkill('mujiaren_skill')) return 2;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -42,15 +43,27 @@ card.yunchou={
|
||||||
var es=target.get('e');
|
var es=target.get('e');
|
||||||
var list=get.typeCard('hslingjian');
|
var list=get.typeCard('hslingjian');
|
||||||
var cards=[];
|
var cards=[];
|
||||||
|
var time=0;
|
||||||
for(var i=0;i<es.length;i++){
|
for(var i=0;i<es.length;i++){
|
||||||
if(lib.inpile.contains(es[i].name)){
|
if(lib.inpile.contains(es[i].name)){
|
||||||
var card=game.createCard(list.randomGet());
|
var card=game.createCard(list.randomGet());
|
||||||
cards.push(card);
|
cards.push(card);
|
||||||
var name=lib.skill._lingjianduanzao.process([card,es[i]]);
|
time+=200;
|
||||||
es[i].init([es[i].suit,es[i].number,name,es[i].nature]);
|
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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
player.$gain2(cards);
|
target.$gain2(cards);
|
||||||
|
game.delay(0,time)
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
order:7.5,
|
order:7.5,
|
||||||
|
@ -963,21 +976,236 @@ card.yunchou={
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
hslingjian_xuanfengzhiren_equip1:{},
|
hslingjian_xuanfengzhiren_equip1:{
|
||||||
hslingjian_xuanfengzhiren_equip2:{},
|
trigger:{source:'damageEnd'},
|
||||||
hslingjian_xuanfengzhiren_equip3:{},
|
forced:true,
|
||||||
hslingjian_xuanfengzhiren_equip4:{},
|
filter:function(event){
|
||||||
hslingjian_xuanfengzhiren_equip5:{},
|
return event.card&&event.card.name=='sha'&&event.player.num('he');
|
||||||
hslingjian_zhongxinghujia_equip1:{},
|
},
|
||||||
hslingjian_zhongxinghujia_equip2:{},
|
content:function(){
|
||||||
hslingjian_zhongxinghujia_equip3:{},
|
trigger.player.discard(trigger.player.get('he').randomGet());
|
||||||
hslingjian_zhongxinghujia_equip4:{},
|
}
|
||||||
hslingjian_zhongxinghujia_equip5:{},
|
},
|
||||||
hslingjian_jinjilengdong_equip1:{},
|
hslingjian_xuanfengzhiren_equip2:{
|
||||||
hslingjian_jinjilengdong_equip2:{},
|
trigger:{player:'damageEnd'},
|
||||||
hslingjian_jinjilengdong_equip3:{},
|
forced:true,
|
||||||
hslingjian_jinjilengdong_equip4:{},
|
filter:function(event){
|
||||||
hslingjian_jinjilengdong_equip5:{},
|
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_equip1:{},
|
||||||
hslingjian_yinmilichang_equip2:{},
|
hslingjian_yinmilichang_equip2:{},
|
||||||
hslingjian_yinmilichang_equip3:{},
|
hslingjian_yinmilichang_equip3:{},
|
||||||
|
@ -1025,6 +1253,7 @@ card.yunchou={
|
||||||
},
|
},
|
||||||
_lingjianduanzao:{
|
_lingjianduanzao:{
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
|
position:'he',
|
||||||
prompt:function(event){
|
prompt:function(event){
|
||||||
var lingjians=[],types=[];
|
var lingjians=[],types=[];
|
||||||
var hs=event.player.get('h');
|
var hs=event.player.get('h');
|
||||||
|
@ -1038,10 +1267,10 @@ card.yunchou={
|
||||||
for(var i=0;i<lingjians.length;i++){
|
for(var i=0;i<lingjians.length;i++){
|
||||||
for(var j=0;j<types.length;j++){
|
for(var j=0;j<types.length;j++){
|
||||||
if(j==0){
|
if(j==0){
|
||||||
str+='<p class="shadowed" style="text-align:left;padding:5px;border-radius:4px;margin-top:0px;margin-bottom:12px;">';
|
str+='<p class="shadowed" style="text-align:left;line-height:18px;padding:5px;border-radius:4px;margin-top:0px;margin-bottom:12px;">';
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
str+='<p class="shadowed" style="text-align:left;padding:5px;border-radius:4px;margin-top:12px;margin-bottom:12px;">';
|
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]]+
|
str+=''+lib.translate[lingjians[i]]+'+'+lib.translate[types[j]]+
|
||||||
':'+lib.translate[lingjians[i]+'_'+types[j]+'_info']+'</p>';
|
':'+lib.translate[lingjians[i]+'_'+types[j]+'_info']+'</p>';
|
||||||
|
@ -1148,7 +1377,6 @@ card.yunchou={
|
||||||
lib.card[name].filterTarget=true;
|
lib.card[name].filterTarget=true;
|
||||||
lib.card[name].selectTarget=1;
|
lib.card[name].selectTarget=1;
|
||||||
lib.card[name].range={global:1};
|
lib.card[name].range={global:1};
|
||||||
lib.card[name].vanish=true;
|
|
||||||
var str;
|
var str;
|
||||||
if(cards.length==2){
|
if(cards.length==2){
|
||||||
str=lib.translate[cards[0].name+'_duanzao2']+lib.translate[cards[1].name+'_duanzao2'];
|
str=lib.translate[cards[0].name+'_duanzao2']+lib.translate[cards[1].name+'_duanzao2'];
|
||||||
|
@ -1168,7 +1396,7 @@ card.yunchou={
|
||||||
for(var i=0;i<cards.length;i++){
|
for(var i=0;i<cards.length;i++){
|
||||||
var name2=cards[i].name+'_'+get.subtype(equip);
|
var name2=cards[i].name+'_'+get.subtype(equip);
|
||||||
lib.card[name].skills.add(name2);
|
lib.card[name].skills.add(name2);
|
||||||
lib.translate[name2]=lib.translate[cards[i].name+'_duanzao2'];
|
lib.translate[name2]=lib.translate[cards[i].name+'_duanzao'];
|
||||||
str2+=';'+lib.translate[name2+'_info'];
|
str2+=';'+lib.translate[name2+'_info'];
|
||||||
}
|
}
|
||||||
lib.translate[name+'_info']=str2;
|
lib.translate[name+'_info']=str2;
|
||||||
|
@ -1360,7 +1588,7 @@ card.yunchou={
|
||||||
hslingjian:0.5,
|
hslingjian:0.5,
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
hslingjian_xuanfengzhiren_duanzao:'旋风',
|
hslingjian_xuanfengzhiren_duanzao:'风刃',
|
||||||
hslingjian_xuanfengzhiren_duanzao2:'风',
|
hslingjian_xuanfengzhiren_duanzao2:'风',
|
||||||
hslingjian_xuanfengzhiren_equip1_info:'每当你用杀造成一次伤害,受伤害角色随机弃置一张牌',
|
hslingjian_xuanfengzhiren_equip1_info:'每当你用杀造成一次伤害,受伤害角色随机弃置一张牌',
|
||||||
hslingjian_xuanfengzhiren_equip2_info:'每当你受到杀造成的伤害,伤害来源随机弃置一张牌',
|
hslingjian_xuanfengzhiren_equip2_info:'每当你受到杀造成的伤害,伤害来源随机弃置一张牌',
|
||||||
|
@ -1376,12 +1604,12 @@ card.yunchou={
|
||||||
hslingjian_zhongxinghujia_equip5_info:'出牌阶段限一次,你可以弃置两张牌,然后令一名角色随机装备一件防具',
|
hslingjian_zhongxinghujia_equip5_info:'出牌阶段限一次,你可以弃置两张牌,然后令一名角色随机装备一件防具',
|
||||||
hslingjian_jinjilengdong_duanzao:'冰冻',
|
hslingjian_jinjilengdong_duanzao:'冰冻',
|
||||||
hslingjian_jinjilengdong_duanzao2:'冰',
|
hslingjian_jinjilengdong_duanzao2:'冰',
|
||||||
hslingjian_jinjilengdong_equip1_info:'每当你用杀造成一次伤害,若受伤害角色武将牌正面朝上,你可以令其摸两张牌并翻面',
|
hslingjian_jinjilengdong_equip1_info:'每当你用杀造成一次伤害,你可以令目标摸两张牌并翻面',
|
||||||
hslingjian_jinjilengdong_equip2_info:'每当你受到杀造成的伤害,若伤害来源武将牌正面朝上,你可以令其摸两张牌并翻面',
|
hslingjian_jinjilengdong_equip2_info:'每当你受到杀造成的伤害,你可以令伤害来源摸两张牌并翻面',
|
||||||
hslingjian_jinjilengdong_equip3_info:'你的武将牌背面朝上时防御距离+2',
|
hslingjian_jinjilengdong_equip3_info:'你的武将牌背面朝上时防御距离+2',
|
||||||
hslingjian_jinjilengdong_equip4_info:'你的武将牌背面朝上时进攻距离+2',
|
hslingjian_jinjilengdong_equip4_info:'你的武将牌背面朝上时进攻距离+2',
|
||||||
hslingjian_jinjilengdong_equip5_info:'回合结束后,若你的武将牌正面朝上,你可以与一名武将牌正面朝上的其他角色同时翻面,然后各摸两张牌',
|
hslingjian_jinjilengdong_equip5_info:'回合结束后,若你的武将牌正面朝上,你可以与一名武将牌正面朝上的其他角色同时翻面,然后各摸两张牌',
|
||||||
hslingjian_yinmilichang_duanzao:'隐秘',
|
hslingjian_yinmilichang_duanzao:'隐力',
|
||||||
hslingjian_yinmilichang_duanzao2:'隐',
|
hslingjian_yinmilichang_duanzao2:'隐',
|
||||||
hslingjian_yinmilichang_equip1_info:'每当你用杀造成一次伤害,你获得潜行直到下一回合开始',
|
hslingjian_yinmilichang_equip1_info:'每当你用杀造成一次伤害,你获得潜行直到下一回合开始',
|
||||||
hslingjian_yinmilichang_equip2_info:'每当你受到杀造成的伤害,你本回合内获得潜行',
|
hslingjian_yinmilichang_equip2_info:'每当你受到杀造成的伤害,你本回合内获得潜行',
|
||||||
|
@ -1410,7 +1638,7 @@ card.yunchou={
|
||||||
hslingjian_shijianhuisu_equip4_info:'当你的装备区内没有其他牌时,你的进攻距离+1',
|
hslingjian_shijianhuisu_equip4_info:'当你的装备区内没有其他牌时,你的进攻距离+1',
|
||||||
hslingjian_shijianhuisu_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名其他角色将其装备区内的牌收回手牌',
|
hslingjian_shijianhuisu_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名其他角色将其装备区内的牌收回手牌',
|
||||||
_lingjianduanzao:'煅造',
|
_lingjianduanzao:'煅造',
|
||||||
_lingjianduanzao_info:'出牌阶段,你可以选择手牌中的一张装备牌和一张零件牌,将它们合成为一件强化装备;强化装备可以装备给距离1以内的角色',
|
_lingjianduanzao_info:'出牌阶段,你可以弃置一张装备牌和一张零件牌,并获得一件强化装备;强化装备可以装备给距离1以内的角色',
|
||||||
jiguanshu:'机关鼠',
|
jiguanshu:'机关鼠',
|
||||||
jiguanshu_info:'出牌阶段对距离1以内的一名角色使用,用随机零件强化目标装备区内的装备',
|
jiguanshu_info:'出牌阶段对距离1以内的一名角色使用,用随机零件强化目标装备区内的装备',
|
||||||
lingjiandai:'零件袋',
|
lingjiandai:'零件袋',
|
||||||
|
|
|
@ -2400,8 +2400,14 @@ character.hearth={
|
||||||
return '是否对'+get.translation(event.player)+'发动【冰霜】?';
|
return '是否对'+get.translation(event.player)+'发动【冰霜】?';
|
||||||
},
|
},
|
||||||
check:function(event,player){
|
check:function(event,player){
|
||||||
|
if(event.player.isTurnedOver()){
|
||||||
|
return ai.get.attitude(player,event.player)>0;
|
||||||
|
}
|
||||||
return ai.get.attitude(player,event.player)<=0;
|
return ai.get.attitude(player,event.player)<=0;
|
||||||
},
|
},
|
||||||
|
logTarget:function(event){
|
||||||
|
return event.player;
|
||||||
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.player.draw(2);
|
trigger.player.draw(2);
|
||||||
trigger.player.turnOver();
|
trigger.player.turnOver();
|
||||||
|
|
|
@ -2517,7 +2517,7 @@ character.swd={
|
||||||
order:8,
|
order:8,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mufeng:{
|
mufeng_old:{
|
||||||
init:function(player){
|
init:function(player){
|
||||||
player.storage.mufeng=0;
|
player.storage.mufeng=0;
|
||||||
},
|
},
|
||||||
|
@ -2571,35 +2571,15 @@ character.swd={
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mufeng_old:{
|
mufeng:{
|
||||||
priority:9,
|
trigger:{global:'phaseEnd'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return event.player!=player&&event.targets&&event.targets.length>1;
|
return event.player!=player&&event.player.num('h')>player.num('h');
|
||||||
},
|
},
|
||||||
check:function(event,player){
|
frequent:true,
|
||||||
return get.tag(event.card,'multineg')||ai.get.effect(player,event.card,event.player,player)<=0;
|
|
||||||
},
|
|
||||||
trigger:{target:'useCardToBefore'},
|
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.untrigger();
|
player.draw();
|
||||||
trigger.finish();
|
|
||||||
player.draw();
|
|
||||||
},
|
},
|
||||||
ai:{
|
|
||||||
effect:{
|
|
||||||
target:function(card,player,target){
|
|
||||||
if(get.type(card)!='trick') return;
|
|
||||||
if(card.name=='yihuajiemu'||card.name=='tiesuo'){
|
|
||||||
if(target.hp==target.maxHp) return [0,0];
|
|
||||||
return [0,1];
|
|
||||||
}
|
|
||||||
if(get.tag(card,'multineg')){
|
|
||||||
if(target.hp==target.maxHp) return [0,0];
|
|
||||||
return [0,2];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
jiying:{
|
jiying:{
|
||||||
// trigger:{player:'respond'},
|
// trigger:{player:'respond'},
|
||||||
|
@ -5261,7 +5241,10 @@ character.swd={
|
||||||
player.updateMarks();
|
player.updateMarks();
|
||||||
game.log(player,'学习了','【'+get.translation(skill)+'】');
|
game.log(player,'学习了','【'+get.translation(skill)+'】');
|
||||||
},
|
},
|
||||||
group:'tianshu2'
|
group:'tianshu2',
|
||||||
|
ai:{
|
||||||
|
threaten:2
|
||||||
|
}
|
||||||
},
|
},
|
||||||
tianshu2:{
|
tianshu2:{
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
|
@ -6301,15 +6284,17 @@ character.swd={
|
||||||
lanzhi:{
|
lanzhi:{
|
||||||
trigger:{source:'damageBefore'},
|
trigger:{source:'damageBefore'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.skills.contains('lanzhi2')==false&&event.player!=player;
|
return event.player!=player;
|
||||||
},
|
},
|
||||||
prompt:function(event){
|
prompt:function(event){
|
||||||
return '是否对'+get.translation(event.player)+'发动【兰芷】?';
|
return '是否对'+get.translation(event.player)+'发动【兰芷】?';
|
||||||
},
|
},
|
||||||
check:function(event,player){
|
check:function(event,player){
|
||||||
if(event.source==player){
|
if(event.source==player){
|
||||||
if(event.num>1) return ai.get.attitude(player,event.player)>=0;
|
if(player.hp==1&&event.player.hp>1) return true;
|
||||||
return ai.get.attitude(player,event.player)>=-2;
|
var att=ai.get.attitude(player,event.player);
|
||||||
|
if(player.hp==player.maxHp) return att>0;
|
||||||
|
return att>=0;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(player.hp==1||event.num>1) return true;
|
if(player.hp==1||event.num>1) return true;
|
||||||
|
@ -6320,8 +6305,7 @@ character.swd={
|
||||||
content:function(){
|
content:function(){
|
||||||
trigger.untrigger();
|
trigger.untrigger();
|
||||||
trigger.finish();
|
trigger.finish();
|
||||||
trigger.source.draw(2);
|
player.recover();
|
||||||
player.addTempSkill('lanzhi2','phaseAfter');
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
lanzhi2:{},
|
lanzhi2:{},
|
||||||
|
@ -7904,7 +7888,8 @@ character.swd={
|
||||||
qimou:'奇谋',
|
qimou:'奇谋',
|
||||||
qimou_info:'每当你于回合外受到一次伤害,你可以摸一张牌,并立即使用之',
|
qimou_info:'每当你于回合外受到一次伤害,你可以摸一张牌,并立即使用之',
|
||||||
mufeng:'沐风',
|
mufeng:'沐风',
|
||||||
mufeng_info:'锁定技,每当你于回合外失去牌,你的防御距离+1;若防御距离的变化值超过了存活角色数的一半,则降至0',
|
mufeng_info:'在一名角色的回合结束阶段,若你的手牌数比其少,你可以摸一张牌',
|
||||||
|
mufeng_old_info:'锁定技,每当你于回合外失去牌,你的防御距离+1;若防御距离的变化值超过了存活角色数的一半,则降至0',
|
||||||
lexue:'乐学',
|
lexue:'乐学',
|
||||||
lexue_info:'回合内,你随机获得制衡、集智、缔盟、驱虎中的一个技能;回合外,你随机获得遗计、急救、鬼道、反馈中的一个技能',
|
lexue_info:'回合内,你随机获得制衡、集智、缔盟、驱虎中的一个技能;回合外,你随机获得遗计、急救、鬼道、反馈中的一个技能',
|
||||||
mingfu:'冥缚',
|
mingfu:'冥缚',
|
||||||
|
@ -8080,7 +8065,8 @@ character.swd={
|
||||||
guxing_info:'出牌阶段,你可以将最后至多X张手牌当杀使用,此杀无视距离且可以指定至多3个目标,每造成一次伤害,你摸一张牌,X为你已损失的体力值且至少为1。',
|
guxing_info:'出牌阶段,你可以将最后至多X张手牌当杀使用,此杀无视距离且可以指定至多3个目标,每造成一次伤害,你摸一张牌,X为你已损失的体力值且至少为1。',
|
||||||
tianlun_info:'任意一名角色的判定生效前,你可以弃置一张场上角色的判定牌代替之',
|
tianlun_info:'任意一名角色的判定生效前,你可以弃置一张场上角色的判定牌代替之',
|
||||||
hlongyin_info:'出牌阶段,你可以弃置任意张颜色相同且点数不同的牌,并获得逆时针座位距离与卡牌点数相同的角色区域内的一张牌。每阶段限一次',
|
hlongyin_info:'出牌阶段,你可以弃置任意张颜色相同且点数不同的牌,并获得逆时针座位距离与卡牌点数相同的角色区域内的一张牌。每阶段限一次',
|
||||||
lanzhi_info:'每当你即将造成伤害,可以防止此伤害,然后摸两张牌。每回合限发动一次。',
|
lanzhi_info:'你对一名其他角色造成伤害时,你可以防止此伤害,然后回复一点体力',
|
||||||
|
lanzhi_old_info:'每当你即将造成伤害,可以防止此伤害,然后摸两张牌。每回合限发动一次。',
|
||||||
tianhuo_info:'出牌阶段,你可以令所有角色弃置其判定区域内的牌,并受到没有来源的等量火焰伤害,每阶段限一次',
|
tianhuo_info:'出牌阶段,你可以令所有角色弃置其判定区域内的牌,并受到没有来源的等量火焰伤害,每阶段限一次',
|
||||||
huanyin_info:'锁定技,每当你成为其他角色的卡牌的目标时,你进行一次判定,若为黑桃则取消之,若为红桃你摸一张牌',
|
huanyin_info:'锁定技,每当你成为其他角色的卡牌的目标时,你进行一次判定,若为黑桃则取消之,若为红桃你摸一张牌',
|
||||||
luomu_info:'锁定技,每当你造成伤害时,受伤害角色随机弃置一张牌',
|
luomu_info:'锁定技,每当你造成伤害时,受伤害角色随机弃置一张牌',
|
||||||
|
@ -8101,7 +8087,7 @@ character.swd={
|
||||||
tanlin_info:'出牌阶段限一次,你可以与一名其他角色进行拼点,若你赢,你获得对方拼点牌、对该角色使用卡牌无视距离且可以额外使用一张杀直到回合结束,若你没赢,你受到该角色的一点伤害。',
|
tanlin_info:'出牌阶段限一次,你可以与一名其他角色进行拼点,若你赢,你获得对方拼点牌、对该角色使用卡牌无视距离且可以额外使用一张杀直到回合结束,若你没赢,你受到该角色的一点伤害。',
|
||||||
pozhen_info:'每当你受到一次伤害,若你的手牌数大于伤害来源,你可以弃置X张手牌对其造成一点伤害;若你的手牌数小于伤害来源,你可以弃置其X张手牌。X为你与伤害来源的手牌数之差。',
|
pozhen_info:'每当你受到一次伤害,若你的手牌数大于伤害来源,你可以弃置X张手牌对其造成一点伤害;若你的手牌数小于伤害来源,你可以弃置其X张手牌。X为你与伤害来源的手牌数之差。',
|
||||||
yunchou_info:'出牌阶段限一次,你可以弃置任意张手牌,并弃置一张其他角色的手牌,你弃置的手牌中每有一张与此牌的颜色相同,你摸一张牌,否则对方摸一张牌',
|
yunchou_info:'出牌阶段限一次,你可以弃置任意张手牌,并弃置一张其他角色的手牌,你弃置的手牌中每有一张与此牌的颜色相同,你摸一张牌,否则对方摸一张牌',
|
||||||
tianshu_info:'每当你使用卡牌指定惟一目标时,你可以学习该目标的一项随机技能;出牌阶段,你可以装备一项已学习的技能',
|
tianshu_info:'每当你使用卡牌结算完毕后,若此牌指定了惟一目标,你可以学习该目标的一项随机技能;出牌阶段,你可以装备一项已学习的技能',
|
||||||
luomei_info:'每当你使用或打出一张梅花花色的牌,你可以摸一张牌',
|
luomei_info:'每当你使用或打出一张梅花花色的牌,你可以摸一张牌',
|
||||||
xingdian_info:'出牌阶段限一次,你可以弃置一张手牌,然后指定至多两名角色令其各弃置一张牌',
|
xingdian_info:'出牌阶段限一次,你可以弃置一张手牌,然后指定至多两名角色令其各弃置一张牌',
|
||||||
yulin_info:'每当你即将受到伤害,你可以弃置一张装备牌抵消此伤害',
|
yulin_info:'每当你即将受到伤害,你可以弃置一张装备牌抵消此伤害',
|
||||||
|
|
15
game/game.js
15
game/game.js
|
@ -16054,7 +16054,12 @@
|
||||||
game.log(player,'发动了','【'+get.skillTranslation(event.skill,player)+'】');
|
game.log(player,'发动了','【'+get.skillTranslation(event.skill,player)+'】');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
player.logSkill(event.skill);
|
if(info.logTarget){
|
||||||
|
player.logSkill(event.skill,info.logTarget(trigger,player));
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player.logSkill(event.skill);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -26768,6 +26773,9 @@
|
||||||
if(type.indexOf('equip')==0&&type.length==6){
|
if(type.indexOf('equip')==0&&type.length==6){
|
||||||
if(get.subtype(lib.inpile[i])==type) list.push(lib.inpile[i]);
|
if(get.subtype(lib.inpile[i])==type) list.push(lib.inpile[i]);
|
||||||
}
|
}
|
||||||
|
else if(type.indexOf('hslingjian')==0&&type.length==11){
|
||||||
|
if(get.subtype(lib.inpile[i])==type) list.push(lib.inpile[i]);
|
||||||
|
}
|
||||||
else{
|
else{
|
||||||
if(get.type(lib.inpile[i])==type) list.push(lib.inpile[i]);
|
if(get.type(lib.inpile[i])==type) list.push(lib.inpile[i]);
|
||||||
}
|
}
|
||||||
|
@ -26781,6 +26789,9 @@
|
||||||
if(type.indexOf('equip')==0&&type.length==6){
|
if(type.indexOf('equip')==0&&type.length==6){
|
||||||
if(get.subtype(i)==type) list.push(i);
|
if(get.subtype(i)==type) list.push(i);
|
||||||
}
|
}
|
||||||
|
else if(type.indexOf('hslingjian')==0&&type.length==11){
|
||||||
|
if(get.subtype(i)==type) list.push(i);
|
||||||
|
}
|
||||||
else{
|
else{
|
||||||
if(get.type(i)==type) list.push(i);
|
if(get.type(i)==type) list.push(i);
|
||||||
}
|
}
|
||||||
|
@ -27286,6 +27297,8 @@
|
||||||
return lib.card[obj.name].type;
|
return lib.card[obj.name].type;
|
||||||
},
|
},
|
||||||
subtype:function(obj){
|
subtype:function(obj){
|
||||||
|
if(typeof obj=='string') obj={name:obj};
|
||||||
|
if(typeof obj!='object') return;
|
||||||
if(!lib.card[obj.name]) return;
|
if(!lib.card[obj.name]) return;
|
||||||
return lib.card[obj.name].subtype;
|
return lib.card[obj.name].subtype;
|
||||||
},
|
},
|
||||||
|
|
|
@ -11,6 +11,7 @@ window.noname_update={
|
||||||
'character/swd.js',
|
'character/swd.js',
|
||||||
'character/sp.js',
|
'character/sp.js',
|
||||||
'card/swd.js',
|
'card/swd.js',
|
||||||
|
'card/hearth.js',
|
||||||
'card/yunchou.js',
|
'card/yunchou.js',
|
||||||
'layout/default/layout.css',
|
'layout/default/layout.css',
|
||||||
'theme/woodden/style.css',
|
'theme/woodden/style.css',
|
||||||
|
|
|
@ -608,7 +608,7 @@ div:not(.handcards)>.card>.info>span,
|
||||||
display: block !important;
|
display: block !important;
|
||||||
}
|
}
|
||||||
/*--------窗口--------*/
|
/*--------窗口--------*/
|
||||||
.dialog{text-align: center;z-index:4;transition-property:opacity,background,box-shadow;line-height: 18px;}
|
.dialog{text-align: center;z-index:4;transition-property:opacity,background,box-shadow;}
|
||||||
.dialog{width: calc(90% - 420px);height: calc(100% / 3 - 160px / 3 + 120px);}
|
.dialog{width: calc(90% - 420px);height: calc(100% / 3 - 160px / 3 + 120px);}
|
||||||
.dialog.fullheight{height:calc(100% - 80px) !important;top:40px !important}
|
.dialog.fullheight{height:calc(100% - 80px) !important;top:40px !important}
|
||||||
.dialog.fullwidth{left:calc(5% + 60px) !important;width:calc(90% - 120px) !important}
|
.dialog.fullwidth{left:calc(5% + 60px) !important;width:calc(90% - 120px) !important}
|
||||||
|
|
Loading…
Reference in New Issue