|
@@ -1,5 +1,8 @@
|
|
package me.hammerle.snuviengine.game;
|
|
package me.hammerle.snuviengine.game;
|
|
|
|
|
|
|
|
+import java.io.FileInputStream;
|
|
|
|
+import java.io.IOException;
|
|
|
|
+import java.io.InputStream;
|
|
import java.util.Random;
|
|
import java.util.Random;
|
|
import me.hammerle.snuviengine.api.Engine;
|
|
import me.hammerle.snuviengine.api.Engine;
|
|
import me.hammerle.snuviengine.api.KeyBinding;
|
|
import me.hammerle.snuviengine.api.KeyBinding;
|
|
@@ -8,6 +11,7 @@ import me.hammerle.snuviengine.api.Shader;
|
|
import me.hammerle.snuviengine.api.Texture;
|
|
import me.hammerle.snuviengine.api.Texture;
|
|
import me.hammerle.snuviengine.api.TextureRenderer;
|
|
import me.hammerle.snuviengine.api.TextureRenderer;
|
|
import me.hammerle.snuviengine.util.Clock;
|
|
import me.hammerle.snuviengine.util.Clock;
|
|
|
|
+import me.hammerle.snuviengine.util.WrappedInputStream;
|
|
import static org.lwjgl.glfw.GLFW.*;
|
|
import static org.lwjgl.glfw.GLFW.*;
|
|
|
|
|
|
public class Game extends Engine
|
|
public class Game extends Engine
|
|
@@ -23,23 +27,34 @@ public class Game extends Engine
|
|
private boolean toogleTps = false;
|
|
private boolean toogleTps = false;
|
|
|
|
|
|
private final TextureRenderer tr = new TextureRenderer();
|
|
private final TextureRenderer tr = new TextureRenderer();
|
|
- private final Texture t = new Texture("images/out3.png");
|
|
|
|
|
|
|
|
public BoxList entities = new BoxList(0.0, 0.0, 400.0, 300.0, 1.0);
|
|
public BoxList entities = new BoxList(0.0, 0.0, 400.0, 300.0, 1.0);
|
|
|
|
|
|
|
|
+ private World w;
|
|
|
|
+
|
|
public Game()
|
|
public Game()
|
|
{
|
|
{
|
|
- Random r = new Random(200);
|
|
|
|
|
|
+ /*Random r = new Random(200);
|
|
for(int i = 0; i < 128; i++)
|
|
for(int i = 0; i < 128; i++)
|
|
{
|
|
{
|
|
Entity ent = new Entity(this, 5.0, 5.0);
|
|
Entity ent = new Entity(this, 5.0, 5.0);
|
|
ent.setPosition((int) (r.nextDouble() * 400.0), (int) (r.nextDouble() * 300));
|
|
ent.setPosition((int) (r.nextDouble() * 400.0), (int) (r.nextDouble() * 300));
|
|
ent.node = entities.add(ent);
|
|
ent.node = entities.add(ent);
|
|
- }
|
|
|
|
|
|
+ }*/
|
|
|
|
|
|
- Hero hero = new Hero(this, 5.0, 5.0);
|
|
|
|
- hero.setPosition(300.0, 200);
|
|
|
|
|
|
+ Hero hero = new Hero(this, 25.0, 25.0);
|
|
|
|
+ hero.setPosition(0.0, 0.0);
|
|
hero.node = entities.add(hero);
|
|
hero.node = entities.add(hero);
|
|
|
|
+
|
|
|
|
+ w = new World(hero);
|
|
|
|
+ try
|
|
|
|
+ {
|
|
|
|
+ w.read(new WrappedInputStream(new FileInputStream("./testworld")));
|
|
|
|
+ }
|
|
|
|
+ catch(IOException ex)
|
|
|
|
+ {
|
|
|
|
+ ex.printStackTrace();
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -52,7 +67,8 @@ public class Game extends Engine
|
|
@Override
|
|
@Override
|
|
public void tick()
|
|
public void tick()
|
|
{
|
|
{
|
|
- CLOCK.start();
|
|
|
|
|
|
+ w.tick();
|
|
|
|
+ /*CLOCK.start();
|
|
entities.forEach(ent -> ent.tick());
|
|
entities.forEach(ent -> ent.tick());
|
|
CLOCK.stop();
|
|
CLOCK.stop();
|
|
CLOCK.calculate();
|
|
CLOCK.calculate();
|
|
@@ -66,7 +82,7 @@ public class Game extends Engine
|
|
{
|
|
{
|
|
toogleTps = !toogleTps;
|
|
toogleTps = !toogleTps;
|
|
setRenderTps(toogleTps);
|
|
setRenderTps(toogleTps);
|
|
- }
|
|
|
|
|
|
+ }*/
|
|
}
|
|
}
|
|
|
|
|
|
private static final Clock CLOCK = new Clock(250);
|
|
private static final Clock CLOCK = new Clock(250);
|
|
@@ -74,13 +90,16 @@ public class Game extends Engine
|
|
@Override
|
|
@Override
|
|
public void renderTick(float lag)
|
|
public void renderTick(float lag)
|
|
{
|
|
{
|
|
- Shader.setTextureEnabled(false);
|
|
|
|
|
|
+ w.renderTick(lag);
|
|
|
|
+ /*Shader.setTextureEnabled(false);
|
|
Shader.setColorEnabled(true);
|
|
Shader.setColorEnabled(true);
|
|
Shader.getColorRenderer().drawRectangle(0, 299, 400, 300, 0xFFFFFFFF);
|
|
Shader.getColorRenderer().drawRectangle(0, 299, 400, 300, 0xFFFFFFFF);
|
|
- entities.forEach(ent -> ent.renderTick(lag));
|
|
|
|
|
|
+ entities.forEach(ent -> ent.renderTick(lag));*/
|
|
|
|
|
|
Shader.setTextureEnabled(true);
|
|
Shader.setTextureEnabled(true);
|
|
Shader.setColorEnabled(true);
|
|
Shader.setColorEnabled(true);
|
|
|
|
+ Shader.translateTo(0.0f, 0.0f);
|
|
|
|
+ Shader.updateMatrix();
|
|
float y = 5;
|
|
float y = 5;
|
|
y = Shader.getFontRenderer().drawString(5, y, true, "FPS " + String.format("%.1f", getFps()));
|
|
y = Shader.getFontRenderer().drawString(5, y, true, "FPS " + String.format("%.1f", getFps()));
|
|
y = Shader.getFontRenderer().drawString(5, y, true, "TPS " + String.format("%.1f", getTps()));
|
|
y = Shader.getFontRenderer().drawString(5, y, true, "TPS " + String.format("%.1f", getTps()));
|