From 7e54e01d9b96e581d0f96ecd57f3bae59f8a8f7b Mon Sep 17 00:00:00 2001
From: jez04 <david.jezek@post.cz>
Date: Wed, 5 Mar 2025 02:18:36 +0100
Subject: [PATCH] feat: assignment

---
 .gitignore                                    |   2 +-
 build-and-run.sh                              |  10 +-
 java2-lab02-common-v2/.gitignore              |  16 ----
 java2-lab02-common-v2/pom.xml                 |  79 ---------------
 .../src/main/java/module-info.java            |   5 -
 .../java/cz/vsb/fei/java2/lab01/AppTest.java  |  19 ----
 java2-lab02-db-v2/.gitignore                  |  16 ----
 java2-lab02-db-v2/pom.xml                     |  90 ------------------
 .../src/main/java/module-info.java            |  11 ---
 .../src/main/resources/log4j2.xml             |  13 ---
 java2-lab02-file-v2/.gitignore                |  16 ----
 java2-lab02-file-v2/pom.xml                   |  84 ----------------
 .../src/main/java/module-info.java            |   9 --
 java2-lab02-v2/.gitignore                     |   1 -
 java2-lab02-v2/scores.csv                     |   3 -
 .../main/java/lab/ScoreStorageFactory.java    |  39 --------
 java2-lab02-v2/src/main/java/module-info.java |  12 ---
 java2-lab02-v2/pom.xml => pom.xml             |  26 ++---
 run.sh                                        |   3 +-
 src/main/java/lab/Config.java                 |  60 ++++++++++++
 .../main/java/lab/data}/Score.java            |   2 +-
 .../main/java/lab/game/Collisionable.java     |   0
 .../main/java/lab/game/DeadListener.java      |   0
 .../main/java/lab/game/Difficult.java         |   0
 .../main/java/lab/game/DrawableSimulable.java |   0
 .../main/java/lab/game/DrawingThread.java     |   0
 .../src => src}/main/java/lab/game/Level.java |   3 +-
 .../main/java/lab/game/Monster.java           |  13 ++-
 .../main/java/lab/game/MujListener.java       |   0
 .../main/java/lab/game/NicerObstacle.java     |   0
 .../main/java/lab/game/Obstacle.java          |   4 +-
 .../main/java/lab/game/Player.java            |   3 +-
 .../main/java/lab/game/Routines.java          |   0
 .../main/java/lab/game/WorldEntity.java       |   0
 .../src => src}/main/java/lab/gui/App.java    |   2 +
 .../main/java/lab/gui/GameController.java     |   0
 .../java/lab/gui/MainScreenController.java    |  15 ++-
 .../main/java/lab/storage}/DbConnector.java   |   6 +-
 .../main/java/lab/storage}/FileStorage.java   |   5 +-
 .../lab/storage}/ScoreStorageInterface.java   |   4 +-
 src/main/java/module-info.java                |  11 +++
 .../main/resources/lab/game/red-monster.gif   | Bin
 .../main/resources/lab/game/spike.gif         | Bin
 .../main/resources/lab/gui/application.css    |   0
 .../resources/lab/gui/game-background.jpg     | Bin
 .../main/resources/lab/gui/gameWindow.fxml    |   0
 .../main/resources/lab/gui/mainScreen.fxml    |   0
 .../lab/gui/red-monster-menu-background.jpg   | Bin
 .../jez04/structure/test/AllOfContinue.java   |   0
 .../java/jez04/structure/test/ClassExist.java |   0
 .../structure/test/ClassStructureTest.java    |   0
 .../structure/test/ContainsInnerClasses.java  |   0
 .../java/jez04/structure/test/HasMethod.java  |   0
 .../jez04/structure/test/HasProperty.java     |   0
 .../jez04/structure/test/IsDescendatOf.java   |   0
 .../jez04/structure/test/IsInterface.java     |   0
 .../structure/test/ResourceContains.java      |   0
 .../jez04/structure/test/SrcContains.java     |   0
 .../jez04/structure/test/StructureHelper.java |   0
 .../structure/test/StructureMatcher.java      |   0
 60 files changed, 117 insertions(+), 465 deletions(-)
 delete mode 100644 java2-lab02-common-v2/.gitignore
 delete mode 100644 java2-lab02-common-v2/pom.xml
 delete mode 100644 java2-lab02-common-v2/src/main/java/module-info.java
 delete mode 100644 java2-lab02-common-v2/src/test/java/cz/vsb/fei/java2/lab01/AppTest.java
 delete mode 100644 java2-lab02-db-v2/.gitignore
 delete mode 100644 java2-lab02-db-v2/pom.xml
 delete mode 100644 java2-lab02-db-v2/src/main/java/module-info.java
 delete mode 100644 java2-lab02-db-v2/src/main/resources/log4j2.xml
 delete mode 100644 java2-lab02-file-v2/.gitignore
 delete mode 100644 java2-lab02-file-v2/pom.xml
 delete mode 100644 java2-lab02-file-v2/src/main/java/module-info.java
 delete mode 100644 java2-lab02-v2/.gitignore
 delete mode 100644 java2-lab02-v2/scores.csv
 delete mode 100644 java2-lab02-v2/src/main/java/lab/ScoreStorageFactory.java
 delete mode 100644 java2-lab02-v2/src/main/java/module-info.java
 rename java2-lab02-v2/pom.xml => pom.xml (89%)
 create mode 100644 src/main/java/lab/Config.java
 rename {java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common => src/main/java/lab/data}/Score.java (98%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Collisionable.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/DeadListener.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Difficult.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/DrawableSimulable.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/DrawingThread.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Level.java (95%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Monster.java (81%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/MujListener.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/NicerObstacle.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Obstacle.java (82%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Player.java (96%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/Routines.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/game/WorldEntity.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/gui/App.java (97%)
 rename {java2-lab02-v2/src => src}/main/java/lab/gui/GameController.java (100%)
 rename {java2-lab02-v2/src => src}/main/java/lab/gui/MainScreenController.java (84%)
 rename {java2-lab02-db-v2/src/main/java/cz/vsb/fei/java2/lab02/db => src/main/java/lab/storage}/DbConnector.java (92%)
 rename {java2-lab02-file-v2/src/main/java/cz/vsb/fei/file => src/main/java/lab/storage}/FileStorage.java (91%)
 rename {java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common => src/main/java/lab/storage}/ScoreStorageInterface.java (78%)
 create mode 100644 src/main/java/module-info.java
 rename {java2-lab02-v2/src => src}/main/resources/lab/game/red-monster.gif (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/game/spike.gif (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/gui/application.css (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/gui/game-background.jpg (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/gui/gameWindow.fxml (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/gui/mainScreen.fxml (100%)
 rename {java2-lab02-v2/src => src}/main/resources/lab/gui/red-monster-menu-background.jpg (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/AllOfContinue.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/ClassExist.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/ClassStructureTest.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/ContainsInnerClasses.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/HasMethod.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/HasProperty.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/IsDescendatOf.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/IsInterface.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/ResourceContains.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/SrcContains.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/StructureHelper.java (100%)
 rename {java2-lab02-v2/src => src}/test/java/jez04/structure/test/StructureMatcher.java (100%)

diff --git a/.gitignore b/.gitignore
index 9d80d85..96d545b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,4 +5,4 @@
 .classpath
 .idea/
 *.mv.db
-*.trace.db
+*.trace.db
\ No newline at end of file
diff --git a/build-and-run.sh b/build-and-run.sh
index 8e974fb..d6636b6 100755
--- a/build-and-run.sh
+++ b/build-and-run.sh
@@ -1,12 +1,4 @@
 #!/bin/bash
 
-cd java2-lab02-common-v2
-mvn clean install
-cd ../java2-lab02-db-v2
-mvn clean install
-cd ../java2-lab02-file-v2
-mvn clean install
-cd ../java2-lab02-v2
 mvn clean package
-java --module-path target/java2-lab02-v2-0.0.1-SNAPHOST.jar:target/libs -m cz.vsb.fei.java2.lab02_module/lab.gui.App
-cd ..
+java --module-path target/java2-lab03-v2-0.0.1-SNAPHOST.jar:target/libs -m cz.vsb.fei.java2.lab03_module/lab.gui.App
diff --git a/java2-lab02-common-v2/.gitignore b/java2-lab02-common-v2/.gitignore
deleted file mode 100644
index 98b99a5..0000000
--- a/java2-lab02-common-v2/.gitignore
+++ /dev/null
@@ -1,16 +0,0 @@
-# Eclipse
-.classpath
-.project
-.settings/
- 
-# Intellij
-.idea/
-*.iml
-*.iws
- 
-# Mac
-.DS_Store
- 
-# Maven
-log/
-target/
diff --git a/java2-lab02-common-v2/pom.xml b/java2-lab02-common-v2/pom.xml
deleted file mode 100644
index 291effa..0000000
--- a/java2-lab02-common-v2/pom.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>cz.vsb.fei.java2</groupId>
-	<artifactId>java2-lab02-common-v2</artifactId>
-	<version>0.0.1-SNAPSHOT</version>
-
-	<name>java2-lab02-common-v2</name>
-
-	<packaging>jar</packaging>
-
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<maven.compiler.release>21</maven.compiler.release>
-		<JUnit.version>5.11.0</JUnit.version>
-		<log4j.version>2.23.1</log4j.version>
-		<lombok.version>1.18.34</lombok.version>
-	</properties>
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>org.junit</groupId>
-				<artifactId>junit-bom</artifactId>
-				<version>${JUnit.version}</version>
-				<type>pom</type>
-				<scope>import</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
-
-	<dependencies>
-		<dependency>
-			<groupId>org.junit.jupiter</groupId>
-			<artifactId>junit-jupiter</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-core</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-api</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.projectlombok</groupId>
-			<artifactId>lombok</artifactId>
-			<version>${lombok.version}</version>
-			<scope>provided</scope>
-		</dependency>
-	</dependencies>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<version>3.13.0</version>
-				<configuration>
-					<annotationProcessorPaths>
-						<path>
-							<groupId>org.projectlombok</groupId>
-							<artifactId>lombok</artifactId>
-							<version>${lombok.version}</version>
-						</path>
-					</annotationProcessorPaths>
-				</configuration>
-			</plugin>
-			<plugin>
-				<artifactId>maven-surefire-plugin</artifactId>
-				<version>3.5.0</version>
-			</plugin>
-		</plugins>
-	</build>
-
-</project>
diff --git a/java2-lab02-common-v2/src/main/java/module-info.java b/java2-lab02-common-v2/src/main/java/module-info.java
deleted file mode 100644
index e9edf40..0000000
--- a/java2-lab02-common-v2/src/main/java/module-info.java
+++ /dev/null
@@ -1,5 +0,0 @@
-module cz.vsb.fei.java2.lab02.common_module {
-	requires static lombok;
-	requires org.apache.logging.log4j;
-	exports cz.vsb.fei.java2.lab02.common;
-}
\ No newline at end of file
diff --git a/java2-lab02-common-v2/src/test/java/cz/vsb/fei/java2/lab01/AppTest.java b/java2-lab02-common-v2/src/test/java/cz/vsb/fei/java2/lab01/AppTest.java
deleted file mode 100644
index 9102a3a..0000000
--- a/java2-lab02-common-v2/src/test/java/cz/vsb/fei/java2/lab01/AppTest.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package cz.vsb.fei.java2.lab01;
-
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
-import org.junit.jupiter.api.Test;
-
-/**
- * Unit test for simple App.
- */
-class AppTest {
-
-	/**
-	 * Rigorous Test :-)
-	 */
-	@Test
-	void shouldAnswerWithTrue() {
-		assertTrue(true);
-	}
-}
diff --git a/java2-lab02-db-v2/.gitignore b/java2-lab02-db-v2/.gitignore
deleted file mode 100644
index 98b99a5..0000000
--- a/java2-lab02-db-v2/.gitignore
+++ /dev/null
@@ -1,16 +0,0 @@
-# Eclipse
-.classpath
-.project
-.settings/
- 
-# Intellij
-.idea/
-*.iml
-*.iws
- 
-# Mac
-.DS_Store
- 
-# Maven
-log/
-target/
diff --git a/java2-lab02-db-v2/pom.xml b/java2-lab02-db-v2/pom.xml
deleted file mode 100644
index a706302..0000000
--- a/java2-lab02-db-v2/pom.xml
+++ /dev/null
@@ -1,90 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>cz.vsb.fei.java2</groupId>
-	<artifactId>java2-lab02-db-v2</artifactId>
-	<version>0.0.1-SNAPSHOT</version>
-
-	<name>java2-lab02-db-v2</name>
-
-	<packaging>jar</packaging>
-
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<maven.compiler.release>21</maven.compiler.release>
-		<JUnit.version>5.11.0</JUnit.version>
-		<log4j.version>2.23.1</log4j.version>
-		<lombok.version>1.18.34</lombok.version>
-	</properties>
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>org.junit</groupId>
-				<artifactId>junit-bom</artifactId>
-				<version>${JUnit.version}</version>
-				<type>pom</type>
-				<scope>import</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
-
-	<dependencies>
-		<dependency>
-			<groupId>cz.vsb.fei.java2</groupId>
-			<artifactId>java2-lab02-common-v2</artifactId>
-			<version>0.0.1-SNAPSHOT</version>
-		</dependency>
-		<dependency>
-			<groupId>com.h2database</groupId>
-			<artifactId>h2</artifactId>
-			<version>2.3.232</version>
-		</dependency>
-
-		<dependency>
-			<groupId>org.junit.jupiter</groupId>
-			<artifactId>junit-jupiter</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-core</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-api</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.projectlombok</groupId>
-			<artifactId>lombok</artifactId>
-			<version>${lombok.version}</version>
-			<scope>provided</scope>
-		</dependency>
-	</dependencies>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<version>3.13.0</version>
-				<configuration>
-					<annotationProcessorPaths>
-						<path>
-							<groupId>org.projectlombok</groupId>
-							<artifactId>lombok</artifactId>
-							<version>${lombok.version}</version>
-						</path>
-					</annotationProcessorPaths>
-				</configuration>
-			</plugin>
-			<plugin>
-				<artifactId>maven-surefire-plugin</artifactId>
-				<version>3.5.0</version>
-			</plugin>
-		</plugins>
-	</build>
-
-</project>
diff --git a/java2-lab02-db-v2/src/main/java/module-info.java b/java2-lab02-db-v2/src/main/java/module-info.java
deleted file mode 100644
index b10ea8f..0000000
--- a/java2-lab02-db-v2/src/main/java/module-info.java
+++ /dev/null
@@ -1,11 +0,0 @@
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
-import cz.vsb.fei.java2.lab02.db.DbConnector;
-
-module cz.vsb.fei.java2.lab02.db_module {
-	requires static lombok;
-	requires org.apache.logging.log4j;
-	requires transitive cz.vsb.fei.java2.lab02.common_module;
-	requires java.sql;
-	exports cz.vsb.fei.java2.lab02.db;
-	provides ScoreStorageInterface with cz.vsb.fei.java2.lab02.db.DbConnector;
-}
\ No newline at end of file
diff --git a/java2-lab02-db-v2/src/main/resources/log4j2.xml b/java2-lab02-db-v2/src/main/resources/log4j2.xml
deleted file mode 100644
index acb3514..0000000
--- a/java2-lab02-db-v2/src/main/resources/log4j2.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<Configuration>
-	<Appenders>
-		<Console name="Console">
-			<PatternLayout
-				pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
-		</Console>
-	</Appenders>
-	<Loggers>
-		<Root level="info">
-			<AppenderRef ref="Console"></AppenderRef>
-		</Root>
-	</Loggers>
-</Configuration>
diff --git a/java2-lab02-file-v2/.gitignore b/java2-lab02-file-v2/.gitignore
deleted file mode 100644
index 98b99a5..0000000
--- a/java2-lab02-file-v2/.gitignore
+++ /dev/null
@@ -1,16 +0,0 @@
-# Eclipse
-.classpath
-.project
-.settings/
- 
-# Intellij
-.idea/
-*.iml
-*.iws
- 
-# Mac
-.DS_Store
- 
-# Maven
-log/
-target/
diff --git a/java2-lab02-file-v2/pom.xml b/java2-lab02-file-v2/pom.xml
deleted file mode 100644
index 72f41c7..0000000
--- a/java2-lab02-file-v2/pom.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>cz.vsb.fei.java2</groupId>
-	<artifactId>java2-lab02-file-v2</artifactId>
-	<version>1.0-SNAPSHOT</version>
-
-	<name>java2-lab02-file-v2</name>
-
-	<packaging>jar</packaging>
-
-	<properties>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<maven.compiler.release>21</maven.compiler.release>
-		<JUnit.version>5.11.0</JUnit.version>
-		<log4j.version>2.23.1</log4j.version>
-		<lombok.version>1.18.34</lombok.version>
-	</properties>
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>org.junit</groupId>
-				<artifactId>junit-bom</artifactId>
-				<version>${JUnit.version}</version>
-				<type>pom</type>
-				<scope>import</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
-
-	<dependencies>
-		<dependency>
-			<groupId>cz.vsb.fei.java2</groupId>
-			<artifactId>java2-lab02-common-v2</artifactId>
-			<version>0.0.1-SNAPSHOT</version>
-		</dependency>
-		<dependency>
-			<groupId>org.junit.jupiter</groupId>
-			<artifactId>junit-jupiter</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-core</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.logging.log4j</groupId>
-			<artifactId>log4j-api</artifactId>
-			<version>${log4j.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.projectlombok</groupId>
-			<artifactId>lombok</artifactId>
-			<version>${lombok.version}</version>
-			<scope>provided</scope>
-		</dependency>
-	</dependencies>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<version>3.13.0</version>
-				<configuration>
-					<annotationProcessorPaths>
-						<path>
-							<groupId>org.projectlombok</groupId>
-							<artifactId>lombok</artifactId>
-							<version>${lombok.version}</version>
-						</path>
-					</annotationProcessorPaths>
-				</configuration>
-			</plugin>
-			<plugin>
-				<artifactId>maven-surefire-plugin</artifactId>
-				<version>3.5.0</version>
-			</plugin>
-		</plugins>
-	</build>
-
-</project>
diff --git a/java2-lab02-file-v2/src/main/java/module-info.java b/java2-lab02-file-v2/src/main/java/module-info.java
deleted file mode 100644
index cff2f09..0000000
--- a/java2-lab02-file-v2/src/main/java/module-info.java
+++ /dev/null
@@ -1,9 +0,0 @@
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
-
-module cz.vsb.fei.file_module {
-	requires static lombok;
-	requires org.apache.logging.log4j;
-    requires transitive cz.vsb.fei.java2.lab02.common_module;
-	exports cz.vsb.fei.file;
-	provides ScoreStorageInterface with cz.vsb.fei.file.FileStorage;
-}
\ No newline at end of file
diff --git a/java2-lab02-v2/.gitignore b/java2-lab02-v2/.gitignore
deleted file mode 100644
index b83d222..0000000
--- a/java2-lab02-v2/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target/
diff --git a/java2-lab02-v2/scores.csv b/java2-lab02-v2/scores.csv
deleted file mode 100644
index 59e2fa8..0000000
--- a/java2-lab02-v2/scores.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-ScreenSage;256
-EmojiEnthusiast;183
-EmojiEnthusiast;163
diff --git a/java2-lab02-v2/src/main/java/lab/ScoreStorageFactory.java b/java2-lab02-v2/src/main/java/lab/ScoreStorageFactory.java
deleted file mode 100644
index b613d07..0000000
--- a/java2-lab02-v2/src/main/java/lab/ScoreStorageFactory.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package lab;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.NoSuchElementException;
-import java.util.Random;
-import java.util.ServiceLoader;
-
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
-import javafx.scene.control.Alert;
-import javafx.scene.control.ButtonType;
-import javafx.stage.Modality;
-import javafx.scene.control.Alert.AlertType;
-
-public class ScoreStorageFactory {
-
-	private static ScoreStorageInterface instance;
-
-	private ScoreStorageFactory() {
-		/* hide public one constructor */
-	}
-
-	public static ScoreStorageInterface getInstance() {
-		if (instance == null) {
-			List<ScoreStorageInterface> availableImplementations = new ArrayList<>();
-			ServiceLoader.load(ScoreStorageInterface.class).forEach(availableImplementations::add);
-			if (availableImplementations.isEmpty()) {
-				throw new NoSuchElementException(
-						"Service loader did not find any implementation of interface ScoreStorageInterface.");
-			}
-			instance = availableImplementations.get(new Random().nextInt(availableImplementations.size()));
-			Alert info = new Alert(AlertType.INFORMATION,
-					String.format("Storage %s selected.", instance.getClass().getName()), ButtonType.OK);
-			info.initModality(Modality.WINDOW_MODAL);
-			info.showAndWait();
-		}
-		return instance;
-	}
-}
diff --git a/java2-lab02-v2/src/main/java/module-info.java b/java2-lab02-v2/src/main/java/module-info.java
deleted file mode 100644
index c241198..0000000
--- a/java2-lab02-v2/src/main/java/module-info.java
+++ /dev/null
@@ -1,12 +0,0 @@
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
-
-module cz.vsb.fei.java2.lab02_module {
-    requires transitive javafx.controls;
-    requires javafx.fxml;
-    requires javafx.base;
-    requires java.sql;
-	requires cz.vsb.fei.java2.lab02.common_module;
-    opens lab.gui to javafx.fxml;
-    exports lab.gui to javafx.fxml,javafx.graphics;
-    uses ScoreStorageInterface;
-}
\ No newline at end of file
diff --git a/java2-lab02-v2/pom.xml b/pom.xml
similarity index 89%
rename from java2-lab02-v2/pom.xml
rename to pom.xml
index 302abdb..3b70e3b 100644
--- a/java2-lab02-v2/pom.xml
+++ b/pom.xml
@@ -3,9 +3,9 @@
 	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 	<modelVersion>4.0.0</modelVersion>
 	<groupId>cz.vsb.fei.java2</groupId>
-	<artifactId>java2-lab02-v2</artifactId>
+	<artifactId>java2-lab03-v2</artifactId>
 	<version>0.0.1-SNAPHOST</version>
-    <name>java2-lab02-v2</name>
+	<name>java2-lab03-v2</name>
 	<packaging>jar</packaging>
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -13,6 +13,13 @@
 		<maven.compiler.target>21</maven.compiler.target>
 	</properties>
 	<dependencies>
+		<dependency>
+			<groupId>com.h2database</groupId>
+			<artifactId>h2</artifactId>
+			<version>2.3.232</version>
+			<scope>runtime</scope>
+		</dependency>
+
 		<dependency>
 			<groupId>org.openjfx</groupId>
 			<artifactId>javafx-controls</artifactId>
@@ -60,21 +67,6 @@
 			<version>3.0</version>
 			<scope>test</scope>
 		</dependency>
-		<dependency>
-			<groupId>cz.vsb.fei.java2</groupId>
-			<artifactId>java2-lab02-common-v2</artifactId>
-			<version>0.0.1-SNAPSHOT</version>
-		</dependency>
-		<dependency>
-			<groupId>cz.vsb.fei.java2</groupId>
-			<artifactId>java2-lab02-db-v2</artifactId>
-			<version>0.0.1-SNAPSHOT</version>
-		</dependency>
-		<dependency>
-			<groupId>cz.vsb.fei.java2</groupId>
-			<artifactId>java2-lab02-file-v2</artifactId>
-			<version>1.0-SNAPSHOT</version>
-		</dependency>
 	</dependencies>
 	<build>
 		<plugins>
diff --git a/run.sh b/run.sh
index 774747d..05217e8 100755
--- a/run.sh
+++ b/run.sh
@@ -1,5 +1,4 @@
 #!/bin/bash
 
-cd java2-lab02-v2
-java --module-path target/java2-lab02-v2-0.0.1-SNAPHOST.jar:target/libs -m cz.vsb.fei.java2.lab02_module/lab.gui.App
+java --module-path target/java2-lab03-v2-0.0.1-SNAPHOST.jar:target/libs -m cz.vsb.fei.java2.lab03_module/lab.gui.App
 cd ..
diff --git a/src/main/java/lab/Config.java b/src/main/java/lab/Config.java
new file mode 100644
index 0000000..f1aa8b7
--- /dev/null
+++ b/src/main/java/lab/Config.java
@@ -0,0 +1,60 @@
+package lab;
+
+import lab.storage.DbConnector;
+import lab.storage.ScoreStorageInterface;
+
+public class Config {
+
+	private static Config instance;
+
+	private ScoreStorageInterface scoreStorageInterface = new DbConnector();
+	private double monsterMinXPopsition = 0.5;
+	private double monsterMinSpeed = 50;
+	private double monsterMaxSpeed = 150;
+	private double obstacleWidth = 30;
+	private double obstacleHeight = 20;
+	private double playerStartSpeed= 50;
+	private int monsterMultiplier= 1;
+	
+	public static void configure(Config setting) {
+		instance = setting;
+	}
+
+	public static Config getInstance() {
+		return instance;
+	}
+
+	public ScoreStorageInterface getScoreStorageInterface() {
+		return scoreStorageInterface;
+	}
+
+	public double getMonsterMinXPopsition() {
+		return monsterMinXPopsition;
+	}
+
+	public double getMonsterMinSpeed() {
+		return monsterMinSpeed;
+	}
+
+	public double getMonsterMaxSpeed() {
+		return monsterMaxSpeed;
+	}
+
+	public double getObstacleHeight() {
+		return obstacleHeight;
+	}
+
+	public double getObstacleWidth() {
+		return obstacleWidth;
+	}
+
+	public double getPlayerStartSpeed() {
+		return playerStartSpeed;
+	}
+
+	public int getMonsterMultiplier() {
+		return monsterMultiplier;
+	}
+	
+
+}
diff --git a/java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/Score.java b/src/main/java/lab/data/Score.java
similarity index 98%
rename from java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/Score.java
rename to src/main/java/lab/data/Score.java
index cb962bd..01dc746 100644
--- a/java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/Score.java
+++ b/src/main/java/lab/data/Score.java
@@ -1,4 +1,4 @@
-package cz.vsb.fei.java2.lab02.common;
+package lab.data;
 
 import java.util.Random;
 
diff --git a/java2-lab02-v2/src/main/java/lab/game/Collisionable.java b/src/main/java/lab/game/Collisionable.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/Collisionable.java
rename to src/main/java/lab/game/Collisionable.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/DeadListener.java b/src/main/java/lab/game/DeadListener.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/DeadListener.java
rename to src/main/java/lab/game/DeadListener.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/Difficult.java b/src/main/java/lab/game/Difficult.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/Difficult.java
rename to src/main/java/lab/game/Difficult.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/DrawableSimulable.java b/src/main/java/lab/game/DrawableSimulable.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/DrawableSimulable.java
rename to src/main/java/lab/game/DrawableSimulable.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/DrawingThread.java b/src/main/java/lab/game/DrawingThread.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/DrawingThread.java
rename to src/main/java/lab/game/DrawingThread.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/Level.java b/src/main/java/lab/game/Level.java
similarity index 95%
rename from java2-lab02-v2/src/main/java/lab/game/Level.java
rename to src/main/java/lab/game/Level.java
index ecc6ec4..7b6a922 100644
--- a/java2-lab02-v2/src/main/java/lab/game/Level.java
+++ b/src/main/java/lab/game/Level.java
@@ -8,6 +8,7 @@ import javafx.geometry.Dimension2D;
 import javafx.geometry.Point2D;
 import javafx.scene.canvas.GraphicsContext;
 import javafx.scene.paint.Color;
+import lab.Config;
 
 public class Level {
 
@@ -27,7 +28,7 @@ public class Level {
 		entities.add(new Obstacle(this, new Point2D(300, 200), new Dimension2D(80, 40)));
 		entities.add(new Obstacle(this));
 		entities.add(player);
-		for (int i = 0; i < monsterCount; i++) {
+		for (int i = 0; i < monsterCount*Config.getInstance().getMonsterMultiplier(); i++) {
 			entities.add(new Monster(this));
 		}
 	}
diff --git a/java2-lab02-v2/src/main/java/lab/game/Monster.java b/src/main/java/lab/game/Monster.java
similarity index 81%
rename from java2-lab02-v2/src/main/java/lab/game/Monster.java
rename to src/main/java/lab/game/Monster.java
index 666e4ce..0bca7df 100644
--- a/java2-lab02-v2/src/main/java/lab/game/Monster.java
+++ b/src/main/java/lab/game/Monster.java
@@ -9,6 +9,7 @@ import javafx.geometry.Point2D;
 import javafx.geometry.Rectangle2D;
 import javafx.scene.canvas.GraphicsContext;
 import javafx.scene.image.Image;
+import lab.Config;
 
 public class Monster extends WorldEntity implements Collisionable {
 
@@ -21,9 +22,12 @@ public class Monster extends WorldEntity implements Collisionable {
 	public Monster(Level level) {
 		super(level, new Point2D(0, 0), 100);
 		image = new Image(getClass().getResourceAsStream("red-monster.gif"));
-		position = new Point2D(level.getWidth() * 0.5 + RANDOM.nextDouble(level.getWidth() * 0.5 - image.getWidth()),
+		position = new Point2D(
+				level.getWidth() * Config.getInstance().getMonsterMinXPopsition() + RANDOM.nextDouble(
+						level.getWidth() - image.getWidth()),
 				RANDOM.nextDouble(level.getHeight()));
-		speed = new Point2D(0, RANDOM.nextDouble(50, 150));
+		speed = new Point2D(0, RANDOM.nextDouble(Config.getInstance().getMonsterMinSpeed(),
+				Config.getInstance().getMonsterMaxSpeed()));
 	}
 
 	public Monster(Level level, Point2D position) {
@@ -42,7 +46,7 @@ public class Monster extends WorldEntity implements Collisionable {
 	public void simulate(double delay) {
 		position = position.add(speed.multiply(delay / 1_000_000_000));
 		position = new Point2D(position.getX(), position.getY() % level.getHeight());
-		if(position.getY() + image.getHeight() < 0) {
+		if (position.getY() + image.getHeight() < 0) {
 			position = new Point2D(position.getX(), level.getHeight());
 		}
 	}
@@ -61,7 +65,8 @@ public class Monster extends WorldEntity implements Collisionable {
 	public void hitBy(Collisionable another) {
 		if (another instanceof Player) {
 			level.remove(this);
-			level.add(new Obstacle(level, getPosition(), new Dimension2D(60, 30)));
+			level.add(new Obstacle(level, getPosition(), new Dimension2D(Config.getInstance().getObstacleWidth(),
+					Config.getInstance().getObstacleHeight())));
 			fireMonsterDead();
 		}
 
diff --git a/java2-lab02-v2/src/main/java/lab/game/MujListener.java b/src/main/java/lab/game/MujListener.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/MujListener.java
rename to src/main/java/lab/game/MujListener.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/NicerObstacle.java b/src/main/java/lab/game/NicerObstacle.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/NicerObstacle.java
rename to src/main/java/lab/game/NicerObstacle.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/Obstacle.java b/src/main/java/lab/game/Obstacle.java
similarity index 82%
rename from java2-lab02-v2/src/main/java/lab/game/Obstacle.java
rename to src/main/java/lab/game/Obstacle.java
index 03e6ba6..c623237 100644
--- a/java2-lab02-v2/src/main/java/lab/game/Obstacle.java
+++ b/src/main/java/lab/game/Obstacle.java
@@ -4,13 +4,15 @@ import javafx.geometry.Dimension2D;
 import javafx.geometry.Point2D;
 import javafx.scene.canvas.GraphicsContext;
 import javafx.scene.paint.Color;
+import lab.Config;
 
 public class Obstacle extends WorldEntity {
 
 	private Dimension2D size;
 
 	public Obstacle(Level level) {
-		this(level, new Point2D(200, 100), new Dimension2D(30, 20));
+		this(level, new Point2D(200, 100),
+				new Dimension2D(Config.getInstance().getObstacleWidth(), Config.getInstance().getObstacleHeight()));
 	}
 
 	public Obstacle(Level level, Point2D position, Dimension2D size) {
diff --git a/java2-lab02-v2/src/main/java/lab/game/Player.java b/src/main/java/lab/game/Player.java
similarity index 96%
rename from java2-lab02-v2/src/main/java/lab/game/Player.java
rename to src/main/java/lab/game/Player.java
index 547e956..b37c79a 100644
--- a/java2-lab02-v2/src/main/java/lab/game/Player.java
+++ b/src/main/java/lab/game/Player.java
@@ -8,11 +8,12 @@ import javafx.scene.canvas.GraphicsContext;
 import javafx.scene.paint.Color;
 import javafx.scene.transform.Affine;
 import javafx.scene.transform.Rotate;
+import lab.Config;
 
 public class Player extends WorldEntity implements Collisionable {
 	private static final Random RANDOM = new Random();
 	private Point2D speed;
-	private double speedSize = 50;
+	private double speedSize = Config.getInstance().getPlayerStartSpeed();
 	private double angle;
 
 	public Player(Level level, Point2D position, Point2D speed) {
diff --git a/java2-lab02-v2/src/main/java/lab/game/Routines.java b/src/main/java/lab/game/Routines.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/Routines.java
rename to src/main/java/lab/game/Routines.java
diff --git a/java2-lab02-v2/src/main/java/lab/game/WorldEntity.java b/src/main/java/lab/game/WorldEntity.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/game/WorldEntity.java
rename to src/main/java/lab/game/WorldEntity.java
diff --git a/java2-lab02-v2/src/main/java/lab/gui/App.java b/src/main/java/lab/gui/App.java
similarity index 97%
rename from java2-lab02-v2/src/main/java/lab/gui/App.java
rename to src/main/java/lab/gui/App.java
index fe54e7b..62f014e 100644
--- a/java2-lab02-v2/src/main/java/lab/gui/App.java
+++ b/src/main/java/lab/gui/App.java
@@ -9,6 +9,7 @@ import javafx.scene.Parent;
 import javafx.scene.Scene;
 import javafx.stage.Stage;
 import javafx.stage.WindowEvent;
+import lab.Config;
 
 /**
  * Class <b>App</b> - extends class Application and it is an entry point of the
@@ -23,6 +24,7 @@ public class App extends Application {
 	private Stage primaryStage;
 	
 	public static void main(String[] args) {
+		Config.configure(new Config());
 		launch(args);
 	}
 
diff --git a/java2-lab02-v2/src/main/java/lab/gui/GameController.java b/src/main/java/lab/gui/GameController.java
similarity index 100%
rename from java2-lab02-v2/src/main/java/lab/gui/GameController.java
rename to src/main/java/lab/gui/GameController.java
diff --git a/java2-lab02-v2/src/main/java/lab/gui/MainScreenController.java b/src/main/java/lab/gui/MainScreenController.java
similarity index 84%
rename from java2-lab02-v2/src/main/java/lab/gui/MainScreenController.java
rename to src/main/java/lab/gui/MainScreenController.java
index 59b0282..f362c76 100644
--- a/java2-lab02-v2/src/main/java/lab/gui/MainScreenController.java
+++ b/src/main/java/lab/gui/MainScreenController.java
@@ -3,7 +3,6 @@ package lab.gui;
 import java.io.IOException;
 import java.util.List;
 
-import cz.vsb.fei.java2.lab02.common.Score;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.scene.control.Button;
@@ -13,7 +12,8 @@ import javafx.scene.control.TextField;
 import javafx.scene.control.ToggleButton;
 import javafx.scene.control.ToggleGroup;
 import javafx.scene.control.cell.PropertyValueFactory;
-import lab.ScoreStorageFactory;
+import lab.Config;
+import lab.data.Score;
 import lab.game.Difficult;
 
 /**
@@ -70,17 +70,17 @@ public class MainScreenController {
     void btnGenerateScoreAction(ActionEvent event) {
     	Score score = Score.generate();
     	this.scores.getItems().add(score);
-    	ScoreStorageFactory.getInstance().insertScore(score);
+    	Config.getInstance().getScoreStorageInterface().insertScore(score);
     }
 
     @FXML
     void btnLoadAllAction(ActionEvent event) {
-    	updateScoreTable(ScoreStorageFactory.getInstance().getAll());
+    	updateScoreTable(Config.getInstance().getScoreStorageInterface().getAll());
     }
 
     @FXML
     void btnLoadFirstTenAction(ActionEvent event) {
-    	updateScoreTable(ScoreStorageFactory.getInstance().getFirstTen());
+    	updateScoreTable(Config.getInstance().getScoreStorageInterface().getFirstTen());
     }
     
     private void updateScoreTable(List<Score> scores) {
@@ -103,9 +103,8 @@ public class MainScreenController {
 	}
 	
 	private void initDB() {
-		//Stream.generate(Score::generate).limit(10).toList();
-		ScoreStorageFactory.getInstance().init();
-		scores.getItems().addAll(ScoreStorageFactory.getInstance().getAll());
+		Config.getInstance().getScoreStorageInterface().init();
+		scores.getItems().addAll(Config.getInstance().getScoreStorageInterface().getAll());
 	}
 
 }
diff --git a/java2-lab02-db-v2/src/main/java/cz/vsb/fei/java2/lab02/db/DbConnector.java b/src/main/java/lab/storage/DbConnector.java
similarity index 92%
rename from java2-lab02-db-v2/src/main/java/cz/vsb/fei/java2/lab02/db/DbConnector.java
rename to src/main/java/lab/storage/DbConnector.java
index 4f8c076..73cbefa 100644
--- a/java2-lab02-db-v2/src/main/java/cz/vsb/fei/java2/lab02/db/DbConnector.java
+++ b/src/main/java/lab/storage/DbConnector.java
@@ -1,4 +1,4 @@
-package cz.vsb.fei.java2.lab02.db;
+package lab.storage;
 
 import java.sql.Connection;
 import java.sql.DriverManager;
@@ -9,8 +9,8 @@ import java.sql.Statement;
 import java.util.ArrayList;
 import java.util.List;
 
-import cz.vsb.fei.java2.lab02.common.Score;
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
+import lab.data.Score;
+
 
 public class DbConnector implements ScoreStorageInterface {
 
diff --git a/java2-lab02-file-v2/src/main/java/cz/vsb/fei/file/FileStorage.java b/src/main/java/lab/storage/FileStorage.java
similarity index 91%
rename from java2-lab02-file-v2/src/main/java/cz/vsb/fei/file/FileStorage.java
rename to src/main/java/lab/storage/FileStorage.java
index 291811e..a3228c1 100644
--- a/java2-lab02-file-v2/src/main/java/cz/vsb/fei/file/FileStorage.java
+++ b/src/main/java/lab/storage/FileStorage.java
@@ -1,4 +1,4 @@
-package cz.vsb.fei.file;
+package lab.storage;
 
 import java.io.IOException;
 import java.nio.file.Files;
@@ -10,8 +10,7 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Stream;
 
-import cz.vsb.fei.java2.lab02.common.Score;
-import cz.vsb.fei.java2.lab02.common.ScoreStorageInterface;
+import lab.data.Score;
 
 public class FileStorage implements ScoreStorageInterface {
 
diff --git a/java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/ScoreStorageInterface.java b/src/main/java/lab/storage/ScoreStorageInterface.java
similarity index 78%
rename from java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/ScoreStorageInterface.java
rename to src/main/java/lab/storage/ScoreStorageInterface.java
index deb19b3..67ee80d 100644
--- a/java2-lab02-common-v2/src/main/java/cz/vsb/fei/java2/lab02/common/ScoreStorageInterface.java
+++ b/src/main/java/lab/storage/ScoreStorageInterface.java
@@ -1,7 +1,9 @@
-package cz.vsb.fei.java2.lab02.common;
+package lab.storage;
 
 import java.util.List;
 
+import lab.data.Score;
+
 public interface ScoreStorageInterface {
 
 	List<Score> getAll();
diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java
new file mode 100644
index 0000000..732cf18
--- /dev/null
+++ b/src/main/java/module-info.java
@@ -0,0 +1,11 @@
+module cz.vsb.fei.java2.lab03_module {
+	requires transitive javafx.controls;
+	requires javafx.fxml;
+	requires javafx.base;
+	requires java.sql;
+
+	opens lab.gui to javafx.fxml;
+	opens lab.data to javafx.base;
+
+	exports lab.gui to javafx.fxml, javafx.graphics;
+}
\ No newline at end of file
diff --git a/java2-lab02-v2/src/main/resources/lab/game/red-monster.gif b/src/main/resources/lab/game/red-monster.gif
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/game/red-monster.gif
rename to src/main/resources/lab/game/red-monster.gif
diff --git a/java2-lab02-v2/src/main/resources/lab/game/spike.gif b/src/main/resources/lab/game/spike.gif
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/game/spike.gif
rename to src/main/resources/lab/game/spike.gif
diff --git a/java2-lab02-v2/src/main/resources/lab/gui/application.css b/src/main/resources/lab/gui/application.css
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/gui/application.css
rename to src/main/resources/lab/gui/application.css
diff --git a/java2-lab02-v2/src/main/resources/lab/gui/game-background.jpg b/src/main/resources/lab/gui/game-background.jpg
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/gui/game-background.jpg
rename to src/main/resources/lab/gui/game-background.jpg
diff --git a/java2-lab02-v2/src/main/resources/lab/gui/gameWindow.fxml b/src/main/resources/lab/gui/gameWindow.fxml
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/gui/gameWindow.fxml
rename to src/main/resources/lab/gui/gameWindow.fxml
diff --git a/java2-lab02-v2/src/main/resources/lab/gui/mainScreen.fxml b/src/main/resources/lab/gui/mainScreen.fxml
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/gui/mainScreen.fxml
rename to src/main/resources/lab/gui/mainScreen.fxml
diff --git a/java2-lab02-v2/src/main/resources/lab/gui/red-monster-menu-background.jpg b/src/main/resources/lab/gui/red-monster-menu-background.jpg
similarity index 100%
rename from java2-lab02-v2/src/main/resources/lab/gui/red-monster-menu-background.jpg
rename to src/main/resources/lab/gui/red-monster-menu-background.jpg
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/AllOfContinue.java b/src/test/java/jez04/structure/test/AllOfContinue.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/AllOfContinue.java
rename to src/test/java/jez04/structure/test/AllOfContinue.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/ClassExist.java b/src/test/java/jez04/structure/test/ClassExist.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/ClassExist.java
rename to src/test/java/jez04/structure/test/ClassExist.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/ClassStructureTest.java b/src/test/java/jez04/structure/test/ClassStructureTest.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/ClassStructureTest.java
rename to src/test/java/jez04/structure/test/ClassStructureTest.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/ContainsInnerClasses.java b/src/test/java/jez04/structure/test/ContainsInnerClasses.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/ContainsInnerClasses.java
rename to src/test/java/jez04/structure/test/ContainsInnerClasses.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/HasMethod.java b/src/test/java/jez04/structure/test/HasMethod.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/HasMethod.java
rename to src/test/java/jez04/structure/test/HasMethod.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/HasProperty.java b/src/test/java/jez04/structure/test/HasProperty.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/HasProperty.java
rename to src/test/java/jez04/structure/test/HasProperty.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/IsDescendatOf.java b/src/test/java/jez04/structure/test/IsDescendatOf.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/IsDescendatOf.java
rename to src/test/java/jez04/structure/test/IsDescendatOf.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/IsInterface.java b/src/test/java/jez04/structure/test/IsInterface.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/IsInterface.java
rename to src/test/java/jez04/structure/test/IsInterface.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/ResourceContains.java b/src/test/java/jez04/structure/test/ResourceContains.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/ResourceContains.java
rename to src/test/java/jez04/structure/test/ResourceContains.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/SrcContains.java b/src/test/java/jez04/structure/test/SrcContains.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/SrcContains.java
rename to src/test/java/jez04/structure/test/SrcContains.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/StructureHelper.java b/src/test/java/jez04/structure/test/StructureHelper.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/StructureHelper.java
rename to src/test/java/jez04/structure/test/StructureHelper.java
diff --git a/java2-lab02-v2/src/test/java/jez04/structure/test/StructureMatcher.java b/src/test/java/jez04/structure/test/StructureMatcher.java
similarity index 100%
rename from java2-lab02-v2/src/test/java/jez04/structure/test/StructureMatcher.java
rename to src/test/java/jez04/structure/test/StructureMatcher.java
-- 
GitLab