Compare commits

...

4 Commits

Author SHA1 Message Date
Daniel ecaa9f2569 Changed RuntimeException to a todo 2022-09-15 19:43:54 -04:00
Daniel ed2cc1479e added some comment stubs 2022-09-15 19:28:19 -04:00
Daniel c2c8dd2e5c Developed Initiation from WorldSystemDatabase
added initiation functionality for the replacement to the dependence config.
2022-09-15 19:06:07 -04:00
Daniel 4b8b90d6e8 Added MockBucket
Added MockBucket to allow for new Tests to be written for each Class planned to be overhauled
2022-09-15 17:02:07 -04:00
33 changed files with 472 additions and 195 deletions

17
pom.xml
View File

@ -40,6 +40,11 @@
<url>https://maven.enginehub.org/repo/</url>
</repository>
<repository>
<id>papermc</id>
<url>https://repo.papermc.io/repository/maven-public/</url>
</repository>
</repositories>
<dependencyManagement>
@ -130,6 +135,18 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.seeseemelk</groupId>
<artifactId>MockBukkit-v1.19</artifactId>
<version>2.29.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.9.1</version>
</dependency>
</dependencies>

View File

View File

@ -0,0 +1 @@
{"players":{"BlankUUID":{"playerWorlds":[]}}}

View File

@ -0,0 +1 @@
{"players":{"BlankUUID":{"playerWorlds":[]}}}

View File

@ -0,0 +1 @@
{"players":{"BlankUUID":{"playerWorlds":[]}}}

View File

@ -0,0 +1,118 @@
package de.butzlabben.world.data;
import com.google.gson.Gson;
import de.butzlabben.world.data.objects.PlayerData;
import de.butzlabben.world.data.objects.WorldSystemData;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
public class WorldDatabase {
//This is Set to Static to allow for only one to prevent Data to be not saved;
private static WorldSystemData wsDataBase;
private String dbFilePath;
/**
* Creates the WorldSystemDatabaseObject from the given path
* This Constructor is currently designed for tests
* @param databaseFilePath
*/
public WorldDatabase(String databaseFilePath) {
this.dbFilePath = databaseFilePath;
this.wsDataBase = getWorldSystemDatabase();
}
/**
* Gets the current count of player data stored by WorldSystem
* @return num of players with worldsystem data
*/
public int getPlayerCount() {
return wsDataBase.getPlayers();
}
/**
* Adds a player to the database
* @param playerUUID the uuid of the player to add
*/
public void addPlayer(String playerUUID) {
wsDataBase.addplayer(playerUUID);
saveWSData();
}
//This Function is used by the constructor
// to translate a json file into
// a WorldSystemData Object
private WorldSystemData getWorldSystemDatabase() {
//init necessary local variables
File wsDataFile = new File(this.dbFilePath);
Gson gson = new Gson();
WorldSystemData newDatabase = null;
//Checks if the file exists if not create it
if (!wsDataFile.exists()) {
newDatabase = new WorldSystemData();
saveWSData();
return newDatabase;
}
//if the file exist read it
try {
Reader reader = Files.newBufferedReader(Paths.get(this.dbFilePath));
newDatabase = gson.fromJson(reader, WorldSystemData.class);
reader.close();
} catch (IOException e) {
//Something bad when really wrong
//so the server admin needs to be notifyed
//and the current db needs to be duplicated
//into a special Directory
//TODO Log Warning
//TODO Copy current db file
}
//if the WorldSystemData object was never created
//creates it
//Causes: empty file, very bad error(like data Corruption)
if (newDatabase == null) {
newDatabase = new WorldSystemData();
}
return newDatabase;
}
//This Function saves the current
//WorldSystemData Object to the json
//File (It does every time a record is
//changed to prevent data loss).
private void saveWSData() {
//Init all local variable need
Gson gson = new Gson();
File dataFile = new File(this.dbFilePath);
//File the File Does not exist then create it
if (!dataFile.exists()) {
try {
dataFile.createNewFile();
} catch (IOException e) {
//Should Never Run
//TODO add to Logger
}
}
//Convert the data into a json formated
//string then write it to a file.
try {
FileWriter writer = new FileWriter(dataFile);
gson.toJson(wsDataBase, writer);
writer.close();
} catch (IOException e) {
//Should never run
throw new RuntimeException(e);
}
}
}

View File

@ -0,0 +1,27 @@
package de.butzlabben.world.data.objects;
import java.util.ArrayList;
import java.util.List;
public class PlayerData {
//TODO Write Tests
public List<PlayerWorld> playerWorlds;
public PlayerData() {
playerWorlds = new ArrayList<PlayerWorld>();
}
public void addWorld(PlayerWorld world) {
playerWorlds.add(world);
}
public int getWorldCount() {
return playerWorlds.size();
}
public PlayerWorld getWorldAt(int index) {
return playerWorlds.get(index);
}
}

View File

@ -0,0 +1,11 @@
package de.butzlabben.world.data.objects;
public class PlayerWorld {
public int worldNumber;
public long lastLoaded;
public PlayerWorld(String OWNER, String OWNERname, int worldNumber) {
this.worldNumber = worldNumber;
this.lastLoaded = 0;
}
}

View File

@ -0,0 +1,41 @@
package de.butzlabben.world.data.objects;
import de.butzlabben.WorldSystem;
import de.butzlabben.world.data.WorldDatabase;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class WorldSystemData {
public Map<String, PlayerData> players;
public WorldSystemData() {
players = new HashMap<String, PlayerData>();
}
public Boolean addplayer(String uuid) {
if (players.get(uuid) == null) {
players.put(uuid, new PlayerData());
return true;
}
return false;
}
public void addWorldToPlayer(String uuid, PlayerWorld world) {
if (players.get(uuid) != null) {
players.get(uuid).addWorld(world);
}
}
public int getPlayers() {
return players.size();
}
}

View File

@ -0,0 +1,80 @@
package de.butzlabben.world.data;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import static org.junit.jupiter.api.Assertions.*;
public class TestWorldDatabase {
/**
* Before the Test this function cleans out the Working Directory
* This allows us to view the results of our prevous tests as needed
* but then allows us to run the tests Fresh.
*/
@BeforeAll
static void CleanLastTest() {
File workingDir = new File("src\\TestFiles\\workingDir\\");
for (File file : workingDir.listFiles()) {
file.delete();
}
}
/**
* This Tests the Basis Initaliaztion of the DataBase from nothing
*/
@Test
public void testDatabaseInitalizationFromNoFile() {
final String path = "src\\TestFiles\\workingDir\\dataBaseInitTestFromNoFile.json";
WorldDatabase wb = new WorldDatabase(path);
assertEquals(0, wb.getPlayerCount());
}
/**
* This Test Creates the new Object and Verifies that is can save data Properly;
* @throws FileNotFoundException
*/
@Test
public void testDatabaseInitalizationCreateValidFile() throws FileNotFoundException {
final String path = "src\\TestFiles\\workingDir\\dataBaseInitTestCreateValidFile.json";
WorldDatabase wb = new WorldDatabase(path);
wb.addPlayer("BlankUUID");
String input = new Scanner(new File(path)).nextLine();
assertEquals("{\"players\":{\"BlankUUID\":{\"playerWorlds\":[]}}}", input);
}
/**
* This Test to see if it can create to database when loading from a blank File
*/
@Test
public void testDatabaseInitalizationWithExistingEmptyFile() {
final String path = "src\\TestFiles\\ExistingEmptyFileInit.json";
WorldDatabase wb = new WorldDatabase(path);
assertEquals(0, wb.getPlayerCount());
}
/**
* This Test to see if it can create to database when loading from a populated File
*/
@Test
public void testDatabaseInitalizationWithPopulatedEmptyFile() throws FileNotFoundException {
final String path = "src\\TestFiles\\ExistingPopulatedFileInit.json";
WorldDatabase wb = new WorldDatabase(path);
String input = new Scanner(new File(path)).nextLine();
assertEquals("{\"players\":{\"BlankUUID\":{\"playerWorlds\":[]}}}", input);
assertEquals(1, wb.getPlayerCount());
}
}

View File

@ -1,16 +0,0 @@
package de.butzlabben.world.wrapper;
import org.bukkit.WorldCreator;
import org.junit.Test;
import static org.junit.Assert.assertNotNull;
public class GeneratorSettingsTest {
@Test
public void asWorldCreator() {
GeneratorSettings settings = new GeneratorSettings();
WorldCreator creator = settings.asWorldCreator("test");
assertNotNull(creator);
}
}

View File

@ -1,7 +0,0 @@
name: 'WorldSystem'
version: '2.4.20'
main: de.bulzlabben.world.WorldSystem
description: The one world per player solution you have always dreamed of.
api-version: '1.17'

View File

@ -1,94 +1,93 @@
de/butzlabben/world/config/MessageConfig.class
de/butzlabben/world/gui/playeroption/BuildStatus.class
org/bstats/bukkit/Metrics$2.class
de/butzlabben/inventory/OrcInventory.class
de/butzlabben/world/util/MoneyUtil.class
de/butzlabben/world/wrapper/CreatorAdapter.class
org/bstats/bukkit/Metrics$1$1.class
de/butzlabben/world/gui/playeroption/WorldEditStatus.class
de/butzlabben/world/util/database/SqliteConnection.class
de/butzlabben/inventory/DependListener.class
de/butzlabben/world/listener/WorldInitSkipSpawn.class
de/butzlabben/world/event/WorldAddmemberEvent.class
de/butzlabben/world/gui/clicklistener/CommandExecutorClickListener.class
org/bstats/bukkit/Metrics$AdvancedBarChart.class
org/bstats/bukkit/Metrics$CustomChart.class
de/butzlabben/world/config/WorldConfig.class
de/butzlabben/world/listener/BlockListener.class
de/butzlabben/world/listener/WorldEditListener.class
de/butzlabben/world/command/commands/WorldSettingsCommands.class
org/bstats/bukkit/Metrics$1.class
org/bstats/bukkit/Metrics.class
de/butzlabben/world/gui/worldoption/FireStatus.class
de/butzlabben/world/gui/PlayersPageGUI.class
de/butzlabben/world/gui/playeroption/GamemodeStatus.class
org/bstats/bukkit/Metrics$AdvancedPie.class
de/butzlabben/world/wrapper/WorldPlayer.class
de/butzlabben/world/wrapper/SystemWorld$2.class
de/butzlabben/world/autoupdater/UpdateInformations.class
de/butzlabben/world/gui/worldoption/TntStatus.class
de/butzlabben/world/GCRunnable.class
de/butzlabben/world/util/database/DatabaseUtil.class
de/butzlabben/world/util/PlayerPositions.class
de/butzlabben/world/listener/PlayerListener.class
de/butzlabben/world/GameProfileBuilder$CachedProfile.class
de/butzlabben/world/event/WorldToggleFireEvent.class
org/bstats/bukkit/Metrics$DrilldownPie.class
de/butzlabben/world/command/commands/WorldAdministrateCommand.class
de/butzlabben/world/WorldSystem.class
de/butzlabben/world/util/PlayerWrapper.class
de/butzlabben/world/util/PapiExtension.class
de/butzlabben/world/wrapper/WorldTemplate.class
de/butzlabben/inventory/OrcListener.class
de/butzlabben/world/config/SettingsConfig.class
de/butzlabben/inventory/OrcItem.class
de/butzlabben/world/util/database/DatabaseConnection.class
de/butzlabben/world/gui/playeroption/TeleportStatus.class
de/butzlabben/world/event/WorldToggleTntEvent.class
de/butzlabben/world/event/WorldCreateEvent.class
org/bstats/bukkit/Metrics$SimplePie.class
de/butzlabben/world/util/VersionUtil.class
de/butzlabben/world/event/WorldRemovememberEvent.class
de/butzlabben/world/event/WorldResetEvent.class
de/butzlabben/inventory/OrcClickListener.class
de/butzlabben/world/GameProfileBuilder$GameProfileSerializer.class
de/butzlabben/world/command/CommandRegistry.class
de/butzlabben/world/wrapper/SystemWorld.class
de/butzlabben/world/util/database/MysqlConnection.class
de/butzlabben/world/gui/WorldChooseGUI.class
de/butzlabben/world/listener/CommandListener.class
de/butzlabben/world/util/database/DatabaseProvider.class
de/butzlabben/world/wrapper/AsyncCreatorAdapter.class
de/butzlabben/world/gui/PlayerOptionsGUI.class
de/butzlabben/inventory/CostumInv.class
de/butzlabben/world/gui/WorldSystemGUI.class
org/bstats/bukkit/Metrics$MultiLineChart.class
de/butzlabben/world/wrapper/SystemWorld$1.class
de/butzlabben/world/config/PluginConfig.class
de/butzlabben/world/config/WorldPerm.class
de/butzlabben/world/util/TeleportUtil.class
de/butzlabben/world/util/Worldutils.class
de/butzlabben/world/wrapper/WorldTemplateProvider.class
de/butzlabben/world/gui/WorldOptionsGUI.class
de/butzlabben/inventory/pages/InventoryPage.class
de/butzlabben/world/config/GuiConfig.class
de/butzlabben/world/event/WorldUnloadEvent.class
de/butzlabben/world/GameProfileBuilder.class
de/butzlabben/world/event/WorldDeleteEvent.class
de/butzlabben/world/gui/clicklistener/InventoryOpenClickListener.class
de/butzlabben/world/wrapper/SystemWorld$1$1.class
de/butzlabben/world/autoupdater/AutoUpdater.class
de/butzlabben/world/WorldCheckerRunnable.class
de/butzlabben/world/event/WorldEvent.class
de/butzlabben/world/autoupdater/AutoUpdate.class
de/butzlabben/world/wrapper/GeneratorSettings.class
de/butzlabben/world/command/commands/WSCommands.class
de/butzlabben/world/config/Entry.class
org/bstats/bukkit/Metrics$SimpleBarChart.class
de/butzlabben/world/gui/clicklistener/ComingSoonClickListener.class
de/butzlabben/world/config/DependenceConfig.class
org/bstats/bukkit/Metrics$SingleLineChart.class
de/butzlabben/world/event/WorldLoadEvent.class
de/butzlabben/inventory/pages/PageGUICreator.class
de/butzlabben/world/gui/GuiCommand.class
de/butzlabben/inventory/pages/ItemConverter.class
de\butzlabben\world\command\CommandRegistry.class
de\butzlabben\world\util\TeleportUtil.class
de\butzlabben\world\command\commands\WorldAdministrateCommand.class
de\butzlabben\world\util\database\DatabaseUtil.class
de\butzlabben\world\wrapper\GeneratorSettings.class
de\butzlabben\world\config\PluginConfig.class
org\bstats\bukkit\Metrics$2.class
de\butzlabben\world\listener\CommandListener.class
org\bstats\bukkit\Metrics$SimpleBarChart.class
de\butzlabben\world\listener\PlayerListener.class
de\butzlabben\world\wrapper\AsyncCreatorAdapter.class
de\butzlabben\world\event\WorldResetEvent.class
de\butzlabben\world\listener\WorldInitSkipSpawn.class
de\butzlabben\world\event\WorldToggleTntEvent.class
de\butzlabben\world\autoupdater\AutoUpdater.class
de\butzlabben\inventory\pages\PageGUICreator.class
de\butzlabben\world\wrapper\SystemWorld$1.class
de\butzlabben\world\config\GuiConfig.class
de\butzlabben\world\listener\BlockListener.class
de\butzlabben\world\GameProfileBuilder$GameProfileSerializer.class
de\butzlabben\world\util\database\DatabaseProvider.class
de\butzlabben\world\event\WorldEvent.class
de\butzlabben\world\wrapper\SystemWorld$1$1.class
de\butzlabben\world\gui\worldoption\TntStatus.class
de\butzlabben\world\autoupdater\UpdateInformations.class
de\butzlabben\inventory\OrcItem.class
de\butzlabben\inventory\pages\InventoryPage.class
de\butzlabben\world\gui\playeroption\BuildStatus.class
de\butzlabben\inventory\DependListener.class
de\butzlabben\world\gui\WorldSystemGUI.class
de\butzlabben\world\gui\playeroption\TeleportStatus.class
de\butzlabben\world\gui\WorldOptionsGUI.class
de\butzlabben\world\util\database\MysqlConnection.class
de\butzlabben\world\util\PlayerPositions.class
de\butzlabben\world\event\WorldRemovememberEvent.class
de\butzlabben\world\event\WorldToggleFireEvent.class
de\butzlabben\inventory\CostumInv.class
de\butzlabben\world\config\MessageConfig.class
de\butzlabben\world\WorldCheckerRunnable.class
de\butzlabben\world\wrapper\WorldTemplateProvider.class
de\butzlabben\world\wrapper\SystemWorld.class
org\bstats\bukkit\Metrics$CustomChart.class
de\butzlabben\world\wrapper\CreatorAdapter.class
de\butzlabben\world\wrapper\WorldPlayer.class
de\butzlabben\inventory\pages\ItemConverter.class
de\butzlabben\world\gui\clicklistener\InventoryOpenClickListener.class
org\bstats\bukkit\Metrics.class
de\butzlabben\world\command\commands\WSCommands.class
de\butzlabben\world\GCRunnable.class
de\butzlabben\world\gui\PlayersPageGUI.class
de\butzlabben\inventory\OrcInventory.class
de\butzlabben\inventory\OrcListener.class
de\butzlabben\world\util\PlayerWrapper.class
org\bstats\bukkit\Metrics$SingleLineChart.class
de\butzlabben\world\util\PapiExtension.class
de\butzlabben\inventory\OrcClickListener.class
de\butzlabben\world\config\SettingsConfig.class
de\butzlabben\world\event\WorldLoadEvent.class
de\butzlabben\world\gui\PlayerOptionsGUI.class
de\butzlabben\world\util\VersionUtil.class
org\bstats\bukkit\Metrics$1$1.class
de\butzlabben\world\gui\worldoption\FireStatus.class
org\bstats\bukkit\Metrics$AdvancedPie.class
de\butzlabben\world\config\DependenceConfig.class
de\butzlabben\world\event\WorldCreateEvent.class
de\butzlabben\world\event\WorldUnloadEvent.class
de\butzlabben\world\listener\WorldEditListener.class
de\butzlabben\world\util\Worldutils.class
de\butzlabben\world\config\Entry.class
org\bstats\bukkit\Metrics$AdvancedBarChart.class
de\butzlabben\world\gui\GuiCommand.class
de\butzlabben\world\command\commands\WorldSettingsCommands.class
de\butzlabben\world\event\WorldDeleteEvent.class
org\bstats\bukkit\Metrics$MultiLineChart.class
de\butzlabben\world\GameProfileBuilder$CachedProfile.class
de\butzlabben\world\gui\playeroption\WorldEditStatus.class
de\butzlabben\world\wrapper\SystemWorld$2.class
de\butzlabben\world\GameProfileBuilder.class
de\butzlabben\world\autoupdater\AutoUpdate.class
de\butzlabben\world\util\database\SqliteConnection.class
de\butzlabben\world\util\database\DatabaseConnection.class
de\butzlabben\world\gui\clicklistener\ComingSoonClickListener.class
de\butzlabben\world\util\MoneyUtil.class
de\butzlabben\world\gui\clicklistener\CommandExecutorClickListener.class
de\butzlabben\world\event\WorldAddmemberEvent.class
de\butzlabben\world\wrapper\WorldTemplate.class
org\bstats\bukkit\Metrics$SimplePie.class
de\butzlabben\world\config\WorldConfig.class
de\butzlabben\world\config\WorldPerm.class
de\butzlabben\world\gui\playeroption\GamemodeStatus.class
org\bstats\bukkit\Metrics$1.class
de\butzlabben\world\gui\WorldChooseGUI.class
org\bstats\bukkit\Metrics$DrilldownPie.class

