mirror of
https://github.com/songoda/EpicFarming.git
synced 2024-09-29 07:07:29 +02:00
use settings shortcuts
This commit is contained in:
parent
bb8888abe6
commit
94a2965035
@ -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();
|
||||
}
|
||||
|
@ -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 {
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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(),
|
||||
|
@ -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());
|
||||
|
@ -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?");
|
||||
|
@ -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();
|
||||
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
}
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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();
|
||||
|
Loading…
Reference in New Issue
Block a user