ClanModule.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package me.lethunderhawk.clans;
  2. import me.lethunderhawk.clans.claim.ClaimListener;
  3. import me.lethunderhawk.clans.claim.ClaimManager;
  4. import me.lethunderhawk.clans.command.ClanCommand;
  5. import me.lethunderhawk.clans.placeholder.ClanPlaceHolder;
  6. import me.lethunderhawk.fluxapi.FluxService;
  7. import me.lethunderhawk.fluxapi.util.interfaces.FluxAPIModule;
  8. import org.bukkit.plugin.java.JavaPlugin;
  9. public class ClanModule extends FluxAPIModule {
  10. public ClanModule(JavaPlugin plugin) {
  11. super(plugin);
  12. }
  13. public String getPrefix(){
  14. return "[Clan]";
  15. }
  16. public void onEnable(){
  17. ClaimManager claimManager = new ClaimManager();
  18. ClanManager clanManager = new ClanManager(plugin, claimManager);
  19. FluxService.register(ClaimManager.class, claimManager);
  20. FluxService.register(ClanManager.class, clanManager);
  21. ClaimListener claimListener = new ClaimListener(claimManager);
  22. FluxService.register(ClaimListener.class, claimListener);
  23. registerCommand("clan", new ClanCommand(clanManager));
  24. registerListener(claimListener);
  25. if (plugin.getServer().getPluginManager().isPluginEnabled("PlaceholderAPI")) {
  26. new ClanPlaceHolder().register();
  27. }
  28. }
  29. public void onDisable(){
  30. unregisterAllListeners();
  31. FluxService.get(ClanManager.class).saveClans();
  32. }
  33. }