@Override
public void generate(Random random, int chunkX, int chunkZ, World world,
IChunkProvider chunkGenerator, IChunkProvider chunkProvider) {
switch (world.provider.dimensionId) {
case 0:
break;
case -1:
this.runGenerator(this.magma, world, random, chunkX, chunkZ, 100, 0, 256);
break;
case 1:
break;
}
}
java类net.minecraft.world.chunk.IChunkProvider的实例源码
EtFuturumNetherGenerator.java 文件源码
项目:connor41-etfuturum2
阅读 23
收藏 0
点赞 0
评论 0
Generation.java 文件源码
项目:statclock
阅读 23
收藏 0
点赞 0
评论 0
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) {
switch (world.provider.getDimension()) {
case -1:
break;
case 0:
generateSurface(world, random, chunkX * 16, chunkZ * 16);
break;
case 1:
break;
}
}
WGLabMedium.java 文件源码
项目:PurificatiMagicae
阅读 27
收藏 0
点赞 0
评论 0
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider)
{
if (dimList.contains(world.provider.getDimension()) == dimListMode)
{
if (random.nextFloat() <= chance)
{
int x = chunkX * 16 + 16;
int z = chunkZ * 16 + 16;
BlockPos pos = new BlockPos(x, world.getHeight(x, z) - 1, z);
if (pos.getY() >= minY && pos.getY() <= maxY)
{
try
{
NBTTagCompound tag = StructureApi.INSTANCE.getStructureNbt(Utils.gRL("lab_medium"));
PurMag.INSTANCE.debug("WG START [lab_medium]");
StructureApi.INSTANCE.spawnStructure(tag, pos, null, Rotation.values()[random.nextInt(Rotation.values().length)], (WorldServer) world, random);
PurMag.INSTANCE.debug("WG END AT " + pos);
}
catch (IOException e)
{
PurMag.INSTANCE.log.error("An IOException occurred when spawning the small lab structure!", e);
}
}
}
}
}
WGCrystal.java 文件源码
项目:PurificatiMagicae
阅读 24
收藏 0
点赞 0
评论 0
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider)
{
if(dimList.contains(world.provider.getDimension()) == dimListMode)
{
int x = chunkX * 16 + random.nextInt(16);
int z = chunkZ * 16 + random.nextInt(16);
float sif = PurMag.INSTANCE.sif_storage.get(new GlobalChunkPos(chunkX, chunkZ, world.provider.getDimension()));
int y = predicate.getY(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider, x, z, sif);
BlockPos pos = new BlockPos(x, y, z);
if (predicate.canGenerateHere(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider, pos, sif))
{
int count = predicate.getCrystalCount(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider, pos, sif);
predicate.beforePlace(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider, pos, sif, count);
BlockPos.MutableBlockPos genPos = new BlockPos.MutableBlockPos(pos);
for (int i = 0; i < count; i++)
{
genPos.setY(pos.getY() + i);
world.setBlockState(genPos, BlockRegistry.crystal.getDefaultState(), 2);
TileSingleSip tss = new TileSingleSip();
tss.setType(sipType, false);
world.setTileEntity(genPos, tss);
}
PurMag.INSTANCE.debug("Crystal " + sipType + " " + pos);
predicate.afterPlace(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider, pos, sif, count);
}
}
}
CrystalGenPredicates.java 文件源码
项目:PurificatiMagicae
阅读 29
收藏 0
点赞 0
评论 0
@Override
public void beforePlace(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider, BlockPos pos, float sif, int count)
{
BlockPos.MutableBlockPos p = new BlockPos.MutableBlockPos(pos);
for (int y1 = 0; y1 < count + 1; y1++)
{
p.setY(p.getY() + y1);
world.setBlockToAir(p);
}
}
CrystalGenPredicates.java 文件源码
项目:PurificatiMagicae
阅读 23
收藏 0
点赞 0
评论 0
@Override
public int getY(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider, int x, int z, float sif)
{
BlockPos.MutableBlockPos mut = new BlockPos.MutableBlockPos(x, 0, z);
for (int y = 0; y < 256; y++)
{
mut.setY(y);
if (world.isAirBlock(mut))
{
return y;
}
}
return -1;
}
WorldServer.java 文件源码
项目:BaseClient
阅读 32
收藏 0
点赞 0
评论 0
/**
* Creates the chunk provider for this world. Called in the constructor. Retrieves provider from worldProvider?
*/
protected IChunkProvider createChunkProvider()
{
IChunkLoader ichunkloader = this.saveHandler.getChunkLoader(this.provider);
this.theChunkProviderServer = new ChunkProviderServer(this, ichunkloader, this.provider.createChunkGenerator());
return this.theChunkProviderServer;
}
ModWorldGen.java 文件源码
项目:MagicWinds
阅读 26
收藏 0
点赞 0
评论 0
@Override
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) {
switch (world.provider.getDimension()){
case -1:
break;
case 0:
this.runGenerator(this.gen_green_shard_ore, world, random, chunkX, chunkZ, 20,0, 60);
break;
case 1:
break;
}
}
ChunkProviderServer.java 文件源码
项目:BaseClient
阅读 25
收藏 0
点赞 0
评论 0
public boolean func_177460_a(IChunkProvider p_177460_1_, Chunk p_177460_2_, int p_177460_3_, int p_177460_4_)
{
if (this.serverChunkGenerator != null && this.serverChunkGenerator.func_177460_a(p_177460_1_, p_177460_2_, p_177460_3_, p_177460_4_))
{
Chunk chunk = this.provideChunk(p_177460_3_, p_177460_4_);
chunk.setChunkModified();
return true;
}
else
{
return false;
}
}
ChunkProviderServer.java 文件源码
项目:BaseClient
阅读 23
收藏 0
点赞 0
评论 0
public boolean func_177460_a(IChunkProvider p_177460_1_, Chunk p_177460_2_, int p_177460_3_, int p_177460_4_)
{
if (this.serverChunkGenerator != null && this.serverChunkGenerator.func_177460_a(p_177460_1_, p_177460_2_, p_177460_3_, p_177460_4_))
{
Chunk chunk = this.provideChunk(p_177460_3_, p_177460_4_);
chunk.setChunkModified();
return true;
}
else
{
return false;
}
}