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,61 @@
package appeng.worldgen.meteorite;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import appeng.api.definitions.IBlockDefinition;
import appeng.util.Platform;
public class Fallout
{
private final MeteoriteBlockPutter putter;
private final IBlockDefinition skyStoneDefinition;
public Fallout( MeteoriteBlockPutter putter, IBlockDefinition skyStoneDefinition )
{
this.putter = putter;
this.skyStoneDefinition = skyStoneDefinition;
}
public int adjustCrater()
{
return 0;
}
public void getRandomFall( IMeteoriteWorld w, int x, int y, int z )
{
double a = Math.random();
if ( a > 0.9 )
this.putter.put( w, x, y, z, Blocks.stone );
else if ( a > 0.8 )
this.putter.put( w, x, y, z, Blocks.cobblestone );
else if ( a > 0.7 )
this.putter.put( w, x, y, z, Blocks.dirt );
else
this.putter.put( w, x, y, z, Blocks.gravel );
}
public void getRandomInset( IMeteoriteWorld w, int x, int y, int z )
{
double a = Math.random();
if ( a > 0.9 )
this.putter.put( w, x, y, z, Blocks.cobblestone );
else if ( a > 0.8 )
this.putter.put( w, x, y, z, Blocks.stone );
else if ( a > 0.7 )
this.putter.put( w, x, y, z, Blocks.grass );
else if ( a > 0.6 )
{
for ( Block skyStoneBlock : this.skyStoneDefinition.maybeBlock().asSet() )
{
this.putter.put( w, x, y, z, skyStoneBlock );
}
}
else if ( a > 0.5 )
this.putter.put( w, x, y, z, Blocks.gravel );
else
this.putter.put( w, x, y, z, Platform.AIR );
}
}