Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.cursemc;
- import java.io.File;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import java.util.Random;
- import java.util.logging.Logger;
- import net.cursemc.antigapple.listeners.GappleListeners;
- import net.cursemc.antiinvisibility.AntiInvisibilityMain;
- import net.cursemc.antinether.AntiNetherMain;
- import net.cursemc.armorswitch.ArmorSwitchMain;
- import net.cursemc.autolapis.AutoLapisMain;
- import net.cursemc.banknotes.BankNoteMain;
- import net.cursemc.commands.CoreCmd;
- import net.cursemc.commands.NightVisionCmd;
- import net.cursemc.commands.RandomCustomItemCmd;
- import net.cursemc.commands.RandomEnchantGeneratorCmd;
- import net.cursemc.commands.RandomGeneratorCmd;
- import net.cursemc.cursebooks.CurseBooksMain;
- import net.cursemc.cursebosses.CurseBossesMain;
- import net.cursemc.cursebosses.utils.BossUtils;
- import net.cursemc.cursecombattag.CurseCombatMain;
- import net.cursemc.cursecommandblocker.CurseCommandBlockerMain;
- import net.cursemc.cursedoubleexp.CurseDoubleExpMain;
- import net.cursemc.cursekits.CurseKitsMain;
- import net.cursemc.curselinkitem.LinkItemMain;
- import net.cursemc.cursetrade.TradeMain;
- import net.cursemc.custombalance.CustomBalanceMain;
- import net.cursemc.custombroadcast.CustomBroadcastMain;
- import net.cursemc.dailyrewards.DailyRewardsMain;
- import net.cursemc.dupefixer.DupeFixerMain;
- import net.cursemc.gappletimer.GappleTimer;
- import net.cursemc.giveall.GiveAllMain;
- import net.cursemc.listeners.AntiSwearListener;
- import net.cursemc.mysteryspawners.MysterySpawnersMain;
- import net.cursemc.nodupe.NoDupeMain;
- import net.cursemc.nohopper.NoHopperMain;
- import net.cursemc.pearlfix.PearlFixMain;
- import net.cursemc.simplerestart.SimpleRestartMain;
- import net.cursemc.staffmonitor.StaffMonitorMain;
- import net.cursemc.sunny.SunnyMain;
- import net.cursemc.tpfix.TpFixMain;
- import net.cursemc.wildwarp.WildWarpMain;
- import net.cursemc.withdrawmcmmo.WithdrawMcMMOMain;
- import net.cursemc.wither.WitherMain;
- import net.cursemc.xpbottle.XpBottleMain;
- import net.milkbowl.vault.economy.Economy;
- import org.bukkit.Server;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.PluginCommand;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.entity.Player;
- import org.bukkit.event.Listener;
- import org.bukkit.plugin.PluginDescriptionFile;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.RegisteredServiceProvider;
- import org.bukkit.plugin.ServicesManager;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.kcpdev.framework.AbstractSubPlugin;
- public class Main extends JavaPlugin
- {
- private CurseBossesMain cbMain;
- private CurseBooksMain cbooksMain;
- private CurseCombatMain ccMain;
- private CurseCommandBlockerMain ccbMain;
- private CurseDoubleExpMain cdeMain;
- private CurseKitsMain ckMain;
- private LinkItemMain liMain;
- private TradeMain tMain;
- private CustomBalanceMain cbalMain;
- private CustomBroadcastMain cbcMain;
- private WildWarpMain wwMain;
- private WithdrawMcMMOMain wmcmMain;
- private XpBottleMain xbMain;
- private TpFixMain tfMain;
- private AntiInvisibilityMain aiMain;
- private PearlFixMain pfMain;
- private NoHopperMain nhMain;
- private NoDupeMain ndMain;
- private GiveAllMain gaMain;
- private ArmorSwitchMain asMain;
- private AutoLapisMain alMain;
- private BankNoteMain bnMain;
- private DailyRewardsMain drMain;
- private MysterySpawnersMain msMain;
- private SimpleRestartMain srMain;
- private SunnyMain sMain;
- private StaffMonitorMain smMain;
- private WitherMain wMain;
- private DupeFixerMain dfMain;
- private AntiNetherMain anMain;
- public static Economy econ;
- public static final Logger log = Logger.getLogger("Minecraft");
- private String pluginName;
- public PluginManager pm;
- private static Main instance;
- private BossUtils bu;
- private Map<String, CommandExecutor> commands = new HashMap();
- private List<Listener> listeners = new ArrayList();
- private Map<AbstractSubPlugin, String> mapOfPlugins = new HashMap();
- private int enabled = 0;
- private int disabled = 0;
- public void onEnable() {
- instance = this;
- this.pm = getServer().getPluginManager();
- this.pluginName = getDescription().getName();
- if (!setupEconomy()) {
- log.severe(String.format("[%s] - Disabled due to no Vault dependency found!", new Object[] { this.pluginName }));
- log.severe(String.format("[%s] - This could be because of no permissions plugin or no essentials plugin.", new Object[] { this.pluginName }));
- setEnabled(false);
- return;
- }
- loadPlugins();
- addListener(new AntiSwearListener());
- addListener(new GappleListeners());
- addCommand(new CoreCmd(), "core");
- addCommand(new RandomCustomItemCmd(), "randomcustomitem");
- addCommand(new RandomGeneratorCmd(), "randomgenerator");
- addCommand(new RandomEnchantGeneratorCmd(), "randomenchantgenerator");
- addCommand(new NightVisionCmd(), "nightvision");
- if (!getDataFolder().exists()) getDataFolder().mkdirs();
- Config.loadConfig();
- Messages.setFile(getConfig());
- for (AbstractSubPlugin pl : this.mapOfPlugins.keySet()) {
- String s = (String)this.mapOfPlugins.get(pl);
- if (getConfig().getBoolean("PluginsEnabled." + s)) {
- pl.onEnable();
- this.enabled += 1;
- } else {
- this.disabled += 1;
- }
- }
- loadListeners();
- loadCommands();
- }
- public void onDisable() {
- for (AbstractSubPlugin pl : this.mapOfPlugins.keySet()) {
- String s = (String)this.mapOfPlugins.get(pl);
- if (getConfig().getBoolean("PluginsEnabled." + s))
- pl.onDisable();
- }
- }
- private void loadCommands()
- {
- for (String s : this.commands.keySet()) {
- getCommand(s).setExecutor((CommandExecutor)this.commands.get(s));
- log.info(String.format("[%s] - Initializing command: " + s, new Object[] { this.pluginName }));
- }
- }
- private void loadListeners()
- {
- log.info(String.format("[%s] - Initializing listeners.", new Object[] { this.pluginName }));
- for (Listener l : this.listeners)
- this.pm.registerEvents(l, this);
- }
- public static Main getInstance()
- {
- return instance;
- }
- public void addCommand(CommandExecutor executor, String command) {
- this.commands.put(command, executor);
- }
- public void addListener(Listener listener) {
- this.listeners.add(listener);
- }
- private void loadPlugins() {
- this.cbMain = new CurseBossesMain(this);
- this.cbooksMain = new CurseBooksMain(this);
- this.ccMain = new CurseCombatMain(this);
- this.ccbMain = new CurseCommandBlockerMain(this);
- this.cdeMain = new CurseDoubleExpMain(this);
- this.ckMain = new CurseKitsMain(this);
- this.liMain = new LinkItemMain(this);
- this.tMain = new TradeMain(this);
- this.cbalMain = new CustomBalanceMain(this);
- this.cbcMain = new CustomBroadcastMain(this);
- this.bu = new BossUtils(this, this.cbMain);
- this.wwMain = new WildWarpMain(this);
- this.wmcmMain = new WithdrawMcMMOMain(this);
- this.xbMain = new XpBottleMain(this);
- this.tfMain = new TpFixMain(this);
- this.aiMain = new AntiInvisibilityMain(this);
- this.pfMain = new PearlFixMain(this);
- this.nhMain = new NoHopperMain(this);
- this.ndMain = new NoDupeMain(this);
- this.gaMain = new GiveAllMain(this);
- this.asMain = new ArmorSwitchMain(this);
- this.alMain = new AutoLapisMain(this);
- this.bnMain = new BankNoteMain(this);
- this.drMain = new DailyRewardsMain(this);
- this.msMain = new MysterySpawnersMain(this);
- this.srMain = new SimpleRestartMain(this);
- this.sMain = new SunnyMain(this);
- this.smMain = new StaffMonitorMain(this);
- this.wMain = new WitherMain(this);
- this.dfMain = new DupeFixerMain(this);
- this.anMain = new AntiNetherMain(this);
- this.mapOfPlugins.put(this.cbMain, "CurseBosses");
- this.mapOfPlugins.put(this.cbooksMain, "CurseBooks");
- this.mapOfPlugins.put(this.ccMain, "CurseCombat");
- this.mapOfPlugins.put(this.ccbMain, "CurseCommandBlocker");
- this.mapOfPlugins.put(this.cdeMain, "CurseDoubleExp");
- this.mapOfPlugins.put(this.ckMain, "CurseKits");
- this.mapOfPlugins.put(this.liMain, "LinkItem");
- this.mapOfPlugins.put(this.tMain, "Trade");
- this.mapOfPlugins.put(this.cbalMain, "CustomBalance");
- this.mapOfPlugins.put(this.cbcMain, "CustomBroadcast");
- this.mapOfPlugins.put(this.wwMain, "WildWarp");
- this.mapOfPlugins.put(this.wmcmMain, "WithdrawMcMMO");
- this.mapOfPlugins.put(this.xbMain, "XpBottle");
- this.mapOfPlugins.put(this.tfMain, "TPFix");
- this.mapOfPlugins.put(this.aiMain, "AntiInvisibility");
- this.mapOfPlugins.put(this.pfMain, "PearlFix");
- this.mapOfPlugins.put(this.nhMain, "NoHopper");
- this.mapOfPlugins.put(this.ndMain, "NoDupe");
- this.mapOfPlugins.put(this.gaMain, "GiveAll");
- this.mapOfPlugins.put(this.asMain, "ArmorSwitch");
- this.mapOfPlugins.put(this.alMain, "AutoLapis");
- this.mapOfPlugins.put(this.bnMain, "BankNote");
- this.mapOfPlugins.put(this.drMain, "DailyRewards");
- this.mapOfPlugins.put(this.msMain, "MysterySpawners");
- this.mapOfPlugins.put(this.srMain, "SimpleRestart");
- this.mapOfPlugins.put(this.sMain, "Sunny");
- this.mapOfPlugins.put(this.smMain, "StaffMonitor");
- this.mapOfPlugins.put(this.wMain, "Wither");
- this.mapOfPlugins.put(this.dfMain, "DupeFixer");
- this.mapOfPlugins.put(this.anMain, "AntiNether");
- this.mapOfPlugins.put(new GappleTimer(this), "GappleTimer");
- }
- private boolean setupEconomy() {
- if (getServer().getPluginManager().getPlugin("Vault") == null) {
- return false;
- }
- RegisteredServiceProvider rsp = getServer().getServicesManager().getRegistration(Economy.class);
- if (rsp == null) {
- return false;
- }
- econ = (Economy)rsp.getProvider();
- return econ != null;
- }
- public int getEnabledPlugins() {
- return this.enabled;
- }
- public int getDisabledPlugins() {
- return this.disabled;
- }
- public CurseBossesMain getCurseBossesMain() {
- return this.cbMain;
- }
- public CurseBooksMain getCurseBooksMain() {
- return this.cbooksMain;
- }
- public CurseCombatMain getCurseCombatMain() {
- return this.ccMain;
- }
- public CurseCommandBlockerMain getCurseCombatBlockerMain() {
- return this.ccbMain;
- }
- public CurseDoubleExpMain getCurseDoubleExpMain() {
- return this.cdeMain;
- }
- public CurseKitsMain getCurseKitsMain() {
- return this.ckMain;
- }
- public LinkItemMain getLinkItemMain() {
- return this.liMain;
- }
- public TradeMain getTradeMain() {
- return this.tMain;
- }
- public CustomBalanceMain getCustomBalanceMain() {
- return this.cbalMain;
- }
- public CustomBroadcastMain getCustomBroadcastMain() {
- return this.cbcMain;
- }
- public WildWarpMain getWildWarpMain() {
- return this.wwMain;
- }
- public WithdrawMcMMOMain getWithdrawMcMMOMain() {
- return this.wmcmMain;
- }
- public XpBottleMain getXpBottleMain() {
- return this.xbMain;
- }
- public TpFixMain getTpFixMain() {
- return this.tfMain;
- }
- public AntiInvisibilityMain getAntiInvisibilityMain() {
- return this.aiMain;
- }
- public PearlFixMain getPearlFixMain() {
- return this.pfMain;
- }
- public GiveAllMain getGiveAllMain() {
- return this.gaMain;
- }
- public ArmorSwitchMain getArmorSwitchMain() {
- return this.asMain;
- }
- public AutoLapisMain getAutoLapisMain() {
- return this.alMain;
- }
- public BankNoteMain getBankNoteMain() {
- return this.bnMain;
- }
- public DailyRewardsMain getDailyRewardsMain() {
- return this.drMain;
- }
- public MysterySpawnersMain getMysterySpawnersMain() {
- return this.msMain;
- }
- public SimpleRestartMain getSimpleRestartMain() {
- return this.srMain;
- }
- public SunnyMain getSunnyMain() {
- return this.sMain;
- }
- public StaffMonitorMain getStaffMonitorMain() {
- return this.smMain;
- }
- public WitherMain getWitherMain() {
- return this.wMain;
- }
- public DupeFixerMain getDupeFixerMain() {
- return this.dfMain;
- }
- public AntiNetherMain getAntiNetherMain() {
- return this.anMain;
- }
- public BossUtils getUtils() {
- return this.bu;
- }
- public void reloadFiles() {
- reloadConfig();
- for (AbstractSubPlugin pl : this.mapOfPlugins.keySet()) {
- String s = (String)this.mapOfPlugins.get(pl);
- if (getConfig().getBoolean("PluginsEnabled." + s))
- pl.reloadConfig();
- }
- }
- public String chooseRandomStringFromList(List<String> list, Player target)
- {
- Random rand = new Random();
- int selector = rand.nextInt(list.size());
- String chosenString = ((String)list.get(selector)).replace("%player%", target.getName());
- return chosenString;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement