chess_validator 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/move_logic.rb +7 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1af34872a259842b2169becd1ee7570ceac96f7fc626e4c4306e7544fca7e25a
|
4
|
+
data.tar.gz: 821da801fa31123bd8ec1a6d151bb14364da5ad60d833b11b129ef205ec51411
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dae4d729c77310493648f7c3ec78ee954b3f04055b94a9a7410a74a3028d1b86918a6161e148bdaa27eaf75249a3a80e9ee9e2c54ed69cfcae8250740a62ba54
|
7
|
+
data.tar.gz: d0dcfb4661d6c5f8b231207ad0cd96c7634ed84898c3d76331c10f64aad54f345d4ef10538e3f27fb428eadf686958f7ccd69ea48fbb18bd1ceb0d40a4bf2b05
|
data/lib/move_logic.rb
CHANGED
@@ -152,9 +152,13 @@ module ChessValidator
|
|
152
152
|
def king_is_safe?(king_color, board, king_position, occupied_spaces)
|
153
153
|
board.values.none? do |piece|
|
154
154
|
piece.color != king_color &&
|
155
|
-
moves_for_piece(piece).
|
156
|
-
|
157
|
-
|
155
|
+
moves_for_piece(piece).any? do |move|
|
156
|
+
if piece.piece_type.downcase == 'p'
|
157
|
+
king_position == move && piece.position[0] != king_position[0]
|
158
|
+
else
|
159
|
+
king_position == move && valid_move_path?(piece, king_position, occupied_spaces)
|
160
|
+
end
|
161
|
+
end
|
158
162
|
end
|
159
163
|
end
|
160
164
|
|