View File

@ -1,78 +1,82 @@
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/Worldutils.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/OrcItem.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/command/commands/WorldAdministrateCommand.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/listener/CommandListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/WorldConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/WorldPerm.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/DependenceConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldResetEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/database/DatabaseUtil.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/playeroption/GamemodeStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/pages/InventoryPage.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/PlayerWrapper.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/WorldOptionsGUI.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/database/SqliteConnection.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/WorldChooseGUI.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/playeroption/WorldEditStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/OrcInventory.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/database/DatabaseProvider.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/CreatorAdapter.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/MessageConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/command/CommandRegistry.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/playeroption/BuildStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/worldoption/TntStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/autoupdater/UpdateInformations.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/PlayerPositions.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/pages/ItemConverter.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/command/commands/WSCommands.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldRemovememberEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/PlayersPageGUI.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/TeleportUtil.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/clicklistener/InventoryOpenClickListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/WorldSystem.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/clicklistener/ComingSoonClickListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldDeleteEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/OrcListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldCreateEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldToggleTntEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/PlayerOptionsGUI.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldAddmemberEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/WorldPlayer.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/database/DatabaseConnection.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/Entry.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/worldoption/FireStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/PapiExtension.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/GuiCommand.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/WorldTemplate.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/pages/PageGUICreator.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/CostumInv.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/org/bstats/bukkit/Metrics.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/GeneratorSettings.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/GameProfileBuilder.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/clicklistener/CommandExecutorClickListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/WorldSystemGUI.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/GCRunnable.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/WorldTemplateProvider.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/WorldCheckerRunnable.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldToggleFireEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/command/commands/WorldSettingsCommands.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/listener/BlockListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/autoupdater/AutoUpdater.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/database/MysqlConnection.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/DependListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/listener/WorldEditListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/AsyncCreatorAdapter.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/listener/WorldInitSkipSpawn.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldLoadEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/PluginConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/listener/PlayerListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/VersionUtil.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/gui/playeroption/TeleportStatus.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/GuiConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/inventory/OrcClickListener.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/wrapper/SystemWorld.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/SettingsConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/event/WorldUnloadEvent.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/autoupdater/AutoUpdate.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/util/MoneyUtil.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\WorldChooseGUI.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\playeroption\BuildStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldUnloadEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\OrcClickListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\listener\CommandListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\listener\BlockListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\pages\InventoryPage.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\data\objects\PlayerData.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\listener\PlayerListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldRemovememberEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldToggleFireEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\GameProfileBuilder.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\listener\WorldEditListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\worldoption\TntStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\pages\PageGUICreator.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\WorldTemplateProvider.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\VersionUtil.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\autoupdater\AutoUpdater.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\command\commands\WorldSettingsCommands.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\DependListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\pages\ItemConverter.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldDeleteEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\PlayerPositions.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldLoadEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\WorldOptionsGUI.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\WorldConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\OrcListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\WorldPerm.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\OrcItem.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\playeroption\GamemodeStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\playeroption\TeleportStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldToggleTntEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\MoneyUtil.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\SettingsConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\MessageConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\database\DatabaseConnection.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\database\MysqlConnection.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\GuiCommand.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\database\SqliteConnection.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\PluginConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\WorldCheckerRunnable.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\autoupdater\UpdateInformations.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\TeleportUtil.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldCreateEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\PlayerOptionsGUI.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\GCRunnable.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\database\DatabaseProvider.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\command\CommandRegistry.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\data\objects\PlayerWorld.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\CostumInv.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldAddmemberEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\listener\WorldInitSkipSpawn.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\WorldPlayer.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\PlayerWrapper.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\autoupdater\AutoUpdate.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\clicklistener\CommandExecutorClickListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\database\DatabaseUtil.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\data\objects\WorldSystemData.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\command\commands\WorldAdministrateCommand.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\command\commands\WSCommands.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\WorldSystemGUI.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\playeroption\WorldEditStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldResetEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\PapiExtension.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\util\Worldutils.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\DependenceConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\worldoption\FireStatus.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\WorldTemplate.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\AsyncCreatorAdapter.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\inventory\OrcInventory.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\CreatorAdapter.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\SystemWorld.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\PlayersPageGUI.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\event\WorldEvent.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\org\bstats\bukkit\Metrics.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\GuiConfig.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\data\WorldDatabase.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\clicklistener\InventoryOpenClickListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\wrapper\GeneratorSettings.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\WorldSystem.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\gui\clicklistener\ComingSoonClickListener.java
C:\Users\train\Documents\Projects\WorldSystem\src\main\java\de\butzlabben\world\config\Entry.java