|
|
|
@ -16,7 +16,7 @@ function generateDefaultPositions(){ |
|
|
|
for (let i = 0; i < 8; i++) { |
|
|
|
for (let i = 0; i < 8; i++) { |
|
|
|
for (let j = 0; j < 3; j++) { |
|
|
|
for (let j = 0; j < 3; j++) { |
|
|
|
if((i+j) % 2 == 0){ |
|
|
|
if((i+j) % 2 == 0){ |
|
|
|
pieceRecord = {id:id, x:i, y:j, player:"white", type:"queen"}; |
|
|
|
pieceRecord = {id:id, x:i, y:j, player:"white", type:"basic"}; |
|
|
|
pieceList.push(pieceRecord); |
|
|
|
pieceList.push(pieceRecord); |
|
|
|
id++; |
|
|
|
id++; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -27,7 +27,7 @@ function generateDefaultPositions(){ |
|
|
|
for (let i = 0; i < 8; i++) { |
|
|
|
for (let i = 0; i < 8; i++) { |
|
|
|
for (let j = 5; j < 8; j++) { |
|
|
|
for (let j = 5; j < 8; j++) { |
|
|
|
if((i+j) % 2 == 0){ |
|
|
|
if((i+j) % 2 == 0){ |
|
|
|
pieceRecord = {id:id, x:i, y:j, player:"black", type:"queen"}; |
|
|
|
pieceRecord = {id:id, x:i, y:j, player:"black", type:"basic"}; |
|
|
|
pieceList.push(pieceRecord); |
|
|
|
pieceList.push(pieceRecord); |
|
|
|
id++; |
|
|
|
id++; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -145,7 +145,6 @@ function getCasualties(oldX, oldY, newX, newY) { |
|
|
|
return casualties; |
|
|
|
return casualties; |
|
|
|
} |
|
|
|
} |
|
|
|
function continuableInDirectionForQueen(directionX, directionY, pieceRecord) { |
|
|
|
function continuableInDirectionForQueen(directionX, directionY, pieceRecord) { |
|
|
|
console.log("----------------------------------"); |
|
|
|
|
|
|
|
const pieceX = pieceRecord.x; |
|
|
|
const pieceX = pieceRecord.x; |
|
|
|
const pieceY = pieceRecord.y; |
|
|
|
const pieceY = pieceRecord.y; |
|
|
|
const player = pieceRecord.player; |
|
|
|
const player = pieceRecord.player; |
|
|
|
@ -155,7 +154,6 @@ function continuableInDirectionForQueen(directionX, directionY, pieceRecord) { |
|
|
|
const y = pieceY + (i*directionY); |
|
|
|
const y = pieceY + (i*directionY); |
|
|
|
|
|
|
|
|
|
|
|
if(x > 7 || x < 0 || y > 7 || y < 0 || (x+directionX) > 7 || (x+directionX) < 0 || (y+directionY) > 7 || (y+directionY) < 0 ){ |
|
|
|
if(x > 7 || x < 0 || y > 7 || y < 0 || (x+directionX) > 7 || (x+directionX) < 0 || (y+directionY) > 7 || (y+directionY) < 0 ){ |
|
|
|
console.log("!konec!"); |
|
|
|
|
|
|
|
return false; |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -163,17 +161,16 @@ function continuableInDirectionForQueen(directionX, directionY, pieceRecord) { |
|
|
|
|
|
|
|
|
|
|
|
if (record) { |
|
|
|
if (record) { |
|
|
|
if (record.player == player) { |
|
|
|
if (record.player == player) { |
|
|
|
console.log("!je to hráč!"); |
|
|
|
|
|
|
|
return false; |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const firstBlockRecord = getPieceRecord(x+directionX,y+directionY); |
|
|
|
const firstBlockRecord = getPieceRecord(x+directionX,y+directionY); |
|
|
|
const secondBlockRecord = getPieceRecord(x-directionX,y-directionY); |
|
|
|
const secondBlockRecord = getPieceRecord(x-directionX,y-directionY); |
|
|
|
console.log("fb: " + firstBlockRecord + secondBlockRecord); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ((!firstBlockRecord || firstBlockRecord.id == pieceRecord.id) && (!secondBlockRecord || secondBlockRecord.id == pieceRecord.id)); |
|
|
|
if ((!firstBlockRecord || firstBlockRecord.id == pieceRecord.id) && (!secondBlockRecord || secondBlockRecord.id == pieceRecord.id)) { |
|
|
|
|
|
|
|
return true; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
@ -196,8 +193,11 @@ function continuable(pieceRecord){ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(type == "queen"){ |
|
|
|
if(type == "queen"){ |
|
|
|
console.log("Tady to začíná"); |
|
|
|
for (let i = 1; i < 9; i++) { |
|
|
|
return (continuableInDirectionForQueen(1,1,pieceRecord) || continuableInDirectionForQueen(-1,-1,pieceRecord) || continuableInDirectionForQueen(-1,1,pieceRecord) || continuableInDirectionForQueen(-1,-1,pieceRecord)); |
|
|
|
nowX = x + i; |
|
|
|
|
|
|
|
nowY = y + i; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
return false; |
|
|
|
return false; |
|
|
|
|