EconomyModule.java 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package me.lethunderhawk.economy;
  2. import me.lethunderhawk.bazaarflux.service.Services;
  3. import me.lethunderhawk.bazaarflux.util.interfaces.BazaarFluxModule;
  4. import me.lethunderhawk.economy.api.EconomyAPI;
  5. import me.lethunderhawk.economy.api.EconomyPlaceholder;
  6. import me.lethunderhawk.economy.command.EcoCommand;
  7. import me.lethunderhawk.economy.currency.EconomyManager;
  8. import me.lethunderhawk.economy.listener.PlayerJoinListener;
  9. import me.lethunderhawk.economy.scoreboard.ScoreboardManager;
  10. import me.lethunderhawk.tradeplugin.api.TradePlaceholder;
  11. import org.bukkit.plugin.java.JavaPlugin;
  12. public class EconomyModule extends BazaarFluxModule {
  13. private EconomyAPI economyAPI;
  14. private ScoreboardManager scoreboardManager;
  15. public EconomyModule() {
  16. }
  17. @Override
  18. public String getPrefix() {
  19. return "[Economy]";
  20. }
  21. public void onEnable() {
  22. plugin.saveDefaultConfig();
  23. plugin.saveResource("scoreboards/default.yml", false);
  24. EconomyManager economyManager = new EconomyManager();
  25. economyAPI = new EconomyAPI(economyManager);
  26. Services.register(EconomyAPI.class, economyAPI);
  27. scoreboardManager = new ScoreboardManager(this);
  28. plugin.getCommand("eco").setExecutor(new EcoCommand(this));
  29. plugin.getCommand("eco").setTabCompleter(new EcoCommand(this));
  30. if (plugin.getServer().getPluginManager().isPluginEnabled("PlaceholderAPI")) {
  31. new EconomyPlaceholder(economyAPI).register();
  32. new TradePlaceholder().register();
  33. }
  34. plugin.getServer().getPluginManager().registerEvents(new PlayerJoinListener(scoreboardManager), plugin);
  35. }
  36. @Override
  37. public void onDisable() {
  38. }
  39. public void reload(){
  40. scoreboardManager.reload();
  41. }
  42. public EconomyAPI getEconomyAPI() {
  43. return economyAPI;
  44. }
  45. public ScoreboardManager getScoreboardManager() {
  46. return scoreboardManager;
  47. }
  48. public JavaPlugin getPlugin() {
  49. return plugin;
  50. }
  51. }