Compare commits

...

7 Commits

Author SHA1 Message Date
Daniel 9f4fbead7f Remove all CLIs 2022-10-05 19:07:07 -04:00
Daniel 2425752d1b Merge remote-tracking branch 'origin/master' into Rewrite 2022-10-05 19:05:57 -04:00
Daniel 0c47de7a3e Small Update to TabComplete 2022-10-05 19:05:39 -04:00
trainerlord b1e9724a5c
Delete gradle.yml 2022-10-05 19:02:58 -04:00
trainerlord f0a7edcd61
Create maven.yml 2022-10-05 19:02:43 -04:00
Daniel 95304d2e53 Added the Tab Complete System 2022-10-05 17:31:15 -04:00
Daniel 19e61e2ae0 Completed Command Framework
The Command Framework is done and has been tested via JUnit Testing and via in game testing.
Along with that the project can properly be build into a valid plugin
2022-10-05 16:28:18 -04:00
71 changed files with 1603 additions and 533 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -1,82 +0,0 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '21 9 * * 0'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'java' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
# Learn more:
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
steps:
- name: Checkout repository
uses: actions/checkout@v2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
- name: Set up JDK 16
uses: actions/setup-java@v1
with:
java-version: 16
- name: Cache Gradle
id: cache-gradle
uses: actions/cache@v1
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle
- uses: actions/checkout@v1
- name: Grant execute permission to gradlew
run: chmod +x gradlew
- name: Build
run: ./gradlew build -x test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload build artifacts
uses: actions/upload-artifact@v2
with:
path: "**/build/libs"
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

View File

@ -1,81 +0,0 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ "master" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "master" ]
schedule:
- cron: '35 13 * * 2'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'java' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps:
- name: Build and test
uses: actions/checkout@v3
- name: Setup JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'adopt'
- name: Run the Maven verify phase
run: mvn --batch-mode --update-snapshots verify
#- name: Checkout repository
# uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
#- name: Initialize CodeQL
# uses: github/codeql-action/init@v2
# with:
# languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
#- name: Autobuild
# uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh
#- name: Perform CodeQL Analysis
# uses: github/codeql-action/analyze@v2

View File

@ -1,119 +0,0 @@
name: Build
on: [push]
jobs:
build:
runs-on: ubuntu-18.04
# We want to run on external PRs, but not on our own internal PRs as they'll be run
# by the push to the branch.
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: 17
- name: Cache Gradle
id: cache-gradle
uses: actions/cache@v1
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle
- uses: actions/checkout@v1
- name: Grant execute permission to gradlew
run: chmod +x gradlew
- name: Build
run: ./gradlew build -x test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload build artifacts
uses: actions/upload-artifact@v2
with:
path: "**/build/libs"
test:
runs-on: ubuntu-18.04
steps:
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: 17
- name: Cache Gradle
id: cache-gradle
uses: actions/cache@v1
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle
- uses: actions/checkout@v1
- name: Grant execute permission to gradlew
run: chmod +x gradlew
- name: Test
run: ./gradlew test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Coverage
run: ./gradlew jacocoTestReport
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload CodeCov Report
uses: codecov/codecov-action@v1
with:
file: "**/build/reports/jacoco/**/*.xml"
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v1.24
if: always()
with:
files: "**/build/test-results/**/*.xml"
release:
needs: [build, test]
if: github.ref == 'refs/heads/master' || 'refs/heads/beta' || github.ref == 'refs/heads/alpha'
runs-on: ubuntu-18.04
steps:
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: 17
- name: Set up Node.js v16.x
uses: actions/setup-node@v1
with:
node-version: "16.x"
- name: Cache Gradle
id: cache-gradle
uses: actions/cache@v1
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle
- uses: actions/checkout@v1
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Grant execute permission for update-versions.sh
run: chmod +x update-versions.sh
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_URL: "https://api.github.com/"
run: npx --legacy-peer-deps -p @semantic-release/changelog -p @semantic-release/git -p @semantic-release/exec -p gradle-semantic-release-plugin -p semantic-release semantic-release

123
TestFiles/TestConfig 2.yml Normal file
View File

@ -0,0 +1,123 @@
##########################################################################
### __ __ __ _______ __ ###
### \ \ / / / / / / ___/ / / ###
### \ \ __ / /___ ___/ /___/ / /____ ______/ /______________ ###
### \ \ / \ / / __ \/ _/ / __ /__ / / / / __/ __/ ___/ _ _ / ###
### \ \/ /\ \/ / /_/ / // / /_/ /__/ / /_/ /_ / /_/ ___/ // // / ###
### \__/ \__/\____/_//_/\__,_/____/\__, /___/\__/\___/_//_//_/ ###
### ___/ / ###
### \___/ ###
##########################################################################
####################
# General Settings #
####################
# The Language to plugin should run in
language: "en"
#The Path that the Worlds of players will be stored when not in use.
playerWorldsDir: 'plugins/WorldSystem/Worlds'
#The time that a world should take till it unloads from no use
unloadTime: 20
#Prefix on Messages sent by the plugin
prefix: '&8[&3WorldSystem&8] &6'
#Delete the world after set amount of days
#-1 to disable
deleteAfterDays: -1
#World Difficulty
#Options: PEACEFUL, EASY, NORMAL, HARD
worldDifficulty: 'EASY'
##########################
# World Creation Setting #
##########################
#Allow Players to Choose the Template they want
multiChoose: false
#The Default Generation File
#Warning: "do not add the .json"
defaultGenerator: 'Vanilla'
#World Generation Folder
worldGenTemplates: 'plugins/WorldSystem/Generators'
#World Borders
#The Default World Border Size for everyone
worldBorderDefaultSize: 500
#!Note: Dynamic World Borders Will Added back in a Future Update
#World Border Center
worldBorderCenter:
x: 0
z: 0
##########################
# World Entering/Exiting #
##########################
#This is the Settings you need to adjust to your server
serverSpawn:
#The Gamemode the Main server uses
#Options: Survival, Creative, Adventure
#Warning: Spectator is not a Valid Input
#Warning: Spelling Matters, Capitalization Does not
serverGamemode: 'Survival'
#The point the player should be placed when leaving a WS World
serverSpawnPoint:
worldName: 'world'
x: 0
y: 60
z: 0
#This is the Settings you need to adjust to your server
wsWorldSpawn:
#The Gamemode the Main server uses
#World Gamemode
#Options: Survival, Creative, Adventure
#Warning: Spectator is not a Valid Input
#Warning: Spelling Matters, Capitalization Does not
worldGameMode: 'Survival'
# places the player at their last known location in the world
useLastLocation: false
#The point the player should be placed when entering a WS World
#for the first Time
defaultWorldSpawnPoint:
worldName: 'world'
x: 0
y: 60
z: 0
###################
# World Gamerules #
###################
#!DevTODO create a class to handle this to make it cleaner
#Also Document this part of the config
announceAdvancements: true
commandBlockOutput: false
disableElytraMovementCheck: false
doDaylightCycle: true
doEntityDrops: true
doFireTick: true
doLimitedCrafting: false
doMobLoot: true
doMobSpawning: true
doTileDrops: true
doWeatherCycle: false
gameLoopFunction: false
keepInventory: true
logAdminCommands: true
maxCommandChainLength: 65536
maxEntityCramming: 24
mobGriefing: true
naturalRegeneration: true
randomTickSpeed: 3
reducedDebugInfo: false
sendCommandFeedback: true
showDeathMessages: true
spawnRadius: 10
spectatorsGenerateChunks: true

