mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2026-02-20 10:43:12 +01:00
Merge branch 'master' of github.com:mcMMO-Dev/mcMMO into tridentsxbows
This commit is contained in:
@@ -43,6 +43,7 @@ import com.gmail.nossr50.util.player.PlayerLevelUtils;
|
||||
import com.gmail.nossr50.util.player.UserManager;
|
||||
import com.gmail.nossr50.util.scoreboards.ScoreboardManager;
|
||||
import com.gmail.nossr50.util.skills.RankUtils;
|
||||
import com.gmail.nossr50.util.skills.SkillTools;
|
||||
import com.gmail.nossr50.util.skills.SmeltingTracker;
|
||||
import com.gmail.nossr50.util.upgrade.UpgradeManager;
|
||||
import com.gmail.nossr50.worldguard.WorldGuardManager;
|
||||
@@ -55,8 +56,10 @@ import org.bukkit.Bukkit;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.metadata.FixedMetadataValue;
|
||||
import org.bukkit.plugin.PluginDescriptionFile;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import org.bukkit.plugin.java.JavaPluginLoader;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -87,6 +90,9 @@ public class mcMMO extends JavaPlugin {
|
||||
private static ChatManager chatManager;
|
||||
private static CommandManager commandManager; //ACF
|
||||
private static TransientEntityTracker transientEntityTracker;
|
||||
|
||||
private @NotNull SkillTools skillTools;
|
||||
|
||||
private static boolean serverShutdownExecuted = false;
|
||||
|
||||
/* Adventure */
|
||||
@@ -147,21 +153,46 @@ public class mcMMO extends JavaPlugin {
|
||||
public final static String PROJECTILE_ORIGIN_METAKEY = "mcMMO: Projectile Origin";
|
||||
|
||||
public static FixedMetadataValue metadataValue;
|
||||
private long purgeTime = 2630000000L;
|
||||
|
||||
public static final String ULTRA_PERMISSONS = "UltraPermissons";
|
||||
private GeneralConfig generalConfig;
|
||||
private AdvancedConfig advancedConfig;
|
||||
// private RepairConfig repairConfig;
|
||||
// private SalvageConfig salvageConfig;
|
||||
// private PersistentDataConfig persistentDataConfig;
|
||||
// private ChatConfig chatConfig;
|
||||
// private CoreSkillsConfig coreSkillsConfig;
|
||||
// private RankConfig rankConfig;
|
||||
// private TreasureConfig treasureConfig;
|
||||
// private FishingTreasureConfig fishingTreasureConfig;
|
||||
// private SoundConfig soundConfig;
|
||||
|
||||
public mcMMO() {
|
||||
p = this;
|
||||
}
|
||||
|
||||
|
||||
protected mcMMO(JavaPluginLoader loader, PluginDescriptionFile description, File dataFolder, File file)
|
||||
{
|
||||
super(loader, description, dataFolder, file);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Things to be run when the plugin is enabled.
|
||||
*/
|
||||
@Override
|
||||
public void onEnable() {
|
||||
try {
|
||||
setupFilePaths();
|
||||
generalConfig = new GeneralConfig(getDataFolder()); //Load before skillTools
|
||||
skillTools = new SkillTools(this); //Load after general config
|
||||
|
||||
//Init configs
|
||||
advancedConfig = new AdvancedConfig(getDataFolder());
|
||||
|
||||
//Store this value so other plugins can check it
|
||||
isRetroModeEnabled = Config.getInstance().getIsRetroMode();
|
||||
isRetroModeEnabled = generalConfig.getIsRetroMode();
|
||||
|
||||
//Platform Manager
|
||||
platformManager = new PlatformManager();
|
||||
@@ -177,7 +208,6 @@ public class mcMMO extends JavaPlugin {
|
||||
|
||||
upgradeManager = new UpgradeManager();
|
||||
|
||||
setupFilePaths();
|
||||
|
||||
modManager = new ModManager();
|
||||
|
||||
@@ -203,7 +233,10 @@ public class mcMMO extends JavaPlugin {
|
||||
getLogger().warning("mcMMO will not work properly alongside NoCheatPlus without CompatNoCheatPlus");
|
||||
}
|
||||
|
||||
databaseManager = DatabaseManagerFactory.getDatabaseManager();
|
||||
// One month in milliseconds
|
||||
this.purgeTime = 2630000000L * generalConfig.getOldUsersCutoff();
|
||||
|
||||
databaseManager = DatabaseManagerFactory.getDatabaseManager(mcMMO.getUsersFilePath(), getLogger(), purgeTime, mcMMO.p.getAdvancedConfig().getStartingLevel());
|
||||
|
||||
//Check for the newer API and tell them what to do if its missing
|
||||
checkForOutdatedAPI();
|
||||
@@ -243,7 +276,7 @@ public class mcMMO extends JavaPlugin {
|
||||
|
||||
placeStore = ChunkManagerFactory.getChunkManager(); // Get our ChunkletManager
|
||||
|
||||
if (Config.getInstance().getPTPCommandWorldPermissions()) {
|
||||
if (generalConfig.getPTPCommandWorldPermissions()) {
|
||||
Permissions.generateWorldTeleportPermissions();
|
||||
}
|
||||
|
||||
@@ -254,11 +287,11 @@ public class mcMMO extends JavaPlugin {
|
||||
//If anonymous statistics are enabled then use them
|
||||
Metrics metrics;
|
||||
|
||||
if(Config.getInstance().getIsMetricsEnabled()) {
|
||||
if(generalConfig.getIsMetricsEnabled()) {
|
||||
metrics = new Metrics(this, 3894);
|
||||
metrics.addCustomChart(new SimplePie("version", () -> getDescription().getVersion()));
|
||||
|
||||
if(Config.getInstance().getIsRetroMode())
|
||||
if(generalConfig.getIsRetroMode())
|
||||
metrics.addCustomChart(new SimplePie("leveling_system", () -> "Retro"));
|
||||
else
|
||||
metrics.addCustomChart(new SimplePie("leveling_system", () -> "Standard"));
|
||||
@@ -350,7 +383,7 @@ public class mcMMO extends JavaPlugin {
|
||||
mcMMO.getPartyManager().saveParties(); // Save our parties
|
||||
|
||||
//TODO: Needed?
|
||||
if(Config.getInstance().getScoreboardsEnabled())
|
||||
if(generalConfig.getScoreboardsEnabled())
|
||||
ScoreboardManager.teardownAll();
|
||||
|
||||
formulaManager.saveFormula();
|
||||
@@ -360,7 +393,7 @@ public class mcMMO extends JavaPlugin {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
if (Config.getInstance().getBackupsEnabled()) {
|
||||
if (generalConfig.getBackupsEnabled()) {
|
||||
// Remove other tasks BEFORE starting the Backup, or we just cancel it straight away.
|
||||
try {
|
||||
ZipLibrary.mcMMOBackup();
|
||||
@@ -532,7 +565,7 @@ public class mcMMO extends JavaPlugin {
|
||||
TreasureConfig.getInstance();
|
||||
FishingTreasureConfig.getInstance();
|
||||
HiddenConfig.getInstance();
|
||||
AdvancedConfig.getInstance();
|
||||
mcMMO.p.getAdvancedConfig();
|
||||
PotionConfig.getInstance();
|
||||
CoreSkillsConfig.getInstance();
|
||||
SoundConfig.getInstance();
|
||||
@@ -592,7 +625,7 @@ public class mcMMO extends JavaPlugin {
|
||||
|
||||
private void registerCustomRecipes() {
|
||||
getServer().getScheduler().scheduleSyncDelayedTask(this, () -> {
|
||||
if (Config.getInstance().getChimaeraEnabled()) {
|
||||
if (generalConfig.getChimaeraEnabled()) {
|
||||
getServer().addRecipe(ChimaeraWing.getChimaeraWingRecipe());
|
||||
}
|
||||
}, 40);
|
||||
@@ -603,7 +636,7 @@ public class mcMMO extends JavaPlugin {
|
||||
long second = 20;
|
||||
long minute = second * 60;
|
||||
|
||||
long saveIntervalTicks = Math.max(minute, Config.getInstance().getSaveInterval() * minute);
|
||||
long saveIntervalTicks = Math.max(minute, generalConfig.getSaveInterval() * minute);
|
||||
|
||||
new SaveTimerTask().runTaskTimer(this, saveIntervalTicks, saveIntervalTicks);
|
||||
|
||||
@@ -611,7 +644,7 @@ public class mcMMO extends JavaPlugin {
|
||||
new CleanBackupsTask().runTaskAsynchronously(mcMMO.p);
|
||||
|
||||
// Old & Powerless User remover
|
||||
long purgeIntervalTicks = Config.getInstance().getPurgeInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
long purgeIntervalTicks = generalConfig.getPurgeInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
|
||||
if (purgeIntervalTicks == 0) {
|
||||
new UserPurgeTask().runTaskLaterAsynchronously(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup.
|
||||
@@ -621,7 +654,7 @@ public class mcMMO extends JavaPlugin {
|
||||
}
|
||||
|
||||
// Automatically remove old members from parties
|
||||
long kickIntervalTicks = Config.getInstance().getAutoPartyKickInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
long kickIntervalTicks = generalConfig.getAutoPartyKickInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR;
|
||||
|
||||
if (kickIntervalTicks == 0) {
|
||||
new PartyAutoKickTask().runTaskLater(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup.
|
||||
@@ -638,7 +671,7 @@ public class mcMMO extends JavaPlugin {
|
||||
new ClearRegisteredXPGainTask().runTaskTimer(this, 60, 60);
|
||||
}
|
||||
|
||||
if(AdvancedConfig.getInstance().allowPlayerTips())
|
||||
if(mcMMO.p.getAdvancedConfig().allowPlayerTips())
|
||||
{
|
||||
new NotifySquelchReminderTask().runTaskTimer(this, 60, ((20 * 60) * 60));
|
||||
}
|
||||
@@ -710,4 +743,20 @@ public class mcMMO extends JavaPlugin {
|
||||
private static synchronized void setServerShutdown(boolean bool) {
|
||||
serverShutdownExecuted = bool;
|
||||
}
|
||||
|
||||
public long getPurgeTime() {
|
||||
return purgeTime;
|
||||
}
|
||||
|
||||
public @NotNull SkillTools getSkillTools() {
|
||||
return skillTools;
|
||||
}
|
||||
|
||||
public @NotNull GeneralConfig getGeneralConfig() {
|
||||
return generalConfig;
|
||||
}
|
||||
|
||||
public @NotNull AdvancedConfig getAdvancedConfig() {
|
||||
return advancedConfig;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user