This commit is contained in:
libccy 2015-12-01 13:46:28 +08:00
parent b4f4646cfd
commit 779da6ab14
19 changed files with 270 additions and 119 deletions

View File

@ -1136,7 +1136,7 @@ card.swd={
// pantao_info:'出牌阶段,对自己使用,回复两点体力。', // pantao_info:'出牌阶段,对自己使用,回复两点体力。',
langeguaiyi:'蓝格怪衣', langeguaiyi:'蓝格怪衣',
langeguaiyi_bg:'格', langeguaiyi_bg:'格',
langeguaiyi_info:'', langeguaiyi_info:'出牌阶段限一次,你可以进行一次判定,然后按花色执行以下效果。红桃:你回复一点体力;方片:你摸一张牌;梅花:你弃置一名其他角色的一张牌;黑桃:无事发生',
longfan:'龙帆', longfan:'龙帆',
longfan_info:'出牌阶段限一次,你可以进行一次判定,然后按花色执行以下效果。红桃:你回复一点体力;方片:你摸一张牌;梅花:你弃置一名其他角色的一张牌;黑桃:无事发生', longfan_info:'出牌阶段限一次,你可以进行一次判定,然后按花色执行以下效果。红桃:你回复一点体力;方片:你摸一张牌;梅花:你弃置一名其他角色的一张牌;黑桃:无事发生',
// longfan_info:'0000翻面1111弃手牌2222弃装备牌3333受伤害4444流失体力5555连环6666摸牌7777回复体力8888弃置判定牌9999置衡', // longfan_info:'0000翻面1111弃手牌2222弃装备牌3333受伤害4444流失体力5555连环6666摸牌7777回复体力8888弃置判定牌9999置衡',

View File

@ -8,10 +8,10 @@ character.boss={
// boss_zhugeliang:['male','shu',4,[],['boss','bossallowed'],'qun'], // boss_zhugeliang:['male','shu',4,[],['boss','bossallowed'],'qun'],
boss_huangyueying:['female','shu',4,['boss_gongshen','boss_jizhi','qicai','boss_guiyin'],['boss','bossallowed'],'wei'], boss_huangyueying:['female','shu',4,['boss_gongshen','boss_jizhi','qicai','boss_guiyin'],['boss','bossallowed'],'wei'],
boss_pangtong:['male','shu',4,['boss_tianyu','qiwu','niepan','boss_yuhuo'],['boss','bossallowed'],'zhu'], boss_pangtong:['male','shu',4,['boss_tianyu','qiwu','niepan','boss_yuhuo'],['boss','bossallowed'],'zhu'],
boss_zhaoyun:['male','shu',1,['boss_juejing','longhun'],['boss','bossallowed'],'qun'], boss_zhaoyun:['male','shu',1,['boss_juejing','longhun','zhanjiang'],['boss','bossallowed'],'qun'],
boss_zhouyu:['male','wu',6,['huoshen','boss_honglian','boss_xianyin'],['boss','bossallowed'],'zhu'], boss_zhouyu:['male','wu',6,['huoshen','boss_honglian','boss_xianyin'],['boss','bossallowed'],'zhu'],
boss_lvbu1:['male','qun',8,['mashu','wushuang','boss_baonu'],['boss','bossallowed'],'wei'], boss_lvbu1:['male','qun',8,['mashu','wushuang','boss_baonu'],['boss','bossallowed'],'wei'],
boss_lvbu2:['male','qun',4,['mashu','wushuang','swd_xiuluo','shenwei','shenji'],['hiddenboss'],'qun'], boss_lvbu2:['male','qun',4,['mashu','wushuang','swd_xiuluo','shenwei','shenji'],['hiddenboss','bossallowed'],'qun'],
boss_caiwenji:['female','qun',4,['beige','boss_hujia','boss_guihan'],['boss','bossallowed'],'wei'], boss_caiwenji:['female','qun',4,['beige','boss_hujia','boss_guihan'],['boss','bossallowed'],'wei'],
boss_zhangjiao:['male','qun',8,['boss_leiji','tiandao','jidian'],['boss','bossallowed'],'shu'], boss_zhangjiao:['male','qun',8,['boss_leiji','tiandao','jidian'],['boss','bossallowed'],'shu'],
boss_zuoci:['male','qun',0,['huanhua'],['boss','bossallowed'],'shu'], boss_zuoci:['male','qun',0,['huanhua'],['boss','bossallowed'],'shu'],
@ -22,6 +22,28 @@ character.boss={
// boss_shuijing:['male','qun',8,[],['boss','bossallowed'],'wei'], // boss_shuijing:['male','qun',8,[],['boss','bossallowed'],'wei'],
}, },
skill:{ skill:{
zhanjiang:{
trigger:{player:'phaseBegin'},
filter:function(event,player){
for(var i=0;i<game.players.length;i++){
if(game.players[i]!=player&&game.players[i].num('e','qinggang')){
return true;
}
}
},
content:function(){
for(var i=0;i<game.players.length;i++){
if(game.players[i]!=player){
var e=game.players[i].get('e','qinggang');
if(e.length){
player.gain(e);
game.players[i].$give(e,player);
break;
}
}
}
}
},
boss_juejing:{ boss_juejing:{
trigger:{player:'phaseDrawBefore'}, trigger:{player:'phaseDrawBefore'},
forced:true, forced:true,
@ -277,6 +299,7 @@ character.boss={
for(var i=0;i<game.players.length;i++){ for(var i=0;i<game.players.length;i++){
if(game.players[i]==player) continue; if(game.players[i]==player) continue;
player.maxHp+=game.players[i].maxHp; player.maxHp+=game.players[i].maxHp;
if(!game.players[i].name||!lib.character[game.players[i].name]) continue;
var skills=lib.character[game.players[i].name][3]; var skills=lib.character[game.players[i].name][3];
for(var j=0;j<skills.length;j++){ for(var j=0;j<skills.length;j++){
if(!lib.skill[skills[j]].forceunique){ if(!lib.skill[skills[j]].forceunique){
@ -821,6 +844,9 @@ character.boss={
}, },
}, },
translate:{ translate:{
zhanjiang:'斩将',
zhanjiang_info:'准备阶段开始时,如果其他角色的装备区内有【青釭剑】,你可以获得之',
boss_qiangzheng:'强征', boss_qiangzheng:'强征',
boss_qiangzheng_info:'锁定技,回合结束阶段,你获得每个敌方角色的一张手牌', boss_qiangzheng_info:'锁定技,回合结束阶段,你获得每个敌方角色的一张手牌',
boss_baolin:'暴凌', boss_baolin:'暴凌',

View File

@ -33,7 +33,7 @@ character.refresh={
content:function(){ content:function(){
'step 0' 'step 0'
trigger.player.chooseTarget(function(card,player,target){ trigger.player.chooseTarget(function(card,player,target){
return player.canUse({name:'juedou'},target); return player.canUse({name:'juedou'},target)&&target!=trigger.player;
},'是否发动【利奴】?').ai=function(target){ },'是否发动【利奴】?').ai=function(target){
return ai.get.effect(target,{name:'juedou'},player,trigger.player)-2; return ai.get.effect(target,{name:'juedou'},player,trigger.player)-2;
}; };

View File

@ -2813,7 +2813,7 @@ character.sp={
result:{ result:{
target:function(player,target){ target:function(player,target){
if(target.num('h')<target.hp){ if(target.num('h')<target.hp){
if(target.num('h')<=1) return 1; if(target.num('h')<=2) return 1;
} }
else if(target.num('h')>target.hp){ else if(target.num('h')>target.hp){
if(target.num('h')<=3) return -1; if(target.num('h')<=3) return -1;

View File

@ -201,6 +201,32 @@ character.yijiang={
range[1]++; range[1]++;
} }
}, },
},
group:'lihuo2'
},
lihuo2:{
trigger:{source:'damageEnd'},
forced:true,
popup:false,
filter:function(event,player){
return event.parent.skill=='lihuo';
},
content:function(){
player.addTempSkill('lihuo3','phaseAfter');
}
},
lihuo3:{
trigger:{player:'useCardAfter'},
filter:function(event,player){
return event.card.name=='sha';
},
forced:true,
silent:true,
audio:false,
content:function(){
player.loseHp();
player.removeSkill('lihuo3');
delete player.tempSkills.lihuo3;
} }
}, },
chunlao:{ chunlao:{

View File

@ -26,17 +26,17 @@ window.config={
'music_danji','music_random','music_off'] 'music_danji','music_random','music_off']
}, },
translate:{ translate:{
identity:'身份', // identity:'身份',
guozhan:'国战', // guozhan:'国战',
versus:'对决', // versus:'对决',
stone:'炉石', // stone:'炉石',
changjing:'场景', // changjing:'场景',
mowang:'魔王', // mowang:'魔王',
boss:'挑战', // boss:'挑战',
chess:'战棋', // chess:'战棋',
infinity:'无限', // infinity:'无限',
qunyingzhuan:'群英', // qunyingzhuan:'群英',
swd:'剧情', // swd:'剧情',
character_play_config:'技能卡牌', character_play_config:'技能卡牌',
soldier_play_config:'士兵模式', soldier_play_config:'士兵模式',
@ -323,14 +323,15 @@ window.config={
// ['relianying','zhiheng'], // ['relianying','zhiheng'],
['lianying','rende'], ['lianying','rende'],
['lianying','yinguo'], ['lianying','yinguo'],
// ['lianying','sajin'],
['lianying','qingjian'], ['lianying','qingjian'],
['boss_juejing','rende'],
['boss_juejing','yinguo'],
['boss_juejing','qingjian'],
['shangshi','rende'], ['shangshi','rende'],
['shangshi','yinguo'], ['shangshi','yinguo'],
['shangshi','qingjian'], ['shangshi','qingjian'],
['rende','relianying'], ['rende','relianying'],
['yinguo','relianying'], ['yinguo','relianying'],
// ['sajin','relianying'],
['shenxing','relianying'], ['shenxing','relianying'],
['qingjian','relianying'], ['qingjian','relianying'],
['rende','yuling'], ['rende','yuling'],
@ -355,3 +356,4 @@ window.card={};
window.character={}; window.character={};
window.play={}; window.play={};
window.background={}; window.background={};
window.music={};

View File

@ -91,6 +91,7 @@
} }
else{ else{
ui.arena.classList.remove('low_performance'); ui.arena.classList.remove('low_performance');
if(ui.me){
var hs=ui.me.querySelectorAll('.handcards>.card'); var hs=ui.me.querySelectorAll('.handcards>.card');
for(var i=0;i<hs.length;i++){ for(var i=0;i<hs.length;i++){
hs[i].style.transform=''; hs[i].style.transform='';
@ -101,6 +102,7 @@
ui.updateh(true); ui.updateh(true);
} }
} }
}
}, },
confirm_exit:{ confirm_exit:{
name:'确认退出', name:'确认退出',
@ -871,14 +873,7 @@
background_music:{ background_music:{
name:'背景音乐', name:'背景音乐',
init:true, init:true,
item:{ item:{},
music_default:'默认',
music_diaochan:'貂蝉',
music_shezhan:'舌战',
music_danji:'单骑',
music_random:'随机',
music_off:'关闭',
},
onclick:function(item){ onclick:function(item){
game.saveConfig('background_music',item); game.saveConfig('background_music',item);
game.playBackgroundMusic(); game.playBackgroundMusic();
@ -2068,6 +2063,8 @@
'<div style="margin:10px">明忠</div><ul style="margin-top:0"><li>本模式需要8名玩家进行游戏使用的身份牌为1主公、2忠臣、4反贼和1内奸。游戏开始时每名玩家随机获得一个身份由系统随机选择一名忠臣身份的玩家亮出身份将忠臣牌正面朝上放在面前其他身份包括主公的玩家不亮出身份。<li>'+ '<div style="margin:10px">明忠</div><ul style="margin-top:0"><li>本模式需要8名玩家进行游戏使用的身份牌为1主公、2忠臣、4反贼和1内奸。游戏开始时每名玩家随机获得一个身份由系统随机选择一名忠臣身份的玩家亮出身份将忠臣牌正面朝上放在面前其他身份包括主公的玩家不亮出身份。<li>'+
'首先由亮出身份的忠臣玩家随机获得六张武将牌,挑选一名角色,并将选好的武将牌展示给其他玩家。之后其余每名玩家随机获得三张武将牌,各自从其中挑选一张同时亮出<li>'+ '首先由亮出身份的忠臣玩家随机获得六张武将牌,挑选一名角色,并将选好的武将牌展示给其他玩家。之后其余每名玩家随机获得三张武将牌,各自从其中挑选一张同时亮出<li>'+
'亮出身份牌的忠臣增加1点体力上限。角色濒死和死亡的结算及胜利条件与普通身份局相同。', '亮出身份牌的忠臣增加1点体力上限。角色濒死和死亡的结算及胜利条件与普通身份局相同。',
},
help2:{
'战棋模式': '战棋模式':
'<div style="margin:10px">对阵模式</div><ul style="margin-top:0"><li>n人对战n人的模式由单人控制开始游戏后随机分配位置与出牌顺序<li>'+ '<div style="margin:10px">对阵模式</div><ul style="margin-top:0"><li>n人对战n人的模式由单人控制开始游戏后随机分配位置与出牌顺序<li>'+
'每人在出牌阶段有一次移动的机会可移动的最大距离为2<li>'+ '每人在出牌阶段有一次移动的机会可移动的最大距离为2<li>'+
@ -2273,6 +2270,7 @@
lib.config.all.characters=[]; lib.config.all.characters=[];
lib.config.all.cards=[]; lib.config.all.cards=[];
lib.config.all.plays=[]; lib.config.all.plays=[];
lib.config.all.mode=[];
var charlist=['standard','wind','fire','woods','mountain','guozhan','sp','yijiang','extra','refresh']; var charlist=['standard','wind','fire','woods','mountain','guozhan','sp','yijiang','extra','refresh'];
for(i in character.pack){ for(i in character.pack){
@ -2287,15 +2285,33 @@
lib.config.all.plays.push(i); lib.config.all.plays.push(i);
lib.translate[i+'_play_config']=play.pack[i]; lib.translate[i+'_play_config']=play.pack[i];
} }
for(i in mode.pack){
lib.config.all.mode.push(i);
lib.translate[i]=mode.pack[i];
}
if(background&&background.pack){ if(background&&background.pack){
for(i in background.pack){ for(i in background.pack){
lib.configMenu.appearence.config.image_background.item[i]=background.pack[i]; lib.configMenu.appearence.config.image_background.item[i]=background.pack[i];
} }
delete window.background; }
if(music&&music.pack){
for(i in music.pack){
lib.configMenu.audio.config.background_music.item[i]=music.pack[i];
}
} }
delete character.pack; delete character.pack;
delete card.pack; delete card.pack;
delete play.pack; delete play.pack;
delete mode.pack;
delete window.background;
delete window.music;
if(lib.config.all.mode.indexOf('chess')!=-1){
for(var i in lib.help2){
lib.help[i]=lib.help2[i];
}
}
delete lib.help2;
lib.init.js('mode',lib.config.mode); lib.init.js('mode',lib.config.mode);
lib.init.js('card',lib.config.all.cards); lib.init.js('card',lib.config.all.cards);
@ -7957,24 +7973,6 @@
ui.controls.remove(this); ui.controls.remove(this);
this.delete(); this.delete();
// if(!this._nomove){
// var that=this;
// setTimeout(function(){
// var nc=true;
// for(var i=0;i<ui.control.childNodes.length;i++){
// if(!ui.control.childNodes[i].classList.contains('removing')){
// nc=false;break;
// }
// }
// if(!nc){
// that.style.transform='scale(0.8)';
// }
// ui.updatec();
// },100);
// }
// else{
// ui.updatec();
// }
setTimeout(ui.updatec,100); setTimeout(ui.updatec,100);
@ -8829,10 +8827,10 @@
var me=game.playerMap[content[0]]; var me=game.playerMap[content[0]];
var player=game.playerMap[content[1]]; var player=game.playerMap[content[1]];
if(me){ if(me){
me.node.avatar.classList.remove('glow2'); me.classList.remove('current_action');
} }
if(player){ if(player){
player.node.avatar.classList.add('glow2'); player.classList.add('current_action');
} }
}, },
chessgainmod:function(player,num){ chessgainmod:function(player,num){
@ -9599,14 +9597,9 @@
player.node.handcards1.innerHTML=''; player.node.handcards1.innerHTML='';
player.node.handcards2.innerHTML=''; player.node.handcards2.innerHTML='';
player.directgain(cards,false); player.directgain(cards,false);
if(lib.config.low_performance){
game.me.node.handcards1.remove(); game.me.node.handcards1.remove();
game.me.node.handcards2.remove(); game.me.node.handcards2.remove();
}
else{
game.me.node.handcards1.delete();
game.me.node.handcards2.delete();
}
ui.handcards1=player.node.handcards1.animate('start').fix(); ui.handcards1=player.node.handcards1.animate('start').fix();
ui.handcards2=player.node.handcards2.animate('start').fix(); ui.handcards2=player.node.handcards2.animate('start').fix();
@ -11007,14 +11000,10 @@
}, },
swapControl:function(player){ swapControl:function(player){
if(player==game.me) return; if(player==game.me) return;
if(lib.config.low_performance){
game.me.node.handcards1.remove(); game.me.node.handcards1.remove();
game.me.node.handcards2.remove(); game.me.node.handcards2.remove();
}
else{
game.me.node.handcards1.delete();
game.me.node.handcards2.delete();
}
game.me=player; game.me=player;
ui.handcards1=player.node.handcards1.animate('start').fix(); ui.handcards1=player.node.handcards1.animate('start').fix();
ui.handcards2=player.node.handcards2.animate('start').fix(); ui.handcards2=player.node.handcards2.animate('start').fix();
@ -11754,7 +11743,8 @@
if(lib.character[i][4].contains('minskin')) continue; if(lib.character[i][4].contains('minskin')) continue;
if(lib.character[i][4].contains('boss')&&! if(lib.character[i][4].contains('boss')&&!
lib.character[i][4].contains('bossallowed')) continue; lib.character[i][4].contains('bossallowed')) continue;
if(lib.character[i][4].contains('hiddenboss')) continue; if(lib.character[i][4].contains('hiddenboss')&&!
lib.character[i][4].contains('bossallowed')) continue;
if(filter&&filter(i)) continue; if(filter&&filter(i)) continue;
list.push(i); list.push(i);
if(namecapt.indexOf(getCapt(i))==-1){ if(namecapt.indexOf(getCapt(i))==-1){
@ -11970,7 +11960,6 @@
// } // }
var i,controls; var i,controls;
var nozoom=false; var nozoom=false;
var noupdate=false;
if(get.objtype(arguments[0])=='array') controls=arguments[0]; if(get.objtype(arguments[0])=='array') controls=arguments[0];
else controls=arguments; else controls=arguments;
var control=ui.create.div('.control'); var control=ui.create.div('.control');
@ -11985,9 +11974,6 @@
else if(controls[i]=='nozoom'){ else if(controls[i]=='nozoom'){
nozoom=true; nozoom=true;
} }
else if(controls[i]=='noupdate'){
noupdate=true;
}
else{ else{
control.add(controls[i]); control.add(controls[i]);
} }
@ -12016,7 +12002,7 @@
ui.refresh(control); ui.refresh(control);
control.style.transition=''; control.style.transition='';
} }
if(!noupdate) ui.updatec(); ui.updatec();
return control; return control;
}, },
confirm:function(str,func){ confirm:function(str,func){
@ -12074,15 +12060,18 @@
delete ui.skills; delete ui.skills;
} }
if(skills==undefined||skills.length==0) return; if(skills==undefined||skills.length==0) return;
ui.skills=ui.create.control(skills.concat([ui.click.skill]),'noupdate'); if(!_status.event.isMine()){
_status.noupdatec=true;
}
ui.skills=ui.create.control(skills.concat([ui.click.skill]));
if(!_status.event.isMine()){ if(!_status.event.isMine()){
ui.skills.style.display='none'; ui.skills.style.display='none';
} }
else{ else{
ui.updatec(); ui.updatec();
} }
_status.noupdatec=false;
ui.skills.skills=skills; ui.skills.skills=skills;
ui.skills._nomove=true;
return ui.skills; return ui.skills;
}, },
skills2:function(skills){ skills2:function(skills){
@ -12102,13 +12091,17 @@
delete ui.skills2; delete ui.skills2;
} }
if(skills==undefined||skills.length==0) return; if(skills==undefined||skills.length==0) return;
ui.skills2=ui.create.control(skills.concat([ui.click.skill]),'noupdate'); if(!_status.event.isMine()){
_status.noupdatec=true;
}
ui.skills2=ui.create.control(skills.concat([ui.click.skill]));
if(!_status.event.isMine()){ if(!_status.event.isMine()){
ui.skills2.style.display='none'; ui.skills2.style.display='none';
} }
else{ else{
ui.updatec(); ui.updatec();
} }
_status.noupdatec=false;
ui.skills2.skills=skills; ui.skills2.skills=skills;
return ui.skills2; return ui.skills2;
}, },
@ -12129,13 +12122,17 @@
delete ui.skills3; delete ui.skills3;
} }
if(skills==undefined||skills.length==0) return; if(skills==undefined||skills.length==0) return;
ui.skills3=ui.create.control(skills.concat([ui.click.skill]),'noupdate'); if(!_status.event.isMine()){
_status.noupdatec=true;
}
ui.skills3=ui.create.control(skills.concat([ui.click.skill]));
if(!_status.event.isMine()){ if(!_status.event.isMine()){
ui.skills3.style.display='none'; ui.skills3.style.display='none';
} }
else{ else{
ui.updatec(); ui.updatec();
} }
_status.noupdatec=false;
ui.skills3.skills=skills; ui.skills3.skills=skills;
return ui.skills3; return ui.skills3;
}, },
@ -17113,6 +17110,7 @@
} }
}, },
updatec:function(){ updatec:function(){
if(_status.noupdatec) return;
var length=0; var length=0;
var controls=[]; var controls=[];
var widths=[]; var widths=[];
@ -17322,6 +17320,17 @@
} }
return cards; return cards;
}, },
verticalStr:function(str){
if(typeof str!='string') return '';
var str2='';
for(var i=0;i<str.length;i++){
str2+=str[i];
if(i<str.length-1){
str2+='<br>';
}
}
return str2;
},
time:function(){ time:function(){
if(lib.status.dateDelaying){ if(lib.status.dateDelaying){
return lib.getUTC(lib.status.dateDelaying)-lib.getUTC(lib.status.date)-lib.status.dateDelayed; return lib.getUTC(lib.status.dateDelaying)-lib.getUTC(lib.status.date)-lib.status.dateDelayed;

View File

@ -41,6 +41,14 @@ play.pack={
wuxing:'五行生克', wuxing:'五行生克',
weather:'天气变化', weather:'天气变化',
}; };
mode.pack={
identity:'身份',
guozhan:'国战',
versus:'对决',
boss:'挑战',
chess:'战棋',
stone:'炉石',
};
background.pack={ background.pack={
huangyueying_bg:'逐墨', huangyueying_bg:'逐墨',
zhulian_bg:'璧合', zhulian_bg:'璧合',
@ -52,3 +60,11 @@ background.pack={
yinxiang_bg:'印象', yinxiang_bg:'印象',
huangtian_bg:'黄天', huangtian_bg:'黄天',
}; };
music.pack={
music_default:'默认',
music_diaochan:'貂蝉',
music_shezhan:'舌战',
music_danji:'单骑',
music_random:'随机',
music_off:'关闭',
}

View File

@ -4,7 +4,11 @@ html{width: 100%;height: 100%;font-size: 16px;cursor: default;overflow: hidden;
-moz-user-select:none; -moz-user-select:none;
-webkit-user-select:none; -webkit-user-select:none;
-webkit-font-smoothing: subpixel-antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);} -webkit-font-smoothing: subpixel-antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);}
body{width: 100%;height: 100%;padding: 0; margin: 0;text-rendering:optimizeLegibility;font-family:'STHeiti','SimHei','Microsoft JhengHei','Microsoft YaHei','WenQuanYi Micro Hei',Helvetica,Arial,sans-serif} body{
width: 100%;height: 100%;padding: 0; margin: 0;
text-rendering:optimizeLegibility;
font-family:'STHeiti','SimHei','Microsoft JhengHei','Microsoft YaHei','WenQuanYi Micro Hei',Helvetica,Arial,sans-serif
}
div{display: inline-block;position: absolute;transition: all 0.5s;} div{display: inline-block;position: absolute;transition: all 0.5s;}
table{table-layout: fixed;} table{table-layout: fixed;}
/*--------场景--------*/ /*--------场景--------*/
@ -31,6 +35,11 @@ table{table-layout: fixed;}
#arena[data-global_font='huangcao']{ #arena[data-global_font='huangcao']{
font-family: 'huangcao','xinwei'; font-family: 'huangcao','xinwei';
} }
#arena[data-global_font='xiaozhuan'] #control,
#arena[data-global_font='xinwei'] #control,
#arena[data-global_font='huangcao'] #control{
font-family:'STHeiti','SimHei','Microsoft JhengHei','Microsoft YaHei','WenQuanYi Micro Hei',Helvetica,Arial,sans-serif
}
/*#arena[data-font_size='14']{ /*#arena[data-font_size='14']{
font-size:14px; font-size:14px;
} }
@ -149,7 +158,7 @@ table{table-layout: fixed;}
margin-left: 2px; margin-left: 2px;
margin-right: 10px; margin-right: 10px;
} }
#arena.single-handcard #handcards1{width: 100%;} #arena.single-handcard #handcards1{width: calc(100% - 120px);left:120px;}
#arena.single-handcard #handcards2{display: none;} #arena.single-handcard #handcards2{display: none;}
#system{padding: 6px;width: calc(100% - 12px);white-space: nowrap;z-index: 3;pointer-events: none} #system{padding: 6px;width: calc(100% - 12px);white-space: nowrap;z-index: 3;pointer-events: none}
#system>div{height: 100%;position: relative;margin: 0;padding: 0;} #system>div{height: 100%;position: relative;margin: 0;padding: 0;}
@ -439,8 +448,8 @@ margin-bottom: 5px;
.player>.avatar>.action:not(.freecolor){ .player>.avatar>.action:not(.freecolor){
text-shadow: black 0 0 1px, rgba(10, 155, 67, 1) 0 0 5px, rgba(10, 155, 67, 1) 0 0 10px; text-shadow: black 0 0 1px, rgba(10, 155, 67, 1) 0 0 5px, rgba(10, 155, 67, 1) 0 0 10px;
} }
.player>.avatar:not(.glow2)>.action{opacity: 0} .player:not(.current_action) .avatar>.action{opacity: 0}
#arena.chess:not(.selecting) .player>.avatar.glow2>.action{opacity: 0} #arena.chess:not(.selecting) .player.current_action .avatar>.action{opacity: 0}
.player.controlfakeme{width:100px;height:120px;top:calc(100% - 140px)} .player.controlfakeme{width:100px;height:120px;top:calc(100% - 140px)}
.player.controlfakeme>.avatar{width: 100%;height: 100%;box-shadow: none;left: 0;top: 0} .player.controlfakeme>.avatar{width: 100%;height: 100%;box-shadow: none;left: 0;top: 0}
.player{z-index: 2;width: 240px;height: 120px;} .player{z-index: 2;width: 240px;height: 120px;}
@ -616,8 +625,14 @@ margin-bottom: 5px;
.unseen2>.avatar2,.unseen2>.name2{opacity: 0 !important;} .unseen2>.avatar2,.unseen2>.name2{opacity: 0 !important;}
.player[data-position='0'].unseen>.avatar, .player[data-position='0'].unseen>.avatar,
.player[data-position='0'].unseen2>.avatar2, .player[data-position='0'].unseen2>.avatar2,
.player[data-position='0'].unseen>.name, .player[data-position='0'].unseen>.name:not(.name2):not(.name_seat),
.player[data-position='0'].unseen2>.name{opacity: 0.2 !important} .player[data-position='0'].unseen2>.name2{opacity: 0.2 !important}
.player>.name_seat{
opacity: 0;
}
.player:not([data-position='0']).unseen.unseen2>.name_seat{
opacity: 1 !important;
}
.linked>.avatar,.linked>.avatar2{transform:rotate(-90deg);} .linked>.avatar,.linked>.avatar2{transform:rotate(-90deg);}
.linked>.avatar2{top: 5px;} .linked>.avatar2{top: 5px;}
.linked>.identity{top: 88px;} .linked>.identity{top: 88px;}
@ -766,6 +781,16 @@ margin-bottom: 5px;
opacity: 0; opacity: 0;
transform: scale(0.2) !important; transform: scale(0.2) !important;
} }
#me>.fakeme.avatar{
width:120px;
height:120px;
border-radius:8px;
top:10px;
left:10px;
background-size:cover;
}
.card.removing{transform:scale(0);} .card.removing{transform:scale(0);}
#me>div>div>.card.removing{margin-left: -52px;margin-right: -52px;} #me>div>div>.card.removing{margin-left: -52px;margin-right: -52px;}
.card.thrown.removing{width: 104px;height: 104px;transform:none} .card.thrown.removing{width: 104px;height: 104px;transform:none}
@ -1181,7 +1206,8 @@ div:hover>.wunature{
.glow{ .glow{
box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px, rgba(0, 133, 255, 0.4) 0 0 5px, rgba(0, 133, 255, 0.5) 0 0 12px, rgba(0, 133, 255, 0.8) 0 0 15px !important; box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px, rgba(0, 133, 255, 0.4) 0 0 5px, rgba(0, 133, 255, 0.5) 0 0 12px, rgba(0, 133, 255, 0.8) 0 0 15px !important;
} }
.glow2:not(.player.glow_phase)>.avatar{ .glow2:not(.player.glow_phase)>.avatar,
.player.current_action .avatar{
/*-webkit-animation:control_glow 4s infinite;*/ /*-webkit-animation:control_glow 4s infinite;*/
box-shadow: rgba(0, 0, 0, 0.3) 0 0 0 1px, rgba(10, 155, 67, 1) 0 0 15px, rgba(10, 155, 67, 1) 0 0 15px !important; box-shadow: rgba(0, 0, 0, 0.3) 0 0 0 1px, rgba(10, 155, 67, 1) 0 0 15px, rgba(10, 155, 67, 1) 0 0 15px !important;
} }

View File

@ -404,7 +404,7 @@
.menubutton.active{ .menubutton.active{
background-image: linear-gradient(rgba(47,101,150,1), rgba(43, 90, 132,1)); background-image: linear-gradient(rgba(47,101,150,1), rgba(43, 90, 132,1));
} }
#system>div>.pressdown,.controlpressdown,.pressdown_delay{ #system>div>.pressdown{
transform: scale(0.97); transform: scale(0.97);
} }
.controlpressdownx{ .controlpressdownx{

View File

@ -112,10 +112,14 @@
} }
#arena:not(.chess) .player[data-position='0']:not(.minskin)>.count{ #arena:not(.chess) .player[data-position='0']:not(.minskin)>.count{
bottom:10px; bottom:10px;
border-radius: 0 2px 2px 0;
left:-1px;
z-index: 3;
text-align: right;
} }
#arena:not(.chess).slim_player .player[data-position='0']:not(.minskin)>.count{ #arena:not(.chess).slim_player .player[data-position='0']:not(.minskin)>.count{
border-radius: 0 2px 2px 0; border-radius: 0 2px 2px 0;
left:-4px; left:-1px;
z-index: 3; z-index: 3;
text-align: right; text-align: right;
} }
@ -186,6 +190,15 @@
top: 40px !important; top: 40px !important;
} }
#me>.fakeme.avatar{
width:120px;
height:120px;
border-radius:0px;
top:0;
left:0;
background-size:cover;
}
@media screen and (min-height: 800px) and (orientation:landscape) { @media screen and (min-height: 800px) and (orientation:landscape) {
#arena{height: 780px;top: calc(50% - 350px);} #arena{height: 780px;top: calc(50% - 350px);}
#arena:not(.chess)>#me, #arena:not(.chess)>#me,

View File

@ -40,7 +40,7 @@
position:relative; position:relative;
margin:10px; margin:10px;
left:0; left:0;
top:0; top:4px;
width:180px; width:180px;
height:216px; height:216px;
transition: all 0.3s; transition: all 0.3s;

View File

@ -185,7 +185,7 @@
left:-3px; left:-3px;
padding:2px; padding:2px;
line-height:20px; line-height:20px;
width:10px; width:8px;
text-align:left; text-align:left;
border-radius:2px; border-radius:2px;
z-index:1; z-index:1;

View File

@ -217,13 +217,13 @@ mode.boss={
if(game.me!==boss){ if(game.me!==boss){
game.singleHandcard=true; game.singleHandcard=true;
ui.arena.classList.add('single-handcard'); ui.arena.classList.add('single-handcard');
ui.fakeme=ui.create.div('.player.controlfakeme'); ui.fakeme=ui.create.div('.fakeme.avatar',ui.me);
ui.fakeme.dataset.position=0; // ui.fakeme.dataset.position=0;
ui.fakeme.line=lib.element.player.line; // ui.fakeme.line=lib.element.player.line;
ui.fakemebg=ui.create.div('.avatar',ui.fakeme).hide(); // ui.fakemebg=ui.create.div('.avatar',ui.fakeme).hide();
ui.refresh(ui.fakemebg); // ui.refresh(ui.fakemebg);
game.onSwapControl(); game.onSwapControl();
ui.fakemebg.show(); // ui.fakemebg.show();
lib.setPopped(ui.create.system('查看手牌',null,true),function(){ lib.setPopped(ui.create.system('查看手牌',null,true),function(){
var uiintro=ui.create.dialog('hidden'); var uiintro=ui.create.dialog('hidden');
@ -383,14 +383,14 @@ mode.boss={
if(ui.fakeme&&ui.fakeme.current!=name){ if(ui.fakeme&&ui.fakeme.current!=name){
ui.fakeme.current=name; ui.fakeme.current=name;
if(ui.versushighlight&&ui.versushighlight!=game.me){ if(ui.versushighlight&&ui.versushighlight!=game.me){
ui.versushighlight.node.avatar.classList.remove('glow2'); ui.versushighlight.classList.remove('current_action');
} }
ui.versushighlight=game.me; ui.versushighlight=game.me;
game.me.node.avatar.classList.add('glow2'); game.me.classList.add('current_action');
// game.me.line(ui.fakeme,{opacity:0.5,dashed:true}); // game.me.line(ui.fakeme,{opacity:0.5,dashed:true});
ui.fakemebg.style.backgroundImage=game.me.node.avatar.style.backgroundImage; ui.fakeme.style.backgroundImage=game.me.node.avatar.style.backgroundImage;
ui.fakemebg.style.backgroundSize='cover'; // ui.fakeme.style.backgroundSize='cover';
} }
ui.updateh(true); ui.updateh(true);
}, },

View File

@ -1133,6 +1133,7 @@ mode.chess={
_status.friends.push(player); _status.friends.push(player);
if(!game.me.name){ if(!game.me.name){
game.me=player; game.me=player;
game.me.classList.add('current_action');
ui.me.lastChild.show(); ui.me.lastChild.show();
ui.create.fakeme(); ui.create.fakeme();
ui.handcards1=player.node.handcards1.animate('start').fix(); ui.handcards1=player.node.handcards1.animate('start').fix();
@ -1959,6 +1960,7 @@ mode.chess={
else{ else{
event.trigger('gameStart'); event.trigger('gameStart');
game.gameDraw(p); game.gameDraw(p);
game.me.classList.add('current_action');
if(get.config('chess_mode')=='leader'){ if(get.config('chess_mode')=='leader'){
game.phaseLoopOrdered(p); game.phaseLoopOrdered(p);
} }
@ -3697,8 +3699,8 @@ mode.chess={
}, },
modeSwapPlayer:function(player){ modeSwapPlayer:function(player){
var content=[game.me.dataset.position,player.dataset.position]; var content=[game.me.dataset.position,player.dataset.position];
game.me.node.avatar.classList.remove('glow2'); game.me.classList.remove('current_action');
player.node.avatar.classList.add('glow2'); player.classList.add('current_action');
game.addVideo('chessSwap',null,content); game.addVideo('chessSwap',null,content);
game.swapControl(player); game.swapControl(player);
player.chessFocus(); player.chessFocus();

View File

@ -80,6 +80,10 @@ mode.guozhan={
_status.auto=true; _status.auto=true;
ui.auto.classList.add('glow'); ui.auto.classList.add('glow');
} }
for(var i=0;i<game.players.length;i++){
game.players[i].node.name.hide();
game.players[i].node.name2.hide();
}
game.chooseCharacter(); game.chooseCharacter();
"step 2" "step 2"
if(lib.storage.test){ if(lib.storage.test){
@ -109,6 +113,7 @@ mode.guozhan={
game.gameDraw(player); game.gameDraw(player);
for(var i=0;i<game.players.length;i++){ for(var i=0;i<game.players.length;i++){
game.players[i].name='unknown'+get.distance(player,game.players[i],'absolute'); game.players[i].name='unknown'+get.distance(player,game.players[i],'absolute');
game.players[i].node.name_seat=ui.create.div('.name.name_seat',get.verticalStr(lib.translate[game.players[i].name]),game.players[i]);
if(game.players[i]==game.me){ if(game.players[i]==game.me){
lib.translate[game.players[i].name]+='(你)'; lib.translate[game.players[i].name]+='(你)';
} }
@ -203,6 +208,10 @@ mode.guozhan={
if(_status.dragged) return; if(_status.dragged) return;
if(_status.cheat_seat){ if(_status.cheat_seat){
_status.cheat_seat.classList.remove('thundertext'); _status.cheat_seat.classList.remove('thundertext');
if(_status.cheat_seat==this){
delete _status.cheat_seat;
return;
}
} }
this.classList.add('thundertext'); this.classList.add('thundertext');
_status.cheat_seat=this; _status.cheat_seat=this;
@ -366,6 +375,8 @@ mode.guozhan={
game.players[i].name1=game.players[i].name; game.players[i].name1=game.players[i].name;
game.players[i].name='unknown'; game.players[i].name='unknown';
game.players[i].identity='unknown'; game.players[i].identity='unknown';
game.players[i].node.name.show();
game.players[i].node.name2.show();
for(var j=0;j<game.players[i].hiddenSkills.length;j++){ for(var j=0;j<game.players[i].hiddenSkills.length;j++){
var ifo=get.info(game.players[i].hiddenSkills[j]); var ifo=get.info(game.players[i].hiddenSkills[j]);
if(ifo.init){ if(ifo.init){

View File

@ -435,11 +435,14 @@ mode.versus={
} }
game.singleHandcard=true; game.singleHandcard=true;
ui.arena.classList.add('single-handcard'); ui.arena.classList.add('single-handcard');
ui.fakeme=ui.create.div('.player.controlfakeme'); ui.fakeme=ui.create.div('.fakeme.avatar');
ui.fakeme.line=lib.element.player.line; // ui.fakeme.line=lib.element.player.line;
ui.fakemebg=ui.create.div('.avatar',ui.fakeme).hide(); // ui.fakemebg=ui.create.div('.avatar',ui.fakeme).hide();
} }
ui.create.me(); ui.create.me();
if(ui.fakeme){
ui.me.appendChild(ui.fakeme);
}
var position,i; var position,i;
if(lib.storage.zhu&&lib.storage.only_zhu) position=Math.ceil(num/2)-1; if(lib.storage.zhu&&lib.storage.only_zhu) position=Math.ceil(num/2)-1;
else position=Math.floor(Math.random()*num) else position=Math.floor(Math.random()*num)
@ -581,7 +584,7 @@ mode.versus={
_status.friend.splice(0,num); _status.friend.splice(0,num);
_status.enemy.splice(0,num); _status.enemy.splice(0,num);
if(lib.storage.single_control&&lib.storage.control_all&&game.players.length>=4){ if(lib.storage.single_control&&lib.storage.control_all&&game.players.length>=4){
ui.fakemebg.show(); // ui.fakemebg.show();
game.onSwapControl(); game.onSwapControl();
} }
@ -959,22 +962,23 @@ mode.versus={
if(ui.fakeme&&ui.fakeme.current!=name){ if(ui.fakeme&&ui.fakeme.current!=name){
ui.fakeme.current=name; ui.fakeme.current=name;
if(ui.versushighlight&&ui.versushighlight!=game.me){ if(ui.versushighlight&&ui.versushighlight!=game.me){
ui.versushighlight.node.avatar.classList.remove('glow2'); ui.versushighlight.classList.remove('current_action');
} }
ui.versushighlight=game.me; ui.versushighlight=game.me;
game.me.node.avatar.classList.add('glow2'); game.me.classList.add('current_action');
// game.me.line(ui.fakeme,{opacity:0.5,dashed:true}); // game.me.line(ui.fakeme,{opacity:0.5,dashed:true});
var info=lib.character[name]; ui.fakeme.style.backgroundImage=game.me.node.avatar.style.backgroundImage;
if(lib.config.layout=='newlayout'&&info[4]&&info[4].contains('fullskin')){ // var info=lib.character[name];
ui.fakeme.classList.add('fullskin'); // if(lib.config.layout=='newlayout'&&info[4]&&info[4].contains('fullskin')){
ui.fakemebg.style.backgroundImage='url("image/character/'+name+'.jpg")'; // // ui.fakeme.classList.add('fullskin');
ui.fakemebg.style.backgroundSize='cover'; // ui.fakeme.style.backgroundImage='url("image/character/'+name+'.jpg")';
} // ui.fakeme.style.backgroundSize='cover';
else{ // }
ui.fakeme.classList.remove('fullskin'); // else{
ui.fakemebg.setBackground(name,'character'); // ui.fakeme.classList.remove('fullskin');
} // ui.fakemebg.setBackground(name,'character');
// }
} }
}, },
modeSwapPlayer:function(player){ modeSwapPlayer:function(player){

View File

@ -10,6 +10,9 @@ html{
background-image: linear-gradient(#4b4b4b, #464646); background-image: linear-gradient(#4b4b4b, #464646);
border-radius: 8px; border-radius: 8px;
} }
/*.player.current_action{
background-image: linear-gradient(rgba(57, 123, 4,1), rgb(48, 103, 3));
}*/
#window>.dialog.popped{ #window>.dialog.popped{
border-radius: 6px; border-radius: 6px;
} }
@ -36,6 +39,12 @@ html{
#me>div>div>.card,#arena>.card:not(*:empty){ #me>div>div>.card,#arena>.card:not(*:empty){
box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px, rgba(0, 0, 0, 0.45) 0 3px 10px; box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px, rgba(0, 0, 0, 0.45) 0 3px 10px;
} }
#system>div>.glow {
background-image: linear-gradient(rgba(47,101,150,1), rgba(43, 90, 132,1));
box-shadow: rgba(0, 0, 0, 0.4) 0 0 0 1px, rgba(0, 0, 0, 0.2) 0 3px 10px !important;
}
.fire{ .fire{
color: rgb(255,119,63); color: rgb(255,119,63);
} }

View File

@ -21,6 +21,9 @@ body{
background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)); background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4));
border-radius: 8px; border-radius: 8px;
} }
/*.player.current_action{
background-image: linear-gradient(rgba(47,101,150,1), rgba(43, 90, 132,1));
}*/
.menubutton{ .menubutton{
border-radius: 4px; border-radius: 4px;
} }
@ -72,6 +75,10 @@ body{
background-size: cover; background-size: cover;
} }
#system>div>.glow{
background-image: linear-gradient(rgba(47,101,150,1), rgba(43, 90, 132,1));
box-shadow: rgba(0, 0, 0, 0.4) 0 0 0 1px, rgba(0, 0, 0, 0.2) 0 3px 10px !important;
}
.menupaused{ .menupaused{
opacity: 0.3; opacity: 0.3;