From 279167faaf1b72b2c38d287d0a48969b747d6eaa Mon Sep 17 00:00:00 2001 From: Matias <3020772@tud.hs-mannheim.de> Date: Fri, 6 Jun 2025 15:03:53 +0200 Subject: [PATCH] Assoziationen und grundlegendes JavaDoc umgesetzt. Externe Schach-Bib. in Pom integriert. --- pom.xml | 30 ++++++++++++++---- src/main/java/de/mannheim/th/chess/App.java | 9 +++++- .../de/mannheim/th/chess/domain/Game.java | 20 ++++++++++++ .../mannheim/th/chess/domain/MoveChecker.java | 8 +++++ .../mannheim/th/chess/domain/MoveReader.java | 8 +++++ .../de/mannheim/th/chess/model/Database.java | 11 +++++++ .../java/de/mannheim/th/chess/ui/Creator.java | 11 +++++++ .../de/mannheim/th/chess/ui/GameWindow.java | 16 ++++++++++ src/main/java/de/mannheim/th/chess/ui/Ui.java | 18 +++++++++++ .../java/de/mannheim/th/chess/utl/Clock.java | 12 +++++++ .../de/mannheim/th/chess/utl/GameReader.java | 12 +++++++ target/classes/de/mannheim/th/chess/App.class | Bin 555 -> 676 bytes 12 files changed, 147 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index 5fa91b9..777d54d 100644 --- a/pom.xml +++ b/pom.xml @@ -1,15 +1,25 @@ - - 4.0.0 - de.mannheim.th.chess - SchachMVN - 0.0.1-SNAPSHOT - Schach - + + 4.0.0 + de.mannheim.th.chess + SchachMVN + 0.0.1-SNAPSHOT + Schach + + UTF-8 21 21 + + + jitpack.io + https://jitpack.io + + + org.junit.jupiter @@ -30,6 +40,12 @@ log4j-core 2.24.2 + + + com.github.bhlangonijr + chesslib + 1.3.4 + diff --git a/src/main/java/de/mannheim/th/chess/App.java b/src/main/java/de/mannheim/th/chess/App.java index 7587576..17af5c1 100644 --- a/src/main/java/de/mannheim/th/chess/App.java +++ b/src/main/java/de/mannheim/th/chess/App.java @@ -1,12 +1,19 @@ package de.mannheim.th.chess; +import de.mannheim.th.chess.ui.Ui; + /** - * Eine einfache Schach App mithilfe von {@linkplain https://github.com/bhlangonijr/chesslib} + * Eine einfache Schach App mithilfe von {@linkplain https://github.com/bhlangonijr/chesslib} entwickelt. * @author Matias Mas Viehl, Dominik Stuck und Marius Guendel * @version 0.0.1 */ public class App { + private Ui userinterface = new Ui(); + /** + * Main-Methode. + * @param args + */ public static void main(String[] args) { System.out.println("Hello World!"); } diff --git a/src/main/java/de/mannheim/th/chess/domain/Game.java b/src/main/java/de/mannheim/th/chess/domain/Game.java index e69de29..70a1805 100644 --- a/src/main/java/de/mannheim/th/chess/domain/Game.java +++ b/src/main/java/de/mannheim/th/chess/domain/Game.java @@ -0,0 +1,20 @@ +package de.mannheim.th.chess.domain; + +import com.github.bhlangonijr.chesslib.Board; + +import de.mannheim.th.chess.utl.Clock; + +/** + * Ist die zentrale Klasse für ein einzelnes Spiel. Ist praktisch die zentrale Steuerung davon. + */ +public class Game{ + + private Board bord = new Board(); + private Clock clockPlayer1 = new Clock(); + private Clock clockPlayer2 = new Clock(); + + public Game() { + + } + +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/domain/MoveChecker.java b/src/main/java/de/mannheim/th/chess/domain/MoveChecker.java index e69de29..24d59ce 100644 --- a/src/main/java/de/mannheim/th/chess/domain/MoveChecker.java +++ b/src/main/java/de/mannheim/th/chess/domain/MoveChecker.java @@ -0,0 +1,8 @@ +package de.mannheim.th.chess.domain; + +/** + * Ueberprueft, ob ein Zug gueltig ist. + */ +public class MoveChecker{ + +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/domain/MoveReader.java b/src/main/java/de/mannheim/th/chess/domain/MoveReader.java index e69de29..0fe08f5 100644 --- a/src/main/java/de/mannheim/th/chess/domain/MoveReader.java +++ b/src/main/java/de/mannheim/th/chess/domain/MoveReader.java @@ -0,0 +1,8 @@ +package de.mannheim.th.chess.domain; + +/** + * Liest einen Zug ein. + */ +public class MoveReader{ + +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/model/Database.java b/src/main/java/de/mannheim/th/chess/model/Database.java index e69de29..1642c0c 100644 --- a/src/main/java/de/mannheim/th/chess/model/Database.java +++ b/src/main/java/de/mannheim/th/chess/model/Database.java @@ -0,0 +1,11 @@ +package de.mannheim.th.chess.model; + +/** + * Speichert Spielstaende, bisher gespielte Spiele und weiteres in einem File. + */ +public class Database{ + + public Database() { + + } +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/ui/Creator.java b/src/main/java/de/mannheim/th/chess/ui/Creator.java index e69de29..c7a3039 100644 --- a/src/main/java/de/mannheim/th/chess/ui/Creator.java +++ b/src/main/java/de/mannheim/th/chess/ui/Creator.java @@ -0,0 +1,11 @@ +package de.mannheim.th.chess.ui; + +import de.mannheim.th.chess.model.Database; + +/** + * ??? + */ +public class Creator{ + + private Database database = new Database(); +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/ui/GameWindow.java b/src/main/java/de/mannheim/th/chess/ui/GameWindow.java index e69de29..d220a5c 100644 --- a/src/main/java/de/mannheim/th/chess/ui/GameWindow.java +++ b/src/main/java/de/mannheim/th/chess/ui/GameWindow.java @@ -0,0 +1,16 @@ +package de.mannheim.th.chess.ui; + +import de.mannheim.th.chess.domain.Game; + +/** + * Zeigt das Spielbrett mit den Stats rechts daneben an. + */ +public class GameWindow{ + + private Game gamelogic = new Game(); + + public GameWindow() { + + } + +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/ui/Ui.java b/src/main/java/de/mannheim/th/chess/ui/Ui.java index e69de29..8af8c15 100644 --- a/src/main/java/de/mannheim/th/chess/ui/Ui.java +++ b/src/main/java/de/mannheim/th/chess/ui/Ui.java @@ -0,0 +1,18 @@ +package de.mannheim.th.chess.ui; + +import java.util.ArrayList; + +import de.mannheim.th.chess.utl.GameReader; + +/** + * Zeigt das Main-Menü der App an. + */ +public class Ui{ + + private ArrayList gamewindows = new ArrayList<>(); + private GameReader reader = new GameReader(); + + public Ui() { + + } +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/utl/Clock.java b/src/main/java/de/mannheim/th/chess/utl/Clock.java index e69de29..88f7e52 100644 --- a/src/main/java/de/mannheim/th/chess/utl/Clock.java +++ b/src/main/java/de/mannheim/th/chess/utl/Clock.java @@ -0,0 +1,12 @@ +package de.mannheim.th.chess.utl; + +/** + * Zeigt die Zeitangabe während eines Spiels eines Spielers an. + */ +public class Clock{ + + public Clock() { + + } + +} \ No newline at end of file diff --git a/src/main/java/de/mannheim/th/chess/utl/GameReader.java b/src/main/java/de/mannheim/th/chess/utl/GameReader.java index e69de29..6b231b9 100644 --- a/src/main/java/de/mannheim/th/chess/utl/GameReader.java +++ b/src/main/java/de/mannheim/th/chess/utl/GameReader.java @@ -0,0 +1,12 @@ +package de.mannheim.th.chess.utl; + +import de.mannheim.th.chess.model.Database; + +/** + * Liest ein schon vordefinierten Spielstand ein. + */ +public class GameReader{ + + private Database database = new Database(); + +} \ No newline at end of file diff --git a/target/classes/de/mannheim/th/chess/App.class b/target/classes/de/mannheim/th/chess/App.class index fc14f987ec4e039606e22c57f41a56e5f42bb97c..26fbb1243a4e2aa384779ea40862aa01e0e5ba20 100644 GIT binary patch delta 311 zcmYL@&n^Q|6vlsdrk&~BPTMh*8l@fo)xwSik+8C`73q#Jl1V0-3|)JMo4$gb6$wp9 zJb<0Y@Dk!^B{t{Y?|kR`o%2w*FY1r)*LUE64WqZiO8+Lw)9c$LzdFB26wPB3)SZ61 zb&~Fy{m3u-xRhKfib$N=$kF(eJrsfI=1zmiW!8Mw?Kzs}tKC>o_(w^W_1dSsJiClF zZ5CbPL980~63c@3!On{~! zSJdPUMfu|llT3;7s5AY?+Zpkt_ry#%|3YgF+WaMH@sNB;a{m;M6;`FMSd(h8{sR+Z BDLnuH delta 227 zcmYL>Jr06U5QJwz1fHmfqR)S@w4u}5N^f9mp&bbc7vK!!b=G!PT1aBy0X&p((Sl}X zcW39j7}uJ3f1WP@8!U3M$`eU;UZnL7x+Xjok+1jQt1Sg`KyY@aI8K6nlE%kSV2H7a zk;+Kw6HL{a4jG_AK06`*=V87m$JP6!T5HE b>-8Uy6+mzVu3KEIAhwGc<{S_LRt@17^Me^X