mirror of
https://github.com/GTNewHorizons/Applied-Energistics-2-Unofficial.git
synced 2026-10-26 14:25:20 +00:00
Refactor blocking mode ignore item list (#678)
This commit is contained in:
1 parent
5509a0f3e4
commit
367454706e
9 files changed
+110
-207
No files matched your search
+1
-1
@@ -44,5 +44,5 @@ dependencies {
|
||||
runtimeOnlyNonPublishable('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
|
||||
runtimeOnlyNonPublishable('com.github.GTNewHorizons:ThaumicEnergistics:1.7.6-GTNH:dev') { transitive = false }
|
||||
runtimeOnlyNonPublishable('com.github.GTNewHorizons:AE2FluidCraft-Rework:1.4.29-gtnh:dev') { transitive = false }
|
||||
runtimeOnlyNonPublishable("com.github.GTNewHorizons:BloodMagic:1.7.5") { transitive = false }
|
||||
//runtimeOnlyNonPublishable("com.github.GTNewHorizons:BloodMagic:1.7.5") { transitive = false }
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package appeng.api.features;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
/**
|
||||
* Registry for items that are ignored by blocking mode of interfaces.
|
||||
*/
|
||||
public interface IBlockingModeIgnoreItemRegistry {
|
||||
|
||||
/**
|
||||
* Registers item to be ignored by blocking mode of interfaces. Matches with any metadata.
|
||||
*/
|
||||
void register(Item item);
|
||||
|
||||
/**
|
||||
* Registers item to be ignored by blocking mode of interfaces. Matches with the supplied metadata.
|
||||
*/
|
||||
void register(ItemStack itemStack);
|
||||
|
||||
/**
|
||||
* Checks if given item should be ignored by blocking mode.
|
||||
*/
|
||||
boolean isIgnored(ItemStack itemStack);
|
||||
}
|
||||
@@ -73,6 +73,9 @@ public interface IRegistryContainer {
|
||||
*/
|
||||
IInscriberRegistry inscriber();
|
||||
|
||||
/**
|
||||
* Allows you to register certain class to be displayed on interface terminals.
|
||||
*/
|
||||
IInterfaceTerminalRegistry interfaceTerminal();
|
||||
|
||||
/**
|
||||
@@ -85,6 +88,11 @@ public interface IRegistryContainer {
|
||||
*/
|
||||
IP2PTunnelRegistry p2pTunnel();
|
||||
|
||||
/**
|
||||
* Allows you to register items that are ignored by blocking mode of interfaces.
|
||||
*/
|
||||
IBlockingModeIgnoreItemRegistry blockingModeIgnoreItem();
|
||||
|
||||
/**
|
||||
* get access to the ammo registry.
|
||||
*/
|
||||
|
||||
@@ -58,6 +58,7 @@ import appeng.core.features.AEFeature;
|
||||
import appeng.core.features.DefinitionConverter;
|
||||
import appeng.core.features.IAEFeature;
|
||||
import appeng.core.features.IFeatureHandler;
|
||||
import appeng.core.features.registries.BlockingModeIgnoreItemRegistry;
|
||||
import appeng.core.features.registries.P2PTunnelRegistry;
|
||||
import appeng.core.features.registries.entries.BasicCellHandler;
|
||||
import appeng.core.features.registries.entries.CreativeCellHandler;
|
||||
@@ -65,7 +66,6 @@ import appeng.core.features.registries.entries.VoidCellHandler;
|
||||
import appeng.core.localization.GuiText;
|
||||
import appeng.core.localization.PlayerMessages;
|
||||
import appeng.core.stats.PlayerStatsRegistration;
|
||||
import appeng.helpers.BlockingModeIgnoreList;
|
||||
import appeng.hooks.AETrading;
|
||||
import appeng.hooks.SoundEventHandler;
|
||||
import appeng.hooks.TickHandler;
|
||||
@@ -859,7 +859,6 @@ public final class Registration {
|
||||
/**
|
||||
* Populate list of items that blocking mode should ignore
|
||||
*/
|
||||
BlockingModeIgnoreList.registerIgnoredMaterials();
|
||||
|
||||
BlockingModeIgnoreItemRegistry.instance().registerDefault();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package appeng.core.features.registries;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import com.gtnewhorizon.gtnhlib.util.map.ItemStackMap;
|
||||
|
||||
import appeng.api.features.IBlockingModeIgnoreItemRegistry;
|
||||
import cpw.mods.fml.common.Loader;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
|
||||
public class BlockingModeIgnoreItemRegistry implements IBlockingModeIgnoreItemRegistry {
|
||||
|
||||
private static BlockingModeIgnoreItemRegistry INSTANCE;
|
||||
|
||||
private final Set<Item> items = new HashSet<>();
|
||||
private final ItemStackMap<Boolean> itemStacks = new ItemStackMap<>();
|
||||
|
||||
BlockingModeIgnoreItemRegistry() {
|
||||
INSTANCE = this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void register(Item item) {
|
||||
this.items.add(item);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void register(ItemStack itemStack) {
|
||||
this.itemStacks.put(itemStack, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isIgnored(ItemStack itemStack) {
|
||||
return this.items.contains(itemStack.getItem()) || itemStacks.containsKey(itemStack);
|
||||
}
|
||||
|
||||
public static BlockingModeIgnoreItemRegistry instance() {
|
||||
return INSTANCE;
|
||||
}
|
||||
|
||||
public void registerDefault() {
|
||||
if (Loader.isModLoaded("AWWayofTime")) { // blood magic
|
||||
register(GameRegistry.findItem("AWWayofTime", "weakBloodOrb"));
|
||||
register(GameRegistry.findItem("AWWayofTime", "apprenticeBloodOrb"));
|
||||
register(GameRegistry.findItem("AWWayofTime", "magicianBloodOrb"));
|
||||
register(GameRegistry.findItem("AWWayofTime", "masterBloodOrb"));
|
||||
register(GameRegistry.findItem("AWWayofTime", "archmageBloodOrb"));
|
||||
register(GameRegistry.findItem("AWWayofTime", "transcendentBloodOrb"));
|
||||
|
||||
if (Loader.isModLoaded("Avaritia")) {
|
||||
register(GameRegistry.findItem("Avaritia", "Orb_Armok"));
|
||||
}
|
||||
|
||||
if (Loader.isModLoaded("ForbiddenMagic")) {
|
||||
register(GameRegistry.findItem("ForbiddenMagic", "EldritchOrb"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
package appeng.core.features.registries;
|
||||
|
||||
import appeng.api.features.IBlockingModeIgnoreItemRegistry;
|
||||
import appeng.api.features.IGrinderRegistry;
|
||||
import appeng.api.features.IInscriberRegistry;
|
||||
import appeng.api.features.IInterfaceTerminalRegistry;
|
||||
@@ -49,6 +50,7 @@ public class RegistryContainer implements IRegistryContainer {
|
||||
private final IWirelessTermRegistry wireless = new WirelessRegistry();
|
||||
private final IGridCacheRegistry gridCache = new GridCacheRegistry();
|
||||
private final IP2PTunnelRegistry p2pTunnel = new P2PTunnelRegistry();
|
||||
private final IBlockingModeIgnoreItemRegistry blockingModeIgnoreItem = new BlockingModeIgnoreItemRegistry();
|
||||
private final IMovableRegistry movable = new MovableTileRegistry();
|
||||
private final IMatterCannonAmmoRegistry matterCannonReg = new MatterCannonAmmoRegistry();
|
||||
private final IPlayerRegistry playerRegistry = new PlayerRegistry();
|
||||
@@ -114,6 +116,11 @@ public class RegistryContainer implements IRegistryContainer {
|
||||
return this.p2pTunnel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IBlockingModeIgnoreItemRegistry blockingModeIgnoreItem() {
|
||||
return this.blockingModeIgnoreItem;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IMatterCannonAmmoRegistry matterCannon() {
|
||||
return this.matterCannonReg;
|
||||
|
||||
@@ -1,200 +0,0 @@
|
||||
package appeng.helpers;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import cpw.mods.fml.common.Loader;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import gregtech.api.enums.ItemList;
|
||||
import gregtech.api.enums.Materials;
|
||||
import gregtech.api.enums.OrePrefixes;
|
||||
import gregtech.api.util.GTOreDictUnificator;
|
||||
|
||||
public class BlockingModeIgnoreList {
|
||||
|
||||
private final static ArrayList<String> Shapes = new ArrayList<String>();
|
||||
private final static ArrayList<String> Lenses = new ArrayList<String>();
|
||||
private final static ArrayList<String> Molds = new ArrayList<String>();
|
||||
|
||||
private final static ArrayList<Item> IgnoredItems = new ArrayList<Item>();
|
||||
|
||||
// Name + damage value from ItemList enums
|
||||
private static String getUniqueIdentifier(ItemList item) {
|
||||
return item.getItem().getUnlocalizedName() + item.getItem().getDamage(item.get(1));
|
||||
}
|
||||
|
||||
// Name + damage value from existing ItemStacks
|
||||
private static String getUniqueIdentifier(ItemStack is) {
|
||||
return is.getItem().getUnlocalizedName() + is.getItemDamage();
|
||||
}
|
||||
|
||||
public static void registerIgnoredMaterials() {
|
||||
if (Loader.isModLoaded("dreamcraft")) {
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Bottle));
|
||||
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Plate));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Ingot));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Casing));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Gear));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Gear_Small));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Credit));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Nugget));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Block));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Ball));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Bun));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Bread));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Baguette));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Cylinder));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Anvil));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Arrow));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Name));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Rod));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Bolt));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Round));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Screw));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Ring));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Rod_Long));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Rotor));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Turbine_Blade));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Pipe_Tiny));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Pipe_Small));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Pipe_Medium));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Pipe_Large));
|
||||
Molds.add(getUniqueIdentifier(ItemList.Shape_Mold_Pipe_Huge));
|
||||
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Mold_ToolHeadDrill));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Slicer_Flat));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Slicer_Stripes));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Bottle));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Plate));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Cell));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Ring));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Rod));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Bolt));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Ingot));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Wire));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Casing));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pipe_Tiny));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pipe_Small));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pipe_Medium));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pipe_Large));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pipe_Huge));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Block));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Sword));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Pickaxe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Shovel));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Axe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Hoe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Hammer));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_File));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Saw));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Gear));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Rotor));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Turbine_Blade));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_Small_Gear));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.Shape_Extruder_ToolHeadDrill));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Bottle));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Plate));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Cell));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Ring));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Rod));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Bolt));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Ingot));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Wire));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Casing));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pipe_Tiny));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pipe_Small));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pipe_Medium));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pipe_Large));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pipe_Huge));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Block));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Sword));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Pickaxe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Shovel));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Axe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Hoe));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Hammer));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_File));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Saw));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Gear));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Rotor));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Turbine_Blade));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_Small_Gear));
|
||||
Shapes.add(getUniqueIdentifier(ItemList.White_Dwarf_Shape_Extruder_ToolHeadDrill));
|
||||
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Emerald, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Firestone, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Diamond, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Ruby, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Sapphire, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.GreenSapphire, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Olivine, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.NetherStar, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Topaz, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Tanzanite, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Amethyst, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Opal, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Jasper, 1)));
|
||||
// Spinel
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.FoolsRuby, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.BlueTopaz, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Amber, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Dilithium, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Forcicium, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Forcillium, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Force, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.GarnetRed, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.GarnetYellow, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.EnderPearl, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.EnderEye, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedAir, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedFire, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedEarth, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedEntropy, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedOrder, 1)));
|
||||
Lenses.add(getUniqueIdentifier(GTOreDictUnificator.get(OrePrefixes.lens, Materials.Glass, 1)));
|
||||
|
||||
IgnoredItems.add(GameRegistry.findItem("gregtech", "gt.integrated_circuit"));
|
||||
IgnoredItems.add(GameRegistry.findItem("miscutils", "item.BioRecipeSelector"));
|
||||
IgnoredItems.add(GameRegistry.findItem("miscutils", "item.T3RecipeSelector"));
|
||||
IgnoredItems.add(GameRegistry.findItem("dreamcraft", "item.ReinforcedGlassLense"));
|
||||
IgnoredItems.add(GameRegistry.findItem("dreamcraft", "item.MysteriousCrystalLens"));
|
||||
IgnoredItems.add(GameRegistry.findItem("dreamcraft", "item.RadoxPolymerLens"));
|
||||
IgnoredItems.add(GameRegistry.findItem("dreamcraft", "item.ChromaticLens"));
|
||||
IgnoredItems.add(GameRegistry.findItem("bartworks", "gt.bwMetaGeneratedlens"));
|
||||
}
|
||||
|
||||
if (Loader.isModLoaded("AWWayofTime")) { // blood magic
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "weakBloodOrb"));
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "apprenticeBloodOrb"));
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "magicianBloodOrb"));
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "masterBloodOrb"));
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "archmageBloodOrb"));
|
||||
IgnoredItems.add(GameRegistry.findItem("AWWayofTime", "transcendentBloodOrb"));
|
||||
|
||||
if (Loader.isModLoaded("Avaritia")) {
|
||||
IgnoredItems.add(GameRegistry.findItem("Avaritia", "Orb_Armok"));
|
||||
}
|
||||
|
||||
if (Loader.isModLoaded("ForbiddenMagic")) {
|
||||
IgnoredItems.add(GameRegistry.findItem("ForbiddenMagic", "EldritchOrb"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isIgnored(ItemStack is) {
|
||||
if (is != null) {
|
||||
String uniqueIdentifier = getUniqueIdentifier(is);
|
||||
Item item = is.getItem();
|
||||
|
||||
if (IgnoredItems.contains(item) || Shapes.contains(uniqueIdentifier)
|
||||
|| Lenses.contains(uniqueIdentifier)
|
||||
|| Molds.contains(uniqueIdentifier))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -77,6 +77,7 @@ import appeng.api.util.DimensionalCoord;
|
||||
import appeng.api.util.IConfigManager;
|
||||
import appeng.core.AEConfig;
|
||||
import appeng.core.AELog;
|
||||
import appeng.core.features.registries.BlockingModeIgnoreItemRegistry;
|
||||
import appeng.core.settings.TickRates;
|
||||
import appeng.me.GridAccessException;
|
||||
import appeng.me.helpers.AENetworkProxy;
|
||||
@@ -880,7 +881,7 @@ public class DualityInterface implements IGridTickable, IStorageMonitorable, IIn
|
||||
private boolean tileHasOnlyIgnoredItems(InventoryAdaptor ad) {
|
||||
for (ItemSlot i : ad) {
|
||||
ItemStack is = i.getItemStack();
|
||||
if (BlockingModeIgnoreList.isIgnored(is) || is == null) continue;
|
||||
if (is == null || BlockingModeIgnoreItemRegistry.instance().isIgnored(is)) continue;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -12,7 +12,7 @@ import appeng.api.storage.IMEMonitor;
|
||||
import appeng.api.storage.data.IAEFluidStack;
|
||||
import appeng.api.storage.data.IAEItemStack;
|
||||
import appeng.api.storage.data.IItemList;
|
||||
import appeng.helpers.BlockingModeIgnoreList;
|
||||
import appeng.core.features.registries.BlockingModeIgnoreItemRegistry;
|
||||
import appeng.helpers.DualityInterface;
|
||||
import appeng.helpers.IInterfaceHost;
|
||||
import appeng.util.item.AEItemStack;
|
||||
@@ -58,7 +58,7 @@ public class AdaptorDualityInterface extends AdaptorIInventory {
|
||||
// This works okay, it'll loop as much as (or even less than) a normal inventory because the iterator
|
||||
// hides empty slots or stacks of size 0
|
||||
for (IAEItemStack stack : itemList) {
|
||||
if (!BlockingModeIgnoreList.isIgnored(stack.getItemStack())) {
|
||||
if (!BlockingModeIgnoreItemRegistry.instance().isIgnored(stack.getItemStack())) {
|
||||
hasMEItems = true;
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user