diff --git a/www/js/interface.js b/www/js/interface.js index df2a8ef..eb5e431 100644 --- a/www/js/interface.js +++ b/www/js/interface.js @@ -407,9 +407,6 @@ const INTERFACE = { let is_hover = INTERFACE.Ui.tile_is_hover(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 hover_state = INTERFACE_DATA.board_state[i][0]; @@ -435,11 +432,20 @@ const INTERFACE = { let piece = null; 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 border_color = null; let background_scale = 0.94; // Get background color + if(is_check) { + background_color = INTERFACE.Color.HintCheck; + } switch(hover_state) { case INTERFACE.TileStatus.Valid: background_color = INTERFACE.Color.HintValidDark; break; case INTERFACE.TileStatus.Threat: background_color = INTERFACE.Color.HintThreatDark; break; @@ -458,28 +464,36 @@ const INTERFACE = { // Get border color if(draw_piece && tile.piece !== null) { - if(GAME_DATA.board.pieces[tile.piece].player == GAME.Const.Player.Dawn) { border_color = INTERFACE.Color.DawnDark; } - else { border_color = INTERFACE.Color.DuskDark; } + if(GAME_DATA.board.pieces[tile.piece].player == GAME.Const.Player.Dawn) { + border_color = INTERFACE.Color.DawnDark; + } else { + border_color = INTERFACE.Color.DuskDark; + } } if(is_hover) { border_color = INTERFACE.Color.HintHover; } 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; } else { border_color = INTERFACE.Color.DuskDark; } - background_scale = 0.85; - } else if(is_check) { - border_color = INTERFACE.Color.HintCheck; - background_scale = 0.8; + background_scale = 0.9; } } // Get default colors if(background_color === null) { - switch(MATH.mod(coord.x + coord.y, 3)) { - case 0: background_color = INTERFACE.Color.TileMedium; break; - case 1: background_color = INTERFACE.Color.TileLight; break; - case 2: background_color = INTERFACE.Color.TileDark; break; + 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)) { + case 0: background_color = INTERFACE.Color.TileMedium; break; + case 1: background_color = INTERFACE.Color.TileLight; break; + case 2: background_color = INTERFACE.Color.TileDark; break; + } } } if(border_color === null) { @@ -857,7 +871,7 @@ const INTERFACE = { if(piece.player == GAME.Const.Player.Dawn) { this.ctx.fillStyle = INTERFACE.Color.DawnDarkest; } else { this.ctx.fillStyle = INTERFACE.Color.DuskDarkest; } this.ctx.beginPath(); - this.hex(0.85); + this.hex(0.9); this.ctx.fill(); // Draw tile content