This commit is contained in:
libccy 2017-01-21 13:30:20 +08:00
parent a790e4553f
commit f6209730d5
7 changed files with 111 additions and 36 deletions

View File

@ -2151,24 +2151,25 @@ character.hearth={
enable:'phaseUse', enable:'phaseUse',
usable:1, usable:1,
filterTarget:true, filterTarget:true,
selectTarget:[1,3], selectTarget:[1,Infinity],
content:function(){ content:function(){
'step 0' 'step 0'
if(target==targets[0]){ if(target==targets[0]){
game.asyncDraw(targets,2); game.asyncDraw(targets);
} }
'step 1' 'step 1'
if(target==targets[0]){ if(target==targets[0]){
game.delay(); game.delay();
} }
'step 2' 'step 2'
target.chooseToDiscard(2,true); target.chooseToDiscard('hej',true);
}, },
ai:{ ai:{
order:10, order:10,
result:{ result:{
target:function(player,target){ target:function(player,target){
switch(target.num('he')==0){ if(target.num('j')) return 2;
switch(target.num('he')){
case 0:return 0; case 0:return 0;
case 1:return 0.5; case 1:return 0.5;
case 2:return 0.8; case 2:return 0.8;
@ -2856,7 +2857,22 @@ character.hearth={
ai:{ ai:{
threaten:1.8, threaten:1.8,
order:function(name,player){ order:function(name,player){
return 10; var max=true,num=0;
for(var i=0;i<game.players.length;i++){
if(game.players[i]==player) continue;
var att=ai.get.attitude(player,game.players[i]);
var dh=player.num('h')-game.players[i].num('h');
if(att*dh>num){
if(att>0){
max=true;
}
else if(att<0){
max=false;
}
}
}
if(max) return 10;
return 0.5;
}, },
result:{ result:{
target:function(player,target){ target:function(player,target){
@ -5464,7 +5480,7 @@ character.hearth={
byuhuo2:'浴火', byuhuo2:'浴火',
byuhuo_info:'觉醒技当你进入濒死状态时你须将体力和体力上限变为2并将武将牌翻至背面在你的下一回合开始时你对所有其他角色造成两点火焰伤害在此之前你不能成为其他角色的卡牌的目标', byuhuo_info:'觉醒技当你进入濒死状态时你须将体力和体力上限变为2并将武将牌翻至背面在你的下一回合开始时你对所有其他角色造成两点火焰伤害在此之前你不能成为其他角色的卡牌的目标',
yulu:'雨露', yulu:'雨露',
yulu_info:'出牌阶段限一次,你可以指定至多3名角色各摸两张牌然后各弃置两张牌', yulu_info:'出牌阶段限一次,你可以指定任意名角色各摸一张牌,然后各弃置一区域内的一张牌',
fengyin:'封印', fengyin:'封印',
fengyin2:'封印', fengyin2:'封印',
fengyin_info:'回合结束阶段,若你于本回合内未使用过锦囊牌,你可以指定一名其他角色令其下个回合无法使用锦囊牌', fengyin_info:'回合结束阶段,若你于本回合内未使用过锦囊牌,你可以指定一名其他角色令其下个回合无法使用锦囊牌',

View File

@ -2495,6 +2495,29 @@ character.ow={
return ai.get.attitude(player,event.player)<0&& return ai.get.attitude(player,event.player)<0&&
((player.num('h')>player.hp&&player.num('h','lebu')==0)||get.distance(player,event.player)>1); ((player.num('h')>player.hp&&player.num('h','lebu')==0)||get.distance(player,event.player)>1);
}, },
intro:{
content:function(storage,player){
var str='';
if(player.storage.shanxian_h.length){
str+='手牌区:'+get.translation(player.storage.shanxian_h);
}
if(player.storage.shanxian_e.length){
if(str.length) str+='、';
str+='装备区:'+get.translation(player.storage.shanxian_e);
}
return str;
},
mark:function(dialog,content,player){
if(player.storage.shanxian_h.length){
dialog.add('<div class="text center">手牌区</div>');
dialog.addSmall(player.storage.shanxian_h);
}
if(player.storage.shanxian_e.length){
dialog.add('<div class="text center">装备区</div>');
dialog.addSmall(player.storage.shanxian_e);
}
},
},
logTarget:'player', logTarget:'player',
content:function(){ content:function(){
"step 0" "step 0"
@ -2503,11 +2526,12 @@ character.ow={
"step 1" "step 1"
player.storage.shanxian_h=player.get('h'); player.storage.shanxian_h=player.get('h');
player.storage.shanxian_e=player.get('e'); player.storage.shanxian_e=player.get('e');
player.storage.shanxian_n=2; player.storage.shanxian_n=1;
player.syncStorage('shanxian_e'); player.syncStorage('shanxian_e');
player.phase(); player.phase();
player.storage.shanxian=trigger.player; player.storage.shanxian=trigger.player;
player.removeSkill('shanxian2'); player.removeSkill('shanxian2');
player.markSkill('shanxian');
"step 2" "step 2"
if(!player.isTurnedOver()){ if(!player.isTurnedOver()){
player.turnOver(); player.turnOver();
@ -2590,6 +2614,7 @@ character.ow={
delete player.storage.shanxian_h; delete player.storage.shanxian_h;
delete player.storage.shanxian_e; delete player.storage.shanxian_e;
delete player.storage.shanxian_n; delete player.storage.shanxian_n;
player.unmarkSkill('shanxian');
} }
else{ else{
player.addSkill('shanxian2'); player.addSkill('shanxian2');
@ -2718,7 +2743,7 @@ character.ow={
shanxian:'闪现', shanxian:'闪现',
shanxian_info:'在一名其他角色的回合开始前,若你的武将牌正面朝上,你可以摸一张牌并进行一个额外回合,并在回合结束后将武将牌翻至背面。若如此做,你对其使用卡牌无视距离直到回合结束。', shanxian_info:'在一名其他角色的回合开始前,若你的武将牌正面朝上,你可以摸一张牌并进行一个额外回合,并在回合结束后将武将牌翻至背面。若如此做,你对其使用卡牌无视距离直到回合结束。',
shanhui:'闪回', shanhui:'闪回',
shanhui_info:'每当你造成或受到一次伤害,你可以将你的牌重置为上次发动闪现时的状态,若你的牌数因此而减少,你回复一点体力。每个状态最多可重现两次', shanhui_info:'每当你造成或受到一次伤害,你可以将你的牌重置为上次发动闪现时的状态,若你的牌数因此而减少,你回复一点体力',
ow_liekong:'猎空', ow_liekong:'猎空',
ow_sishen:'死神', ow_sishen:'死神',
ow_tianshi:'天使', ow_tianshi:'天使',

View File

@ -3921,6 +3921,7 @@ character.yijiang={
return ai.get.attitude(player,event.player)>=0; return ai.get.attitude(player,event.player)>=0;
}, },
priority:-5, priority:-5,
logTarget:'player',
content:function(){ content:function(){
game.asyncDraw([trigger.player,player]); game.asyncDraw([trigger.player,player]);
}, },
@ -5507,6 +5508,10 @@ character.yijiang={
trigger.untrigger(); trigger.untrigger();
trigger.finish(); trigger.finish();
}, },
mark:true,
intro:{
content:'杀或非延时类锦囊对你无效'
},
ai:{ ai:{
effect:{ effect:{
target:function(card,player,target,current){ target:function(card,player,target,current){

View File

@ -648,11 +648,11 @@
game.saveConfig('phonelayout',bool); game.saveConfig('phonelayout',bool);
if(lib.isPhoneLayout()){ if(lib.isPhoneLayout()){
ui.css.phone.href=lib.assetURL+'layout/default/phone.css'; ui.css.phone.href=lib.assetURL+'layout/default/phone.css';
ui.roundmenu.style.display=''; ui.arena.classList.add('phone');
} }
else{ else{
ui.css.phone.href=''; ui.css.phone.href='';
ui.roundmenu.style.display='none'; ui.arena.classList.remove('phone');
} }
} }
}, },
@ -4878,11 +4878,11 @@
} }
if(lib.isPhoneLayout()){ if(lib.isPhoneLayout()){
ui.css.phone.href=lib.assetURL+'layout/default/phone.css'; ui.css.phone.href=lib.assetURL+'layout/default/phone.css';
ui.roundmenu.style.display=''; ui.arena.classList.add('phone');
} }
else{ else{
ui.css.phone.href=''; ui.css.phone.href='';
ui.roundmenu.style.display='none'; ui.arena.classList.remove('phone');
} }
for(var i=0;i<game.players.length;i++){ for(var i=0;i<game.players.length;i++){
if(get.is.linked2(game.players[i])){ if(get.is.linked2(game.players[i])){
@ -11141,7 +11141,23 @@
delete this.node.prompt; delete this.node.prompt;
} }
}, },
prompt:function(name2,className){ prompt:function(str,nature){
var node;
if(this.node.prompt){
node=this.node.prompt;
node.innerHTML='';
node.className='damage normal-font damageadded';
}
else{
node=ui.create.div('.damage.normal-font',this);
this.node.prompt=node;
ui.refresh(node);
node.classList.add('damageadded');
}
node.innerHTML=str;
node.dataset.nature=nature||'soil';
},
prompt_old:function(name2,className){
var node; var node;
if(this.node.prompt){ if(this.node.prompt){
node=this.node.prompt; node=this.node.prompt;
@ -28157,8 +28173,8 @@
ui.roundmenu.style.transform='translate('+translate[0]+'px,'+translate[1]+'px)'; ui.roundmenu.style.transform='translate('+translate[0]+'px,'+translate[1]+'px)';
ui.click.checkroundtranslate(); ui.click.checkroundtranslate();
} }
if(!lib.isPhoneLayout()){ if(lib.isPhoneLayout()){
ui.roundmenu.style.display='none'; ui.arena.classList.add('phone');
} }
ui.sidebar=ui.create.div('#sidebar'); ui.sidebar=ui.create.div('#sidebar');
@ -31538,7 +31554,7 @@
is:{ is:{
linked2:function(player){ linked2:function(player){
if(lib.config.link_style=='mark') return true; if(lib.config.link_style=='mark') return true;
if(player==game.me){ if(player.dataset.position=='0'){
return ui.arena.classList.contains('oblongcard'); return ui.arena.classList.contains('oblongcard');
} }
else{ else{

View File

@ -456,6 +456,9 @@ table{table-layout: fixed;}
transition-property: opacity; transition-property: opacity;
overflow: hidden; overflow: hidden;
} }
#arena:not(.phone) #roundmenu{
display: none !important;
}
#roundmenu>div{ #roundmenu>div{
width: 26px; width: 26px;
height: 4px; height: 4px;

View File

@ -55,35 +55,44 @@
} }
/*--------位置(8人)------*/ /*--------位置(8人)------*/
#arena:not(.fewplayer)[data-number='8']>.player[data-position='1']{top:calc(200% / 3 - 340px);left:calc(100% - 120px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='1']{top:calc(30% - 120px);left:calc(-300% / 94 + 4375% / 47 - 735px + 720px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='2']{top:calc(60% / 3 - 108px);left:calc(500% / 6 - 100px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='2']{top:calc(8% - 32px);left:calc(-300% / 94 + 3750% / 47 - 630px + 600px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='3']{top:0;left:calc(400% / 6 - 80px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='3']{top:0;left:calc(-300% / 94 + 3125% / 47 - 525px + 480px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='4']{top:0;left:calc(300% / 6 - 60px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='4']{top:0;left:calc(-300% / 94 + 2500% / 47 - 420px + 360px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='5']{top:0;left:calc(200% / 6 - 40px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='5']{top:0;left:calc(-300% / 94 + 1875% / 47 - 315px + 240px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='6']{top:calc(60% / 3 - 108px);left:calc(100% / 6 - 20px);} #arena:not(.fewplayer)[data-number='8']>.player[data-position='6']{top:calc(8% - 32px);left:calc(-300% / 94 + 1250% / 47 - 210px + 120px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='7']{top:calc(200% / 3 - 340px);left:0;} #arena:not(.fewplayer)[data-number='8']>.player[data-position='7']{top:calc(30% - 120px);left:calc(-300% / 94 + 625% / 47 - 105px);}
@media screen and (min-width: 1105px){
#arena:not(.fewplayer)[data-number='8']>.player[data-position='1']{left:calc(100% - 120px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='2']{left:calc(500% / 6 - 100px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='3']{left:calc(400% / 6 - 80px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='4']{left:calc(300% / 6 - 60px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='5']{left:calc(200% / 6 - 40px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='6']{left:calc(100% / 6 - 20px);}
#arena:not(.fewplayer)[data-number='8']>.player[data-position='7']{left:0;}
}
/*--------位置(7人)------*/ /*--------位置(7人)------*/
#arena:not(.fewplayer)[data-number='7']>.player[data-position='1']{top:calc(200% / 3 - 340px);left:calc(100% - 120px);} #arena:not(.fewplayer)[data-number='7']>.player[data-position='1']{top:calc(30% - 120px);left:calc(100% - 120px);}
#arena:not(.fewplayer)[data-number='7']>.player[data-position='2']{top:calc(60% / 3 - 108px);left:calc(80% - 96px);} #arena:not(.fewplayer)[data-number='7']>.player[data-position='2']{top:calc(8% - 32px);left:calc(80% - 96px);}
#arena:not(.fewplayer)[data-number='7']>.player[data-position='3']{top:0;left:calc(60% - 72px);} #arena:not(.fewplayer)[data-number='7']>.player[data-position='3']{top:0;left:calc(60% - 72px);}
#arena:not(.fewplayer)[data-number='7']>.player[data-position='4']{top:0;left:calc(40% - 48px);} #arena:not(.fewplayer)[data-number='7']>.player[data-position='4']{top:0;left:calc(40% - 48px);}
#arena:not(.fewplayer)[data-number='7']>.player[data-position='5']{top:calc(60% / 3 - 108px);left:calc(20% - 24px);} #arena:not(.fewplayer)[data-number='7']>.player[data-position='5']{top:calc(8% - 32px);left:calc(20% - 24px);}
#arena:not(.fewplayer)[data-number='7']>.player[data-position='6']{top:calc(200% / 3 - 340px);left:0;} #arena:not(.fewplayer)[data-number='7']>.player[data-position='6']{top:calc(30% - 120px);left:0;}
/*--------位置(6人)------*/ /*--------位置(6人)------*/
#arena:not(.fewplayer)[data-number='6']>.player[data-position='1']{top:calc(200% / 3 - 340px);left:calc(100% - 120px);} #arena:not(.fewplayer)[data-number='6']>.player[data-position='1']{top:calc(30% - 120px);left:calc(100% - 120px);}
#arena:not(.fewplayer)[data-number='6']>.player[data-position='2']{top:calc(60% / 3 - 108px);left:calc(75% - 90px);} #arena:not(.fewplayer)[data-number='6']>.player[data-position='2']{top:0px;left:calc(75% - 90px);}
#arena:not(.fewplayer)[data-number='6']>.player[data-position='3']{top:0;left:calc(50% - 60px);} #arena:not(.fewplayer)[data-number='6']>.player[data-position='3']{top:0;left:calc(50% - 60px);}
#arena:not(.fewplayer)[data-number='6']>.player[data-position='4']{top:calc(60% / 3 - 108px);left:calc(25% - 30px);} #arena:not(.fewplayer)[data-number='6']>.player[data-position='4']{top:0px;left:calc(25% - 30px);}
#arena:not(.fewplayer)[data-number='6']>.player[data-position='5']{top:calc(200% / 3 - 340px);left:0;} #arena:not(.fewplayer)[data-number='6']>.player[data-position='5']{top:calc(30% - 120px);left:0;}
/*--------位置(5人)------*/ /*--------位置(5人)------*/
#arena:not(.fewplayer)[data-number='5']>.player[data-position='1']{top:calc(200% / 3 - 340px);left:calc(100% - 120px);} #arena:not(.fewplayer)[data-number='5']>.player[data-position='1']{top:calc(30% - 120px);left:calc(100% - 120px);}
#arena:not(.fewplayer)[data-number='5']>.player[data-position='2']{top:0;left:calc(200% / 3 - 80px);} #arena:not(.fewplayer)[data-number='5']>.player[data-position='2']{top:0;left:calc(200% / 3 - 80px);}
#arena:not(.fewplayer)[data-number='5']>.player[data-position='3']{top:0;left:calc(100% / 3 - 40px);} #arena:not(.fewplayer)[data-number='5']>.player[data-position='3']{top:0;left:calc(100% / 3 - 40px);}
#arena:not(.fewplayer)[data-number='5']>.player[data-position='4']{top:calc(200% / 3 - 340px);left:0;} #arena:not(.fewplayer)[data-number='5']>.player[data-position='4']{top:calc(30% - 120px);left:0;}
/*--------位置(4人)------*/ /*--------位置(4人)------*/
#arena:not(.fewplayer)[data-number='4']>.player[data-position='1']{top:calc(200% / 3 - 340px);left:calc(100% - 120px);} #arena:not(.fewplayer)[data-number='4']>.player[data-position='1']{top:calc(30% - 120px);left:calc(100% - 120px);}
#arena:not(.fewplayer)[data-number='4']>.player[data-position='2']{top:0;left:calc(50% - 60px);} #arena:not(.fewplayer)[data-number='4']>.player[data-position='2']{top:0;left:calc(50% - 60px);}
#arena:not(.fewplayer)[data-number='4']>.player[data-position='3']{top:calc(200% / 3 - 340px);left:0;} #arena:not(.fewplayer)[data-number='4']>.player[data-position='3']{top:calc(30% - 120px);left:0;}
/*--------位置(3人)------*/ /*--------位置(3人)------*/
#arena:not(.fewplayer)[data-number='3']>.player[data-position='1']{top:calc(60% / 3 - 88px);left:calc(75% + 80px);} #arena:not(.fewplayer)[data-number='3']>.player[data-position='1']{top:calc(60% / 3 - 88px);left:calc(75% + 80px);}
#arena:not(.fewplayer)[data-number='3']>.player[data-position='2']{top:calc(60% / 3 - 88px);left:calc(25% - 200px);} #arena:not(.fewplayer)[data-number='3']>.player[data-position='2']{top:calc(60% / 3 - 88px);left:calc(25% - 200px);}

View File

@ -823,10 +823,11 @@ mode.versus={
delete ui.cheat2; delete ui.cheat2;
} }
game.me.init(result.links[0]); game.me.init(result.links[0]);
game.addRecentCharacter(game.me.name);
if(_status.replacetwo){ if(_status.replacetwo){
game.me.replacetwo=result.links[1]; game.me.replacetwo=result.links[1];
game.addRecentCharacter(game.me.replacetwo);
} }
game.addRecentCharacter(game.me.name);
event.list.remove(game.me.name); event.list.remove(game.me.name);
for(var i=0;i<game.players.length;i++){ for(var i=0;i<game.players.length;i++){
if(game.players[i]!=game.me){ if(game.players[i]!=game.me){