Fixes #675 No disabled feature should log spam or crash anymore.

Deprecates the old usage of the AEItemDefinitions via the direct method access of

* blocks()
* parts()
* items()
* materials()

and thus use the new re-direct via definitions().

All definitions are now initialized, no matter what. But SubItems, Items and Blocks are not registered, if by chance are disabled.
This commit is contained in:
thatsIch
2015-01-03 02:53:14 +01:00
parent 3dd81433ac
commit 9986ffc458
385 changed files with 12477 additions and 8292 deletions
@@ -0,0 +1,38 @@
package appeng.parts.automation;
import net.minecraft.item.ItemStack;
import appeng.api.config.Upgrades;
import appeng.api.definitions.IItemDefinition;
import appeng.tile.inventory.IAEAppEngInventory;
public final class DefinitionUpgradeInventory extends UpgradeInventory
{
private final IItemDefinition definition;
public DefinitionUpgradeInventory( IItemDefinition definition, IAEAppEngInventory parent, int s )
{
super( parent, s );
this.definition = definition;
}
@Override
public int getMaxInstalled( Upgrades upgrades )
{
int max = 0;
for ( ItemStack stack : upgrades.getSupported().keySet() )
{
if ( this.definition.isSameAs( stack ) )
{
max = upgrades.getSupported().get( stack );
break;
}
}
return max;
}
}