From 06f6b4510c177df8380d76f945aef1bf5ee430af Mon Sep 17 00:00:00 2001 From: loveb Date: Thu, 19 May 2022 08:54:20 +0200 Subject: [PATCH] =?UTF-8?q?Ta=20bort=20on=C3=B6dig=20klass?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/schack/Board.java | 7 ++++--- src/schack/King.java | 2 +- src/schack/LongWalkers.java | 2 +- src/schack/Pawn.java | 2 +- src/schack/Piece.java | 8 +++++++- src/schack/PieceKnownIfMoved.java | 25 ------------------------- src/schack/Schack.java | 3 --- 7 files changed, 14 insertions(+), 35 deletions(-) delete mode 100644 src/schack/PieceKnownIfMoved.java diff --git a/src/schack/Board.java b/src/schack/Board.java index 0384e13..5262321 100644 --- a/src/schack/Board.java +++ b/src/schack/Board.java @@ -4,14 +4,11 @@ import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Graphics2D; -import java.awt.HeadlessException; import java.awt.Point; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.io.IOException; import java.util.ArrayList; -import java.util.logging.Level; -import java.util.logging.Logger; import javax.swing.JOptionPane; import javax.swing.JPanel; @@ -158,6 +155,10 @@ public class Board extends JPanel implements MouseListener { getParent().repaint(); } + /** + * Få status över brädet + * @return SCHACK, SCHACKMATT, PATT, NORMAL + */ private SchackState getSchackState() { final ArrayList allValidMoves = getMoves(whitesTurn); final ArrayList opposingAttacks = getAttacks(!whitesTurn); diff --git a/src/schack/King.java b/src/schack/King.java index a682b83..59db3be 100644 --- a/src/schack/King.java +++ b/src/schack/King.java @@ -4,7 +4,7 @@ import java.awt.Point; import java.io.IOException; import java.util.ArrayList; -public final class King extends PieceKnownIfMoved { +public final class King extends Piece { public King(boolean isWhite, Point startingPosition) throws IOException { super(isWhite, startingPosition); diff --git a/src/schack/LongWalkers.java b/src/schack/LongWalkers.java index 5b92cda..fca326a 100644 --- a/src/schack/LongWalkers.java +++ b/src/schack/LongWalkers.java @@ -4,7 +4,7 @@ import java.awt.Point; import java.io.IOException; import java.util.ArrayList; -public abstract class LongWalkers extends PieceKnownIfMoved { +public abstract class LongWalkers extends Piece { public LongWalkers(boolean isWhite, Point startingPosition) throws IOException { super(isWhite, startingPosition); diff --git a/src/schack/Pawn.java b/src/schack/Pawn.java index e001a2d..bb3d0be 100644 --- a/src/schack/Pawn.java +++ b/src/schack/Pawn.java @@ -4,7 +4,7 @@ import java.awt.Point; import java.io.IOException; import java.util.ArrayList; -public class Pawn extends PieceKnownIfMoved { +public class Pawn extends Piece { public Pawn(boolean isWhite, Point startingPosition) throws IOException { super(isWhite, startingPosition); diff --git a/src/schack/Piece.java b/src/schack/Piece.java index d876fe8..3d0e8a4 100644 --- a/src/schack/Piece.java +++ b/src/schack/Piece.java @@ -28,6 +28,11 @@ public abstract class Piece { */ protected BufferedImage icon; + /** + * Nödvändigt för rockad + */ + protected boolean moved = false; + public Piece(boolean white, Point startingPosition) throws IOException { this.isWhite = white; this.position = startingPosition; @@ -102,6 +107,7 @@ public abstract class Piece { pieces[toMove.x][toMove.y] = this; pieces[position.x][position.y] = null; this.position = new Point(toMove); + this.moved = true; } /** @@ -221,7 +227,7 @@ public abstract class Piece { * @return false */ public boolean isMoved() { - return false; + return moved; } } diff --git a/src/schack/PieceKnownIfMoved.java b/src/schack/PieceKnownIfMoved.java deleted file mode 100644 index 2455143..0000000 --- a/src/schack/PieceKnownIfMoved.java +++ /dev/null @@ -1,25 +0,0 @@ -package schack; - -import java.awt.Point; -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); - } - - @Override - public void move(Piece[][] pieces, Point toMove) { - super.move(pieces, toMove); - moved = true; - } - - @Override - public boolean isMoved() { - return moved; - } - -} diff --git a/src/schack/Schack.java b/src/schack/Schack.java index 86c9be5..2710b05 100644 --- a/src/schack/Schack.java +++ b/src/schack/Schack.java @@ -1,12 +1,9 @@ package schack; -import com.formdev.flatlaf.FlatLightLaf; import java.awt.event.ActionEvent; import java.io.IOException; import java.net.InetAddress; import java.net.UnknownHostException; -import java.util.logging.Level; -import java.util.logging.Logger; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar;