package net.fe.editor; import static org.lwjgl.opengl.GL11.GL_COLOR_BUFFER_BIT; import static org.lwjgl.opengl.GL11.GL_DEPTH_BUFFER_BIT; import static org.lwjgl.opengl.GL11.GL_STENCIL_BUFFER_BIT; import static org.lwjgl.opengl.GL11.glClear; import static org.lwjgl.opengl.GL11.glClearDepth; import static org.lwjgl.opengl.GL11.glPopMatrix; import static org.lwjgl.opengl.GL11.glPushMatrix; import org.lwjgl.openal.AL; import org.lwjgl.opengl.Display; import chu.engine.Game; import chu.engine.Stage; import chu.engine.anim.Renderer; public class LevelEditor extends Game { private static Stage currentStage; public static void main(String[] args) { LevelEditor game = new LevelEditor(); game.init(960, 640, "Fire Emblem Level Editor"); game.loop(); } @Override public void init(int width, int height, String name) { super.init(width, height, name); currentStage = new LevelEditorStage("fort"); } @Override public void loop() { while(!Display.isCloseRequested()) { time = System.nanoTime(); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); glClearDepth(1.0f); getInput(); glPushMatrix(); if(!paused) { currentStage.beginStep(); currentStage.onStep(); currentStage.processAddStack(); currentStage.processRemoveStack(); Renderer.getCamera().lookThrough(); currentStage.render(); currentStage.endStep(); } glPopMatrix(); Display.update(); timeDelta = System.nanoTime()-time; } AL.destroy(); Display.destroy(); } }