package me.lethunderhawk.clans; import me.lethunderhawk.clans.claim.ClaimListener; import me.lethunderhawk.clans.claim.ClaimManager; import me.lethunderhawk.clans.command.ClanCommand; import me.lethunderhawk.clans.placeholder.ClanPlaceHolder; import me.lethunderhawk.fluxapi.FluxService; import me.lethunderhawk.fluxapi.util.interfaces.FluxAPIModule; import org.bukkit.plugin.java.JavaPlugin; public class ClanModule extends FluxAPIModule { public ClanModule(JavaPlugin plugin) { super(plugin); } public String getPrefix(){ return "[Clan]"; } public void onEnable(){ ClaimManager claimManager = new ClaimManager(); ClanManager clanManager = new ClanManager(plugin, claimManager); FluxService.register(ClaimManager.class, claimManager); FluxService.register(ClanManager.class, clanManager); ClaimListener claimListener = new ClaimListener(claimManager); FluxService.register(ClaimListener.class, claimListener); registerCommand("clan", new ClanCommand(clanManager)); registerListener(claimListener); if (plugin.getServer().getPluginManager().isPluginEnabled("PlaceholderAPI")) { new ClanPlaceHolder().register(); } } public void onDisable(){ unregisterAllListeners(); FluxService.get(ClanManager.class).saveClans(); } }