v1.9.53.1
This commit is contained in:
parent
2ad1ecc65e
commit
2522b635c7
|
@ -368,8 +368,8 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
}
|
||||
var num=player.countCards('h','sha');
|
||||
if(num>1) return 4+num;
|
||||
return 2+num;
|
||||
if(num>1) return 6+num;
|
||||
return 3+num;
|
||||
},
|
||||
basic:{
|
||||
equipValue:5
|
||||
|
|
|
@ -448,6 +448,113 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
}
|
||||
},
|
||||
gwminxiang_old:{
|
||||
group:['gwminxiang_count','gwminxiang_clear','gwminxiang_use'],
|
||||
subSkill:{
|
||||
count:{
|
||||
trigger:{player:'phaseBegin'},
|
||||
silent:true,
|
||||
content:function(){
|
||||
player.storage.gwminxiang=[];
|
||||
}
|
||||
},
|
||||
clear:{
|
||||
trigger:{player:'phaseAfter'},
|
||||
silent:true,
|
||||
content:function(){
|
||||
delete player.storage.gwminxiang;
|
||||
}
|
||||
},
|
||||
use:{
|
||||
trigger:{player:'useCardAfter'},
|
||||
silent:true,
|
||||
filter:function(event,player){
|
||||
if(_status.currentPhase!=player) return false;
|
||||
var type=get.type(event.card);
|
||||
if(type!='trick'&&type!='basic') return false;
|
||||
if(get.info(event.card).multitarget) return false;
|
||||
if(!player.storage.gwminxiang) return false;
|
||||
return true;
|
||||
},
|
||||
content:function(){
|
||||
player.storage.gwminxiang.add(trigger.card);
|
||||
}
|
||||
}
|
||||
},
|
||||
trigger:{player:'phaseEnd'},
|
||||
direct:true,
|
||||
filter:function(event,player){
|
||||
if(player.storage.gwminxiang){
|
||||
for(var i=0;i<player.storage.gwminxiang.length;i++){
|
||||
var card=player.storage.gwminxiang[i];
|
||||
if(game.countPlayer(function(current){
|
||||
return current!=player&&lib.filter.targetEnabled3(card,player,current);
|
||||
})>1){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function(){
|
||||
'step 0'
|
||||
var list=[];
|
||||
for(var i=0;i<player.storage.gwminxiang.length;i++){
|
||||
var card=player.storage.gwminxiang[i];
|
||||
if(game.countPlayer(function(current){
|
||||
return current!=player&&lib.filter.targetEnabled3(card,player,current);
|
||||
})>1){
|
||||
list.push(card);
|
||||
}
|
||||
}
|
||||
var skip=['shunshou','huogong','shandianjian','jiu'];
|
||||
player.chooseCardButton(get.prompt('gwminxiang'),list).set('ai',function(button){
|
||||
if(skip.contains(button.link.name)) return 0;
|
||||
var val=get.value(button.link);
|
||||
if(get.tag(button.link,'damage')){
|
||||
val+=3;
|
||||
}
|
||||
return val;
|
||||
});
|
||||
'step 1'
|
||||
if(result.bool){
|
||||
var card=result.links[0];
|
||||
event.card=card;
|
||||
player.chooseTarget('选择两个目标互相使用'+get.translation(event.card),2,function(cardx,player,target){
|
||||
return target!=player&&lib.filter.targetEnabled3(card,player,target);
|
||||
}).set('ai',function(target){
|
||||
if(ui.selected.targets.length){
|
||||
return get.effect(target,card,ui.selected.targets[0],player);
|
||||
}
|
||||
return get.effect(target,card,target,player);
|
||||
}).set('targetprompt',['先出牌','后出牌']);
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
'step 2'
|
||||
if(result.bool){
|
||||
player.$throw(event.card);
|
||||
player.logSkill('gwminxiang',result.targets);
|
||||
event.target1=result.targets[0];
|
||||
event.target2=result.targets[1];
|
||||
game.delay();
|
||||
}
|
||||
else{
|
||||
event.finish();
|
||||
}
|
||||
'step 3'
|
||||
event.target1.useCard(event.card,event.target2,'noai');
|
||||
'step 4'
|
||||
if(event.target1.isIn()&&event.target2.isIn()){
|
||||
event.target2.useCard(event.card,event.target1,'noai');
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
expose:0.4,
|
||||
threaten:1.6
|
||||
}
|
||||
},
|
||||
gwminxiang:{
|
||||
enable:'phaseUse',
|
||||
usable:1,
|
||||
|
@ -469,8 +576,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return false;
|
||||
},
|
||||
check:function(card){
|
||||
if(['shunshou','huogong','shandianjian','jiu','tianxianjiu'].contains(card.name)) return 0;
|
||||
if(get.tag(card,'damage')){
|
||||
return get.value(card)+3;
|
||||
return get.value(card)+2;
|
||||
}
|
||||
return get.value(card);
|
||||
},
|
||||
|
@ -487,34 +595,32 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
targetprompt:['先出牌','后出牌'],
|
||||
selectTarget:2,
|
||||
multitarget:true,
|
||||
delay:0,
|
||||
content:function(){
|
||||
'step 0'
|
||||
event.draw=0;
|
||||
targets[0].useCard({name:cards[0].name},targets[1],'noai');
|
||||
player.draw();
|
||||
'step 1'
|
||||
targets[0].useCard({name:cards[0].name},targets[1],'noai');
|
||||
'step 2'
|
||||
if(targets[0].isIn()&&targets[1].isIn()){
|
||||
targets[1].useCard({name:cards[0].name},targets[0],'noai');
|
||||
}
|
||||
'step 2'
|
||||
if(event.draw){
|
||||
player.draw(event.draw);
|
||||
}
|
||||
},
|
||||
group:'gwminxiang_draw',
|
||||
// group:'gwminxiang_draw',
|
||||
multiline:true,
|
||||
subSkill:{
|
||||
draw:{
|
||||
trigger:{global:'damageAfter'},
|
||||
silent:true,
|
||||
filter:function(event,player){
|
||||
var evt=event.getParent(3);
|
||||
return evt.name=='gwminxiang'&&evt.player==player;
|
||||
},
|
||||
content:function(){
|
||||
trigger.getParent(3).draw+=trigger.num;
|
||||
}
|
||||
}
|
||||
},
|
||||
// subSkill:{
|
||||
// draw:{
|
||||
// trigger:{global:'damageAfter'},
|
||||
// silent:true,
|
||||
// filter:function(event,player){
|
||||
// var evt=event.getParent(3);
|
||||
// return evt.name=='gwminxiang'&&evt.player==player;
|
||||
// },
|
||||
// content:function(){
|
||||
// trigger.getParent(3).draw+=trigger.num;
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
ai:{
|
||||
order:8,
|
||||
result:{
|
||||
|
@ -4305,7 +4411,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
gwhuanbi:'幻笔',
|
||||
gwhuanbi_info:'出牌阶段限一次,你可以弃置一张牌,并创造一张冒险牌,然后随机选择一名有手牌的角色,被选中的角色可以交给你一张手牌并获得一张该牌的复制',
|
||||
gwminxiang:'冥想',
|
||||
gwminxiang_info:'出牌阶段限一次,你可以弃置一张基本牌或普通锦囊牌并选择两名角色,令目标分别视为对对方使用一张与弃置的牌同名的牌;每当有角色因此受到一点伤害,你在结算后摸一张牌',
|
||||
gwminxiang_old_info:'结束阶段,你可以选择一张本回合使用过的基本牌或普通锦囊牌并选择两名其他角色,令目标分别视为对对方使用一张此牌的复制',
|
||||
gwminxiang_info:'出牌阶段限一次,你可以弃置一张基本牌或普通锦囊牌并摸一张牌,然后选择其他两名角色,令目标分别视为对对方使用一张你弃置的牌的同名牌',
|
||||
gwlangshi:'狼噬',
|
||||
gwlangshi_info:'每当你造成一次伤害,你可以对一名体力值不小于受伤害角色的其他角色造一点伤害',
|
||||
gwjingshi:'血契',
|
||||
|
|
|
@ -317,6 +317,7 @@ window.noname_character_rank={
|
|||
'hs_mojinbaozi',
|
||||
'xuhuang',
|
||||
'liuye',
|
||||
'sunshangxiang',
|
||||
],
|
||||
bp:[
|
||||
'zhenji',
|
||||
|
@ -544,7 +545,6 @@ window.noname_character_rank={
|
|||
'swd_zhanggao',
|
||||
'simalang',
|
||||
'sp_caoren',
|
||||
'sunshangxiang',
|
||||
'daqiao',
|
||||
'swd_luchengxuan',
|
||||
'dongzhuo',
|
||||
|
|
|
@ -25,7 +25,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
zhouyu:['male','wu',3,['yingzi','fanjian']],
|
||||
daqiao:['female','wu',3,['guose','liuli']],
|
||||
luxun:['male','wu',3,['qianxun','lianying']],
|
||||
sunshangxiang:['female','wu',3,['xiaoji','jieyin']],
|
||||
sunshangxiang:['female','wu',3,['xiaoji','xinjieyin']],
|
||||
huatuo:['male','qun',3,['qingnang','jijiu']],
|
||||
lvbu:['male','qun',4,['wushuang']],
|
||||
diaochan:['female','qun',3,['lijian','xinbiyue']],
|
||||
|
@ -697,6 +697,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
audio:2,
|
||||
audioname:['liushan'],
|
||||
trigger:{player:'chooseToRespondBegin'},
|
||||
check:function(event){
|
||||
if(event.jijiang) return false;
|
||||
return true;
|
||||
},
|
||||
filter:function(event,player){
|
||||
if(event.responded) return false;
|
||||
if(player.storage.jijianging) return false;
|
||||
|
@ -720,6 +724,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return (get.attitude(event.player,event.source)-2);
|
||||
});
|
||||
next.set('source',player);
|
||||
next.set('jijiang',true);
|
||||
next.autochoose=lib.filter.autoRespondSha;
|
||||
}
|
||||
else{
|
||||
|
@ -785,6 +790,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
});
|
||||
next.set('source',player);
|
||||
next.set('target',target);
|
||||
next.set('jijiang',true);
|
||||
next.autochoose=lib.filter.autoRespondSha;
|
||||
}
|
||||
else{
|
||||
|
@ -1548,12 +1554,33 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
}
|
||||
return 6-get.value(card)
|
||||
},
|
||||
delay:0,
|
||||
content:function(){
|
||||
var num=cards.length;
|
||||
if(get.is.altered('xinzhiheng')&&player.countCards('h')==0){
|
||||
num++;
|
||||
}
|
||||
player.draw(num);
|
||||
'step 0'
|
||||
if(!player.hasSkill('xinzhiheng_delay')) game.delayx();
|
||||
'step 1'
|
||||
player.draw(cards.length);
|
||||
},
|
||||
group:'xinzhiheng_draw',
|
||||
subSkill:{
|
||||
draw:{
|
||||
trigger:{player:'loseEnd'},
|
||||
silent:true,
|
||||
filter:function(event,player){
|
||||
if(event.getParent(2).skill!='xinzhiheng') return false;
|
||||
if(!get.is.altered('xinzhiheng')) return false;
|
||||
if(player.countCards('h')) return false;
|
||||
for(var i=0;i<event.cards.length;i++){
|
||||
if(event.cards[i].original=='h') return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
content:function(){
|
||||
player.draw();
|
||||
player.addTempSkill('xinzhiheng_delay','xinzhihengAfter');
|
||||
}
|
||||
},
|
||||
delay:{}
|
||||
},
|
||||
ai:{
|
||||
order:1,
|
||||
|
@ -1951,7 +1978,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
if(player.hp<player.maxHp)
|
||||
return 6-get.value(card)
|
||||
return 4-get.value(card)
|
||||
|
||||
},
|
||||
filterTarget:function(card,player,target){
|
||||
if(target.sex!='male') return false;
|
||||
|
@ -1976,6 +2002,143 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
threaten:2,
|
||||
}
|
||||
},
|
||||
xinjieyin:{
|
||||
group:['xinjieyin_old','xinjieyin_new'],
|
||||
alter:true,
|
||||
subSkill:{
|
||||
new:{
|
||||
audio:'jieyin',
|
||||
enable:'phaseUse',
|
||||
filterCard:true,
|
||||
usable:1,
|
||||
position:'he',
|
||||
check:function(card){
|
||||
var player=_status.event.player;
|
||||
if(get.position(card)=='e'){
|
||||
var subtype=get.subtype(card);
|
||||
if(!game.hasPlayer(function(current){
|
||||
return current!=player&¤t.hp!=player.hp&&get.attitude(player,current)>0&&!current.countCards('e',{subtype:subtype});
|
||||
})){
|
||||
return 0;
|
||||
}
|
||||
if(player.countCards('h',{subtype:subtype})) return 20-get.value(card);
|
||||
return 10-get.value(card);
|
||||
}
|
||||
else{
|
||||
if(player.countCards('e')) return 0;
|
||||
if(player.countCards('h',{type:'equip'})) return 0;
|
||||
return 8-get.value(card);
|
||||
}
|
||||
},
|
||||
filterTarget:function(card,player,target){
|
||||
if(target.sex!='male') return false;
|
||||
if(target.countCards('e',{subtype:get.subtype(ui.selected.cards[0])})) return false;
|
||||
return true;
|
||||
},
|
||||
discard:false,
|
||||
delay:0,
|
||||
lose:false,
|
||||
content:function(){
|
||||
'step 0'
|
||||
if(get.position(cards[0])=='e'){
|
||||
player.$give(cards,target);
|
||||
target.equip(cards[0]);
|
||||
}
|
||||
else{
|
||||
player.discard(cards);
|
||||
}
|
||||
'step 1'
|
||||
if(player.hp>target.hp){
|
||||
player.draw();
|
||||
if(target.isDamaged()) target.recover();
|
||||
}
|
||||
else if(player.hp<target.hp){
|
||||
target.draw();
|
||||
if(player.isDamaged()) player.recover();
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
order:function(){
|
||||
var player=_status.event.player;
|
||||
var es=player.getCards('e');
|
||||
for(var i=0;i<es.length;i++){
|
||||
if(player.countCards('h',{subtype:get.subtype(es[i])})) return 10;
|
||||
}
|
||||
return 2;
|
||||
},
|
||||
result:{
|
||||
target:function(player,target){
|
||||
var goon=function(){
|
||||
var es=player.getCards('e');
|
||||
for(var i=0;i<es.length;i++){
|
||||
if(player.countCards('h',{subtype:get.subtype(es[i])})) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
if(player.hp<target.hp){
|
||||
if(player.isHealthy()){
|
||||
if(!player.needsToDiscard(1)||goon()) return 0.1;
|
||||
return 0;
|
||||
}
|
||||
return 1.5;
|
||||
}
|
||||
if(player.hp>target.hp){
|
||||
if(target.isHealthy()){
|
||||
if(!player.needsToDiscard(1)||goon()) return 0.1;
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
old:{
|
||||
audio:'jieyin',
|
||||
enable:'phaseUse',
|
||||
filterCard:true,
|
||||
usable:1,
|
||||
selectCard:2,
|
||||
filter:function(event,player){
|
||||
if(get.is.altered('xinjieyin')) return false;
|
||||
return player.countCards('h')>=2;
|
||||
},
|
||||
check:function(card){
|
||||
var player=get.owner(card);
|
||||
if(player.countCards('h')>player.hp)
|
||||
return 8-get.value(card)
|
||||
if(player.hp<player.maxHp)
|
||||
return 6-get.value(card)
|
||||
return 4-get.value(card)
|
||||
},
|
||||
filterTarget:function(card,player,target){
|
||||
if(target.sex!='male') return false;
|
||||
if(target.hp>=target.maxHp) return false;
|
||||
if(target==player) return false;
|
||||
return true;
|
||||
},
|
||||
content:function(){
|
||||
player.recover();
|
||||
target.recover();
|
||||
},
|
||||
ai:{
|
||||
order:5.5,
|
||||
result:{
|
||||
player:function(player){
|
||||
if(player.hp<player.maxHp) return 4;
|
||||
if(player.countCards('h')>player.hp) return 0
|
||||
return -1;
|
||||
},
|
||||
target:4
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
ai:{
|
||||
threaten:2.3
|
||||
}
|
||||
},
|
||||
qingnang:{
|
||||
audio:2,
|
||||
enable:'phaseUse',
|
||||
|
@ -2217,6 +2380,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
lianying:'连营',
|
||||
xiaoji:'枭姬',
|
||||
jieyin:'结姻',
|
||||
xinjieyin:'结姻',
|
||||
qingnang:'青囊',
|
||||
jijiu:'急救',
|
||||
wushuang:'无双',
|
||||
|
@ -2282,6 +2446,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
lianying_info:'每当你失去最后一张手牌,可摸一张牌',
|
||||
xiaoji_info:'每当你失去一张装备牌,可以摸两张牌',
|
||||
jieyin_info:'出牌阶段,你可以弃置两张牌并选择1名已经受伤的男性角色,你与其各回复一点体力,每阶段限一次',
|
||||
xinjieyin_info:'出牌阶段,你可以弃置两张牌并选择1名已经受伤的男性角色,你与其各回复一点体力,每阶段限一次',
|
||||
xinjieyin_old_info:'出牌阶段,你可以弃置两张牌并选择1名已经受伤的男性角色,你与其各回复一点体力,每阶段限一次',
|
||||
xinjieyin_new_info:'出牌阶段限1次,你可以选择一名男性角色,弃置一张手牌或将一张装备牌置于其装备区,你与其体力较高的角色摸一张牌,体力值较低的角色回复1点体力',
|
||||
xinjieyin_info_alter:'出牌阶段限1次,你可以选择一名男性角色,弃置一张手牌或将一张装备牌置于其装备区,你与其体力较高的角色摸一张牌,体力值较低的角色回复1点体力',
|
||||
qingnang_info:'出牌阶段,你可以弃置一张手牌令一名角色回复一点体力,每阶段限一次',
|
||||
jijiu_info:'回合外,你可以将一张红色牌当[桃]使用',
|
||||
wushuang_info:'锁定技,你使用的【杀】或【决斗】需要两张【闪】或【杀】响应',
|
||||
|
|
|
@ -4858,7 +4858,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
content:function(){
|
||||
"step 0"
|
||||
var yep=false;
|
||||
if(!player.storage.jijianging){
|
||||
if(!player.storage.jijianging&&!trigger.jijiang){
|
||||
var players=game.filterPlayer();
|
||||
for(var i=0;i<players.length;i++){
|
||||
var nh=players[i].countCards('h');
|
||||
|
@ -4891,6 +4891,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
return (get.attitude(event.player,event.source)-2);
|
||||
});
|
||||
next.set('source',player);
|
||||
next.set('jijiang',true);
|
||||
next.autochoose=lib.filter.autoRespondSha;
|
||||
}
|
||||
else{
|
||||
|
@ -4968,6 +4969,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
|||
});
|
||||
next.set('source',player);
|
||||
next.set('target',target);
|
||||
next.set('jijiang',true);
|
||||
next.autochoose=lib.filter.autoRespondSha;
|
||||
}
|
||||
else{
|
||||
|
|
|
@ -1,28 +1,19 @@
|
|||
window.noname_update={
|
||||
version:'1.9.53',
|
||||
update:'1.9.52.1',
|
||||
version:'1.9.53.1',
|
||||
update:'1.9.53',
|
||||
changeLog:[
|
||||
'国战标身份改进、bug修复',
|
||||
'新版标准武将(需在武将菜单中手动开启)'
|
||||
'bug修复'
|
||||
],
|
||||
players:[
|
||||
'caocao',
|
||||
'huangyueying',
|
||||
'zhenji',
|
||||
'sunquan',
|
||||
'zhugeliang',
|
||||
'diaochan'
|
||||
'sunshangxiang'
|
||||
],
|
||||
files:[
|
||||
'card/guozhan.js',
|
||||
'card/standard.js',
|
||||
'character/hearth.js',
|
||||
'character/gwent.js',
|
||||
'character/rank.js',
|
||||
'character/sp.js',
|
||||
'character/standard.js',
|
||||
'character/yijiang.js',
|
||||
'game/config.js',
|
||||
'game/game.js',
|
||||
'layout/default/layout.css'
|
||||
'layout/mobile/equip.css',
|
||||
'layout/newlayout/equip.css'
|
||||
]
|
||||
};
|
||||
};
|
|
@ -135,6 +135,7 @@
|
|||
#arena.chess .player .equips>.card>.name2{
|
||||
display:block;
|
||||
margin-left:5px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
#arena.oblongcard:not(.chess).textequip .player[data-position='0'] .equips>.card>.name2{
|
||||
line-height: 29px;
|
||||
|
|
|
@ -88,6 +88,7 @@
|
|||
.equips>.card>.name2{
|
||||
display:block;
|
||||
margin-left:5px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.equips>.card>div{
|
||||
animation:none !important;
|
||||
|
|
Loading…
Reference in New Issue