v1.9.37.1
This commit is contained in:
parent
132df053a1
commit
244bee3a6f
|
@ -1518,7 +1518,12 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
return target.isDamaged();
|
return target.isDamaged();
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
|
'step 0'
|
||||||
target.loseMaxHp(true);
|
target.loseMaxHp(true);
|
||||||
|
'step 1'
|
||||||
|
if(target.isDamaged()&&target.countCards('h')<target.maxHp){
|
||||||
|
event.goto(0);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
value:[4,1],
|
value:[4,1],
|
||||||
|
@ -2183,7 +2188,7 @@ game.import('card',function(lib,game,ui,get,ai,_status){
|
||||||
gw_butianshu:'卜天术',
|
gw_butianshu:'卜天术',
|
||||||
gw_butianshu_info:'出牌阶段对任意角色使用,将任意一张延时锦囊牌置入其判定区',
|
gw_butianshu_info:'出牌阶段对任意角色使用,将任意一张延时锦囊牌置入其判定区',
|
||||||
gw_zhihuanjun:'致幻菌',
|
gw_zhihuanjun:'致幻菌',
|
||||||
gw_zhihuanjun_info:'出牌阶段对一名已受伤角色使用,令其减少一点体力上限',
|
gw_zhihuanjun_info:'出牌阶段对一名已受伤角色使用,令其减少一点体力上限;若该角色仍处于受伤状态且手牌数小于体力上限,则重复此结算',
|
||||||
gw_niuquzhijing:'纽曲之镜',
|
gw_niuquzhijing:'纽曲之镜',
|
||||||
gw_niuquzhijing_info:'令全场体力最多的角色减少一点体力和体力上限,体力最少的角色增加一点体力和体力上限(不触发技能),然后结束出牌阶段',
|
gw_niuquzhijing_info:'令全场体力最多的角色减少一点体力和体力上限,体力最少的角色增加一点体力和体力上限(不触发技能),然后结束出牌阶段',
|
||||||
gw_ansha:'暗杀',
|
gw_ansha:'暗杀',
|
||||||
|
|
|
@ -609,8 +609,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
trigger:{player:'damageEnd'},
|
trigger:{player:'damageEnd'},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
player.judge();
|
event.num=trigger.num;
|
||||||
'step 1'
|
'step 1'
|
||||||
|
player.judge();
|
||||||
|
'step 2'
|
||||||
event.color=result.color;
|
event.color=result.color;
|
||||||
if(event.color=='black'){
|
if(event.color=='black'){
|
||||||
player.chooseTarget('弃置一名角色区域内的一张牌',true,function(card,player,target){
|
player.chooseTarget('弃置一名角色区域内的一张牌',true,function(card,player,target){
|
||||||
|
@ -642,7 +644,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
return att;
|
return att;
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
'step 2'
|
'step 3'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
var target=result.targets[0];
|
var target=result.targets[0];
|
||||||
player.line(target,'green');
|
player.line(target,'green');
|
||||||
|
@ -658,6 +660,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
'step 4'
|
||||||
|
if(--event.num>0){
|
||||||
|
player.chooseBool('是否再次发动【筹策】?');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.finish();
|
||||||
|
}
|
||||||
|
'step 5'
|
||||||
|
if(result.bool){
|
||||||
|
event.goto(1);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
maixie:true,
|
maixie:true,
|
||||||
|
|
|
@ -430,7 +430,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
if(result.judge>0){
|
if(result.judge>0){
|
||||||
event.cards.push(result.card);
|
event.cards.push(result.card);
|
||||||
if(lib.config.autoskilllist.contains('luoshen')){
|
if(lib.config.autoskilllist.contains('luoshen')){
|
||||||
player.chooseBool('是否再次发动?');
|
player.chooseBool('是否再次发动【洛神】?');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
event._result={bool:true};
|
event._result={bool:true};
|
||||||
|
|
|
@ -5825,7 +5825,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
|
||||||
event.finish();
|
event.finish();
|
||||||
}
|
}
|
||||||
else if(lib.config.autoskilllist.contains('lqingcheng')){
|
else if(lib.config.autoskilllist.contains('lqingcheng')){
|
||||||
player.chooseBool('是否再次发动?');
|
player.chooseBool('是否再次发动【倾城】?');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
event._result={bool:true};
|
event._result={bool:true};
|
||||||
|
|
13
game/game.js
13
game/game.js
|
@ -22900,13 +22900,20 @@
|
||||||
if(pos){
|
if(pos){
|
||||||
game.addObstacle(pos[0],pos[1]);
|
game.addObstacle(pos[0],pos[1]);
|
||||||
}
|
}
|
||||||
else{
|
|
||||||
console.log(pos)
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
removeObstacle:function(pos){
|
removeObstacle:function(pos){
|
||||||
game.removeObstacle(pos);
|
game.removeObstacle(pos);
|
||||||
},
|
},
|
||||||
|
moveObstacle:function(pos){
|
||||||
|
if(pos){
|
||||||
|
game.moveObstacle(pos[0],pos[1],pos[2]);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
colorObstacle:function(pos){
|
||||||
|
if(pos){
|
||||||
|
game.colorObstacle(pos[0],pos[1]);
|
||||||
|
}
|
||||||
|
},
|
||||||
moveTox:function(player,pos){
|
moveTox:function(player,pos){
|
||||||
if(player&&player.dataset){
|
if(player&&player.dataset){
|
||||||
delete lib.posmap[player.dataset.position];
|
delete lib.posmap[player.dataset.position];
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
window.noname_update={
|
window.noname_update={
|
||||||
version:'1.9.37',
|
version:'1.9.37.1',
|
||||||
// update:'1.9.36.1',
|
update:'1.9.37',
|
||||||
changeLog:[
|
changeLog:[
|
||||||
'神武再世',
|
'神武再世',
|
||||||
|
'bug修复'
|
||||||
],
|
],
|
||||||
files:[
|
files:[
|
||||||
'game/game.js',
|
'game/game.js',
|
||||||
|
@ -13,26 +14,27 @@ window.noname_update={
|
||||||
// 'game/asset.js',
|
// 'game/asset.js',
|
||||||
// 'card/*',
|
// 'card/*',
|
||||||
// 'card/standard.js',
|
// 'card/standard.js',
|
||||||
// 'card/gwent.js',
|
'card/gwent.js',
|
||||||
// 'card/gujian.js',
|
// 'card/gujian.js',
|
||||||
// 'character/*',
|
// 'character/*',
|
||||||
// 'character/hearth.js',
|
// 'character/hearth.js',
|
||||||
// 'character/old.js',
|
// 'character/old.js',
|
||||||
// 'character/gwent.js',
|
'character/standard.js',
|
||||||
// 'character/sp.js',
|
'character/sp.js',
|
||||||
// 'character/swd.js',
|
'character/swd.js',
|
||||||
// 'character/rank.js',
|
// 'character/rank.js',
|
||||||
// 'character/yijiang.js',
|
// 'character/yijiang.js',
|
||||||
// 'character/xianjian.js',
|
// 'character/xianjian.js',
|
||||||
// 'mode/identity.js',
|
// 'mode/identity.js',
|
||||||
|
'mode/boss.js',
|
||||||
// 'mode/guozhan.js',
|
// 'mode/guozhan.js',
|
||||||
// 'mode/versus.js',
|
// 'mode/versus.js',
|
||||||
// 'mode/connect.js',
|
// 'mode/connect.js',
|
||||||
// 'mode/chess.js',
|
'mode/chess.js',
|
||||||
// 'mode/tafang.js',
|
'mode/tafang.js',
|
||||||
// 'mode/guozhan.js',
|
// 'mode/guozhan.js',
|
||||||
// 'mode/stone.js',
|
// 'mode/stone.js',
|
||||||
// 'theme/music/style.css',
|
'theme/music/style.css',
|
||||||
// 'theme/woodden/style.css',
|
// 'theme/woodden/style.css',
|
||||||
// 'theme/simple/style.css',
|
// 'theme/simple/style.css',
|
||||||
// 'layout/default/layout.css',
|
// 'layout/default/layout.css',
|
||||||
|
@ -43,7 +45,7 @@ window.noname_update={
|
||||||
// 'layout/long2/layout.css',
|
// 'layout/long2/layout.css',
|
||||||
// 'layout/mobile/layout.css',
|
// 'layout/mobile/layout.css',
|
||||||
// 'layout/newlayout/global.css',
|
// 'layout/newlayout/global.css',
|
||||||
// 'layout/mode/chess.css',
|
'layout/mode/chess.css',
|
||||||
// 'extension/boss/extension.js',
|
// 'extension/boss/extension.js',
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -212,6 +212,17 @@
|
||||||
rgba(0,0,0,0.1) 20px
|
rgba(0,0,0,0.1) 20px
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
#window .player.obstacle[data-obscolor='blue']{
|
||||||
|
background: repeating-linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(0, 64, 162, 0.4),
|
||||||
|
rgba(0, 64, 162, 0.4) 10px,
|
||||||
|
rgba(0, 0, 0, 0) 10px,
|
||||||
|
rgba(0, 0, 0, 0) 20px
|
||||||
|
);
|
||||||
|
box-shadow: rgba(0, 64, 162, 0.6) 0 0 0 1px;
|
||||||
|
}
|
||||||
|
|
||||||
.playergrid.temp{
|
.playergrid.temp{
|
||||||
opacity:0.3;
|
opacity:0.3;
|
||||||
}
|
}
|
||||||
|
|
|
@ -486,7 +486,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
modTarget:true,
|
modTarget:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
var num=Math.min(5,target.maxHp);
|
var num=Math.min(5,target.maxHp);
|
||||||
if(target.identity=='shen'){
|
if(target.group=='shen'){
|
||||||
target.draw(num);
|
target.draw(num);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -505,7 +505,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
result:{
|
result:{
|
||||||
target:function(player,target){
|
target:function(player,target){
|
||||||
var num=Math.min(5,target.maxHp);
|
var num=Math.min(5,target.maxHp);
|
||||||
if(target.identity=='shen'){
|
if(target.group=='shen'){
|
||||||
return Math.sqrt(num);
|
return Math.sqrt(num);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -1792,6 +1792,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
popup:false,
|
popup:false,
|
||||||
content:function(){
|
content:function(){
|
||||||
player.recover();
|
player.recover();
|
||||||
|
player.removeSkill('xiuluolianyuji2');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
xiuluolianyuji:{
|
xiuluolianyuji:{
|
||||||
|
|
232
mode/chess.js
232
mode/chess.js
|
@ -46,7 +46,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(get.config('chess_card')){
|
if(get.config('chess_card')){
|
||||||
lib.card.list=lib.card.list.concat(lib.chess_cardlist);
|
lib.card.list.addArray(lib.chess_cardlist);
|
||||||
}
|
}
|
||||||
ui.create.cardsAsync();
|
ui.create.cardsAsync();
|
||||||
game.finishCards();
|
game.finishCards();
|
||||||
|
@ -1581,9 +1581,21 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
grid.listen(ui.click.obstacle);
|
grid.listen(ui.click.obstacle);
|
||||||
lib.posmap[pos]=grid;
|
lib.posmap[pos]=grid;
|
||||||
game.obstacles.push(grid);
|
game.obstacles.push(grid);
|
||||||
|
return grid;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
addTempObstacle:function(x,y,num){
|
||||||
|
var node=game.addObstacle(x,y);
|
||||||
|
if(node){
|
||||||
|
game.colorObstacle(node,'blue');
|
||||||
|
node.tempObstacle=num;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
removeObstacle:function(pos){
|
removeObstacle:function(pos){
|
||||||
|
if(get.is.div(pos)){
|
||||||
|
pos=pos.dataset.position;
|
||||||
|
}
|
||||||
var node=lib.posmap[pos];
|
var node=lib.posmap[pos];
|
||||||
if(node&&game.obstacles.contains(node)){
|
if(node&&game.obstacles.contains(node)){
|
||||||
game.addVideo('removeObstacle',null,pos);
|
game.addVideo('removeObstacle',null,pos);
|
||||||
|
@ -1592,6 +1604,48 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
node.delete();
|
node.delete();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
moveObstacle:function(pos,x,y){
|
||||||
|
if(get.is.div(pos)){
|
||||||
|
pos=pos.dataset.position;
|
||||||
|
}
|
||||||
|
var node=lib.posmap[pos];
|
||||||
|
if(node&&game.obstacles.contains(node)){
|
||||||
|
pos=parseInt(pos);
|
||||||
|
var x2=pos%ui.chesswidth+x;
|
||||||
|
var y2=Math.floor(pos/ui.chesswidth)+y;
|
||||||
|
if(x2>=ui.chesswidth){
|
||||||
|
x2=ui.chesswidth-1;
|
||||||
|
}
|
||||||
|
if(y2>=ui.chessheight){
|
||||||
|
y2=ui.chessheight-1;
|
||||||
|
}
|
||||||
|
if(x2<0){
|
||||||
|
x2=0;
|
||||||
|
}
|
||||||
|
if(y2<0){
|
||||||
|
y2=0;
|
||||||
|
}
|
||||||
|
var pos2=y2*ui.chesswidth+x2;
|
||||||
|
if(!lib.posmap[pos2]){
|
||||||
|
game.addVideo('moveObstacle',null,[pos,x,y]);
|
||||||
|
node.dataset.position=pos2;
|
||||||
|
delete lib.posmap[pos];
|
||||||
|
lib.posmap[pos2]=node;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
colorObstacle:function(pos,color){
|
||||||
|
if(get.is.div(pos)){
|
||||||
|
pos=pos.dataset.position;
|
||||||
|
}
|
||||||
|
var node=lib.posmap[pos];
|
||||||
|
if(node&&game.obstacles.contains(node)){
|
||||||
|
game.addVideo('colorObstacle',null,[pos,color]);
|
||||||
|
node.dataset.obscolor=color;
|
||||||
|
}
|
||||||
|
},
|
||||||
addOverDialog:function(dialog,result){
|
addOverDialog:function(dialog,result){
|
||||||
if(ui.finishGame){
|
if(ui.finishGame){
|
||||||
ui.finishGame.remove();
|
ui.finishGame.remove();
|
||||||
|
@ -3938,6 +3992,20 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
_tempobstacle:{
|
||||||
|
trigger:{player:'phaseAfter'},
|
||||||
|
silent:true,
|
||||||
|
content:function(){
|
||||||
|
var list=game.obstacles.slice(0);
|
||||||
|
for(var i=0;i<list.length;i++){
|
||||||
|
if(typeof list[i].tempObstacle=='number'){
|
||||||
|
if(--list[i].tempObstacle==0){
|
||||||
|
game.removeObstacle(list[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
_attackmove:{
|
_attackmove:{
|
||||||
trigger:{player:'damageEnd'},
|
trigger:{player:'damageEnd'},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
@ -4966,31 +5034,69 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
var num=0;
|
var num=0;
|
||||||
var xy=player.getXY();
|
var xy=player.getXY();
|
||||||
if(game.obstacles.contains(player.getNeighbour(-1,0))||xy[0]==0) num++;
|
var neighbour;
|
||||||
if(game.obstacles.contains(player.getNeighbour(1,0))||xy[0]+1>=ui.chesswidth) num++;
|
neighbour=player.getNeighbour(-1,0);
|
||||||
if(game.obstacles.contains(player.getNeighbour(0,-1))||xy[1]==0) num++;
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
if(game.obstacles.contains(player.getNeighbour(0,1))||xy[1]+1>=ui.chessheight) num++;
|
num++;
|
||||||
|
}
|
||||||
|
else if(xy[0]==0){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(1,0);
|
||||||
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
else if(xy[0]+1>=ui.chesswidth){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(0,-1);
|
||||||
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
else if(xy[1]==0){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(0,1);
|
||||||
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
else if(xy[1]+1>=ui.chessheight){
|
||||||
|
num++;
|
||||||
|
}
|
||||||
return num>=3;
|
return num>=3;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
event.obstacles=[];
|
event.obstacles=[];
|
||||||
|
event.movemap={};
|
||||||
var neighbour;
|
var neighbour;
|
||||||
neighbour=player.getNeighbour(-1,0);
|
neighbour=player.getNeighbour(-1,0);
|
||||||
if(neighbour&&game.obstacles.contains(neighbour)){
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
event.obstacles.push(neighbour);
|
event.obstacles.push(neighbour);
|
||||||
|
if(player.movable(-2,0)){
|
||||||
|
event.movemap['[-1,0]']=neighbour;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
neighbour=player.getNeighbour(1,0);
|
neighbour=player.getNeighbour(1,0);
|
||||||
if(neighbour&&game.obstacles.contains(neighbour)){
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
event.obstacles.push(neighbour);
|
event.obstacles.push(neighbour);
|
||||||
|
if(player.movable(2,0)){
|
||||||
|
event.movemap['[1,0]']=neighbour;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
neighbour=player.getNeighbour(0,-1);
|
neighbour=player.getNeighbour(0,-1);
|
||||||
if(neighbour&&game.obstacles.contains(neighbour)){
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
event.obstacles.push(neighbour);
|
event.obstacles.push(neighbour);
|
||||||
|
if(player.movable(0,-2)){
|
||||||
|
event.movemap['[0,-1]']=neighbour;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
neighbour=player.getNeighbour(0,1);
|
neighbour=player.getNeighbour(0,1);
|
||||||
if(neighbour&&game.obstacles.contains(neighbour)){
|
if(neighbour&&typeof neighbour.tempObstacle!='number'&&game.obstacles.contains(neighbour)){
|
||||||
event.obstacles.push(neighbour);
|
event.obstacles.push(neighbour);
|
||||||
|
if(player.movable(0,2)){
|
||||||
|
event.movemap['[0,1]']=neighbour;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(!event.obstacles.length){
|
if(!event.obstacles.length){
|
||||||
event.finish();
|
event.finish();
|
||||||
|
@ -5006,7 +5112,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
event.chooseObstacle=true;
|
event.chooseObstacle=true;
|
||||||
game.pause();
|
game.pause();
|
||||||
_status.imchoosing=true;
|
_status.imchoosing=true;
|
||||||
event.dialog=ui.create.dialog('选择一个与你相邻的障碍清除之');
|
event.dialog=ui.create.dialog('移动一个与你相邻的路障');
|
||||||
event.dialog.add('<div class="text">'+lib.translate._chess_chuzhang_info+'</div>');
|
event.dialog.add('<div class="text">'+lib.translate._chess_chuzhang_info+'</div>');
|
||||||
event.custom.replace.confirm=function(){
|
event.custom.replace.confirm=function(){
|
||||||
player.getStat().skill._chess_chuzhang--;
|
player.getStat().skill._chess_chuzhang--;
|
||||||
|
@ -5023,7 +5129,21 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
if(!event.obstacle){
|
if(!event.obstacle){
|
||||||
event.obstacle=event.obstacles.randomGet();
|
event.obstacle=event.obstacles.randomGet();
|
||||||
}
|
}
|
||||||
game.removeObstacle(event.obstacle.dataset.position);
|
var moved=false;
|
||||||
|
for(var i in event.movemap){
|
||||||
|
if(event.movemap[i]==event.obstacle){
|
||||||
|
var xy=JSON.parse(i);
|
||||||
|
if(game.moveObstacle(event.obstacle,xy[0],xy[1])){
|
||||||
|
moved=true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!moved){
|
||||||
|
game.removeObstacle(event.obstacle);
|
||||||
|
}
|
||||||
|
player.popup('除障');
|
||||||
|
game.delay();
|
||||||
}
|
}
|
||||||
for(var i=0;i<event.obstacles.length;i++){
|
for(var i=0;i<event.obstacles.length;i++){
|
||||||
event.obstacles[i].classList.remove('glow');
|
event.obstacles[i].classList.remove('glow');
|
||||||
|
@ -5403,13 +5523,13 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
epic:'史诗',
|
epic:'史诗',
|
||||||
legend:'传说',
|
legend:'传说',
|
||||||
|
|
||||||
chess_shezhang:'设置障碍',
|
chess_shezhang:'设置路障',
|
||||||
chess_shezhang_info:'在你的一个相邻位置设置障碍,摸一张牌',
|
chess_shezhang_info:'选择一名角色,在其四周设置临时路障,持续X回合(X为存活角色数)',
|
||||||
chess_chuzhang:'清除障碍',
|
chess_chuzhang:'清除路障',
|
||||||
chess_chuzhang_info:'清除一个在你相邻位置的障碍,摸一张牌',
|
chess_chuzhang_info:'将你相邻的路障而后推移一格,每影响一个路障你摸一张牌',
|
||||||
|
|
||||||
_chess_chuzhang:'除障',
|
_chess_chuzhang:'除障',
|
||||||
_chess_chuzhang_info:'出牌阶段限一次,若你周围四格至少有三个为障碍或在边缘外,你可以选择清除其中一个障碍',
|
_chess_chuzhang_info:'出牌阶段限一次,若你周围四格至少有三个为障碍或在边缘外,你可以选择将其中一个障碍向后推移一格(若无法推移则改为清除之)',
|
||||||
|
|
||||||
arenaAdd:'援军',
|
arenaAdd:'援军',
|
||||||
arenaAdd_info:'出牌阶段限一次,你可以令一名未出场的已方角色加入战场。战斗结束后,该角色无论是否存活均不能再次出场',
|
arenaAdd_info:'出牌阶段限一次,你可以令一名未出场的已方角色加入战场。战斗结束后,该角色无论是否存活均不能再次出场',
|
||||||
|
@ -5521,18 +5641,32 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
type:'basic',
|
type:'basic',
|
||||||
fullskin:true,
|
fullskin:true,
|
||||||
modeimage:'chess',
|
modeimage:'chess',
|
||||||
enable:function(card,player){
|
enable:true,
|
||||||
if(player.movable(-1,0)) return true;
|
filterTarget:function(card,player,target){
|
||||||
if(player.movable(1,0)) return true;
|
if(target.movable(-1,0)) return true;
|
||||||
if(player.movable(0,-1)) return true;
|
if(target.movable(1,0)) return true;
|
||||||
if(player.movable(0,1)) return true;
|
if(target.movable(0,-1)) return true;
|
||||||
|
if(target.movable(0,1)) return true;
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
filterTarget:function(card,player,target){
|
|
||||||
return player==target;
|
|
||||||
},
|
|
||||||
selectTarget:-1,
|
|
||||||
content:function(){
|
content:function(){
|
||||||
|
var xy=target.getXY();
|
||||||
|
var x=xy[0];
|
||||||
|
var y=xy[1];
|
||||||
|
if(target.movable(-1,0)){
|
||||||
|
game.addTempObstacle(x-1,y,game.countPlayer());
|
||||||
|
}
|
||||||
|
if(target.movable(1,0)){
|
||||||
|
game.addTempObstacle(x+1,y,game.countPlayer());
|
||||||
|
}
|
||||||
|
if(target.movable(0,1)){
|
||||||
|
game.addTempObstacle(x,y+1,game.countPlayer());
|
||||||
|
}
|
||||||
|
if(target.movable(0,-1)){
|
||||||
|
game.addTempObstacle(x,y-1,game.countPlayer());
|
||||||
|
}
|
||||||
|
},
|
||||||
|
content_old:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
var pos=parseInt(player.dataset.position);
|
var pos=parseInt(player.dataset.position);
|
||||||
var poses=[];
|
var poses=[];
|
||||||
|
@ -5586,7 +5720,10 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
result:{
|
result:{
|
||||||
player:1,
|
target:function(player,target){
|
||||||
|
if(target.getNeighbours().length) return 0;
|
||||||
|
return -1;
|
||||||
|
},
|
||||||
},
|
},
|
||||||
order:1
|
order:1
|
||||||
}
|
}
|
||||||
|
@ -5600,12 +5737,38 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
},
|
},
|
||||||
selectTarget:-1,
|
selectTarget:-1,
|
||||||
enable:function(event,player){
|
enable:function(event,player){
|
||||||
if(game.obstacles.contains(player.getNeighbour(-1,0))) return true;
|
if(game.obstacles.contains(player.getNeighbour(-1,0))&&player.movable(-2,0)) return true;
|
||||||
if(game.obstacles.contains(player.getNeighbour(1,0))) return true;
|
if(game.obstacles.contains(player.getNeighbour(1,0))&&player.movable(2,0)) return true;
|
||||||
if(game.obstacles.contains(player.getNeighbour(0,-1))) return true;
|
if(game.obstacles.contains(player.getNeighbour(0,-1))&&player.movable(0,-2)) return true;
|
||||||
if(game.obstacles.contains(player.getNeighbour(0,1))) return true;
|
if(game.obstacles.contains(player.getNeighbour(0,1))&&player.movable(0,2)) return true;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
|
var neighbour,num=0;
|
||||||
|
neighbour=player.getNeighbour(-1,0);
|
||||||
|
if(neighbour&&game.obstacles.contains(neighbour)&&player.movable(-2,0)){
|
||||||
|
game.moveObstacle(neighbour,-1,0);
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(1,0);
|
||||||
|
if(neighbour&&game.obstacles.contains(neighbour)&&player.movable(2,0)){
|
||||||
|
game.moveObstacle(neighbour,1,0);
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(0,-1);
|
||||||
|
if(neighbour&&game.obstacles.contains(neighbour)&&player.movable(0,-2)){
|
||||||
|
game.moveObstacle(neighbour,0,-1);
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
neighbour=player.getNeighbour(0,1);
|
||||||
|
if(neighbour&&game.obstacles.contains(neighbour)&&player.movable(0,2)){
|
||||||
|
game.moveObstacle(neighbour,0,1);
|
||||||
|
num++;
|
||||||
|
}
|
||||||
|
if(num){
|
||||||
|
player.draw(num);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
content_old:function(){
|
||||||
'step 0'
|
'step 0'
|
||||||
event.obstacles=[];
|
event.obstacles=[];
|
||||||
var neighbour;
|
var neighbour;
|
||||||
|
@ -5659,7 +5822,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
result:{
|
result:{
|
||||||
player:1
|
player:1
|
||||||
},
|
},
|
||||||
order:7
|
order:8
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
leader_2:{
|
leader_2:{
|
||||||
|
@ -5750,7 +5913,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
cardPack:{
|
cardPack:{
|
||||||
mode_chess:['chess_shezhang','chess_chuzhang']
|
mode_chess:['chess_shezhang','chess_chuzhang']
|
||||||
},
|
},
|
||||||
chess_cardlist:[],
|
chess_cardlist:[
|
||||||
|
['heart',1,'chess_shezhang'],
|
||||||
|
['diamond',1,'chess_shezhang'],
|
||||||
|
['club',1,'chess_chuzhang'],
|
||||||
|
['spade',1,'chess_chuzhang']
|
||||||
|
],
|
||||||
rank:{
|
rank:{
|
||||||
rarity:{
|
rarity:{
|
||||||
legend:[
|
legend:[
|
||||||
|
|
|
@ -38,7 +38,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
|
||||||
for(var i=0;i<toLoad.length;i++){
|
for(var i=0;i<toLoad.length;i++){
|
||||||
game[toLoad[i]]=result.game[toLoad[i]];
|
game[toLoad[i]]=result.game[toLoad[i]];
|
||||||
}
|
}
|
||||||
toLoad=['_attackmove','_phasequeue','_chessmove','_chesscenter'];
|
toLoad=['_attackmove','_phasequeue','_chessmove','_chesscenter','_tempobstacle'];
|
||||||
for(var i=0;i<toLoad.length;i++){
|
for(var i=0;i<toLoad.length;i++){
|
||||||
lib.skill[toLoad[i]]=result.skill[toLoad[i]];
|
lib.skill[toLoad[i]]=result.skill[toLoad[i]];
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,3 +108,14 @@ body[data-background_color_music='blue'] #arena.mobile:not(.chess) .player[data-
|
||||||
#arena:not(.chess) .player[data-position='0']>.equips>.equip5>.image{
|
#arena:not(.chess) .player[data-position='0']>.equips>.equip5>.image{
|
||||||
background-position: -6px -6px;
|
background-position: -6px -6px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#window .player.minskin.obstacle[data-obscolor='blue']{
|
||||||
|
background: repeating-linear-gradient(
|
||||||
|
135deg,
|
||||||
|
rgba(0, 133, 255, 0.5),
|
||||||
|
rgba(0, 133, 255, 0.5) 10px,
|
||||||
|
rgba(0, 0, 0, 0) 10px,
|
||||||
|
rgba(0, 0, 0, 0) 20px
|
||||||
|
);
|
||||||
|
box-shadow: rgba(0, 133, 255, 0.5) 0 0 0 1px;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue