King and knight now move
This commit is contained in:
parent
8c6a230138
commit
2e8f0f6005
|
@ -84,21 +84,41 @@ impl Piece {
|
|||
PieceKind::Rook => {
|
||||
move_directions.extend([
|
||||
(0, 1), (1, 0), (-1, 0), (1, 0)
|
||||
])
|
||||
]);
|
||||
}
|
||||
PieceKind::Knight => {
|
||||
let knight_moves: Vec<(i8, i8)> = vec![
|
||||
(-1, -2), (-1, 2), (1, -2), (1, 2),
|
||||
(-2, -1), (-2, 1), (2, -1), (2, 1),
|
||||
];
|
||||
visible.extend(
|
||||
knight_moves.iter().filter_map(|&mv| {
|
||||
pos + mv
|
||||
})
|
||||
);
|
||||
}
|
||||
PieceKind::Knight => {}
|
||||
PieceKind::Bishop => {
|
||||
move_directions.extend([
|
||||
(1, 1), (-1, -1), (-1, 1), (1, -1)
|
||||
])
|
||||
]);
|
||||
}
|
||||
PieceKind::Queen => {
|
||||
move_directions.extend([
|
||||
(0, 1), (1, 0), (-1, 0), (1, 0),
|
||||
(1, 1), (-1, -1), (-1, 1), (1, -1),
|
||||
])
|
||||
]);
|
||||
}
|
||||
PieceKind::King => {
|
||||
let king_moves: Vec<(i8, i8)> = vec![
|
||||
(1, 0), (-1, 0), (1, 1), (-1, 1),
|
||||
(1, -1), (-1, -1), (0, -1), (0, 1)
|
||||
];
|
||||
visible.extend(
|
||||
king_moves.iter().filter_map(|&mv| {
|
||||
pos + mv
|
||||
})
|
||||
);
|
||||
}
|
||||
PieceKind::King => {}
|
||||
}
|
||||
|
||||
for direction in move_directions.drain(..) {
|
||||
|
|
Loading…
Reference in a new issue