@Override public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { Entity entity = getTeleportedEntity(server, sender, args); EarthCapability earthData = entity.world.getCapability(TerrariumEarth.earthCap, null); if (earthData != null) { String argument = String.join(" ", args).replace(',', ' '); String[] locationInput = argument.split("\\s+"); Thread thread = new Thread(() -> { try { CommandLocation location = this.parseLocation(sender, locationInput); this.teleport(entity, location.getCoordinate(sender, earthData)); } catch (CommandException e) { TextComponentTranslation message = new TextComponentTranslation(e.getMessage(), e.getErrorObjects()); message.getStyle().setColor(TextFormatting.RED); sender.sendMessage(message); } }); thread.setDaemon(true); thread.start(); } else { throw DeferredTranslator.createException(entity, "commands.earth.wrong_world"); } }