123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- package me.hammerle.snuviengine.game;
- import java.util.LinkedList;
- import java.util.List;
- import java.util.Random;
- import me.hammerle.snuviengine.api.Engine;
- import me.hammerle.snuviengine.api.KeyBinding;
- import me.hammerle.snuviengine.api.KeyHandler;
- import me.hammerle.snuviengine.api.Shader;
- import me.hammerle.snuviengine.api.Texture;
- import me.hammerle.snuviengine.api.TextureRenderer;
- import me.hammerle.snuviengine.util.Clock;
- import static org.lwjgl.glfw.GLFW.*;
- public class Game extends Engine
- {
- public final static KeyBinding UP = KeyHandler.register(GLFW_KEY_UP);
- public final static KeyBinding DOWN = KeyHandler.register(GLFW_KEY_DOWN);
- public final static KeyBinding LEFT = KeyHandler.register(GLFW_KEY_LEFT);
- public final static KeyBinding RIGHT = KeyHandler.register(GLFW_KEY_RIGHT);
-
- 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);
- private final List<Entity> list = new LinkedList<>();
-
- public Game()
- {
- Random r = new Random(100);
- for(int i = 0; i < 5000; i++)
- {
- Entity ent = new Entity(this, r.nextDouble() * 2.0, r.nextDouble() * 2.0);
- ent.setPosition(r.nextDouble() * 400.0, r.nextDouble() * 300);
- ent.node = entities.add(ent);
- list.add(ent);
- }
-
- Hero hero = new Hero(this, 5.0, 5.0);
- hero.setPosition(450.0, 200);
- hero.node = entities.add(hero);
- list.add(hero);
- }
-
- @Override
- public void init()
- {
- }
- private int c = 0;
-
- @Override
- public void tick()
- {
- CLOCK.start();
- list.forEach(ent -> ent.tick());
- CLOCK.stop();
- CLOCK.printTime(entities.amount + " Time: ");
-
- /*if(!list.isEmpty())
- {
- Entity ent = list.remove(c);
- entities.remove(ent.node);
- }
- if(!list.isEmpty())
- {
- Entity ent = list.remove(c);
- entities.remove(ent.node);
- }
- if(!list.isEmpty())
- {
- Entity ent = list.remove(c);
- entities.remove(ent.node);
- }*/
- }
-
- private static final Clock CLOCK = new Clock(100);
-
- @Override
- public void renderTick()
- {
- Shader.setTextureEnabled(false);
- Shader.setColorEnabled(true);
- //Shader.setDepthTestUsing(true);
- list.forEach(ent -> ent.renderTick());
- //Shader.getColorRenderer().drawRectangle(0.0f, 0.0f, 100.0f, 100.0f, 0xFF0000FF);
- /*for(int i = 0; i < 400; i++)
- {
- Shader.getColorRenderer().drawRectangle(0.0f, i * 2.0f, 20.0f, i * 2.0f + 1, 0xFFFFFFFF);
- }*/
- //hader.setDepthTestUsing(false);
- /*Shader.setBlendingEnabled(false);
- Shader.setTextureEnabled(true);
- Shader.setColorEnabled(true);
- for(int i = 0; i < 20; i++)
- {
- Shader.getFontRenderer().drawString(0, i * 9, true, "Das ist ein Test.");
- }*/
- }
- }
|