diff --git a/CHANGELOG.MD b/CHANGELOG.MD
index 46c7f7ba0..6a623ecda 100644
--- a/CHANGELOG.MD
+++ b/CHANGELOG.MD
@@ -1,4 +1,5 @@
-1.5.6
-修复安卓版的两个显示问题
-按钮效果
-不对敌将用桃选项
+1.5.7
+对决模式改进
+屏蔽强将选项
+卡牌、卡背、体力条样式
+新武将
diff --git a/README.md b/README.md
index 3c16af003..8fc61f9d0 100755
--- a/README.md
+++ b/README.md
@@ -4,8 +4,9 @@
#####运行
使用chrome(推荐)或safari打开index.html
#####升级
-windows:覆盖resources/app文件夹下的同名文件
-mac:覆盖contents/resources/app下的同名文件
+windows:覆盖resources/app文件夹内的同名文件
+mac:右键显示包内容,覆盖contents/resources/app文件夹内的同名文件
+android:用解压软件打开apk文件,覆盖assets/www文件夹内的同名文件
####选项设置
#####通用
diff --git a/audio/die/st_gongsunzan.mp3 b/audio/die/re_gongsunzan.mp3
similarity index 100%
rename from audio/die/st_gongsunzan.mp3
rename to audio/die/re_gongsunzan.mp3
diff --git a/audio/die/heg_luxun.mp3 b/audio/die/re_luxun.mp3
similarity index 100%
rename from audio/die/heg_luxun.mp3
rename to audio/die/re_luxun.mp3
diff --git a/audio/die/kof_sunshangxiang.mp3 b/audio/die/re_sunshangxiang.mp3
similarity index 100%
rename from audio/die/kof_sunshangxiang.mp3
rename to audio/die/re_sunshangxiang.mp3
diff --git a/audio/die/heg_caohong.mp3 b/audio/die/sp_caohong.mp3
similarity index 100%
rename from audio/die/heg_caohong.mp3
rename to audio/die/sp_caohong.mp3
diff --git a/audio/die/neo_caoren.mp3 b/audio/die/sp_caoren.mp3
similarity index 100%
rename from audio/die/neo_caoren.mp3
rename to audio/die/sp_caoren.mp3
diff --git a/audio/die/heg_dongzhuo.mp3 b/audio/die/sp_dongzhuo.mp3
similarity index 100%
rename from audio/die/heg_dongzhuo.mp3
rename to audio/die/sp_dongzhuo.mp3
diff --git a/audio/die/jsp_guanyu.mp3 b/audio/die/sp_guanyu.mp3
similarity index 100%
rename from audio/die/jsp_guanyu.mp3
rename to audio/die/sp_guanyu.mp3
diff --git a/audio/die/jsp_jiangwei.mp3 b/audio/die/sp_jiangwei.mp3
similarity index 100%
rename from audio/die/jsp_jiangwei.mp3
rename to audio/die/sp_jiangwei.mp3
diff --git a/audio/die/jsp_sunshangxiang.mp3 b/audio/die/sp_sunshangxiang.mp3
similarity index 100%
rename from audio/die/jsp_sunshangxiang.mp3
rename to audio/die/sp_sunshangxiang.mp3
diff --git a/audio/die/neo_xiahoudun.mp3 b/audio/die/sp_xiahoudun.mp3
similarity index 100%
rename from audio/die/neo_xiahoudun.mp3
rename to audio/die/sp_xiahoudun.mp3
diff --git a/audio/die/heg_xusheng.mp3 b/audio/die/sp_xusheng.mp3
similarity index 100%
rename from audio/die/heg_xusheng.mp3
rename to audio/die/sp_xusheng.mp3
diff --git a/audio/die/heg_yuji.mp3 b/audio/die/sp_yuji.mp3
similarity index 100%
rename from audio/die/heg_yuji.mp3
rename to audio/die/sp_yuji.mp3
diff --git a/audio/die/xuchu.mp3 b/audio/die/xuzhu.mp3
similarity index 100%
rename from audio/die/xuchu.mp3
rename to audio/die/xuzhu.mp3
diff --git a/audio/die/xingcai.mp3 b/audio/die/zhangxingcai.mp3
similarity index 100%
rename from audio/die/xingcai.mp3
rename to audio/die/zhangxingcai.mp3
diff --git a/character/gujian.js b/character/gujian.js
index be0b87e79..9ff7d98c6 100755
--- a/character/gujian.js
+++ b/character/gujian.js
@@ -90,6 +90,7 @@ character.gujian={
},
content:function(){
"step 0"
+ player.line(trigger.player,'green');
player.phase();
player.storage.meiying=trigger.player;
"step 1"
diff --git a/character/hearth.js b/character/hearth.js
index 8f066539a..9cba074a7 100755
--- a/character/hearth.js
+++ b/character/hearth.js
@@ -23,6 +23,13 @@ character.hearth={
hs_yngvar:['male','qun',3,['huanwu'],['fullskin']],
hs_bchillmaw:['male','wei',6,['hanshuang','bingshi'],['fullskin']],
hs_malorne:['male','wu',3,['enze','chongsheng'],['fullskin']],
+ hs_malygos:['male','wei',4,['malymowang'],['fullskin']],
+ hs_xuefashi:['male','wei',2,['liehun','xjumo'],['fullskin']],
+ // hs_loatheb:['male','wei',2,[],['fullskin']],
+ // hs_trueheart:['male','wei',2,[],['fullskin']],
+ // hs_sainaliusi:['male','wei',2,[],['fullskin']],
+ // hs_lrhonin:['male','wei',2,[],['fullskin']],
+ hs_bolvar:['male','wei',2,[],['fullskin']],
hs_ronghejuren:['male','shu',8,[],['fullskin']],
hs_edwin:['male','qun',3,['lianzhan'],['fullskin']],
@@ -30,6 +37,9 @@ character.hearth={
hs_huzhixiannv:['female','wu',3,['jingmeng','qingliu'],['fullskin']],
// hs_tgolem:['male','qun',4,['guozai'],['fullskin']],
hs_totemic:['male','wu',3,['s_tuteng'],['fullskin']],
+ hs_xsylvanas:['female','qun',3,['busi','shixin','xmojian'],['fullskin']],
+ hs_siwangzhiyi:['male','qun',12,['mieshi'],['fullskin']],
+ hs_bilanyoulong:['male','wei',4,['lingzhou'],['fullskin']],
},
perfectPair:{
hs_sthrall:['hs_totemic','hs_alakir','hs_neptulon','hs_yngvar','hs_tgolem'],
@@ -38,6 +48,180 @@ character.hearth={
hs_malfurion:['hs_malorne'],
},
skill:{
+ liehun:{
+ trigger:{player:'phaseUseBegin'},
+ forced:true,
+ filter:function(event,player){
+ return player.num('h',{type:'basic'})0){
+ if(noneed&&player==target){
+ num=0.5;
+ }
+ else if(target.hp==1){
+ num+=3;
+ }
+ else if(target.hp==2){
+ num+=1;
+ }
+ }
+ return num;
+ }
+ "step 1"
+ if(result.bool){
+ player.logSkill('lingzhou',result.targets);
+ var target=result.targets[0];
+ if(target.hp=3&&target.num('h')1) player.loseHp();
}
}
},
@@ -8143,7 +8145,7 @@ character.swd={
shengshou_info:'你可以将一张黑色手牌当作草药使用',
susheng_info:'在任意一名角色即将死亡时,你可以弃置一张手牌防止其死亡,并将其体力回复至1,每回合限发动一次',
zhanlu_info:'出牌阶段,你可以弃置一张黑桃牌令至多3名角色各回复一点体力',
- kunlunjing_info:'回合开始前,你可以令场上所有牌还原到你上一回合结束时的位置,此时有其他角色的体力值比你少,你流失一点体力',
+ kunlunjing_info:'回合开始前,你可以令场上所有牌还原到你上一回合结束时的位置,若你此时的体力值大于1,你流失一点体力',
swd_xiuluo_info:'回合开始阶段,你可以弃一张手牌来弃置你判断区里的一张延时类锦囊(必须花色相同)',
xianyin_info:'出牌阶段,你可以令所有判定区内有牌的角色弃置判定区内的牌,然后交给你一张手牌',
qiaoxie_info:'每当你装备一张牌,可摸一张牌,每当你失去一张装备牌(不含替换),你可以弃置其他角色的一张牌',
diff --git a/game/config.js b/game/config.js
index 238a31303..4e1e94a96 100755
--- a/game/config.js
+++ b/game/config.js
@@ -213,6 +213,8 @@ window.config={
theme:'woodden',
layout:'mobile',
card_style:'default',
+ cardback_style:'default',
+ hp_style:'default',
image_character:'default',
image_background:'default',
@@ -239,6 +241,7 @@ window.config={
title:false,
right_sidebar:false,
button_press:true,
+ damage_shake:true,
modeconfig:false,
gameconfig:false,
diff --git a/game/game.js b/game/game.js
index 88798427a..f1e484939 100755
--- a/game/game.js
+++ b/game/game.js
@@ -239,6 +239,12 @@
else{
ui.arena.classList.remove('mobile');
}
+ if(lib.config.layout=='default'&&lib.config.hp_style=='official'){
+ ui.arena.classList.add('hpimage');
+ }
+ else{
+ ui.arena.classList.remove('hpimage');
+ }
setTimeout(function(){
layout.remove();
ui.arena.show();
@@ -368,7 +374,7 @@
},
card_style:{
name:'卡牌样式',
- init:'mobile',
+ init:'default',
item:{
default:'默认',
wood:'木纹',
@@ -378,11 +384,49 @@
onclick:function(layout){
game.saveConfig('card_style',layout);
var style=ui.css.card_style;
- ui.css.card_style=lib.init.css('theme/cardstyle',lib.config.card_style);
+ ui.css.card_style=lib.init.css('theme/style/card',lib.config.card_style);
style.remove();
},
unfrequent:true,
},
+ cardback_style:{
+ name:'卡背样式',
+ init:'default',
+ item:{
+ default:'默认',
+ wood:'木纹',
+ music:'音乐',
+ official:'原版'
+ },
+ onclick:function(layout){
+ game.saveConfig('cardback_style',layout);
+ var style=ui.css.cardback_style;
+ ui.css.cardback_style=lib.init.css('theme/style/cardback',lib.config.cardback_style);
+ style.remove();
+ },
+ unfrequent:true,
+ },
+ hp_style:{
+ name:'体力条样式',
+ init:'default',
+ item:{
+ default:'默认',
+ official:'原版'
+ },
+ onclick:function(layout){
+ game.saveConfig('hp_style',layout);
+ var style=ui.css.hp_style;
+ ui.css.hp_style=lib.init.css('theme/style/hp',lib.config.hp_style);
+ style.remove();
+ if(lib.config.layout=='default'&&lib.config.hp_style=='official'){
+ ui.arena.classList.add('hpimage');
+ }
+ else{
+ ui.arena.classList.remove('hpimage');
+ }
+ },
+ unfrequent:true,
+ },
auto_popped_config:{
name:'自动弹出选项',
init:true,
@@ -602,6 +646,11 @@
}
}
},
+ damage_shake:{
+ name:'伤害抖动',
+ init:true,
+ unfrequent:true,
+ },
button_press:{
name:'按钮效果',
init:true,
@@ -994,6 +1043,11 @@
name:'屏蔽弱将',
init:false,
restart:true,
+ },
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
},
enhance_zhu:{
name:'加强主公',
@@ -1174,6 +1228,11 @@
zonghe:'相加',
},
restart:true,
+ },
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
},
free_choose:{
name:'自由选将',
@@ -1304,6 +1363,12 @@
init:false,
restart:true,
frequent:true,
+ },
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
+ frequent:true,
},
}
},
@@ -1348,6 +1413,12 @@
restart:true,
frequent:true,
},
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
+ frequent:true,
+ },
}
},
chess:{
@@ -1578,6 +1649,11 @@
name:'屏蔽弱将',
init:false,
restart:true,
+ },
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
},
chessscroll_speed:{
name:'边缘滚动速度',
@@ -1651,6 +1727,12 @@
init:false,
restart:true,
frequent:true,
+ },
+ ban_strong:{
+ name:'屏蔽强将',
+ init:false,
+ restart:true,
+ frequent:true,
},
}
}
@@ -1923,7 +2005,9 @@
if(lib.config.threed_card) ui.css.threed=lib.init.css('layout/default','fold2');
if(lib.config.blur_ui) ui.css.blur_ui=lib.init.css('layout/default','blur');
ui.css.theme=lib.init.css('theme/'+lib.config.theme,'style');
- ui.css.card_style=lib.init.css('theme/cardstyle',lib.config.card_style);
+ ui.css.card_style=lib.init.css('theme/style/card',lib.config.card_style);
+ ui.css.cardback_style=lib.init.css('theme/style/cardback',lib.config.cardback_style);
+ ui.css.hp_style=lib.init.css('theme/style/hp',lib.config.hp_style);
lib.config.duration=500;
@@ -3715,7 +3799,7 @@
game.playAudio('die',player.name);
}
else if(lib.config.background_ogg){
- game.playAudio('die',player.name);
+ game.playAudio('die',player.name.slice(player.name.indexOf('_')+1));
}
// else if(lib.config.background_audio){
// game.playAudio('effect','die_'+(player.sex==='female'?'female':'male'));
@@ -6593,7 +6677,7 @@
else{
game.addVideo('damage',this);
}
- if(source&&source!=this){
+ if(source&&source!=this&&lib.config.damage_shake){
var left,top;
if(source.offsetTop==this.offsetTop){
left=20;
@@ -6791,14 +6875,14 @@
}
// this.dataset.position=player.dataset.position;
- if(method=='flip'){
- this.style.transition='all 0.5s';
- this.style.transform='rotate'+(Math.random()<0.5?'X':'Y')+'(180deg) perspective(1000px)';
- }
- else if(method=='rotate'){
- this.style.transition='all 0.5s';
- this.style.transform='rotate(180deg)';
- }
+ // if(method=='flip'){
+ // this.style.transition='all 0.5s';
+ // this.style.transform='rotate'+(Math.random()<0.5?'X':'Y')+'(180deg) perspective(1000px)';
+ // }
+ // else if(method=='rotate'){
+ // this.style.transition='all 0.5s';
+ // this.style.transform='rotate(180deg)';
+ // }
return this;
},
copy:function(){
@@ -10980,7 +11064,7 @@
}
ui.controls.unshift(control);
if(nc){
- ui.control.animate('nozoom');
+ ui.control.animate('nozoom',500);
}
if(lib.config.low_performance||ui.control.classList.contains('nozoom')){
nozoom=true;
@@ -11082,6 +11166,9 @@
if(lib.config.layout=='mobile'||lib.config.layout=='phone'){
ui.arena.classList.add('mobile');
}
+ if(lib.config.layout=='default'&&lib.config.hp_style=='official'){
+ ui.arena.classList.add('hpimage');
+ }
ui.updatePhone();
ui.backgroundMusic=document.createElement('audio');
ui.backgroundMusic.volume=lib.config.volumn_background/8;
@@ -16898,12 +16985,12 @@
},
};
lib.init.init();
- HTMLDivElement.prototype.animate=function(name){
+ HTMLDivElement.prototype.animate=function(name,time){
this.classList.add(name);
var that=this;
setTimeout(function(){
that.classList.remove(name);
- },1000);
+ },time||1000);
return this;
};
HTMLDivElement.prototype.hide=function(){
diff --git a/image/character/default/hs_bilanyoulong.jpg b/image/character/default/hs_bilanyoulong.jpg
new file mode 100644
index 000000000..05057e69a
Binary files /dev/null and b/image/character/default/hs_bilanyoulong.jpg differ
diff --git a/image/character/default/hs_bolvar.jpg b/image/character/default/hs_bolvar.jpg
new file mode 100644
index 000000000..253fbccfc
Binary files /dev/null and b/image/character/default/hs_bolvar.jpg differ
diff --git a/image/character/default/hs_loatheb.jpg b/image/character/default/hs_loatheb.jpg
new file mode 100644
index 000000000..454696aeb
Binary files /dev/null and b/image/character/default/hs_loatheb.jpg differ
diff --git a/image/character/default/hs_lrhonin.jpg b/image/character/default/hs_lrhonin.jpg
new file mode 100644
index 000000000..f0e2bd730
Binary files /dev/null and b/image/character/default/hs_lrhonin.jpg differ
diff --git a/image/character/default/hs_malygos.jpg b/image/character/default/hs_malygos.jpg
new file mode 100644
index 000000000..083c6da5d
Binary files /dev/null and b/image/character/default/hs_malygos.jpg differ
diff --git a/image/character/default/hs_sainaliusi.jpg b/image/character/default/hs_sainaliusi.jpg
new file mode 100644
index 000000000..57d91e567
Binary files /dev/null and b/image/character/default/hs_sainaliusi.jpg differ
diff --git a/image/character/default/hs_siwangzhiyi.jpg b/image/character/default/hs_siwangzhiyi.jpg
new file mode 100644
index 000000000..3c05b3f7a
Binary files /dev/null and b/image/character/default/hs_siwangzhiyi.jpg differ
diff --git a/image/character/default/hs_trueheart.jpg b/image/character/default/hs_trueheart.jpg
new file mode 100644
index 000000000..092b199ae
Binary files /dev/null and b/image/character/default/hs_trueheart.jpg differ
diff --git a/image/character/default/hs_xsylvanas.jpg b/image/character/default/hs_xsylvanas.jpg
new file mode 100755
index 000000000..265ee1760
Binary files /dev/null and b/image/character/default/hs_xsylvanas.jpg differ
diff --git a/image/character/default/hs_xuefashi.jpg b/image/character/default/hs_xuefashi.jpg
new file mode 100644
index 000000000..86551b288
Binary files /dev/null and b/image/character/default/hs_xuefashi.jpg differ
diff --git a/image/character/fullskin/hs_bilanyoulong.jpg b/image/character/fullskin/hs_bilanyoulong.jpg
new file mode 100644
index 000000000..6ad3a72d0
Binary files /dev/null and b/image/character/fullskin/hs_bilanyoulong.jpg differ
diff --git a/image/character/fullskin/hs_bolvar.jpg b/image/character/fullskin/hs_bolvar.jpg
new file mode 100644
index 000000000..f413e15fc
Binary files /dev/null and b/image/character/fullskin/hs_bolvar.jpg differ
diff --git a/image/character/fullskin/hs_loatheb.jpg b/image/character/fullskin/hs_loatheb.jpg
new file mode 100644
index 000000000..71569e267
Binary files /dev/null and b/image/character/fullskin/hs_loatheb.jpg differ
diff --git a/image/character/fullskin/hs_lrhonin.jpg b/image/character/fullskin/hs_lrhonin.jpg
new file mode 100644
index 000000000..67f51c8c1
Binary files /dev/null and b/image/character/fullskin/hs_lrhonin.jpg differ
diff --git a/image/character/fullskin/hs_malygos.jpg b/image/character/fullskin/hs_malygos.jpg
new file mode 100644
index 000000000..7a4e736d8
Binary files /dev/null and b/image/character/fullskin/hs_malygos.jpg differ
diff --git a/image/character/fullskin/hs_sainaliusi.jpg b/image/character/fullskin/hs_sainaliusi.jpg
new file mode 100644
index 000000000..d435f0794
Binary files /dev/null and b/image/character/fullskin/hs_sainaliusi.jpg differ
diff --git a/image/character/fullskin/hs_siwangzhiyi.jpg b/image/character/fullskin/hs_siwangzhiyi.jpg
new file mode 100644
index 000000000..dae580caa
Binary files /dev/null and b/image/character/fullskin/hs_siwangzhiyi.jpg differ
diff --git a/image/character/fullskin/hs_trueheart.jpg b/image/character/fullskin/hs_trueheart.jpg
new file mode 100644
index 000000000..f118c4673
Binary files /dev/null and b/image/character/fullskin/hs_trueheart.jpg differ
diff --git a/image/character/fullskin/hs_xsylvanas.jpg b/image/character/fullskin/hs_xsylvanas.jpg
new file mode 100755
index 000000000..947c92be1
Binary files /dev/null and b/image/character/fullskin/hs_xsylvanas.jpg differ
diff --git a/image/character/fullskin/hs_xuefashi.jpg b/image/character/fullskin/hs_xuefashi.jpg
new file mode 100644
index 000000000..4d4eede13
Binary files /dev/null and b/image/character/fullskin/hs_xuefashi.jpg differ
diff --git a/image/character/fullskin/re_caocao.jpg b/image/character/fullskin/re_caocao.jpg
index 2ad0e3e34..c6abb4ea3 100755
Binary files a/image/character/fullskin/re_caocao.jpg and b/image/character/fullskin/re_caocao.jpg differ
diff --git a/image/character/next/xk_fengchuixue.png b/image/character/next/xk_fengchuixue.png
deleted file mode 100644
index ca0f90c94..000000000
Binary files a/image/character/next/xk_fengchuixue.png and /dev/null differ
diff --git a/image/character/next/xk_heqiujuan.png b/image/character/next/xk_heqiujuan.png
deleted file mode 100644
index 7379cbbc9..000000000
Binary files a/image/character/next/xk_heqiujuan.png and /dev/null differ
diff --git a/image/character/next/xk_jiwen.png b/image/character/next/xk_jiwen.png
deleted file mode 100644
index 1d1e7c8f1..000000000
Binary files a/image/character/next/xk_jiwen.png and /dev/null differ
diff --git a/image/character/next/xk_lanting.png b/image/character/next/xk_lanting.png
deleted file mode 100644
index 34efc5760..000000000
Binary files a/image/character/next/xk_lanting.png and /dev/null differ
diff --git a/image/character/next/xk_qili.png b/image/character/next/xk_qili.png
deleted file mode 100644
index 34414f620..000000000
Binary files a/image/character/next/xk_qili.png and /dev/null differ
diff --git a/image/character/next/xk_qinhongshang.png b/image/character/next/xk_qinhongshang.png
deleted file mode 100644
index 5ef4b77c8..000000000
Binary files a/image/character/next/xk_qinhongshang.png and /dev/null differ
diff --git a/image/character/next/xk_shiyan.png b/image/character/next/xk_shiyan.png
deleted file mode 100644
index 22ce6e4f4..000000000
Binary files a/image/character/next/xk_shiyan.png and /dev/null differ
diff --git a/image/character/next/xk_xianyin.png b/image/character/next/xk_xianyin.png
deleted file mode 100644
index db9451268..000000000
Binary files a/image/character/next/xk_xianyin.png and /dev/null differ
diff --git a/image/character/next/xk_yecha.png b/image/character/next/xk_yecha.png
deleted file mode 100644
index 0c28bd72e..000000000
Binary files a/image/character/next/xk_yecha.png and /dev/null differ
diff --git a/layout/default/layout.css b/layout/default/layout.css
index 316075cc3..511726d54 100755
--- a/layout/default/layout.css
+++ b/layout/default/layout.css
@@ -161,7 +161,7 @@ body>.background{z-index:-2}
.card>.background.tight{letter-spacing: -0.2em}
.marks>.card>.background.skillmark{font-family:'huangcao';padding-top:4px;}
/*--------窗口--------*/
-.dialog{text-align: center;}
+.dialog{text-align: center;z-index:4;}
.dialog{width: calc(90% - 420px);height: calc(100% / 3 - 160px / 3 + 120px);}
.dialog.fullheight{height:calc(100% - 80px) !important;top:40px !important}
.dialog.fullwidth{left:calc(5% + 60px) !important;width:calc(90% - 120px) !important}
diff --git a/mode/boss.js b/mode/boss.js
index 820ca3480..b1d919192 100755
--- a/mode/boss.js
+++ b/mode/boss.js
@@ -423,6 +423,8 @@ mode.boss={
if(lib.config.forbidall.contains(i)) continue;
if(lib.config.forbidboss.contains(i)) continue;
if(get.config('ban_weak')&&lib.config.forbidsingle.contains(i)) continue;
+ if(get.config('ban_weak')&&(lib.rank.c.contains(i)||lib.rank.d.contains(i))) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
list.push(i);
}
list.randomSort();
diff --git a/mode/chess.js b/mode/chess.js
index 72f8b5fcc..cea50d991 100755
--- a/mode/chess.js
+++ b/mode/chess.js
@@ -1566,6 +1566,7 @@ mode.chess={
ui.chessContainer.ontouchmove = ui.click.touchScroll;
ui.chessContainer.style.WebkitOverflowScrolling='touch';
ui.chess=ui.create.div('#chess',ui.chessContainer);
+ lib.setScroll(ui.chess);
ui.canvas2=document.createElement('canvas');
ui.canvas2.id='canvas2';
ui.chess.appendChild(ui.canvas2);
@@ -1929,6 +1930,8 @@ mode.chess={
if(lib.config.forbidall.contains(i)) continue;
if(lib.config.forbidchess.contains(i)) continue;
if(get.config('ban_weak')&&lib.config.forbidsingle.contains(i)) continue;
+ if(get.config('ban_weak')&&(lib.rank.c.contains(i)||lib.rank.d.contains(i))) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
if(lib.character[i][4].contains('boss')) continue;
list.push(i);
}
diff --git a/mode/guozhan.js b/mode/guozhan.js
index 65bbf0d87..cf4174b1e 100755
--- a/mode/guozhan.js
+++ b/mode/guozhan.js
@@ -201,6 +201,7 @@ mode.guozhan={
if(lib.config.forbidai.contains(i)) continue;
if(lib.config.forbidall.contains(i)) continue;
if(lib.config.forbiddouble.contains(i)) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
if(lib.character[i][2]==3||lib.character[i][2]==4||lib.character[i][2]==5)
event.list.push(i);
}
diff --git a/mode/identity.js b/mode/identity.js
index 7da5eeb86..7286bcd07 100755
--- a/mode/identity.js
+++ b/mode/identity.js
@@ -403,7 +403,9 @@ mode.identity={
for(i in lib.character){
if(lib.config.forbidai.contains(i)) continue;
if(lib.config.forbidall.contains(i)) continue;
- if(!get.config('double_character')&&get.config('ban_weak')&&lib.config.forbidsingle.contains(i)) continue;
+ if(!get.config('double_character')&&get.config('ban_weak')&&
+ (lib.config.forbidsingle.contains(i)||lib.rank.c.contains(i)||lib.rank.d.contains(i))) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
if(get.config('double_character')&&lib.config.forbiddouble.contains(i)) continue;
event.list.push(i);
if(lib.character[i][4]&&lib.character[i][4].contains('zhu')){
diff --git a/mode/stone.js b/mode/stone.js
index c1f766999..733bb3319 100755
--- a/mode/stone.js
+++ b/mode/stone.js
@@ -479,6 +479,8 @@ mode.stone={
if(lib.config.forbidall.contains(i)) continue;
if(lib.config.forbidstone.contains(i)) continue;
if(!get.config('double_character')&&get.config('ban_weak')&&lib.config.forbidsingle.contains(i)) continue;
+ if(!get.config('double_character')&&get.config('ban_weak')&&(lib.rank.c.contains(i)||lib.rank.d.contains(i))) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
if(get.config('double_character')&&lib.config.forbiddouble.contains(i)) continue;
list.push(i);
}
diff --git a/mode/versus.js b/mode/versus.js
index 60c31dab8..718903424 100755
--- a/mode/versus.js
+++ b/mode/versus.js
@@ -44,8 +44,15 @@ mode.versus={
// if(lib.storage.only_zhu==undefined) game.save('only_zhu',true);
if(lib.storage.single_control==undefined) game.save('single_control',true);
if(lib.storage.number==undefined) game.save('number',3);
+ if(lib.storage.versus_reward==undefined) game.save('versus_reward',3);
if(lib.storage.replace_number==undefined) game.save('replace_number',3);
if(lib.storage.control_all==undefined) game.save('control_all',true);
+
+ switch(lib.storage.seat_order){
+ case '交叉':lib.storage.cross_seat=true;lib.storage.random_seat=false;break;
+ case '随机':lib.storage.cross_seat=false;lib.storage.random_seat=true;break;
+ default:lib.storage.cross_seat=false;lib.storage.random_seat=false;
+ }
game.save('only_zhu',true);
ui.create.arena();
@@ -113,29 +120,31 @@ mode.versus={
// this.dialog.versus_only_zhu.parentNode.classList.add('disabled');
this.dialog.versus_main_zhu.parentNode.classList.add('disabled');
}
- this.dialog.versus_assign_enemy=this.dialog.add(ui.create.switcher('versus_assign_enemy',lib.storage.assign_enemy)).querySelector('.toggle');
- this.dialog.versus_cross_seat=this.dialog.add(ui.create.switcher('versus_cross_seat',lib.storage.cross_seat)).querySelector('.toggle');
- this.dialog.versus_random_seat=this.dialog.add(ui.create.switcher('versus_random_seat',lib.storage.random_seat)).querySelector('.toggle');
+ // this.dialog.versus_cross_seat=this.dialog.add(ui.create.switcher('versus_cross_seat',lib.storage.cross_seat)).querySelector('.toggle');
+ // this.dialog.versus_random_seat=this.dialog.add(ui.create.switcher('versus_random_seat',lib.storage.random_seat)).querySelector('.toggle');
this.dialog.versus_noreplace_end=this.dialog.add(ui.create.switcher('versus_noreplace_end',lib.storage.noreplace_end)).querySelector('.toggle');
+ this.dialog.versus_assign_enemy=this.dialog.add(ui.create.switcher('versus_assign_enemy',lib.storage.assign_enemy)).querySelector('.toggle');
this.dialog.versus_single_control=this.dialog.add(ui.create.switcher('versus_single_control',lib.storage.single_control)).querySelector('.toggle');
this.dialog.versus_control_all=this.dialog.add(ui.create.switcher('versus_control_all',lib.storage.control_all)).querySelector('.toggle');
this.dialog.versus_die_stop=this.dialog.add(ui.create.switcher('versus_die_stop',lib.storage.die_stop)).querySelector('.toggle');
+ this.dialog.versus_reward=this.dialog.add(ui.create.switcher('versus_reward',[0,1,2,3,4],lib.storage.versus_reward)).querySelector('.toggle');
+ this.dialog.versus_seat_order=this.dialog.add(ui.create.switcher('seat_order',['对阵','交叉','随机'],lib.storage.seat_order)).querySelector('.toggle');
this.dialog.versus_number=this.dialog.add(ui.create.switcher('versus_number',[1,2,3],lib.storage.number)).querySelector('.toggle');
this.dialog.replace_number=this.dialog.add(ui.create.switcher('replace_number',[0,1,2,3,5,7,9,17],lib.storage.replace_number)).querySelector('.toggle');
this.dialog.choice=this.dialog.add(ui.create.switcher('choice',[12,16,20,24,40,'∞'],lib.storage.choice)).querySelector('.toggle');
- if(lib.storage.cross_seat){
- this.dialog.versus_random_seat.parentNode.classList.add('disabled');
- }
- else{
- this.dialog.versus_random_seat.parentNode.classList.remove('disabled');
- if(lib.storage.random_seat){
- this.dialog.versus_cross_seat.parentNode.classList.add('disabled');
- }
- else{
- this.dialog.versus_cross_seat.parentNode.classList.remove('disabled');
- }
- }
+ // if(lib.storage.cross_seat){
+ // this.dialog.versus_random_seat.parentNode.classList.add('disabled');
+ // }
+ // else{
+ // this.dialog.versus_random_seat.parentNode.classList.remove('disabled');
+ // if(lib.storage.random_seat){
+ // this.dialog.versus_cross_seat.parentNode.classList.add('disabled');
+ // }
+ // else{
+ // this.dialog.versus_cross_seat.parentNode.classList.remove('disabled');
+ // }
+ // }
if(lib.storage.single_control){
this.dialog.versus_control_all.parentNode.classList.remove('disabled');
}
@@ -172,6 +181,8 @@ mode.versus={
if(lib.config.forbidversus.contains(i)) continue;
if(get.config('ban_weak')&&lib.config.forbidsingle.contains(i)) continue;
if(get.config('ban_weak')&&lib.config.forbidall.contains(i)) continue;
+ if(get.config('ban_weak')&&(lib.rank.c.contains(i)||lib.rank.d.contains(i))) continue;
+ if(get.config('ban_strong')&&(lib.rank.s.contains(i)||lib.rank.ap.contains(i))) continue;
list.push(i);
}
var groupSort=function(name){
@@ -326,21 +337,26 @@ mode.versus={
// game.save('only_zhu',dialog.versus_only_zhu.link);
game.save('main_zhu',dialog.versus_main_zhu.link);
game.save('assign_enemy',dialog.versus_assign_enemy.link);
- game.save('random_seat',dialog.versus_random_seat.link);
- game.save('cross_seat',dialog.versus_cross_seat.link);
+ game.save('seat_order',dialog.versus_seat_order.link);
+ // game.save('cross_seat',dialog.versus_cross_seat.link);
game.save('noreplace_end',dialog.versus_noreplace_end.link);
game.save('single_control',dialog.versus_single_control.link);
- if(lib.storage.cross_seat){
- dialog.versus_random_seat.parentNode.classList.add('disabled');
- }
- else{
- dialog.versus_random_seat.parentNode.classList.remove('disabled');
- if(lib.storage.random_seat){
- dialog.versus_cross_seat.parentNode.classList.add('disabled');
- }
- else{
- dialog.versus_cross_seat.parentNode.classList.remove('disabled');
- }
+ // if(lib.storage.cross_seat){
+ // dialog.versus_random_seat.parentNode.classList.add('disabled');
+ // }
+ // else{
+ // dialog.versus_random_seat.parentNode.classList.remove('disabled');
+ // if(lib.storage.random_seat){
+ // dialog.versus_cross_seat.parentNode.classList.add('disabled');
+ // }
+ // else{
+ // dialog.versus_cross_seat.parentNode.classList.remove('disabled');
+ // }
+ // }
+ switch(lib.storage.seat_order){
+ case '交叉':lib.storage.cross_seat=true;lib.storage.random_seat=false;break;
+ case '随机':lib.storage.cross_seat=false;lib.storage.random_seat=true;break;
+ default:lib.storage.cross_seat=false;lib.storage.random_seat=false;
}
if(lib.storage.single_control){
dialog.versus_control_all.parentNode.classList.remove('disabled');
@@ -351,6 +367,7 @@ mode.versus={
game.save('control_all',dialog.versus_control_all.link);
game.save('die_stop',dialog.versus_die_stop.link);
game.save('number',dialog.versus_number.link);
+ game.save('versus_reward',dialog.versus_reward.link);
game.save('replace_number',dialog.replace_number.link);
game.save('choice',dialog.choice.link);
var count,i;
@@ -1018,7 +1035,9 @@ mode.versus={
versus_random_seat_config:'随机座位',
versus_noreplace_end_config:'无替补时结束',
versus_single_control_config:'单人控制',
+ seat_order_config:'座位排列',
versus_control_all_config:'固定控制位置',
+ versus_reward_config:'杀敌摸牌',
versus_number_config:'对阵人数',
replace_number_config:'替补人数',
choice_config:'候选人数'
@@ -1102,7 +1121,7 @@ mode.versus={
else{
if(source){
if(source.side!=this.side){
- source.draw(2);
+ source.draw(lib.storage.versus_reward);
}
else{
source.discard(source.get('he'));
diff --git a/theme/archive/default/.DS_Store b/theme/archive/default/.DS_Store
deleted file mode 100755
index 5008ddfcf..000000000
Binary files a/theme/archive/default/.DS_Store and /dev/null differ
diff --git a/theme/cardstyle/default.css b/theme/style/card/default.css
similarity index 100%
rename from theme/cardstyle/default.css
rename to theme/style/card/default.css
diff --git a/theme/cardstyle/music.css b/theme/style/card/music.css
similarity index 67%
rename from theme/cardstyle/music.css
rename to theme/style/card/music.css
index 7e2f5aef1..c9ee444b4 100644
--- a/theme/cardstyle/music.css
+++ b/theme/style/card/music.css
@@ -1,6 +1,6 @@
.card:not(*:empty){
color:rgb(77, 60, 51);
text-shadow:none;
- background: url('../music/wood3.png');
+ background: url('../../music/wood3.png');
background-size:auto;
}
diff --git a/theme/cardstyle/simple.css b/theme/style/card/simple.css
similarity index 80%
rename from theme/cardstyle/simple.css
rename to theme/style/card/simple.css
index 216af8709..0c8e90c86 100644
--- a/theme/cardstyle/simple.css
+++ b/theme/style/card/simple.css
@@ -1,7 +1,7 @@
.card:not(*:empty){
color:rgb(77, 60, 51);
text-shadow:none;
- background: url('../simple/card.png');
+ background: url('../../simple/card.png');
background-size:cover;
}
#arena:not(.chess) .player[data-position='0']>.equips>.equip5 {
diff --git a/theme/cardstyle/wood.css b/theme/style/card/wood.css
similarity index 67%
rename from theme/cardstyle/wood.css
rename to theme/style/card/wood.css
index 583d8cddf..eb1a801f5 100644
--- a/theme/cardstyle/wood.css
+++ b/theme/style/card/wood.css
@@ -1,6 +1,6 @@
.card:not(*:empty){
color:rgb(77, 60, 51);
text-shadow:none;
- background: url('../woodden/wood.jpg');
+ background: url('../../woodden/wood.jpg');
background-size:auto;
}
diff --git a/theme/style/cardback/default.css b/theme/style/cardback/default.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/theme/style/cardback/image/official.png b/theme/style/cardback/image/official.png
new file mode 100644
index 000000000..2b89b3fc2
Binary files /dev/null and b/theme/style/cardback/image/official.png differ
diff --git a/theme/style/cardback/music.css b/theme/style/cardback/music.css
new file mode 100644
index 000000000..72b6f7604
--- /dev/null
+++ b/theme/style/cardback/music.css
@@ -0,0 +1,6 @@
+.card:empty{
+ color:rgb(77, 60, 51);
+ text-shadow:none;
+ background: url('../../music/wood3.png');
+ background-size:auto;
+}
diff --git a/theme/style/cardback/official.css b/theme/style/cardback/official.css
new file mode 100644
index 000000000..9fdcd9591
--- /dev/null
+++ b/theme/style/cardback/official.css
@@ -0,0 +1,4 @@
+.card:empty{
+ background: url('image/official.png');
+ background-size: cover;
+}
diff --git a/theme/style/cardback/wood.css b/theme/style/cardback/wood.css
new file mode 100644
index 000000000..447728e2e
--- /dev/null
+++ b/theme/style/cardback/wood.css
@@ -0,0 +1,6 @@
+.card:empty{
+ color:rgb(77, 60, 51);
+ text-shadow:none;
+ background: url('../../woodden/wood.jpg');
+ background-size:auto;
+}
diff --git a/theme/style/hp/default.css b/theme/style/hp/default.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/theme/style/hp/image/hp1.png b/theme/style/hp/image/hp1.png
new file mode 100644
index 000000000..76c2ca1c3
Binary files /dev/null and b/theme/style/hp/image/hp1.png differ
diff --git a/theme/style/hp/image/hp2.png b/theme/style/hp/image/hp2.png
new file mode 100644
index 000000000..e5b7af0e5
Binary files /dev/null and b/theme/style/hp/image/hp2.png differ
diff --git a/theme/style/hp/image/hp3.png b/theme/style/hp/image/hp3.png
new file mode 100644
index 000000000..50be7e4b3
Binary files /dev/null and b/theme/style/hp/image/hp3.png differ
diff --git a/theme/style/hp/image/hp4.png b/theme/style/hp/image/hp4.png
new file mode 100644
index 000000000..ebea1ae8d
Binary files /dev/null and b/theme/style/hp/image/hp4.png differ
diff --git a/theme/style/hp/official.css b/theme/style/hp/official.css
new file mode 100644
index 000000000..bcbc0fb9a
--- /dev/null
+++ b/theme/style/hp/official.css
@@ -0,0 +1,41 @@
+.hp:not(.text):not(.actcount)[data-condition="high"]>div:not(.lost){
+ background: url('image/hp1.png');
+ box-shadow: none;
+ border: none;
+ background-size: cover;
+ transform: scale(1.4) rotate(180deg);
+}
+.hp:not(.text):not(.actcount)[data-condition="mid"]>div:not(.lost){
+ background: url('image/hp2.png');
+ box-shadow: none;
+ border: none;
+ background-size: cover;
+ transform: scale(1.4) rotate(180deg);
+}
+.hp:not(.text):not(.actcount)[data-condition="low"]>div:not(.lost){
+ background: url('image/hp3.png');
+ box-shadow: none;
+ border: none;
+ background-size: cover;
+ transform: scale(1.4) rotate(180deg);
+}
+.hp:not(.text):not(.actcount)>.lost{
+ background: url('image/hp4.png');
+ box-shadow: none;
+ border: none;
+ background-size: cover;
+ transform: scale(1.4) rotate(180deg);
+}
+
+#arena.hpimage .player .hp:not(.text):not(.actcount)[data-condition="high"]>div:not(.lost){
+ transform: scale(1.6);
+}
+#arena.hpimage .player .hp:not(.text):not(.actcount)[data-condition="mid"]>div:not(.lost){
+ transform: scale(1.6);
+}
+#arena.hpimage .player .hp:not(.text):not(.actcount)[data-condition="low"]>div:not(.lost){
+ transform: scale(1.6);
+}
+#arena.hpimage .player .hp:not(.text):not(.actcount)>.lost{
+ transform: scale(1.6);
+}