Added Charged Quartz Spawn Chance. All GUI's Parts/Tiles support Custom Localization. ( Fixes #0190 ) Added Crafting Recipe for copying Press Plates. Fixed Bug: #0189 - Particles don't turn off when set to minimal Fixed Bug: #0176 - Weird Colorization While Mining Parts. Fixed Bug: #0152 - TPane drops parts as items and does not insert into system. Fixed Bug: #0140 - Spatial pylon facade renders oddly (Clear)
54 lines
1.4 KiB
Java
54 lines
1.4 KiB
Java
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.config.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(String path) {
|
|
super( new File( path + "Facades.cfg" ) );
|
|
replacementPattern = Pattern.compile( "[^a-zA-Z0-9]" );
|
|
}
|
|
|
|
public boolean checkEnabled(Block id, int metadata, boolean automatic)
|
|
{
|
|
if ( id == null )
|
|
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() + (metadata == 0 ? "" : "." + metadata), 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( "" ) + (metadata == 0 ? "" : "." + metadata), automatic ).getBoolean( automatic );
|
|
}
|
|
|
|
return false;
|
|
}
|
|
}
|