mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Reduced technical debt
This commit is contained in:
parent
f297cd561a
commit
76004c3df9
@ -39,12 +39,9 @@ public class SlimefunItem {
|
|||||||
public static List<SlimefunItem> items = new ArrayList<>();
|
public static List<SlimefunItem> items = new ArrayList<>();
|
||||||
|
|
||||||
public static Map<String, SlimefunItem> mapID = new HashMap<>();
|
public static Map<String, SlimefunItem> mapID = new HashMap<>();
|
||||||
public static List<ItemStack> radioactive = new ArrayList<>();
|
|
||||||
public static Set<String> tickers = new HashSet<>();
|
public static Set<String> tickers = new HashSet<>();
|
||||||
|
|
||||||
public static List<SlimefunItem> all = new ArrayList<>();
|
public static List<SlimefunItem> all = new ArrayList<>();
|
||||||
public static Map<String, Set<ItemHandler>> handlers = new HashMap<>();
|
|
||||||
public static Map<String, SlimefunBlockHandler> blockhandler = new HashMap<>();
|
|
||||||
|
|
||||||
private String id;
|
private String id;
|
||||||
private String hash;
|
private String hash;
|
||||||
@ -256,7 +253,7 @@ public class SlimefunItem {
|
|||||||
for (ItemHandler handler: itemhandlers) {
|
for (ItemHandler handler: itemhandlers) {
|
||||||
Set<ItemHandler> handlerset = getHandlers(handler.toCodename());
|
Set<ItemHandler> handlerset = getHandlers(handler.toCodename());
|
||||||
handlerset.add(handler);
|
handlerset.add(handler);
|
||||||
handlers.put(handler.toCodename(), handlerset);
|
SlimefunPlugin.getUtilities().itemHandlers.put(handler.toCodename(), handlerset);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SlimefunPlugin.getSettings().printOutLoading) {
|
if (SlimefunPlugin.getSettings().printOutLoading) {
|
||||||
@ -439,22 +436,22 @@ public class SlimefunItem {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void register(boolean vanilla, SlimefunBlockHandler handler) {
|
public void register(boolean vanilla, SlimefunBlockHandler handler) {
|
||||||
blockhandler.put(getID(), handler);
|
SlimefunPlugin.getUtilities().blockHandlers.put(getID(), handler);
|
||||||
register(vanilla);
|
register(vanilla);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void register(SlimefunBlockHandler handler) {
|
public void register(SlimefunBlockHandler handler) {
|
||||||
blockhandler.put(getID(), handler);
|
SlimefunPlugin.getUtilities().blockHandlers.put(getID(), handler);
|
||||||
register(false);
|
register(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Set<ItemHandler> getHandlers(String codeid) {
|
public static Set<ItemHandler> getHandlers(String codeid) {
|
||||||
if (handlers.containsKey(codeid)) return handlers.get(codeid);
|
if (SlimefunPlugin.getUtilities().itemHandlers.containsKey(codeid)) return SlimefunPlugin.getUtilities().itemHandlers.get(codeid);
|
||||||
else return new HashSet<>();
|
else return new HashSet<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setRadioactive(ItemStack item) {
|
public static void setRadioactive(ItemStack item) {
|
||||||
radioactive.add(item);
|
SlimefunPlugin.getUtilities().radioactiveItems.add(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ItemStack getItem(String id) {
|
public static ItemStack getItem(String id) {
|
||||||
@ -521,7 +518,7 @@ public class SlimefunItem {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void registerBlockHandler(String id, SlimefunBlockHandler handler) {
|
public static void registerBlockHandler(String id, SlimefunBlockHandler handler) {
|
||||||
blockhandler.put(id, handler);
|
SlimefunPlugin.getUtilities().blockHandlers.put(id, handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void registerChargeableBlock(boolean vanilla, int capacity, ItemHandler... handlers) {
|
public void registerChargeableBlock(boolean vanilla, int capacity, ItemHandler... handlers) {
|
||||||
|
@ -12,8 +12,6 @@ import org.bukkit.entity.Player;
|
|||||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
||||||
@ -218,18 +216,7 @@ public abstract class AContainer extends SlimefunItem {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,15 +1,10 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ClickAction;
|
||||||
@ -110,18 +105,7 @@ public abstract class ADrill extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
ChargableBlock.addCharge(b, -getEnergyConsumption());
|
ChargableBlock.addCharge(b, -getEnergyConsumption());
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@ -15,8 +13,6 @@ import org.bukkit.entity.Player;
|
|||||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
||||||
@ -169,18 +165,7 @@ public abstract class AGenerator extends SlimefunItem {
|
|||||||
if (isProcessing(l)) {
|
if (isProcessing(l)) {
|
||||||
int timeleft = progress.get(l);
|
int timeleft = progress.get(l);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(l), 22, timeleft, processing.get(l).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(l).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(l).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(l).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(l)) {
|
if (ChargableBlock.isChargable(l)) {
|
||||||
if (ChargableBlock.getMaxCharge(l) - ChargableBlock.getCharge(l) >= getEnergyProduction()) {
|
if (ChargableBlock.getMaxCharge(l) - ChargableBlock.getCharge(l) >= getEnergyProduction()) {
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
@ -18,7 +16,6 @@ import org.bukkit.block.BlockFace;
|
|||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
||||||
@ -279,18 +276,7 @@ public abstract class AReactor extends SlimefunItem {
|
|||||||
if (!l.getBlock().getRelative(cooling[new Random().nextInt(cooling.length)]).isLiquid()) explode.add(l);
|
if (!l.getBlock().getRelative(cooling[new Random().nextInt(cooling.length)]).isLiquid()) explode.add(l);
|
||||||
});
|
});
|
||||||
|
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(l), 22, timeleft, processing.get(l).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(l).getTicks()));
|
|
||||||
lore.add(MachineHelper.getCoolant(timeleft, processing.get(l).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(l).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (needsCooling()) {
|
if (needsCooling()) {
|
||||||
boolean coolant = (processing.get(l).getTicks() - timeleft) % 25 == 0;
|
boolean coolant = (processing.get(l).getTicks() - timeleft) % 25 == 0;
|
||||||
|
@ -1,7 +1,14 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.bukkit.inventory.meta.Damageable;
|
||||||
|
import org.bukkit.inventory.meta.ItemMeta;
|
||||||
|
|
||||||
|
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
|
||||||
|
|
||||||
public final class MachineHelper {
|
public final class MachineHelper {
|
||||||
|
|
||||||
@ -80,4 +87,19 @@ public final class MachineHelper {
|
|||||||
return (short) ((item.getType().getMaxDurability() / max) * timeleft);
|
return (short) ((item.getType().getMaxDurability() / max) * timeleft);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void updateProgressbar(BlockMenu menu, int slot, int timeleft, int time, ItemStack indicator) {
|
||||||
|
ItemStack item = indicator.clone();
|
||||||
|
ItemMeta im = item.getItemMeta();
|
||||||
|
((Damageable) im).setDamage(getDurability(item, timeleft, time));
|
||||||
|
im.setDisplayName(" ");
|
||||||
|
List<String> lore = new ArrayList<>();
|
||||||
|
lore.add(getProgress(timeleft, time));
|
||||||
|
lore.add("");
|
||||||
|
lore.add(getTimeLeft(timeleft / 2));
|
||||||
|
im.setLore(lore);
|
||||||
|
item.setItemMeta(im);
|
||||||
|
|
||||||
|
menu.replaceExistingItem(22, item);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -46,7 +46,7 @@ public class BlockPlacer extends SlimefunItem {
|
|||||||
|
|
||||||
SlimefunItem sfItem = SlimefunItem.getByItem(e.getItem());
|
SlimefunItem sfItem = SlimefunItem.getByItem(e.getItem());
|
||||||
if (sfItem != null) {
|
if (sfItem != null) {
|
||||||
if (!SlimefunItem.blockhandler.containsKey(sfItem.getID())) {
|
if (!SlimefunPlugin.getUtilities().blockHandlers.containsKey(sfItem.getID())) {
|
||||||
block.setType(e.getItem().getType());
|
block.setType(e.getItem().getType());
|
||||||
BlockStorage.store(block, sfItem.getID());
|
BlockStorage.store(block, sfItem.getID());
|
||||||
block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, e.getItem().getType());
|
block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, e.getItem().getType());
|
||||||
|
@ -1,8 +1,5 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
@ -55,18 +52,7 @@ public abstract class AutoAnvil extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@ -11,9 +9,7 @@ import org.bukkit.Material;
|
|||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.enchantments.Enchantment;
|
import org.bukkit.enchantments.Enchantment;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.EnchantmentStorageMeta;
|
import org.bukkit.inventory.meta.EnchantmentStorageMeta;
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
||||||
@ -56,18 +52,7 @@ public class AutoDisenchanter extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.Tag;
|
||||||
|
import org.bukkit.block.Block;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
||||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||||
@ -9,15 +14,6 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelpe
|
|||||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
|
||||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||||
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
||||||
import org.bukkit.Material;
|
|
||||||
import org.bukkit.Tag;
|
|
||||||
import org.bukkit.block.Block;
|
|
||||||
import org.bukkit.inventory.ItemStack;
|
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class AutoDrier extends AContainer {
|
public class AutoDrier extends AContainer {
|
||||||
|
|
||||||
@ -40,18 +36,7 @@ public class AutoDrier extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@ -11,9 +9,7 @@ import org.bukkit.Material;
|
|||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.enchantments.Enchantment;
|
import org.bukkit.enchantments.Enchantment;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.EnchantmentStorageMeta;
|
import org.bukkit.inventory.meta.EnchantmentStorageMeta;
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
||||||
@ -56,18 +52,7 @@ public class AutoEnchanter extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,14 +1,10 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
||||||
@ -47,18 +43,7 @@ public abstract class ElectricDustWasher extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0 && getSpeed() < 10) {
|
if (timeleft > 0 && getSpeed() < 10) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import org.bukkit.Material;
|
||||||
import java.util.List;
|
import org.bukkit.block.Block;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
@ -16,12 +17,6 @@ import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
|
|||||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||||
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
||||||
|
|
||||||
import org.bukkit.Material;
|
|
||||||
import org.bukkit.block.Block;
|
|
||||||
import org.bukkit.inventory.ItemStack;
|
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
public abstract class ElectricGoldPan extends AContainer {
|
public abstract class ElectricGoldPan extends AContainer {
|
||||||
|
|
||||||
public ElectricGoldPan(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) {
|
public ElectricGoldPan(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) {
|
||||||
@ -45,18 +40,7 @@ public abstract class ElectricGoldPan extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0 && getSpeed() < 10) {
|
if (timeleft > 0 && getSpeed() < 10) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -10,8 +10,6 @@ import org.bukkit.Material;
|
|||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
|
||||||
@ -142,18 +140,7 @@ public abstract class HeatedPressureChamber extends AContainer {
|
|||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
|
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1,14 +1,9 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
import me.mrCookieSlime.CSCoreLibPlugin.CSCoreLib;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
@ -80,18 +75,7 @@ public abstract class OilPump extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
ChargableBlock.addCharge(b, -getEnergyConsumption());
|
ChargableBlock.addCharge(b, -getEnergyConsumption());
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.machines.electric;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import org.bukkit.Material;
|
||||||
import java.util.List;
|
import org.bukkit.block.Block;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.InvUtils;
|
||||||
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.Item.CustomItem;
|
||||||
@ -15,12 +16,6 @@ import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
|
|||||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||||
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
|
||||||
|
|
||||||
import org.bukkit.Material;
|
|
||||||
import org.bukkit.block.Block;
|
|
||||||
import org.bukkit.inventory.ItemStack;
|
|
||||||
import org.bukkit.inventory.meta.Damageable;
|
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
|
||||||
|
|
||||||
public abstract class Refinery extends AContainer {
|
public abstract class Refinery extends AContainer {
|
||||||
|
|
||||||
public Refinery(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) {
|
public Refinery(Category category, ItemStack item, String name, RecipeType recipeType, ItemStack[] recipe) {
|
||||||
@ -47,18 +42,7 @@ public abstract class Refinery extends AContainer {
|
|||||||
if (isProcessing(b)) {
|
if (isProcessing(b)) {
|
||||||
int timeleft = progress.get(b);
|
int timeleft = progress.get(b);
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ItemStack item = getProgressBar().clone();
|
MachineHelper.updateProgressbar(BlockStorage.getInventory(b), 22, timeleft, processing.get(b).getTicks(), getProgressBar());
|
||||||
ItemMeta im = item.getItemMeta();
|
|
||||||
((Damageable) im).setDamage(MachineHelper.getDurability(item, timeleft, processing.get(b).getTicks()));
|
|
||||||
im.setDisplayName(" ");
|
|
||||||
List<String> lore = new ArrayList<>();
|
|
||||||
lore.add(MachineHelper.getProgress(timeleft, processing.get(b).getTicks()));
|
|
||||||
lore.add("");
|
|
||||||
lore.add(MachineHelper.getTimeLeft(timeleft / 2));
|
|
||||||
im.setLore(lore);
|
|
||||||
item.setItemMeta(im);
|
|
||||||
|
|
||||||
BlockStorage.getInventory(b).replaceExistingItem(22, item);
|
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(b)) {
|
if (ChargableBlock.isChargable(b)) {
|
||||||
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
if (ChargableBlock.getCharge(b) < getEnergyConsumption()) return;
|
||||||
|
@ -1451,9 +1451,10 @@ public final class SlimefunSetup {
|
|||||||
b.getWorld().playEffect(b.getLocation(), Effect.STEP_SOUND, b.getType());
|
b.getWorld().playEffect(b.getLocation(), Effect.STEP_SOUND, b.getType());
|
||||||
SlimefunItem sfItem = BlockStorage.check(b);
|
SlimefunItem sfItem = BlockStorage.check(b);
|
||||||
boolean allow = false;
|
boolean allow = false;
|
||||||
|
|
||||||
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
||||||
if (SlimefunItem.blockhandler.containsKey(sfItem.getID())) {
|
if (SlimefunPlugin.getUtilities().blockHandlers.containsKey(sfItem.getID())) {
|
||||||
allow = SlimefunItem.blockhandler.get(sfItem.getID()).onBreak(e.getPlayer(), e.getBlock(), sfItem, UnregisterReason.PLAYER_BREAK);
|
allow = SlimefunPlugin.getUtilities().blockHandlers.get(sfItem.getID()).onBreak(e.getPlayer(), e.getBlock(), sfItem, UnregisterReason.PLAYER_BREAK);
|
||||||
}
|
}
|
||||||
if (allow) {
|
if (allow) {
|
||||||
drops.add(BlockStorage.retrieve(e.getBlock()));
|
drops.add(BlockStorage.retrieve(e.getBlock()));
|
||||||
|
@ -252,8 +252,10 @@ public final class SlimefunPlugin extends JavaPlugin {
|
|||||||
if (SlimefunItem.getByID("ANCIENT_ALTAR") != null) new AncientAltarListener((SlimefunPlugin) instance);
|
if (SlimefunItem.getByID("ANCIENT_ALTAR") != null) new AncientAltarListener((SlimefunPlugin) instance);
|
||||||
}, 0);
|
}, 0);
|
||||||
|
|
||||||
getCommand("slimefun").setExecutor(new SlimefunCommand(this));
|
SlimefunCommand command = new SlimefunCommand(this);
|
||||||
getCommand("slimefun").setTabCompleter(new SlimefunTabCompleter());
|
|
||||||
|
getCommand("slimefun").setExecutor(command);
|
||||||
|
getCommand("slimefun").setTabCompleter(new SlimefunTabCompleter(command));
|
||||||
|
|
||||||
// Armor Update Task
|
// Armor Update Task
|
||||||
if (config.getBoolean("options.enable-armor-effects")) {
|
if (config.getBoolean("options.enable-armor-effects")) {
|
||||||
@ -273,7 +275,7 @@ public final class SlimefunPlugin extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (ItemStack radioactive: SlimefunItem.radioactive) {
|
for (ItemStack radioactive: utilities.radioactiveItems) {
|
||||||
if (p.getInventory().containsAtLeast(radioactive, 1) || SlimefunManager.isItemSimiliar(p.getInventory().getItemInOffHand(), radioactive, true)) {
|
if (p.getInventory().containsAtLeast(radioactive, 1) || SlimefunManager.isItemSimiliar(p.getInventory().getItemInOffHand(), radioactive, true)) {
|
||||||
// Check if player is wearing the hazmat suit
|
// Check if player is wearing the hazmat suit
|
||||||
// If so, break the loop
|
// If so, break the loop
|
||||||
@ -364,12 +366,6 @@ public final class SlimefunPlugin extends JavaPlugin {
|
|||||||
SlimefunItem.all = null;
|
SlimefunItem.all = null;
|
||||||
SlimefunItem.items = null;
|
SlimefunItem.items = null;
|
||||||
SlimefunItem.mapID = null;
|
SlimefunItem.mapID = null;
|
||||||
SlimefunItem.handlers = null;
|
|
||||||
SlimefunItem.radioactive = null;
|
|
||||||
SlimefunCommand.arguments = null;
|
|
||||||
SlimefunCommand.descriptions = null;
|
|
||||||
SlimefunCommand.tabs = null;
|
|
||||||
SlimefunItem.blockhandler = null;
|
|
||||||
BlockMenuPreset.presets = null;
|
BlockMenuPreset.presets = null;
|
||||||
ChargableBlock.capacitors = null;
|
ChargableBlock.capacitors = null;
|
||||||
ChargableBlock.maxCharges = null;
|
ChargableBlock.maxCharges = null;
|
||||||
|
@ -529,7 +529,7 @@ public abstract class ProgrammableAndroid extends SlimefunItem {
|
|||||||
if (!blockblacklist.contains(block.getType()) && !drops.isEmpty() && CSCoreLib.getLib().getProtectionManager().canBuild(UUID.fromString(BlockStorage.getLocationInfo(b.getLocation(), "owner")), block)) {
|
if (!blockblacklist.contains(block.getType()) && !drops.isEmpty() && CSCoreLib.getLib().getProtectionManager().canBuild(UUID.fromString(BlockStorage.getLocationInfo(b.getLocation(), "owner")), block)) {
|
||||||
SlimefunItem item = BlockStorage.check(block);
|
SlimefunItem item = BlockStorage.check(block);
|
||||||
if (item != null) {
|
if (item != null) {
|
||||||
if (fits(b, item.getItem()) && SlimefunItem.blockhandler.containsKey(item.getID()) && SlimefunItem.blockhandler.get(item.getID()).onBreak(null, block, item, UnregisterReason.ANDROID_DIG)) {
|
if (fits(b, item.getItem()) && SlimefunPlugin.getUtilities().blockHandlers.containsKey(item.getID()) && SlimefunPlugin.getUtilities().blockHandlers.get(item.getID()).onBreak(null, block, item, UnregisterReason.ANDROID_DIG)) {
|
||||||
pushItems(b, BlockStorage.retrieve(block));
|
pushItems(b, BlockStorage.retrieve(block));
|
||||||
block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, block.getType());
|
block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, block.getType());
|
||||||
block.setType(Material.PLAYER_HEAD);
|
block.setType(Material.PLAYER_HEAD);
|
||||||
|
@ -35,17 +35,17 @@ import me.mrCookieSlime.Slimefun.Objects.Research;
|
|||||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||||
import me.mrCookieSlime.Slimefun.Setup.Messages;
|
import me.mrCookieSlime.Slimefun.Setup.Messages;
|
||||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||||
import me.mrCookieSlime.Slimefun.api.SlimefunGuideLayout;
|
|
||||||
import me.mrCookieSlime.Slimefun.api.PlayerProfile;
|
import me.mrCookieSlime.Slimefun.api.PlayerProfile;
|
||||||
import me.mrCookieSlime.Slimefun.api.Slimefun;
|
import me.mrCookieSlime.Slimefun.api.Slimefun;
|
||||||
|
import me.mrCookieSlime.Slimefun.api.SlimefunGuideLayout;
|
||||||
|
|
||||||
public class SlimefunCommand implements CommandExecutor, Listener {
|
public class SlimefunCommand implements CommandExecutor, Listener {
|
||||||
|
|
||||||
public SlimefunPlugin plugin;
|
public SlimefunPlugin plugin;
|
||||||
|
|
||||||
public static List<String> arguments = new ArrayList<>();
|
private List<String> arguments = new ArrayList<>();
|
||||||
public static List<String> descriptions = new ArrayList<>();
|
private List<String> descriptions = new ArrayList<>();
|
||||||
public static List<String> tabs = new ArrayList<>();
|
private List<String> tabs = new ArrayList<>();
|
||||||
|
|
||||||
public SlimefunCommand(SlimefunPlugin plugin) {
|
public SlimefunCommand(SlimefunPlugin plugin) {
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
@ -319,4 +319,8 @@ public class SlimefunCommand implements CommandExecutor, Listener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<String> getTabArguments() {
|
||||||
|
return tabs;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -12,10 +12,16 @@ import org.bukkit.command.TabCompleter;
|
|||||||
|
|
||||||
public class SlimefunTabCompleter implements TabCompleter {
|
public class SlimefunTabCompleter implements TabCompleter {
|
||||||
|
|
||||||
|
private SlimefunCommand command;
|
||||||
|
|
||||||
|
public SlimefunTabCompleter(SlimefunCommand command) {
|
||||||
|
this.command = command;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<String> onTabComplete(CommandSender sender, Command cmd, String label, String[] args) {
|
public List<String> onTabComplete(CommandSender sender, Command cmd, String label, String[] args) {
|
||||||
if (args.length == 1) {
|
if (args.length == 1) {
|
||||||
return createReturnList(SlimefunCommand.tabs, args[0]);
|
return createReturnList(command.getTabArguments(), args[0]);
|
||||||
}
|
}
|
||||||
else if (args.length == 3) {
|
else if (args.length == 3) {
|
||||||
if (args[0].equalsIgnoreCase("give")) {
|
if (args[0].equalsIgnoreCase("give")) {
|
||||||
|
@ -70,8 +70,8 @@ public class ToolListener implements Listener {
|
|||||||
if (sfItem != null && !sfItem.isDisabled() && !(sfItem instanceof NotPlaceable)) {
|
if (sfItem != null && !sfItem.isDisabled() && !(sfItem instanceof NotPlaceable)) {
|
||||||
BlockStorage.addBlockInfo(e.getBlock(), "id", sfItem.getID(), true);
|
BlockStorage.addBlockInfo(e.getBlock(), "id", sfItem.getID(), true);
|
||||||
|
|
||||||
if (SlimefunItem.blockhandler.containsKey(sfItem.getID())) {
|
if (utilities.blockHandlers.containsKey(sfItem.getID())) {
|
||||||
SlimefunItem.blockhandler.get(sfItem.getID()).onPlace(e.getPlayer(), e.getBlock(), sfItem);
|
utilities.blockHandlers.get(sfItem.getID()).onPlace(e.getPlayer(), e.getBlock(), sfItem);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
for (ItemHandler handler : SlimefunItem.getHandlers("BlockPlaceHandler")) {
|
for (ItemHandler handler : SlimefunItem.getHandlers("BlockPlaceHandler")) {
|
||||||
@ -186,8 +186,8 @@ public class ToolListener implements Listener {
|
|||||||
SlimefunItem sfItem = BlockStorage.check(e.getBlock().getRelative(BlockFace.UP));
|
SlimefunItem sfItem = BlockStorage.check(e.getBlock().getRelative(BlockFace.UP));
|
||||||
|
|
||||||
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
||||||
if (SlimefunItem.blockhandler.containsKey(sfItem.getID())) {
|
if (utilities.blockHandlers.containsKey(sfItem.getID())) {
|
||||||
allow = SlimefunItem.blockhandler.get(sfItem.getID()).onBreak(e.getPlayer(), block2, sfItem, UnregisterReason.PLAYER_BREAK);
|
allow = utilities.blockHandlers.get(sfItem.getID()).onBreak(e.getPlayer(), block2, sfItem, UnregisterReason.PLAYER_BREAK);
|
||||||
}
|
}
|
||||||
if (allow) {
|
if (allow) {
|
||||||
block2.getWorld().dropItemNaturally(block2.getLocation(), BlockStorage.retrieve(block2));
|
block2.getWorld().dropItemNaturally(block2.getLocation(), BlockStorage.retrieve(block2));
|
||||||
@ -203,8 +203,8 @@ public class ToolListener implements Listener {
|
|||||||
SlimefunItem sfItem = BlockStorage.check(e.getBlock());
|
SlimefunItem sfItem = BlockStorage.check(e.getBlock());
|
||||||
|
|
||||||
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
if (sfItem != null && !(sfItem instanceof HandledBlock)) {
|
||||||
if (SlimefunItem.blockhandler.containsKey(sfItem.getID())) {
|
if (utilities.blockHandlers.containsKey(sfItem.getID())) {
|
||||||
allow = SlimefunItem.blockhandler.get(sfItem.getID()).onBreak(e.getPlayer(), e.getBlock(), sfItem, UnregisterReason.PLAYER_BREAK);
|
allow = utilities.blockHandlers.get(sfItem.getID()).onBreak(e.getPlayer(), e.getBlock(), sfItem, UnregisterReason.PLAYER_BREAK);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// Walk over all registered block break handlers until one says that it'll handle it.
|
// Walk over all registered block break handlers until one says that it'll handle it.
|
||||||
@ -256,8 +256,8 @@ public class ToolListener implements Listener {
|
|||||||
blocks.remove();
|
blocks.remove();
|
||||||
if (!item.getID().equalsIgnoreCase("HARDENED_GLASS") && !item.getID().equalsIgnoreCase("WITHER_PROOF_OBSIDIAN") && !item.getID().equalsIgnoreCase("WITHER_PROOF_GLASS") && !item.getID().equalsIgnoreCase("FORCEFIELD_PROJECTOR") && !item.getID().equalsIgnoreCase("FORCEFIELD_RELAY")) {
|
if (!item.getID().equalsIgnoreCase("HARDENED_GLASS") && !item.getID().equalsIgnoreCase("WITHER_PROOF_OBSIDIAN") && !item.getID().equalsIgnoreCase("WITHER_PROOF_GLASS") && !item.getID().equalsIgnoreCase("FORCEFIELD_PROJECTOR") && !item.getID().equalsIgnoreCase("FORCEFIELD_RELAY")) {
|
||||||
boolean success = true;
|
boolean success = true;
|
||||||
if (SlimefunItem.blockhandler.containsKey(item.getID())) {
|
if (utilities.blockHandlers.containsKey(item.getID())) {
|
||||||
success = SlimefunItem.blockhandler.get(item.getID()).onBreak(null, block, item, UnregisterReason.EXPLODE);
|
success = utilities.blockHandlers.get(item.getID()).onBreak(null, block, item, UnregisterReason.EXPLODE);
|
||||||
}
|
}
|
||||||
if (success) {
|
if (success) {
|
||||||
BlockStorage.clearBlockInfo(block);
|
BlockStorage.clearBlockInfo(block);
|
||||||
|
@ -17,6 +17,8 @@ import org.bukkit.inventory.ItemStack;
|
|||||||
|
|
||||||
import me.mrCookieSlime.Slimefun.GEO.OreGenResource;
|
import me.mrCookieSlime.Slimefun.GEO.OreGenResource;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunBlockHandler;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.handlers.ItemHandler;
|
||||||
import me.mrCookieSlime.Slimefun.Setup.PostSlimefunLoadingHandler;
|
import me.mrCookieSlime.Slimefun.Setup.PostSlimefunLoadingHandler;
|
||||||
import me.mrCookieSlime.Slimefun.ancient_altar.AltarRecipe;
|
import me.mrCookieSlime.Slimefun.ancient_altar.AltarRecipe;
|
||||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||||
@ -39,6 +41,10 @@ public final class Utilities {
|
|||||||
|
|
||||||
public int vanillaItems = 0;
|
public int vanillaItems = 0;
|
||||||
|
|
||||||
|
public Set<ItemStack> radioactiveItems = new HashSet<>();
|
||||||
|
public Map<String, Set<ItemHandler>> itemHandlers = new HashMap<>();
|
||||||
|
public Map<String, SlimefunBlockHandler> blockHandlers = new HashMap<>();
|
||||||
|
|
||||||
public List<Category> currentlyEnabledCategories = new ArrayList<>();
|
public List<Category> currentlyEnabledCategories = new ArrayList<>();
|
||||||
|
|
||||||
public Map<String, BlockStorage> worlds = new HashMap<>();
|
public Map<String, BlockStorage> worlds = new HashMap<>();
|
||||||
|
Loading…
Reference in New Issue
Block a user