/** {@inheritDoc} */
  @Override
  public void createWorldWithNotifications(String name, final CommandSender sender) {
    MultiverseWorld mvworld;
    if ((mvworld = this.getCore().getMVWorldManager().getMVWorld(name)) == null) {
      sender.sendMessage("That world doesn't exist...");
      return;
    }

    sender.sendMessage("Converting world '" + name + "' into an AdventureWorld...");

    // first write it to the config, then load

    this.config.set("adventure." + name + ".enabled", true);

    ConfigurationSection node = this.config.getConfigurationSection("adventure." + name);
    MVAdventureWorld mvawi = new MVAdventureWorld(mvworld, plugin, node);
    mvawi.scheduleWriteTemplate(
        new Callable<Void>() {
          public Void call() throws Exception {
            sender.sendMessage("Finished.");
            return null;
          }
        },
        null);
    this.adventureWorlds.put(name, mvawi);
  }
 /** {@inheritDoc} */
 @Override
 public boolean tryEnableWorld(String name, boolean noreset) {
   MultiverseWorld mvworld;
   if (((mvworld = this.getCore().getMVWorldManager().getMVWorld(name)) != null)
       && this.config.contains("adventure." + name)) {
     ConfigurationSection node = this.config.getConfigurationSection("adventure." + name);
     boolean enabled = this.config.getBoolean("adventure." + name + ".enabled", true);
     if (enabled) {
       MVAdventureWorld mvawi = new MVAdventureWorld(mvworld, plugin, node);
       if (!noreset) mvawi.resetNow();
       this.adventureWorlds.put(name, mvawi);
       return true;
     }
   }
   return false;
 }
  /** {@inheritDoc} */
  @Override
  public boolean createWorld(String name) {
    MultiverseWorld mvworld;
    if ((mvworld = this.getCore().getMVWorldManager().getMVWorld(name)) == null) {
      return true;
    }

    // first write it to the config, then load
    this.config.set("adventure." + name + ".enabled", true);

    ConfigurationSection node = this.config.getConfigurationSection("adventure." + name);
    MVAdventureWorld mvawi = new MVAdventureWorld(mvworld, plugin, node);
    mvawi.scheduleWriteTemplate();
    this.adventureWorlds.put(name, mvawi);
    return true;
  }