diff --git a/src/components/GameBoard.component.js b/src/components/GameBoard.component.js index 971f414..3805d73 100644 --- a/src/components/GameBoard.component.js +++ b/src/components/GameBoard.component.js @@ -1,4 +1,5 @@ import {Component} from '../../lib/vues6.js' +import {Player} from '../module/util.js' /* * This is the HTML/JavaScript for the game board component. diff --git a/src/components/ScoreBoard.component.js b/src/components/ScoreBoard.component.js index 0e24730..7c424f9 100644 --- a/src/components/ScoreBoard.component.js +++ b/src/components/ScoreBoard.component.js @@ -1,5 +1,6 @@ import {Component} from '../../lib/vues6.js' import game_service from '../services/GameState.service.js' +import {Player} from '../module/util.js' const template = `
@@ -21,5 +22,6 @@ export default class ScoreBoardComponent extends Component { update() { // here is where you should fetch the data from the game service and update variables on the class + this.player_one_score = game_service.get_player_score(Player.One) } } diff --git a/src/services/GameState.service.js b/src/services/GameState.service.js index 45cafa6..64e1652 100644 --- a/src/services/GameState.service.js +++ b/src/services/GameState.service.js @@ -179,15 +179,15 @@ export class GameStateService { * @return {number} * @private */ - get_player_score () { + get_player_score(player) { let i = 1; let j = 1; let score = 0; - for(i; i<=9; i++) + for(i; i<=8; i++) { - for(j; j<=9; j++) + for(j; j<=8; j++) { - let cell = this.player_x_game_board[this.current_opponent][i][j]; + let cell = this.player_x_game_board[this.get_other_player(player)][i][j]; if(cell.render === GridCellState.Damaged || cell.render === GridCellState.Sunk ) { score++; @@ -203,15 +203,15 @@ export class GameStateService { * @return {number} * @private */ - get_boat_count(){ + get_boat_count(player){ let i = 1; let j = 1; let boat_count = 0; - for(i; i<=9; i++) + for(i; i<=8; i++) { - for(j; j<=9; j++) + for(j; j<=8; j++) { - let cell = this.player_x_game_board[this.current_opponent][i][j]; + let cell = this.player_x_game_board[this.get_other_player(player)][i][j]; if(cell.render === GridCellState.Damaged || cell.render === GridCellState.Sunk || cell.render === GridCellState.Ship ) { boat_count++; @@ -226,8 +226,8 @@ export class GameStateService { * @return {number} * @private */ - get_progress(){ - return(this.get_player_score() / this.get_progress() ) + get_progress(player){ + return(this.get_player_score(player) / this.get_boat_count(player)) } /** diff --git a/src/style/components.css b/src/style/components.css index 70ab17f..6f5a05b 100644 --- a/src/style/components.css +++ b/src/style/components.css @@ -92,6 +92,9 @@ p { justify-content: center; } +.app-scoreboard-component { + +}