package eu.univento.teamvento.commands; import eu.univento.core.api.AutoCommand; import eu.univento.core.api.languages.Messages; import eu.univento.core.api.player.CustomPlayer; import eu.univento.core.api.player.Rank; import eu.univento.teamvento.TeamVento; import eu.univento.teamvento.utils.VoidGenerator; import org.bukkit.Bukkit; import org.bukkit.World; import org.bukkit.WorldCreator; import org.bukkit.WorldType; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import java.io.IOException; import java.util.List; /** * @author joethei * @version 0.1 */ public class WorldCreate extends AutoCommand{ public WorldCreate(TeamVento plugin, String command, String description, String... aliases) { super(plugin, command, description, aliases); } @Override public boolean execute(CommandSender sender, String label, String[] args) { if(sender instanceof Player) { CustomPlayer p = CustomPlayer.getPlayer(sender.getName()); if(p.isAllowed(Rank.SrBuilder)) { if(args.length == 2) { if(Bukkit.getWorld(args[0]) == null && (args[1].equalsIgnoreCase("normal") || args[1].equalsIgnoreCase("flat") || args[1].equalsIgnoreCase("void"))) { WorldCreator creator = new WorldCreator(args[0]); if(args[1].equalsIgnoreCase("normal")) { creator.environment(World.Environment.NORMAL); creator.type(WorldType.NORMAL); } if(args[1].equalsIgnoreCase("flat")) { creator.environment(World.Environment.NORMAL); creator.type(WorldType.FLAT); creator.generateStructures(false); } if(args[1].equalsIgnoreCase("void")) { creator.generator(new VoidGenerator()); creator.type(WorldType.CUSTOMIZED); creator.generateStructures(false); } Bukkit.createWorld(creator); TeamVento.getCfg().set(args[0], args[1]); try { TeamVento.getCfg().save(TeamVento.getConfigFile()); } catch (IOException e) { e.printStackTrace(); } p.sendMessage(p.getMessages().PREFIX() + "§aYour world has been created"); }else{ p.sendMessage(p.getMessages().PREFIX() + "§cPlease use /worldcreate "); } }else{ p.sendMessage(p.getMessages().PREFIX() + "§cPlease use /worldcreate "); } }else{ p.sendMessage(p.getMessages().PREFIX() + p.getMessages().NO_PERMS()); } }else{ sender.sendMessage(Messages.Console.NOT_A_PLAYER); } return true; } @Override public List tabComplete(CommandSender sender, String label, String[] args) { return null; } }