9986ffc458
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.
62 lines
1.5 KiB
Java
62 lines
1.5 KiB
Java
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 );
|
|
}
|
|
}
|