1
0
mirror of https://github.com/danbee/chess synced 2025-03-04 08:39:06 +00:00

Indicate captures

This commit is contained in:
Daniel Barber 2018-05-11 11:18:59 -04:00
parent 151a993b53
commit 950e7a86f1
Signed by: danbarber
GPG Key ID: 931D8112E0103DD8
4 changed files with 13 additions and 3 deletions

View File

@ -18,10 +18,14 @@ const pieceToNotation = (piece) => {
const renderMove = (move) => { const renderMove = (move) => {
if (move != undefined) { if (move != undefined) {
return ( return (
<td className="move">{pieceToNotation(move.piece)}{move.to}</td> <td className="move">
) {pieceToNotation(move.piece)}
} {move.piece_captured ? "x" : ""}
{move.to}
</td>
);
} }
};
const renderMoves = (moves) => { const renderMoves = (moves) => {
return _.map(moves, (move) => { return _.map(moves, (move) => {

View File

@ -31,6 +31,7 @@ defmodule Chess.Store.Move do
%{ %{
id: move.id, id: move.id,
piece: move.piece, piece: move.piece,
piece_captured: move.piece_captured,
from: <<97 + move.from["file"], 49 + move.from["rank"]>>, from: <<97 + move.from["file"], 49 + move.from["rank"]>>,
to: <<97 + move.to["file"], 49 + move.to["rank"]>>, to: <<97 + move.to["file"], 49 + move.to["rank"]>>,
} }

View File

@ -31,12 +31,14 @@ defmodule Chess.MoveListTest do
%{ %{
id: nil, id: nil,
piece: %{"type" => "pawn", "colour" => "white"}, piece: %{"type" => "pawn", "colour" => "white"},
piece_captured: nil,
from: "e2", from: "e2",
to: "e4" to: "e4"
}, },
%{ %{
id: nil, id: nil,
piece: %{"type" => "pawn", "colour" => "black"}, piece: %{"type" => "pawn", "colour" => "black"},
piece_captured: nil,
from: "e7", from: "e7",
to: "e5" to: "e5"
} }
@ -45,6 +47,7 @@ defmodule Chess.MoveListTest do
%{ %{
id: nil, id: nil,
piece: %{"type" => "knight", "colour" => "white"}, piece: %{"type" => "knight", "colour" => "white"},
piece_captured: nil,
from: "b1", from: "b1",
to: "c3" to: "c3"
} }

View File

@ -82,6 +82,7 @@ defmodule Chess.Store.MoveTest do
test "translates a move" do test "translates a move" do
move = %Move{ move = %Move{
piece: %{"type" => "pawn", "colour" => "white"}, piece: %{"type" => "pawn", "colour" => "white"},
piece_captured: %{"type" => "pawn", "colour" => "black"},
from: %{"file" => 4, "rank" => 1}, from: %{"file" => 4, "rank" => 1},
to: %{"file" => 4, "rank" => 3}, to: %{"file" => 4, "rank" => 3},
} }
@ -89,6 +90,7 @@ defmodule Chess.Store.MoveTest do
assert Move.transform(move) == %{ assert Move.transform(move) == %{
id: nil, id: nil,
piece: %{"type" => "pawn", "colour" => "white"}, piece: %{"type" => "pawn", "colour" => "white"},
piece_captured: %{"type" => "pawn", "colour" => "black"},
from: "e2", from: "e2",
to: "e4" to: "e4"
} }