From d0a27a5195f6dbc8dfa2428ec8eb6ffc7c1e20c6 Mon Sep 17 00:00:00 2001 From: clara Date: Wed, 7 May 2025 14:52:09 +0200 Subject: [PATCH 1/3] part 1 memory --- src/backend/Board.java | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/backend/Board.java b/src/backend/Board.java index 0e4a0d1..e554da3 100644 --- a/src/backend/Board.java +++ b/src/backend/Board.java @@ -188,9 +188,23 @@ public class Board { /* saving-loading feature :*/ public String[] toFileRep() { - //TODO - return null; - } + + ArrayList lines = new ArrayList<>(); + + + lines.add(String.valueOf(turnNumber)); //nombre xe tours + lines.add(String.valueOf(isWhiteTurn)); //couleur du joueur + + + for (Piece piece : pieces) { //ajoute la pièce à la mémoire + String line = piece.getType() + "," + piece.getX() + "," + piece.getY() + "," + piece.isWhite(); + lines.add(line); + } + + + return lines.toArray(new String[0]); + } + public Board(String[] array) { this.colNum = 8; From 8091c480a065a09eef406a7f9efc3ae0132ecad1 Mon Sep 17 00:00:00 2001 From: "l.mccann-marteau" Date: Wed, 7 May 2025 15:28:06 +0200 Subject: [PATCH 2/3] New class for en passant and other special moves (help) (au secours) --- src/backend/SpecialMoves.java | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/backend/SpecialMoves.java b/src/backend/SpecialMoves.java index e7d240d..f9c386a 100644 --- a/src/backend/SpecialMoves.java +++ b/src/backend/SpecialMoves.java @@ -1,5 +1,48 @@ package backend; public class SpecialMoves { + private Piece piece; + private Board board; + private int x = piece.getX(); + private int y = piece.getY(); + private PieceType type = PieceType.getType(); + private boolean isWhite; + + /* public SpecialMoves(Piece piece, Board board) { + this.piece = piece; + this.board = board; + } //??? + + public boolean checkCoordinates(int x, int y, PieceType type, boolean isWhite) { + if (type == PieceType.Pawn || isWhite == true || y == 6) { + int[][] offsets = {{1, -2}, {-1, -2}}; + } + if (type == PieceType.Pawn || isWhite == false || y == 1) { + int[][] offsets = {{1, 2}, {-1, 2}}; + }*/ + + public boolean checkCoordinates(int x, int y, PieceType type, boolean isWhite) { + if (type == PieceType.Pawn || isWhite == true || y == 3) { + int[][] offsets = {{1, 0}, {-1, 0}}; + + } + if (type == PieceType.Pawn || isWhite == false || y == 4) { + int[][] offsets = {{1, 0}, {-1, 0}}; + } + + + + } + + public boolean isEnpassant() { + boolean isWhite = piece.isWhite(); + if (boolean isWhite == true|| PieceType getType() == PieceType.Pawn) { //no idea honestly + if () + + } + if (boolean isWhite == false|| //PieceType type == Pawn) { + if () + } + } } From 5e1cb10a489143aac482cb992e54aff4c47758e3 Mon Sep 17 00:00:00 2001 From: clara Date: Wed, 7 May 2025 15:44:48 +0200 Subject: [PATCH 3/3] Merge branch 'master' of https://gitarero.ecam.fr/louise.berteloot/OOP_2A5_Project --- src/backend/Board.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/backend/Board.java b/src/backend/Board.java index 2ab8a03..7bd101e 100644 --- a/src/backend/Board.java +++ b/src/backend/Board.java @@ -207,9 +207,9 @@ public class Board { String line = piece.getType() + "," + piece.getX() + "," + piece.getY() + "," + piece.isWhite(); lines.add(line); } - - - return lines.toArray(new String[0]); + System.out.println("The modifications are: " + lines); + return lines.toArray(new String[0]); + } @@ -232,8 +232,7 @@ public class Board { boolean isWhite = Boolean.parseBoolean(parts[3]); pieces.add(new Piece(x, y, isWhite, type));} - - + System.out.println("The modifications are: " + pieces); } /* The following methods require more work ! */