use settings shortcuts

This commit is contained in:
jascotty2 2019-10-04 15:12:38 -05:00
parent bb8888abe6
commit 94a2965035
10 changed files with 50 additions and 65 deletions

View File

@ -172,7 +172,7 @@ public class EpicFarming extends SongodaPlugin {
@Override
public void onConfigReload() {
this.setLocale(getConfig().getString("System.Language Mode"), true);
this.setLocale(Settings.LANGUGE_MODE.getString(), true);
this.locale.reloadMessages();
loadLevelManager();
}

View File

@ -8,8 +8,6 @@ import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
public class CommandBoost extends AbstractCommand {

View File

@ -1,8 +1,8 @@
package com.songoda.epicfarming.farming;
import com.songoda.core.compatibility.CompatibleMaterial;
import com.songoda.core.compatibility.CompatibleParticleHandler;
import com.songoda.core.compatibility.CompatibleSound;
import com.songoda.core.compatibility.ServerVersion;
import com.songoda.core.hooks.EconomyManager;
import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.gui.OverviewGui;
@ -19,9 +19,9 @@ public class Farm {
private static final Random random = new Random();
private final List<Block> cachedCrops = new ArrayList<>();
private final List<ItemStack> items = new ArrayList<>();
private Location location;
private Level level;
private List<ItemStack> items = new ArrayList<>();
private OverviewGui opened = null;
private UUID placedBy;
private UUID viewing = null;
@ -91,20 +91,17 @@ public class Farm {
}
Location loc = location.clone().add(.5, .5, .5);
tillLand(location);
if (!ServerVersion.isServerVersionAtLeast(ServerVersion.V1_12)) return;
player.getWorld().spawnParticle(org.bukkit.Particle.valueOf(instance.getConfig().getString("Main.Upgrade Particle Type")), loc, 200, .5, .5, .5);
CompatibleParticleHandler.spawnParticles(Settings.PARTICLE_TYPE.getString(), loc, 200, .5, .5, .5);
if (instance.getLevelManager().getHighestLevel() != level) {
player.playSound(player.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 0.6F, 15.0F);
CompatibleSound.ENTITY_PLAYER_LEVELUP.play(player, 0.6F, 15.0F);
} else {
player.playSound(player.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 2F, 25.0F);
CompatibleSound.ENTITY_PLAYER_LEVELUP.play(player, 2F, 25.0F);
if (!ServerVersion.isServerVersionAtLeast(ServerVersion.V1_13)) return;
player.playSound(player.getLocation(), Sound.BLOCK_NOTE_BLOCK_CHIME, 2F, 25.0F);
Bukkit.getScheduler().scheduleSyncDelayedTask(instance, () -> player.playSound(player.getLocation(), Sound.BLOCK_NOTE_BLOCK_CHIME, 1.2F, 35.0F), 5L);
Bukkit.getScheduler().scheduleSyncDelayedTask(instance, () -> player.playSound(player.getLocation(), Sound.BLOCK_NOTE_BLOCK_CHIME, 1.8F, 35.0F), 10L);
CompatibleSound.BLOCK_NOTE_BLOCK_CHIME.play(player, 2F, 25.0F);
Bukkit.getScheduler().scheduleSyncDelayedTask(instance, () -> CompatibleSound.BLOCK_NOTE_BLOCK_CHIME.play(player, 1.2F, 35.0F), 5L);
Bukkit.getScheduler().scheduleSyncDelayedTask(instance, () -> CompatibleSound.BLOCK_NOTE_BLOCK_CHIME.play(player, 1.8F, 35.0F), 10L);
}
}

View File

@ -125,7 +125,7 @@ public class OverviewGui extends Gui {
}
if (plugin.getConfig().getBoolean("Main.Upgrade With Economy") && player != null && player.hasPermission("EpicFarming.Upgrade.ECO")) {
if (Settings.UPGRADE_WITH_ECONOMY.getBoolean() && player != null && player.hasPermission("EpicFarming.Upgrade.ECO")) {
setButton(15, GuiUtils.createButtonItem(Settings.ECO_ICON.getMaterial(CompatibleMaterial.SUNFLOWER),
plugin.getLocale().getMessage("interface.button.upgradewitheconomy").getMessage(),

View File

@ -1,5 +1,6 @@
package com.songoda.epicfarming.listeners;
import com.songoda.core.compatibility.CompatibleMaterial;
import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.farming.Farm;
import com.songoda.epicfarming.farming.FarmManager;
@ -60,12 +61,10 @@ public class BlockListeners implements Listener {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onBlockPlace(BlockPlaceEvent e) {
Material farmBlock = Material.valueOf(instance.getConfig().getString("Main.Farm Block Material"));
boolean allowNonCommandIssued = instance.getConfig().getBoolean("Main.Allow Non Command Issued Farm Items");
Material farmBlock = Settings.FARM_BLOCK_MATERIAL.getMaterial(CompatibleMaterial.END_ROD).getBlockMaterial();
if (e.getPlayer().getItemInHand().getType() != farmBlock
|| instance.getLevelFromItem(e.getItemInHand()) == 0 && !allowNonCommandIssued) return;
|| instance.getLevelFromItem(e.getItemInHand()) == 0 && !Settings.NON_COMMAND_FARMS.getBoolean()) return;
if (e.getBlockAgainst().getType() == farmBlock) e.setCancelled(true);
@ -105,6 +104,7 @@ public class BlockListeners implements Listener {
}
private boolean checkForFarm(Location location) {
Material farmBlock = Settings.FARM_BLOCK_MATERIAL.getMaterial(CompatibleMaterial.END_ROD).getBlockMaterial();
FarmManager farmManager = instance.getFarmManager();
@ -119,7 +119,7 @@ public class BlockListeners implements Listener {
for (int fy = -2; fy <= 2; fy++) {
for (int fz = -radius; fz <= radius; fz++) {
Block b2 = block.getWorld().getBlockAt(bx + fx, by + fy, bz + fz);
if (b2.getType() == Material.valueOf(instance.getConfig().getString("Main.Farm Block Material"))) {
if (b2.getType() == farmBlock) {
if (!farmManager.getFarms().containsKey(b2.getLocation())) continue;
if (level.getRadius() != farmManager.getFarm(b2.getLocation()).getLevel().getRadius())
continue;
@ -134,7 +134,7 @@ public class BlockListeners implements Listener {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onBlockBreak(BlockBreakEvent event) {
if (event.getBlock().getType() != Settings.FARM_BLOCK_MATERIAL.getMaterial().getMaterial())
if (event.getBlock().getType() != Settings.FARM_BLOCK_MATERIAL.getMaterial(CompatibleMaterial.END_ROD).getMaterial())
return;
Farm farm = instance.getFarmManager().removeFarm(event.getBlock().getLocation());
@ -190,7 +190,7 @@ public class BlockListeners implements Listener {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onBlockExplode(BlockExplodeEvent event) {
if (event.getBlock().getType() != Material.valueOf(instance.getConfig().getString("Main.Farm Block Material")))
if (event.getBlock().getType() != Settings.FARM_BLOCK_MATERIAL.getMaterial(CompatibleMaterial.END_ROD).getMaterial())
return;
Farm farm = instance.getFarmManager().removeFarm(event.getBlock().getLocation());

View File

@ -11,7 +11,7 @@ import java.util.stream.Collectors;
public class Settings {
static final Config config = EpicFarming.getInstance().getConfig().getCoreConfig();
static final Config config = EpicFarming.getInstance().getCoreConfig();
public static final ConfigSetting UPGRADE_WITH_ECONOMY = new ConfigSetting(config, "Main.Upgrade With Economy", true,
"Should you be able to upgrade farmses with economy?");

View File

@ -4,6 +4,7 @@ import com.songoda.core.hooks.EntityStackerManager;
import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.boost.BoostData;
import com.songoda.epicfarming.farming.Farm;
import com.songoda.epicfarming.settings.Settings;
import com.songoda.epicfarming.utils.EntityInfo;
import com.songoda.epicfarming.utils.Methods;
import org.bukkit.Bukkit;
@ -26,13 +27,14 @@ public class EntityTask extends BukkitRunnable {
private static final Map<Entity, Integer> ticksLived = new HashMap<>();
private static EntityTask instance;
private static EpicFarming plugin;
private final int autoBreedCap = Settings.AUTO_BREEDING_CAP.getInt();
public static EntityTask startTask(EpicFarming pl) {
if (instance == null) {
instance = new EntityTask();
plugin = pl;
instance.runTaskTimer(plugin, 0, plugin.getConfig().getInt("Main.Entity Tick Speed"));
if (instance != null && !instance.isCancelled()) {
instance.cancel();
}
instance = new EntityTask();
instance.runTaskTimer(plugin = pl, 0, Settings.ENTITY_TICK_SPEED.getInt());
return instance;
}
@ -156,7 +158,7 @@ public class EntityTask extends BukkitRunnable {
return;
}
if (entry.getValue() >= 2 && entry.getValue() < plugin.getConfig().getInt("Main.Auto Breeding Cap")) {
if (entry.getValue() >= 2 && entry.getValue() < autoBreedCap) {
EntityType entityType = entry.getKey();

View File

@ -6,6 +6,7 @@ import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.boost.BoostData;
import com.songoda.epicfarming.farming.Crop;
import com.songoda.epicfarming.farming.Farm;
import com.songoda.epicfarming.settings.Settings;
import com.songoda.epicfarming.utils.CropType;
import com.songoda.epicfarming.utils.Methods;
import org.bukkit.Material;
@ -25,12 +26,11 @@ public class FarmTask extends BukkitRunnable {
Random random = new Random();
public static FarmTask startTask(EpicFarming pl) {
if (instance == null) {
instance = new FarmTask();
plugin = pl;
instance.runTaskTimer(plugin, 0, plugin.getConfig().getInt("Main.Growth Tick Speed"));
if (instance != null && !instance.isCancelled()) {
instance.cancel();
}
instance = new FarmTask();
instance.runTaskTimer(plugin = pl, 0, Settings.GROWTH_TICK_SPEED.getInt());
return instance;
}
@ -121,15 +121,4 @@ public class FarmTask extends BukkitRunnable {
return farm.getCachedCrops();
}
private boolean canMove(Inventory inventory, ItemStack item) {
if (inventory.firstEmpty() != -1) return true;
for (ItemStack stack : inventory.getContents()) {
if (stack.isSimilar(item) && stack.getAmount() < stack.getMaxStackSize()) {
return true;
}
}
return false;
}
}

View File

@ -3,6 +3,7 @@ package com.songoda.epicfarming.tasks;
import com.songoda.core.utils.BlockUtils;
import com.songoda.epicfarming.EpicFarming;
import com.songoda.epicfarming.farming.Crop;
import com.songoda.epicfarming.settings.Settings;
import com.songoda.epicfarming.utils.CropType;
import org.bukkit.Location;
import org.bukkit.scheduler.BukkitRunnable;
@ -13,16 +14,16 @@ public class GrowthTask extends BukkitRunnable {
private static GrowthTask instance;
private Map<Location, Crop> liveCrops = new HashMap<>();
private final Map<Location, Crop> liveCrops = new HashMap<>();
private static final Random random = new Random();
public static GrowthTask startTask(EpicFarming plugin) {
if (instance == null) {
instance = new GrowthTask();
instance.runTaskTimer(plugin, 0, plugin.getConfig().getInt("Main.Growth Tick Speed"));
if (instance != null && !instance.isCancelled()) {
instance.cancel();
}
instance = new GrowthTask();
instance.runTaskTimer(plugin, 0, Settings.FARM_TICK_SPEED.getInt());
return instance;
}
@ -36,7 +37,7 @@ public class GrowthTask extends BukkitRunnable {
int x = cropLocation.getBlockX() >> 4;
int z = cropLocation.getBlockZ() >> 4;
if (!cropLocation.getWorld().isChunkLoaded(x, z)) {
if (cropLocation.getWorld() == null || !cropLocation.getWorld().isChunkLoaded(x, z)) {
continue;
}

View File

@ -1,7 +1,13 @@
package com.songoda.epicfarming.utils;
import com.songoda.core.utils.TextUtils;
import com.songoda.epicfarming.EpicFarming;
import org.bukkit.*;
import com.songoda.epicfarming.settings.Settings;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.entity.Item;
import org.bukkit.inventory.ItemStack;
@ -17,7 +23,7 @@ import java.util.concurrent.TimeUnit;
public class Methods {
private static Map<String, Location> serializeCache = new HashMap<>();
private final static Map<String, Location> serializeCache = new HashMap<>();
public static String formatName(int level, boolean full) {
String name = EpicFarming.getInstance().getLocale().getMessage("general.nametag.farm")
@ -25,16 +31,16 @@ public class Methods {
String info = "";
if (full) {
info += Methods.convertToInvisibleString(level + ":");
info += TextUtils.convertToInvisibleString(level + ":");
}
return info + Methods.formatText(name);
return info + name;
}
public static void animate(Location location, Material mat) {
if (!EpicFarming.getInstance().getConfig().getBoolean("Main.Animate")) return;
if (!Settings.ANIMATE.getBoolean()) return;
Block block = location.getBlock();
if (block.getRelative(0, 1, 0).getType() != Material.AIR && EpicFarming.getInstance().getConfig().getBoolean("Main.Do Dispenser Animation"))
if (block.getRelative(0, 1, 0).getType() != Material.AIR)
return;
Item i = block.getWorld().dropItem(block.getLocation().add(0.5, 1, 0.5), new ItemStack(mat));
@ -63,14 +69,6 @@ public class Methods {
return ChatColor.translateAlternateColorCodes('&', text);
}
public static String convertToInvisibleString(String s) {
if (s == null || s.equals(""))
return "";
StringBuilder hidden = new StringBuilder();
for (char c : s.toCharArray()) hidden.append(ChatColor.COLOR_CHAR + "").append(c);
return hidden.toString();
}
public static long parseTime(String input) {
long result = 0;
StringBuilder number = new StringBuilder();