Load lobby world on start when it is not default to prevent errors
This commit is contained in:
parent
e40b53713f
commit
eb0cd9f19f
1 changed files with 20 additions and 1 deletions
|
|
@ -17,11 +17,13 @@ import me.firephoenix.ps3minigames.states.LobbyState;
|
|||
import me.firephoenix.ps3minigames.util.GameUtil;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.WorldCreator;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.UUID;
|
||||
import java.util.logging.Level;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
|
|
@ -55,7 +57,24 @@ public final class PS3Minigames extends JavaPlugin {
|
|||
// Load Multiverse-API
|
||||
multiverseCore = (MultiverseCore) getServer().getPluginManager().getPlugin("Multiverse-Core");
|
||||
|
||||
lobby = Bukkit.getServer().getWorld(getConfig().getString("spawn-lobby.world"));
|
||||
String lobbyWorldName = getConfig().getString("spawn-lobby.world");
|
||||
|
||||
lobby = Bukkit.getServer().getWorld(lobbyWorldName);
|
||||
|
||||
//World doesn't exist but string in config is set, world is probably not loaded.
|
||||
if (lobby == null && getConfig().getString("spawn-lobby.world") != null) {
|
||||
//Try to load the world manually
|
||||
try {
|
||||
new WorldCreator(lobbyWorldName).createWorld();
|
||||
} catch (Exception e) {
|
||||
//World loading didn't work world folder doesn't exist/is corrupt.
|
||||
getLogger().log(Level.SEVERE, "There was an error loading the lobby world! The lobby name could be loaded from config but the world itself could not be found!");
|
||||
}
|
||||
getLogger().log(Level.INFO, "Loaded previously unloaded lobby world!");
|
||||
|
||||
//Now that the world is loaded set global object again
|
||||
lobby = Bukkit.getServer().getWorld(lobbyWorldName);
|
||||
}
|
||||
|
||||
//Register Commands
|
||||
getCommand("build").setExecutor(new BuildMode());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue