From a5fa29a02dcdeae458ffb7c6bb4dbeb0031c8b36 Mon Sep 17 00:00:00 2001 From: lov3b Date: Tue, 22 Mar 2022 15:41:27 +0100 Subject: [PATCH] Horse funkar --- src/schack/Horse.java | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/src/schack/Horse.java b/src/schack/Horse.java index eb84468..79df567 100644 --- a/src/schack/Horse.java +++ b/src/schack/Horse.java @@ -13,7 +13,35 @@ public class Horse extends Piece { @Override public LinkedHashSet validMoves(Piece[][] pieces) { - return new LinkedHashSet<>(); + LinkedHashSet movable = new LinkedHashSet<>(); + + // Postitioner att checka + Point[] positions = { + // Snett höger uppåt + new Point(this.position.x + 1, this.position.y - 2), + // Snett höger neråt + new Point(this.position.x + 1, this.position.y + 2), + // Långt höger åt sidan uppåt + new Point(this.position.x + 2, this.position.y - 1), + // Långt höger åt sidan neråt + new Point(this.position.x + 2, this.position.y + 1), + // Snett vänster uppåt + new Point(this.position.x - 1, this.position.y - 2), + // Snett vänster neråt + new Point(this.position.x - 1, this.position.y + 2), + // Långt vänster åt sidan uppåt + new Point(this.position.x - 2, this.position.y - 1), + // Långt vänster åt sidan neråt + new Point(this.position.x - 2, this.position.y + 1) + }; + + for (Point pos : positions) { + // Ifall en är blockerad så ska vi inte sluta kolla + checkMove(pos.x, pos.y, movable, pieces); + } + + return movable; + } }