From 70749c2c6292030a7455c8aeaf004f7651585578 Mon Sep 17 00:00:00 2001 From: ole Date: Mon, 23 Dec 2024 18:36:15 +0100 Subject: [PATCH 1/2] add Komentare --- src/Board.java | 34 +++++++++++++++++++++++++++++++++- src/HitResponse.java | 34 ++++++++++++++++++++++++++++++++++ src/HitResponseType.java | 4 ++++ src/LocalPlayer.java | 5 +++++ src/Player.java | 3 ++- src/Point.java | 1 + 6 files changed, 79 insertions(+), 2 deletions(-) diff --git a/src/Board.java b/src/Board.java index 0587b0c..f045d8b 100644 --- a/src/Board.java +++ b/src/Board.java @@ -1,14 +1,38 @@ +/** + * Diese Klasse ist das Board von eimem spieler und enthält alle logischen operationen. + * Sprich ist das Backend Board. + * + * @author Peer Ole Wachtel + */ import java.util.ArrayList; import java.util.List; public class Board { + /** + * Alle bisher empfangenen HitResponsen + */ private List hits; + + /** + * Alle Schiffe des Semesters + */ private List ships; + + /** + * Die größe des Spielfeldes + */ private final int size; + /** + * Erstellt ein neues Board. + * setzt die übergebene Spielfeldgröße. + * Erstellt die Liste aller Schiffe des Semesters + * @param size Die größe des Spielfeldes + * @author Peer Ole Wachtel + */ public Board(int size) { this.size = size; this.ships = new ArrayList<>(); @@ -16,6 +40,12 @@ public class Board { this.createShip(size - 13); } + /** + * Nimmt einen punkt entgegen und Gibt einen Hitrespons zurück. + * @param point auf den geschossen wurde + * @return + * @author Peer Ole Wachtel + */ public synchronized HitResponse hit (Point point){ HitResponse response = new HitResponse(HitResponseType.MISS,point); for (int i = 0; i < this.ships.size(); i++) { @@ -64,6 +94,7 @@ public class Board { /** * creates all the ships on a board given a certain semester * @param semester the semester to be played in + * @author Peer Ole Wachtel */ private void createShip(int semester){ List shipData = Ship.semeterList.get(semester -1); @@ -86,7 +117,7 @@ public class Board { * to all adjacened hit responses with type HIT using `propagateSunk`. * @param hitResponse the HitResponse to be added * @return true when the hit response was added, otherwise false - * + * */ public synchronized boolean addHits(HitResponse hitResponse) { if (this.getHitResponseOnPoint(hitResponse.getPoint()) == null){ @@ -106,6 +137,7 @@ public class Board { /** * @param point the position to get the hit response from * @return the hit response at the position `point` + * @author Peer Ole Wachtel */ public synchronized HitResponse getHitResponseOnPoint(Point point) { for (int i = 0; i < this.hits.size(); i++){ diff --git a/src/HitResponse.java b/src/HitResponse.java index 2e5f0ca..56560d3 100644 --- a/src/HitResponse.java +++ b/src/HitResponse.java @@ -1,14 +1,33 @@ public class HitResponse { + /** + * Speichert den typ der HitResponse. + */ private HitResponseType type; + /** + * Speicher den Punkt wofür die HitResponse gilt. + */ private Point point; + /** + * Erstellt eine neue HitResponse und setzt den Punkt und typ. + * @param type der HitResponse. + * @param point für den die HitResponse gilt. + * @author Peer Ole Wachtel. + */ public HitResponse(HitResponseType type, Point point) { this.type = type; this.point = point; } + /** + *Erstellt eine neue HitResponse und setzt den Punkt und typ. + * @param typeIndex der HitResponse. + * @param point für den die HitResponse gilt. + * @throws IllegalArgumentException wenn der übergebene int nicht auf ein typ referenziert werden kann. + * @author Peer Ole Wachtel. + */ public HitResponse (int typeIndex, Point point) { if (typeIndex >= 0 && typeIndex < HitResponseType.values().length) { this.type = HitResponseType.values()[typeIndex]; @@ -26,15 +45,30 @@ public class HitResponse { return this.point; } + /** + * Setter für den type + * @param type auf den die HitResponse gesetzt werden soll. + * @author Peer Ole Wachtel + */ public void setType(HitResponseType type) { this.type = type; } + /** + * Gibt den passenden string nach Netzwerkstandard für eine HitResponse zurück. + * @return den passenden string nach Netzwerkstandard für eine HitResponse. + * @author Peer Ole Wachtel. + */ @Override public String toString() { return this.getPoint().toString() + " " + this.type.ordinal(); } + /** + * Getter für den typ der HitResponse. + * @return den typ der HitRespnse. + * @author Peer Ole Wachtel. + */ public HitResponseType getType() { return type; } diff --git a/src/HitResponseType.java b/src/HitResponseType.java index 4b1237c..0b2db42 100644 --- a/src/HitResponseType.java +++ b/src/HitResponseType.java @@ -1,3 +1,7 @@ +/** + * Stellt die verschiedenen möglichkeiten einer HitResponse als typ dar. + * @author Peer Ole Wachtel + */ public enum HitResponseType { MISS, HIT, SUNK, VICTORY } diff --git a/src/LocalPlayer.java b/src/LocalPlayer.java index 4da86a6..31b40f5 100644 --- a/src/LocalPlayer.java +++ b/src/LocalPlayer.java @@ -2,6 +2,11 @@ import java.util.Random; public class LocalPlayer extends Player { + + /** + * erstellt einen LocalPlayer und setzt myCoin random + * @author Peer Ole Wachtel + */ public LocalPlayer(){ super(); Random random = new Random(); diff --git a/src/Player.java b/src/Player.java index 4adf76c..840c4cc 100644 --- a/src/Player.java +++ b/src/Player.java @@ -31,7 +31,8 @@ public abstract class Player { public abstract void receiveShoot(Point point); - public abstract void receiveHit(HitResponse hitResponse); + public abstract + void receiveHit(HitResponse hitResponse); public abstract void shoot(Point point); diff --git a/src/Point.java b/src/Point.java index 301ec1e..3f37221 100644 --- a/src/Point.java +++ b/src/Point.java @@ -6,6 +6,7 @@ public class Point { * initialises a point using X and Y coordinates starting at 0 * @param x the x coordinate of the point starting at 0 * @param y the y coordinate of the point starting at 0 + * @author Peer Ole Wachtel */ public Point (int x, int y) { this.setX(x); -- 2.40.1 From 0fef0069f85fe5cc4a41234abf227d39691e60fe Mon Sep 17 00:00:00 2001 From: Luca Conte Date: Mon, 23 Dec 2024 20:48:51 +0100 Subject: [PATCH 2/2] wtf --- src/Player.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Player.java b/src/Player.java index 92cddab..8dfc776 100644 --- a/src/Player.java +++ b/src/Player.java @@ -31,8 +31,7 @@ public abstract class Player { public abstract void receiveShoot(Point point); - public abstract - void receiveHit(HitResponse hitResponse); + public abstract void receiveHit(HitResponse hitResponse); public abstract void shoot(Point point); -- 2.40.1