Update play and check hints.
This commit is contained in:
parent
b6f1be3bb5
commit
0b313dbe85
@ -407,9 +407,6 @@ const INTERFACE = {
|
|||||||
let is_hover = INTERFACE.Ui.tile_is_hover(0, i);
|
let is_hover = INTERFACE.Ui.tile_is_hover(0, i);
|
||||||
let is_select = INTERFACE.Ui.tile_is_select(0, i);
|
let is_select = INTERFACE.Ui.tile_is_select(0, i);
|
||||||
|
|
||||||
let is_play = GAME_DATA.turn > 0 && (play.source < 2 || play.source == 3) && (play.to == i || ((play.source == 0 || play.source == 3) && play.from == i));
|
|
||||||
let is_check = GAME_DATA.state.check != 0 && piece !== null && piece.piece == GAME.Const.PieceId.Heart && piece.player == (GAME_DATA.turn & 1);
|
|
||||||
|
|
||||||
let tile_state = INTERFACE_DATA.board_state[i][1];
|
let tile_state = INTERFACE_DATA.board_state[i][1];
|
||||||
let hover_state = INTERFACE_DATA.board_state[i][0];
|
let hover_state = INTERFACE_DATA.board_state[i][0];
|
||||||
|
|
||||||
@ -435,11 +432,20 @@ const INTERFACE = {
|
|||||||
let piece = null;
|
let piece = null;
|
||||||
if(tile.piece !== null) { piece = GAME_DATA.board.pieces[tile.piece]; }
|
if(tile.piece !== null) { piece = GAME_DATA.board.pieces[tile.piece]; }
|
||||||
|
|
||||||
|
let is_play = null;
|
||||||
|
if(GAME_DATA.turn > 0 && (play.source < 2 || play.source == 3) && (play.to == i || ((play.source == 0 || play.source == 3) && play.from == i))) {
|
||||||
|
is_play = +!(GAME_DATA.turn & 1);
|
||||||
|
}
|
||||||
|
let is_check = GAME_DATA.state.check != 0 && piece !== null && piece.piece == GAME.Const.PieceId.Heart && piece.player == (GAME_DATA.turn & 1);
|
||||||
|
|
||||||
let background_color = null;
|
let background_color = null;
|
||||||
let border_color = null;
|
let border_color = null;
|
||||||
let background_scale = 0.94;
|
let background_scale = 0.94;
|
||||||
|
|
||||||
// Get background color
|
// Get background color
|
||||||
|
if(is_check) {
|
||||||
|
background_color = INTERFACE.Color.HintCheck;
|
||||||
|
}
|
||||||
switch(hover_state) {
|
switch(hover_state) {
|
||||||
case INTERFACE.TileStatus.Valid: background_color = INTERFACE.Color.HintValidDark; break;
|
case INTERFACE.TileStatus.Valid: background_color = INTERFACE.Color.HintValidDark; break;
|
||||||
case INTERFACE.TileStatus.Threat: background_color = INTERFACE.Color.HintThreatDark; break;
|
case INTERFACE.TileStatus.Threat: background_color = INTERFACE.Color.HintThreatDark; break;
|
||||||
@ -458,30 +464,38 @@ const INTERFACE = {
|
|||||||
|
|
||||||
// Get border color
|
// Get border color
|
||||||
if(draw_piece && tile.piece !== null) {
|
if(draw_piece && tile.piece !== null) {
|
||||||
if(GAME_DATA.board.pieces[tile.piece].player == GAME.Const.Player.Dawn) { border_color = INTERFACE.Color.DawnDark; }
|
if(GAME_DATA.board.pieces[tile.piece].player == GAME.Const.Player.Dawn) {
|
||||||
else { border_color = INTERFACE.Color.DuskDark; }
|
border_color = INTERFACE.Color.DawnDark;
|
||||||
|
} else {
|
||||||
|
border_color = INTERFACE.Color.DuskDark;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(is_hover) {
|
if(is_hover) {
|
||||||
border_color = INTERFACE.Color.HintHover;
|
border_color = INTERFACE.Color.HintHover;
|
||||||
} else if(background_color == null) {
|
} else if(background_color == null) {
|
||||||
if(is_play) {
|
if(is_play !== null) {
|
||||||
if((GAME_DATA.turn & 1) != GAME.Const.Player.Dawn) { border_color = INTERFACE.Color.DawnDark; }
|
if((GAME_DATA.turn & 1) != GAME.Const.Player.Dawn) { border_color = INTERFACE.Color.DawnDark; }
|
||||||
else { border_color = INTERFACE.Color.DuskDark; }
|
else { border_color = INTERFACE.Color.DuskDark; }
|
||||||
background_scale = 0.85;
|
background_scale = 0.9;
|
||||||
} else if(is_check) {
|
|
||||||
border_color = INTERFACE.Color.HintCheck;
|
|
||||||
background_scale = 0.8;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get default colors
|
// Get default colors
|
||||||
if(background_color === null) {
|
if(background_color === null) {
|
||||||
|
if(is_play !== null) {
|
||||||
|
if(is_play === GAME.Const.Player.Dawn) {
|
||||||
|
background_color = INTERFACE.Color.DawnDarkest;
|
||||||
|
} else {
|
||||||
|
background_color = INTERFACE.Color.DuskDarkest;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
switch(MATH.mod(coord.x + coord.y, 3)) {
|
switch(MATH.mod(coord.x + coord.y, 3)) {
|
||||||
case 0: background_color = INTERFACE.Color.TileMedium; break;
|
case 0: background_color = INTERFACE.Color.TileMedium; break;
|
||||||
case 1: background_color = INTERFACE.Color.TileLight; break;
|
case 1: background_color = INTERFACE.Color.TileLight; break;
|
||||||
case 2: background_color = INTERFACE.Color.TileDark; break;
|
case 2: background_color = INTERFACE.Color.TileDark; break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if(border_color === null) {
|
if(border_color === null) {
|
||||||
border_color = INTERFACE.Color.TileBorder;
|
border_color = INTERFACE.Color.TileBorder;
|
||||||
}
|
}
|
||||||
@ -857,7 +871,7 @@ const INTERFACE = {
|
|||||||
if(piece.player == GAME.Const.Player.Dawn) { this.ctx.fillStyle = INTERFACE.Color.DawnDarkest; }
|
if(piece.player == GAME.Const.Player.Dawn) { this.ctx.fillStyle = INTERFACE.Color.DawnDarkest; }
|
||||||
else { this.ctx.fillStyle = INTERFACE.Color.DuskDarkest; }
|
else { this.ctx.fillStyle = INTERFACE.Color.DuskDarkest; }
|
||||||
this.ctx.beginPath();
|
this.ctx.beginPath();
|
||||||
this.hex(0.85);
|
this.hex(0.9);
|
||||||
this.ctx.fill();
|
this.ctx.fill();
|
||||||
|
|
||||||
// Draw tile content
|
// Draw tile content
|
||||||
|
Loading…
x
Reference in New Issue
Block a user