From 88da475a4bb4bda1025aada5f7fdd9fb472f94e9 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Sat, 1 Feb 2014 16:29:07 -0600 Subject: [PATCH] Added missing facade update files. --- core/CreativeTabFacade.java | 31 +++++++++++++++++++++ core/FacadeConfig.java | 54 +++++++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 core/CreativeTabFacade.java create mode 100644 core/FacadeConfig.java diff --git a/core/CreativeTabFacade.java b/core/CreativeTabFacade.java new file mode 100644 index 00000000..97a3fbcd --- /dev/null +++ b/core/CreativeTabFacade.java @@ -0,0 +1,31 @@ +package appeng.core; + +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.ItemStack; +import appeng.api.AEApi; +import appeng.items.parts.ItemFacade; +import appeng.util.Platform; + +public final class CreativeTabFacade extends CreativeTabs +{ + + public static CreativeTabFacade instance = null; + + public CreativeTabFacade() { + super( "appliedenergistics2.facades" ); + if ( Platform.isClient() ) + AELog.localization( "gui", "itemGroup." + getTabLabel() ); + } + + @Override + public ItemStack getIconItemStack() + { + return ((ItemFacade) AEApi.instance().items().itemFacade.item()).getCreativeTabIcon(); + } + + public static void init() + { + instance = new CreativeTabFacade(); + } + +} \ No newline at end of file diff --git a/core/FacadeConfig.java b/core/FacadeConfig.java new file mode 100644 index 00000000..6a41a630 --- /dev/null +++ b/core/FacadeConfig.java @@ -0,0 +1,54 @@ +package appeng.core; + +import java.io.File; +import java.lang.reflect.Field; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import net.minecraft.block.Block; +import net.minecraftforge.common.Configuration; +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.common.registry.GameRegistry.UniqueIdentifier; + +public class FacadeConfig extends Configuration +{ + + public static FacadeConfig instance; + Pattern replacementPattern; + + public FacadeConfig(File f) { + super( new File( f.getPath() + File.separator + "AppliedEnergistics2" + File.separator + "Facades.cfg" ) ); + replacementPattern = Pattern.compile( "[^a-zA-Z0-9]" ); + } + + public boolean checkEnabled(Block id, boolean automatic) + { + if ( id == null || id.blockID == 0 ) + return false; + + UniqueIdentifier blk = GameRegistry.findUniqueIdentifierFor( id ); + if ( blk == null ) + { + for (Field f : Block.class.getFields()) + { + try + { + if ( f.get( Block.class ) == id ) + return get( "minecraft", f.getName(), automatic ).getBoolean( automatic ); + } + catch (Throwable e) + { + // :P + } + } + } + else + { + Matcher mod = replacementPattern.matcher( blk.modId ); + Matcher name = replacementPattern.matcher( blk.name ); + return get( mod.replaceAll( "" ), name.replaceAll( "" ), automatic ).getBoolean( automatic ); + } + + return false; + } +}