@Override
	public void enable(boolean force)
	{
		// Make sure MobManager is enabled
		if (P.p() == null || !P.p().isEnabled())
		{
			throw new IllegalStateException("MobManager must be enabled to enable Abilities");
		}
		
		// Check if the Spawner is already enabled
		if (this.isEnabled())
		{
			throw new IllegalStateException("MobManager-Abilities was already enabled");
		}
		
		// Check if we should enable this component
		if (!force && !P.p().getConfig().getBoolean("EnableAbilities", false))
		{
			return;
		}
		
		info("Enabling");
		enabled = true;

		// Load the configuration
		config = new AbilityConfig();
		
		// Register Mob event listeners
		Bukkit.getPluginManager().registerEvents(new AbilitiesMobListener(), P.p());
		
		info(String.format("Enabled with %d worlds and %d AbilitySets", config.enabledWorlds.size(), AbilitySet.getNumAbilitySets() - 1));
	}