View File

@ -82,7 +82,7 @@ wsWorldSpawn:
#Warning: Spelling Matters, Capitalization Does not
worldGameMode: 'Survival'
# places the player at their last known location in the world
useLastLocation: false;
useLastLocation: false
#The point the player should be placed when entering a WS World
#for the first Time
defaultWorldSpawnPoint:
@ -96,7 +96,7 @@ wsWorldSpawn:
# These Config Options are for the Devlopment and Maintenace
# Of World System. These features are not for production.
devcmds: false;
devcmds: false
###################
# World Gamerules #

View File

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

View File

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

View File

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

View File

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>de.butzlabben</groupId>
<groupId>de.butzlabben.world</groupId>
<artifactId>WorldSystem</artifactId>
<version>2.4.20-SNAPSHOT</version>
@ -15,6 +15,7 @@
</properties>
<repositories>
<repository>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>

View File

@ -1,5 +1,69 @@
package de.butzlabben.world;
public class WorldSystem
import de.butzlabben.world.commands.WorldSystemCommandExecuter;
import de.butzlabben.world.commands.commands.DebugCommandTest;
import de.butzlabben.world.commands.commands.WorldSystemTabComplete;
import de.butzlabben.world.config.PluginConfig;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.plugin.java.JavaPluginLoader;
import java.io.File;
import java.io.FileNotFoundException;
public class WorldSystem extends JavaPlugin
{
private static PluginConfig cfg;
public WorldSystem()
{
super();
}
protected WorldSystem(JavaPluginLoader loader, PluginDescriptionFile description, File dataFolder, File file)
{
super(loader, description, dataFolder, file);
}
@Override
public void onEnable() {
createConfigs();
createCommands();
}
private void createCommands() {
WorldSystemCommandExecuter cmdExecuter = new WorldSystemCommandExecuter();
if (getWSConfig().allowDevCommands())
{
cmdExecuter.addCommand("test", new DebugCommandTest());
}
this.getCommand("ws").setExecutor(cmdExecuter);
this.getCommand("ws").setTabCompleter(new WorldSystemTabComplete(cmdExecuter));
}
private void createConfigs() {
File folder = getInstance().getDataFolder();
try
{
cfg = new PluginConfig(new File(folder, "config.yml"));
}
catch (FileNotFoundException e)
{
throw new RuntimeException(e);
}
}
public static PluginConfig getWSConfig() {
return cfg;
}
public static WorldSystem getInstance() {
return JavaPlugin.getPlugin(WorldSystem.class);
}
}

View File

@ -1,6 +1,10 @@
package de.butzlabben.world.commands;
import org.bukkit.command.CommandSender;
public interface WorldSystemCommand
{
public boolean run();
public boolean run(CommandSender sender);
public String[] arguments();
}

View File

@ -1,13 +1,34 @@
package de.butzlabben.world.commands;
import de.butzlabben.world.exceptions.InvaildCommandException;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.NotNull;
import java.util.HashMap;
import java.util.Map;
public class WorldSystemCommandExecuter
public class WorldSystemCommandExecuter implements CommandExecutor
{
private static Map<String, WorldSystemCommand> commands = new HashMap<String, WorldSystemCommand>();
public static void addCommand(String commandName, WorldSystemCommand cmd)
private Map<String, WorldSystemCommand> commands = new HashMap<String, WorldSystemCommand>();
@Override
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] args)
{
try {
return executeCommand(args[0],commandSender);
}
catch (InvaildCommandException e)
{
//Tell the Player that the commands was Wrong
return false;
}
}
public void addCommand(String commandName, WorldSystemCommand cmd)
{
if (commands.containsValue(commandName)) {
//Log Command Excists
@ -16,9 +37,16 @@ public class WorldSystemCommandExecuter
commands.put(commandName, cmd);
}
public static boolean execute(String cmd) {
return commands.get(cmd).run();
public boolean executeCommand(String cmd, CommandSender commandSender) throws InvaildCommandException
{
if (commands.get(cmd) == null) {
throw new InvaildCommandException(cmd + "Is not a command");
}
return commands.get(cmd).run(commandSender);
}
public String[] commandList()
{
return commands.keySet().toArray(new String[0]);
}
}

View File

@ -0,0 +1,19 @@
package de.butzlabben.world.commands.commands;
import de.butzlabben.world.commands.WorldSystemCommand;
import org.bukkit.command.CommandSender;
public class DebugCommandTest implements WorldSystemCommand
{
@Override
public boolean run(CommandSender sender)
{
sender.sendMessage("The Command Framework is Working");
return true;
}
@Override
public String[] arguments()
{
return new String[0];
}
}

View File

@ -0,0 +1,25 @@
package de.butzlabben.world.commands.commands;
import de.butzlabben.world.commands.WorldSystemCommandExecuter;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public class WorldSystemTabComplete implements TabCompleter
{
private String[] cmdlist;
public WorldSystemTabComplete(WorldSystemCommandExecuter ex) {
cmdlist = ex.commandList();
}
@Nullable
@Override
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings)
{
return List.of(cmdlist);
}
}

View File

@ -1,12 +0,0 @@
package de.butzlabben.world.commands.commands;
import de.butzlabben.world.commands.WorldSystemCommand;
public class testCommand implements WorldSystemCommand
{
@Override
public boolean run()
{
return false;
}
}

View File

@ -1,2 +1,164 @@
package de.butzlabben.world.config;public class GameruleConfig {
package de.butzlabben.world.config;
import de.butzlabben.world.exceptions.InvalidConfigFormatException;
import java.io.IOException;
import org.bukkit.configuration.file.YamlConfiguration;
/**
* This class handels the data from the
* config relevant to Minecraft's Gamerules
*/
public class GameruleConfig
{
private YamlConfiguration config;
public GameruleConfig(PluginConfig cfg) {
config = cfg.config;
try
{
verifyGamerules();
}
catch (InvalidConfigFormatException e)
{
try
{
cfg.brokenConfig();
}
catch (IOException ex)
{
//Bad Thing
//Log
throw new RuntimeException(ex);
}
}
}
private boolean verifyGamerules() throws InvalidConfigFormatException
{
if (!(config.isBoolean("announceAdvancements") &&
config.isBoolean("commandBlockOutput") &&
config.isBoolean("disableElytraMovementCheck") &&
config.isBoolean("doDaylightCycle") &&
config.isBoolean("doEntityDrops") &&
config.isBoolean("doFireTick") &&
config.isBoolean("doLimitedCrafting") &&
config.isBoolean("doMobLoot") &&
config.isBoolean("doMobSpawning") &&
config.isBoolean("doTileDrops") &&
config.isBoolean("doWeatherCycle") &&
config.isBoolean("gameLoopFunction") &&
config.isBoolean("keepInventory") &&
config.isBoolean("logAdminCommands") &&
config.isInt("maxCommandChainLength") &&
config.isInt("maxEntityCramming") &&
config.isBoolean("mobGriefing") &&
config.isBoolean("naturalRegeneration") &&
config.isInt("randomTickSpeed") &&
config.isBoolean("reducedDebugInfo") &&
config.isBoolean("sendCommandFeedback") &&
config.isBoolean("showDeathMessages") &&
config.isInt("spawnRadius") &&
config.isBoolean("spectatorsGenerateChunks")))
{
throw new InvalidConfigFormatException("Invaild Config Format in Gamerules ");
}
return true;
}
public boolean commandBlockOutput() {
return config.getBoolean("commandBlockOutput");
}
public boolean announceAdvancements() {
return config.getBoolean("announceAdvancements");
}
public boolean disableElytraMovementCheck() {
return config.getBoolean("disableElytraMovementCheck");
}
public boolean doDaylightCycle() {
return config.getBoolean("doDaylightCycle");
}
public boolean doEntityDrops() {
return config.getBoolean("doEntityDrops");
}
public boolean doFireTick() {
return config.getBoolean("doFireTick");
}
public boolean doLimitedCrafting() {
return config.getBoolean("doLimitedCrafting");
}
public boolean doMobLoot() {
return config.getBoolean("doMobLoot");
}
public boolean doMobSpawning() {
return config.getBoolean("doMobSpawning");
}
public boolean doTileDrops() {
return config.getBoolean("doTileDrops");
}
public boolean doWeatherCycle() {
return config.getBoolean("doWeatherCycle");
}
public boolean gameLoopFunction() {
return config.getBoolean("gameLoopFunction");
}
public boolean keepInventory() {
return config.getBoolean("doDaylightCycle");
}
public boolean logAdminCommands() {
return config.getBoolean("logAdminCommands");
}
public int maxCommandChainLength() {
return config.getInt("maxCommandChainLength");
}
public int maxEntityCramming() {
return config.getInt("maxEntityCramming");
}
public boolean mobGriefing() {
return config.getBoolean("doDaylightCycle");
}
public boolean naturalRegeneration() {
return config.getBoolean("logAdminCommands");
}
public int randomTickSpeed() {
return config.getInt("randomTickSpeed");
}
public boolean reducedDebugInfo() {
return config.getBoolean("reducedDebugInfo");
}
public boolean sendCommandFeedback() {
return config.getBoolean("sendCommandFeedback");
}
public boolean showDeathMessages() {
return config.getBoolean("showDeathMessages");
}
public int spawnRadius() {
return config.getInt("spawnRadius");
}
public boolean spectatorsGenerateChunks() {
return config.getBoolean("spectatorsGenerateChunks");
}
}

View File

@ -1,11 +1,13 @@
package de.butzlabben.world.config;
import de.butzlabben.world.WorldSystem;
import de.butzlabben.world.exceptions.InvalidConfigFormatException;
import de.butzlabben.world.utils.Location;
import de.butzlabben.world.utils.Location2D;
import org.bukkit.Difficulty;
import org.bukkit.GameMode;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.java.JavaPlugin;
import java.io.*;
import java.nio.charset.StandardCharsets;
@ -18,34 +20,30 @@ public class PluginConfig {
//New Config
private YamlConfiguration config;
protected YamlConfiguration config;
private File configFile;
//TODO Document
public PluginConfig(File configFile) throws FileNotFoundException {
this.configFile = configFile;
if (!configFile.exists()) {
JavaPlugin.getPlugin(WorldSystem.class).saveDefaultConfig();
}
try {
config = YamlConfiguration.loadConfiguration(
new InputStreamReader(new FileInputStream(configFile), StandardCharsets.UTF_8));
} catch (FileNotFoundException e) {
throw new FileNotFoundException("Cannot access config file");
}
try {
verifyConfigFormating();
} catch (InvalidConfigFormatException e) {
try {
Files.copy(configFile.toPath(),
new File(configFile.getParentFile(), "config-broken-"
+ new SimpleDateFormat("dd-MM-yyyy-HH-mm-ss").format(new Date()) + ".yml").toPath(),
StandardCopyOption.REPLACE_EXISTING);
Files.delete(configFile.toPath());
System.err.println("[WorldSystem] Config is broken, creating a new one!");
//TODO Create new Config
brokenConfig();
} catch (IOException ex) {
//Somthing Really Bad Happened
//TODO Log it
ex.printStackTrace();
@ -82,6 +80,11 @@ public class PluginConfig {
{
throw new InvalidConfigFormatException("Invaild Config Format in World Creation Settings");
}
//Verify Dev Settings
if (!(config.isBoolean("devcmds")))
{
throw new InvalidConfigFormatException("Invaild Config Format in Dev Settings");
}
if (!(config.isString("serverSpawn.serverGamemode") &&
config.isString("serverSpawn.serverSpawnPoint.worldName") &&
@ -90,41 +93,12 @@ public class PluginConfig {
config.isInt("serverSpawn.serverSpawnPoint.z") &&
config.isString("wsWorldSpawn.worldGameMode") &&
config.isBoolean("wsWorldSpawn.useLastLocation") &&
config.isString("wsWorldSpawn.defaultWorldSpawnPoint.worldName") &&
config.isInt("wsWorldSpawn.defaultWorldSpawnPoint.x") &&
config.isInt("wsWorldSpawn.defaultWorldSpawnPoint.y") &&
config.isInt("wsWorldSpawn.defaultWorldSpawnPoint.z")))
{
throw new InvalidConfigFormatException("Invaild Config Format in World Entering/Exiting");
}
if (!(config.isBoolean("announceAdvancements") &&
config.isBoolean("commandBlockOutput") &&
config.isBoolean("disableElytraMovementCheck") &&
config.isBoolean("doDaylightCycle") &&
config.isBoolean("doEntityDrops") &&
config.isBoolean("doFireTick") &&
config.isBoolean("doLimitedCrafting") &&
config.isBoolean("doMobLoot") &&
config.isBoolean("doMobSpawning") &&
config.isBoolean("doTileDrops") &&
config.isBoolean("doWeatherCycle") &&
config.isBoolean("gameLoopFunction") &&
config.isBoolean("keepInventory") &&
config.isBoolean("logAdminCommands") &&
config.isInt("maxCommandChainLength") &&
config.isInt("maxEntityCramming") &&
config.isBoolean("mobGriefing") &&
config.isBoolean("naturalRegeneration") &&
config.isInt("randomTickSpeed") &&
config.isBoolean("reducedDebugInfo") &&
config.isBoolean("sendCommandFeedback") &&
config.isBoolean("showDeathMessages") &&
config.isInt("spawnRadius") &&
config.isBoolean("spectatorsGenerateChunks")))
{
throw new InvalidConfigFormatException("Invaild Config Format in Gamerules ");
}
}
@ -195,6 +169,39 @@ public class PluginConfig {
config.getInt("serverSpawn.serverSpawnPoint.z"));
}
public String getServerWorldName() {
return config.getString("serverSpawn.serverSpawnPoint.worldName");
}
public GameMode getPlayerWorldGamemode() {
return stringToGamemode(config.getString("wsWorldSpawn.worldGameMode"));
}
public boolean usePlayerWorldLastLocation() {
return config.getBoolean("wsWorldSpawn.useLastLocation");
}
public Location getPlayerWorldSpawnPoint() {
return new Location(
config.getInt("wsWorldSpawn.defaultWorldSpawnPoint.x"),
config.getInt("wsWorldSpawn.defaultWorldSpawnPoint.y"),
config.getInt("wsWorldSpawn.defaultWorldSpawnPoint.z"));
}
//Dev Settings
public boolean allowDevCommands() {
return config.getBoolean("devcmds");
}
//Gamerule Stuff
public GameruleConfig getGamerules()
{
return new GameruleConfig(this);
}
@ -223,4 +230,16 @@ public class PluginConfig {
return Difficulty.PEACEFUL;
}
}
protected void brokenConfig() throws IOException
{
Files.copy(configFile.toPath(),
new File(configFile.getParentFile(), "config-broken-"
+ new SimpleDateFormat("dd-MM-yyyy-HH-mm-ss").format(new Date()) + ".yml").toPath(),
StandardCopyOption.REPLACE_EXISTING);
Files.delete(configFile.toPath());
System.err.println("[WorldSystem] Config is broken, creating a new one!");
//TODO Create new Config
}
}

View File

@ -1,16 +1,39 @@
package de.butzlabben.world.data.objects;
import de.butzlabben.world.config.PluginConfig;
import de.butzlabben.world.utils.Location;
import java.util.HashMap;
import java.util.Map;
public class PlayerWorld {
private int worldNumber;
private long lastLoaded;
private Map<String, Location> playerLocations;
private Location spawn;
/**
* Creates an new Player World Data Structure if the worldNumber given
* WARNING: this constuctor is only for tests
* @param worldNumber the index of the world held by the player
*/
public PlayerWorld(int worldNumber) {
this.worldNumber = worldNumber;
this.lastLoaded = -1;
this.playerLocations = new HashMap<String, Location>();
this.spawn = new Location(0, 60, 0);
}
/**
* Creates an new Player World Data Structure if the worldNumber given
* @param worldNumber the index of the world held by the player
* @param config the plugin's config file that some settings are loaded from
*/
public PlayerWorld(int worldNumber, PluginConfig config) {
this.worldNumber = worldNumber;
this.lastLoaded = -1;
this.playerLocations = new HashMap<String, Location>();
this.spawn = config.getPlayerWorldSpawnPoint();
}
/**
@ -22,4 +45,31 @@ public class PlayerWorld {
public int getWorldNumber() {
return worldNumber;
}
/**
* returns the last known location of the player with a given uuid
* @param uuid the UUID string of the player you want
* @return the players last know location in the world
*/
public Location getLocationOfPlayer(String uuid) {
return this.playerLocations.get(uuid);
}
/**
* Adds/Updates the Location information of a player
* @param uuid the UUID string of the player
* @param loc the Location of the Player
*/
public void addPlayerLocationData(String uuid, Location loc) {
playerLocations.put(uuid, loc);
}
public Location getWorldSpawn() {
return this.spawn;
}
public void setWorldSpawn(Location newSpawn) {
this.spawn = newSpawn;
}
}

View File

@ -0,0 +1,8 @@
package de.butzlabben.world.exceptions;
public class InvaildCommandException extends Exception
{
public InvaildCommandException(String message) {
super(message);
}
}

View File

@ -82,15 +82,22 @@ wsWorldSpawn:
#Warning: Spelling Matters, Capitalization Does not
worldGameMode: 'Survival'
# places the player at their last known location in the world
useLastLocation: false;
useLastLocation: false
#The point the player should be placed when entering a WS World
#for the first Time
defaultWorldSpawnPoint:
worldName: 'world'
x: 0
y: 60
z: 0
#############
# Dev Tools #
#############
# These Config Options are for the Devlopment and Maintenace
# Of World System. These features are not for production.
devcmds: false
###################
# World Gamerules #
###################

View File

@ -0,0 +1,22 @@
package de.butzlabben.world.commands;
import org.bukkit.command.CommandSender;
public class MockCommand implements WorldSystemCommand
{
public MockCommand() {
}
@Override
public boolean run(CommandSender sender)
{
return true;
}
@Override
public String[] arguments()
{
return new String[]{"zero", "one"};
}
}

View File

@ -0,0 +1,53 @@
package de.butzlabben.world.commands;
import be.seeseemelk.mockbukkit.MockBukkit;
import be.seeseemelk.mockbukkit.ServerMock;
import be.seeseemelk.mockbukkit.entity.PlayerMock;
import de.butzlabben.world.WorldSystem;
import de.butzlabben.world.exceptions.InvaildCommandException;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
public class TestCommandExecuter
{
@Test
public void testExecuterInvalidCommand() {
WorldSystemCommandExecuter cmdEx = new WorldSystemCommandExecuter();
assertThrows(InvaildCommandException.class, () -> {cmdEx.executeCommand("test", null);});
}
@Test
public void testExecuterAddCMD() throws InvaildCommandException
{
WorldSystemCommandExecuter cmdEx = new WorldSystemCommandExecuter();
cmdEx.addCommand("test", new MockCommand());
assertTrue(cmdEx.executeCommand("test", null));
}
@Test
public void testExecuterMultipleCommands() throws InvaildCommandException
{
WorldSystemCommandExecuter cmdEx = new WorldSystemCommandExecuter();
cmdEx.addCommand("test1", new MockCommand());
cmdEx.addCommand("test2", new MockCommand());
cmdEx.addCommand("test3", new MockCommand());
assertTrue(cmdEx.executeCommand("test1", null));
assertTrue(cmdEx.executeCommand("test2", null));
assertTrue(cmdEx.executeCommand("test3", null));
assertTrue(cmdEx.executeCommand("test2", null));
}
}

View File

@ -1,2 +1,237 @@
package de.butzlabben.world.config;public class TestGameRules {
package de.butzlabben.world.config;
import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.FileNotFoundException;
import static org.junit.jupiter.api.Assertions.*;
public class TestGameRules
{
@Test
public void testGameruleInit() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertNotNull(cfg.getGamerules());
}
@Test
public void testAnnounceAdvancements() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().announceAdvancements());
}
@Test
public void testCommandBlockOutput() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().commandBlockOutput());
}
@Test
public void testElytraMovementCheck() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().disableElytraMovementCheck());
}
@Test
public void testDaylightCycle() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doDaylightCycle());
}
@Test
public void testEntityDrops() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doEntityDrops());
}
@Test
public void testFireTick() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doFireTick());
}
@Test
public void testLimitCrafting() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().doLimitedCrafting());
}
@Test
public void testMobLoot() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doMobLoot());
}
@Test
public void testMobSpawning() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doMobSpawning());
}
@Test
public void testTileDrops() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().doTileDrops());
}
@Test
public void testWeatherCycle() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().doWeatherCycle());
}
@Test
public void testLoopFunction() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().gameLoopFunction());
}
@Test
public void testKeepInventory() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().keepInventory());
}
@Test
public void testAdminCommandLogs() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().logAdminCommands());
}
@Test
public void testCommandChainLength() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(65536, cfg.getGamerules().maxCommandChainLength());
}
@Test
public void testMaxEntityCramming() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(24, cfg.getGamerules().maxEntityCramming());
}
@Test
public void testMobGriefing() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().mobGriefing());
}
@Test
public void testNaturalRegen() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().naturalRegeneration());
}
@Test
public void testRandomTickSpeed() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(3, cfg.getGamerules().randomTickSpeed());
}
@Test
public void testReducedDebugInfo() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.getGamerules().reducedDebugInfo());
}
@Test
public void testCommandFeedback() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().sendCommandFeedback());
}
@Test
public void testDeathMessage() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().showDeathMessages());
}
@Test
public void testSpawnRad() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(10, cfg.getGamerules().spawnRadius());
}
@Test
public void testSpectatorsChunkGen() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertTrue(cfg.getGamerules().spectatorsGenerateChunks());
}
}

View File

@ -1,5 +1,8 @@
package de.butzlabben.world.config;
import be.seeseemelk.mockbukkit.MockBukkit;
import be.seeseemelk.mockbukkit.ServerMock;
import de.butzlabben.world.WorldSystem;
import org.bukkit.Difficulty;
import org.bukkit.GameMode;
import org.junit.jupiter.api.Test;
@ -7,9 +10,11 @@ import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.FileNotFoundException;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.*;
public class TestPluginConfig {
@Test
public void testPluginConfigInit() throws FileNotFoundException {
File cfgFile = new File("TestFiles/TestConfig.yml");
@ -17,6 +22,7 @@ public class TestPluginConfig {
}
//TODO ADD Invalid Config Test
@ -135,4 +141,41 @@ public class TestPluginConfig {
assertEquals(0, cfg.getServerSpawnPoint().getZ());
}
@Test
public void testGetServerWorldName() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals("world", cfg.getServerWorldName());
}
@Test
public void testPlayerWorldGamemode() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(GameMode.SURVIVAL, cfg.getPlayerWorldGamemode());
}
@Test
public void testUsePlayersLastLocation() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertFalse(cfg.usePlayerWorldLastLocation());
}
@Test
public void testGetPlayerWorldDefaultSpawnPoint() throws FileNotFoundException
{
File cfgFile = new File("TestFiles/TestConfig.yml");
PluginConfig cfg = new PluginConfig(cfgFile);
assertEquals(0, cfg.getPlayerWorldSpawnPoint().getX());
assertEquals(60, cfg.getPlayerWorldSpawnPoint().getY());
assertEquals(0, cfg.getPlayerWorldSpawnPoint().getZ());
}
}

View File

@ -31,7 +31,17 @@ public class TestWorldDatabase {
final String path = "TestFiles/workingDir/dataBaseInitTestFromNoFile.json";
WorldDatabase wb = new WorldDatabase(path);
assertEquals(0, wb.getPlayerCount());
wb.addPlayer("null");
assertEquals(1, wb.getPlayerCount());
}
@Test
public void testDatabaseInitalizationFromNoFile2() {
final String path = "TestFiles/workingDir/dataBaseInitTestFromNoFileNum2.json";
WorldDatabase wb = new WorldDatabase(path);
wb.addPlayer("null");
assertEquals(1, wb.getPlayerCount());
}
/**
@ -59,7 +69,8 @@ public class TestWorldDatabase {
final String path = "TestFiles/workingDir/ExistingEmptyFileInit.json";
WorldDatabase wb = new WorldDatabase(path);
assertEquals(0, wb.getPlayerCount());
wb.addPlayer("BlankUUID");
assertEquals(1, wb.getPlayerCount());
}
/**

View File

@ -1,5 +1,6 @@
package de.butzlabben.world.data.objects;
import de.butzlabben.world.utils.Location;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

View File

@ -1,5 +1,6 @@
package de.butzlabben.world.data.objects;
import de.butzlabben.world.utils.Location;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
@ -23,4 +24,61 @@ public class TestPlayerWorld {
PlayerWorld pw = new PlayerWorld(6);
assertEquals(6,pw.getWorldNumber());
}
@Test
public void testSavingPlayerLocationOfSinglePlayer()
{
PlayerWorld pw = new PlayerWorld(6);
pw.addPlayerLocationData("Blank", new Location(0,20,5));
assertEquals(0, pw.getLocationOfPlayer("Blank").getX());
assertEquals(20, pw.getLocationOfPlayer("Blank").getY());
assertEquals(5, pw.getLocationOfPlayer("Blank").getZ());
}
@Test
public void testSavingPlayerLocationOfThreePlayers()
{
PlayerWorld pw = new PlayerWorld(6);
pw.addPlayerLocationData("Blank", new Location(0,20,5));
pw.addPlayerLocationData("Blank2", new Location(20,30,400));
pw.addPlayerLocationData("Blank3", new Location(4,28,9));
assertEquals(0, pw.getLocationOfPlayer("Blank").getX());
assertEquals(20, pw.getLocationOfPlayer("Blank").getY());
assertEquals(5, pw.getLocationOfPlayer("Blank").getZ());
assertEquals(20, pw.getLocationOfPlayer("Blank2").getX());
assertEquals(30, pw.getLocationOfPlayer("Blank2").getY());
assertEquals(400, pw.getLocationOfPlayer("Blank2").getZ());
assertEquals(4, pw.getLocationOfPlayer("Blank3").getX());
assertEquals(28, pw.getLocationOfPlayer("Blank3").getY());
assertEquals(9, pw.getLocationOfPlayer("Blank3").getZ());
}
@Test
public void testDefaultWorldSpawn() {
PlayerWorld pw = new PlayerWorld(0);
assertEquals(0, pw.getWorldSpawn().getX());
assertEquals(60, pw.getWorldSpawn().getY());
assertEquals(0, pw.getWorldSpawn().getZ());
}
@Test
public void testAdjustedWorldSpawn() {
PlayerWorld pw = new PlayerWorld(0);
assertEquals(0, pw.getWorldSpawn().getX());
assertEquals(60, pw.getWorldSpawn().getY());
assertEquals(0, pw.getWorldSpawn().getZ());
pw.setWorldSpawn(new Location(20 ,80, 400));
assertEquals(20, pw.getWorldSpawn().getX());
assertEquals(80, pw.getWorldSpawn().getY());
assertEquals(400, pw.getWorldSpawn().getZ());
}
}

BIN
target/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -82,15 +82,22 @@ wsWorldSpawn:
#Warning: Spelling Matters, Capitalization Does not
worldGameMode: 'Survival'
# places the player at their last known location in the world
useLastLocation: false;
useLastLocation: false
#The point the player should be placed when entering a WS World
#for the first Time
defaultWorldSpawnPoint:
worldName: 'world'
x: 0
y: 60
z: 0
#############
# Dev Tools #
#############
# These Config Options are for the Devlopment and Maintenace
# Of World System. These features are not for production.
devcmds: false
###################
# World Gamerules #
###################

View File

@ -1,7 +1,14 @@
name: 'WorldSystem'
version: '2.4.20'
main: de.bulzlabben.world.WorldSystem
main: de.butzlabben.world.WorldSystem
author: Trainerlord
description: The one world per player solution you have always dreamed of.
commands:
ws:
description: Main Commands for World System
usage: /ws
permission: ws.*;
api-version: '1.17'

View File

@ -0,0 +1,5 @@
#Generated by Maven
#Wed Oct 05 16:00:04 EDT 2022
groupId=de.butzlabben.world
artifactId=WorldSystem
version=2.4.20-SNAPSHOT

View File

@ -1,93 +1,27 @@
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
org/bstats/bukkit/Metrics$AdvancedBarChart.class
de/butzlabben/world/exceptions/InvaildCommandException.class
de/butzlabben/world/data/objects/PlayerData.class
de/butzlabben/world/utils/Location.class
org/bstats/bukkit/Metrics$CustomChart.class
de/butzlabben/world/data/objects/PlayerWorld.class
org/bstats/bukkit/Metrics$1.class
de/butzlabben/world/commands/WorldSystemCommand.class
de/butzlabben/world/data/WorldDatabase.class
de/butzlabben/world/config/GameruleConfig.class
org/bstats/bukkit/Metrics.class
org/bstats/bukkit/Metrics$SimplePie.class
org/bstats/bukkit/Metrics$2.class
de/butzlabben/world/exceptions/InvalidConfigFormatException.class
de/butzlabben/world/commands/commands/WorldSystemTabComplete.class
org/bstats/bukkit/Metrics$AdvancedPie.class
de/butzlabben/world/commands/commands/DebugCommandTest.class
org/bstats/bukkit/Metrics$1$1.class
de/butzlabben/world/data/objects/WorldSystemData.class
org/bstats/bukkit/Metrics$DrilldownPie.class
de/butzlabben/world/commands/WorldSystemCommandExecuter.class
de/butzlabben/world/utils/Location2D.class
org/bstats/bukkit/Metrics$SimpleBarChart.class
org/bstats/bukkit/Metrics$SingleLineChart.class
org/bstats/bukkit/Metrics$MultiLineChart.class
de/butzlabben/world/WorldSystem.class
de/butzlabben/world/config/PluginConfig.class

View File

@ -1,82 +1,16 @@
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
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/utils/Location2D.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/data/objects/PlayerWorld.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/commands/WorldSystemCommandExecuter.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/commands/commands/WorldSystemTabComplete.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/data/objects/WorldSystemData.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/commands/commands/DebugCommandTest.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/exceptions/InvaildCommandException.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/data/WorldDatabase.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/utils/Location.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/commands/WorldSystemCommand.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/exceptions/InvalidConfigFormatException.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/data/objects/PlayerData.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/main/java/de/butzlabben/world/config/GameruleConfig.java

View File

@ -0,0 +1,7 @@
de/butzlabben/world/commands/MockCommand.class
de/butzlabben/world/data/objects/TestWorldSystemData.class
de/butzlabben/world/data/TestWorldDatabase.class
de/butzlabben/world/commands/TestCommandExecuter.class
de/butzlabben/world/data/objects/TestPlayerData.class
de/butzlabben/world/data/objects/TestPlayerWorld.class
de/butzlabben/world/config/TestGameRules.class

View File

@ -0,0 +1,8 @@
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/commands/MockCommand.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/data/objects/TestWorldSystemData.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/config/TestPluginConfig.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/data/objects/TestPlayerWorld.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/config/TestGameRules.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/commands/TestCommandExecuter.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/data/objects/TestPlayerData.java
/Users/danielbyomujuni/Documents/Projects/WorldSystem/src/test/java/de/butzlabben/world/data/TestWorldDatabase.java

View File

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="3" failures="0" name="de.butzlabben.world.commands.TestCommandExecuter" time="0.002" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.commands.TestCommandExecuter" name="de.butzlabben.world.commands.TestCommandExecuter.testExecuterMultipleCommands" time="0"/>
<testcase classname="de.butzlabben.world.commands.TestCommandExecuter" name="de.butzlabben.world.commands.TestCommandExecuter.testExecuterInvalidCommand" time="0.002"/>
<testcase classname="de.butzlabben.world.commands.TestCommandExecuter" name="de.butzlabben.world.commands.TestCommandExecuter.testExecuterAddCMD" time="0"/>
</testsuite>

View File

@ -0,0 +1,87 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="25" failures="0" name="de.butzlabben.world.config.TestGameRules" time="0.196" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testGameruleInit" time="0.106"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testAnnounceAdvancements" time="0.008"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testCommandBlockOutput" time="0.006"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testElytraMovementCheck" time="0.005"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testDaylightCycle" time="0.005"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testEntityDrops" time="0.006"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testFireTick" time="0.004"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testLimitCrafting" time="0.004"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testMobLoot" time="0.004"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testMobSpawning" time="0.005"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testTileDrops" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testWeatherCycle" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testLoopFunction" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testKeepInventory" time="0.004"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testAdminCommandLogs" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testCommandChainLength" time="0.004"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testMaxEntityCramming" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testMobGriefing" time="0.005"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testNaturalRegen" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testRandomTickSpeed" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testReducedDebugInfo" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testCommandFeedback" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testDeathMessage" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testSpawnRad" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestGameRules" name="de.butzlabben.world.config.TestGameRules.testSpectatorsChunkGen" time="0.002"/>
</testsuite>

View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="17" failures="0" name="de.butzlabben.world.config.TestPluginConfig" time="0.049" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetPlayerWorldDefaultSpawnPoint" time="0"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testPluginConfigInit" time="0"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetLanguage" time="0.001"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetWorldDir" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetUnloadTime" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetPrefix" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetDeleteAfter" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGameDifficulty" time="0.013"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testMultiChoice" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testgetDefaultGenerator" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testWorldBorderDefaultSize" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testWorldBorderCords" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testServerGamemode" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetServerSpawnPoint" time="0.003"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testGetServerWorldName" time="0.002"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testPlayerWorldGamemode" time="0.001"/>
<testcase classname="de.butzlabben.world.config.TestPluginConfig" name="de.butzlabben.world.config.TestPluginConfig.testUsePlayersLastLocation" time="0.005"/>
</testsuite>

View File

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="5" failures="0" name="de.butzlabben.world.data.TestWorldDatabase" time="0.092" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.data.TestWorldDatabase" name="de.butzlabben.world.data.TestWorldDatabase.testDatabaseInitalizationFromNoFile" time="0.072"/>
<testcase classname="de.butzlabben.world.data.TestWorldDatabase" name="de.butzlabben.world.data.TestWorldDatabase.testDatabaseInitalizationFromNoFile2" time="0.001"/>
<testcase classname="de.butzlabben.world.data.TestWorldDatabase" name="de.butzlabben.world.data.TestWorldDatabase.testDatabaseInitalizationCreateValidFile" time="0.015"/>
<testcase classname="de.butzlabben.world.data.TestWorldDatabase" name="de.butzlabben.world.data.TestWorldDatabase.testDatabaseInitalizationWithExistingEmptyFile" time="0.002"/>
<testcase classname="de.butzlabben.world.data.TestWorldDatabase" name="de.butzlabben.world.data.TestWorldDatabase.testDatabaseInitalizationWithPopulatedEmptyFile" time="0.002"/>
</testsuite>

View File

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="4" failures="0" name="de.butzlabben.world.data.objects.TestPlayerData" time="0" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerData" name="de.butzlabben.world.data.objects.TestPlayerData.testPlayerDataInit" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerData" name="de.butzlabben.world.data.objects.TestPlayerData.testAddWorld" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerData" name="de.butzlabben.world.data.objects.TestPlayerData.testAddMultipleWorlds" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerData" name="de.butzlabben.world.data.objects.TestPlayerData.testGetWorldAtIndex" time="0"/>
</testsuite>

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="6" failures="0" name="de.butzlabben.world.data.objects.TestPlayerWorld" time="0" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testSavingPlayerLocationOfSinglePlayer" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testSavingPlayerLocationOfThreePlayers" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testPlayerWorldInit" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testPlayerWorldInit2" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testDefaultWorldSpawn" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestPlayerWorld" name="de.butzlabben.world.data.objects.TestPlayerWorld.testAdjustedWorldSpawn" time="0"/>
</testsuite>

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" ?>
<testsuite tests="6" failures="0" name="de.butzlabben.world.data.objects.TestWorldSystemData" time="0.004" errors="0" skipped="0">
<properties>
<property name="idea.version" value="2022.2.1"/>
<property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
<property name="java.vm.version" value="17.0.4.1+1-LTS-2"/>
<property name="sun.boot.library.path" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home/lib"/>
<property name="maven.multiModuleProjectDirectory" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.vendor" value="Oracle Corporation"/>
<property name="java.vendor.url" value="https://java.oracle.com/"/>
<property name="guice.disable.misplaced.annotation.check" value="true"/>
<property name="path.separator" value=":"/>
<property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
<property name="user.country" value="US"/>
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
<property name="user.dir" value="/Users/danielbyomujuni/Documents/Projects/WorldSystem"/>
<property name="java.vm.compressedOopsMode" value="Zero based"/>
<property name="java.runtime.version" value="17.0.4.1+1-LTS-2"/>
<property name="os.arch" value="x86_64"/>
<property name="java.io.tmpdir" value="/var/folders/25/1377gwf15tx8030sw1jrftd80000gn/T/"/>
<property name="line.separator" value="
"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="os.name" value="Mac OS X"/>
<property name="maven.ext.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-event-listener.jar"/>
<property name="classworlds.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/m2.conf"/>
<property name="sun.jnu.encoding" value="UTF-8"/>
<property name="java.library.path" value="/Users/danielbyomujuni/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:."/>
<property name="maven.conf" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/conf"/>
<property name="jdk.debug" value="release"/>
<property name="java.class.version" value="61.0"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="os.version" value="12.5"/>
<property name="http.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="user.home" value="/Users/danielbyomujuni"/>
<property name="user.timezone" value="America/New_York"/>
<property name="file.encoding" value="UTF-8"/>
<property name="java.specification.version" value="17"/>
<property name="user.name" value="danielbyomujuni"/>
<property name="java.class.path" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar"/>
<property name="java.vm.specification.version" value="17"/>
<property name="sun.arch.data.model" value="64"/>
<property name="sun.java.command" value="org.codehaus.classworlds.Launcher -Didea.version=2022.2.1 package"/>
<property name="java.home" value="/Library/Java/JavaVirtualMachines/jdk-17.0.4.1.jdk/Contents/Home"/>
<property name="user.language" value="en"/>
<property name="java.specification.vendor" value="Oracle Corporation"/>
<property name="java.vm.info" value="mixed mode, sharing"/>
<property name="java.version" value="17.0.4.1"/>
<property name="native.encoding" value="UTF-8"/>
<property name="java.vendor" value="Oracle Corporation"/>
<property name="maven.home" value="/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3"/>
<property name="file.separator" value="/"/>
<property name="java.version.date" value="2022-08-18"/>
<property name="java.vendor.url.bug" value="https://bugreport.java.com/bugreport/"/>
<property name="sun.io.unicode.encoding" value="UnicodeBig"/>
<property name="sun.cpu.endian" value="little"/>
<property name="socksNonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
<property name="ftp.nonProxyHosts" value="local|*.local|169.254/16|*.169.254/16"/>
</properties>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testAddMultipleWorldsToPlayer" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testWorldSystemDataInit" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testAddPlayer" time="0.001"/>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testAddMultiplePlayers" time="0.003"/>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testAddDulpicatePlayer" time="0"/>
<testcase classname="de.butzlabben.world.data.objects.TestWorldSystemData" name="de.butzlabben.world.data.objects.TestWorldSystemData.testAddWorldToPlayer" time="0"/>
</testsuite>

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.commands.TestCommandExecuter
-------------------------------------------------------------------------------
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.config.TestGameRules
-------------------------------------------------------------------------------
Tests run: 25, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.198 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.config.TestPluginConfig
-------------------------------------------------------------------------------
Tests run: 17, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.051 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.data.TestWorldDatabase
-------------------------------------------------------------------------------
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.094 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.data.objects.TestPlayerData
-------------------------------------------------------------------------------
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.data.objects.TestPlayerWorld
-------------------------------------------------------------------------------
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec

View File

@ -0,0 +1,4 @@
-------------------------------------------------------------------------------
Test set: de.butzlabben.world.data.objects.TestWorldSystemData
-------------------------------------------------------------------------------
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec