diff --git a/.checkstyle/checkstyle.xml b/.checkstyle/checkstyle.xml
index 2b482b36c..716990df9 100644
--- a/.checkstyle/checkstyle.xml
+++ b/.checkstyle/checkstyle.xml
@@ -24,7 +24,7 @@
-
+
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 76cfb0ad3..b1372310f 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -2,37 +2,47 @@ name: Build EssentialsX
on:
push:
- branches:
+ branches:
- 2.x
- mc/*
pull_request:
- branches:
+ branches:
- 2.x
jobs:
build:
-
+ name: Build and upload
runs-on: ubuntu-latest
steps:
- name: Checkout Git repo
- uses: actions/checkout@v1
- - name: Restore Maven cache
- uses: actions/cache@v1
+ uses: actions/checkout@v2
with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+ fetch-depth: 0
+ - name: Restore Gradle cache
+ uses: actions/cache@v2
+ with:
+ path: ~/.gradle/caches
+ key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
- ${{ runner.os }}-maven-
+ ${{ runner.os }}-gradle-
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- - name: Build with Maven
- run: mvn package verify --file pom.xml
- - name: Copy artifacts
- run: mkdir -p ./out/ && cp -t ./out/ **/target/Essentials*.jar
- - uses: actions/upload-artifact@master
+ - name: Build with Gradle
+ run: |
+ chmod +x gradlew
+ ./gradlew build --stacktrace
+ - name: Deploy with Gradle
+ if: ${{ success() && github.event_name == 'push' && github.repository == 'EssentialsX/Essentials' && github.ref == 'refs/head/2.x' }}
+ env:
+ ORG_GRADLE_PROJECT_essxUsername: ${{ secrets.ESSENTIALSX_DEPLOY_USERNAME }}
+ ORG_GRADLE_PROJECT_essxPassword: ${{ secrets.ESSENTIALSX_DEPLOY_PASSWORD }}
+ run: |
+ ./gradlew publish
+ - name: Upload Artifacts
+ uses: actions/upload-artifact@master
with:
- name: Plugin jars
- path: out/
+ name: EssentialsX plugin jars
+ path: jars/
diff --git a/.gitignore b/.gitignore
index 4d8855434..8f0bcd583 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,6 +17,9 @@
/Essentials/usermap.csv
# Build files
-target/
+.gradle/
jars/
out/
+build/
+target/
+*.class
diff --git a/.idea/checkstyle-idea.xml b/.idea/checkstyle-idea.xml
index 17fb01c54..dff7bebd8 100644
--- a/.idea/checkstyle-idea.xml
+++ b/.idea/checkstyle-idea.xml
@@ -16,4 +16,4 @@
-
+
\ No newline at end of file
diff --git a/Essentials/build.gradle b/Essentials/build.gradle
new file mode 100644
index 000000000..bff092f9a
--- /dev/null
+++ b/Essentials/build.gradle
@@ -0,0 +1,29 @@
+dependencies {
+ compileOnly('com.github.milkbowl:VaultAPI:1.7') {
+ exclude group: "org.bukkit", module: "bukkit"
+ }
+ compileOnly 'net.luckperms:api:5.0'
+
+ api 'io.papermc:paperlib:1.0.6-SNAPSHOT'
+
+ // Providers
+ api project(':providers:BaseProviders')
+ api project(':providers:PaperProvider')
+ api(project(':providers:NMSReflectionProvider')) {
+ exclude group: "org.bukkit", module: "bukkit"
+ }
+ api(project(':providers:1_8Provider')) {
+ exclude group: "org.bukkit", module: "bukkit"
+ }
+}
+
+shadowJar {
+ dependencies {
+ include (dependency('io.papermc:paperlib'))
+ include (project(':providers:BaseProviders'))
+ include (project(':providers:PaperProvider'))
+ include (project(':providers:NMSReflectionProvider'))
+ include (project(':providers:1_8Provider'))
+ }
+ relocate 'io.papermc.lib', 'com.earth2me.essentials.paperlib'
+}
diff --git a/Essentials/pom.xml b/Essentials/pom.xml
deleted file mode 100644
index 09d674272..000000000
--- a/Essentials/pom.xml
+++ /dev/null
@@ -1,118 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsX
-
-
- EssentialsX-${full.version}
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.8.0
-
- false
-
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 3.2.1
-
-
- package
-
- shade
-
-
-
-
- false
-
-
- io.papermc.lib
- com.earth2me.essentials.paperlib
-
-
-
-
-
-
-
-
-
- com.github.milkbowl
- VaultAPI
- 1.7
-
-
- org.bukkit
- bukkit
-
-
- provided
-
-
- net.luckperms
- api
- 5.0
- provided
-
-
- io.papermc
- paperlib
- 1.0.6-SNAPSHOT
- compile
-
-
- net.ess3
- BaseProviders
- 2.18.2
- compile
-
-
- net.ess3
- NMSReflectionProvider
- 2.18.2
-
-
- org.bukkit
- bukkit
-
-
- compile
-
-
- net.ess3
- PaperProvider
- 2.18.2
-
-
- com.destroystokyo.paper
- paper-api
-
-
- compile
-
-
- net.ess3
- 1_8Provider
- 2.18.2
-
-
- org.bukkit
- bukkit
-
-
- compile
-
-
-
diff --git a/Essentials/src/com/earth2me/essentials/AlternativeCommandsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/AlternativeCommandsHandler.java
similarity index 99%
rename from Essentials/src/com/earth2me/essentials/AlternativeCommandsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/AlternativeCommandsHandler.java
index 91e7d0329..04a77bcf3 100644
--- a/Essentials/src/com/earth2me/essentials/AlternativeCommandsHandler.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/AlternativeCommandsHandler.java
@@ -1,6 +1,5 @@
package com.earth2me.essentials;
-import net.ess3.api.IEssentials;
import org.bukkit.command.Command;
import org.bukkit.command.PluginCommand;
import org.bukkit.command.PluginCommandYamlParser;
diff --git a/Essentials/src/com/earth2me/essentials/AsyncTeleport.java b/Essentials/src/main/java/com/earth2me/essentials/AsyncTeleport.java
similarity index 98%
rename from Essentials/src/com/earth2me/essentials/AsyncTeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/AsyncTeleport.java
index 03a7f4426..5c1f0648c 100644
--- a/Essentials/src/com/earth2me/essentials/AsyncTeleport.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/AsyncTeleport.java
@@ -134,6 +134,13 @@ public class AsyncTeleport implements IAsyncTeleport {
});
}
+ @Override
+ public void nowUnsafe(Location loc, TeleportCause cause, CompletableFuture future) {
+ final CompletableFuture paperFuture = PaperLib.teleportAsync(teleportOwner.getBase(), loc, cause);
+ paperFuture.thenAccept(future::complete);
+ paperFuture.exceptionally(future::completeExceptionally);
+ }
+
private void runOnMain(final Runnable runnable) throws ExecutionException, InterruptedException {
if (Bukkit.isPrimaryThread()) {
runnable.run();
diff --git a/Essentials/src/com/earth2me/essentials/AsyncTimedTeleport.java b/Essentials/src/main/java/com/earth2me/essentials/AsyncTimedTeleport.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/AsyncTimedTeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/AsyncTimedTeleport.java
diff --git a/Essentials/src/com/earth2me/essentials/Backup.java b/Essentials/src/main/java/com/earth2me/essentials/Backup.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Backup.java
rename to Essentials/src/main/java/com/earth2me/essentials/Backup.java
diff --git a/Essentials/src/com/earth2me/essentials/ChargeException.java b/Essentials/src/main/java/com/earth2me/essentials/ChargeException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/ChargeException.java
rename to Essentials/src/main/java/com/earth2me/essentials/ChargeException.java
diff --git a/Essentials/src/com/earth2me/essentials/CommandSource.java b/Essentials/src/main/java/com/earth2me/essentials/CommandSource.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/CommandSource.java
rename to Essentials/src/main/java/com/earth2me/essentials/CommandSource.java
diff --git a/Essentials/src/com/earth2me/essentials/Console.java b/Essentials/src/main/java/com/earth2me/essentials/Console.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Console.java
rename to Essentials/src/main/java/com/earth2me/essentials/Console.java
diff --git a/Essentials/src/com/earth2me/essentials/Enchantments.java b/Essentials/src/main/java/com/earth2me/essentials/Enchantments.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Enchantments.java
rename to Essentials/src/main/java/com/earth2me/essentials/Enchantments.java
diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/main/java/com/earth2me/essentials/Essentials.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Essentials.java
rename to Essentials/src/main/java/com/earth2me/essentials/Essentials.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsBlockListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsBlockListener.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsConf.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsConf.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsConf.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsConf.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsEntityListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsEntityListener.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsPlayerListener.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPluginListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsPluginListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsPluginListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsPluginListener.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsServerListener.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsServerListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsServerListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsServerListener.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsTimer.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsTimer.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsTimer.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsTimer.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsUpgrade.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsUpgrade.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsUpgrade.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsUpgrade.java
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsUserConf.java b/Essentials/src/main/java/com/earth2me/essentials/EssentialsUserConf.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/EssentialsUserConf.java
rename to Essentials/src/main/java/com/earth2me/essentials/EssentialsUserConf.java
diff --git a/Essentials/src/com/earth2me/essentials/ExecuteTimer.java b/Essentials/src/main/java/com/earth2me/essentials/ExecuteTimer.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/ExecuteTimer.java
rename to Essentials/src/main/java/com/earth2me/essentials/ExecuteTimer.java
diff --git a/Essentials/src/com/earth2me/essentials/I18n.java b/Essentials/src/main/java/com/earth2me/essentials/I18n.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/I18n.java
rename to Essentials/src/main/java/com/earth2me/essentials/I18n.java
diff --git a/Essentials/src/com/earth2me/essentials/IConf.java b/Essentials/src/main/java/com/earth2me/essentials/IConf.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/IConf.java
rename to Essentials/src/main/java/com/earth2me/essentials/IConf.java
diff --git a/Essentials/src/com/earth2me/essentials/IEssentials.java b/Essentials/src/main/java/com/earth2me/essentials/IEssentials.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/IEssentials.java
rename to Essentials/src/main/java/com/earth2me/essentials/IEssentials.java
diff --git a/Essentials/src/com/earth2me/essentials/IEssentialsModule.java b/Essentials/src/main/java/com/earth2me/essentials/IEssentialsModule.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/IEssentialsModule.java
rename to Essentials/src/main/java/com/earth2me/essentials/IEssentialsModule.java
diff --git a/Essentials/src/com/earth2me/essentials/ISettings.java b/Essentials/src/main/java/com/earth2me/essentials/ISettings.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/ISettings.java
rename to Essentials/src/main/java/com/earth2me/essentials/ISettings.java
diff --git a/Essentials/src/com/earth2me/essentials/ITarget.java b/Essentials/src/main/java/com/earth2me/essentials/ITarget.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/ITarget.java
rename to Essentials/src/main/java/com/earth2me/essentials/ITarget.java
diff --git a/Essentials/src/com/earth2me/essentials/IUser.java b/Essentials/src/main/java/com/earth2me/essentials/IUser.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/IUser.java
rename to Essentials/src/main/java/com/earth2me/essentials/IUser.java
diff --git a/Essentials/src/com/earth2me/essentials/Jails.java b/Essentials/src/main/java/com/earth2me/essentials/Jails.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Jails.java
rename to Essentials/src/main/java/com/earth2me/essentials/Jails.java
diff --git a/Essentials/src/com/earth2me/essentials/Kit.java b/Essentials/src/main/java/com/earth2me/essentials/Kit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Kit.java
rename to Essentials/src/main/java/com/earth2me/essentials/Kit.java
diff --git a/Essentials/src/com/earth2me/essentials/Kits.java b/Essentials/src/main/java/com/earth2me/essentials/Kits.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Kits.java
rename to Essentials/src/main/java/com/earth2me/essentials/Kits.java
diff --git a/Essentials/src/com/earth2me/essentials/LocationTarget.java b/Essentials/src/main/java/com/earth2me/essentials/LocationTarget.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/LocationTarget.java
rename to Essentials/src/main/java/com/earth2me/essentials/LocationTarget.java
diff --git a/Essentials/src/com/earth2me/essentials/ManagedFile.java b/Essentials/src/main/java/com/earth2me/essentials/ManagedFile.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/ManagedFile.java
rename to Essentials/src/main/java/com/earth2me/essentials/ManagedFile.java
diff --git a/Essentials/src/com/earth2me/essentials/MetaItemStack.java b/Essentials/src/main/java/com/earth2me/essentials/MetaItemStack.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/MetaItemStack.java
rename to Essentials/src/main/java/com/earth2me/essentials/MetaItemStack.java
diff --git a/Essentials/src/com/earth2me/essentials/Mob.java b/Essentials/src/main/java/com/earth2me/essentials/Mob.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Mob.java
rename to Essentials/src/main/java/com/earth2me/essentials/Mob.java
diff --git a/Essentials/src/com/earth2me/essentials/MobCompat.java b/Essentials/src/main/java/com/earth2me/essentials/MobCompat.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/MobCompat.java
rename to Essentials/src/main/java/com/earth2me/essentials/MobCompat.java
diff --git a/Essentials/src/com/earth2me/essentials/MobData.java b/Essentials/src/main/java/com/earth2me/essentials/MobData.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/MobData.java
rename to Essentials/src/main/java/com/earth2me/essentials/MobData.java
diff --git a/Essentials/src/com/earth2me/essentials/PlayerExtension.java b/Essentials/src/main/java/com/earth2me/essentials/PlayerExtension.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/PlayerExtension.java
rename to Essentials/src/main/java/com/earth2me/essentials/PlayerExtension.java
diff --git a/Essentials/src/com/earth2me/essentials/PlayerList.java b/Essentials/src/main/java/com/earth2me/essentials/PlayerList.java
similarity index 98%
rename from Essentials/src/com/earth2me/essentials/PlayerList.java
rename to Essentials/src/main/java/com/earth2me/essentials/PlayerList.java
index 423e7146f..7b4dc59d5 100644
--- a/Essentials/src/com/earth2me/essentials/PlayerList.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/PlayerList.java
@@ -40,7 +40,7 @@ public final class PlayerList {
if (ess.getSettings().realNamesOnList() && !ChatColor.stripColor(user.getDisplayName()).equals(user.getName())) {
groupString.append(" (").append(user.getName()).append(")");
}
- groupString.append("\u00a7f");
+ groupString.append(ChatColor.WHITE.toString());
}
return groupString.toString();
}
diff --git a/Essentials/src/com/earth2me/essentials/PlayerTarget.java b/Essentials/src/main/java/com/earth2me/essentials/PlayerTarget.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/PlayerTarget.java
rename to Essentials/src/main/java/com/earth2me/essentials/PlayerTarget.java
diff --git a/Essentials/src/com/earth2me/essentials/Potions.java b/Essentials/src/main/java/com/earth2me/essentials/Potions.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Potions.java
rename to Essentials/src/main/java/com/earth2me/essentials/Potions.java
diff --git a/Essentials/src/com/earth2me/essentials/RandomTeleport.java b/Essentials/src/main/java/com/earth2me/essentials/RandomTeleport.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/RandomTeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/RandomTeleport.java
diff --git a/Essentials/src/com/earth2me/essentials/Settings.java b/Essentials/src/main/java/com/earth2me/essentials/Settings.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Settings.java
rename to Essentials/src/main/java/com/earth2me/essentials/Settings.java
diff --git a/Essentials/src/com/earth2me/essentials/SpawnMob.java b/Essentials/src/main/java/com/earth2me/essentials/SpawnMob.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/SpawnMob.java
rename to Essentials/src/main/java/com/earth2me/essentials/SpawnMob.java
diff --git a/Essentials/src/com/earth2me/essentials/TNTExplodeListener.java b/Essentials/src/main/java/com/earth2me/essentials/TNTExplodeListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/TNTExplodeListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/TNTExplodeListener.java
diff --git a/Essentials/src/com/earth2me/essentials/Teleport.java b/Essentials/src/main/java/com/earth2me/essentials/Teleport.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Teleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/Teleport.java
diff --git a/Essentials/src/com/earth2me/essentials/TimedTeleport.java b/Essentials/src/main/java/com/earth2me/essentials/TimedTeleport.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/TimedTeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/TimedTeleport.java
diff --git a/Essentials/src/com/earth2me/essentials/Trade.java b/Essentials/src/main/java/com/earth2me/essentials/Trade.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Trade.java
rename to Essentials/src/main/java/com/earth2me/essentials/Trade.java
diff --git a/Essentials/src/com/earth2me/essentials/UUIDMap.java b/Essentials/src/main/java/com/earth2me/essentials/UUIDMap.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/UUIDMap.java
rename to Essentials/src/main/java/com/earth2me/essentials/UUIDMap.java
diff --git a/Essentials/src/com/earth2me/essentials/User.java b/Essentials/src/main/java/com/earth2me/essentials/User.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/User.java
rename to Essentials/src/main/java/com/earth2me/essentials/User.java
diff --git a/Essentials/src/com/earth2me/essentials/UserData.java b/Essentials/src/main/java/com/earth2me/essentials/UserData.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/UserData.java
rename to Essentials/src/main/java/com/earth2me/essentials/UserData.java
diff --git a/Essentials/src/com/earth2me/essentials/UserMap.java b/Essentials/src/main/java/com/earth2me/essentials/UserMap.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/UserMap.java
rename to Essentials/src/main/java/com/earth2me/essentials/UserMap.java
diff --git a/Essentials/src/com/earth2me/essentials/Warps.java b/Essentials/src/main/java/com/earth2me/essentials/Warps.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Warps.java
rename to Essentials/src/main/java/com/earth2me/essentials/Warps.java
diff --git a/Essentials/src/com/earth2me/essentials/Worth.java b/Essentials/src/main/java/com/earth2me/essentials/Worth.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/Worth.java
rename to Essentials/src/main/java/com/earth2me/essentials/Worth.java
diff --git a/Essentials/src/com/earth2me/essentials/api/Economy.java b/Essentials/src/main/java/com/earth2me/essentials/api/Economy.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/Economy.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/Economy.java
diff --git a/Essentials/src/com/earth2me/essentials/api/IAsyncTeleport.java b/Essentials/src/main/java/com/earth2me/essentials/api/IAsyncTeleport.java
similarity index 93%
rename from Essentials/src/com/earth2me/essentials/api/IAsyncTeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/IAsyncTeleport.java
index 6a7169a1d..a6e6b82ca 100644
--- a/Essentials/src/com/earth2me/essentials/api/IAsyncTeleport.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/api/IAsyncTeleport.java
@@ -34,6 +34,15 @@ public interface IAsyncTeleport {
*/
void now(Player entity, boolean cooldown, PlayerTeleportEvent.TeleportCause cause, CompletableFuture future);
+ /**
+ * Used to skip all safety checks while teleporting a player asynchronously.
+ *
+ * @param loc - Where should the player end up
+ * @param cause - The reported teleportPlayer cause
+ * @param future - Future which is completed with the success status of the execution
+ */
+ void nowUnsafe(Location loc, PlayerTeleportEvent.TeleportCause cause, CompletableFuture future);
+
/**
* Teleport a player to a specific location
*
diff --git a/Essentials/src/com/earth2me/essentials/api/II18n.java b/Essentials/src/main/java/com/earth2me/essentials/api/II18n.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/II18n.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/II18n.java
diff --git a/Essentials/src/com/earth2me/essentials/api/IItemDb.java b/Essentials/src/main/java/com/earth2me/essentials/api/IItemDb.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/IItemDb.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/IItemDb.java
diff --git a/Essentials/src/com/earth2me/essentials/api/IJails.java b/Essentials/src/main/java/com/earth2me/essentials/api/IJails.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/IJails.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/IJails.java
diff --git a/Essentials/src/com/earth2me/essentials/api/IReload.java b/Essentials/src/main/java/com/earth2me/essentials/api/IReload.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/IReload.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/IReload.java
diff --git a/Essentials/src/com/earth2me/essentials/api/ITeleport.java b/Essentials/src/main/java/com/earth2me/essentials/api/ITeleport.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/ITeleport.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/ITeleport.java
diff --git a/Essentials/src/com/earth2me/essentials/api/IWarps.java b/Essentials/src/main/java/com/earth2me/essentials/api/IWarps.java
similarity index 88%
rename from Essentials/src/com/earth2me/essentials/api/IWarps.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/IWarps.java
index 89f0fb47e..2ddf06dc7 100644
--- a/Essentials/src/com/earth2me/essentials/api/IWarps.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/api/IWarps.java
@@ -44,7 +44,7 @@ public interface IWarps extends IConf {
* Delete a warp from the warp DB
*
* @param name - Name of warp
- * @throws Exception
+ * @throws Exception If the warp could not be removed
*/
void removeWarp(String name) throws Exception;
@@ -53,7 +53,7 @@ public interface IWarps extends IConf {
*
* @param name - Name of warp
* @param loc - Location of warp
- * @throws Exception
+ * @throws Exception If the warp could not be set
*/
void setWarp(String name, Location loc) throws Exception;
@@ -63,7 +63,7 @@ public interface IWarps extends IConf {
* @param user - User of warp
* @param name - Name of warp
* @param loc - Location of warp
- * @throws Exception
+ * @throws Exception If the warp could not be set
*/
void setWarp(IUser user, String name, Location loc) throws Exception;
@@ -71,14 +71,14 @@ public interface IWarps extends IConf {
* Gets Lastowner UUID
*
* @param warp - Name of warp
- * @throws WarpNotFoundException
+ * @throws WarpNotFoundException If the warp is not found
*/
UUID getLastOwner(String warp) throws WarpNotFoundException;
/**
* Check to see if the file is empty
*
- * @return
+ * @return Whether or not the file is empty
*/
boolean isEmpty();
diff --git a/Essentials/src/com/earth2me/essentials/api/InvalidNameException.java b/Essentials/src/main/java/com/earth2me/essentials/api/InvalidNameException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/InvalidNameException.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/InvalidNameException.java
diff --git a/Essentials/src/com/earth2me/essentials/api/InvalidWorldException.java b/Essentials/src/main/java/com/earth2me/essentials/api/InvalidWorldException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/InvalidWorldException.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/InvalidWorldException.java
diff --git a/Essentials/src/com/earth2me/essentials/api/NoLoanPermittedException.java b/Essentials/src/main/java/com/earth2me/essentials/api/NoLoanPermittedException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/NoLoanPermittedException.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/NoLoanPermittedException.java
diff --git a/Essentials/src/com/earth2me/essentials/api/UserDoesNotExistException.java b/Essentials/src/main/java/com/earth2me/essentials/api/UserDoesNotExistException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/api/UserDoesNotExistException.java
rename to Essentials/src/main/java/com/earth2me/essentials/api/UserDoesNotExistException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandafk.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandafk.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandafk.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandafk.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandantioch.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandantioch.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandantioch.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandantioch.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandanvil.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandanvil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandanvil.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandanvil.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandback.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandback.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandback.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandback.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbackup.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbackup.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbackup.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbackup.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbalance.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbalance.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbalance.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbalance.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbalancetop.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbalancetop.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbalancetop.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbalancetop.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandban.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandban.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandban.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandban.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbanip.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbanip.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbanip.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbanip.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbeezooka.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbeezooka.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbeezooka.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbeezooka.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbigtree.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbigtree.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbigtree.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbigtree.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbook.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbook.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbook.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbook.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbreak.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbreak.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbreak.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbreak.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbroadcast.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbroadcast.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbroadcast.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbroadcast.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandbroadcastworld.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandbroadcastworld.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandbroadcastworld.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandbroadcastworld.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandburn.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandburn.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandburn.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandburn.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandcartographytable.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandcartographytable.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandcartographytable.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandcartographytable.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandclearinventory.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandclearinventory.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandclearinventory.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandclearinventory.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandclearinventoryconfirmtoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandclearinventoryconfirmtoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandclearinventoryconfirmtoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandclearinventoryconfirmtoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandcompass.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandcompass.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandcompass.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandcompass.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandcondense.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandcondense.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandcondense.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandcondense.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandcreatekit.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandcreatekit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandcreatekit.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandcreatekit.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandcustomtext.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandcustomtext.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandcustomtext.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandcustomtext.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddelhome.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelhome.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddelhome.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelhome.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddeljail.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddeljail.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddeljail.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddeljail.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelkit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddelkit.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelkit.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddelwarp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelwarp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddelwarp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddelwarp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddepth.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddepth.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddepth.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddepth.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanddisposal.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanddisposal.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanddisposal.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanddisposal.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandeco.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandeco.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandeco.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandeco.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandeditsign.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandeditsign.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandeditsign.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandeditsign.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandenchant.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandenchant.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandenchant.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandenchant.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandenderchest.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandenderchest.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandenderchest.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandenderchest.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandessentials.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandessentials.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandessentials.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandessentials.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandexp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandexp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandexp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandexp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandext.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandext.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandext.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandext.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfeed.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandfeed.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandfeed.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandfeed.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfireball.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandfireball.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandfireball.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandfireball.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfirework.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandfirework.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandfirework.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandfirework.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfly.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandfly.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandfly.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandfly.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgamemode.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgamemode.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgc.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgc.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgc.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgc.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgetpos.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgetpos.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgetpos.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgetpos.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgive.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgive.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgive.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgive.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgod.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgod.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgod.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgod.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgrindstone.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandgrindstone.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandgrindstone.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandgrindstone.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandhat.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandhat.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandhat.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandhat.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandheal.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandheal.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandheal.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandheal.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandhelp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandhelp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandhelp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandhelp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandhelpop.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandhelpop.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandhelpop.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandhelpop.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandhome.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandhome.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandhome.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandhome.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandignore.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandignore.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandignore.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandignore.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandinfo.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandinfo.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandinfo.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandinfo.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandinvsee.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandinvsee.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanditem.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanditem.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanditem.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanditem.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanditemdb.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemdb.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanditemdb.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemdb.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanditemlore.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemlore.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanditemlore.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemlore.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commanditemname.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemname.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commanditemname.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commanditemname.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandjails.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandjails.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandjails.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandjails.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandjump.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandjump.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandjump.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandjump.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkick.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandkick.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandkick.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandkick.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkickall.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandkickall.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandkickall.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandkickall.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkill.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandkill.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandkill.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandkill.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkit.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandkit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandkit.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandkit.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkittycannon.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandkittycannon.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandkittycannon.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandkittycannon.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandlightning.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandlightning.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandlightning.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandlightning.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandlist.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandlist.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandlist.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandlist.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandloom.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandloom.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandloom.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandloom.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmail.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmail.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmail.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmail.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandme.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandme.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandme.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandme.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmore.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmore.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmore.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmore.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmotd.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmotd.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmotd.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmotd.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmsg.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmsg.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmsg.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmsg.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmsgtoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmsgtoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmsgtoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmsgtoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandmute.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandmute.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandmute.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandmute.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnear.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandnear.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandnear.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandnear.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandnick.java
similarity index 97%
rename from Essentials/src/com/earth2me/essentials/commands/Commandnick.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandnick.java
index 0f069fce4..5d2dd31ef 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandnick.java
@@ -71,7 +71,7 @@ public class Commandnick extends EssentialsLoopCommand {
private String formatNickname(final User user, final String nick) throws Exception {
final String newNick = user == null ? FormatUtil.replaceFormat(nick) : FormatUtil.formatString(user, "essentials.nick", nick);
- if (!newNick.matches("^[a-zA-Z_0-9\u00a7]+$") && user != null && !user.isAuthorized("essentials.nick.allowunsafe")) {
+ if (!newNick.matches("^[a-zA-Z_0-9" + ChatColor.COLOR_CHAR + "]+$") && user != null && !user.isAuthorized("essentials.nick.allowunsafe")) {
throw new Exception(tl("nickNamesAlpha"));
} else if (getNickLength(newNick) > ess.getSettings().getMaxNickLength()) {
throw new Exception(tl("nickTooLong"));
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnuke.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandnuke.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandnuke.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandnuke.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpay.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpay.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpay.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpay.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpayconfirmtoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpayconfirmtoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpayconfirmtoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpayconfirmtoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpaytoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpaytoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpaytoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpaytoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandping.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandping.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandping.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandping.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpotion.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpotion.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpotion.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpotion.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpowertool.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpowertool.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpowertool.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpowertool.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpowertooltoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpowertooltoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpowertooltoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpowertooltoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandptime.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandptime.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandptime.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandptime.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandpweather.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandpweather.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandpweather.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandpweather.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandr.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandr.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandr.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandr.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrealname.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrealname.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrealname.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrealname.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrecipe.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrecipe.java
old mode 100755
new mode 100644
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrecipe.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrecipe.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandremove.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandremove.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandremove.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandremove.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrepair.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrepair.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrepair.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrepair.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrest.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrest.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrest.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrest.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrtoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrtoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrtoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrtoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandrules.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandrules.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandrules.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandrules.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandseen.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandseen.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandseen.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandseen.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsell.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsell.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsell.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsell.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsethome.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsethome.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsethome.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsethome.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsetjail.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetjail.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsetjail.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetjail.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsettpr.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsettpr.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsettpr.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsettpr.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsetwarp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetwarp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsetwarp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetwarp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsetworth.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetworth.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsetworth.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsetworth.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandshowkit.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandshowkit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandshowkit.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandshowkit.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandskull.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandskull.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandskull.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandskull.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsmithingtable.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsmithingtable.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsmithingtable.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsmithingtable.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsocialspy.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsocialspy.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsocialspy.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsocialspy.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandspawner.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandspawner.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandspawner.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandspawnmob.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandspawnmob.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspeed.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandspeed.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandspeed.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandspeed.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandstonecutter.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandstonecutter.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandstonecutter.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandstonecutter.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsudo.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsudo.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsudo.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsudo.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsuicide.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandsuicide.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandsuicide.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandsuicide.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtempban.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtempban.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtempban.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtempban.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtempbanip.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtempbanip.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtempbanip.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtempbanip.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandthunder.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandthunder.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandthunder.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandthunder.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtime.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtime.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtime.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtime.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtogglejail.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtogglejail.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtogglejail.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtogglejail.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtop.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtop.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtop.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtop.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpa.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpa.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpa.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpa.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpaall.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpaall.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpaall.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpaall.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpacancel.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpacancel.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpacancel.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpacancel.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpaccept.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpaccept.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpaccept.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpaccept.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpahere.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpahere.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpahere.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpahere.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpall.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpall.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpall.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpall.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpauto.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpauto.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpauto.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpauto.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpdeny.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpdeny.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpdeny.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpdeny.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtphere.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtphere.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtphere.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtphere.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpo.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpo.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpo.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpo.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpoffline.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpoffline.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpoffline.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpoffline.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpohere.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpohere.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpohere.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpohere.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtppos.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtppos.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtppos.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtppos.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtpr.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpr.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtpr.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtpr.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtptoggle.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtptoggle.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtptoggle.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtptoggle.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtree.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandtree.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandtree.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandtree.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandunban.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandunban.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandunban.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandunban.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandunbanip.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandunbanip.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandunbanip.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandunbanip.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandunlimited.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandunlimited.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandunlimited.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandunlimited.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandvanish.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandvanish.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandvanish.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandvanish.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandwarp.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandwarp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandwarp.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandwarp.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandweather.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandweather.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandweather.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandweather.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandwhois.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandwhois.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandworkbench.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandworkbench.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandworkbench.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandworkbench.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandworld.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandworld.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandworld.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandworld.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandworth.java b/Essentials/src/main/java/com/earth2me/essentials/commands/Commandworth.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/Commandworth.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/Commandworth.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java b/Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsCommand.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsCommand.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java b/Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsLoopCommand.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/EssentialsLoopCommand.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsLoopCommand.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsToggleCommand.java b/Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsToggleCommand.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/EssentialsToggleCommand.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/EssentialsToggleCommand.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/IEssentialsCommand.java b/Essentials/src/main/java/com/earth2me/essentials/commands/IEssentialsCommand.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/IEssentialsCommand.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/IEssentialsCommand.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/NoChargeException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/NoChargeException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/NoChargeException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/NoChargeException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/NotEnoughArgumentsException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/NotEnoughArgumentsException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/NotEnoughArgumentsException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/NotEnoughArgumentsException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/PlayerExemptException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/PlayerExemptException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/PlayerExemptException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/PlayerExemptException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/PlayerNotFoundException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/PlayerNotFoundException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/PlayerNotFoundException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/PlayerNotFoundException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/QuietAbortException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/QuietAbortException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/QuietAbortException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/QuietAbortException.java
diff --git a/Essentials/src/com/earth2me/essentials/commands/WarpNotFoundException.java b/Essentials/src/main/java/com/earth2me/essentials/commands/WarpNotFoundException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/commands/WarpNotFoundException.java
rename to Essentials/src/main/java/com/earth2me/essentials/commands/WarpNotFoundException.java
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/BanLookup.java b/Essentials/src/main/java/com/earth2me/essentials/craftbukkit/BanLookup.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/craftbukkit/BanLookup.java
rename to Essentials/src/main/java/com/earth2me/essentials/craftbukkit/BanLookup.java
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java b/Essentials/src/main/java/com/earth2me/essentials/craftbukkit/FakeWorld.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/craftbukkit/FakeWorld.java
rename to Essentials/src/main/java/com/earth2me/essentials/craftbukkit/FakeWorld.java
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java b/Essentials/src/main/java/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
rename to Essentials/src/main/java/com/earth2me/essentials/craftbukkit/InventoryWorkaround.java
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java b/Essentials/src/main/java/com/earth2me/essentials/craftbukkit/SetExpFix.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java
rename to Essentials/src/main/java/com/earth2me/essentials/craftbukkit/SetExpFix.java
diff --git a/Essentials/src/com/earth2me/essentials/items/AbstractItemDb.java b/Essentials/src/main/java/com/earth2me/essentials/items/AbstractItemDb.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/items/AbstractItemDb.java
rename to Essentials/src/main/java/com/earth2me/essentials/items/AbstractItemDb.java
diff --git a/Essentials/src/com/earth2me/essentials/items/CustomItemResolver.java b/Essentials/src/main/java/com/earth2me/essentials/items/CustomItemResolver.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/items/CustomItemResolver.java
rename to Essentials/src/main/java/com/earth2me/essentials/items/CustomItemResolver.java
diff --git a/Essentials/src/com/earth2me/essentials/items/FlatItemDb.java b/Essentials/src/main/java/com/earth2me/essentials/items/FlatItemDb.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/items/FlatItemDb.java
rename to Essentials/src/main/java/com/earth2me/essentials/items/FlatItemDb.java
diff --git a/Essentials/src/com/earth2me/essentials/items/LegacyItemDb.java b/Essentials/src/main/java/com/earth2me/essentials/items/LegacyItemDb.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/items/LegacyItemDb.java
rename to Essentials/src/main/java/com/earth2me/essentials/items/LegacyItemDb.java
diff --git a/Essentials/src/com/earth2me/essentials/messaging/IMessageRecipient.java b/Essentials/src/main/java/com/earth2me/essentials/messaging/IMessageRecipient.java
similarity index 99%
rename from Essentials/src/com/earth2me/essentials/messaging/IMessageRecipient.java
rename to Essentials/src/main/java/com/earth2me/essentials/messaging/IMessageRecipient.java
index 495a396af..77a208c97 100644
--- a/Essentials/src/com/earth2me/essentials/messaging/IMessageRecipient.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/messaging/IMessageRecipient.java
@@ -16,7 +16,7 @@ public interface IMessageRecipient {
/**
* This method is called when this {@link IMessageRecipient} is sending a message to another {@link IMessageRecipient}.
- *
+ *
* The {@link MessageResponse} that is returned is used to determine what exactly should happen in the {@link #sendMessage(IMessageRecipient,
* String)} implementation by the {@code sender}.
*
@@ -28,10 +28,10 @@ public interface IMessageRecipient {
/**
* This method is called when this recipient is receiving a message from another {@link IMessageRecipient}.
- *
+ *
* The {@link MessageResponse} that is returned is used to determine what exactly should happen in the {@link #sendMessage(IMessageRecipient,
* String)} implementation by the {@code sender}.
- *
+ *
* This method should only be called by {@link #sendMessage(IMessageRecipient, String)}.
*
* @param sender sender of the {@code message}
diff --git a/Essentials/src/com/earth2me/essentials/messaging/SimpleMessageRecipient.java b/Essentials/src/main/java/com/earth2me/essentials/messaging/SimpleMessageRecipient.java
similarity index 99%
rename from Essentials/src/com/earth2me/essentials/messaging/SimpleMessageRecipient.java
rename to Essentials/src/main/java/com/earth2me/essentials/messaging/SimpleMessageRecipient.java
index 7727143b3..f8751a08b 100644
--- a/Essentials/src/com/earth2me/essentials/messaging/SimpleMessageRecipient.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/messaging/SimpleMessageRecipient.java
@@ -174,7 +174,7 @@ public class SimpleMessageRecipient implements IMessageRecipient {
/**
* {@inheritDoc}
- *
+ *
* This {@link com.earth2me.essentials.messaging.SimpleMessageRecipient} implementation stores the a weak reference to the recipient.
*/
@Override
@@ -184,7 +184,7 @@ public class SimpleMessageRecipient implements IMessageRecipient {
/**
* {@inheritDoc}
- *
+ *
* This {@link com.earth2me.essentials.messaging.SimpleMessageRecipient} implementation stores the a weak reference to the recipient.
*/
@Override
diff --git a/Essentials/src/com/earth2me/essentials/metrics/Metrics.java b/Essentials/src/main/java/com/earth2me/essentials/metrics/Metrics.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/metrics/Metrics.java
rename to Essentials/src/main/java/com/earth2me/essentials/metrics/Metrics.java
diff --git a/Essentials/src/com/earth2me/essentials/metrics/MetricsWrapper.java b/Essentials/src/main/java/com/earth2me/essentials/metrics/MetricsWrapper.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/metrics/MetricsWrapper.java
rename to Essentials/src/main/java/com/earth2me/essentials/metrics/MetricsWrapper.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/IPermissionsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/IPermissionsHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/IPermissionsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/IPermissionsHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/PermissionsDefaults.java b/Essentials/src/main/java/com/earth2me/essentials/perm/PermissionsDefaults.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/PermissionsDefaults.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/PermissionsDefaults.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/PermissionsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/PermissionsHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/PermissionsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/PermissionsHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/AbstractVaultHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/AbstractVaultHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/impl/AbstractVaultHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/AbstractVaultHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/ConfigPermissionsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/ConfigPermissionsHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/impl/ConfigPermissionsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/ConfigPermissionsHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/GenericVaultHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/GenericVaultHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/impl/GenericVaultHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/GenericVaultHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/LuckPermsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/LuckPermsHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/impl/LuckPermsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/LuckPermsHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/ModernVaultHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/ModernVaultHandler.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/perm/impl/ModernVaultHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/ModernVaultHandler.java
diff --git a/Essentials/src/com/earth2me/essentials/perm/impl/SuperpermsHandler.java b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/SuperpermsHandler.java
similarity index 97%
rename from Essentials/src/com/earth2me/essentials/perm/impl/SuperpermsHandler.java
rename to Essentials/src/main/java/com/earth2me/essentials/perm/impl/SuperpermsHandler.java
index 1fe1da6f3..d91efefde 100644
--- a/Essentials/src/com/earth2me/essentials/perm/impl/SuperpermsHandler.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/perm/impl/SuperpermsHandler.java
@@ -58,7 +58,7 @@ public class SuperpermsHandler implements IPermissionsHandler {
* to respect default-false assignments. {@link org.bukkit.permissions.Permissible#isPermissionSet(String)}
* will only return true for permissions that are set on an attachment, or that are a default that evaluates to true.
* When resolving wildcards, we also want to detect permissions that are not in an attachment, but also won't evaluate
- * to true for operators &em; since these are ones we've explicitly set to {@code false} in the {@code plugin.yml}
+ * to true for operators — since these are ones we've explicitly set to {@code false} in the {@code plugin.yml}
*
*
For the resolution itself, we check whether the permission is either set on the permissible or explicitly not
* granted to ops (i.e. deviating from the default). If so, the permission's value is returned. Otherwise, the portion
diff --git a/Essentials/src/com/earth2me/essentials/register/payment/Method.java b/Essentials/src/main/java/com/earth2me/essentials/register/payment/Method.java
similarity index 95%
rename from Essentials/src/com/earth2me/essentials/register/payment/Method.java
rename to Essentials/src/main/java/com/earth2me/essentials/register/payment/Method.java
index 40763666a..7c12f0aa1 100644
--- a/Essentials/src/com/earth2me/essentials/register/payment/Method.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/register/payment/Method.java
@@ -5,23 +5,23 @@ import org.bukkit.plugin.Plugin;
/**
* Interface to be implemented by a payment method.
* Copyright (C) 2011
- * AOL license
+ * AOL license <http://aol.nexua.org>
*
* For more information about the licensing of this code in EssentialsX, see below:
- * https://gist.github.com/md678685/0935441c9573c030c8bd5a2e604aeec3
+ * https://gist.github.com/mdcfe/0935441c9573c030c8bd5a2e604aeec3
*
- * @author Nijikokun (@nijikokun)
+ * @author Nijikokun <nijikokun@shortmail.com> (@nijikokun)
*/
public interface Method {
/**
* Encodes the Plugin into an Object disguised as the Plugin. If you want the original Plugin Class you must cast it
* to the correct Plugin, to do so you have to verify the name and or version then cast.
- *
+ *
* For more information about the licensing of this code in EssentialsX, see below:
- * https://gist.github.com/md678685/0935441c9573c030c8bd5a2e604aeec3
+ * https://gist.github.com/mdcfe/0935441c9573c030c8bd5a2e604aeec3
*
- * @author Nijikokun (@nijikokun) @copyright: Copyright (C) 2011 @license: AOL license
- *
+ * @author Nijikokun <nijikokun@shortmail.com> (@nijikokun)
*/
public final class Methods {
private static final Set Methods = new HashSet<>();
@@ -40,7 +42,7 @@ public final class Methods {
}
/**
- * Implement all methods along with their respective name & class.
+ * Implement all methods along with their respective name & class.
*/
public static void init() {
if (!Methods.isEmpty()) {
@@ -82,7 +84,7 @@ public final class Methods {
/**
* Returns an array of payment method names that have been loaded through the _init method.
*
- * @return Set - Array of payment methods that are loaded.
+ * @return Set of names of payment methods that are loaded.
* @see #setMethod(PluginManager)
*/
public static Set getDependencies() {
diff --git a/Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java b/Essentials/src/main/java/com/earth2me/essentials/register/payment/methods/VaultEco.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/register/payment/methods/VaultEco.java
rename to Essentials/src/main/java/com/earth2me/essentials/register/payment/methods/VaultEco.java
diff --git a/Essentials/src/com/earth2me/essentials/settings/Jails.java b/Essentials/src/main/java/com/earth2me/essentials/settings/Jails.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/settings/Jails.java
rename to Essentials/src/main/java/com/earth2me/essentials/settings/Jails.java
diff --git a/Essentials/src/com/earth2me/essentials/settings/Spawns.java b/Essentials/src/main/java/com/earth2me/essentials/settings/Spawns.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/settings/Spawns.java
rename to Essentials/src/main/java/com/earth2me/essentials/settings/Spawns.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/EssentialsSign.java b/Essentials/src/main/java/com/earth2me/essentials/signs/EssentialsSign.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/EssentialsSign.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/EssentialsSign.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignBalance.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignBalance.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignBalance.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignBalance.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignBlockListener.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignBlockListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignBlockListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignBlockListener.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignBuy.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignBuy.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignBuy.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignDisposal.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignDisposal.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignDisposal.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignDisposal.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignEnchant.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignEnchant.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignEnchant.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignEntityListener.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignEntityListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignEntityListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignEntityListener.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignException.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignException.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignException.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignFree.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignFree.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignFree.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignFree.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignGameMode.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignGameMode.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignGameMode.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignGameMode.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignHeal.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignHeal.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignHeal.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignHeal.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignInfo.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignInfo.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignInfo.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignInfo.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignKit.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignKit.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignKit.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignKit.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignMail.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignMail.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignMail.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignMail.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignPlayerListener.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignPlayerListener.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignPlayerListener.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignPlayerListener.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignProtection.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignProtection.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignProtection.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignProtection.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignRepair.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignRepair.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignRepair.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignRepair.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignSell.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignSell.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignSell.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignSpawnmob.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignSpawnmob.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignSpawnmob.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignSpawnmob.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignTime.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignTime.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignTime.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignTime.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignTrade.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignTrade.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignTrade.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignTrade.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignWarp.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignWarp.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignWarp.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignWarp.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignWeather.java b/Essentials/src/main/java/com/earth2me/essentials/signs/SignWeather.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/SignWeather.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/SignWeather.java
diff --git a/Essentials/src/com/earth2me/essentials/signs/Signs.java b/Essentials/src/main/java/com/earth2me/essentials/signs/Signs.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/signs/Signs.java
rename to Essentials/src/main/java/com/earth2me/essentials/signs/Signs.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/AbstractDelayedYamlFileReader.java b/Essentials/src/main/java/com/earth2me/essentials/storage/AbstractDelayedYamlFileReader.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/AbstractDelayedYamlFileReader.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/AbstractDelayedYamlFileReader.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/AbstractDelayedYamlFileWriter.java b/Essentials/src/main/java/com/earth2me/essentials/storage/AbstractDelayedYamlFileWriter.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/AbstractDelayedYamlFileWriter.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/AbstractDelayedYamlFileWriter.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/AsyncStorageObjectHolder.java b/Essentials/src/main/java/com/earth2me/essentials/storage/AsyncStorageObjectHolder.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/AsyncStorageObjectHolder.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/AsyncStorageObjectHolder.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java b/Essentials/src/main/java/com/earth2me/essentials/storage/BukkitConstructor.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/BukkitConstructor.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/BukkitConstructor.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/Comment.java b/Essentials/src/main/java/com/earth2me/essentials/storage/Comment.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/Comment.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/Comment.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/EnchantmentLevel.java b/Essentials/src/main/java/com/earth2me/essentials/storage/EnchantmentLevel.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/EnchantmentLevel.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/EnchantmentLevel.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/IStorageObjectHolder.java b/Essentials/src/main/java/com/earth2me/essentials/storage/IStorageObjectHolder.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/IStorageObjectHolder.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/IStorageObjectHolder.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/IStorageReader.java b/Essentials/src/main/java/com/earth2me/essentials/storage/IStorageReader.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/IStorageReader.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/IStorageReader.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/IStorageWriter.java b/Essentials/src/main/java/com/earth2me/essentials/storage/IStorageWriter.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/IStorageWriter.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/IStorageWriter.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/ListType.java b/Essentials/src/main/java/com/earth2me/essentials/storage/ListType.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/ListType.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/ListType.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/MapKeyType.java b/Essentials/src/main/java/com/earth2me/essentials/storage/MapKeyType.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/MapKeyType.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/MapKeyType.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/MapValueType.java b/Essentials/src/main/java/com/earth2me/essentials/storage/MapValueType.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/MapValueType.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/MapValueType.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/ObjectLoadException.java b/Essentials/src/main/java/com/earth2me/essentials/storage/ObjectLoadException.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/ObjectLoadException.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/ObjectLoadException.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/StorageObject.java b/Essentials/src/main/java/com/earth2me/essentials/storage/StorageObject.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/StorageObject.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/StorageObject.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/YamlStorageReader.java b/Essentials/src/main/java/com/earth2me/essentials/storage/YamlStorageReader.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/YamlStorageReader.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/YamlStorageReader.java
diff --git a/Essentials/src/com/earth2me/essentials/storage/YamlStorageWriter.java b/Essentials/src/main/java/com/earth2me/essentials/storage/YamlStorageWriter.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/storage/YamlStorageWriter.java
rename to Essentials/src/main/java/com/earth2me/essentials/storage/YamlStorageWriter.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/BookInput.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/BookInput.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/BookInput.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/BookInput.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/BookPager.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/BookPager.java
similarity index 96%
rename from Essentials/src/com/earth2me/essentials/textreader/BookPager.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/BookPager.java
index e000419a6..b67191d59 100644
--- a/Essentials/src/com/earth2me/essentials/textreader/BookPager.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/textreader/BookPager.java
@@ -1,5 +1,7 @@
package com.earth2me.essentials.textreader;
+import org.bukkit.ChatColor;
+
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
@@ -66,7 +68,7 @@ public class BookPager {
forcePageEnd = true;
}
- if (length >= charMax || (letter == '\u00a7' && length + 1 >= charMax)) {
+ if (length >= charMax || (letter == ChatColor.COLOR_CHAR && length + 1 >= charMax)) {
int pos = pointer;
int rollback = 0;
while (pos > start && pageLine.charAt(pos) != ' ' && pageLine.charAt(pos) != "\n".charAt(0)) {
@@ -92,7 +94,7 @@ public class BookPager {
pageLength++;
- if (letter == '\u00a7' && pointer + 1 < lineLength) {
+ if (letter == ChatColor.COLOR_CHAR && pointer + 1 < lineLength) {
final char nextLetter = pageLine.charAt(pointer + 1);
if (nextLetter == 'l' || nextLetter == 'L') {
weight = 1.25;
diff --git a/Essentials/src/com/earth2me/essentials/textreader/HelpInput.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/HelpInput.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/HelpInput.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/HelpInput.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/IText.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/IText.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/IText.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/IText.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/KeywordReplacer.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/KeywordReplacer.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/KeywordReplacer.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/KeywordReplacer.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/SimpleTextInput.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/SimpleTextInput.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/SimpleTextInput.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/SimpleTextInput.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/SimpleTextPager.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/SimpleTextPager.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/SimpleTextPager.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/SimpleTextPager.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/TextInput.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/TextInput.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/TextInput.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/TextInput.java
diff --git a/Essentials/src/com/earth2me/essentials/textreader/TextPager.java b/Essentials/src/main/java/com/earth2me/essentials/textreader/TextPager.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/textreader/TextPager.java
rename to Essentials/src/main/java/com/earth2me/essentials/textreader/TextPager.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/DateUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/DateUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/DateUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/DateUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/DescParseTickFormat.java b/Essentials/src/main/java/com/earth2me/essentials/utils/DescParseTickFormat.java
similarity index 99%
rename from Essentials/src/com/earth2me/essentials/utils/DescParseTickFormat.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/DescParseTickFormat.java
index f978fa05c..5d37f9d89 100644
--- a/Essentials/src/com/earth2me/essentials/utils/DescParseTickFormat.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/utils/DescParseTickFormat.java
@@ -15,7 +15,7 @@ import static com.earth2me.essentials.I18n.tl;
/**
* This utility class is used for converting between the ingame time in ticks to ingame time as a friendly string. Note
* that the time is INGAME.
- *
+ *
* http://www.minecraftwiki.net/wiki/Day/night_cycle
*
* @author Olof Larsson
diff --git a/Essentials/src/com/earth2me/essentials/utils/EnumUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/EnumUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/EnumUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/EnumUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/FloatUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/FloatUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/FloatUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/FloatUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/FormatUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/FormatUtil.java
similarity index 95%
rename from Essentials/src/com/earth2me/essentials/utils/FormatUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/FormatUtil.java
index afcdb2620..f63b75850 100644
--- a/Essentials/src/com/earth2me/essentials/utils/FormatUtil.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/utils/FormatUtil.java
@@ -16,9 +16,9 @@ public final class FormatUtil {
private static final Set FORMATS = EnumSet.of(ChatColor.BOLD, ChatColor.STRIKETHROUGH, ChatColor.UNDERLINE, ChatColor.ITALIC, ChatColor.RESET);
private static final Set MAGIC = EnumSet.of(ChatColor.MAGIC);
//Vanilla patterns used to strip existing formats
- private static final Pattern STRIP_ALL_PATTERN = Pattern.compile("\u00a7+([0-9a-fk-orA-FK-OR])");
+ private static final Pattern STRIP_ALL_PATTERN = Pattern.compile(ChatColor.COLOR_CHAR + "+([0-9a-fk-orA-FK-OR])");
//Pattern used to strip md_5 legacy hex hack
- private static final Pattern STRIP_RGB_PATTERN = Pattern.compile("\u00a7x((?:\u00a7[0-9a-fA-F]){6})");
+ private static final Pattern STRIP_RGB_PATTERN = Pattern.compile(ChatColor.COLOR_CHAR + "x((?:" + ChatColor.COLOR_CHAR + "[0-9a-fA-F]){6})");
//Essentials '&' convention colour codes
private static final Pattern REPLACE_ALL_PATTERN = Pattern.compile("(&)?&([0-9a-fk-orA-FK-OR])");
private static final Pattern REPLACE_ALL_RGB_PATTERN = Pattern.compile("(&)?([0-9a-fA-F]{6})");
@@ -75,7 +75,7 @@ public final class FormatUtil {
final char code = legacyMatcher.group(2).toLowerCase(Locale.ROOT).charAt(0);
for (final ChatColor color : supported) {
if (color.getChar() == code) {
- legacyMatcher.appendReplacement(legacyBuilder, "\u00a7$2");
+ legacyMatcher.appendReplacement(legacyBuilder, ChatColor.COLOR_CHAR + "$2");
continue legacyLoop;
}
}
@@ -122,9 +122,9 @@ public final class FormatUtil {
}
Color.decode("#" + hexColor);
final StringBuilder assembledColorCode = new StringBuilder();
- assembledColorCode.append("\u00a7x");
+ assembledColorCode.append(ChatColor.COLOR_CHAR + "x");
for (final char curChar : hexColor.toCharArray()) {
- assembledColorCode.append("\u00a7").append(curChar);
+ assembledColorCode.append(ChatColor.COLOR_CHAR).append(curChar);
}
return assembledColorCode.toString();
}
@@ -159,7 +159,7 @@ public final class FormatUtil {
final Matcher rgbMatcher = STRIP_RGB_PATTERN.matcher(message);
final boolean rgb = user.isAuthorized(permBase + ".rgb");
while (rgbMatcher.find()) {
- final String code = rgbMatcher.group(1).replace("\u00a7", "");
+ final String code = rgbMatcher.group(1).replace(String.valueOf(ChatColor.COLOR_CHAR), "");
if (rgb) {
rgbMatcher.appendReplacement(rgbBuilder, "" + code);
continue;
@@ -249,7 +249,7 @@ public final class FormatUtil {
}
public static String lastCode(final String input) {
- final int pos = input.lastIndexOf('\u00a7');
+ final int pos = input.lastIndexOf(ChatColor.COLOR_CHAR);
if (pos == -1 || (pos + 1) == input.length()) {
return "";
}
diff --git a/Essentials/src/com/earth2me/essentials/utils/LocationUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/LocationUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/MaterialUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/MaterialUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/MaterialUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/MaterialUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/NumberUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/NumberUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/NumberUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/NumberUtil.java
diff --git a/Essentials/src/com/earth2me/essentials/utils/StringUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/StringUtil.java
similarity index 98%
rename from Essentials/src/com/earth2me/essentials/utils/StringUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/StringUtil.java
index e4d03bfb1..1598de680 100644
--- a/Essentials/src/com/earth2me/essentials/utils/StringUtil.java
+++ b/Essentials/src/main/java/com/earth2me/essentials/utils/StringUtil.java
@@ -8,6 +8,7 @@ import java.util.regex.Pattern;
public final class StringUtil {
private static final Pattern INVALIDFILECHARS = Pattern.compile("[^a-z0-9-]");
private static final Pattern STRICTINVALIDCHARS = Pattern.compile("[^a-z0-9]");
+ @SuppressWarnings("CheckStyle")
private static final Pattern INVALIDCHARS = Pattern.compile("[^\t\n\r\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFC]");
private StringUtil() {
diff --git a/Essentials/src/com/earth2me/essentials/utils/VersionUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/VersionUtil.java
similarity index 100%
rename from Essentials/src/com/earth2me/essentials/utils/VersionUtil.java
rename to Essentials/src/main/java/com/earth2me/essentials/utils/VersionUtil.java
diff --git a/Essentials/src/net/ess3/api/Economy.java b/Essentials/src/main/java/net/ess3/api/Economy.java
similarity index 100%
rename from Essentials/src/net/ess3/api/Economy.java
rename to Essentials/src/main/java/net/ess3/api/Economy.java
diff --git a/Essentials/src/net/ess3/api/IEssentials.java b/Essentials/src/main/java/net/ess3/api/IEssentials.java
similarity index 97%
rename from Essentials/src/net/ess3/api/IEssentials.java
rename to Essentials/src/main/java/net/ess3/api/IEssentials.java
index a9039d3b9..92ebfe981 100644
--- a/Essentials/src/net/ess3/api/IEssentials.java
+++ b/Essentials/src/main/java/net/ess3/api/IEssentials.java
@@ -39,7 +39,7 @@ public interface IEssentials extends com.earth2me.essentials.IEssentials {
* Note: external plugins should generally avoid using this. If you want to add custom items from your plugin,
* you probably want to implement your own {@link net.ess3.api.IItemDb.ItemResolver}.
*
- * @return
+ * @return The custom item resolver
*/
CustomItemResolver getCustomItemResolver();
}
diff --git a/Essentials/src/net/ess3/api/II18n.java b/Essentials/src/main/java/net/ess3/api/II18n.java
similarity index 100%
rename from Essentials/src/net/ess3/api/II18n.java
rename to Essentials/src/main/java/net/ess3/api/II18n.java
diff --git a/Essentials/src/net/ess3/api/IItemDb.java b/Essentials/src/main/java/net/ess3/api/IItemDb.java
similarity index 100%
rename from Essentials/src/net/ess3/api/IItemDb.java
rename to Essentials/src/main/java/net/ess3/api/IItemDb.java
diff --git a/Essentials/src/net/ess3/api/IJails.java b/Essentials/src/main/java/net/ess3/api/IJails.java
similarity index 100%
rename from Essentials/src/net/ess3/api/IJails.java
rename to Essentials/src/main/java/net/ess3/api/IJails.java
diff --git a/Essentials/src/net/ess3/api/IReload.java b/Essentials/src/main/java/net/ess3/api/IReload.java
similarity index 100%
rename from Essentials/src/net/ess3/api/IReload.java
rename to Essentials/src/main/java/net/ess3/api/IReload.java
diff --git a/Essentials/src/net/ess3/api/ISettings.java b/Essentials/src/main/java/net/ess3/api/ISettings.java
similarity index 100%
rename from Essentials/src/net/ess3/api/ISettings.java
rename to Essentials/src/main/java/net/ess3/api/ISettings.java
diff --git a/Essentials/src/net/ess3/api/ITeleport.java b/Essentials/src/main/java/net/ess3/api/ITeleport.java
similarity index 100%
rename from Essentials/src/net/ess3/api/ITeleport.java
rename to Essentials/src/main/java/net/ess3/api/ITeleport.java
diff --git a/Essentials/src/net/ess3/api/IUser.java b/Essentials/src/main/java/net/ess3/api/IUser.java
similarity index 100%
rename from Essentials/src/net/ess3/api/IUser.java
rename to Essentials/src/main/java/net/ess3/api/IUser.java
diff --git a/Essentials/src/net/ess3/api/IWarps.java b/Essentials/src/main/java/net/ess3/api/IWarps.java
similarity index 100%
rename from Essentials/src/net/ess3/api/IWarps.java
rename to Essentials/src/main/java/net/ess3/api/IWarps.java
diff --git a/Essentials/src/net/ess3/api/InvalidNameException.java b/Essentials/src/main/java/net/ess3/api/InvalidNameException.java
similarity index 100%
rename from Essentials/src/net/ess3/api/InvalidNameException.java
rename to Essentials/src/main/java/net/ess3/api/InvalidNameException.java
diff --git a/Essentials/src/net/ess3/api/InvalidWorldException.java b/Essentials/src/main/java/net/ess3/api/InvalidWorldException.java
similarity index 100%
rename from Essentials/src/net/ess3/api/InvalidWorldException.java
rename to Essentials/src/main/java/net/ess3/api/InvalidWorldException.java
diff --git a/Essentials/src/net/ess3/api/MaxMoneyException.java b/Essentials/src/main/java/net/ess3/api/MaxMoneyException.java
similarity index 100%
rename from Essentials/src/net/ess3/api/MaxMoneyException.java
rename to Essentials/src/main/java/net/ess3/api/MaxMoneyException.java
diff --git a/Essentials/src/net/ess3/api/NoLoanPermittedException.java b/Essentials/src/main/java/net/ess3/api/NoLoanPermittedException.java
similarity index 100%
rename from Essentials/src/net/ess3/api/NoLoanPermittedException.java
rename to Essentials/src/main/java/net/ess3/api/NoLoanPermittedException.java
diff --git a/Essentials/src/net/ess3/api/PluginKey.java b/Essentials/src/main/java/net/ess3/api/PluginKey.java
similarity index 100%
rename from Essentials/src/net/ess3/api/PluginKey.java
rename to Essentials/src/main/java/net/ess3/api/PluginKey.java
diff --git a/Essentials/src/net/ess3/api/UserDoesNotExistException.java b/Essentials/src/main/java/net/ess3/api/UserDoesNotExistException.java
similarity index 100%
rename from Essentials/src/net/ess3/api/UserDoesNotExistException.java
rename to Essentials/src/main/java/net/ess3/api/UserDoesNotExistException.java
diff --git a/Essentials/src/net/ess3/api/events/AfkStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/AfkStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/AfkStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/AfkStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/FlyStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/FlyStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/FlyStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/FlyStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/GodStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/GodStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/GodStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/GodStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/IgnoreStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/IgnoreStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/IgnoreStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/IgnoreStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/JailStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/JailStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/JailStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/JailStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/KitClaimEvent.java b/Essentials/src/main/java/net/ess3/api/events/KitClaimEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/KitClaimEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/KitClaimEvent.java
diff --git a/Essentials/src/net/ess3/api/events/LocalChatSpyEvent.java b/Essentials/src/main/java/net/ess3/api/events/LocalChatSpyEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/LocalChatSpyEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/LocalChatSpyEvent.java
diff --git a/Essentials/src/net/ess3/api/events/MuteStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/MuteStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/MuteStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/MuteStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/NickChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/NickChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/NickChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/NickChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/PrivateMessagePreSendEvent.java b/Essentials/src/main/java/net/ess3/api/events/PrivateMessagePreSendEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/PrivateMessagePreSendEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/PrivateMessagePreSendEvent.java
diff --git a/Essentials/src/net/ess3/api/events/PrivateMessageSentEvent.java b/Essentials/src/main/java/net/ess3/api/events/PrivateMessageSentEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/PrivateMessageSentEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/PrivateMessageSentEvent.java
diff --git a/Essentials/src/net/ess3/api/events/SignBreakEvent.java b/Essentials/src/main/java/net/ess3/api/events/SignBreakEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/SignBreakEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/SignBreakEvent.java
diff --git a/Essentials/src/net/ess3/api/events/SignCreateEvent.java b/Essentials/src/main/java/net/ess3/api/events/SignCreateEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/SignCreateEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/SignCreateEvent.java
diff --git a/Essentials/src/net/ess3/api/events/SignEvent.java b/Essentials/src/main/java/net/ess3/api/events/SignEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/SignEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/SignEvent.java
diff --git a/Essentials/src/net/ess3/api/events/SignInteractEvent.java b/Essentials/src/main/java/net/ess3/api/events/SignInteractEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/SignInteractEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/SignInteractEvent.java
diff --git a/Essentials/src/net/ess3/api/events/StateChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/StateChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/StateChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/StateChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/StatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/StatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/StatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/StatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/TPARequestEvent.java b/Essentials/src/main/java/net/ess3/api/events/TPARequestEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/TPARequestEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/TPARequestEvent.java
diff --git a/Essentials/src/net/ess3/api/events/UserBalanceUpdateEvent.java b/Essentials/src/main/java/net/ess3/api/events/UserBalanceUpdateEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/UserBalanceUpdateEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/UserBalanceUpdateEvent.java
diff --git a/Essentials/src/net/ess3/api/events/UserRandomTeleportEvent.java b/Essentials/src/main/java/net/ess3/api/events/UserRandomTeleportEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/UserRandomTeleportEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/UserRandomTeleportEvent.java
diff --git a/Essentials/src/net/ess3/api/events/UserTeleportHomeEvent.java b/Essentials/src/main/java/net/ess3/api/events/UserTeleportHomeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/UserTeleportHomeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/UserTeleportHomeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/UserWarpEvent.java b/Essentials/src/main/java/net/ess3/api/events/UserWarpEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/UserWarpEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/UserWarpEvent.java
diff --git a/Essentials/src/net/ess3/api/events/VanishStatusChangeEvent.java b/Essentials/src/main/java/net/ess3/api/events/VanishStatusChangeEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/VanishStatusChangeEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/VanishStatusChangeEvent.java
diff --git a/Essentials/src/net/ess3/api/events/teleport/PreTeleportEvent.java b/Essentials/src/main/java/net/ess3/api/events/teleport/PreTeleportEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/teleport/PreTeleportEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/teleport/PreTeleportEvent.java
diff --git a/Essentials/src/net/ess3/api/events/teleport/TeleportEvent.java b/Essentials/src/main/java/net/ess3/api/events/teleport/TeleportEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/teleport/TeleportEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/teleport/TeleportEvent.java
diff --git a/Essentials/src/net/ess3/api/events/teleport/TeleportWarmupEvent.java b/Essentials/src/main/java/net/ess3/api/events/teleport/TeleportWarmupEvent.java
similarity index 100%
rename from Essentials/src/net/ess3/api/events/teleport/TeleportWarmupEvent.java
rename to Essentials/src/main/java/net/ess3/api/events/teleport/TeleportWarmupEvent.java
diff --git a/Essentials/src/book.txt b/Essentials/src/main/resources/book.txt
similarity index 100%
rename from Essentials/src/book.txt
rename to Essentials/src/main/resources/book.txt
diff --git a/Essentials/src/config.yml b/Essentials/src/main/resources/config.yml
similarity index 100%
rename from Essentials/src/config.yml
rename to Essentials/src/main/resources/config.yml
diff --git a/Essentials/src/custom.txt b/Essentials/src/main/resources/custom.txt
similarity index 100%
rename from Essentials/src/custom.txt
rename to Essentials/src/main/resources/custom.txt
diff --git a/Essentials/src/custom_items.yml b/Essentials/src/main/resources/custom_items.yml
similarity index 100%
rename from Essentials/src/custom_items.yml
rename to Essentials/src/main/resources/custom_items.yml
diff --git a/Essentials/src/info.txt b/Essentials/src/main/resources/info.txt
similarity index 100%
rename from Essentials/src/info.txt
rename to Essentials/src/main/resources/info.txt
diff --git a/Essentials/src/items.csv b/Essentials/src/main/resources/items.csv
similarity index 100%
rename from Essentials/src/items.csv
rename to Essentials/src/main/resources/items.csv
diff --git a/Essentials/src/items.json b/Essentials/src/main/resources/items.json
similarity index 100%
rename from Essentials/src/items.json
rename to Essentials/src/main/resources/items.json
diff --git a/Essentials/src/kits.yml b/Essentials/src/main/resources/kits.yml
similarity index 100%
rename from Essentials/src/kits.yml
rename to Essentials/src/main/resources/kits.yml
diff --git a/Essentials/src/messages.properties b/Essentials/src/main/resources/messages.properties
similarity index 100%
rename from Essentials/src/messages.properties
rename to Essentials/src/main/resources/messages.properties
diff --git a/Essentials/src/messages_bg.properties b/Essentials/src/main/resources/messages_bg.properties
similarity index 100%
rename from Essentials/src/messages_bg.properties
rename to Essentials/src/main/resources/messages_bg.properties
diff --git a/Essentials/src/messages_bs.properties b/Essentials/src/main/resources/messages_bs.properties
similarity index 100%
rename from Essentials/src/messages_bs.properties
rename to Essentials/src/main/resources/messages_bs.properties
diff --git a/Essentials/src/messages_cs.properties b/Essentials/src/main/resources/messages_cs.properties
similarity index 100%
rename from Essentials/src/messages_cs.properties
rename to Essentials/src/main/resources/messages_cs.properties
diff --git a/Essentials/src/messages_da.properties b/Essentials/src/main/resources/messages_da.properties
similarity index 100%
rename from Essentials/src/messages_da.properties
rename to Essentials/src/main/resources/messages_da.properties
diff --git a/Essentials/src/messages_de.properties b/Essentials/src/main/resources/messages_de.properties
similarity index 100%
rename from Essentials/src/messages_de.properties
rename to Essentials/src/main/resources/messages_de.properties
diff --git a/Essentials/src/messages_el.properties b/Essentials/src/main/resources/messages_el.properties
similarity index 100%
rename from Essentials/src/messages_el.properties
rename to Essentials/src/main/resources/messages_el.properties
diff --git a/Essentials/src/messages_en.properties b/Essentials/src/main/resources/messages_en.properties
similarity index 100%
rename from Essentials/src/messages_en.properties
rename to Essentials/src/main/resources/messages_en.properties
diff --git a/Essentials/src/messages_en_GB.properties b/Essentials/src/main/resources/messages_en_GB.properties
similarity index 100%
rename from Essentials/src/messages_en_GB.properties
rename to Essentials/src/main/resources/messages_en_GB.properties
diff --git a/Essentials/src/messages_es.properties b/Essentials/src/main/resources/messages_es.properties
similarity index 100%
rename from Essentials/src/messages_es.properties
rename to Essentials/src/main/resources/messages_es.properties
diff --git a/Essentials/src/messages_et.properties b/Essentials/src/main/resources/messages_et.properties
similarity index 100%
rename from Essentials/src/messages_et.properties
rename to Essentials/src/main/resources/messages_et.properties
diff --git a/Essentials/src/messages_eu.properties b/Essentials/src/main/resources/messages_eu.properties
similarity index 100%
rename from Essentials/src/messages_eu.properties
rename to Essentials/src/main/resources/messages_eu.properties
diff --git a/Essentials/src/messages_fi.properties b/Essentials/src/main/resources/messages_fi.properties
similarity index 100%
rename from Essentials/src/messages_fi.properties
rename to Essentials/src/main/resources/messages_fi.properties
diff --git a/Essentials/src/messages_fr.properties b/Essentials/src/main/resources/messages_fr.properties
similarity index 100%
rename from Essentials/src/messages_fr.properties
rename to Essentials/src/main/resources/messages_fr.properties
diff --git a/Essentials/src/messages_he.properties b/Essentials/src/main/resources/messages_he.properties
similarity index 100%
rename from Essentials/src/messages_he.properties
rename to Essentials/src/main/resources/messages_he.properties
diff --git a/Essentials/src/messages_hr.properties b/Essentials/src/main/resources/messages_hr.properties
similarity index 100%
rename from Essentials/src/messages_hr.properties
rename to Essentials/src/main/resources/messages_hr.properties
diff --git a/Essentials/src/messages_hu.properties b/Essentials/src/main/resources/messages_hu.properties
similarity index 100%
rename from Essentials/src/messages_hu.properties
rename to Essentials/src/main/resources/messages_hu.properties
diff --git a/Essentials/src/messages_is_IS.properties b/Essentials/src/main/resources/messages_is_IS.properties
similarity index 100%
rename from Essentials/src/messages_is_IS.properties
rename to Essentials/src/main/resources/messages_is_IS.properties
diff --git a/Essentials/src/messages_it.properties b/Essentials/src/main/resources/messages_it.properties
similarity index 100%
rename from Essentials/src/messages_it.properties
rename to Essentials/src/main/resources/messages_it.properties
diff --git a/Essentials/src/messages_ja.properties b/Essentials/src/main/resources/messages_ja.properties
similarity index 100%
rename from Essentials/src/messages_ja.properties
rename to Essentials/src/main/resources/messages_ja.properties
diff --git a/Essentials/src/messages_ko.properties b/Essentials/src/main/resources/messages_ko.properties
similarity index 100%
rename from Essentials/src/messages_ko.properties
rename to Essentials/src/main/resources/messages_ko.properties
diff --git a/Essentials/src/messages_lt.properties b/Essentials/src/main/resources/messages_lt.properties
similarity index 100%
rename from Essentials/src/messages_lt.properties
rename to Essentials/src/main/resources/messages_lt.properties
diff --git a/Essentials/src/messages_lv_LV.properties b/Essentials/src/main/resources/messages_lv_LV.properties
similarity index 100%
rename from Essentials/src/messages_lv_LV.properties
rename to Essentials/src/main/resources/messages_lv_LV.properties
diff --git a/Essentials/src/messages_nl.properties b/Essentials/src/main/resources/messages_nl.properties
similarity index 100%
rename from Essentials/src/messages_nl.properties
rename to Essentials/src/main/resources/messages_nl.properties
diff --git a/Essentials/src/messages_no.properties b/Essentials/src/main/resources/messages_no.properties
similarity index 100%
rename from Essentials/src/messages_no.properties
rename to Essentials/src/main/resources/messages_no.properties
diff --git a/Essentials/src/messages_pl.properties b/Essentials/src/main/resources/messages_pl.properties
similarity index 100%
rename from Essentials/src/messages_pl.properties
rename to Essentials/src/main/resources/messages_pl.properties
diff --git a/Essentials/src/messages_pt.properties b/Essentials/src/main/resources/messages_pt.properties
similarity index 100%
rename from Essentials/src/messages_pt.properties
rename to Essentials/src/main/resources/messages_pt.properties
diff --git a/Essentials/src/messages_pt_BR.properties b/Essentials/src/main/resources/messages_pt_BR.properties
similarity index 100%
rename from Essentials/src/messages_pt_BR.properties
rename to Essentials/src/main/resources/messages_pt_BR.properties
diff --git a/Essentials/src/messages_ro.properties b/Essentials/src/main/resources/messages_ro.properties
similarity index 100%
rename from Essentials/src/messages_ro.properties
rename to Essentials/src/main/resources/messages_ro.properties
diff --git a/Essentials/src/messages_ru.properties b/Essentials/src/main/resources/messages_ru.properties
similarity index 100%
rename from Essentials/src/messages_ru.properties
rename to Essentials/src/main/resources/messages_ru.properties
diff --git a/Essentials/src/messages_sk.properties b/Essentials/src/main/resources/messages_sk.properties
similarity index 100%
rename from Essentials/src/messages_sk.properties
rename to Essentials/src/main/resources/messages_sk.properties
diff --git a/Essentials/src/messages_sr.properties b/Essentials/src/main/resources/messages_sr.properties
similarity index 100%
rename from Essentials/src/messages_sr.properties
rename to Essentials/src/main/resources/messages_sr.properties
diff --git a/Essentials/src/messages_sr_CS.properties b/Essentials/src/main/resources/messages_sr_CS.properties
similarity index 100%
rename from Essentials/src/messages_sr_CS.properties
rename to Essentials/src/main/resources/messages_sr_CS.properties
diff --git a/Essentials/src/messages_sv.properties b/Essentials/src/main/resources/messages_sv.properties
similarity index 100%
rename from Essentials/src/messages_sv.properties
rename to Essentials/src/main/resources/messages_sv.properties
diff --git a/Essentials/src/messages_th.properties b/Essentials/src/main/resources/messages_th.properties
similarity index 100%
rename from Essentials/src/messages_th.properties
rename to Essentials/src/main/resources/messages_th.properties
diff --git a/Essentials/src/messages_tr.properties b/Essentials/src/main/resources/messages_tr.properties
similarity index 100%
rename from Essentials/src/messages_tr.properties
rename to Essentials/src/main/resources/messages_tr.properties
diff --git a/Essentials/src/messages_uk.properties b/Essentials/src/main/resources/messages_uk.properties
similarity index 100%
rename from Essentials/src/messages_uk.properties
rename to Essentials/src/main/resources/messages_uk.properties
diff --git a/Essentials/src/messages_vi.properties b/Essentials/src/main/resources/messages_vi.properties
similarity index 100%
rename from Essentials/src/messages_vi.properties
rename to Essentials/src/main/resources/messages_vi.properties
diff --git a/Essentials/src/messages_zh.properties b/Essentials/src/main/resources/messages_zh.properties
similarity index 100%
rename from Essentials/src/messages_zh.properties
rename to Essentials/src/main/resources/messages_zh.properties
diff --git a/Essentials/src/messages_zh_HK.properties b/Essentials/src/main/resources/messages_zh_HK.properties
similarity index 100%
rename from Essentials/src/messages_zh_HK.properties
rename to Essentials/src/main/resources/messages_zh_HK.properties
diff --git a/Essentials/src/messages_zh_TW.properties b/Essentials/src/main/resources/messages_zh_TW.properties
similarity index 100%
rename from Essentials/src/messages_zh_TW.properties
rename to Essentials/src/main/resources/messages_zh_TW.properties
diff --git a/Essentials/src/motd.txt b/Essentials/src/main/resources/motd.txt
similarity index 100%
rename from Essentials/src/motd.txt
rename to Essentials/src/main/resources/motd.txt
diff --git a/Essentials/src/plugin.yml b/Essentials/src/main/resources/plugin.yml
similarity index 100%
rename from Essentials/src/plugin.yml
rename to Essentials/src/main/resources/plugin.yml
diff --git a/Essentials/src/rules.txt b/Essentials/src/main/resources/rules.txt
similarity index 100%
rename from Essentials/src/rules.txt
rename to Essentials/src/main/resources/rules.txt
diff --git a/Essentials/src/tpr.yml b/Essentials/src/main/resources/tpr.yml
similarity index 100%
rename from Essentials/src/tpr.yml
rename to Essentials/src/main/resources/tpr.yml
diff --git a/Essentials/src/worth.yml b/Essentials/src/main/resources/worth.yml
similarity index 100%
rename from Essentials/src/worth.yml
rename to Essentials/src/main/resources/worth.yml
diff --git a/Essentials/test/com/earth2me/essentials/EconomyTest.java b/Essentials/src/test/java/com/earth2me/essentials/EconomyTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/EconomyTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/EconomyTest.java
diff --git a/Essentials/test/com/earth2me/essentials/FakeServer.java b/Essentials/src/test/java/com/earth2me/essentials/FakeServer.java
similarity index 99%
rename from Essentials/test/com/earth2me/essentials/FakeServer.java
rename to Essentials/src/test/java/com/earth2me/essentials/FakeServer.java
index 59150ffcc..6ae104a6e 100644
--- a/Essentials/test/com/earth2me/essentials/FakeServer.java
+++ b/Essentials/src/test/java/com/earth2me/essentials/FakeServer.java
@@ -592,7 +592,9 @@ public class FakeServer implements Server {
@Override
public long getFirstPlayed() {
throw new UnsupportedOperationException("Not supported yet.");
- } @Override
+ }
+
+ @Override
public void setOp(final boolean bln) {
throw new UnsupportedOperationException("Not supported yet.");
}
@@ -714,9 +716,6 @@ public class FakeServer implements Server {
public void setStatistic(final Statistic statistic, final EntityType entityType, final int newValue) {
throw new UnsupportedOperationException("Not supported yet.");
}
-
-
-
};
}
@@ -858,7 +857,9 @@ public class FakeServer implements Server {
@Override
public void acceptConversationInput(final String input) {
throw new UnsupportedOperationException("Not supported yet.");
- } @Override
+ }
+
+ @Override
public void setOp(final boolean value) {
throw new UnsupportedOperationException("Not supported yet.");
}
diff --git a/Essentials/test/com/earth2me/essentials/MessagingTest.java b/Essentials/src/test/java/com/earth2me/essentials/MessagingTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/MessagingTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/MessagingTest.java
diff --git a/Essentials/test/com/earth2me/essentials/StorageTest.java b/Essentials/src/test/java/com/earth2me/essentials/StorageTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/StorageTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/StorageTest.java
diff --git a/Essentials/test/com/earth2me/essentials/ToggleTest.java b/Essentials/src/test/java/com/earth2me/essentials/ToggleTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/ToggleTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/ToggleTest.java
diff --git a/Essentials/test/com/earth2me/essentials/UserTest.java b/Essentials/src/test/java/com/earth2me/essentials/UserTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/UserTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/UserTest.java
diff --git a/Essentials/test/com/earth2me/essentials/UtilTest.java b/Essentials/src/test/java/com/earth2me/essentials/UtilTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/UtilTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/UtilTest.java
diff --git a/Essentials/test/com/earth2me/essentials/utils/FormatUtilTest.java b/Essentials/src/test/java/com/earth2me/essentials/utils/FormatUtilTest.java
similarity index 100%
rename from Essentials/test/com/earth2me/essentials/utils/FormatUtilTest.java
rename to Essentials/src/test/java/com/earth2me/essentials/utils/FormatUtilTest.java
diff --git a/EssentialsAntiBuild/build.gradle b/EssentialsAntiBuild/build.gradle
new file mode 100644
index 000000000..9bfe75531
--- /dev/null
+++ b/EssentialsAntiBuild/build.gradle
@@ -0,0 +1,3 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+}
diff --git a/EssentialsAntiBuild/pom.xml b/EssentialsAntiBuild/pom.xml
deleted file mode 100644
index db1ab2267..000000000
--- a/EssentialsAntiBuild/pom.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXAntiBuild
-
-
- EssentialsXAntiBuild-${full.version}
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
-
-
-
\ No newline at end of file
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java b/EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/AntiBuildConfig.java
similarity index 100%
rename from EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/AntiBuildConfig.java
rename to EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/AntiBuildConfig.java
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java b/EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
similarity index 100%
rename from EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
rename to EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsAntiBuild.java
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java b/EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
similarity index 100%
rename from EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
rename to EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsConnect.java b/EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsConnect.java
similarity index 100%
rename from EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsConnect.java
rename to EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/EssentialsConnect.java
diff --git a/EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/IAntiBuild.java b/EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/IAntiBuild.java
similarity index 100%
rename from EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/IAntiBuild.java
rename to EssentialsAntiBuild/src/main/java/com/earth2me/essentials/antibuild/IAntiBuild.java
diff --git a/EssentialsAntiBuild/src/plugin.yml b/EssentialsAntiBuild/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsAntiBuild/src/plugin.yml
rename to EssentialsAntiBuild/src/main/resources/plugin.yml
diff --git a/EssentialsChat/build.gradle b/EssentialsChat/build.gradle
new file mode 100644
index 000000000..9bfe75531
--- /dev/null
+++ b/EssentialsChat/build.gradle
@@ -0,0 +1,3 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+}
diff --git a/EssentialsChat/pom.xml b/EssentialsChat/pom.xml
deleted file mode 100644
index 9207021ad..000000000
--- a/EssentialsChat/pom.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXChat
-
-
- EssentialsXChat-${full.version}
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
-
-
-
\ No newline at end of file
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/ChatStore.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/ChatStore.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/ChatStore.java
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChat.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChat.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChat.java
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayer.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayer.java
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerHighest.java
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerLowest.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerLowest.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerLowest.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerLowest.java
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerNormal.java b/EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerNormal.java
similarity index 100%
rename from EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayerListenerNormal.java
rename to EssentialsChat/src/main/java/com/earth2me/essentials/chat/EssentialsChatPlayerListenerNormal.java
diff --git a/EssentialsChat/src/plugin.yml b/EssentialsChat/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsChat/src/plugin.yml
rename to EssentialsChat/src/main/resources/plugin.yml
diff --git a/EssentialsGeoIP/build.gradle b/EssentialsGeoIP/build.gradle
new file mode 100644
index 000000000..585fe3afa
--- /dev/null
+++ b/EssentialsGeoIP/build.gradle
@@ -0,0 +1,14 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+ implementation 'com.maxmind.geoip2:geoip2:2.12.0'
+ implementation 'javatar:javatar:2.5'
+}
+
+shadowJar {
+ dependencies {
+ include (dependency('com.maxmind.geoip2:geoip2'))
+ include (dependency('com.maxmind.db:maxmind-db'))
+ include (dependency('javatar:javatar'))
+ include (dependency('com.fasterxml.jackson.core:'))
+ }
+}
diff --git a/EssentialsGeoIP/pom.xml b/EssentialsGeoIP/pom.xml
deleted file mode 100644
index 0d4d2b077..000000000
--- a/EssentialsGeoIP/pom.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXGeoIP
-
-
- EssentialsXGeoIP-${full.version}
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 3.2.1
-
-
- package
-
- shade
-
-
-
-
- false
- true
-
-
- javatar:javatar
- com.maxmind.geoip2:geoip2
- com.maxmind.db:maxmind-db
- com.fasterxml.jackson.core:*
-
-
-
-
-
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
-
-
- com.maxmind.geoip2
- geoip2
- 2.12.0
-
-
- javatar
- javatar
- 2.5
-
-
-
\ No newline at end of file
diff --git a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java b/EssentialsGeoIP/src/main/java/com/earth2me/essentials/geoip/EssentialsGeoIP.java
similarity index 100%
rename from EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIP.java
rename to EssentialsGeoIP/src/main/java/com/earth2me/essentials/geoip/EssentialsGeoIP.java
diff --git a/EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java b/EssentialsGeoIP/src/main/java/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
similarity index 100%
rename from EssentialsGeoIP/src/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
rename to EssentialsGeoIP/src/main/java/com/earth2me/essentials/geoip/EssentialsGeoIPPlayerListener.java
diff --git a/EssentialsGeoIP/src/config.yml b/EssentialsGeoIP/src/main/resources/config.yml
similarity index 100%
rename from EssentialsGeoIP/src/config.yml
rename to EssentialsGeoIP/src/main/resources/config.yml
diff --git a/EssentialsGeoIP/src/plugin.yml b/EssentialsGeoIP/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsGeoIP/src/plugin.yml
rename to EssentialsGeoIP/src/main/resources/plugin.yml
diff --git a/EssentialsProtect/build.gradle b/EssentialsProtect/build.gradle
new file mode 100644
index 000000000..9bfe75531
--- /dev/null
+++ b/EssentialsProtect/build.gradle
@@ -0,0 +1,3 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+}
diff --git a/EssentialsProtect/pom.xml b/EssentialsProtect/pom.xml
deleted file mode 100644
index 966929824..000000000
--- a/EssentialsProtect/pom.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXProtect
-
-
- EssentialsXProtect-${full.version}
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
-
-
-
\ No newline at end of file
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EmergencyListener.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EmergencyListener.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EmergencyListener.java
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsConnect.java
similarity index 97%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsConnect.java
index 41a97a9df..42bb5a0b4 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsConnect.java
+++ b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsConnect.java
@@ -1,46 +1,46 @@
-package com.earth2me.essentials.protect;
-
-import com.earth2me.essentials.IConf;
-import net.ess3.api.IEssentials;
-import org.bukkit.plugin.Plugin;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import static com.earth2me.essentials.I18n.tl;
-
-class EssentialsConnect {
- private static final Logger logger = Logger.getLogger("EssentialsProtect");
- private final IEssentials ess;
- private final IProtect protect;
-
- EssentialsConnect(final Plugin essPlugin, final Plugin essProtect) {
- if (!essProtect.getDescription().getVersion().equals(essPlugin.getDescription().getVersion())) {
- logger.log(Level.WARNING, tl("versionMismatchAll"));
- }
- ess = (IEssentials) essPlugin;
- protect = (IProtect) essProtect;
- final ProtectReloader pr = new ProtectReloader();
- pr.reloadConfig();
- ess.addReloadListener(pr);
- }
-
- IEssentials getEssentials() {
- return ess;
- }
-
- private class ProtectReloader implements IConf {
- @Override
- public void reloadConfig() {
- for (final ProtectConfig protectConfig : ProtectConfig.values()) {
- if (protectConfig.isList()) {
- protect.getSettingsList().put(protectConfig, ess.getSettings().getProtectList(protectConfig.getConfigName()));
- } else if (protectConfig.isString()) {
- protect.getSettingsString().put(protectConfig, ess.getSettings().getProtectString(protectConfig.getConfigName()));
- } else {
- protect.getSettingsBoolean().put(protectConfig, ess.getSettings().getProtectBoolean(protectConfig.getConfigName(), protectConfig.getDefaultValueBoolean()));
- }
- }
- }
- }
-}
+package com.earth2me.essentials.protect;
+
+import com.earth2me.essentials.IConf;
+import net.ess3.api.IEssentials;
+import org.bukkit.plugin.Plugin;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import static com.earth2me.essentials.I18n.tl;
+
+class EssentialsConnect {
+ private static final Logger logger = Logger.getLogger("EssentialsProtect");
+ private final IEssentials ess;
+ private final IProtect protect;
+
+ EssentialsConnect(final Plugin essPlugin, final Plugin essProtect) {
+ if (!essProtect.getDescription().getVersion().equals(essPlugin.getDescription().getVersion())) {
+ logger.log(Level.WARNING, tl("versionMismatchAll"));
+ }
+ ess = (IEssentials) essPlugin;
+ protect = (IProtect) essProtect;
+ final ProtectReloader pr = new ProtectReloader();
+ pr.reloadConfig();
+ ess.addReloadListener(pr);
+ }
+
+ IEssentials getEssentials() {
+ return ess;
+ }
+
+ private class ProtectReloader implements IConf {
+ @Override
+ public void reloadConfig() {
+ for (final ProtectConfig protectConfig : ProtectConfig.values()) {
+ if (protectConfig.isList()) {
+ protect.getSettingsList().put(protectConfig, ess.getSettings().getProtectList(protectConfig.getConfigName()));
+ } else if (protectConfig.isString()) {
+ protect.getSettingsString().put(protectConfig, ess.getSettings().getProtectString(protectConfig.getConfigName()));
+ } else {
+ protect.getSettingsBoolean().put(protectConfig, ess.getSettings().getProtectBoolean(protectConfig.getConfigName(), protectConfig.getDefaultValueBoolean()));
+ }
+ }
+ }
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtect.java
similarity index 97%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtect.java
index a57ba56e6..ff673dde2 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtect.java
+++ b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtect.java
@@ -1,127 +1,127 @@
-package com.earth2me.essentials.protect;
-
-import com.earth2me.essentials.metrics.MetricsWrapper;
-import com.earth2me.essentials.utils.VersionUtil;
-import org.bukkit.Material;
-import org.bukkit.entity.Player;
-import org.bukkit.event.HandlerList;
-import org.bukkit.plugin.Plugin;
-import org.bukkit.plugin.PluginManager;
-import org.bukkit.plugin.java.JavaPlugin;
-
-import java.util.EnumMap;
-import java.util.List;
-import java.util.Map;
-import java.util.logging.Level;
-
-public class EssentialsProtect extends JavaPlugin implements IProtect {
- private final Map settingsBoolean = new EnumMap<>(ProtectConfig.class);
- private final Map settingsString = new EnumMap<>(ProtectConfig.class);
- private final Map> settingsList = new EnumMap<>(ProtectConfig.class);
- private final EmergencyListener emListener = new EmergencyListener(this);
- private EssentialsConnect ess = null;
- private transient MetricsWrapper metrics = null;
-
- @Override
- public void onEnable() {
- final PluginManager pm = this.getServer().getPluginManager();
- final Plugin essPlugin = pm.getPlugin("Essentials");
- if (essPlugin == null || !essPlugin.isEnabled()) {
- enableEmergencyMode(pm);
- return;
- }
-
- initialize(pm, essPlugin);
-
- if (metrics == null) {
- metrics = new MetricsWrapper(this, 3816, false);
- }
- }
-
- private void initialize(final PluginManager pm, final Plugin essPlugin) {
- getLogger().log(Level.INFO, "Continuing to enable Protect.");
- ess = new EssentialsConnect(essPlugin, this);
-
- final EssentialsProtectBlockListener blockListener = new EssentialsProtectBlockListener(this);
- pm.registerEvents(blockListener, this);
-
- final EssentialsProtectEntityListener entityListener = new EssentialsProtectEntityListener(this);
- pm.registerEvents(entityListener, this);
-
- if (VersionUtil.getServerBukkitVersion().isHigherThan(VersionUtil.v1_13_2_R01)) {
- final EssentialsProtectEntityListener_1_13_2_R1 entityListener_1_13_2_r1 = new EssentialsProtectEntityListener_1_13_2_R1(this);
- pm.registerEvents(entityListener_1_13_2_r1, this);
- }
- if (VersionUtil.getServerBukkitVersion().isHigherThan(VersionUtil.v1_14_R01)) {
- final EssentialsProtectEntityListener_1_14_R1 entityListener_1_14_r1 = new EssentialsProtectEntityListener_1_14_R1(this);
- pm.registerEvents(entityListener_1_14_r1, this);
- }
-
- if (VersionUtil.getServerBukkitVersion().isHigherThanOrEqualTo(VersionUtil.v1_16_1_R01)) {
- final EssentialsProtectBlockListener_1_16_R1 blockListener_1_16_r1 = new EssentialsProtectBlockListener_1_16_R1(this);
- pm.registerEvents(blockListener_1_16_r1, this);
- }
-
- final EssentialsProtectWeatherListener weatherListener = new EssentialsProtectWeatherListener(this);
- pm.registerEvents(weatherListener, this);
- }
-
- private void enableEmergencyMode(final PluginManager pm) {
- pm.registerEvents(emListener, this);
-
- for (final Player player : getServer().getOnlinePlayers()) {
- player.sendMessage("Essentials Protect is in emergency mode. Check your log for errors.");
- }
- getLogger().log(Level.SEVERE, "Essentials not installed or failed to load. Essentials Protect is in emergency mode now.");
- }
-
- void disableEmergencyMode() {
- final PluginManager pm = this.getServer().getPluginManager();
- final Plugin essPlugin = pm.getPlugin("Essentials");
- if (essPlugin == null || !essPlugin.isEnabled()) {
- getLogger().log(Level.SEVERE, "Tried to disable emergency mode, but Essentials still isn't enabled!");
- return;
- }
-
- HandlerList.unregisterAll(emListener);
-
- for (final Player player : getServer().getOnlinePlayers()) {
- player.sendMessage("Essentials Protect is no longer in emergency mode.");
- }
- getLogger().log(Level.SEVERE, "Essentials was loaded late! Essentials Protect is no longer in emergency mode.");
-
- initialize(pm, essPlugin);
- }
-
- @Override
- public EssentialsConnect getEssentialsConnect() {
- return ess;
- }
-
- @Override
- public Map getSettingsBoolean() {
- return settingsBoolean;
- }
-
- @Override
- public Map getSettingsString() {
- return settingsString;
- }
-
- @Override
- public Map> getSettingsList() {
- return settingsList;
- }
-
- @Override
- public boolean getSettingBool(final ProtectConfig protectConfig) {
- final Boolean bool = settingsBoolean.get(protectConfig);
- return bool == null ? protectConfig.getDefaultValueBoolean() : bool;
- }
-
- @Override
- public String getSettingString(final ProtectConfig protectConfig) {
- final String str = settingsString.get(protectConfig);
- return str == null ? protectConfig.getDefaultValueString() : str;
- }
-}
+package com.earth2me.essentials.protect;
+
+import com.earth2me.essentials.metrics.MetricsWrapper;
+import com.earth2me.essentials.utils.VersionUtil;
+import org.bukkit.Material;
+import org.bukkit.entity.Player;
+import org.bukkit.event.HandlerList;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginManager;
+import org.bukkit.plugin.java.JavaPlugin;
+
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Level;
+
+public class EssentialsProtect extends JavaPlugin implements IProtect {
+ private final Map settingsBoolean = new EnumMap<>(ProtectConfig.class);
+ private final Map settingsString = new EnumMap<>(ProtectConfig.class);
+ private final Map> settingsList = new EnumMap<>(ProtectConfig.class);
+ private final EmergencyListener emListener = new EmergencyListener(this);
+ private EssentialsConnect ess = null;
+ private transient MetricsWrapper metrics = null;
+
+ @Override
+ public void onEnable() {
+ final PluginManager pm = this.getServer().getPluginManager();
+ final Plugin essPlugin = pm.getPlugin("Essentials");
+ if (essPlugin == null || !essPlugin.isEnabled()) {
+ enableEmergencyMode(pm);
+ return;
+ }
+
+ initialize(pm, essPlugin);
+
+ if (metrics == null) {
+ metrics = new MetricsWrapper(this, 3816, false);
+ }
+ }
+
+ private void initialize(final PluginManager pm, final Plugin essPlugin) {
+ getLogger().log(Level.INFO, "Continuing to enable Protect.");
+ ess = new EssentialsConnect(essPlugin, this);
+
+ final EssentialsProtectBlockListener blockListener = new EssentialsProtectBlockListener(this);
+ pm.registerEvents(blockListener, this);
+
+ final EssentialsProtectEntityListener entityListener = new EssentialsProtectEntityListener(this);
+ pm.registerEvents(entityListener, this);
+
+ if (VersionUtil.getServerBukkitVersion().isHigherThan(VersionUtil.v1_13_2_R01)) {
+ final EssentialsProtectEntityListener_1_13_2_R1 entityListener_1_13_2_r1 = new EssentialsProtectEntityListener_1_13_2_R1(this);
+ pm.registerEvents(entityListener_1_13_2_r1, this);
+ }
+ if (VersionUtil.getServerBukkitVersion().isHigherThan(VersionUtil.v1_14_R01)) {
+ final EssentialsProtectEntityListener_1_14_R1 entityListener_1_14_r1 = new EssentialsProtectEntityListener_1_14_R1(this);
+ pm.registerEvents(entityListener_1_14_r1, this);
+ }
+
+ if (VersionUtil.getServerBukkitVersion().isHigherThanOrEqualTo(VersionUtil.v1_16_1_R01)) {
+ final EssentialsProtectBlockListener_1_16_R1 blockListener_1_16_r1 = new EssentialsProtectBlockListener_1_16_R1(this);
+ pm.registerEvents(blockListener_1_16_r1, this);
+ }
+
+ final EssentialsProtectWeatherListener weatherListener = new EssentialsProtectWeatherListener(this);
+ pm.registerEvents(weatherListener, this);
+ }
+
+ private void enableEmergencyMode(final PluginManager pm) {
+ pm.registerEvents(emListener, this);
+
+ for (final Player player : getServer().getOnlinePlayers()) {
+ player.sendMessage("Essentials Protect is in emergency mode. Check your log for errors.");
+ }
+ getLogger().log(Level.SEVERE, "Essentials not installed or failed to load. Essentials Protect is in emergency mode now.");
+ }
+
+ void disableEmergencyMode() {
+ final PluginManager pm = this.getServer().getPluginManager();
+ final Plugin essPlugin = pm.getPlugin("Essentials");
+ if (essPlugin == null || !essPlugin.isEnabled()) {
+ getLogger().log(Level.SEVERE, "Tried to disable emergency mode, but Essentials still isn't enabled!");
+ return;
+ }
+
+ HandlerList.unregisterAll(emListener);
+
+ for (final Player player : getServer().getOnlinePlayers()) {
+ player.sendMessage("Essentials Protect is no longer in emergency mode.");
+ }
+ getLogger().log(Level.SEVERE, "Essentials was loaded late! Essentials Protect is no longer in emergency mode.");
+
+ initialize(pm, essPlugin);
+ }
+
+ @Override
+ public EssentialsConnect getEssentialsConnect() {
+ return ess;
+ }
+
+ @Override
+ public Map getSettingsBoolean() {
+ return settingsBoolean;
+ }
+
+ @Override
+ public Map getSettingsString() {
+ return settingsString;
+ }
+
+ @Override
+ public Map> getSettingsList() {
+ return settingsList;
+ }
+
+ @Override
+ public boolean getSettingBool(final ProtectConfig protectConfig) {
+ final Boolean bool = settingsBoolean.get(protectConfig);
+ return bool == null ? protectConfig.getDefaultValueBoolean() : bool;
+ }
+
+ @Override
+ public String getSettingString(final ProtectConfig protectConfig) {
+ final String str = settingsString.get(protectConfig);
+ return str == null ? protectConfig.getDefaultValueString() : str;
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
similarity index 97%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
index 96514f576..24dea6114 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
+++ b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectBlockListener.java
@@ -1,149 +1,149 @@
-package com.earth2me.essentials.protect;
-
-import com.earth2me.essentials.utils.EnumUtil;
-import com.earth2me.essentials.utils.MaterialUtil;
-import org.bukkit.Material;
-import org.bukkit.World;
-import org.bukkit.block.Block;
-import org.bukkit.block.BlockFace;
-import org.bukkit.entity.Creeper;
-import org.bukkit.entity.Fireball;
-import org.bukkit.entity.Item;
-import org.bukkit.entity.TNTPrimed;
-import org.bukkit.entity.WitherSkull;
-import org.bukkit.entity.minecart.ExplosiveMinecart;
-import org.bukkit.event.EventHandler;
-import org.bukkit.event.EventPriority;
-import org.bukkit.event.Listener;
-import org.bukkit.event.block.Action;
-import org.bukkit.event.block.BlockBurnEvent;
-import org.bukkit.event.block.BlockFromToEvent;
-import org.bukkit.event.block.BlockIgniteEvent;
-import org.bukkit.event.entity.EntityDamageByEntityEvent;
-import org.bukkit.event.entity.EntityDamageEvent;
-import org.bukkit.event.player.PlayerInteractEvent;
-import org.bukkit.event.world.PortalCreateEvent;
-
-import java.util.Set;
-
-public class EssentialsProtectBlockListener implements Listener {
-
- private static final Set WATER_TYPES = EnumUtil.getAllMatching(Material.class, "WATER", "STATIONARY_WATER");
- private static final Set LAVA_TYPES = EnumUtil.getAllMatching(Material.class, "LAVA", "STATIONARY_LAVA");
-
- final private IProtect prot;
-
- EssentialsProtectBlockListener(final IProtect parent) {
- this.prot = parent;
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onBlockIgnite(final BlockIgniteEvent event) {
- if (event.getBlock().getType() == Material.OBSIDIAN || event.getBlock().getRelative(BlockFace.DOWN).getType() == Material.OBSIDIAN) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_portal_creation));
- return;
- }
-
- if (event.getCause().equals(BlockIgniteEvent.IgniteCause.SPREAD)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fire_spread));
- return;
- }
-
- if (event.getCause().equals(BlockIgniteEvent.IgniteCause.FLINT_AND_STEEL)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_flint_fire));
- return;
- }
-
- if (event.getCause().equals(BlockIgniteEvent.IgniteCause.LAVA)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lava_fire_spread));
- return;
- }
- if (event.getCause().equals(BlockIgniteEvent.IgniteCause.LIGHTNING)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lightning_fire_spread));
- return;
- }
-
- if (event.getCause().equals(BlockIgniteEvent.IgniteCause.FIREBALL)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fireball_fire));
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onEntityDamageByEntity(final EntityDamageByEntityEvent event) {
- if (event.getEntity() instanceof Item) {
- if (event.getCause() == EntityDamageEvent.DamageCause.FIRE || event.getCause() == EntityDamageEvent.DamageCause.FIRE_TICK || event.getCause() == EntityDamageEvent.DamageCause.LAVA) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.disable_lava_item_dmg));
- }
-
- if (event.getCause() == EntityDamageEvent.DamageCause.ENTITY_EXPLOSION) {
- if (event.getDamager() instanceof TNTPrimed) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_tnt_itemdmg));
- }
-
- if (event.getDamager() instanceof Creeper) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_creeper_itemdmg));
- }
-
- if (event.getDamager() instanceof ExplosiveMinecart) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_tntminecart_itemdmg));
- }
-
- if (event.getDamager() instanceof WitherSkull) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_witherskull_itemdmg));
- }
-
- if (event.getDamager() instanceof Fireball) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fireball_itemdmg));
- }
- }
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onBlockFromTo(final BlockFromToEvent event) {
- final Block block = event.getBlock();
-
- if (WATER_TYPES.contains(block.getType())) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_water_flow));
- return;
- }
-
- if (LAVA_TYPES.contains(block.getType())) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lava_flow));
- return;
- }
-
- if (block.getType() == Material.AIR) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_water_bucket_flow));
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onBlockBurn(final BlockBurnEvent event) {
- if (prot.getSettingBool(ProtectConfig.prevent_fire_spread)) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onPortalLight(final PortalCreateEvent event) {
- if (event.getReason() == PortalCreateEvent.CreateReason.FIRE) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_portal_creation));
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onPlayerInteract(final PlayerInteractEvent event) {
- if (!event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
- return;
- }
- final Block block = event.getClickedBlock();
- if (block == null) {
- return;
- }
- final World.Environment environment = block.getWorld().getEnvironment();
- if (MaterialUtil.isBed(block.getType()) && !environment.equals(World.Environment.NORMAL)) {
- event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_bed_explosion));
- }
- }
-}
+package com.earth2me.essentials.protect;
+
+import com.earth2me.essentials.utils.EnumUtil;
+import com.earth2me.essentials.utils.MaterialUtil;
+import org.bukkit.Material;
+import org.bukkit.World;
+import org.bukkit.block.Block;
+import org.bukkit.block.BlockFace;
+import org.bukkit.entity.Creeper;
+import org.bukkit.entity.Fireball;
+import org.bukkit.entity.Item;
+import org.bukkit.entity.TNTPrimed;
+import org.bukkit.entity.WitherSkull;
+import org.bukkit.entity.minecart.ExplosiveMinecart;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.bukkit.event.block.Action;
+import org.bukkit.event.block.BlockBurnEvent;
+import org.bukkit.event.block.BlockFromToEvent;
+import org.bukkit.event.block.BlockIgniteEvent;
+import org.bukkit.event.entity.EntityDamageByEntityEvent;
+import org.bukkit.event.entity.EntityDamageEvent;
+import org.bukkit.event.player.PlayerInteractEvent;
+import org.bukkit.event.world.PortalCreateEvent;
+
+import java.util.Set;
+
+public class EssentialsProtectBlockListener implements Listener {
+
+ private static final Set WATER_TYPES = EnumUtil.getAllMatching(Material.class, "WATER", "STATIONARY_WATER");
+ private static final Set LAVA_TYPES = EnumUtil.getAllMatching(Material.class, "LAVA", "STATIONARY_LAVA");
+
+ final private IProtect prot;
+
+ EssentialsProtectBlockListener(final IProtect parent) {
+ this.prot = parent;
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onBlockIgnite(final BlockIgniteEvent event) {
+ if (event.getBlock().getType() == Material.OBSIDIAN || event.getBlock().getRelative(BlockFace.DOWN).getType() == Material.OBSIDIAN) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_portal_creation));
+ return;
+ }
+
+ if (event.getCause().equals(BlockIgniteEvent.IgniteCause.SPREAD)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fire_spread));
+ return;
+ }
+
+ if (event.getCause().equals(BlockIgniteEvent.IgniteCause.FLINT_AND_STEEL)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_flint_fire));
+ return;
+ }
+
+ if (event.getCause().equals(BlockIgniteEvent.IgniteCause.LAVA)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lava_fire_spread));
+ return;
+ }
+ if (event.getCause().equals(BlockIgniteEvent.IgniteCause.LIGHTNING)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lightning_fire_spread));
+ return;
+ }
+
+ if (event.getCause().equals(BlockIgniteEvent.IgniteCause.FIREBALL)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fireball_fire));
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onEntityDamageByEntity(final EntityDamageByEntityEvent event) {
+ if (event.getEntity() instanceof Item) {
+ if (event.getCause() == EntityDamageEvent.DamageCause.FIRE || event.getCause() == EntityDamageEvent.DamageCause.FIRE_TICK || event.getCause() == EntityDamageEvent.DamageCause.LAVA) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.disable_lava_item_dmg));
+ }
+
+ if (event.getCause() == EntityDamageEvent.DamageCause.ENTITY_EXPLOSION) {
+ if (event.getDamager() instanceof TNTPrimed) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_tnt_itemdmg));
+ }
+
+ if (event.getDamager() instanceof Creeper) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_creeper_itemdmg));
+ }
+
+ if (event.getDamager() instanceof ExplosiveMinecart) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_tntminecart_itemdmg));
+ }
+
+ if (event.getDamager() instanceof WitherSkull) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_witherskull_itemdmg));
+ }
+
+ if (event.getDamager() instanceof Fireball) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_fireball_itemdmg));
+ }
+ }
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onBlockFromTo(final BlockFromToEvent event) {
+ final Block block = event.getBlock();
+
+ if (WATER_TYPES.contains(block.getType())) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_water_flow));
+ return;
+ }
+
+ if (LAVA_TYPES.contains(block.getType())) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_lava_flow));
+ return;
+ }
+
+ if (block.getType() == Material.AIR) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_water_bucket_flow));
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onBlockBurn(final BlockBurnEvent event) {
+ if (prot.getSettingBool(ProtectConfig.prevent_fire_spread)) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onPortalLight(final PortalCreateEvent event) {
+ if (event.getReason() == PortalCreateEvent.CreateReason.FIRE) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_portal_creation));
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onPlayerInteract(final PlayerInteractEvent event) {
+ if (!event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
+ return;
+ }
+ final Block block = event.getClickedBlock();
+ if (block == null) {
+ return;
+ }
+ final World.Environment environment = block.getWorld().getEnvironment();
+ if (MaterialUtil.isBed(block.getType()) && !environment.equals(World.Environment.NORMAL)) {
+ event.setCancelled(prot.getSettingBool(ProtectConfig.prevent_bed_explosion));
+ }
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener_1_16_R1.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectBlockListener_1_16_R1.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectBlockListener_1_16_R1.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectBlockListener_1_16_R1.java
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
similarity index 98%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
index f0dd06091..97635755d 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
+++ b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
@@ -1,258 +1,258 @@
-package com.earth2me.essentials.protect;
-
-import com.earth2me.essentials.User;
-import net.ess3.api.IEssentials;
-import org.bukkit.entity.Creeper;
-import org.bukkit.entity.EnderCrystal;
-import org.bukkit.entity.EnderDragon;
-import org.bukkit.entity.Entity;
-import org.bukkit.entity.EntityType;
-import org.bukkit.entity.Fireball;
-import org.bukkit.entity.Player;
-import org.bukkit.entity.Projectile;
-import org.bukkit.entity.SmallFireball;
-import org.bukkit.entity.TNTPrimed;
-import org.bukkit.entity.Villager;
-import org.bukkit.entity.Wither;
-import org.bukkit.entity.WitherSkull;
-import org.bukkit.entity.minecart.ExplosiveMinecart;
-import org.bukkit.event.EventHandler;
-import org.bukkit.event.EventPriority;
-import org.bukkit.event.Listener;
-import org.bukkit.event.entity.CreatureSpawnEvent;
-import org.bukkit.event.entity.EntityBreakDoorEvent;
-import org.bukkit.event.entity.EntityChangeBlockEvent;
-import org.bukkit.event.entity.EntityDamageByBlockEvent;
-import org.bukkit.event.entity.EntityDamageByEntityEvent;
-import org.bukkit.event.entity.EntityDamageEvent;
-import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
-import org.bukkit.event.entity.EntityExplodeEvent;
-import org.bukkit.event.entity.EntityTargetEvent;
-import org.bukkit.event.entity.EntityTargetEvent.TargetReason;
-import org.bukkit.event.entity.ExplosionPrimeEvent;
-import org.bukkit.event.hanging.HangingBreakByEntityEvent;
-import org.bukkit.event.hanging.HangingBreakEvent;
-
-import java.util.Locale;
-
-public class EssentialsProtectEntityListener implements Listener {
- private final IProtect prot;
- private final IEssentials ess;
-
- EssentialsProtectEntityListener(final IProtect prot) {
- this.prot = prot;
- this.ess = prot.getEssentialsConnect().getEssentials();
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onEntityDamage(final EntityDamageEvent event) {
- final Entity target = event.getEntity();
-
- if (target instanceof Villager && prot.getSettingBool(ProtectConfig.prevent_villager_death)) {
- event.setCancelled(true);
- return;
- }
-
- User user = null;
- if (target instanceof Player) {
- user = ess.getUser((Player) target);
- }
-
- final DamageCause cause = event.getCause();
-
- if (event instanceof EntityDamageByBlockEvent) {
- if (prot.getSettingBool(ProtectConfig.disable_contactdmg) && cause == DamageCause.CONTACT && !(target instanceof Player && shouldBeDamaged(user, "contact"))) {
- event.setCancelled(true);
- return;
- }
- if (prot.getSettingBool(ProtectConfig.disable_lavadmg) && cause == DamageCause.LAVA && !(target instanceof Player && shouldBeDamaged(user, "lava"))) {
- event.setCancelled(true);
- return;
- }
- if (prot.getSettingBool(ProtectConfig.prevent_tnt_explosion) && cause == DamageCause.BLOCK_EXPLOSION && !(target instanceof Player && shouldBeDamaged(user, "tnt"))) {
- event.setCancelled(true);
- return;
- }
- }
-
- if (event instanceof EntityDamageByEntityEvent) {
- final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent) event;
- final Entity eAttack = edEvent.getDamager();
-
- User attacker = null;
- if (eAttack instanceof Player) {
- attacker = ess.getUser((Player) eAttack);
- }
-
- //Creeper explode prevention
- if (eAttack instanceof Creeper && prot.getSettingBool(ProtectConfig.prevent_creeper_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "creeper"))) {
- event.setCancelled(true);
- return;
- }
-
- if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "fireball"))) {
- event.setCancelled(true);
- return;
- }
-
- if (event.getEntity() instanceof WitherSkull && prot.getSettingBool(ProtectConfig.prevent_witherskull_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "witherskull"))) {
- event.setCancelled(true);
- return;
- }
-
- if (eAttack instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "tnt"))) {
- event.setCancelled(true);
- return;
- }
-
- if (eAttack instanceof ExplosiveMinecart && prot.getSettingBool(ProtectConfig.prevent_tntminecart_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "tnt-minecart"))) {
- event.setCancelled(true);
- return;
- }
-
- // PVP Settings
- if (target instanceof Player && eAttack instanceof Player && prot.getSettingBool(ProtectConfig.disable_pvp) && !user.getName().equalsIgnoreCase(attacker.getName()) && (!user.isAuthorized("essentials.protect.pvp") || !attacker.isAuthorized("essentials.protect.pvp"))) {
- event.setCancelled(true);
- return;
- }
-
- if (edEvent.getDamager() instanceof Projectile && target instanceof Player && ((prot.getSettingBool(ProtectConfig.disable_projectiles) && !shouldBeDamaged(user, "projectiles")) || (((Projectile) edEvent.getDamager()).getShooter() instanceof Player && prot.getSettingBool(ProtectConfig.disable_pvp) && (!user.isAuthorized("essentials.protect.pvp") || !ess.getUser((Player) ((Projectile) edEvent.getDamager()).getShooter()).isAuthorized("essentials.protect.pvp"))))) {
- event.setCancelled(true);
- return;
- }
- }
-
- if (target instanceof Player) {
- if (cause == DamageCause.FALL && prot.getSettingBool(ProtectConfig.disable_fall) && !shouldBeDamaged(user, "fall")) {
- event.setCancelled(true);
- return;
- }
-
- if (cause == DamageCause.SUFFOCATION && prot.getSettingBool(ProtectConfig.disable_suffocate) && !shouldBeDamaged(user, "suffocation")) {
- event.setCancelled(true);
- return;
- }
- if ((cause == DamageCause.FIRE || cause == DamageCause.FIRE_TICK) && prot.getSettingBool(ProtectConfig.disable_firedmg) && !shouldBeDamaged(user, "fire")) {
- event.setCancelled(true);
- return;
- }
- if (cause == DamageCause.DROWNING && prot.getSettingBool(ProtectConfig.disable_drown) && !shouldBeDamaged(user, "drowning")) {
- event.setCancelled(true);
- return;
- }
- if (cause == DamageCause.LIGHTNING && prot.getSettingBool(ProtectConfig.disable_lightning) && !shouldBeDamaged(user, "lightning")) {
- event.setCancelled(true);
- return;
- }
- if (cause == DamageCause.WITHER && prot.getSettingBool(ProtectConfig.disable_wither) && !shouldBeDamaged(user, "wither")) {
- event.setCancelled(true);
- }
- }
- }
-
- private boolean shouldBeDamaged(final User user, final String type) {
- return user.isAuthorized("essentials.protect.damage.".concat(type)) && !user.isAuthorized("essentials.protect.damage.disable");
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onEntityExplode(final EntityExplodeEvent event) {
- if (event.getEntity() == null) {
- return;
- }
- final Entity entity = event.getEntity();
- final int maxHeight = ess.getSettings().getProtectCreeperMaxHeight();
-
- if (entity instanceof EnderDragon && prot.getSettingBool(ProtectConfig.prevent_enderdragon_blockdmg)) {
- event.setCancelled(true);
- if (prot.getSettingBool(ProtectConfig.enderdragon_fakeexplosions)) {
- event.getLocation().getWorld().createExplosion(event.getLocation(), 0F);
- }
- return;
- }
- if (entity instanceof Wither && prot.getSettingBool(ProtectConfig.prevent_wither_spawnexplosion)) {
- event.setCancelled(true);
- } else if (entity instanceof Creeper && (prot.getSettingBool(ProtectConfig.prevent_creeper_explosion) || prot.getSettingBool(ProtectConfig.prevent_creeper_blockdmg) || (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight))) {
- //Nicccccccccce plaaacccccccccce..
- event.setCancelled(true);
- event.getLocation().getWorld().createExplosion(event.getLocation(), 0F);
- } else if (entity instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_explosion)) {
- event.setCancelled(true);
-
- } else if (entity instanceof Fireball && prot.getSettingBool(ProtectConfig.prevent_fireball_explosion)) {
- event.setCancelled(true);
-
- } else if ((entity instanceof WitherSkull) && prot.getSettingBool(ProtectConfig.prevent_witherskull_explosion)) {
- event.setCancelled(true);
- } else if ((entity instanceof ExplosiveMinecart) && prot.getSettingBool(ProtectConfig.prevent_tntminecart_explosion)) {
- event.setCancelled(true);
- } else if (entity instanceof EnderCrystal && prot.getSettingBool(ProtectConfig.prevent_ender_crystal_explosion)) {
- event.setCancelled(true);
- }
-
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onCreatureSpawn(final CreatureSpawnEvent event) {
- if (event.getEntity() instanceof Player) {
- return;
- }
- final EntityType creature = event.getEntityType();
- if (creature == null) {
- return;
- }
- final String creatureName = creature.toString().toLowerCase(Locale.ENGLISH);
- if (creatureName.isEmpty()) {
- return;
- }
- if (ess.getSettings().getProtectPreventSpawn(creatureName)) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onEntityTarget(final EntityTargetEvent event) {
- if (!(event.getTarget() instanceof Player)) {
- return;
- }
- final User user = ess.getUser((Player) event.getTarget());
- if ((event.getReason() == TargetReason.CLOSEST_PLAYER || event.getReason() == TargetReason.TARGET_ATTACKED_ENTITY || event.getReason() == TargetReason.TARGET_ATTACKED_NEARBY_ENTITY || event.getReason() == TargetReason.RANDOM_TARGET || event.getReason() == TargetReason.DEFEND_VILLAGE || event.getReason() == TargetReason.TARGET_ATTACKED_OWNER || event.getReason() == TargetReason.OWNER_ATTACKED_TARGET) && prot.getSettingBool(ProtectConfig.prevent_entitytarget) && !user.isAuthorized("essentials.protect.entitytarget.bypass")) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onExplosionPrime(final ExplosionPrimeEvent event) {
- if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_fire)) {
- event.setFire(false);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onEntityChangeBlock(final EntityChangeBlockEvent event) {
- if (event.getEntityType() == EntityType.ENDERMAN && prot.getSettingBool(ProtectConfig.prevent_enderman_pickup)) {
- event.setCancelled(true);
- return;
- }
- if (event.getEntityType() == EntityType.WITHER && prot.getSettingBool(ProtectConfig.prevent_wither_blockreplace)) {
- event.setCancelled(true);
- }
-
- if (event.getEntityType() == EntityType.SHEEP && prot.getSettingBool(ProtectConfig.prevent_sheep_eat_grass)) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onDoorBreak(final EntityBreakDoorEvent event) {
- if (event.getEntityType() == EntityType.ZOMBIE && prot.getSettingBool(ProtectConfig.prevent_zombie_door_break)) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onPaintingBreak(final HangingBreakByEntityEvent event) {
- if ((event.getCause() == HangingBreakEvent.RemoveCause.ENTITY) && ((event.getRemover() instanceof Creeper) && prot.getSettingBool(ProtectConfig.prevent_creeper_explosion) || (((event.getRemover() instanceof Fireball) || (event.getRemover() instanceof SmallFireball)) && prot.getSettingBool(ProtectConfig.prevent_fireball_explosion)) || ((event.getRemover() instanceof TNTPrimed) && prot.getSettingBool(ProtectConfig.prevent_tnt_explosion)) || ((event.getRemover() instanceof WitherSkull) && prot.getSettingBool(ProtectConfig.prevent_witherskull_explosion)))) {
- event.setCancelled(true);
- }
- }
-}
+package com.earth2me.essentials.protect;
+
+import com.earth2me.essentials.User;
+import net.ess3.api.IEssentials;
+import org.bukkit.entity.Creeper;
+import org.bukkit.entity.EnderCrystal;
+import org.bukkit.entity.EnderDragon;
+import org.bukkit.entity.Entity;
+import org.bukkit.entity.EntityType;
+import org.bukkit.entity.Fireball;
+import org.bukkit.entity.Player;
+import org.bukkit.entity.Projectile;
+import org.bukkit.entity.SmallFireball;
+import org.bukkit.entity.TNTPrimed;
+import org.bukkit.entity.Villager;
+import org.bukkit.entity.Wither;
+import org.bukkit.entity.WitherSkull;
+import org.bukkit.entity.minecart.ExplosiveMinecart;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.bukkit.event.entity.CreatureSpawnEvent;
+import org.bukkit.event.entity.EntityBreakDoorEvent;
+import org.bukkit.event.entity.EntityChangeBlockEvent;
+import org.bukkit.event.entity.EntityDamageByBlockEvent;
+import org.bukkit.event.entity.EntityDamageByEntityEvent;
+import org.bukkit.event.entity.EntityDamageEvent;
+import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
+import org.bukkit.event.entity.EntityExplodeEvent;
+import org.bukkit.event.entity.EntityTargetEvent;
+import org.bukkit.event.entity.EntityTargetEvent.TargetReason;
+import org.bukkit.event.entity.ExplosionPrimeEvent;
+import org.bukkit.event.hanging.HangingBreakByEntityEvent;
+import org.bukkit.event.hanging.HangingBreakEvent;
+
+import java.util.Locale;
+
+public class EssentialsProtectEntityListener implements Listener {
+ private final IProtect prot;
+ private final IEssentials ess;
+
+ EssentialsProtectEntityListener(final IProtect prot) {
+ this.prot = prot;
+ this.ess = prot.getEssentialsConnect().getEssentials();
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onEntityDamage(final EntityDamageEvent event) {
+ final Entity target = event.getEntity();
+
+ if (target instanceof Villager && prot.getSettingBool(ProtectConfig.prevent_villager_death)) {
+ event.setCancelled(true);
+ return;
+ }
+
+ User user = null;
+ if (target instanceof Player) {
+ user = ess.getUser((Player) target);
+ }
+
+ final DamageCause cause = event.getCause();
+
+ if (event instanceof EntityDamageByBlockEvent) {
+ if (prot.getSettingBool(ProtectConfig.disable_contactdmg) && cause == DamageCause.CONTACT && !(target instanceof Player && shouldBeDamaged(user, "contact"))) {
+ event.setCancelled(true);
+ return;
+ }
+ if (prot.getSettingBool(ProtectConfig.disable_lavadmg) && cause == DamageCause.LAVA && !(target instanceof Player && shouldBeDamaged(user, "lava"))) {
+ event.setCancelled(true);
+ return;
+ }
+ if (prot.getSettingBool(ProtectConfig.prevent_tnt_explosion) && cause == DamageCause.BLOCK_EXPLOSION && !(target instanceof Player && shouldBeDamaged(user, "tnt"))) {
+ event.setCancelled(true);
+ return;
+ }
+ }
+
+ if (event instanceof EntityDamageByEntityEvent) {
+ final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent) event;
+ final Entity eAttack = edEvent.getDamager();
+
+ User attacker = null;
+ if (eAttack instanceof Player) {
+ attacker = ess.getUser((Player) eAttack);
+ }
+
+ //Creeper explode prevention
+ if (eAttack instanceof Creeper && prot.getSettingBool(ProtectConfig.prevent_creeper_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "creeper"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "fireball"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if (event.getEntity() instanceof WitherSkull && prot.getSettingBool(ProtectConfig.prevent_witherskull_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "witherskull"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if (eAttack instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "tnt"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if (eAttack instanceof ExplosiveMinecart && prot.getSettingBool(ProtectConfig.prevent_tntminecart_playerdmg) && !(target instanceof Player && shouldBeDamaged(user, "tnt-minecart"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ // PVP Settings
+ if (target instanceof Player && eAttack instanceof Player && prot.getSettingBool(ProtectConfig.disable_pvp) && !user.getName().equalsIgnoreCase(attacker.getName()) && (!user.isAuthorized("essentials.protect.pvp") || !attacker.isAuthorized("essentials.protect.pvp"))) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if (edEvent.getDamager() instanceof Projectile && target instanceof Player && ((prot.getSettingBool(ProtectConfig.disable_projectiles) && !shouldBeDamaged(user, "projectiles")) || (((Projectile) edEvent.getDamager()).getShooter() instanceof Player && prot.getSettingBool(ProtectConfig.disable_pvp) && (!user.isAuthorized("essentials.protect.pvp") || !ess.getUser((Player) ((Projectile) edEvent.getDamager()).getShooter()).isAuthorized("essentials.protect.pvp"))))) {
+ event.setCancelled(true);
+ return;
+ }
+ }
+
+ if (target instanceof Player) {
+ if (cause == DamageCause.FALL && prot.getSettingBool(ProtectConfig.disable_fall) && !shouldBeDamaged(user, "fall")) {
+ event.setCancelled(true);
+ return;
+ }
+
+ if (cause == DamageCause.SUFFOCATION && prot.getSettingBool(ProtectConfig.disable_suffocate) && !shouldBeDamaged(user, "suffocation")) {
+ event.setCancelled(true);
+ return;
+ }
+ if ((cause == DamageCause.FIRE || cause == DamageCause.FIRE_TICK) && prot.getSettingBool(ProtectConfig.disable_firedmg) && !shouldBeDamaged(user, "fire")) {
+ event.setCancelled(true);
+ return;
+ }
+ if (cause == DamageCause.DROWNING && prot.getSettingBool(ProtectConfig.disable_drown) && !shouldBeDamaged(user, "drowning")) {
+ event.setCancelled(true);
+ return;
+ }
+ if (cause == DamageCause.LIGHTNING && prot.getSettingBool(ProtectConfig.disable_lightning) && !shouldBeDamaged(user, "lightning")) {
+ event.setCancelled(true);
+ return;
+ }
+ if (cause == DamageCause.WITHER && prot.getSettingBool(ProtectConfig.disable_wither) && !shouldBeDamaged(user, "wither")) {
+ event.setCancelled(true);
+ }
+ }
+ }
+
+ private boolean shouldBeDamaged(final User user, final String type) {
+ return user.isAuthorized("essentials.protect.damage.".concat(type)) && !user.isAuthorized("essentials.protect.damage.disable");
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onEntityExplode(final EntityExplodeEvent event) {
+ if (event.getEntity() == null) {
+ return;
+ }
+ final Entity entity = event.getEntity();
+ final int maxHeight = ess.getSettings().getProtectCreeperMaxHeight();
+
+ if (entity instanceof EnderDragon && prot.getSettingBool(ProtectConfig.prevent_enderdragon_blockdmg)) {
+ event.setCancelled(true);
+ if (prot.getSettingBool(ProtectConfig.enderdragon_fakeexplosions)) {
+ event.getLocation().getWorld().createExplosion(event.getLocation(), 0F);
+ }
+ return;
+ }
+ if (entity instanceof Wither && prot.getSettingBool(ProtectConfig.prevent_wither_spawnexplosion)) {
+ event.setCancelled(true);
+ } else if (entity instanceof Creeper && (prot.getSettingBool(ProtectConfig.prevent_creeper_explosion) || prot.getSettingBool(ProtectConfig.prevent_creeper_blockdmg) || (maxHeight >= 0 && event.getLocation().getBlockY() > maxHeight))) {
+ //Nicccccccccce plaaacccccccccce..
+ event.setCancelled(true);
+ event.getLocation().getWorld().createExplosion(event.getLocation(), 0F);
+ } else if (entity instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_explosion)) {
+ event.setCancelled(true);
+
+ } else if (entity instanceof Fireball && prot.getSettingBool(ProtectConfig.prevent_fireball_explosion)) {
+ event.setCancelled(true);
+
+ } else if ((entity instanceof WitherSkull) && prot.getSettingBool(ProtectConfig.prevent_witherskull_explosion)) {
+ event.setCancelled(true);
+ } else if ((entity instanceof ExplosiveMinecart) && prot.getSettingBool(ProtectConfig.prevent_tntminecart_explosion)) {
+ event.setCancelled(true);
+ } else if (entity instanceof EnderCrystal && prot.getSettingBool(ProtectConfig.prevent_ender_crystal_explosion)) {
+ event.setCancelled(true);
+ }
+
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onCreatureSpawn(final CreatureSpawnEvent event) {
+ if (event.getEntity() instanceof Player) {
+ return;
+ }
+ final EntityType creature = event.getEntityType();
+ if (creature == null) {
+ return;
+ }
+ final String creatureName = creature.toString().toLowerCase(Locale.ENGLISH);
+ if (creatureName.isEmpty()) {
+ return;
+ }
+ if (ess.getSettings().getProtectPreventSpawn(creatureName)) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onEntityTarget(final EntityTargetEvent event) {
+ if (!(event.getTarget() instanceof Player)) {
+ return;
+ }
+ final User user = ess.getUser((Player) event.getTarget());
+ if ((event.getReason() == TargetReason.CLOSEST_PLAYER || event.getReason() == TargetReason.TARGET_ATTACKED_ENTITY || event.getReason() == TargetReason.TARGET_ATTACKED_NEARBY_ENTITY || event.getReason() == TargetReason.RANDOM_TARGET || event.getReason() == TargetReason.DEFEND_VILLAGE || event.getReason() == TargetReason.TARGET_ATTACKED_OWNER || event.getReason() == TargetReason.OWNER_ATTACKED_TARGET) && prot.getSettingBool(ProtectConfig.prevent_entitytarget) && !user.isAuthorized("essentials.protect.entitytarget.bypass")) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onExplosionPrime(final ExplosionPrimeEvent event) {
+ if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_fire)) {
+ event.setFire(false);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onEntityChangeBlock(final EntityChangeBlockEvent event) {
+ if (event.getEntityType() == EntityType.ENDERMAN && prot.getSettingBool(ProtectConfig.prevent_enderman_pickup)) {
+ event.setCancelled(true);
+ return;
+ }
+ if (event.getEntityType() == EntityType.WITHER && prot.getSettingBool(ProtectConfig.prevent_wither_blockreplace)) {
+ event.setCancelled(true);
+ }
+
+ if (event.getEntityType() == EntityType.SHEEP && prot.getSettingBool(ProtectConfig.prevent_sheep_eat_grass)) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onDoorBreak(final EntityBreakDoorEvent event) {
+ if (event.getEntityType() == EntityType.ZOMBIE && prot.getSettingBool(ProtectConfig.prevent_zombie_door_break)) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onPaintingBreak(final HangingBreakByEntityEvent event) {
+ if ((event.getCause() == HangingBreakEvent.RemoveCause.ENTITY) && ((event.getRemover() instanceof Creeper) && prot.getSettingBool(ProtectConfig.prevent_creeper_explosion) || (((event.getRemover() instanceof Fireball) || (event.getRemover() instanceof SmallFireball)) && prot.getSettingBool(ProtectConfig.prevent_fireball_explosion)) || ((event.getRemover() instanceof TNTPrimed) && prot.getSettingBool(ProtectConfig.prevent_tnt_explosion)) || ((event.getRemover() instanceof WitherSkull) && prot.getSettingBool(ProtectConfig.prevent_witherskull_explosion)))) {
+ event.setCancelled(true);
+ }
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_13_2_R1.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_13_2_R1.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_13_2_R1.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_13_2_R1.java
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_14_R1.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_14_R1.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_14_R1.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectEntityListener_1_14_R1.java
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
similarity index 97%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
index fbb1aaa6a..f61e34d37 100644
--- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
+++ b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/EssentialsProtectWeatherListener.java
@@ -1,37 +1,37 @@
-package com.earth2me.essentials.protect;
-
-import org.bukkit.event.EventHandler;
-import org.bukkit.event.EventPriority;
-import org.bukkit.event.Listener;
-import org.bukkit.event.weather.LightningStrikeEvent;
-import org.bukkit.event.weather.ThunderChangeEvent;
-import org.bukkit.event.weather.WeatherChangeEvent;
-
-public class EssentialsProtectWeatherListener implements Listener {
- private final IProtect prot;
-
- EssentialsProtectWeatherListener(final IProtect prot) {
- this.prot = prot;
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onWeatherChange(final WeatherChangeEvent event) {
- if (prot.getSettingBool(ProtectConfig.disable_weather_storm) && event.toWeatherState()) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onLightningStrike(final LightningStrikeEvent event) {
- if (prot.getSettingBool(ProtectConfig.disable_weather_lightning)) {
- event.setCancelled(true);
- }
- }
-
- @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
- public void onThunderChange(final ThunderChangeEvent event) {
- if (prot.getSettingBool(ProtectConfig.disable_weather_thunder) && event.toThunderState()) {
- event.setCancelled(true);
- }
- }
-}
+package com.earth2me.essentials.protect;
+
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.bukkit.event.weather.LightningStrikeEvent;
+import org.bukkit.event.weather.ThunderChangeEvent;
+import org.bukkit.event.weather.WeatherChangeEvent;
+
+public class EssentialsProtectWeatherListener implements Listener {
+ private final IProtect prot;
+
+ EssentialsProtectWeatherListener(final IProtect prot) {
+ this.prot = prot;
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onWeatherChange(final WeatherChangeEvent event) {
+ if (prot.getSettingBool(ProtectConfig.disable_weather_storm) && event.toWeatherState()) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onLightningStrike(final LightningStrikeEvent event) {
+ if (prot.getSettingBool(ProtectConfig.disable_weather_lightning)) {
+ event.setCancelled(true);
+ }
+ }
+
+ @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+ public void onThunderChange(final ThunderChangeEvent event) {
+ if (prot.getSettingBool(ProtectConfig.disable_weather_thunder) && event.toThunderState()) {
+ event.setCancelled(true);
+ }
+ }
+}
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/IProtect.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/IProtect.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/IProtect.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/IProtect.java
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/ProtectConfig.java b/EssentialsProtect/src/main/java/com/earth2me/essentials/protect/ProtectConfig.java
similarity index 100%
rename from EssentialsProtect/src/com/earth2me/essentials/protect/ProtectConfig.java
rename to EssentialsProtect/src/main/java/com/earth2me/essentials/protect/ProtectConfig.java
diff --git a/EssentialsProtect/src/plugin.yml b/EssentialsProtect/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsProtect/src/plugin.yml
rename to EssentialsProtect/src/main/resources/plugin.yml
diff --git a/EssentialsSpawn/build.gradle b/EssentialsSpawn/build.gradle
new file mode 100644
index 000000000..223f36637
--- /dev/null
+++ b/EssentialsSpawn/build.gradle
@@ -0,0 +1,3 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+}
\ No newline at end of file
diff --git a/EssentialsSpawn/pom.xml b/EssentialsSpawn/pom.xml
deleted file mode 100644
index de700a583..000000000
--- a/EssentialsSpawn/pom.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXSpawn
-
-
- EssentialsXSpawn-${full.version}
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 3.2.1
-
-
- package
-
- shade
-
-
-
-
-
- net.ess3:EssentialsXSpawn
-
- false
-
-
- io.papermc.lib
- com.earth2me.essentials.paperlib
-
-
-
-
-
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
-
-
-
\ No newline at end of file
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/Commandsetspawn.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/Commandsetspawn.java
similarity index 100%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/Commandsetspawn.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/Commandsetspawn.java
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/Commandspawn.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/Commandspawn.java
similarity index 100%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/Commandspawn.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/Commandspawn.java
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/EssentialsSpawn.java
similarity index 100%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawn.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/EssentialsSpawn.java
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
similarity index 94%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
index 3d289127b..be0619f09 100644
--- a/EssentialsSpawn/src/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
+++ b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/EssentialsSpawnPlayerListener.java
@@ -7,7 +7,6 @@ import com.earth2me.essentials.textreader.IText;
import com.earth2me.essentials.textreader.KeywordReplacer;
import com.earth2me.essentials.textreader.SimpleTextPager;
import com.earth2me.essentials.utils.VersionUtil;
-import io.papermc.lib.PaperLib;
import net.ess3.api.IEssentials;
import org.bukkit.Location;
import org.bukkit.entity.Player;
@@ -79,11 +78,12 @@ class EssentialsSpawnPlayerListener implements Listener {
if (ess.getSettings().isUserInSpawnOnJoinGroup(user) && !user.isAuthorized("essentials.spawn-on-join.exempt")) {
ess.scheduleSyncDelayedTask(() -> {
final Location spawn = spawns.getSpawn(user.getGroup());
- try {
- PaperLib.teleportAsync(user.getBase(), spawn, TeleportCause.PLUGIN);
- } catch (final Exception e) {
+ final CompletableFuture future = new CompletableFuture<>();
+ future.exceptionally(e -> {
ess.showError(user.getSource(), e, "spawn-on-join");
- }
+ return false;
+ });
+ user.getAsyncTeleport().nowUnsafe(spawn, TeleportCause.PLUGIN, future);
});
}
}
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/IEssentialsSpawn.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/IEssentialsSpawn.java
similarity index 100%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/IEssentialsSpawn.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/IEssentialsSpawn.java
diff --git a/EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java b/EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/SpawnStorage.java
similarity index 100%
rename from EssentialsSpawn/src/com/earth2me/essentials/spawn/SpawnStorage.java
rename to EssentialsSpawn/src/main/java/com/earth2me/essentials/spawn/SpawnStorage.java
diff --git a/EssentialsSpawn/src/plugin.yml b/EssentialsSpawn/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsSpawn/src/plugin.yml
rename to EssentialsSpawn/src/main/resources/plugin.yml
diff --git a/EssentialsXMPP/build.gradle b/EssentialsXMPP/build.gradle
new file mode 100644
index 000000000..298599b63
--- /dev/null
+++ b/EssentialsXMPP/build.gradle
@@ -0,0 +1,10 @@
+dependencies {
+ compileOnly project(':EssentialsX')
+ implementation 'org.igniterealtime.smack:smack:3.2.1'
+}
+
+shadowJar {
+ dependencies {
+ include (dependency('org.igniterealtime.smack:smack'))
+ }
+}
diff --git a/EssentialsXMPP/pom.xml b/EssentialsXMPP/pom.xml
deleted file mode 100644
index 23d047c5b..000000000
--- a/EssentialsXMPP/pom.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-
- 4.0.0
-
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
-
- EssentialsXXMPP
-
-
- EssentialsXXMPP-${full.version}
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 3.2.1
-
-
- package
-
- shade
-
-
-
-
- false
-
-
-
-
-
-
-
- net.ess3
- EssentialsX
- ${project.version}
- provided
-
-
- org.igniterealtime.smack
- smack
- 3.2.1
- compile
-
-
-
\ No newline at end of file
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandsetxmpp.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandsetxmpp.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandsetxmpp.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandsetxmpp.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandxmpp.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandxmpp.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandxmpp.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandxmpp.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandxmppspy.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandxmppspy.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/Commandxmppspy.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/Commandxmppspy.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/EssentialsXMPP.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPP.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/EssentialsXMPP.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/EssentialsXMPPPlayerListener.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/IEssentialsXMPP.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/IEssentialsXMPP.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/IEssentialsXMPP.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/IEssentialsXMPP.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/UserManager.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/UserManager.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/UserManager.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/UserManager.java
diff --git a/EssentialsXMPP/src/com/earth2me/essentials/xmpp/XMPPManager.java b/EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/XMPPManager.java
similarity index 100%
rename from EssentialsXMPP/src/com/earth2me/essentials/xmpp/XMPPManager.java
rename to EssentialsXMPP/src/main/java/com/earth2me/essentials/xmpp/XMPPManager.java
diff --git a/EssentialsXMPP/src/config.yml b/EssentialsXMPP/src/main/resources/config.yml
similarity index 100%
rename from EssentialsXMPP/src/config.yml
rename to EssentialsXMPP/src/main/resources/config.yml
diff --git a/EssentialsXMPP/src/plugin.yml b/EssentialsXMPP/src/main/resources/plugin.yml
similarity index 100%
rename from EssentialsXMPP/src/plugin.yml
rename to EssentialsXMPP/src/main/resources/plugin.yml
diff --git a/README.md b/README.md
index 75940358e..c24a4614c 100644
--- a/README.md
+++ b/README.md
@@ -40,21 +40,39 @@ If you need to report a bug or want to suggest a new feature, you can [open an i
Building
--------
-To build EssentialsX, you need JDK 8 or higher and Maven installed on your system. Then, run the following command:
+To build EssentialsX, you need JDK 8 or higher installed on your system. Then, run the following command:
```sh
-mvn clean install
+./gradlew build
```
-Each module's jar can be found in `target/` inside each module's directory.
+...or if you're on windows run the following command:
+
+```batch
+gradlew build
+```
+
+Each module's jar can be found in `build/libs/` inside each module's directory or in `jars/`.
Using EssentialsX in your plugin
--------------------------------
-Do you want to integrate with EssentialsX in your plugin? EssentialsX is available on the **ender.zone Maven repository** at https://ci.ender.zone/plugin/repository/everything/.
+Do you want to integrate with EssentialsX in your plugin? You can use the EssentialsX Maven repo to build against EssentialsX's API.
-To depend on EssentialsX 2.18.2, you should use the artifact `net.ess3:EssentialsX:2.18.2`. You can find more information at the [wiki](https://essentialsx.net/wiki/Common-Issues.html#how-do-i-add-essentialsx-as-a-dependency).
+Releases are hosted on the Maven repo at `https://repo.essentialsx.net/releases/`, while snapshots (including dev builds) are hosted at `https://repo.essentialsx.net/snapshots/`.
+To add EssentialsX to your build system, you should use the following artifacts:
+
+| Type | Group ID | Artifact ID | Version |
+| :-------------- | :-------------- | :---------- | :-------------- |
+| Older releases | net.ess3 | EssentialsX | 2.18.2 |
+| Snapshots | net.essentialsx | EssentialsX | 2.19.0-SNAPSHOT |
+| Future releases | net.essentialsx | EssentialsX | 2.19.0 |
+
+Note: up until `2.18.2`, EssentialsX used the `net.ess3` group ID, but starting with `2.19.0` snapshots, the group ID is now `net.essentialsx`.
+When updating your plugin, make sure you use the correct group ID.
+
+You can find more information and examples at the [wiki](https://essentialsx.net/wiki/Common-Issues.html#how-do-i-add-essentialsx-as-a-dependency).
Contributing
------------
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 000000000..840b06f25
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,160 @@
+buildscript {
+ ext {
+ indraVersion = '1.2.1'
+ }
+}
+
+plugins {
+ id 'org.ajoberstar.grgit' version '4.1.0'
+ id 'net.kyori.indra' version "$indraVersion" apply false
+ id 'net.kyori.indra.checkstyle' version "$indraVersion" apply false
+ id 'net.kyori.indra.publishing' version "$indraVersion" apply false
+ id 'com.github.johnrengelman.shadow' version '6.1.0' apply false
+}
+
+import org.apache.tools.ant.filters.ReplaceTokens
+
+allprojects {
+ group = 'net.essentialsx'
+ version = '2.19.0-SNAPSHOT'
+}
+
+def commitsSinceLastTag() {
+ def tags = grgit.tag.list().stream().map({it.commit}).toList()
+ def commit = grgit.head()
+ def depth = 0
+ while (true) {
+ if (tags.contains(commit))
+ return depth
+ depth++
+ commit = grgit.resolve.toCommit(commit.parentIds.get(0))
+ }
+}
+
+ext {
+ GIT_COMMIT = grgit.head().abbreviatedId
+ GIT_DEPTH = commitsSinceLastTag()
+
+ fullVersion = "${version}-${GIT_COMMIT}".replace("-SNAPSHOT", "-dev+${GIT_DEPTH}")
+
+ checkstyleVersion = '8.36.2'
+ spigotVersion = '1.16.4-R0.1-SNAPSHOT'
+ junit5Version = '5.7.0'
+ mockitoVersion = '3.2.0'
+}
+
+subprojects {
+ apply plugin: 'java'
+ apply plugin: 'net.kyori.indra'
+ apply plugin: 'net.kyori.indra.checkstyle'
+ apply plugin: 'net.kyori.indra.publishing'
+ apply plugin: 'com.github.johnrengelman.shadow'
+
+ repositories {
+ mavenLocal()
+ maven { url = 'https://hub.spigotmc.org/nexus/content/groups/public/' }
+ maven { url = 'https://papermc.io/repo/repository/maven-public/' }
+ maven {
+ url = 'https://jitpack.io'
+ content {
+ includeGroup "com.github.milkbowl"
+ }
+ }
+ }
+
+ dependencies {
+ testImplementation "org.junit.jupiter:junit-jupiter:${junit5Version}"
+ testImplementation "org.junit.vintage:junit-vintage-engine:${junit5Version}"
+ testImplementation "org.mockito:mockito-core:${mockitoVersion}"
+
+ if (project.name != "1_8Provider" && project.name != "PaperProvider" && project.name != "NMSReflectionProvider") { // These providers use their own bukkit versions
+ api "org.spigotmc:spigot-api:${spigotVersion}"
+ }
+ }
+
+ // Version Injection
+ processResources {
+ filter(ReplaceTokens, beginToken: '${',
+ endToken: '}', tokens: ["full.version": fullVersion])
+ }
+
+ indra {
+ checkstyle = "$checkstyleVersion"
+
+ github('EssentialsX', 'Essentials')
+ gpl3OnlyLicense()
+
+ publishReleasesTo('essx', 'https://repo.essentialsx.net/releases/')
+ publishSnapshotsTo('essx', 'https://repo.essentialsx.net/snapshots/')
+
+ configurePublications {
+ pom {
+ description = 'The essential plugin suite for Minecraft servers.'
+ url = 'https://essentialsx.net'
+ developers {
+ developer {
+ id = 'mdcfe'
+ name = 'MD'
+ email = 'md@n3fs.co.uk'
+ }
+ developer {
+ id = 'pop4959'
+ }
+ developer {
+ id = 'JRoy'
+ name = 'Josh Roy'
+ }
+ }
+ ciManagement {
+ system = 'Jenkins'
+ url = 'https://ci.ender.zone/job/EssentialsX'
+ }
+ }
+ }
+ }
+
+ javadoc {
+ title = "${project.name} API (v${rootProject.ext.fullVersion})"
+ options.links(
+ 'https://hub.spigotmc.org/javadocs/spigot/'
+ )
+ options.addStringOption('Xdoclint:none', '-quiet')
+ }
+
+ // undo https://github.com/KyoriPowered/indra/blob/master/indra-common/src/main/kotlin/net/kyori/indra/IndraPlugin.kt#L57
+ archivesBaseName = project.name
+
+ tasks.withType(Jar) {
+ archiveVersion.set(fullVersion)
+ }
+}
+
+def outputTasks() {
+ [":EssentialsX:shadowJar", ":EssentialsXAntiBuild:jar", ":EssentialsXChat:jar",
+ ":EssentialsXGeoIP:shadowJar", ":EssentialsXProtect:jar", ":EssentialsXSpawn:jar",
+ ":EssentialsXXMPP:shadowJar"].stream().map({ tasks.findByPath(it) })
+}
+
+task copyToJars(type: Copy) {
+ outputTasks().forEach {
+ from(it)
+ }
+
+ rename '(.*)-all.jar', '$1.jar'
+
+ into file('jars')
+}
+
+task cleanJars() {
+ delete file('jars')
+}
+
+task clean() {
+ dependsOn cleanJars
+}
+
+task build() {
+ dependsOn copyToJars
+}
+
+copyToJars.dependsOn tasks.findByPath(":EssentialsX:processResources")
diff --git a/crowdin.yml b/crowdin.yml
index b971b76fa..b1d0ee35d 100644
--- a/crowdin.yml
+++ b/crowdin.yml
@@ -1,6 +1,6 @@
files:
- - source: /Essentials/src/messages.properties
- translation: /Essentials/src/messages_%locale_with_underscore%.properties
+ - source: /Essentials/src/main/resources/messages.properties
+ translation: /Essentials/src/main/resources/messages_%locale_with_underscore%.properties
languages_mapping:
locale_with_underscore:
bg: bg
diff --git a/gradle.properties b/gradle.properties
new file mode 100644
index 000000000..aa4e563ab
--- /dev/null
+++ b/gradle.properties
@@ -0,0 +1,3 @@
+org.gradle.cache=true
+org.gradle.parallel=true
+org.gradle.jvmargs='-Dfile.encoding=UTF-8'
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 000000000..62d4c0535
Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 000000000..4d9ca1649
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
new file mode 100644
index 000000000..fbd7c5158
--- /dev/null
+++ b/gradlew
@@ -0,0 +1,185 @@
+#!/usr/bin/env sh
+
+#
+# Copyright 2015 the original author or authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn () {
+ echo "$*"
+}
+
+die () {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+ NONSTOP* )
+ nonstop=true
+ ;;
+esac
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin or MSYS, switch paths to Windows format before running java
+if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
+ JAVACMD=`cygpath --unix "$JAVACMD"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=`expr $i + 1`
+ done
+ case $i in
+ 0) set -- ;;
+ 1) set -- "$args0" ;;
+ 2) set -- "$args0" "$args1" ;;
+ 3) set -- "$args0" "$args1" "$args2" ;;
+ 4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Escape application args
+save () {
+ for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+ echo " "
+}
+APP_ARGS=`save "$@"`
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+exec "$JAVACMD" "$@"
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100644
index 000000000..5093609d5
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,104 @@
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index c2347ad5d..000000000
--- a/pom.xml
+++ /dev/null
@@ -1,300 +0,0 @@
-
- 4.0.0
-
- net.ess3
- EssentialsXParent
- 2.18.2
-
- pom
-
-
-
- GPLv3
- http://www.gnu.org/copyleft/gpl.html
-
-
-
-
- scm:git:https://github.com/EssentialsX/Essentials.git
- scm:git:https://github.com/EssentialsX/Essentials.git
- https://github.com/EssentialsX/Essentials
-
-
-
-
- ess-repo
- https://ci.ender.zone/plugin/repository/everything/
-
-
- spigot-repo
- https://hub.spigotmc.org/nexus/content/groups/public/
-
-
- paper-repo
- https://papermc.io/repo/repository/maven-public/
-
-
- jitpack
- https://jitpack.io
-
-
-
-
- Essentials
- EssentialsAntiBuild
- EssentialsChat
- EssentialsGeoIP
- EssentialsProtect
- EssentialsSpawn
- EssentialsXMPP
- providers/BaseProviders
- providers/NMSReflectionProvider
- providers/PaperProvider
- providers/1_8Provider
-
-
-
-
- org.spigotmc
- spigot-api
- 1.16.4-R0.1-SNAPSHOT
- provided
-
-
- junit
- junit
- 4.13.1
- test
-
-
- org.mockito
- mockito-core
- 3.2.0
- test
-
-
-
-
- clean install
- src
- test
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.8.0
-
-
- 1.8
-
-
-
- org.apache.maven.plugins
- maven-dependency-plugin
- 3.1.1
-
- jars
- true
-
-
- ${project.groupId}
- EssentialsX
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXAntiBuild
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXChat
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXGeoIP
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXProtect
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXSpawn
- ${project.version}
-
-
- ${project.groupId}
- EssentialsXXMPP
- ${project.version}
-
-
-
- false
-
-
- maven-resources-plugin
- 3.1.0
-
-
- package
-
- copy-resources
-
-
- ${basedir}/jars
-
-
- Essentials/src
-
- messages*.properties
- config.yml
- items.csv
- items.json
-
-
- plugin.yml
-
- true
-
-
-
-
-
- false
-
-
- com.google.code.maven-replacer-plugin
- replacer
- 1.5.3
-
-
- process-sources
-
- replace
-
-
-
-
- **/src/*
-
-
- TeamCity
- ${full.version}
-
-
-
- $${build.number}
- ${full.version}
-
-
-
- false
-
-
- org.apache.maven.plugins
- maven-clean-plugin
- 3.1.0
-
-
-
- ${basedir}
-
- jars/**
-
-
- build/**
- dist/**
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 3.0.1
-
-
- org.apache.maven.plugins
- maven-deploy-plugin
- 2.8.2
-
- true
-
-
-
- pl.project13.maven
- git-commit-id-plugin
- 2.2.5
-
-
-
- revision
-
-
-
-
-
- false
-
- true
- true
- false
-
-
- true
-
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
- 3.1.1
-
- .checkstyle/checkstyle.xml
- .checkstyle/suppressions.xml
-
-
-
-
- check
-
-
-
-
-
-
-
-
- src
-
- *.properties
- *.yml
- *.csv
- *.txt
- *.json
-
- true
-
-
-
-
-
- UTF-8
-
-
- 2.18.2
-
-
-
- ${git.closest.tag.commit.count}
-
- ${release.version}.${build.version}
-
-
diff --git a/providers/1_8Provider/build.gradle b/providers/1_8Provider/build.gradle
new file mode 100644
index 000000000..c9278d9b1
--- /dev/null
+++ b/providers/1_8Provider/build.gradle
@@ -0,0 +1,3 @@
+dependencies {
+ api project(':providers:NMSReflectionProvider')
+}
diff --git a/providers/1_8Provider/pom.xml b/providers/1_8Provider/pom.xml
deleted file mode 100644
index ebc982ce2..000000000
--- a/providers/1_8Provider/pom.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- EssentialsXParent
- net.ess3
- 2.18.2
- ../../pom.xml
-
- 4.0.0
-
- 1_8Provider
-
-
-
- net.ess3
- NMSReflectionProvider
- 2.18.2
-
-
-
\ No newline at end of file
diff --git a/providers/1_8Provider/src/com/earth2me/essentials/OfflinePlayer.java b/providers/1_8Provider/src/main/java/com/earth2me/essentials/OfflinePlayer.java
similarity index 100%
rename from providers/1_8Provider/src/com/earth2me/essentials/OfflinePlayer.java
rename to providers/1_8Provider/src/main/java/com/earth2me/essentials/OfflinePlayer.java
diff --git a/providers/BaseProviders/build.gradle b/providers/BaseProviders/build.gradle
new file mode 100644
index 000000000..e69de29bb
diff --git a/providers/BaseProviders/pom.xml b/providers/BaseProviders/pom.xml
deleted file mode 100644
index 0c275ef41..000000000
--- a/providers/BaseProviders/pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- EssentialsXParent
- net.ess3
- 2.18.2
- ../../pom.xml
-
- 4.0.0
-
- BaseProviders
-
diff --git a/providers/BaseProviders/src/net/ess3/provider/ContainerProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/ContainerProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/ContainerProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/ContainerProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/KnownCommandsProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/KnownCommandsProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/KnownCommandsProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/KnownCommandsProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/PotionMetaProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/PotionMetaProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/PotionMetaProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/PotionMetaProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/Provider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/Provider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/Provider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/Provider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/ProviderListener.java b/providers/BaseProviders/src/main/java/net/ess3/provider/ProviderListener.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/ProviderListener.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/ProviderListener.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/ServerStateProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/ServerStateProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/ServerStateProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/ServerStateProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/SpawnEggProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/SpawnEggProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/SpawnEggProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/SpawnEggProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/SpawnerBlockProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/SpawnerBlockProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/SpawnerBlockProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/SpawnerBlockProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/SpawnerItemProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/SpawnerItemProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/SpawnerItemProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/SpawnerItemProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/BasePotionDataProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/BasePotionDataProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/BasePotionDataProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/BasePotionDataProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/BlockMetaSpawnerItemProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/BlockMetaSpawnerItemProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/BlockMetaSpawnerItemProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/BlockMetaSpawnerItemProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/BukkitSpawnerBlockProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/BukkitSpawnerBlockProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/BukkitSpawnerBlockProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/BukkitSpawnerBlockProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/FlatSpawnEggProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/FlatSpawnEggProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/FlatSpawnEggProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/FlatSpawnEggProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/LegacyPotionMetaProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/LegacyPotionMetaProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/LegacyPotionMetaProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/LegacyPotionMetaProvider.java
diff --git a/providers/BaseProviders/src/net/ess3/provider/providers/LegacySpawnEggProvider.java b/providers/BaseProviders/src/main/java/net/ess3/provider/providers/LegacySpawnEggProvider.java
similarity index 100%
rename from providers/BaseProviders/src/net/ess3/provider/providers/LegacySpawnEggProvider.java
rename to providers/BaseProviders/src/main/java/net/ess3/provider/providers/LegacySpawnEggProvider.java
diff --git a/providers/NMSReflectionProvider/build.gradle b/providers/NMSReflectionProvider/build.gradle
new file mode 100644
index 000000000..7b67a051b
--- /dev/null
+++ b/providers/NMSReflectionProvider/build.gradle
@@ -0,0 +1,4 @@
+dependencies {
+ implementation project(':providers:BaseProviders')
+ api 'org.bukkit:bukkit:1.12.2-R0.1-SNAPSHOT'
+}
diff --git a/providers/NMSReflectionProvider/pom.xml b/providers/NMSReflectionProvider/pom.xml
deleted file mode 100644
index 061898d3d..000000000
--- a/providers/NMSReflectionProvider/pom.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
- EssentialsXParent
- net.ess3
- 2.18.2
- ../../pom.xml
-
- 4.0.0
-
- NMSReflectionProvider
-
-
-
- net.ess3
- BaseProviders
- 2.18.2
-
-
- org.bukkit
- bukkit
- 1.12.2-R0.1-SNAPSHOT
-
-
-
\ No newline at end of file
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/ReflUtil.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/ReflUtil.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/ReflUtil.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/ReflUtil.java
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/SpawnEggRefl.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/SpawnEggRefl.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/SpawnEggRefl.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/SpawnEggRefl.java
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflKnownCommandsProvider.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflKnownCommandsProvider.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflKnownCommandsProvider.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflKnownCommandsProvider.java
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflServerStateProvider.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflServerStateProvider.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflServerStateProvider.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflServerStateProvider.java
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflSpawnEggProvider.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflSpawnEggProvider.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflSpawnEggProvider.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflSpawnEggProvider.java
diff --git a/providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflSpawnerBlockProvider.java b/providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflSpawnerBlockProvider.java
similarity index 100%
rename from providers/NMSReflectionProvider/src/net/ess3/nms/refl/providers/ReflSpawnerBlockProvider.java
rename to providers/NMSReflectionProvider/src/main/java/net/ess3/nms/refl/providers/ReflSpawnerBlockProvider.java
diff --git a/providers/PaperProvider/build.gradle b/providers/PaperProvider/build.gradle
new file mode 100644
index 000000000..32937ff09
--- /dev/null
+++ b/providers/PaperProvider/build.gradle
@@ -0,0 +1,4 @@
+dependencies {
+ implementation project(':providers:BaseProviders')
+ compileOnly 'com.destroystokyo.paper:paper-api:1.16.3-R0.1-SNAPSHOT'
+}
diff --git a/providers/PaperProvider/pom.xml b/providers/PaperProvider/pom.xml
deleted file mode 100644
index 917c336d4..000000000
--- a/providers/PaperProvider/pom.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
- EssentialsXParent
- net.ess3
- 2.18.2
- ../../pom.xml
-
- 4.0.0
-
- PaperProvider
-
-
-
- paper-repo
- https://papermc.io/repo/repository/maven-public/
-
-
-
-
-
- net.ess3
- BaseProviders
- 2.18.2
-
-
- com.destroystokyo.paper
- paper-api
- 1.16.3-R0.1-SNAPSHOT
-
-
-
diff --git a/providers/PaperProvider/src/net/ess3/provider/providers/PaperContainerProvider.java b/providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperContainerProvider.java
similarity index 100%
rename from providers/PaperProvider/src/net/ess3/provider/providers/PaperContainerProvider.java
rename to providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperContainerProvider.java
diff --git a/providers/PaperProvider/src/net/ess3/provider/providers/PaperKnownCommandsProvider.java b/providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperKnownCommandsProvider.java
similarity index 100%
rename from providers/PaperProvider/src/net/ess3/provider/providers/PaperKnownCommandsProvider.java
rename to providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperKnownCommandsProvider.java
diff --git a/providers/PaperProvider/src/net/ess3/provider/providers/PaperRecipeBookListener.java b/providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperRecipeBookListener.java
similarity index 100%
rename from providers/PaperProvider/src/net/ess3/provider/providers/PaperRecipeBookListener.java
rename to providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperRecipeBookListener.java
diff --git a/providers/PaperProvider/src/net/ess3/provider/providers/PaperServerStateProvider.java b/providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperServerStateProvider.java
similarity index 100%
rename from providers/PaperProvider/src/net/ess3/provider/providers/PaperServerStateProvider.java
rename to providers/PaperProvider/src/main/java/net/ess3/provider/providers/PaperServerStateProvider.java
diff --git a/settings.gradle b/settings.gradle
new file mode 100644
index 000000000..36b6b34ad
--- /dev/null
+++ b/settings.gradle
@@ -0,0 +1,21 @@
+rootProject.name = 'EssentialsXParent'
+
+// Modules
+[
+ "",
+ "AntiBuild",
+ "Chat",
+ "GeoIP",
+ "Protect",
+ "Spawn",
+ "XMPP",
+].each {
+ include(":EssentialsX$it")
+ project(":EssentialsX$it").projectDir = file("Essentials$it")
+}
+
+// Providers
+include(':providers:BaseProviders')
+include(':providers:NMSReflectionProvider')
+include(':providers:PaperProvider')
+include(':providers:1_8Provider')