package tv.mineinthebox.essentials.managers; import tv.mineinthebox.essentials.xEssentials; import tv.mineinthebox.essentials.events.customevents.CallEssentialsBroadcastEvent; import tv.mineinthebox.essentials.events.customevents.CallRssFeedEvent; import tv.mineinthebox.essentials.events.entity.RealisticGlassEvent; import tv.mineinthebox.essentials.hook.VaultHook; import tv.mineinthebox.simpleserver.SimpleServer; public class Manager { private BackPackManager backpacks; private GateManager gate; private HomeInviteManager homeInvite; private ProtectionManager protectiondb; private RegenManager regen; private TpaManager tpa; private TPSManager tps; private xEssentialsPlayerManager players; private WarpManager warp; private EconomyManager econ; private RealisticGlassEvent glass; private SimpleServer greylist; private VaultHook vault; private CallRssFeedEvent rss; private CallEssentialsBroadcastEvent broadcast; private BridgeManager bridge; private ChairManager chair; private ManCoManager manco; private RealisticWaterManager water; private TeleportManager teleport; private WorldGuardManager worldguard; private CommandManager commandmanager; private MinigameManager minigames; private final xEssentials pl; public Manager(xEssentials pl) { this.pl = pl; } /** * returns the tick count of the server * * @author xize * @return TPSManager */ public TPSManager getTPSManager() { if(!(tps instanceof TPSManager)) { this.tps = new TPSManager(pl); } return tps; } /** * returns the tpa manager * * @author xize * @return TpaManager */ public TpaManager getTpaManager() { if(!(tpa instanceof TpaManager)) { this.tpa = new TpaManager(); } return tpa; } /** * returns the explosion regen manager * * @author xize * @return RegenManager */ public RegenManager getExplosionRegenManager() { if(!(regen instanceof RegenManager)) { this.regen = new RegenManager(pl); } return regen; } /** * returns the protection manager * * @author xize * @return ProtectionDBManager */ public ProtectionManager getProtectionDBManager() { if(!(protectiondb instanceof ProtectionManager)) { this.protectiondb = new ProtectionManager(); } return protectiondb; } /** * returns the home invites manager * * @author xize * @return HomeInviteManager */ public HomeInviteManager getHomeInviteManager() { if(!(homeInvite instanceof HomeInviteManager)) { this.homeInvite = new HomeInviteManager(); } return homeInvite; } /** * returns the Gate manager * * @author xize * @return GateManager */ public GateManager getGateManager() { if(!(gate instanceof GateManager)) { this.gate = new GateManager(pl); } return gate; } /** * returns the backpack manager * * @author xize * @return BackPackManager */ public BackPackManager getBackPackManager() { if(!(backpacks instanceof BackPackManager)) { this.backpacks = new BackPackManager(pl); } return backpacks; } /** * returns the player manager * * @author xize * @return xEssentialsPlayerManager */ public xEssentialsPlayerManager getPlayerManager() { if(!(players instanceof xEssentialsPlayerManager)) { this.players = new xEssentialsPlayerManager(pl); } return players; } /** * returns the warp manager * * @author xize * @return WarpManager */ public WarpManager getWarpManager() { if(!(warp instanceof WarpManager)) { this.warp = new WarpManager(pl); } return warp; } /** * returns the economy manager * * @author xize * @return EconomyManager */ public EconomyManager getEcoManager() { if(!(econ instanceof EconomyManager)) { this.econ = new EconomyManager(pl); } return econ; } /** * returns the glass regen manager * * @author xize * @return RealisticGlassEvent */ public RealisticGlassEvent getRealisticGlassManager() { if(!(glass instanceof RealisticGlassEvent)) { this.glass = new RealisticGlassEvent(pl); } return glass; } /** * returns the greylist server * * @author xize * @return SimpleServer */ public SimpleServer getGreylistManager() { if(!(greylist instanceof SimpleServer)) { this.greylist = new SimpleServer(pl.getConfiguration().getGreyListConfig().getPort(), "greylist"); } return greylist; } /** * returns the vault manager * * @author xize * @return VaultHook */ public VaultHook getVaultManager() { if(!(vault instanceof VaultHook)) { this.vault = new VaultHook(pl); } return vault; } /** * returns the rss manager * * @author xize * @return CallRssFeedEvent */ public CallRssFeedEvent getRssManager() { if(!(rss instanceof CallRssFeedEvent)) { this.rss = new CallRssFeedEvent(pl); } return rss; } /** * returns the broadcast manager * * @author xize * @return CallEssentialsBroadcastEvent */ public CallEssentialsBroadcastEvent getBroadcastManager() { if(!(broadcast instanceof CallEssentialsBroadcastEvent)) { this.broadcast = new CallEssentialsBroadcastEvent(pl); } return broadcast; } /** * returns the bridge manager * * @author xize * @return BridgeManager */ public BridgeManager getBridgeManager() { if(!(bridge instanceof BridgeManager)) { this.bridge = new BridgeManager(pl); } return bridge; } /** * returns the chair manager * * @author xize * @return ChairManager */ public ChairManager getChairManager() { if(!(chair instanceof ChairManager)) { this.chair = new ChairManager(pl); } return chair; } /** * returns ManCo manager * * @author xize * @return ManCoManager */ public ManCoManager getManCoManager() { if(!(manco instanceof ManCoManager)) { this.manco = new ManCoManager(pl); } return manco; } /** * returns the water manager * * @author xize * @return RealisticWaterManager */ public RealisticWaterManager getRealisticWaterManager() { if(!(water instanceof RealisticWaterManager)) { this.water = new RealisticWaterManager(pl); } return water; } /** * returns the teleport manager * * @author xize * @return TeleportManager */ public TeleportManager getTeleportManager() { if(!(teleport instanceof TeleportManager)) { this.teleport = new TeleportManager(); } return teleport; } /** * returns the Worldguard manager * * @author xize * @return WorldGuardManager */ public WorldGuardManager getWorldGuardManager() { if(!(worldguard instanceof WorldGuardManager)) { this.worldguard = new WorldGuardManager(pl); this.worldguard.registerMonsterFlag(); this.worldguard.reloadWG(); } return worldguard; } /** * returns the command manager * * @author xize, zeeveener * @return CommandManager */ public CommandManager getCommandManager() { if(!(commandmanager instanceof CommandManager)) { this.commandmanager = new CommandManager(pl); } return commandmanager; } /** * returns the MinigameManager * * @author xize * @return MinigameManager */ public MinigameManager getMinigamesManager() { if(!(minigames instanceof MinigameManager)) { this.minigames = new MinigameManager(pl); } return minigames; } }