Made smoke particles disappear gradually
This commit is contained in:
parent
40a0c6474d
commit
868b3481ee
|
|
@ -26,9 +26,14 @@ public class EntityVertical extends Entity
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render(Vec2d pos, Camera camera) {
|
public void render(Vec2d pos, Camera camera) {
|
||||||
|
this.render(pos, camera, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void render(Vec2d pos, Camera camera, double opacity) {
|
||||||
double light = chunk.getLightLevel(new Vec2i(
|
double light = chunk.getLightLevel(new Vec2i(
|
||||||
MathHelpers.floor(pos.x), MathHelpers.floor(pos.y)));
|
MathHelpers.floor(pos.x), MathHelpers.floor(pos.y)));
|
||||||
GlHelpers.color3(light, light, light);
|
GlHelpers.color4(light, light, light, opacity);
|
||||||
this.render(pos, camera, tex, size);
|
this.render(pos, camera, tex, size);
|
||||||
|
GlHelpers.color4(1, 1, 1, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,8 @@ import shootergame.display.Camera;
|
||||||
import shootergame.entity.EntityVertical;
|
import shootergame.entity.EntityVertical;
|
||||||
import shootergame.init.Textures;
|
import shootergame.init.Textures;
|
||||||
import shootergame.util.gl.GlHelpers;
|
import shootergame.util.gl.GlHelpers;
|
||||||
import shootergame.util.math.MathHelpers;
|
|
||||||
import shootergame.util.math.random.RandomHelpers;
|
import shootergame.util.math.random.RandomHelpers;
|
||||||
import shootergame.util.math.vec.Vec2d;
|
import shootergame.util.math.vec.Vec2d;
|
||||||
import shootergame.util.math.vec.Vec2i;
|
|
||||||
import shootergame.world.chunk.Chunk;
|
import shootergame.world.chunk.Chunk;
|
||||||
import shootergame.world.layer.Layer;
|
import shootergame.world.layer.Layer;
|
||||||
|
|
||||||
|
|
@ -26,8 +24,9 @@ public class ParticleSmoke extends EntityVertical
|
||||||
RandomHelpers.randrange(rand, 1000)/1000.0 - 0.5 + pos.x,
|
RandomHelpers.randrange(rand, 1000)/1000.0 - 0.5 + pos.x,
|
||||||
RandomHelpers.randrange(rand, 1000)/1000.0 - 0.5 + pos.y);
|
RandomHelpers.randrange(rand, 1000)/1000.0 - 0.5 + pos.y);
|
||||||
|
|
||||||
height_speed = (rand.nextDouble() + 0.5) / 100;
|
height_speed = (rand.nextDouble() + 0.5) / 250;
|
||||||
disappear_speed = (rand.nextDouble() + 0.5) / 250;
|
disappear_speed = (rand.nextDouble() + 0.5) / 1000;
|
||||||
|
this.opaqueTile = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -35,11 +34,7 @@ public class ParticleSmoke extends EntityVertical
|
||||||
if(opacity <= 0) return;
|
if(opacity <= 0) return;
|
||||||
GlHelpers.pushMatrix();
|
GlHelpers.pushMatrix();
|
||||||
GlHelpers.translate3(0, 0, height);
|
GlHelpers.translate3(0, 0, height);
|
||||||
double light = chunk.getLightLevel(new Vec2i(
|
super.render(pos, camera, opacity);
|
||||||
MathHelpers.floor(pos.x), MathHelpers.floor(pos.y)));
|
|
||||||
GlHelpers.color4(light, light, light, opacity);
|
|
||||||
super.render(pos, camera);
|
|
||||||
GlHelpers.color4(1, 1, 1, 1);
|
|
||||||
GlHelpers.popMatrix();
|
GlHelpers.popMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package shootergame.input.types;
|
||||||
|
|
||||||
import shootergame.Main;
|
import shootergame.Main;
|
||||||
import shootergame.menu.Menu;
|
import shootergame.menu.Menu;
|
||||||
import shootergame.menu.MenuDeath;
|
|
||||||
import shootergame.menu.MenuGame;
|
import shootergame.menu.MenuGame;
|
||||||
import shootergame.menu.MenuGamePause;
|
import shootergame.menu.MenuGamePause;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,6 @@
|
||||||
package shootergame.menu;
|
package shootergame.menu;
|
||||||
|
|
||||||
import java.util.Random;
|
|
||||||
|
|
||||||
import shootergame.Main;
|
|
||||||
import shootergame.entity.player.EntityPlayer;
|
|
||||||
import shootergame.init.Layers;
|
|
||||||
import shootergame.input.types.InputDeath;
|
import shootergame.input.types.InputDeath;
|
||||||
import shootergame.input.types.InputGamePause;
|
|
||||||
import shootergame.text.Text;
|
import shootergame.text.Text;
|
||||||
import shootergame.util.gl.GlHelpers;
|
import shootergame.util.gl.GlHelpers;
|
||||||
import shootergame.util.math.vec.Vec2d;
|
import shootergame.util.math.vec.Vec2d;
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,8 @@ import java.util.Random;
|
||||||
|
|
||||||
import shootergame.Main;
|
import shootergame.Main;
|
||||||
import shootergame.entity.Entity;
|
import shootergame.entity.Entity;
|
||||||
|
import shootergame.entity.EntityExplosion;
|
||||||
import shootergame.entity.EntityZombie;
|
import shootergame.entity.EntityZombie;
|
||||||
import shootergame.entity.EntityZombieArmored;
|
|
||||||
import shootergame.init.Tiles;
|
import shootergame.init.Tiles;
|
||||||
import shootergame.time.GameTimer;
|
import shootergame.time.GameTimer;
|
||||||
import shootergame.util.math.MathHelpers;
|
import shootergame.util.math.MathHelpers;
|
||||||
|
|
@ -34,7 +34,7 @@ public class LayerGenEarth extends LayerGen
|
||||||
OpenSimplexNoise noisegen_n = new OpenSimplexNoise(new Random(seed + layer.id).nextLong());
|
OpenSimplexNoise noisegen_n = new OpenSimplexNoise(new Random(seed + layer.id).nextLong());
|
||||||
|
|
||||||
if(c_pos.x == 0 && c_pos.y == 0) {
|
if(c_pos.x == 0 && c_pos.y == 0) {
|
||||||
chunk.spawnEntity(new EntityZombieArmored(new Vec2d(0, 0)));
|
chunk.spawnEntity(new EntityExplosion(new Vec2d(1, 1), 10, 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Loop over the layer dimensions and create land
|
// Loop over the layer dimensions and create land
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue