package shootergame.tiles; import shootergame.display.Camera; import shootergame.entity.Entity; import shootergame.entity.particle.ParticleWater; import shootergame.init.Textures; import shootergame.util.gl.GlHelpers; import shootergame.util.math.TileState; import shootergame.util.math.vec.Vec2d; import shootergame.util.math.vec.Vec2i; import shootergame.world.chunk.Chunk; import shootergame.world.layer.Layer; public class TileWater extends TileFlat { public TileWater(String id) { super(id, Textures.TILE_WATER); this.slowness = 0.5; this.rotates = true; } @Override public void render(Vec2d pos, Camera camera, TileState state) { GlHelpers.pushMatrix(); GlHelpers.translate3(0, 0, 0.001); super.render(pos, camera, state); GlHelpers.popMatrix(); } @Override public void onWalkedOn(Chunk chunk, Layer layer, Vec2i pos, Entity entity, TileState state) { // Call super super.onWalkedOn(chunk, layer, pos, entity, state); // Spawn some water particles for(int i=0;i<4;i++) { layer.spawnEntity(new ParticleWater(entity.pos.copy())); } } }