From dd96c3e56c58d074179981004ec260264a887ce9 Mon Sep 17 00:00:00 2001 From: lov3b Date: Sat, 30 Apr 2022 14:17:53 +0200 Subject: [PATCH] Stream --- src/schack/Piece.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/schack/Piece.java b/src/schack/Piece.java index 2cb1cd0..f15e55f 100644 --- a/src/schack/Piece.java +++ b/src/schack/Piece.java @@ -6,6 +6,7 @@ import java.awt.image.BufferedImage; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; +import java.util.Arrays; import javax.imageio.ImageIO; public abstract class Piece { @@ -178,7 +179,13 @@ public abstract class Piece { ArrayList attacks = new ArrayList<>(); // Fråga alla pjäser vart de kan gå/ta - for (Piece[] pieceArr : pieces) { + Arrays.stream(pieces).forEach(array -> { + Arrays.stream(array).filter(piece -> piece != null && piece.isWhite() != this.isWhite()).forEach(piece -> { + attacks.addAll(piece.validAttacks(pieces)); + }); + }); + + /* for (Piece[] pieceArr : pieces) { for (Piece piece : pieceArr) { // Ifall det är tomrum skippa if (piece == null) { @@ -190,8 +197,8 @@ public abstract class Piece { // Lägg till alla attacker för mostståndaren attacks.addAll(piece.validAttacks(pieces)); } - } - + }*/ + // Kollar ifall kungen står i schack just nu for (Point attack : attacks) { Piece attacked = pieces[attack.x][attack.y];