diff --git a/WorldSystem/pom.xml b/WorldSystem/pom.xml
index 62b8afb..fcc39dc 100644
--- a/WorldSystem/pom.xml
+++ b/WorldSystem/pom.xml
@@ -3,7 +3,7 @@
4.0.0
de.butzlabben.world
WorldSystem
- 2.4.0.1
+ 2.4.0.3
UTF-8
-
diff --git a/WorldSystem/src/main/java/de/butzlabben/world/command/WSGetCommand.java b/WorldSystem/src/main/java/de/butzlabben/world/command/WSGetCommand.java
index 37f085b..b3df24c 100644
--- a/WorldSystem/src/main/java/de/butzlabben/world/command/WSGetCommand.java
+++ b/WorldSystem/src/main/java/de/butzlabben/world/command/WSGetCommand.java
@@ -25,7 +25,7 @@ public class WSGetCommand implements CommandExecutor {
return true;
}
Bukkit.getScheduler().runTask(WorldSystem.getInstance(), () -> {
- if(SystemWorld.create(p))
+ if (SystemWorld.create(p))
p.sendMessage(MessageConfig.getSettingUpWorld());
});
return true;
diff --git a/WorldSystem/src/main/java/de/butzlabben/world/config/DependenceConfig.java b/WorldSystem/src/main/java/de/butzlabben/world/config/DependenceConfig.java
index 95561ee..c05d0ca 100644
--- a/WorldSystem/src/main/java/de/butzlabben/world/config/DependenceConfig.java
+++ b/WorldSystem/src/main/java/de/butzlabben/world/config/DependenceConfig.java
@@ -26,9 +26,6 @@ public class DependenceConfig {
}
if (op == null) {
op = Bukkit.getOfflinePlayer(s);
- if (op == null)
- return;
-
}
this.op = op;
}
@@ -88,10 +85,10 @@ public class DependenceConfig {
File dconfig = new File("plugins//WorldSystem//dependence.yml");
YamlConfiguration cfg = YamlConfiguration.loadConfiguration(dconfig);
String uuid = op.getUniqueId().toString();
- String entry = cfg.getString("Dependences." + uuid + ".ActualName");
- if (entry != null) {
+
+ //Fix for #40
+ if (cfg.isInt("Dependences." + uuid + ".ID"))
return true;
- }
return false;
}
diff --git a/WorldSystem/src/main/java/de/butzlabben/world/wrapper/SystemWorld.java b/WorldSystem/src/main/java/de/butzlabben/world/wrapper/SystemWorld.java
index 516d745..6b1701f 100644
--- a/WorldSystem/src/main/java/de/butzlabben/world/wrapper/SystemWorld.java
+++ b/WorldSystem/src/main/java/de/butzlabben/world/wrapper/SystemWorld.java
@@ -12,6 +12,8 @@ import org.bukkit.OfflinePlayer;
import org.bukkit.World;
import org.bukkit.WorldCreator;
import org.bukkit.entity.Player;
+import org.bukkit.scheduler.BukkitRunnable;
+
import com.google.common.base.Preconditions;
import de.butzlabben.world.WorldSystem;
@@ -318,16 +320,23 @@ public class SystemWorld {
SystemWorld sw = SystemWorld.getSystemWorld(worldname);
sw.setCreating(true);
- // For #16
- WorldSystem.getInstance().getAdapter().create(event.getWorldCreator(), sw, () -> {
- if (p != null && p.isOnline()) {
- p.sendMessage(MessageConfig.getWorldCreated());
- SettingsConfig.getCommandsonGet().stream()
- .map(s -> s.replace("%player", p.getName()).replace("%world", sw.getName()).replace("%uuid",
- p.getUniqueId().toString()))
- .forEach(s -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), s));
+
+ //Run in scheduler so method returns without delay
+ new BukkitRunnable() {
+ @Override
+ public void run() {
+ // For #16
+ WorldSystem.getInstance().getAdapter().create(event.getWorldCreator(), sw, () -> {
+ if (p != null && p.isOnline()) {
+ p.sendMessage(MessageConfig.getWorldCreated());
+ SettingsConfig.getCommandsonGet().stream()
+ .map(s -> s.replace("%player", p.getName()).replace("%world", sw.getName()).replace("%uuid",
+ p.getUniqueId().toString()))
+ .forEach(s -> Bukkit.dispatchCommand(Bukkit.getConsoleSender(), s));
+ }
+ });
}
- });
+ }.runTaskLater(WorldSystem.getInstance(), 1);
}
return true;
}