Improved adaptability of layer generators
This commit is contained in:
parent
230ae4846c
commit
341261f346
|
|
@ -104,9 +104,9 @@ public class EntityTnt extends EntityVertical
|
|||
// Is this entity alive
|
||||
if(e instanceof EntityAlive)
|
||||
{
|
||||
// Kill the entity
|
||||
// Add 1000 damage to the entity
|
||||
killed_entities = true;
|
||||
e.kill();
|
||||
((EntityAlive)e).removeHealth(10000);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -126,7 +126,9 @@ public class Layer
|
|||
// Create a unique seed specific to this chunk
|
||||
long cseed = new Random(pos.x).nextLong() + new Random(pos.y).nextLong() + seed;
|
||||
|
||||
chunks.set(pos, layergen.generateChunk(this, seed, new Random(cseed), pos));
|
||||
Chunk chunk = new Chunk(this, pos, rand);
|
||||
chunks.set(pos, chunk);
|
||||
layergen.generateChunk(chunk, this, seed, new Random(cseed), pos);
|
||||
}
|
||||
|
||||
public void unloadChunk(Vec2i pos) {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import shootergame.world.layer.Layer;
|
|||
|
||||
public abstract class LayerGen implements IMap2D<Chunk>
|
||||
{
|
||||
public abstract Chunk generateChunk(Layer layer, long seed, Random rand, Vec2i pos);
|
||||
public abstract void generateChunk(Chunk chunk, Layer layer, long seed, Random rand, Vec2i pos);
|
||||
public abstract void spawnEntities(Layer layer, Random rand);
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -16,11 +16,8 @@ public class LayerGenCaves extends LayerGen
|
|||
{
|
||||
|
||||
@Override
|
||||
public Chunk generateChunk(Layer layer, long seed, Random rand, Vec2i c_pos)
|
||||
public void generateChunk(Chunk chunk, Layer layer, long seed, Random rand, Vec2i c_pos)
|
||||
{
|
||||
// Create a new chunk
|
||||
Chunk chunk = new Chunk(layer, c_pos, rand);
|
||||
|
||||
// Is there going to be a portal in this chunk
|
||||
boolean portal = RandomHelpers.randrange(rand, 10) == 0;
|
||||
Vec2i portal_pos = null;
|
||||
|
|
@ -56,9 +53,6 @@ public class LayerGenCaves extends LayerGen
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Send the chunk back
|
||||
return chunk;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -21,11 +21,8 @@ public class LayerGenEarth extends LayerGen
|
|||
{
|
||||
|
||||
@Override
|
||||
public Chunk generateChunk(Layer layer, long seed, Random rand, Vec2i c_pos)
|
||||
public void generateChunk(Chunk chunk, Layer layer, long seed, Random rand, Vec2i c_pos)
|
||||
{
|
||||
// Create the new chunk
|
||||
Chunk chunk = new Chunk(layer, c_pos, rand);
|
||||
|
||||
// Is there going to be a portal in this chunk
|
||||
boolean portal = RandomHelpers.randrange(rand, 10) == 0;
|
||||
Vec2i portal_pos = null;
|
||||
|
|
@ -68,9 +65,6 @@ public class LayerGenEarth extends LayerGen
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Send back the new chunk
|
||||
return chunk;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Reference in New Issue