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 me.firephoenix.ps3minigames.util.GameUtil;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.WorldCreator;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
|
@ -55,7 +57,24 @@ public final class PS3Minigames extends JavaPlugin {
|
||||||
// Load Multiverse-API
|
// Load Multiverse-API
|
||||||
multiverseCore = (MultiverseCore) getServer().getPluginManager().getPlugin("Multiverse-Core");
|
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
|
//Register Commands
|
||||||
getCommand("build").setExecutor(new BuildMode());
|
getCommand("build").setExecutor(new BuildMode());
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue