let shadowArray = ArrayFun.init(V.size.x, V.size.y, false);
const squares = shadow.split(",");
for (let i = 0; i < squares.length; i++) {
- const rownum = V.size.x - parseInt(squares[i]);
+ const rownum = V.size.x - parseInt(squares[i], 10);
if (!isNaN(rownum)) {
// Shadow a full row
for (let i = 0; i < V.size.y; i++) shadowArray[rownum][i] = true;
(V.Notoodark ? "middle-square" : "dark-square");
if (j == startY) boardDiv += " border-left";
}
- else if ((i + j) % 2 == 0) boardDiv += "light-square";
- else boardDiv += "dark-square";
+ else {
+ const oddity = (i + j) % 2;
+ if (
+ (oddity == 0 && !V.DarkBottomRight) ||
+ (oddity == 1 && V.DarkBottomRight)
+ ) {
+ boardDiv += "light-square";
+ }
+ else boardDiv += "dark-square";
+ }
boardDiv += " " + store.state.settings.bcolor;
if (shadowArray.length > 0 && shadowArray[i][j])
boardDiv += " in-shadow";