This commit is contained in:
libccy 2016-07-19 15:32:04 +08:00
parent 4bac8705dc
commit 64995f8d8e
23 changed files with 352 additions and 98 deletions

View File

@ -755,9 +755,9 @@ card.guozhan={
forced:true, forced:true,
popup:false, popup:false,
content:function(){ content:function(){
var cards=player.get('e','huxinjing'); var card=player.get('e','2');
if(cards.length){ if(card){
player.discard(cards); player.discard(card);
} }
} }
}, },

View File

@ -404,19 +404,18 @@ card.swd={
} }
} }
}, },
yuhuanghua:{ xianluhui:{
fullskin:true,
type:'basic', type:'basic',
enable:true, enable:true,
selectTarget:-1, selectTarget:-1,
// filterTarget:function(card,player,target){
// return target.hp<target.maxHp;
// },
filterTarget:true, filterTarget:true,
targetDelay:false,
content:function(){ content:function(){
"step 0"
target.recover(); target.recover();
"step 1" },
target.draw(); contentAfter:function(){
game.asyncDraw(targets);
}, },
ai:{ ai:{
basic:{ basic:{
@ -498,13 +497,15 @@ card.swd={
type:'basic', type:'basic',
enable:function(){return game.dead.length>0}, enable:function(){return game.dead.length>0},
notarget:true, notarget:true,
mode:['identity','guozhan'],
fullskin:true,
content:function(){ content:function(){
"step 0" "step 0"
var list=[]; var list=[];
for(var i=0;i<game.dead.length;i++){ for(var i=0;i<game.dead.length;i++){
list.push(game.dead[i].name); list.push(game.dead[i].name);
} }
player.chooseButton(ui.create.dialog([list,'character']),function(button){ player.chooseButton(ui.create.dialog('选择要复活的角色',[list,'character']),function(button){
for(var i=0;i<game.dead.length&&game.dead[i].name!=button.link;i++); for(var i=0;i<game.dead.length&&game.dead[i].name!=button.link;i++);
return ai.get.attitude(_status.event.player,game.dead[i]); return ai.get.attitude(_status.event.player,game.dead[i]);
},true); },true);
@ -513,17 +514,21 @@ card.swd={
for(var i=0;i<game.dead.length&&game.dead[i].name!=result.buttons[0].link;i++); for(var i=0;i<game.dead.length&&game.dead[i].name!=result.buttons[0].link;i++);
var dead=game.dead[i]; var dead=game.dead[i];
dead.revive(1); dead.revive(1);
player.logSkill('huanpodan',dead); game.addVideo('revive',dead);
player.loseHp(); event.dead=dead;
} }
else{
event.finish();
}
"step 2"
if(event.dead) event.dead.draw();
}, },
ai:{ ai:{
basic:{ basic:{
useful:[4,2], useful:[4,2],
value:[9,2], value:[7,2],
}, },
order:function(card,player){ order:function(card,player){
if(player.hp<=2) return -1;
for(var i=0;i<game.dead.length;i++){ for(var i=0;i<game.dead.length;i++){
if(ai.get.attitude(player,game.dead[i])>3) return 7; if(ai.get.attitude(player,game.dead[i])>3) return 7;
} }
@ -531,7 +536,6 @@ card.swd={
}, },
result:{ result:{
player:function(player){ player:function(player){
if(player.hp<=2) return -1;
for(var i=0;i<game.dead.length;i++){ for(var i=0;i<game.dead.length;i++){
if(ai.get.attitude(player,game.dead[i])>3) return 2; if(ai.get.attitude(player,game.dead[i])>3) return 2;
} }
@ -864,6 +868,7 @@ card.swd={
guangshatianyi:{ guangshatianyi:{
fullskin:true, fullskin:true,
type:'equip', type:'equip',
chongzhu:true,
enable:function(card,player){ enable:function(card,player){
return player.sex=='female'; return player.sex=='female';
}, },
@ -878,8 +883,9 @@ card.swd={
} }
} }
}, },
guilingzhitao:{ guilingyupei:{
type:'equip', type:'equip',
fullskin:true,
subtype:'equip5', subtype:'equip5',
skills:['nigong'], skills:['nigong'],
ai:{ ai:{
@ -892,9 +898,11 @@ card.swd={
}, },
onLose:function(){ onLose:function(){
player.storage.nigong=0; player.storage.nigong=0;
player.unmarkSkill('nigong');
}, },
onEquip:function(){ onEquip:function(){
player.storage.nigong=0; player.storage.nigong=0;
player.markSkill('nigong');
} }
}, },
qipoguyu:{ qipoguyu:{
@ -919,6 +927,17 @@ card.swd={
} }
}, },
}, },
sifeizhenmian:{
fullskin:true,
type:'equip',
subtype:'equip5',
skills:['yiluan'],
ai:{
basic:{
equipValue:5.5
}
},
},
ximohu:{ ximohu:{
type:'equip', type:'equip',
subtype:'equip5', subtype:'equip5',
@ -930,6 +949,7 @@ card.swd={
}, },
}, },
guiyanfadao:{ guiyanfadao:{
fullskin:true,
type:'equip', type:'equip',
subtype:'equip1', subtype:'equip1',
distance:{attackFrom:-1}, distance:{attackFrom:-1},
@ -942,6 +962,30 @@ card.swd={
}, },
}, },
skill:{ skill:{
yiluan:{
enable:'phaseUse',
usable:1,
filterTarget:true,
content:function(){
'step 0'
target.judge(function(card){
return get.color(card)=='red'?1:-1;
});
'step 1'
if(result.color=='red'){
target.draw();
}
else{
target.goMad({player:'phaseAfter'});
}
},
ai:{
order:1,
result:{
target:-1
}
}
},
hslingjian_xuanfengzhiren_equip1:{ hslingjian_xuanfengzhiren_equip1:{
trigger:{source:'damageEnd'}, trigger:{source:'damageEnd'},
forced:true, forced:true,
@ -1351,26 +1395,24 @@ card.swd={
} }
}, },
hslingjian_shijianhuisu_equip1:{ hslingjian_shijianhuisu_equip1:{
onLose:function(){ trigger:{player:'equipEnd'},
"step 0" forced:true,
game.delay(0.5); filter:function(event,player){
player.chooseTarget([1,1],'是否发动【回溯】?',function(card,player,target){ return get.subtype(event.card)=='equip2';
if(player==target) return false; },
return target.num('he')>0; content:function(){
}).ai=function(target){ player.draw();
return -ai.get.attitude(player,target); },
};
"step 1"
if(result.bool){
player.line(result.targets,'green');
player.discardPlayerCard(result.targets[0],'he',true);
}
}
}, },
hslingjian_shijianhuisu_equip2:{ hslingjian_shijianhuisu_equip2:{
onLose:function(){ trigger:{player:'equipEnd'},
forced:true,
filter:function(event,player){
return get.subtype(event.card)=='equip1';
},
content:function(){
player.draw(); player.draw();
} },
}, },
hslingjian_shijianhuisu_equip3:{ hslingjian_shijianhuisu_equip3:{
mod:{ mod:{
@ -1573,12 +1615,6 @@ card.swd={
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);
if(lib.skill[name2].onEquip){
lib.card[name].onEquip=lib.skill[name2].onEquip;
}
if(lib.skill[name2].onLose){
lib.card[name].onLose=lib.skill[name2].onLose;
}
lib.translate[name2]=lib.translate[cards[i].name+'_duanzao']; lib.translate[name2]=lib.translate[cards[i].name+'_duanzao'];
str2+=''+lib.translate[name2+'_info']; str2+=''+lib.translate[name2+'_info'];
} }
@ -2012,7 +2048,7 @@ card.swd={
trigger:{player:'damageBegin'}, trigger:{player:'damageBegin'},
forced:true, forced:true,
filter:function(event,player){ filter:function(event,player){
if(event.source&&event.source.num('s','unequip')) return; if(event.source&&event.source.num('s','unequip')) return false;
if(Math.random()>1/3) return false; if(Math.random()>1/3) return false;
if(event.parent.player.num('s','unequip')) return false; if(event.parent.player.num('s','unequip')) return false;
return true; return true;
@ -2030,9 +2066,9 @@ card.swd={
if(player.storage.nigong>4){ if(player.storage.nigong>4){
player.storage.nigong=4; player.storage.nigong=4;
} }
player.updateMarks();
}, },
ai:{ ai:{
threaten:0.6,
effect:function(card,player,target){ effect:function(card,player,target){
if(get.tag(card,'damage')) return [1,0.5]; if(get.tag(card,'damage')) return [1,0.5];
} }
@ -2052,9 +2088,13 @@ card.swd={
filterTarget:function(card,player,target){ filterTarget:function(card,player,target){
return player!=target; return player!=target;
}, },
prompt:function(event){
return '弃置所有逆攻标记,并对一名角色造成'+get.cnNumber(Math.floor(event.player.storage.nigong/2))+'点伤害';
},
content:function(){ content:function(){
target.damage(Math.floor(player.storage.nigong/2)); target.damage(Math.floor(player.storage.nigong/2));
player.storage.nigong=0; player.storage.nigong=0;
player.updateMarks();
}, },
ai:{ ai:{
order:10, order:10,
@ -2137,15 +2177,20 @@ card.swd={
} }
}, },
guiyanfadao:{ guiyanfadao:{
trigger:{player:'useCardToBefore'}, trigger:{player:'shaHit'},
priority:5, check:function(event,player){
filter:function(event,player){ var att=ai.get.attitude(player,event.target);
if(event.card.name=='sha'&&!event.card.nature) return true; if(player.skills.contains('jiu')) return att>0;
if(event.target.hasSkillTag('maixie')){
return att<=0;
}
if(event.target.hp==1) return att>0;
if(player.skills.contains('tianxianjiu')) return false;
return att<=0;
}, },
content:function(){ content:function(){
trigger.card.nature='poison'; trigger.unhurt=true;
player.addSkill('guiyanfadao2'); trigger.target.loseHp();
player.storage.zhuque_skill=trigger.card;
} }
}, },
guiyanfadao2:{ guiyanfadao2:{
@ -2216,8 +2261,8 @@ card.swd={
hslingjian_shengxiuhaojiao_equip5_info:'出牌阶段限一次,你可以弃置两张牌,然后令一名角色获得或解除嘲讽', hslingjian_shengxiuhaojiao_equip5_info:'出牌阶段限一次,你可以弃置两张牌,然后令一名角色获得或解除嘲讽',
hslingjian_shijianhuisu_duanzao:'回溯', hslingjian_shijianhuisu_duanzao:'回溯',
hslingjian_shijianhuisu_duanzao2:'溯', hslingjian_shijianhuisu_duanzao2:'溯',
hslingjian_shijianhuisu_equip1_info:'当你失去此牌时,你可以弃置一名角色的一张牌', hslingjian_shijianhuisu_equip1_info:'当你装备一张防具牌时,你摸一张牌',
hslingjian_shijianhuisu_equip2_info:'当你失去此牌时,你摸一张牌', hslingjian_shijianhuisu_equip2_info:'当你装备一张武器牌时,你摸一张牌',
hslingjian_shijianhuisu_equip3_info:'当你的装备区内没有其他牌时,你的防御距离+1', hslingjian_shijianhuisu_equip3_info:'当你的装备区内没有其他牌时,你的防御距离+1',
hslingjian_shijianhuisu_equip4_info:'当你的装备区内没有其他牌时,你的进攻距离+1', hslingjian_shijianhuisu_equip4_info:'当你的装备区内没有其他牌时,你的进攻距离+1',
hslingjian_shijianhuisu_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名其他角色将其装备区内的牌收回手牌', hslingjian_shijianhuisu_equip5_info:'出牌阶段限一次,你可以弃置一张牌,然后令一名其他角色将其装备区内的牌收回手牌',
@ -2256,7 +2301,7 @@ card.swd={
xingjunyan_info:'你的杀造成的伤害+1杀对你造成的伤害+1', xingjunyan_info:'你的杀造成的伤害+1杀对你造成的伤害+1',
guiyanfadao:'鬼眼法刀', guiyanfadao:'鬼眼法刀',
guiyanfadao_bg:'眼', guiyanfadao_bg:'眼',
// guiyanfadao_info:'每当你使用杀命中目标,你可以防止伤害,改为令目标失去一点体力', guiyanfadao_info:'每当你使用杀命中目标,你可以防止伤害,改为令目标失去一点体力',
tianxianjiu:'天仙酒', tianxianjiu:'天仙酒',
tianxianjiu_bg:'仙', tianxianjiu_bg:'仙',
tianxianjiu_info:'出牌阶段对自己使用,你使用的下一张杀造成伤害后可以摸两张牌', tianxianjiu_info:'出牌阶段对自己使用,你使用的下一张杀造成伤害后可以摸两张牌',
@ -2264,25 +2309,24 @@ card.swd={
xiangyuye_info:'出牌阶段,对一名攻击范围外的角色使用,令其弃置一张黑色手牌或流失一点体力', xiangyuye_info:'出牌阶段,对一名攻击范围外的角色使用,令其弃置一张黑色手牌或流失一点体力',
huanpodan:'还魄丹', huanpodan:'还魄丹',
huanpodan_bg:'魄', huanpodan_bg:'魄',
// huanpodan_info:'出牌阶段对一名已死亡角色使用,令其复活并回复一点体力,然后你流失一点体力', huanpodan_info:'出牌阶段对一名已死亡角色使用令其复活将体力值变为1并摸一张牌',
ximohu:'吸魔壶', ximohu:'吸魔壶',
ximohu_bg:'魔', ximohu_bg:'魔',
// ximohu_info:'锁定技,你将即将受到的雷属性伤害转化为你的体力值', // ximohu_info:'锁定技,你将即将受到的雷属性伤害转化为你的体力值',
sadengjinhuan:'萨登荆环', sadengjinhuan:'萨登荆环',
sadengjinhuan_info:'当你的杀被闪避后,可以进行一次判定,若结果为红色目标需再打出一张闪', sadengjinhuan_info:'当你的杀被闪避后,可以进行一次判定,若结果为红色目标需再打出一张闪',
// sadengjinhuan_info:'锁定技每当你使用一张杀被闪避后若此杀在弃牌堆你有50%的机率对目标再使用一次此杀',
sadengjinhuan_bg:'荆', sadengjinhuan_bg:'荆',
qipoguyu:'奇魄古玉', qipoguyu:'奇魄古玉',
xujin:'蓄劲', xujin:'蓄劲',
xujin2:'蓄劲', xujin2:'蓄劲',
// qipoguyu_info:'装备后获得蓄劲技能', // qipoguyu_info:'装备后获得蓄劲技能',
xujin_info:'回合开始前,若你的蓄劲标记数小于当前的体力值,你可以跳过此回合,并获得一枚蓄劲标记。锁定技,每当你即将造成伤害,你令此伤害+X然后弃置一枚蓄劲标记X为你拥有的蓄劲标记数', xujin_info:'回合开始前,若你的蓄劲标记数小于当前的体力值,你可以跳过此回合,并获得一枚蓄劲标记。锁定技,每当你即将造成伤害,你令此伤害+X然后弃置一枚蓄劲标记X为你拥有的蓄劲标记数',
guilingzhitao:'归灵指套', guilingyupei:'归灵玉佩',
nigong:'逆攻', nigong:'逆攻',
nigong2:'逆攻', nigong2:'逆攻',
nigong3:'逆攻', nigong3:'逆攻',
nigong4:'逆攻', nigong4:'逆攻',
// guilingzhitao_info:'装备后获得逆攻技能', guilingyupei_info:'每当你受到一点伤害你获得一个逆攻标记标记数不能超4。出牌阶段你可以弃置所有逆攻标记并令任意一名其他角色X/2点伤害X为逆攻标记的数量且向下取整',
nigong_info:'每当你受到一点伤害你获得一个逆攻标记标记数不能超4。出牌阶段你可以弃置所有逆攻标记并令任意一名其他角色X/2点伤害X为逆攻标记的数量且向下取整', nigong_info:'每当你受到一点伤害你获得一个逆攻标记标记数不能超4。出牌阶段你可以弃置所有逆攻标记并令任意一名其他角色X/2点伤害X为逆攻标记的数量且向下取整',
baihupifeng:'白狐披风', baihupifeng:'白狐披风',
baihupifeng_bg:'狐', baihupifeng_bg:'狐',
@ -2306,9 +2350,8 @@ card.swd={
pusafazhou:'菩萨发咒', pusafazhou:'菩萨发咒',
pusafazhou_bg:'发', pusafazhou_bg:'发',
// pusafazhou_info:'令你抵挡一次死亡将体力回复至1并摸一张牌', // pusafazhou_info:'令你抵挡一次死亡将体力回复至1并摸一张牌',
yuhuanghua:'雨皇花', xianluhui:'仙炉灰',
yuhuanghua_bg:'皇', xianluhui_info:'令所有角色回复一点体力并摸一张牌',
// yuhuanghua_info:'令所有角色回复一点体力并摸一张牌',
caoyao:'草药', caoyao:'草药',
caoyao_info:'出牌阶段对距离为1以内的角色使用回复一点体力。', caoyao_info:'出牌阶段对距离为1以内的角色使用回复一点体力。',
pantao:'蟠桃', pantao:'蟠桃',
@ -2337,7 +2380,11 @@ card.swd={
chiyuxi_info:'出牌阶段对所有其他角色使用。每名目标角色需打出一张【闪】否则受到1点火焰伤害。', chiyuxi_info:'出牌阶段对所有其他角色使用。每名目标角色需打出一张【闪】否则受到1点火焰伤害。',
guangshatianyi:'光纱天衣', guangshatianyi:'光纱天衣',
guangshatianyi_bg:'纱', guangshatianyi_bg:'纱',
// guangshatianyi_info:'仅女性可装备,锁定技,每当你即将受到伤害,有三分之一的概率令伤害减一', guangshatianyi_info:'仅女性可装备,锁定技,每当你即将受到伤害,有三分之一的概率令伤害减一',
sifeizhenmian:'四非真面',
sifeizhenmian_info:'出牌阶段限一次,你可以指定一名角色进行一次判定,若结果为红色,该角色摸一张牌,若结果为黑色,该角色进入混乱状态直到下一回合结束',
yiluan:'意乱',
yiluan_info:'出牌阶段限一次,你可以指定一名角色进行一次判定,若结果为红色,该角色摸一张牌,若结果为黑色,该角色进入混乱状态直到下一回合结束',
}, },
list:[ list:[
['spade',1,'baihupifeng'], ['spade',1,'baihupifeng'],
@ -2348,7 +2395,7 @@ card.swd={
// ['diamond',2,'xiayuncailing'], // ['diamond',2,'xiayuncailing'],
// ['spade',2,'pusafazhou'], // ['spade',2,'pusafazhou'],
// ['heart',2,'pantao'], // ['heart',2,'pantao'],
//['club',2,'huanpodan'], ['club',2,'huanpodan'],
['club',3,'caoyao'], ['club',3,'caoyao'],
['diamond',3,'chilongya','fire'], ['diamond',3,'chilongya','fire'],
@ -2357,12 +2404,12 @@ card.swd={
['club',4,'caoyao'], ['club',4,'caoyao'],
['spade',4,'zhufangshenshi'], ['spade',4,'zhufangshenshi'],
//['spade',4,'huanpodan'], ['spade',4,'huanpodan'],
// ['diamond',4,'xiangyuye','poison'], // ['diamond',4,'xiangyuye','poison'],
['club',5,'caoyao'], ['club',5,'caoyao'],
['spade',5,'xixueguizhihuan'], ['spade',5,'xixueguizhihuan'],
//['diamond',5,'huanpodan'], ['diamond',5,'huanpodan'],
['club',6,'shentoumianju'], ['club',6,'shentoumianju'],
['spade',6,'yufulu'], ['spade',6,'yufulu'],
@ -2371,16 +2418,16 @@ card.swd={
['diamond',7,'chiyuxi','fire'], ['diamond',7,'chiyuxi','fire'],
['club',7,'jingleishan','thunder'], ['club',7,'jingleishan','thunder'],
// ['spade',7,'guilingzhitao'], ['spade',7,'guilingyupei'],
// ['heart',7,'xiangyuye','poison'], // ['heart',7,'xiangyuye','poison'],
['spade',8,'zhufangshenshi'], ['spade',8,'zhufangshenshi'],
['club',8,'xiangyuye'], ['club',8,'xiangyuye','poison'],
//['heart',8,'huanpodan'], //['heart',8,'huanpodan'],
// ['spade',9,'ximohu','brown'], // ['spade',9,'ximohu','brown'],
['club',9,'guiyoujie'], ['club',9,'guiyoujie'],
['diamond',9,'xiangyuye'], ['diamond',9,'xiangyuye','poison'],
// ['diamond',9,'tianxianjiu'], // ['diamond',9,'tianxianjiu'],
['heart',9,'tianxianjiu'], ['heart',9,'tianxianjiu'],
@ -2393,14 +2440,14 @@ card.swd={
//['spade',10,'qipoguyu'], //['spade',10,'qipoguyu'],
//['diamond',10,'xiangyuye','poison'], //['diamond',10,'xiangyuye','poison'],
['spade',11,'xiangyuye'], ['spade',11,'xiangyuye','poison'],
// ['club',11,'xiangyuye','poison'], // ['club',11,'xiangyuye','poison'],
// ['diamond',12,'xiangyuye','poison'], // ['diamond',12,'xiangyuye','poison'],
//['spade',12,'guiyanfadao','poison'], ['spade',12,'guiyanfadao','poison'],
// ['heart',13,'yuhuanghua'], ['spade',13,'xianluhui'],
// ['diamond',13,'guangshatianyi'], ['diamond',3,'guangshatianyi'],
['club',13,'sadengjinhuan'], ['club',13,'sadengjinhuan'],
//['spade',6,'xiangyuye','poison'], //['spade',6,'xiangyuye','poison'],

View File

@ -821,9 +821,9 @@ card.yunchou={
['diamond',3,'liuxinghuoyu','fire'], ['diamond',3,'liuxinghuoyu','fire'],
['heart',6,'liuxinghuoyu','fire'], ['heart',6,'liuxinghuoyu','fire'],
['heart',9,'liuxinghuoyu','fire'], ['heart',9,'liuxinghuoyu','fire'],
['spade',3,'dujian'], ['spade',3,'dujian','poison'],
['club',11,'dujian'], ['club',11,'dujian','poison'],
['club',12,'dujian'], ['club',12,'dujian','poison'],
['heart',3,'yihuajiemu'], ['heart',3,'yihuajiemu'],
["diamond",3,'guohe'], ["diamond",3,'guohe'],

View File

@ -88,7 +88,7 @@ character.gujian={
} }
if(list.length){ if(list.length){
event.target=list.randomGet(); event.target=list.randomGet();
event.target.popup('zuizhan'); player.line(event.target,'green');
game.log(event.target,'被追加为额外目标'); game.log(event.target,'被追加为额外目标');
trigger.targets.push(event.target); trigger.targets.push(event.target);
player.draw(); player.draw();

View File

@ -15,48 +15,195 @@ character.ow={
ow_ana:['female','wei',3,['juji','zhiyuan','mianzhen']], ow_ana:['female','wei',3,['juji','zhiyuan','mianzhen']],
ow_heibaihe:['female','qun',3,['juji','duwen','dulei']], ow_heibaihe:['female','qun',3,['juji','duwen','dulei']],
ow_maikelei:['male','shu',4,['shanguang','tiandan','shenqiang']], ow_maikelei:['male','shu',4,['shanguang','tiandan','shenqiang']],
ow_kuangshu:['male','shu',3,['liudan','shoujia','shihuo']],
// ow_tuobiang:['male','shu',3,[]],
// ow_baolei:['female','shu',3,[]], // ow_baolei:['female','shu',3,[]],
// ow_banzang:['male','shu',4,[]], // ow_banzang:['male','shu',4,[]],
// ow_kuangshu:['male','shu',4,[]],
// ow_tuobiang:['male','shu',4,[]],
// ow_laiyinhate:['male','shu',4,[]], // ow_laiyinhate:['male','shu',4,[]],
// ow_luba:['male','shu',4,[]], // ow_luba:['male','shu',4,[]],
// ow_wensidun:['male','shu',4,[]], // ow_wensidun:['male','shu',4,[]],
// ow_zhaliya:['female','shu',4,[]], // ow_zhaliya:['female','shu',4,[]],
}, },
skill:{ skill:{
shenqiang:{ shihuo:{
trigger:{player:'shaHit'}, trigger:{global:'damageEnd'},
forced:true, forced:true,
filter:function(event){ filter:function(event){
return event.targets&&event.targets.length>1&&_status.currentPhase==player; return event.nature=='fire';
},
content:function(){
player.draw();
}
},
shoujia:{
enable:'phaseUse',
usable:1,
filter:function(event,player){
return player.num('h')>0;
},
filterCard:true,
check:function(card){
return 6-ai.get.value(card);
},
discard:false,
prepare:function(cards,player,targets){
player.$give(1,targets[0]);
},
filterTarget:function(card,player,target){
return target!=player&&!target.hasSkill('shoujia2');
},
content:function(){
target.storage.shoujia=cards[0];
target.storage.shoujia2=player;
target.addSkill('shoujia2');
target.syncStorage('shoujia');
},
ai:{
order:1,
expose:0.2,
threaten:1.4,
result:{
target:-1
}
}
},
shoujia2:{
mark:true,
trigger:{player:'useCardToBegin'},
forced:true,
filter:function(event,player){
return get.suit(event.card)==get.suit(player.storage.shoujia)&&event.target!=player;
},
content:function(){
'step 0'
player.showCards([player.storage.shoujia],get.translation(player)+'发动了【兽夹】');
'step 1'
ui.discardPile.appendChild(player.storage.shoujia);
delete player.storage.shoujia;
delete player.storage.shoujia2;
player.removeSkill('shoujia2');
game.addVideo('storage',player,['shoujia',null]);
game.addVideo('storage',player,['shoujia2',null]);
if(!player.isTurnedOver()){
player.turnOver();
}
},
intro:{
mark:function(dialog,content,player){
if(player.storage.shoujia2&&player.storage.shoujia2.isUnderControl(true)){
dialog.add([player.storage.shoujia]);
}
else{
return '已成为'+get.translation(player.storage.shoujia2)+'的兽夹目标';
}
},
content:function(content,player){
if(player.storage.shoujia2&&player.storage.shoujia2.isUnderControl(true)){
return get.translation(player.storage.shoujia);
}
return '已成为'+get.translation(player.storage.shoujia2)+'的兽夹目标';
}
},
group:'shoujia3'
},
shoujia3:{
trigger:{source:'damageEnd'},
forced:true,
filter:function(event,player){
return event.player==player.storage.shoujia2;
},
content:function(){
ui.discardPile.appendChild(player.storage.shoujia);
player.$throw(player.storage.shoujia);
delete player.storage.shoujia;
delete player.storage.shoujia2;
player.removeSkill('shoujia2');
game.addVideo('storage',player,['shoujia',null]);
game.addVideo('storage',player,['shoujia2',null]);
}
},
liudan:{
trigger:{player:'useCard'},
popup:false,
check:function(event,player){
var list=[];
for(var i=0;i<game.players.length;i++){
if(event.targets.contains(game.players[i])==false&&
game.players[i]!=player&&
lib.filter.targetEnabled(event.card,player,game.players[i])){
list.push(game.players[i]);
}
}
var num=0;
for(var i=0;i<list.length;i++){
num+=ai.get.effect(list[i],event.card,player,player);
}
return num>=0;
},
filter:function(event,player){
if(event.card.name!='sha') return false;
for(var i=0;i<game.players.length;i++){
if(event.targets.contains(game.players[i])==false&&
game.players[i]!=player&&
lib.filter.targetEnabled(event.card,player,game.players[i])){
return true;
}
}
return false;
},
content:function(){
var list=[];
for(var i=0;i<game.players.length;i++){
if(trigger.targets.contains(game.players[i])==false&&
game.players[i]!=player&&
lib.filter.targetEnabled(trigger.card,player,game.players[i])){
list.push(game.players[i]);
}
}
if(list.length){
var list2=[];
for(var i=0;i<list.length;i++){
if(Math.random()<0.5){
list2.push(list[i]);
trigger.targets.push(list[i]);
}
}
if(list2.length){
game.log(list2,'被追加为额外目标');
player.line(list2,'green');
}
}
}
},
shenqiang:{
trigger:{source:'damageEnd'},
forced:true,
filter:function(event,player){
return event.card&&event.card.name=='sha'&&_status.currentPhase==player;
}, },
content:function(){ content:function(){
player.getStat().card.sha--; player.getStat().card.sha--;
} }
}, },
tiandan:{ tiandan:{
trigger:{player:'phaseUseBefore'}, trigger:{player:'phaseDrawBegin'},
filter:function(event,player){ filter:function(event,player){
return player.maxHp>player.num('h'); return Math.min(5,player.hp)>player.num('h')&&!player.skipList.contains('phaseUse')&&!player.skipList.contains('phaseDiscard');
}, },
check:function(event,player){ check:function(event,player){
var nh=player.num('h'); var nh=player.num('h');
if(player.maxHp-nh>=2) return true; if(Math.min(5,player.hp)-nh>=2) return true;
if(nh>player.hp) return true;
if(nh==player.hp) return nh<=2;
return false; return false;
}, },
content:function(){ content:function(){
var num=player.maxHp-player.num('h'); var num=Math.min(5,player.hp)-player.num('h');
var cards=[]; var cards=[];
while(num--){ while(num--){
cards.push(game.createCard('sha')); cards.push(game.createCard('sha'));
} }
player.gain(cards,'gain2'); player.gain(cards,'gain2');
trigger.untrigger(); player.skip('phaseUse');
trigger.finish();
player.skip('phaseDiscard'); player.skip('phaseDiscard');
} }
}, },
@ -75,10 +222,41 @@ character.ow={
target.addTempSkill('shanguang2','phaseAfter'); target.addTempSkill('shanguang2','phaseAfter');
}, },
ai:{ ai:{
order:10, order:7.9,
result:{ result:{
target:function(player,target){ target:function(player,target){
var nh=target.num('h');
if(ai.get.attitude(player,target)<0&&nh>=3&&
player.canUse('sha',target)&&player.num('h','sha')&&
ai.get.effect(target,{name:'sha'},player,player)>0){
return -nh-5;
}
return -nh;
}
}
}
},
shanguang2:{
mod:{
cardEnabled:function(){
return false;
},
cardUsable:function(){
return false;
},
cardRespondable:function(){
return false;
},
cardSavable:function(){
return false;
}
},
ai:{
effect:{
target:function(card,player,target,current){
if(get.tag(card,'respondShan')||get.tag(card,'respondSha')){
if(current<0) return 1.5;
}
} }
} }
} }
@ -2015,12 +2193,20 @@ character.ow={
} }
}, },
translate:{ translate:{
liudan:'榴弹',
liudan_info:'每当你使用一张杀你可以令所有不是此杀目标的其他角色有50%概率成为此杀的额外目标',
shoujia:'兽夹',
shoujia2:'兽夹',
shoujia3:'兽夹',
shoujia_info:'出牌阶段限一次,你可以将一张牌背面朝上置于一名其他角色的武将牌上,当该角色使用一张与此牌花色相同的牌指定其他角色为目标时,将此牌置入弃牌堆,该角色将武将牌翻至背面;当该角色对你造成伤害时,将此牌置入弃牌堆',
shihuo:'嗜火',
shihuo_info:'锁定技,每当一名角色受到火焰伤害,你摸一张牌',
shanguang:'闪光', shanguang:'闪光',
shanguang_info:'出牌阶段限一次,你可以弃置一张牌令一名其他角色本回合内不能使用或打出卡牌', shanguang_info:'出牌阶段限一次,你可以弃置一张牌令一名其他角色本回合内不能使用或打出卡牌',
tiandan:'填弹', tiandan:'填弹',
tiandan_info:'你可以跳过出牌和弃牌阶段,然后获得若干张杀直到你的手牌数等于你的体力上限', tiandan_info:'摸牌阶段开始时,你可以跳过出牌和弃牌阶段,然后获得若干张杀直到你的手牌数等于你的体最多为5',
shenqiang:'神枪', shenqiang:'神枪',
shenqiang_info:'若你使用杀指定了惟一目标且命中目标,则此杀不计入回合内的出杀次数限制', shenqiang_info:'若你使用杀指定了惟一目标且造成伤害,则此杀不计入回合内的出杀次数限制',
mianzhen:'眠针', mianzhen:'眠针',
mianzhen2:'眠针', mianzhen2:'眠针',
mianzhen_info:'出牌阶段限一次,你可以弃置一张黑色牌,并令一名其他角色不能使用或打出卡牌直到其受到伤害或下一回合结束', mianzhen_info:'出牌阶段限一次,你可以弃置一张黑色牌,并令一名其他角色不能使用或打出卡牌直到其受到伤害或下一回合结束',

View File

@ -1042,6 +1042,7 @@ character.swd={
}).ai=function(target){ }).ai=function(target){
if(ai.get.attitude(player,target)<=0) return 0; if(ai.get.attitude(player,target)<=0) return 0;
var eff=-ai.get.damageEffect(target,target,player)+(player==target?2:0); var eff=-ai.get.damageEffect(target,target,player)+(player==target?2:0);
if(target.hp==1) eff+=2;
return Math.min(1,eff); return Math.min(1,eff);
}; };
"step 1" "step 1"
@ -7885,7 +7886,7 @@ character.swd={
touxi:'偷袭', touxi:'偷袭',
touxi_info:'在其他角色的回合结束阶段,你可以进行一次判定,若结果为黑色,你对其造成一点雷电伤害,且直到下一回合开始不能再次发动偷袭;若结果为红色,对方可以弃置你的一张牌', touxi_info:'在其他角色的回合结束阶段,你可以进行一次判定,若结果为黑色,你对其造成一点雷电伤害,且直到下一回合开始不能再次发动偷袭;若结果为红色,对方可以弃置你的一张牌',
minjing:'明镜', minjing:'明镜',
minjing_info:'锁定技每当你受到伤害时若你没有防具牌有1/3的概率令伤害-1', minjing_info:'若你没有防具牌,你视为装备了光纱天衣',
qimou:'奇谋', qimou:'奇谋',
qimou_info:'每当你于回合外受到一次伤害,你可以摸一张牌,并立即使用之', qimou_info:'每当你于回合外受到一次伤害,你可以摸一张牌,并立即使用之',
mufeng:'沐风', mufeng:'沐风',

View File

@ -1316,11 +1316,13 @@ character.yxs={
if(trigger.player.skills.contains('wushuang')) return 0; if(trigger.player.skills.contains('wushuang')) return 0;
if(trigger.player.skills.contains('liegong')) return 0; if(trigger.player.skills.contains('liegong')) return 0;
if(trigger.player.skills.contains('tieji')) return 0; if(trigger.player.skills.contains('tieji')) return 0;
if(trigger.player.skills.contains('juji')) return 0;
if(trigger.player.skills.contains('retieji')) return 0; if(trigger.player.skills.contains('retieji')) return 0;
if(trigger.player.skills.contains('roulin')&&trigger.target.sex=='female') return 0; if(trigger.player.skills.contains('roulin')&&trigger.target.sex=='female') return 0;
if(trigger.player.skills.contains('nvquan')&&trigger.target.sex=='male') return 0; if(trigger.player.skills.contains('nvquan')&&trigger.target.sex=='male') return 0;
if(trigger.target.skills.contains('yijue2')) return 0; if(trigger.target.skills.contains('yijue2')) return 0;
if(trigger.target.skills.contains('shejie2')) return 0; if(trigger.target.skills.contains('shejie2')) return 0;
if(trigger.target.skills.contains('shanguang2')) return 0;
var equip=trigger.target.get('e','2'); var equip=trigger.target.get('e','2');
if(equip&&equip.name=='bagua') return 1; if(equip&&equip.name=='bagua') return 1;

View File

@ -35,8 +35,11 @@ window.noname_asset_list=[
'image/card/fuxiqin.png', 'image/card/fuxiqin.png',
'image/card/fuxiqin2.png', 'image/card/fuxiqin2.png',
'image/card/guanshi.png', 'image/card/guanshi.png',
'image/card/guangshatianyi.png',
'image/card/guding.png', 'image/card/guding.png',
'image/card/guiyoujie.png', 'image/card/guiyoujie.png',
'image/card/guiyanfadao.png',
'image/card/guilingyupei.png',
'image/card/guohe.png', 'image/card/guohe.png',
'image/card/hanbing.png', 'image/card/hanbing.png',
'image/card/haotianta.png', 'image/card/haotianta.png',
@ -64,6 +67,7 @@ window.noname_asset_list=[
'image/card/hsshenqi_morijingxiang.jpg', 'image/card/hsshenqi_morijingxiang.jpg',
'image/card/hsshenqi_nengliangzhiguang.jpg', 'image/card/hsshenqi_nengliangzhiguang.jpg',
'image/card/hualiu.png', 'image/card/hualiu.png',
'image/card/huanpodan.png',
'image/card/hufu.png', 'image/card/hufu.png',
'image/card/huimiezhichui.png', 'image/card/huimiezhichui.png',
'image/card/huogong.png', 'image/card/huogong.png',
@ -116,6 +120,7 @@ window.noname_asset_list=[
'image/card/shuiyanqijunx.png', 'image/card/shuiyanqijunx.png',
'image/card/shunshou.png', 'image/card/shunshou.png',
'image/card/shushangkaihua.png', 'image/card/shushangkaihua.png',
'image/card/sifeizhenmian.png',
'image/card/spell_ansezhadan.jpg', 'image/card/spell_ansezhadan.jpg',
'image/card/spell_anyingkuangluan.jpg', 'image/card/spell_anyingkuangluan.jpg',
'image/card/spell_anyinglieyan.jpg', 'image/card/spell_anyinglieyan.jpg',
@ -265,6 +270,7 @@ window.noname_asset_list=[
'image/card/wuxingpan.png', 'image/card/wuxingpan.png',
'image/card/wuzhong.png', 'image/card/wuzhong.png',
'image/card/xiangyuye.png', 'image/card/xiangyuye.png',
'image/card/xianluhui.png',
'image/card/xietianzi.png', 'image/card/xietianzi.png',
'image/card/xingjiegoutong.png', 'image/card/xingjiegoutong.png',
'image/card/xingjunyan.png', 'image/card/xingjunyan.png',

View File

@ -6147,6 +6147,9 @@
next.skill=event.skill; next.skill=event.skill;
next.multitarget=info.multitarget; next.multitarget=info.multitarget;
next.preResult=event.preResult; next.preResult=event.preResult;
if(info.targetDelay===false){
event.targetDelay=false;
}
if(num==0&&next.targets.length>1){ if(num==0&&next.targets.length>1){
if(!info.multitarget){ if(!info.multitarget){
lib.tempSortSeat=player; lib.tempSortSeat=player;
@ -6184,7 +6187,9 @@
} }
} }
} }
else game.delayx(0.5); else if(event.targetDelay!==false){
game.delayx(0.5);
}
} }
"step 3" "step 3"
if(!get.info(event.card).multitarget&&num<targets.length-1){ if(!get.info(event.card).multitarget&&num<targets.length-1){

View File

@ -1,5 +1,5 @@
window.noname_update={ window.noname_update={
version:'1.8.17.6', version:'1.8.18',
changeLog:[ changeLog:[
'修bug', '修bug',
], ],
@ -11,11 +11,18 @@ window.noname_update={
'card/standard.js', 'card/standard.js',
'card/sp.js', 'card/sp.js',
'card/yunchou.js', 'card/yunchou.js',
'card/guozhan.js',
'character/rank.js', 'character/rank.js',
'character/ow.js', 'character/ow.js',
'character/yxs.js',
'character/swd.js',
'character/sp.js', 'character/sp.js',
'character/hearth.js', 'character/hearth.js',
'character/xianjian.js', 'character/xianjian.js',
'character/gujian.js',
'mode/identity.js',
'mode/guozhan.js',
'layout/default/layout.css',
], ],
'1.8.17.5':[], '1.8.17.5':[],
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
image/card/guilingyupei.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
image/card/guiyanfadao.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
image/card/huanpodan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
image/card/xianluhui.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 100 KiB

View File

@ -1511,8 +1511,8 @@ span[data-color="unknownm"]{
border:1px solid #631515; border:1px solid #631515;
} }
.card.fullskin.poison>.name{ .card.fullskin.poison>.name{
color:#631515; color:#00312d;
border:1px solid #631515; border:1px solid #00312d;
} }
.card.fullskin.epic>.name{ .card.fullskin.epic>.name{
color: white; color: white;

View File

@ -1018,7 +1018,7 @@ mode.guozhan={
return false; return false;
}, },
logAi:function(targets,card){ logAi:function(targets,card){
if(this.ai.shown==1) return; if(this.ai.shown==1||this.isMad()) return;
if(typeof targets=='number'){ if(typeof targets=='number'){
this.ai.shown+=targets; this.ai.shown+=targets;
} }

View File

@ -1211,7 +1211,7 @@ mode.identity={
}, },
logAi:function(targets,card){ logAi:function(targets,card){
if(this.ai.shown==1) return; if(this.ai.shown==1||this.isMad()) return;
if(typeof targets=='number'){ if(typeof targets=='number'){
this.ai.shown+=targets; this.ai.shown+=targets;
} }