From 6f9f64c2143d4099dfa554c7beada98b69f4592c Mon Sep 17 00:00:00 2001 From: loveb Date: Thu, 5 May 2022 09:38:58 +0200 Subject: [PATCH] init --- src/schack/Board.java | 2 +- src/schack/Pawn.java | 8 ++++++++ src/schack/PieceKnownIfMoved.java | 7 +++---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/schack/Board.java b/src/schack/Board.java index f934a05..6a874a4 100644 --- a/src/schack/Board.java +++ b/src/schack/Board.java @@ -21,7 +21,7 @@ public class Board extends JPanel implements MouseListener { private Point selectedPiece = new Point(); private Color moveableColor = new Color(255, 191, 0); public boolean developerMode = false; - short turnCount = 0; + public static short turnCount = 0; boolean whitesTurn = true; public Board() throws IOException { diff --git a/src/schack/Pawn.java b/src/schack/Pawn.java index e82588f..bc6deb8 100644 --- a/src/schack/Pawn.java +++ b/src/schack/Pawn.java @@ -81,6 +81,14 @@ public class Pawn extends PieceKnownIfMoved { } + @Override + public void move(Piece[][] pieces, Point toMove) { + if (Math.abs(toMove.y - this.position.y) == 2) { + othersMayDoEnPassant = true; + } + super.move(pieces, toMove); + } + @Override protected boolean addMovesIfCan(Point pos, ArrayList movable, Piece[][] pieces, boolean isSelected) { if (pos.x < 0 || pos.x > 7 || pos.y < 0 || pos.y > 7) { diff --git a/src/schack/PieceKnownIfMoved.java b/src/schack/PieceKnownIfMoved.java index f63f8f1..0050fa7 100644 --- a/src/schack/PieceKnownIfMoved.java +++ b/src/schack/PieceKnownIfMoved.java @@ -5,20 +5,19 @@ import java.io.IOException; public abstract class PieceKnownIfMoved extends Piece { - protected boolean moved = false; - public PieceKnownIfMoved(boolean isWhite, Point startingPosition) throws IOException { super(isWhite, startingPosition); + lastTurnMoved = -1; } @Override public void move(Piece[][] pieces, Point toMove) { super.move(pieces, toMove); - moved = true; + lastTurnMoved++; } public boolean isMoved() { - return moved; + return lastTurnMoved > -1; } }