-
Notifications
You must be signed in to change notification settings - Fork 0
/
makeBoard.js
31 lines (28 loc) · 1.09 KB
/
makeBoard.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
var _ = require('lodash');
var boardCells = [
{xPos: 0, yPos: 0, bomb: false},
{xPos: 0, yPos: 1, bomb: false},
{xPos: 0, yPos: 2, bomb: false},
{xPos: 1, yPos: 0, bomb: true},
{xPos: 1, yPos: 1, bomb: false},
{xPos: 1, yPos: 2, bomb: false},
{xPos: 2, yPos: 0, bomb: false},
{xPos: 2, yPos: 1, bomb: false},
{xPos: 2, yPos: 2, bomb: false}
]
getBombsAroundCellCount = function(xCoord,yCoord, boardCells){
var neighborsWhichAreBombs = boardCells.filter(function(cell){
return (
cell.xPos === xCoord && cell.yPos === yCoord + 1 ||
cell.xPos === xCoord && cell.yPos === yCoord - 1 ||
cell.yPos === yCoord && cell.xPos === xCoord + 1 ||
cell.yPos === yCoord && cell.xPos === xCoord - 1 ||
cell.xPos === xCoord + 1 && cell.yPos === yCoord + 1 ||
cell.xPos === xCoord - 1 && cell.yPos === yCoord - 1 ||
cell.xPos === xCoord + 1 && cell.yPos === yCoord - 1 ||
cell.xPos === xCoord - 1 && cell.yPos === yCoord + 1
) && cell.bomb
});
return neighborsWhichAreBombs.length;
};
console.log(getBombsAroundCellCount(1, 1, boardCells));