diff --git a/src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java b/src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java index 15c570b59..a4b1d72d3 100644 --- a/src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java @@ -6,7 +6,6 @@ import com.gmail.nossr50.datatypes.party.PartyFeature; import com.gmail.nossr50.datatypes.party.PartyTeleportRecord; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.google.common.collect.ImmutableList; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; @@ -88,7 +87,7 @@ public class PtpCommand implements TabExecutor { int hurtCooldown = pluginRef.getConfigManager().getConfigParty().getPTP().getPtpRecentlyHurtCooldown(); if (hurtCooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, player); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, hurtCooldown, player); if (timeRemaining > 0) { player.sendMessage(pluginRef.getLocaleManager().getString("Item.Injured.Wait", timeRemaining)); @@ -109,7 +108,7 @@ public class PtpCommand implements TabExecutor { long ptpLastUse = mcMMOPlayer.getPartyTeleportRecord().getLastUse(); if (ptpCooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(ptpLastUse * Misc.TIME_CONVERSION_FACTOR, ptpCooldown, player); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(ptpLastUse * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, ptpCooldown, player); if (timeRemaining > 0) { player.sendMessage(pluginRef.getLocaleManager().getString("Item.Generic.Wait", timeRemaining)); diff --git a/src/main/java/com/gmail/nossr50/commands/player/RankCommand.java b/src/main/java/com/gmail/nossr50/commands/player/RankCommand.java index a527d2351..70d13e945 100644 --- a/src/main/java/com/gmail/nossr50/commands/player/RankCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/player/RankCommand.java @@ -4,6 +4,7 @@ import com.gmail.nossr50.core.MetadataConstants; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.commands.RankCommandAsyncTask; +import com.gmail.nossr50.util.scoreboards.SidebarType; import com.google.common.collect.ImmutableList; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; @@ -116,7 +117,7 @@ public class RankCommand implements TabExecutor { && (pluginRef.getScoreboardSettings().isScoreboardEnabled(SidebarType.RANK_BOARD)); boolean useChat = !useBoard || pluginRef.getScoreboardSettings().isScoreboardPrinting(SidebarType.RANK_BOARD); - new RankCommandAsyncTask(playerName, sender, useBoard, useChat).runTaskAsynchronously(pluginRef); + new RankCommandAsyncTask(pluginRef, playerName, sender, useBoard, useChat).runTaskAsynchronously(pluginRef); } private long getCDSeconds(McMMOPlayer mcMMOPlayer, long cooldownMillis) { diff --git a/src/main/java/com/gmail/nossr50/database/FlatFileDatabaseManager.java b/src/main/java/com/gmail/nossr50/database/FlatFileDatabaseManager.java index 754c88a8d..8621d2f3b 100644 --- a/src/main/java/com/gmail/nossr50/database/FlatFileDatabaseManager.java +++ b/src/main/java/com/gmail/nossr50/database/FlatFileDatabaseManager.java @@ -8,7 +8,6 @@ import com.gmail.nossr50.datatypes.player.UniqueDataType; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import org.bukkit.OfflinePlayer; @@ -175,7 +174,7 @@ public final class FlatFileDatabaseManager implements DatabaseManager { long lastPlayed = 0; boolean rewrite = false; try { - lastPlayed = Long.parseLong(character[37]) * Misc.TIME_CONVERSION_FACTOR; + lastPlayed = Long.parseLong(character[37]) * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR; } catch (NumberFormatException e) { e.printStackTrace(); } @@ -272,7 +271,7 @@ public final class FlatFileDatabaseManager implements DatabaseManager { } } - Misc.profileCleanup(playerName); + pluginRef.getMiscTools().profileCleanup(playerName); return worked; } @@ -382,7 +381,7 @@ public final class FlatFileDatabaseManager implements DatabaseManager { writer.append(profile.getSkillLevel(PrimarySkillType.FISHING)).append(":"); writer.append(profile.getSkillXpLevel(PrimarySkillType.FISHING)).append(":"); writer.append((int) profile.getAbilityDATS(SuperAbilityType.BLAST_MINING)).append(":"); - writer.append(System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR).append(":"); + writer.append(System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR).append(":"); MobHealthbarType mobHealthbarType = profile.getMobHealthbarType(); writer.append(mobHealthbarType == null ? pluginRef.getConfigManager().getConfigMobs().getCombat().getHealthBars().getDisplayBarType().toString() : mobHealthbarType.toString()).append(":"); writer.append(profile.getSkillLevel(PrimarySkillType.ALCHEMY)).append(":"); @@ -462,7 +461,7 @@ public final class FlatFileDatabaseManager implements DatabaseManager { out.append(startingLevel); // Fishing out.append("0:"); // FishingXp out.append("0:"); // Blast Mining - out.append(String.valueOf(System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR)).append(":"); // LastLogin + out.append(String.valueOf(System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR)).append(":"); // LastLogin out.append(pluginRef.getConfigManager().getConfigMobs().getCombat().getHealthBars().getDisplayBarType().toString()).append(":"); // Mob Healthbar HUD out.append(startingLevel); // Alchemy out.append("0:"); // AlchemyXp @@ -1019,7 +1018,7 @@ public final class FlatFileDatabaseManager implements DatabaseManager { if (character[i].isEmpty() && !(i == 2 || i == 3 || i == 23 || i == 33 || i == 41)) { corrupted = true; if (i == 37) { - character[i] = String.valueOf(System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + character[i] = String.valueOf(System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } else if (i == 38) { character[i] = pluginRef.getConfigManager().getConfigMobs().getCombat().getHealthBars().getDisplayBarType().toString(); } else { diff --git a/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java b/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java index 2be9638d8..03cb99eac 100644 --- a/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java +++ b/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java @@ -10,7 +10,6 @@ import com.gmail.nossr50.datatypes.player.UniqueDataType; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.apache.tomcat.jdbc.pool.DataSource; import org.apache.tomcat.jdbc.pool.PoolProperties; @@ -222,7 +221,7 @@ public final class SQLDatabaseManager implements DatabaseManager { if(uuid != null) cleanupUser(uuid); - Misc.profileCleanup(playerName); + pluginRef.getMiscTools().profileCleanup(playerName); } return success; diff --git a/src/main/java/com/gmail/nossr50/datatypes/party/Party.java b/src/main/java/com/gmail/nossr50/datatypes/party/Party.java index 0d1808376..91dc54ec2 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/party/Party.java +++ b/src/main/java/com/gmail/nossr50/datatypes/party/Party.java @@ -3,7 +3,6 @@ package com.gmail.nossr50.datatypes.party; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.party.ShareHandler; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import com.gmail.nossr50.util.sounds.SoundType; import org.bukkit.Bukkit; @@ -513,7 +512,7 @@ public class Party { double range = pluginRef.getConfigManager().getConfigParty().getPartyXP().getPartyExperienceSharing().getPartyShareRange(); for (Player member : party.getOnlineMembers()) { - if (!player.equals(member) && member.isValid() && Misc.isNear(player.getLocation(), member.getLocation(), range)) { + if (!player.equals(member) && member.isValid() && pluginRef.getMiscTools().isNear(player.getLocation(), member.getLocation(), range)) { nearMembers.add(member); } } diff --git a/src/main/java/com/gmail/nossr50/datatypes/party/PartyTeleportRecord.java b/src/main/java/com/gmail/nossr50/datatypes/party/PartyTeleportRecord.java index 8689dbaf4..00cbcf567 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/party/PartyTeleportRecord.java +++ b/src/main/java/com/gmail/nossr50/datatypes/party/PartyTeleportRecord.java @@ -1,7 +1,6 @@ package com.gmail.nossr50.datatypes.party; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.entity.Player; public class PartyTeleportRecord { @@ -54,7 +53,7 @@ public class PartyTeleportRecord { } public void actualizeLastUse() { - lastUse = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + lastUse = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } public int getTimeout() { @@ -62,6 +61,6 @@ public class PartyTeleportRecord { } public void actualizeTimeout() { - timeout = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + timeout = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } } diff --git a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java index d08c85ea3..273a264fb 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java +++ b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java @@ -30,7 +30,6 @@ import com.gmail.nossr50.skills.swords.SwordsManager; import com.gmail.nossr50.skills.taming.TamingManager; import com.gmail.nossr50.skills.unarmed.UnarmedManager; import com.gmail.nossr50.skills.woodcutting.WoodcuttingManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.experience.ExperienceBarManager; import com.gmail.nossr50.util.skills.PerksUtils; import com.gmail.nossr50.util.sounds.SoundType; @@ -421,7 +420,7 @@ public class McMMOPlayer { } public void actualizeRecentlyHurt() { - recentlyHurt = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + recentlyHurt = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } /* @@ -433,7 +432,7 @@ public class McMMOPlayer { } public void actualizeChimeraWingLastUse() { - profile.setChimaeraWingDATS((int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR)); + profile.setChimaeraWingDATS((int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR)); } public Location getTeleportCommenceLocation() { @@ -457,7 +456,7 @@ public class McMMOPlayer { } public void actualizeRespawnATS() { - respawnATS = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + respawnATS = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } public long getTeleportATS() { @@ -946,7 +945,7 @@ public class McMMOPlayer { int abilityLength = pluginRef.getSkillTools().calculateAbilityLengthPerks(this, primarySkillType, superAbility); // Enable the ability - profile.setAbilityDATS(superAbility, System.currentTimeMillis() + (abilityLength * Misc.TIME_CONVERSION_FACTOR)); + profile.setAbilityDATS(superAbility, System.currentTimeMillis() + (abilityLength * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR)); setSuperAbilityMode(superAbility, true); if (superAbility == SuperAbilityType.SUPER_BREAKER || superAbility == SuperAbilityType.GIGA_DRILL_BREAKER) { @@ -954,7 +953,7 @@ public class McMMOPlayer { } setToolPreparationMode(tool, false); - new AbilityDisableTask(pluginRef, this, superAbility).runTaskLater(pluginRef, abilityLength * Misc.TICK_CONVERSION_FACTOR); + new AbilityDisableTask(pluginRef, this, superAbility).runTaskLater(pluginRef, abilityLength * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } public void processAbilityActivation(PrimarySkillType primarySkillType) { @@ -1001,7 +1000,7 @@ public class McMMOPlayer { } setToolPreparationMode(tool, true); - new ToolLowerTask(pluginRef,this, tool).runTaskLater(pluginRef, 4 * Misc.TICK_CONVERSION_FACTOR); + new ToolLowerTask(pluginRef,this, tool).runTaskLater(pluginRef, 4 * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } } @@ -1012,9 +1011,9 @@ public class McMMOPlayer { * @return the number of seconds remaining before the cooldown expires */ public int calculateTimeRemaining(SuperAbilityType superAbilityType) { - long deactivatedTimestamp = profile.getAbilityDATS(superAbilityType) * Misc.TIME_CONVERSION_FACTOR; + long deactivatedTimestamp = profile.getAbilityDATS(superAbilityType) * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR; return (int) (((deactivatedTimestamp + (PerksUtils.handleCooldownPerks(player, - pluginRef.getSkillTools().getSuperAbilityCooldown(superAbilityType)) * Misc.TIME_CONVERSION_FACTOR)) - System.currentTimeMillis()) / Misc.TIME_CONVERSION_FACTOR); + pluginRef.getSkillTools().getSuperAbilityCooldown(superAbilityType)) * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR)) - System.currentTimeMillis()) / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } /* diff --git a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/ArcheryBehaviour.java b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/ArcheryBehaviour.java index 7479ea161..f45cfd3c6 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/ArcheryBehaviour.java +++ b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/ArcheryBehaviour.java @@ -4,7 +4,6 @@ import com.gmail.nossr50.core.MetadataConstants; import com.gmail.nossr50.datatypes.meta.TrackedArrowMeta; import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.Material; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; @@ -33,7 +32,7 @@ public class ArcheryBehaviour { */ public void arrowRetrievalCheck(LivingEntity livingEntity) { if(livingEntity.hasMetadata(MetadataConstants.ARROW_TRACKER_METAKEY)) { - Misc.dropItems(livingEntity.getLocation(), new ItemStack(Material.ARROW), livingEntity.getMetadata(MetadataConstants.ARROW_TRACKER_METAKEY).get(0).asInt()); + pluginRef.getMiscTools().dropItems(livingEntity.getLocation(), new ItemStack(Material.ARROW), livingEntity.getMetadata(MetadataConstants.ARROW_TRACKER_METAKEY).get(0).asInt()); } } diff --git a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/MiningBehaviour.java b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/MiningBehaviour.java index 8aff1d1e2..7d30afc9e 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/MiningBehaviour.java +++ b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/MiningBehaviour.java @@ -4,7 +4,6 @@ import com.gmail.nossr50.core.MetadataConstants; import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.mining.MiningManager; -import com.gmail.nossr50.util.Misc; import org.bukkit.Material; import org.bukkit.block.BlockState; import org.bukkit.entity.Player; @@ -171,7 +170,7 @@ public class MiningBehaviour { case REDSTONE_ORE: case STONE: case PRISMARINE: - Misc.dropItem(Misc.getBlockCenter(blockState), new ItemStack(blockState.getType())); + pluginRef.getMiscTools().dropItem(pluginRef.getMiscTools().getBlockCenter(blockState), new ItemStack(blockState.getType())); return; default: @@ -237,7 +236,7 @@ public class MiningBehaviour { case YELLOW_TERRACOTTA: case STONE: case NETHER_QUARTZ_ORE: - Misc.dropItems(Misc.getBlockCenter(blockState), blockState.getBlock().getDrops()); + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), blockState.getBlock().getDrops()); return; default: diff --git a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/WoodcuttingBehaviour.java b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/WoodcuttingBehaviour.java index 54e823488..b8b2ff73d 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/WoodcuttingBehaviour.java +++ b/src/main/java/com/gmail/nossr50/datatypes/skills/behaviours/WoodcuttingBehaviour.java @@ -1,7 +1,6 @@ package com.gmail.nossr50.datatypes.skills.behaviours; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.block.BlockState; /** @@ -82,7 +81,7 @@ public class WoodcuttingBehaviour { } else {*/ if (pluginRef.getDynamicSettingsManager().getBonusDropManager().isBonusDropWhitelisted(blockState.getType())) { - Misc.dropItems(Misc.getBlockCenter(blockState), blockState.getBlock().getDrops()); + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), blockState.getBlock().getDrops()); } //} } diff --git a/src/main/java/com/gmail/nossr50/listeners/EntityListener.java b/src/main/java/com/gmail/nossr50/listeners/EntityListener.java index 03799ceb6..fc623b506 100644 --- a/src/main/java/com/gmail/nossr50/listeners/EntityListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/EntityListener.java @@ -11,7 +11,6 @@ import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.mining.MiningManager; import com.gmail.nossr50.skills.taming.TamingManager; import com.gmail.nossr50.skills.unarmed.UnarmedManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Material; import org.bukkit.OfflinePlayer; @@ -311,7 +310,7 @@ public class EntityListener implements Listener { } - if (Misc.isNPCEntityExcludingVillagers(defender) || !defender.isValid() || !(defender instanceof LivingEntity)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(defender) || !defender.isValid() || !(defender instanceof LivingEntity)) { return; } @@ -321,7 +320,7 @@ public class EntityListener implements Listener { return; } - if (Misc.isNPCEntityExcludingVillagers(attacker)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(attacker)) { return; } @@ -484,7 +483,7 @@ public class EntityListener implements Listener { } */ - if (Misc.isNPCEntityExcludingVillagers(entity) || !entity.isValid() || !(entity instanceof LivingEntity)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity) || !entity.isValid() || !(entity instanceof LivingEntity)) { return; } @@ -614,7 +613,7 @@ public class EntityListener implements Listener { LivingEntity entity = event.getEntity(); - if (Misc.isNPCEntityExcludingVillagers(entity)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity)) { return; } @@ -646,7 +645,7 @@ public class EntityListener implements Listener { LivingEntity entity = event.getEntity(); - if (Misc.isNPCEntityExcludingVillagers(entity)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity)) { return; } @@ -952,7 +951,7 @@ public class EntityListener implements Listener { LivingEntity entity = event.getEntity(); - if (!pluginRef.getUserManager().hasPlayerDataKey(player) || Misc.isNPCEntityExcludingVillagers(entity) || entity.hasMetadata(MetadataConstants.UNNATURAL_MOB_METAKEY)) { + if (!pluginRef.getUserManager().hasPlayerDataKey(player) || pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity) || entity.hasMetadata(MetadataConstants.UNNATURAL_MOB_METAKEY)) { return; } diff --git a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java index cb303dc6c..6e13c97f1 100644 --- a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java @@ -18,7 +18,6 @@ import com.gmail.nossr50.skills.salvage.SalvageManager; import com.gmail.nossr50.skills.taming.TamingManager; import com.gmail.nossr50.util.ChimaeraWing; import com.gmail.nossr50.util.HardcoreManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.sounds.SoundType; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -834,7 +833,7 @@ public class PlayerListener implements Listener { public void onPlayerChat(AsyncPlayerChatEvent event) { Player player = event.getPlayer(); - if (Misc.isNPCEntityExcludingVillagers(player) || !pluginRef.getUserManager().hasPlayerDataKey(player)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(player) || !pluginRef.getUserManager().hasPlayerDataKey(player)) { return; } diff --git a/src/main/java/com/gmail/nossr50/mcMMO.java b/src/main/java/com/gmail/nossr50/mcMMO.java index 6135f4892..9754c7dfa 100644 --- a/src/main/java/com/gmail/nossr50/mcMMO.java +++ b/src/main/java/com/gmail/nossr50/mcMMO.java @@ -103,6 +103,7 @@ public class mcMMO extends JavaPlugin { private PermissionTools permissionTools; private WorldGuardUtils worldGuardUtils; private MessageOfTheDayUtils messageOfTheDayUtils; + private MiscTools miscTools; private ZipLibrary zipLibrary; /* Never-Ending tasks */ @@ -289,6 +290,9 @@ public class mcMMO extends JavaPlugin { //Init Sound Manager soundManager = new SoundManager(this); + + //Misc Tools Init + miscTools = new MiscTools(this); } @Override @@ -656,13 +660,13 @@ public class mcMMO extends JavaPlugin { // Bleed timer (Runs every 0.5 seconds) bleedTimerTask = new BleedTimerTask(this); - bleedTimerTask.runTaskTimer(this, Misc.TICK_CONVERSION_FACTOR, (Misc.TICK_CONVERSION_FACTOR / 2)); + bleedTimerTask.runTaskTimer(this, miscTools.TICK_CONVERSION_FACTOR, (miscTools.TICK_CONVERSION_FACTOR / 2)); // Old & Powerless User remover - long purgeIntervalTicks = getConfigManager().getConfigDatabase().getConfigSectionCleaning().getPurgeInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR; + long purgeIntervalTicks = getConfigManager().getConfigDatabase().getConfigSectionCleaning().getPurgeInterval() * 60L * 60L * miscTools.TICK_CONVERSION_FACTOR; if (getDatabaseCleaningSettings().isOnlyPurgeAtStartup()) { - new UserPurgeTask(this).runTaskLaterAsynchronously(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup. + new UserPurgeTask(this).runTaskLaterAsynchronously(this, 2 * miscTools.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup. } else if (purgeIntervalTicks > 0) { new UserPurgeTask(this).runTaskTimerAsynchronously(this, purgeIntervalTicks, purgeIntervalTicks); } @@ -670,17 +674,17 @@ public class mcMMO extends JavaPlugin { //Party System Stuff if (configManager.getConfigParty().isPartySystemEnabled()) { // Automatically remove old members from parties - long kickIntervalTicks = getConfigManager().getConfigParty().getPartyCleanup().getPartyAutoKickHoursInterval() * 60L * 60L * Misc.TICK_CONVERSION_FACTOR; + long kickIntervalTicks = getConfigManager().getConfigParty().getPartyCleanup().getPartyAutoKickHoursInterval() * 60L * 60L * miscTools.TICK_CONVERSION_FACTOR; if (kickIntervalTicks == 0) { - new PartyAutoKickTask(this).runTaskLater(this, 2 * Misc.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup. + new PartyAutoKickTask(this).runTaskLater(this, 2 * miscTools.TICK_CONVERSION_FACTOR); // Start 2 seconds after startup. } else if (kickIntervalTicks > 0) { new PartyAutoKickTask(this).runTaskTimer(this, kickIntervalTicks, kickIntervalTicks); } } // Update power level tag scoreboards - new PowerLevelUpdatingTask(this).runTaskTimer(this, 2 * Misc.TICK_CONVERSION_FACTOR, 2 * Misc.TICK_CONVERSION_FACTOR); + new PowerLevelUpdatingTask(this).runTaskTimer(this, 2 * miscTools.TICK_CONVERSION_FACTOR, 2 * miscTools.TICK_CONVERSION_FACTOR); // Clear the registered XP data so players can earn XP again if (getConfigManager().getConfigLeveling().getConfigLevelingDiminishedReturns().isDiminishedReturnsEnabled()) { @@ -833,4 +837,8 @@ public class mcMMO extends JavaPlugin { public ChunkManagerFactory getChunkManagerFactory() { return chunkManagerFactory; } + + public MiscTools getMiscTools() { + return miscTools; + } } diff --git a/src/main/java/com/gmail/nossr50/party/PartyManager.java b/src/main/java/com/gmail/nossr50/party/PartyManager.java index 00f1676e7..680394bea 100644 --- a/src/main/java/com/gmail/nossr50/party/PartyManager.java +++ b/src/main/java/com/gmail/nossr50/party/PartyManager.java @@ -9,7 +9,6 @@ import com.gmail.nossr50.events.party.McMMOPartyChangeEvent; import com.gmail.nossr50.events.party.McMMOPartyChangeEvent.EventReason; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.items.TeleportationWarmup; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.sounds.SoundType; import org.bukkit.OfflinePlayer; import org.bukkit.command.CommandSender; @@ -228,7 +227,7 @@ public final class PartyManager { double range = pluginRef.getPartyXPShareSettings().getPartyShareRange(); for (Player member : party.getOnlineMembers()) { - if (!player.equals(member) && member.isValid() && Misc.isNear(player.getLocation(), member.getLocation(), range)) { + if (!player.equals(member) && member.isValid() && pluginRef.getMiscTools().isNear(player.getLocation(), member.getLocation(), range)) { nearMembers.add(member); } } @@ -248,7 +247,7 @@ public final class PartyManager { for (Player member : party.getVisibleMembers(player)) { if (!player.equals(member) && member.isValid() - && Misc.isNear(player.getLocation(), member.getLocation(), range)) { + && pluginRef.getMiscTools().isNear(player.getLocation(), member.getLocation(), range)) { nearMembers.add(member); } } diff --git a/src/main/java/com/gmail/nossr50/party/ShareHandler.java b/src/main/java/com/gmail/nossr50/party/ShareHandler.java index 00670ae23..fc0bd7621 100644 --- a/src/main/java/com/gmail/nossr50/party/ShareHandler.java +++ b/src/main/java/com/gmail/nossr50/party/ShareHandler.java @@ -8,7 +8,6 @@ import com.gmail.nossr50.datatypes.party.ShareMode; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.Material; import org.bukkit.entity.Item; import org.bukkit.entity.Player; @@ -120,7 +119,7 @@ public final class ShareHandler { } int itemShareModifier = mcMMOMember.getItemShareModifier(); - int diceRoll = Misc.getRandom().nextInt(itemShareModifier); + int diceRoll = pluginRef.getMiscTools().getRandom().nextInt(itemShareModifier); if (diceRoll <= highestRoll) { mcMMOMember.setItemShareModifier(itemShareModifier + itemWeight); @@ -146,7 +145,7 @@ public final class ShareHandler { case RANDOM: for (int i = 0; i < itemStack.getAmount(); i++) { - winningPlayer = nearMembers.get(Misc.getRandom().nextInt(partySize)); + winningPlayer = nearMembers.get(pluginRef.getMiscTools().getRandom().nextInt(partySize)); awardDrop(winningPlayer, newStack); } diff --git a/src/main/java/com/gmail/nossr50/runnables/items/ChimaeraWingWarmup.java b/src/main/java/com/gmail/nossr50/runnables/items/ChimaeraWingWarmup.java index f72eb4e0c..dd47aa77f 100644 --- a/src/main/java/com/gmail/nossr50/runnables/items/ChimaeraWingWarmup.java +++ b/src/main/java/com/gmail/nossr50/runnables/items/ChimaeraWingWarmup.java @@ -3,7 +3,6 @@ package com.gmail.nossr50.runnables.items; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.util.ChimaeraWing; -import com.gmail.nossr50.util.Misc; import org.bukkit.Location; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; @@ -45,7 +44,7 @@ public class ChimaeraWingWarmup extends BukkitRunnable { int hurtCooldown = pluginRef.getConfigManager().getConfigItems().getRecentlyHurtCooldown(); if (hurtCooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, player); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, hurtCooldown, player); if (timeRemaining > 0) { player.sendMessage(pluginRef.getLocaleManager().getString("Item.Injured.Wait", timeRemaining)); diff --git a/src/main/java/com/gmail/nossr50/runnables/items/TeleportationWarmup.java b/src/main/java/com/gmail/nossr50/runnables/items/TeleportationWarmup.java index 1419654ed..6fadc7061 100644 --- a/src/main/java/com/gmail/nossr50/runnables/items/TeleportationWarmup.java +++ b/src/main/java/com/gmail/nossr50/runnables/items/TeleportationWarmup.java @@ -2,7 +2,6 @@ package com.gmail.nossr50.runnables.items; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.Location; import org.bukkit.entity.Player; import org.bukkit.scheduler.BukkitRunnable; @@ -41,7 +40,7 @@ public class TeleportationWarmup extends BukkitRunnable { int hurtCooldown = pluginRef.getConfigManager().getConfigParty().getPTP().getPtpRecentlyHurtCooldown(); if (hurtCooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, teleportingPlayer); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, hurtCooldown, teleportingPlayer); if (timeRemaining > 0) { teleportingPlayer.sendMessage(pluginRef.getLocaleManager().getString("Item.Injured.Wait", timeRemaining)); diff --git a/src/main/java/com/gmail/nossr50/runnables/player/PlayerProfileLoadingTask.java b/src/main/java/com/gmail/nossr50/runnables/player/PlayerProfileLoadingTask.java index aff55869a..73bc06207 100644 --- a/src/main/java/com/gmail/nossr50/runnables/player/PlayerProfileLoadingTask.java +++ b/src/main/java/com/gmail/nossr50/runnables/player/PlayerProfileLoadingTask.java @@ -4,7 +4,6 @@ import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.player.PlayerProfile; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.commands.ScoreboardKeepTask; -import com.gmail.nossr50.util.Misc; import org.bukkit.Server; import org.bukkit.entity.Player; import org.bukkit.scheduler.BukkitRunnable; @@ -30,7 +29,7 @@ public class PlayerProfileLoadingTask extends BukkitRunnable { @Override public void run() { - if (Misc.isNPCIncludingVillagers(player)) { + if (pluginRef.getMiscTools().isNPCIncludingVillagers(player)) { return; } @@ -91,7 +90,7 @@ public class PlayerProfileLoadingTask extends BukkitRunnable { if (pluginRef.getScoreboardSettings().getShowStatsAfterLogin()) { pluginRef.getScoreboardManager().enablePlayerStatsScoreboard(player); - new ScoreboardKeepTask(pluginRef, player).runTaskLater(pluginRef, Misc.TICK_CONVERSION_FACTOR); + new ScoreboardKeepTask(pluginRef, player).runTaskLater(pluginRef, pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } } diff --git a/src/main/java/com/gmail/nossr50/runnables/skills/AbilityDisableTask.java b/src/main/java/com/gmail/nossr50/runnables/skills/AbilityDisableTask.java index f9917fd36..ba6c5a565 100644 --- a/src/main/java/com/gmail/nossr50/runnables/skills/AbilityDisableTask.java +++ b/src/main/java/com/gmail/nossr50/runnables/skills/AbilityDisableTask.java @@ -4,7 +4,6 @@ import com.gmail.nossr50.datatypes.interactions.NotificationType; import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.PerksUtils; import org.bukkit.Chunk; import org.bukkit.World; @@ -60,7 +59,7 @@ public class AbilityDisableTask extends BukkitRunnable { pluginRef.getSkillTools().getSuperAbilityOtherPlayerDeactivationStr(superAbilityType)); new AbilityCooldownTask(pluginRef, mcMMOPlayer, superAbilityType).runTaskLater(pluginRef, PerksUtils.handleCooldownPerks(player, - pluginRef.getSkillTools().getSuperAbilityCooldown(superAbilityType) * Misc.TICK_CONVERSION_FACTOR)); + pluginRef.getSkillTools().getSuperAbilityCooldown(superAbilityType) * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR)); } private void resendChunkRadiusAt(Player player) { diff --git a/src/main/java/com/gmail/nossr50/skills/acrobatics/AcrobaticsManager.java b/src/main/java/com/gmail/nossr50/skills/acrobatics/AcrobaticsManager.java index 0b80365d7..0873e32c3 100644 --- a/src/main/java/com/gmail/nossr50/skills/acrobatics/AcrobaticsManager.java +++ b/src/main/java/com/gmail/nossr50/skills/acrobatics/AcrobaticsManager.java @@ -9,7 +9,6 @@ import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.datatypes.skills.behaviours.AcrobaticsBehaviour; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.ParticleEffectUtils; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Location; @@ -94,7 +93,7 @@ public class AcrobaticsManager extends SkillManager { //Check respawn to prevent abuse if (!pluginRef.getConfigManager().getConfigExploitPrevention().getConfigSectionExploitAcrobatics().isPreventAcrobaticsAbuse()) applyXpGain((float) (damage * acrobaticsBehaviour.getDodgeXpModifier()), XPGainReason.PVP); - else if (pluginRef.getSkillTools().cooldownExpired(mcMMOPlayer.getRespawnATS(), Misc.PLAYER_RESPAWN_COOLDOWN_SECONDS) + else if (pluginRef.getSkillTools().cooldownExpired(mcMMOPlayer.getRespawnATS(), pluginRef.getMiscTools().PLAYER_RESPAWN_COOLDOWN_SECONDS) && mcMMOPlayer.getTeleportATS() < System.currentTimeMillis()) { applyXpGain((float) (damage * acrobaticsBehaviour.getDodgeXpModifier()), XPGainReason.PVP); } diff --git a/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java b/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java index 812de62c6..63d18272b 100644 --- a/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java +++ b/src/main/java/com/gmail/nossr50/skills/archery/ArcheryManager.java @@ -8,7 +8,6 @@ import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.datatypes.skills.behaviours.ArcheryBehaviour; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Location; import org.bukkit.entity.Entity; @@ -94,7 +93,7 @@ public class ArcheryManager extends SkillManager { } Location dazedLocation = defender.getLocation(); - dazedLocation.setPitch(90 - Misc.getRandom().nextInt(181)); + dazedLocation.setPitch(90 - pluginRef.getMiscTools().getRandom().nextInt(181)); defender.teleport(dazedLocation); defender.addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 20 * 10, 10)); diff --git a/src/main/java/com/gmail/nossr50/skills/herbalism/HerbalismManager.java b/src/main/java/com/gmail/nossr50/skills/herbalism/HerbalismManager.java index 086d0a896..b9a9e6e19 100644 --- a/src/main/java/com/gmail/nossr50/skills/herbalism/HerbalismManager.java +++ b/src/main/java/com/gmail/nossr50/skills/herbalism/HerbalismManager.java @@ -15,7 +15,6 @@ import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.skills.DelayedHerbalismXPCheckTask; import com.gmail.nossr50.runnables.skills.HerbalismBlockUpdaterTask; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Material; @@ -685,7 +684,7 @@ public class HerbalismManager extends SkillManager { private boolean processGrowingPlants(BlockState blockState, boolean greenTerra) { int greenThumbStage = getGreenThumbStage(); - blockState.setMetadata(MetadataConstants.GREEN_THUMB_METAKEY, new FixedMetadataValue(pluginRef, (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR))); + blockState.setMetadata(MetadataConstants.GREEN_THUMB_METAKEY, new FixedMetadataValue(pluginRef, (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR))); Ageable crops = (Ageable) blockState.getBlockData(); switch (blockState.getType()) { diff --git a/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java b/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java index fea5feb78..a4a3a9ab9 100644 --- a/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java +++ b/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java @@ -11,7 +11,6 @@ import com.gmail.nossr50.datatypes.skills.behaviours.MiningBehaviour; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.skills.AbilityCooldownTask; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import org.bukkit.Material; import org.bukkit.block.Block; import org.bukkit.block.BlockState; @@ -129,7 +128,7 @@ public class MiningManager extends SkillManager { mcMMOPlayer.setAbilityDATS(SuperAbilityType.BLAST_MINING, System.currentTimeMillis()); mcMMOPlayer.setAbilityInformed(SuperAbilityType.BLAST_MINING, false); - new AbilityCooldownTask(pluginRef, mcMMOPlayer, SuperAbilityType.BLAST_MINING).runTaskLater(pluginRef, SuperAbilityType.BLAST_MINING.getCooldown() * Misc.TICK_CONVERSION_FACTOR); + new AbilityCooldownTask(pluginRef, mcMMOPlayer, SuperAbilityType.BLAST_MINING).runTaskLater(pluginRef, SuperAbilityType.BLAST_MINING.getCooldown() * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } /** @@ -160,12 +159,12 @@ public class MiningManager extends SkillManager { } for (BlockState blockState : ores) { - if (Misc.getRandom().nextFloat() < (yield + oreBonus)) { + if (pluginRef.getMiscTools().getRandom().nextFloat() < (yield + oreBonus)) { if (!pluginRef.getPlaceStore().isTrue(blockState)) { xp += miningBehaviour.getBlockXp(blockState); } - Misc.dropItem(Misc.getBlockCenter(blockState), new ItemStack(blockState.getType())); // Initial block that would have been dropped + pluginRef.getMiscTools().dropItem(pluginRef.getMiscTools().getBlockCenter(blockState), new ItemStack(blockState.getType())); // Initial block that would have been dropped if (!pluginRef.getPlaceStore().isTrue(blockState)) { for (int i = 1; i < dropMultiplier; i++) { @@ -177,8 +176,8 @@ public class MiningManager extends SkillManager { if (debrisYield > 0) { for (BlockState blockState : debris) { - if (Misc.getRandom().nextFloat() < debrisYield) { - Misc.dropItems(Misc.getBlockCenter(blockState), blockState.getBlock().getDrops()); + if (pluginRef.getMiscTools().getRandom().nextFloat() < debrisYield) { + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), blockState.getBlock().getDrops()); } } } diff --git a/src/main/java/com/gmail/nossr50/skills/repair/RepairManager.java b/src/main/java/com/gmail/nossr50/skills/repair/RepairManager.java index ada6cdb13..5a87d2c42 100644 --- a/src/main/java/com/gmail/nossr50/skills/repair/RepairManager.java +++ b/src/main/java/com/gmail/nossr50/skills/repair/RepairManager.java @@ -6,7 +6,6 @@ import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.random.RandomChanceSkillStatic; import com.gmail.nossr50.util.skills.SkillActivationType; import com.gmail.nossr50.util.sounds.SoundType; @@ -362,6 +361,6 @@ public class RepairManager extends SkillManager { } public void actualizeLastAnvilUse() { - lastClick = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + lastClick = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } } \ No newline at end of file diff --git a/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java b/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java index 1e9b1c918..c6e527357 100644 --- a/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java +++ b/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java @@ -8,7 +8,6 @@ import com.gmail.nossr50.datatypes.skills.behaviours.SalvageBehaviour; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; import com.gmail.nossr50.skills.salvage.salvageables.Salvageable; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import com.gmail.nossr50.util.random.RandomChanceSkillStatic; import com.gmail.nossr50.util.sounds.SoundType; @@ -146,10 +145,10 @@ public class SalvageManager extends SkillManager { anvilLoc.add(0, .1, 0); if (enchantBook != null) { - Misc.spawnItemTowardsLocation(anvilLoc.clone(), playerLoc.clone(), enchantBook, vectorSpeed); + pluginRef.getMiscTools().spawnItemTowardsLocation(anvilLoc.clone(), playerLoc.clone(), enchantBook, vectorSpeed); } - Misc.spawnItemTowardsLocation(anvilLoc.clone(), playerLoc.clone(), salvageResults, vectorSpeed); + pluginRef.getMiscTools().spawnItemTowardsLocation(anvilLoc.clone(), playerLoc.clone(), salvageResults, vectorSpeed); // BWONG BWONG BWONG - CLUNK! if (pluginRef.getConfigManager().getConfigSalvage().getGeneral().isAnvilUseSounds()) { @@ -318,6 +317,6 @@ public class SalvageManager extends SkillManager { } public void actualizeLastAnvilUse() { - lastClick = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR); + lastClick = (int) (System.currentTimeMillis() / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } } diff --git a/src/main/java/com/gmail/nossr50/skills/taming/TamingManager.java b/src/main/java/com/gmail/nossr50/skills/taming/TamingManager.java index e7d3aedfc..1dcd7e42f 100644 --- a/src/main/java/com/gmail/nossr50/skills/taming/TamingManager.java +++ b/src/main/java/com/gmail/nossr50/skills/taming/TamingManager.java @@ -11,7 +11,6 @@ import com.gmail.nossr50.datatypes.skills.subskills.taming.CallOfTheWildType; import com.gmail.nossr50.datatypes.skills.subskills.taming.TamingSummon; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import com.gmail.nossr50.util.random.RandomChanceSkillStatic; import com.gmail.nossr50.util.skills.ParticleEffectUtils; @@ -269,7 +268,7 @@ public class TamingManager extends SkillManager { //Check to see if players have the correct amount of the item required to summon if(itemInMainHand.getAmount() >= tamingSummon.getItemAmountRequired()) { //Initial Spawn location - Location spawnLocation = Misc.getLocationOffset(player.getLocation(), 1); + Location spawnLocation = pluginRef.getMiscTools().getLocationOffset(player.getLocation(), 1); //COTW can summon multiple entities per usage for (int i = 0; i < tamingSummon.getEntitiesSummoned(); i++) { @@ -281,7 +280,7 @@ public class TamingManager extends SkillManager { break; } - spawnLocation = Misc.getLocationOffset(spawnLocation, 1); + spawnLocation = pluginRef.getMiscTools().getLocationOffset(spawnLocation, 1); spawnCOTWEntity(callOfTheWildType, spawnLocation, tamingSummon.getEntityType()); //Inform the player about what they have just done @@ -360,11 +359,11 @@ public class TamingManager extends SkillManager { //Randomize the cat if(callOfWildEntity instanceof Ocelot) { int numberOfTypes = Ocelot.Type.values().length; - ((Ocelot) callOfWildEntity).setCatType(Ocelot.Type.values()[Misc.getRandom().nextInt(numberOfTypes)]); + ((Ocelot) callOfWildEntity).setCatType(Ocelot.Type.values()[pluginRef.getMiscTools().getRandom().nextInt(numberOfTypes)]); ((Ocelot) callOfWildEntity).setAdult(); } else if(callOfWildEntity instanceof Cat) { int numberOfTypes = Cat.Type.values().length; - ((Cat) callOfWildEntity).setCatType(Cat.Type.values()[Misc.getRandom().nextInt(numberOfTypes)]); + ((Cat) callOfWildEntity).setCatType(Cat.Type.values()[pluginRef.getMiscTools().getRandom().nextInt(numberOfTypes)]); ((Cat) callOfWildEntity).setAdult(); } @@ -385,12 +384,12 @@ public class TamingManager extends SkillManager { //Randomize Horse Horse horse = (Horse) callOfWildEntity; - callOfWildEntity.setMaxHealth(15.0 + (Misc.getRandom().nextDouble() * 15)); + callOfWildEntity.setMaxHealth(15.0 + (pluginRef.getMiscTools().getRandom().nextDouble() * 15)); callOfWildEntity.setHealth(callOfWildEntity.getMaxHealth()); - horse.setColor(Horse.Color.values()[Misc.getRandom().nextInt(Horse.Color.values().length)]); - horse.setStyle(Horse.Style.values()[Misc.getRandom().nextInt(Horse.Style.values().length)]); + horse.setColor(Horse.Color.values()[pluginRef.getMiscTools().getRandom().nextInt(Horse.Color.values().length)]); + horse.setStyle(Horse.Style.values()[pluginRef.getMiscTools().getRandom().nextInt(Horse.Style.values().length)]); horse.setJumpStrength(Math.max(pluginRef.getConfigManager().getConfigTaming().getMinHorseJumpStrength(), - Math.min(Math.min(Misc.getRandom().nextDouble(), Misc.getRandom().nextDouble()) * 2, pluginRef.getConfigManager().getConfigTaming().getMaxHorseJumpStrength()))); + Math.min(Math.min(pluginRef.getMiscTools().getRandom().nextDouble(), pluginRef.getMiscTools().getRandom().nextDouble()) * 2, pluginRef.getConfigManager().getConfigTaming().getMaxHorseJumpStrength()))); horse.setAdult(); //TODO: setSpeed, once available diff --git a/src/main/java/com/gmail/nossr50/skills/taming/TrackedTamingEntity.java b/src/main/java/com/gmail/nossr50/skills/taming/TrackedTamingEntity.java index 4a836ffd0..1dfb82fdf 100644 --- a/src/main/java/com/gmail/nossr50/skills/taming/TrackedTamingEntity.java +++ b/src/main/java/com/gmail/nossr50/skills/taming/TrackedTamingEntity.java @@ -2,7 +2,6 @@ package com.gmail.nossr50.skills.taming; import com.gmail.nossr50.datatypes.skills.subskills.taming.CallOfTheWildType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.ParticleEffectUtils; import org.bukkit.Location; import org.bukkit.Sound; @@ -30,7 +29,7 @@ public class TrackedTamingEntity extends BukkitRunnable { int tamingCOTWLength = pluginRef.getConfigManager().getConfigTaming().getSubSkills().getCallOfTheWild().getCOTWSummon(callOfTheWildType).getSummonLifespan(); if (tamingCOTWLength > 0) { - this.length = tamingCOTWLength * Misc.TICK_CONVERSION_FACTOR; + this.length = tamingCOTWLength * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR; this.runTaskLater(pluginRef, length); } } diff --git a/src/main/java/com/gmail/nossr50/skills/unarmed/UnarmedManager.java b/src/main/java/com/gmail/nossr50/skills/unarmed/UnarmedManager.java index ff4f6dd3e..130df62d9 100644 --- a/src/main/java/com/gmail/nossr50/skills/unarmed/UnarmedManager.java +++ b/src/main/java/com/gmail/nossr50/skills/unarmed/UnarmedManager.java @@ -9,7 +9,6 @@ import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.datatypes.skills.ToolType; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Material; import org.bukkit.block.BlockState; @@ -107,7 +106,7 @@ public class UnarmedManager extends SkillManager { if (pluginRef.getUserManager().getPlayer(defender) == null) return; - Item item = Misc.dropItem(defender.getLocation(), defender.getInventory().getItemInMainHand()); + Item item = pluginRef.getMiscTools().dropItem(defender.getLocation(), defender.getInventory().getItemInMainHand()); if (item != null && pluginRef.getConfigManager().getConfigUnarmed().doesDisarmPreventTheft()) { item.setMetadata(MetadataConstants.DISARMED_ITEM_METAKEY, pluginRef.getUserManager().getPlayer(defender).getPlayerMetadata()); @@ -173,7 +172,7 @@ public class UnarmedManager extends SkillManager { * @return true if the defender was not disarmed, false otherwise */ private boolean hasIronGrip(Player defender) { - if (!Misc.isNPCEntityExcludingVillagers(defender) + if (!pluginRef.getMiscTools().isNPCEntityExcludingVillagers(defender) && pluginRef.getPermissionTools().isSubSkillEnabled(defender, SubSkillType.UNARMED_IRON_GRIP) && pluginRef.getRandomChanceTools().isActivationSuccessful(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, SubSkillType.UNARMED_IRON_GRIP, defender)) { pluginRef.getNotificationManager().sendPlayerInformation(defender, NotificationType.SUBSKILL_MESSAGE, "Unarmed.Ability.IronGrip.Defender"); diff --git a/src/main/java/com/gmail/nossr50/skills/woodcutting/WoodcuttingManager.java b/src/main/java/com/gmail/nossr50/skills/woodcutting/WoodcuttingManager.java index 2e9b52743..c5a22a1b5 100644 --- a/src/main/java/com/gmail/nossr50/skills/woodcutting/WoodcuttingManager.java +++ b/src/main/java/com/gmail/nossr50/skills/woodcutting/WoodcuttingManager.java @@ -9,7 +9,6 @@ import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.datatypes.skills.behaviours.WoodcuttingBehaviour; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.skills.SkillActivationType; import org.bukkit.Material; import org.bukkit.block.Block; @@ -101,7 +100,7 @@ public class WoodcuttingManager extends SkillManager { double health = player.getHealth(); if (health > 1) { - pluginRef.getCombatTools().dealDamage(player, Misc.getRandom().nextInt((int) (health - 1))); + pluginRef.getCombatTools().dealDamage(player, pluginRef.getMiscTools().getRandom().nextInt((int) (health - 1))); } return; @@ -263,17 +262,17 @@ public class WoodcuttingManager extends SkillManager { //TODO: Update this to drop the correct items/blocks via NMS if (material == Material.BROWN_MUSHROOM_BLOCK || material == Material.RED_MUSHROOM_BLOCK) { xp += woodcuttingBehaviour.processTreeFellerXPGains(blockState, processedLogCount); - Misc.dropItems(Misc.getBlockCenter(blockState), block.getDrops()); + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), block.getDrops()); } else { if (pluginRef.getBlockTools().isLog(blockState)) { if (canGetDoubleDrops()) { woodcuttingBehaviour.checkForDoubleDrop(blockState); } xp += woodcuttingBehaviour.processTreeFellerXPGains(blockState, processedLogCount); - Misc.dropItems(Misc.getBlockCenter(blockState), block.getDrops()); + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), block.getDrops()); } if (pluginRef.getBlockTools().isLeaves(blockState)) { - Misc.dropItems(Misc.getBlockCenter(blockState), block.getDrops()); + pluginRef.getMiscTools().dropItems(pluginRef.getMiscTools().getBlockCenter(blockState), block.getDrops()); } } diff --git a/src/main/java/com/gmail/nossr50/util/ChimaeraWing.java b/src/main/java/com/gmail/nossr50/util/ChimaeraWing.java index a66537bd6..315d2a7b1 100644 --- a/src/main/java/com/gmail/nossr50/util/ChimaeraWing.java +++ b/src/main/java/com/gmail/nossr50/util/ChimaeraWing.java @@ -56,7 +56,7 @@ public final class ChimaeraWing { int cooldown = pluginRef.getConfigManager().getConfigItems().getCooldown(); if (cooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(lastTeleport * Misc.TIME_CONVERSION_FACTOR, cooldown, player); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(lastTeleport * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, cooldown, player); if (timeRemaining > 0) { pluginRef.getNotificationManager().sendPlayerInformation(player, NotificationType.ABILITY_COOLDOWN, "Item.Generic.Wait", String.valueOf(timeRemaining)); @@ -68,7 +68,7 @@ public final class ChimaeraWing { int hurtCooldown = pluginRef.getConfigManager().getConfigItems().getRecentlyHurtCooldown(); if (hurtCooldown > 0) { - int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, player); + int timeRemaining = pluginRef.getSkillTools().calculateTimeLeft(recentlyHurt * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR, hurtCooldown, player); if (timeRemaining > 0) { pluginRef.getNotificationManager().sendPlayerInformation(player, NotificationType.ITEM_MESSAGE, "Item.Injured.Wait", String.valueOf(timeRemaining)); @@ -82,7 +82,7 @@ public final class ChimaeraWing { pluginRef.getNotificationManager().sendPlayerInformation(player, NotificationType.REQUIREMENTS_NOT_MET, "Item.ChimaeraWing.Fail"); player.updateInventory(); player.setVelocity(new Vector(0, 0.5D, 0)); - pluginRef.getCombatTools().dealDamage(player, Misc.getRandom().nextInt((int) (player.getHealth() - 10))); + pluginRef.getCombatTools().dealDamage(player, pluginRef.getMiscTools().getRandom().nextInt((int) (player.getHealth() - 10))); mcMMOPlayer.actualizeChimeraWingLastUse(); return; } diff --git a/src/main/java/com/gmail/nossr50/util/EventManager.java b/src/main/java/com/gmail/nossr50/util/EventManager.java index dad17cec0..1a9e81fb4 100644 --- a/src/main/java/com/gmail/nossr50/util/EventManager.java +++ b/src/main/java/com/gmail/nossr50/util/EventManager.java @@ -123,7 +123,7 @@ public class EventManager { Entity entity = entityDamageEvent.getEntity(); //Check to make sure the entity is not an NPC - if(Misc.isNPCEntityExcludingVillagers(entity)) + if(pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity)) return false; if (!entity.isValid() || !(entity instanceof LivingEntity)) { diff --git a/src/main/java/com/gmail/nossr50/util/Misc.java b/src/main/java/com/gmail/nossr50/util/MiscTools.java similarity index 68% rename from src/main/java/com/gmail/nossr50/util/Misc.java rename to src/main/java/com/gmail/nossr50/util/MiscTools.java index 37ac503ee..366b9de7e 100644 --- a/src/main/java/com/gmail/nossr50/util/Misc.java +++ b/src/main/java/com/gmail/nossr50/util/MiscTools.java @@ -1,6 +1,7 @@ package com.gmail.nossr50.util; import com.gmail.nossr50.events.items.McMMOItemSpawnEvent; +import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.runnables.player.PlayerProfileLoadingTask; import com.google.common.collect.ImmutableSet; import org.bukkit.Location; @@ -14,26 +15,18 @@ import java.util.Collection; import java.util.Random; import java.util.Set; -public final class Misc { - public static final int TIME_CONVERSION_FACTOR = 1000; - public static final int TICK_CONVERSION_FACTOR = 20; - public static final int PLAYER_RESPAWN_COOLDOWN_SECONDS = 5; - public static final double SKILL_MESSAGE_MAX_SENDING_DISTANCE = 10.0; - public static final Set modNames = ImmutableSet.of("LOTR", "BUILDCRAFT", "ENDERIO", "ENHANCEDBIOMES", "IC2", "METALLURGY", "FORESTRY", "GALACTICRAFT", "RAILCRAFT", "TWILIGHTFOREST", "THAUMCRAFT", "GRAVESTONEMOD", "GROWTHCRAFT", "ARCTICMOBS", "DEMONMOBS", "INFERNOMOBS", "SWAMPMOBS", "MARICULTURE", "MINESTRAPPOLATION"); +public final class MiscTools { + public final int TIME_CONVERSION_FACTOR = 1000; + public final int TICK_CONVERSION_FACTOR = 20; + public final int PLAYER_RESPAWN_COOLDOWN_SECONDS = 5; + public final double SKILL_MESSAGE_MAX_SENDING_DISTANCE = 10.0; + public final Set modNames = ImmutableSet.of("LOTR", "BUILDCRAFT", "ENDERIO", "ENHANCEDBIOMES", "IC2", "METALLURGY", "FORESTRY", "GALACTICRAFT", "RAILCRAFT", "TWILIGHTFOREST", "THAUMCRAFT", "GRAVESTONEMOD", "GROWTHCRAFT", "ARCTICMOBS", "DEMONMOBS", "INFERNOMOBS", "SWAMPMOBS", "MARICULTURE", "MINESTRAPPOLATION"); + private final mcMMO pluginRef; - // Sound Pitches & Volumes from CB -/* public static final float ANVIL_USE_PITCH = 0.3F; // Not in CB directly, I went off the place sound values - public static final float ANVIL_USE_VOLUME = 1.0F * MainConfig.getInstance().getMasterVolume(); // Not in CB directly, I went off the place sound values - public static final float FIZZ_VOLUME = 0.5F * MainConfig.getInstance().getMasterVolume(); - public static final float POP_VOLUME = 0.2F * MainConfig.getInstance().getMasterVolume(); - public static final float BAT_VOLUME = 1.0F * MainConfig.getInstance().getMasterVolume(); - public static final float BAT_PITCH = 0.6F; - public static final float GHAST_VOLUME = 1.0F * MainConfig.getInstance().getMasterVolume(); - public static final float LEVELUP_PITCH = 0.5F; // Reduced to differentiate between vanilla level-up - public static final float LEVELUP_VOLUME = 0.75F * MainConfig.getInstance().getMasterVolume(); // Use max volume always*/ - private static Random random = new Random(); + private Random random = new Random(); - private Misc() { + public MiscTools(mcMMO pluginRef) { + this.pluginRef = pluginRef; } /** @@ -45,30 +38,30 @@ public final class Misc { * 2) The entity can be considered an NPC * * In this context, an NPC is a bit hard to define. Various plugins determine what an NPC is in different ways. - * @see Misc::isNPCIncludingVillagers + * @see MiscTools ::isNPCIncludingVillagers * @param entity target entity * @return true if the entity is not a Villager and is not a "NPC" */ - public static boolean isNPCEntityExcludingVillagers(Entity entity) { + public boolean isNPCEntityExcludingVillagers(Entity entity) { return (!isVillager(entity) && isNPCIncludingVillagers(entity)); //Compatibility with some mod.. } - public static boolean isNPCClassType(Entity entity) { + public boolean isNPCClassType(Entity entity) { return entity instanceof NPC; } - public static boolean hasNPCMetadataTag(Entity entity) { + public boolean hasNPCMetadataTag(Entity entity) { return entity.hasMetadata("NPC"); } - public static boolean isVillager(Entity entity) { + public boolean isVillager(Entity entity) { String entityType = entity.getType().toString(); //This weird code is for 1.13 & 1.14 compatibility return entityType.equalsIgnoreCase("wandering_trader") || entity instanceof Villager; } - public static boolean isNPCIncludingVillagers(Entity entity) { + public boolean isNPCIncludingVillagers(Entity entity) { return (entity == null || (hasNPCMetadataTag(entity)) || (isNPCClassType(entity)) @@ -83,7 +76,7 @@ public final class Misc { * @param maxDistance The max distance apart * @return true if the distance between {@code first} and {@code second} is less than {@code maxDistance}, false otherwise */ - public static boolean isNear(Location first, Location second, double maxDistance) { + public boolean isNear(Location first, Location second, double maxDistance) { return (first.getWorld() == second.getWorld()) && (first.distanceSquared(second) < (maxDistance * maxDistance) || maxDistance == 0); } @@ -93,11 +86,11 @@ public final class Misc { * @param blockState The {@link BlockState} of the block * @return A {@link Location} lying at the center of the block */ - public static Location getBlockCenter(BlockState blockState) { + public Location getBlockCenter(BlockState blockState) { return blockState.getLocation().add(0.5, 0.5, 0.5); } - public static void dropItems(Location location, Collection drops) { + public void dropItems(Location location, Collection drops) { for (ItemStack drop : drops) { dropItem(location, drop); } @@ -110,7 +103,7 @@ public final class Misc { * @param is The items to drop * @param quantity The amount of items to drop */ - public static void dropItems(Location location, ItemStack is, int quantity) { + public void dropItems(Location location, ItemStack is, int quantity) { for (int i = 0; i < quantity; i++) { dropItem(location, is); } @@ -123,7 +116,7 @@ public final class Misc { * @param itemStack The item to drop * @return Dropped Item entity or null if invalid or cancelled */ - public static Item dropItem(Location location, ItemStack itemStack) { + public Item dropItem(Location location, ItemStack itemStack) { if (itemStack.getType() == Material.AIR) { return null; } @@ -147,7 +140,7 @@ public final class Misc { * @param speed the speed that the item should travel * @param quantity The amount of items to drop */ - public static void spawnItemsTowardsLocation(Location fromLocation, Location toLocation, ItemStack is, int quantity, double speed) { + public void spawnItemsTowardsLocation(Location fromLocation, Location toLocation, ItemStack is, int quantity, double speed) { for (int i = 0; i < quantity; i++) { spawnItemTowardsLocation(fromLocation, toLocation, is, speed); } @@ -163,7 +156,7 @@ public final class Misc { * @param speed the speed that the item should travel * @return Dropped Item entity or null if invalid or cancelled */ - public static Item spawnItemTowardsLocation(Location fromLocation, Location toLocation, ItemStack itemToSpawn, double speed) { + public Item spawnItemTowardsLocation(Location fromLocation, Location toLocation, ItemStack itemToSpawn, double speed) { if (itemToSpawn.getType() == Material.AIR) { return null; } @@ -196,16 +189,16 @@ public final class Misc { return spawnedItem; } - public static void profileCleanup(String playerName) { + public void profileCleanup(String playerName) { Player player = pluginRef.getServer().getPlayerExact(playerName); if (player != null) { pluginRef.getUserManager().remove(player); - new PlayerProfileLoadingTask(player).runTaskLaterAsynchronously(pluginRef, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading + new PlayerProfileLoadingTask(pluginRef, player).runTaskLaterAsynchronously(pluginRef, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading } } - public static String getModName(String materialName) { + public String getModName(String materialName) { for (String mod : modNames) { if (materialName.contains(mod)) { return mod; @@ -224,7 +217,7 @@ public final class Misc { /** * Gets a random location near the specified location */ - public static Location getLocationOffset(Location location, double strength) { + public Location getLocationOffset(Location location, double strength) { double blockX = location.getBlockX(); double blockZ = location.getBlockZ(); @@ -238,7 +231,7 @@ public final class Misc { return new Location(location.getWorld(), blockX, location.getY(), blockZ); } - public static Random getRandom() { + public Random getRandom() { return random; } } diff --git a/src/main/java/com/gmail/nossr50/util/MobHealthBarManager.java b/src/main/java/com/gmail/nossr50/util/MobHealthBarManager.java index 4460e8b77..43c95c106 100644 --- a/src/main/java/com/gmail/nossr50/util/MobHealthBarManager.java +++ b/src/main/java/com/gmail/nossr50/util/MobHealthBarManager.java @@ -80,7 +80,7 @@ public final class MobHealthBarManager { target.setMetadata(MetadataConstants.NAME_VISIBILITY_METAKEY, new FixedMetadataValue(pluginRef, false)); } - new MobHealthDisplayUpdaterTask(target).runTaskLater(pluginRef, displayTime * Misc.TICK_CONVERSION_FACTOR); // Clear health display after 3 seconds + new MobHealthDisplayUpdaterTask(target).runTaskLater(pluginRef, displayTime * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); // Clear health display after 3 seconds } } diff --git a/src/main/java/com/gmail/nossr50/util/commands/CommandTools.java b/src/main/java/com/gmail/nossr50/util/commands/CommandTools.java index 94c538efb..6ff4a7f34 100644 --- a/src/main/java/com/gmail/nossr50/util/commands/CommandTools.java +++ b/src/main/java/com/gmail/nossr50/util/commands/CommandTools.java @@ -5,7 +5,6 @@ import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.player.PlayerProfile; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import org.bukkit.OfflinePlayer; import org.bukkit.command.CommandSender; @@ -36,7 +35,7 @@ public final class CommandTools { return true; } else if (pluginRef.getConfigManager().getConfigCommands().isLimitInspectRange() && sender instanceof Player - && !Misc.isNear(((Player) sender).getLocation(), target.getLocation(), + && !pluginRef.getMiscTools().isNear(((Player) sender).getLocation(), target.getLocation(), pluginRef.getConfigManager().getConfigCommands().getInspectCommandMaxDistance()) && !hasPermission) { sender.sendMessage(pluginRef.getLocaleManager().getString("Inspect.TooFar")); diff --git a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java index ef59b3c4b..8078b0b1e 100644 --- a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java +++ b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java @@ -7,7 +7,6 @@ import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.events.scoreboard.McMMOScoreboardMakeboardEvent; import com.gmail.nossr50.events.scoreboard.ScoreboardEventReason; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.google.common.collect.ImmutableList; import org.bukkit.entity.Player; import org.bukkit.scoreboard.DisplaySlot; @@ -291,7 +290,7 @@ public class ScoreboardManager { if (displayTime == -1) { wrapper.showBoardWithNoRevert(); } else { - wrapper.showBoardAndScheduleRevert(displayTime * Misc.TICK_CONVERSION_FACTOR); + wrapper.showBoardAndScheduleRevert(displayTime * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } } @@ -308,7 +307,7 @@ public class ScoreboardManager { } public void setRevertTimer(String playerName, int seconds) { - PLAYER_SCOREBOARDS.get(playerName).showBoardAndScheduleRevert(seconds * Misc.TICK_CONVERSION_FACTOR); + PLAYER_SCOREBOARDS.get(playerName).showBoardAndScheduleRevert(seconds * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } public List getDirtyPowerLevels() { diff --git a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardStrings.java b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardStrings.java index f7b5e8ea5..1b6b64944 100644 --- a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardStrings.java +++ b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardStrings.java @@ -3,7 +3,6 @@ package com.gmail.nossr50.util.scoreboards; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Lists; import org.bukkit.ChatColor; @@ -94,7 +93,7 @@ public class ScoreboardStrings { ChatColor.DARK_GREEN, ChatColor.DARK_BLUE); - Collections.shuffle(colors, Misc.getRandom()); + Collections.shuffle(colors, pluginRef.getMiscTools().getRandom()); int i = 0; for (PrimarySkillType primarySkillType : PrimarySkillType.values()) { diff --git a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardWrapper.java b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardWrapper.java index a226123e6..6e6138701 100644 --- a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardWrapper.java +++ b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardWrapper.java @@ -11,7 +11,6 @@ import com.gmail.nossr50.events.scoreboard.ScoreboardEventReason; import com.gmail.nossr50.events.scoreboard.ScoreboardObjectiveEventReason; import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.child.FamilyTree; -import com.gmail.nossr50.util.Misc; import org.apache.commons.lang.Validate; import org.bukkit.ChatColor; import org.bukkit.entity.Player; @@ -82,7 +81,7 @@ public class ScoreboardWrapper { if (cooldownTask == null) { // Repeat every 5 seconds. // Cancels once all cooldowns are done, using stopCooldownUpdating(). - cooldownTask = new ScoreboardCooldownTask().runTaskTimer(pluginRef, 5 * Misc.TICK_CONVERSION_FACTOR, 5 * Misc.TICK_CONVERSION_FACTOR); + cooldownTask = new ScoreboardCooldownTask().runTaskTimer(pluginRef, 5 * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR, 5 * pluginRef.getMiscTools().TICK_CONVERSION_FACTOR); } } diff --git a/src/main/java/com/gmail/nossr50/util/skills/CombatTools.java b/src/main/java/com/gmail/nossr50/util/skills/CombatTools.java index 36752229d..c624df246 100644 --- a/src/main/java/com/gmail/nossr50/util/skills/CombatTools.java +++ b/src/main/java/com/gmail/nossr50/util/skills/CombatTools.java @@ -18,7 +18,6 @@ import com.gmail.nossr50.skills.axes.AxesManager; import com.gmail.nossr50.skills.swords.SwordsManager; import com.gmail.nossr50.skills.taming.TamingManager; import com.gmail.nossr50.skills.unarmed.UnarmedManager; -import com.gmail.nossr50.util.Misc; import com.google.common.collect.ImmutableMap; import org.bukkit.GameMode; import org.bukkit.Material; @@ -263,7 +262,7 @@ public final class CombatTools { EntityType entityType = damager.getType(); if (target instanceof Player) { - if (Misc.isNPCEntityExcludingVillagers(target)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(target)) { return; } @@ -348,7 +347,7 @@ public final class CombatTools { if (tamer instanceof Player && pluginRef.getSkillTools().canCombatSkillsTrigger(PrimarySkillType.TAMING, target)) { Player master = (Player) tamer; - if (!Misc.isNPCEntityExcludingVillagers(master) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.TAMING, master)) { + if (!pluginRef.getMiscTools().isNPCEntityExcludingVillagers(master) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.TAMING, master)) { processTamingCombat(target, master, wolf, event); } } @@ -359,11 +358,11 @@ public final class CombatTools { if (projectileSource instanceof Player && pluginRef.getSkillTools().canCombatSkillsTrigger(PrimarySkillType.ARCHERY, target)) { Player player = (Player) projectileSource; - if (!Misc.isNPCEntityExcludingVillagers(player) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.ARCHERY, player)) { + if (!pluginRef.getMiscTools().isNPCEntityExcludingVillagers(player) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.ARCHERY, player)) { processArcheryCombat(target, player, event, arrow); } - if (target.getType() != EntityType.CREEPER && !Misc.isNPCEntityExcludingVillagers(player) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.TAMING, player)) { + if (target.getType() != EntityType.CREEPER && !pluginRef.getMiscTools().isNPCEntityExcludingVillagers(player) && pluginRef.getSkillTools().doesPlayerHaveSkillPermission(PrimarySkillType.TAMING, player)) { McMMOPlayer mcMMOPlayer = pluginRef.getUserManager().getPlayer(player); TamingManager tamingManager = mcMMOPlayer.getTamingManager(); tamingManager.attackTarget(target); @@ -564,7 +563,7 @@ public final class CombatTools { break; } - if (Misc.isNPCEntityExcludingVillagers(entity) || !(entity instanceof LivingEntity) || !shouldBeAffected(attacker, entity)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(entity) || !(entity instanceof LivingEntity) || !shouldBeAffected(attacker, entity)) { continue; } @@ -619,7 +618,7 @@ public final class CombatTools { xpGainReason = XPGainReason.PVP; Player defender = (Player) target; - if (defender.isOnline() && pluginRef.getSkillTools().cooldownExpired(mcMMOPlayer.getRespawnATS(), Misc.PLAYER_RESPAWN_COOLDOWN_SECONDS)) { + if (defender.isOnline() && pluginRef.getSkillTools().cooldownExpired(mcMMOPlayer.getRespawnATS(), pluginRef.getMiscTools().PLAYER_RESPAWN_COOLDOWN_SECONDS)) { baseXPMultiplier = 20 * pluginRef.getDynamicSettingsManager().getExperienceManager().getSpecialCombatXP(SpecialXPKey.PVP); } } else { @@ -886,7 +885,7 @@ public final class CombatTools { Player player = (Player) attacker; - if (Misc.isNPCEntityExcludingVillagers(player) || Misc.isNPCEntityExcludingVillagers(target)) { + if (pluginRef.getMiscTools().isNPCEntityExcludingVillagers(player) || pluginRef.getMiscTools().isNPCEntityExcludingVillagers(target)) { return; } diff --git a/src/main/java/com/gmail/nossr50/util/skills/SkillTools.java b/src/main/java/com/gmail/nossr50/util/skills/SkillTools.java index 81781caaf..460f1c079 100644 --- a/src/main/java/com/gmail/nossr50/util/skills/SkillTools.java +++ b/src/main/java/com/gmail/nossr50/util/skills/SkillTools.java @@ -10,7 +10,6 @@ import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; import com.gmail.nossr50.datatypes.skills.ToolType; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import com.gmail.nossr50.util.StringUtils; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -316,7 +315,7 @@ public class SkillTools { * @return the number of seconds remaining before the cooldown expires */ public int calculateTimeLeft(long deactivatedTimeStamp, int cooldown, Player player) { - return (int) (((deactivatedTimeStamp + (PerksUtils.handleCooldownPerks(player, cooldown) * Misc.TIME_CONVERSION_FACTOR)) - System.currentTimeMillis()) / Misc.TIME_CONVERSION_FACTOR); + return (int) (((deactivatedTimeStamp + (PerksUtils.handleCooldownPerks(player, cooldown) * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR)) - System.currentTimeMillis()) / pluginRef.getMiscTools().TIME_CONVERSION_FACTOR); } /** @@ -328,7 +327,7 @@ public class SkillTools { * @return true if the cooldown is expired */ public boolean cooldownExpired(long deactivatedTimeStamp, int cooldown) { - return System.currentTimeMillis() >= (deactivatedTimeStamp + cooldown) * Misc.TIME_CONVERSION_FACTOR; + return System.currentTimeMillis() >= (deactivatedTimeStamp + cooldown) * pluginRef.getMiscTools().TIME_CONVERSION_FACTOR; } /** @@ -345,7 +344,7 @@ public class SkillTools { Location location = player.getLocation(); for (Player otherPlayer : player.getWorld().getPlayers()) { - if (otherPlayer != player && Misc.isNear(location, otherPlayer.getLocation(), Misc.SKILL_MESSAGE_MAX_SENDING_DISTANCE)) { + if (otherPlayer != player && pluginRef.getMiscTools().isNear(location, otherPlayer.getLocation(), pluginRef.getMiscTools().SKILL_MESSAGE_MAX_SENDING_DISTANCE)) { pluginRef.getNotificationManager().sendNearbyPlayersInformation(otherPlayer, notificationType, key, player.getName()); } } diff --git a/src/main/java/com/gmail/nossr50/util/sounds/SoundManager.java b/src/main/java/com/gmail/nossr50/util/sounds/SoundManager.java index fa07586d9..005176f4f 100644 --- a/src/main/java/com/gmail/nossr50/util/sounds/SoundManager.java +++ b/src/main/java/com/gmail/nossr50/util/sounds/SoundManager.java @@ -2,7 +2,6 @@ package com.gmail.nossr50.util.sounds; import com.gmail.nossr50.config.hocon.sound.SoundSetting; import com.gmail.nossr50.mcMMO; -import com.gmail.nossr50.util.Misc; import org.bukkit.Location; import org.bukkit.Sound; import org.bukkit.SoundCategory; @@ -100,10 +99,10 @@ public class SoundManager { } public float getFizzPitch() { - return 2.6F + (Misc.getRandom().nextFloat() - Misc.getRandom().nextFloat()) * 0.8F; + return 2.6F + (pluginRef.getMiscTools().getRandom().nextFloat() - pluginRef.getMiscTools().getRandom().nextFloat()) * 0.8F; } public float getPopPitch() { - return ((Misc.getRandom().nextFloat() - Misc.getRandom().nextFloat()) * 0.7F + 1.0F) * 2.0F; + return ((pluginRef.getMiscTools().getRandom().nextFloat() - pluginRef.getMiscTools().getRandom().nextFloat()) * 0.7F + 1.0F) * 2.0F; } }