diff --git a/src/junk/DisplaySystem.java b/src/junk/DisplaySystem.java
new file mode 100644
index 0000000..ddd089c
--- /dev/null
+++ b/src/junk/DisplaySystem.java
@@ -0,0 +1,299 @@
+//package junk;
+//
+//
+//import static org.lwjgl.opengl.GL11.*;
+//
+//import java.nio.ByteBuffer;
+//
+//import mightypork.gamecore.backend.lwjgl.AwtScreenshot;
+//import mightypork.gamecore.core.modules.AppAccess;
+//import mightypork.gamecore.core.modules.AppModule;
+//import mightypork.gamecore.render.events.DisplayReadyEvent;
+//import mightypork.gamecore.render.events.ViewportChangeEvent;
+//import mightypork.utils.logging.Log;
+//import mightypork.utils.math.constraints.rect.Rect;
+//import mightypork.utils.math.constraints.rect.RectBound;
+//import mightypork.utils.math.constraints.vect.Vect;
+//import mightypork.utils.math.timing.FpsMeter;
+//
+//import org.lwjgl.BufferUtils;
+//import org.lwjgl.LWJGLException;
+//import org.lwjgl.opengl.Display;
+//import org.lwjgl.opengl.DisplayMode;
+//
+//
+///**
+// * Display system
+// *
+// * @author Ondřej Hruška (MightyPork)
+// */
+//@Deprecated
+//public class DisplaySystem extends AppModule implements RectBound {
+//
+// private DisplayMode windowDisplayMode;
+// private int targetFps;
+// private FpsMeter fpsMeter;
+// private boolean fullscreenSwitchRequested;
+//
+// /** Current screen size */
+// private static final Vect screenSize = new Vect() {
+//
+// @Override
+// public double y()
+// {
+// return Display.getHeight();
+// }
+//
+//
+// @Override
+// public double x()
+// {
+// return Display.getWidth();
+// }
+// };
+//
+// private static final Rect rect = Rect.make(screenSize);
+//
+//
+// /**
+// * @param app app access
+// */
+// public DisplaySystem(AppAccess app) {
+// super(app);
+// }
+//
+//
+// @Override
+// protected void deinit()
+// {
+// Display.destroy();
+// }
+//
+//
+// /**
+// * Set target fps (for syncing in endFrame() call).
+// * With vsync enabled, the target fps may not be met.
+// *
+// * @param fps requested fps
+// */
+// public void setTargetFps(int fps)
+// {
+// this.targetFps = fps;
+// }
+//
+//
+// /**
+// * Create a main window
+// *
+// * @param width requested width
+// * @param height requested height
+// * @param resizable is resizable by the user
+// * @param fullscreen is in fullscreen
+// * @param title window title
+// */
+// public void createMainWindow(int width, int height, boolean resizable, boolean fullscreen, String title)
+// {
+// try {
+// Display.setDisplayMode(windowDisplayMode = new DisplayMode(width, height));
+// Display.setResizable(resizable);
+// Display.setVSyncEnabled(true);
+// Display.setTitle(title);
+// Display.create();
+//
+// fpsMeter = new FpsMeter();
+//
+// if (fullscreen) {
+// switchFullscreen();
+// Display.update();
+// }
+//
+// getEventBus().send(new DisplayReadyEvent());
+//
+// } catch (final LWJGLException e) {
+// throw new RuntimeException("Could not initialize screen", e);
+// }
+// }
+//
+//
+// /**
+// * Toggle FS if possible
+// */
+// public void switchFullscreen()
+// {
+// fullscreenSwitchRequested = true;
+// }
+//
+//
+// private void doSwitchFullscreen()
+// {
+// try {
+//
+// if (!Display.isFullscreen()) {
+// Log.f3("Entering fullscreen.");
+// // save window resize
+// windowDisplayMode = new DisplayMode(Display.getWidth(), Display.getHeight());
+//
+// Display.setDisplayMode(Display.getDesktopDisplayMode());
+// Display.setFullscreen(true);
+// Display.update();
+// } else {
+// Log.f3("Leaving fullscreen.");
+// Display.setDisplayMode(windowDisplayMode);
+// Display.update();
+// }
+//
+// getEventBus().send(new ViewportChangeEvent(getSize()));
+//
+// } catch (final Throwable t) {
+// Log.e("Failed to toggle fullscreen mode.", t);
+// try {
+// Display.setDisplayMode(windowDisplayMode);
+// Display.update();
+// } catch (final Throwable t1) {
+// throw new RuntimeException("Failed to revert failed fullscreen toggle.", t1);
+// }
+// }
+// }
+//
+//
+// /**
+// * Take screenshot (expensive processing is done on-demand when screenshot
+// * is processed).
+// *
+// * @return screenshot object
+// */
+// public static AwtScreenshot prepareScreenshot()
+// {
+// glReadBuffer(GL_FRONT);
+// final int width = Display.getWidth();
+// final int height = Display.getHeight();
+// final int bpp = 4;
+// final ByteBuffer buffer = BufferUtils.createByteBuffer(width * height * bpp);
+// glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
+//
+// final AwtScreenshot sc = new AwtScreenshot(width, height, bpp, buffer);
+//
+// return sc;
+// }
+//
+//
+// /**
+// * @return true if close was requested (i.e. click on cross)
+// */
+// public static boolean isCloseRequested()
+// {
+// return Display.isCloseRequested();
+// }
+//
+//
+// /**
+// * Get fullscreen state
+// *
+// * @return is fullscreen
+// */
+// public static boolean isFullscreen()
+// {
+// return Display.isFullscreen();
+// }
+//
+//
+// /**
+// * Get screen size. This Vect is final and views at it can safely be made.
+// *
+// * @return size
+// */
+// public static Vect getSize()
+// {
+// return screenSize;
+// }
+//
+//
+// /**
+// * Get screen rect. Static version of getRect().
+// *
+// * @return size
+// */
+// public static Rect getBounds()
+// {
+// return rect;
+// }
+//
+//
+// /**
+// * @return screen width
+// */
+// public static int getWidth()
+// {
+// return screenSize.xi();
+// }
+//
+//
+// /**
+// * @return screen height
+// */
+// public static int getHeight()
+// {
+// return screenSize.yi();
+// }
+//
+//
+// /**
+// * Start a OpenGL frame
+// */
+// public void beginFrame()
+// {
+// // handle resize
+// if (Display.wasResized()) {
+// getEventBus().send(new ViewportChangeEvent(getSize()));
+// }
+//
+// if (fullscreenSwitchRequested) {
+// fullscreenSwitchRequested = false;
+// doSwitchFullscreen();
+// }
+//
+// glLoadIdentity();
+// glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+// fpsMeter.frame();
+// }
+//
+//
+// /**
+// * End an OpenGL frame, flip buffers, sync to fps.
+// */
+// public void endFrame()
+// {
+// Display.update(false); // don't poll input devices
+// Display.sync(targetFps);
+// }
+//
+//
+// /**
+// * Get screen rect. This Rect is final and views at it can safely be made.
+// */
+// @Override
+// public Rect getRect()
+// {
+// return getBounds();
+// }
+//
+//
+// /**
+// * @return current FPS
+// */
+// public long getFps()
+// {
+// return fpsMeter.getFPS();
+// }
+//
+//
+// /**
+// * Get screen center. This vect is final and views at it can safely be made.
+// *
+// * @return screen center.
+// */
+// public static Vect getCenter()
+// {
+// return rect.center();
+// }
+//}
diff --git a/src/junk/Render.java b/src/junk/Render.java
new file mode 100644
index 0000000..7182d30
--- /dev/null
+++ b/src/junk/Render.java
@@ -0,0 +1,542 @@
+//package junk;
+//
+//
+//import static org.lwjgl.opengl.GL11.*;
+//
+//import java.io.IOException;
+//
+//import mightypork.gamecore.resources.textures.FilterMode;
+//import mightypork.gamecore.resources.textures.ITexture;
+//import mightypork.gamecore.resources.textures.TxQuad;
+//import mightypork.utils.files.FileUtils;
+//import mightypork.utils.logging.Log;
+//import mightypork.utils.math.color.Color;
+//import mightypork.utils.math.color.pal.RGB;
+//import mightypork.utils.math.constraints.rect.Rect;
+//import mightypork.utils.math.constraints.rect.caching.RectDigest;
+//import mightypork.utils.math.constraints.vect.Vect;
+//import mightypork.utils.math.constraints.vect.VectConst;
+//
+//import org.lwjgl.opengl.GL11;
+//import org.newdawn.slick.opengl.Texture;
+//import org.newdawn.slick.opengl.TextureLoader;
+//
+//
+///**
+// * Render utilities
+// *
+// * @author Ondřej Hruška (MightyPork)
+// */
+//@Deprecated
+//public class Render {
+//
+// public static final VectConst AXIS_X = Vect.make(1, 0, 0);
+// public static final VectConst AXIS_Y = Vect.make(0, 1, 0);
+// public static final VectConst AXIS_Z = Vect.make(0, 0, 1);
+//
+//
+// /**
+// * Bind GL color
+// *
+// * @param color Color color
+// */
+// public static void setColor(Color color)
+// {
+// if (color != null) glColor4d(color.r(), color.g(), color.b(), color.a());
+// }
+//
+//
+// /**
+// * Bind GL color
+// *
+// * @param color Color color
+// * @param alpha alpha multiplier
+// */
+// public static void setColor(Color color, double alpha)
+// {
+// if (color != null) glColor4d(color.r(), color.g(), color.b(), color.a() * alpha);
+// }
+//
+//
+// /**
+// * Translate
+// *
+// * @param x
+// * @param y
+// */
+// public static void translate(double x, double y)
+// {
+// glTranslated(x, y, 0);
+// }
+//
+//
+// /**
+// * Translate
+// *
+// * @param x
+// * @param y
+// * @param z
+// */
+// public static void translate(double x, double y, double z)
+// {
+// glTranslated(x, y, z);
+// }
+//
+//
+// /**
+// * Translate with coord
+// *
+// * @param coord coord
+// */
+// public static void translate(Vect coord)
+// {
+// glTranslated(coord.x(), coord.y(), coord.z());
+// }
+//
+//
+// /**
+// * Translate with coord, discard Z
+// *
+// * @param coord coord
+// */
+// public static void translateXY(Vect coord)
+// {
+// glTranslated(coord.x(), coord.y(), 0);
+// }
+//
+//
+// /**
+// * Scale
+// *
+// * @param x
+// * @param y
+// */
+// public static void scale(double x, double y)
+// {
+// glScaled(x, y, 0);
+// }
+//
+//
+// /**
+// * Scale
+// *
+// * @param x
+// * @param y
+// * @param z
+// */
+// public static void scale(double x, double y, double z)
+// {
+// glScaled(x, y, z);
+// }
+//
+//
+// /**
+// * Scale
+// *
+// * @param factor vector of scaling factors
+// */
+// public static void scale(Vect factor)
+// {
+// glScaled(factor.x(), factor.y(), factor.z());
+// }
+//
+//
+// /**
+// * Scale by X factor
+// *
+// * @param factor scaling factor
+// */
+// public static void scaleXY(double factor)
+// {
+// glScaled(factor, factor, 1);
+// }
+//
+//
+// /**
+// * Scale by X factor
+// *
+// * @param factor scaling factor
+// */
+// public static void scaleX(double factor)
+// {
+// glScaled(factor, 1, 1);
+// }
+//
+//
+// /**
+// * Scale by Y factor
+// *
+// * @param factor scaling factor
+// */
+// public static void scaleY(double factor)
+// {
+// glScaled(1, factor, 1);
+// }
+//
+//
+// /**
+// * Scale by Z factor
+// *
+// * @param factor scaling factor
+// */
+// public static void scaleZ(double factor)
+// {
+// glScaled(1, 1, factor);
+// }
+//
+//
+// /**
+// * Rotate around X axis
+// *
+// * @param angle deg
+// */
+// public static void rotateX(double angle)
+// {
+// rotate(angle, AXIS_X);
+// }
+//
+//
+// /**
+// * Rotate around Y axis
+// *
+// * @param angle deg
+// */
+// public static void rotateY(double angle)
+// {
+// rotate(angle, AXIS_Y);
+// }
+//
+//
+// /**
+// * Rotate around Z axis
+// *
+// * @param angle deg
+// */
+// public static void rotateZ(double angle)
+// {
+// rotate(angle, AXIS_Z);
+// }
+//
+//
+// /**
+// * Rotate
+// *
+// * @param angle rotate angle
+// * @param axis rotation axis
+// */
+// public static void rotate(double angle, Vect axis)
+// {
+// final Vect vec = axis.norm(1);
+// glRotated(angle, vec.x(), vec.y(), vec.z());
+// }
+//
+// private static int pushed = 0;
+// /** Can be used to avoid texture binding and glBegin/glEnd in textured quads */
+// public static boolean batchTexturedQuadMode;
+//
+//
+// /**
+// * Store GL state
+// */
+// public static void pushState()
+// {
+// pushed++;
+//
+// if (pushed >= 100) {
+// Log.w("Suspicious number of state pushes: " + pushed);
+// }
+//
+// GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS);
+// GL11.glPushClientAttrib(GL11.GL_ALL_CLIENT_ATTRIB_BITS);
+// GL11.glMatrixMode(GL11.GL_MODELVIEW);
+// GL11.glPushMatrix();
+// GL11.glMatrixMode(GL11.GL_PROJECTION);
+// GL11.glPushMatrix();
+// GL11.glMatrixMode(GL11.GL_MODELVIEW);
+// }
+//
+//
+// /**
+// * Restore Gl state
+// */
+// public static void popState()
+// {
+// if (pushed == 0) {
+// Log.w("Pop without push.");
+// }
+//
+// pushed--;
+//
+// GL11.glMatrixMode(GL11.GL_PROJECTION);
+// GL11.glPopMatrix();
+// GL11.glMatrixMode(GL11.GL_MODELVIEW);
+// GL11.glPopMatrix();
+// GL11.glPopClientAttrib();
+// GL11.glPopAttrib();
+// }
+//
+//
+// /**
+// * Store matrix
+// */
+// public static void pushMatrix()
+// {
+// GL11.glPushMatrix();
+// }
+//
+//
+// /**
+// * Restore Gl state
+// */
+// public static void popMatrix()
+// {
+// GL11.glPopMatrix();
+// }
+//
+//
+// /**
+// * Load texture
+// *
+// * @param resourcePath
+// * @param filtering filtering mode to use while loading.
+// * @return the loaded texture
+// */
+// public synchronized static Texture loadSlickTexture(String resourcePath, FilterMode filtering)
+// {
+//
+// try {
+//
+// final String ext = FileUtils.getExtension(resourcePath).toUpperCase();
+//
+// final Texture texture = TextureLoader.getTexture(ext, FileUtils.getResource(resourcePath), false, filtering.num);
+//
+// if (texture == null) {
+// Log.w("Texture " + resourcePath + " could not be loaded.");
+// }
+//
+// return texture;
+//
+// } catch (final IOException e) {
+// Log.e("Loading of texture " + resourcePath + " failed.", e);
+// throw new RuntimeException("Could not load texture " + resourcePath + ".", e);
+// }
+//
+// }
+//
+//
+// /**
+// * Render quad 2D
+// *
+// * @param rect rectangle
+// * @param color draw color
+// */
+// public static void quad(Rect rect, Color color)
+// {
+// setColor(color);
+// quad(rect);
+// }
+//
+//
+// /**
+// * Render quad
+// *
+// * @param quad the quad to draw (px)
+// */
+// public static void quad(Rect quad)
+// {
+// final RectDigest q = quad.digest();
+//
+// // draw with color
+//
+// glDisable(GL_TEXTURE_2D);
+//
+// // quad
+// glBegin(GL_QUADS);
+// glVertex2d(q.left, q.bottom);
+// glVertex2d(q.right, q.bottom);
+// glVertex2d(q.right, q.top);
+// glVertex2d(q.left, q.top);
+// glEnd();
+// }
+//
+//
+// /**
+// * Draw quad with horizontal gradient
+// *
+// * @param quad drawn quad bounds
+// * @param color1 left color
+// * @param color2 right color
+// */
+// public static void quadGradH(Rect quad, Color color1, Color color2)
+// {
+// quadColor(quad, color1, color2, color2, color1);
+// }
+//
+//
+// public static void quadColor(Rect quad, Color color)
+// {
+// quadColor(quad, color, color, color, color);
+// }
+//
+//
+// /**
+// * Draw quad with coloured vertices.
+// *
+// * @param quad drawn quad bounds
+// * @param colorHMinVMin
+// * @param colorHMaxVMin
+// * @param colorHMaxVMax
+// * @param colorHMinVMax
+// */
+// public static void quadColor(Rect quad, Color colorHMinVMin, Color colorHMaxVMin, Color colorHMaxVMax, Color colorHMinVMax)
+// {
+// final RectDigest r = quad.digest();
+//
+// // draw with color
+//
+// glDisable(GL_TEXTURE_2D);
+//
+// glBegin(GL_QUADS);
+// setColor(colorHMinVMax);
+// glVertex2d(r.left, r.bottom);
+//
+// setColor(colorHMaxVMax);
+// glVertex2d(r.right, r.bottom);
+//
+// setColor(colorHMaxVMin);
+// glVertex2d(r.right, r.top);
+//
+// setColor(colorHMinVMin);
+// glVertex2d(r.left, r.top);
+// glEnd();
+// }
+//
+//
+// /**
+// * Draw quad with vertical gradient
+// *
+// * @param quad drawn quad bounds
+// * @param color1 top color
+// * @param color2 bottom color
+// */
+// public static void quadGradV(Rect quad, Color color1, Color color2)
+// {
+// quadColor(quad, color1, color1, color2, color2);
+// }
+//
+//
+// /**
+// * Render textured rect
+// *
+// * @param quad rectangle (px)
+// * @param txquad texture quad
+// */
+// public static void quadTextured(Rect quad, TxQuad txquad)
+// {
+// quadTextured(quad, txquad, RGB.WHITE);
+// }
+//
+//
+// /**
+// * Render textured rect
+// *
+// * @param quad rectangle (px)
+// * @param txquad texture instance
+// * @param tint color tint
+// */
+// public static void quadTextured(Rect quad, TxQuad txquad, Color tint)
+// {
+// if (!batchTexturedQuadMode) {
+// glEnable(GL_TEXTURE_2D);
+// txquad.tx.bind();
+// glBegin(GL_QUADS);
+// setColor(tint);
+// }
+//
+// final RectDigest q = quad.digest();
+// final RectDigest u = txquad.uvs.digest();
+//
+// final double offs = 0.0001;// hack to avoid white stitching
+//
+// double tL = u.left + offs, tR = u.right - offs, tT = u.top + offs, tB = u.bottom - offs;
+//
+// // handle flip
+// if (txquad.isFlippedY()) {
+// final double swap = tT;
+// tT = tB;
+// tB = swap;
+// }
+//
+// if (txquad.isFlippedX()) {
+// final double swap = tL;
+// tL = tR;
+// tR = swap;
+// }
+//
+// final double w = txquad.tx.getWidth01();
+// final double h = txquad.tx.getHeight01();
+//
+// // quad with texture
+// glTexCoord2d(tL * w, tB * h);
+// glVertex2d(q.left, q.bottom);
+//
+// glTexCoord2d(tR * w, tB * h);
+// glVertex2d(q.right, q.bottom);
+//
+// glTexCoord2d(tR * w, tT * h);
+// glVertex2d(q.right, q.top);
+//
+// glTexCoord2d(tL * w, tT * h);
+// glVertex2d(q.left, q.top);
+//
+// if (!batchTexturedQuadMode) glEnd();
+// }
+//
+//
+// /**
+// * Setup Ortho projection for 2D graphics
+// *
+// * @param size viewport size (screen size)
+// */
+// public static void setupOrtho(Vect size)
+// {
+// // fix projection for changed size
+// glMatrixMode(GL_PROJECTION);
+// glLoadIdentity();
+// glViewport(0, 0, size.xi(), size.yi());
+// glOrtho(0, size.xi(), size.yi(), 0, -1000, 1000);
+//
+// // back to modelview
+// glMatrixMode(GL_MODELVIEW);
+//
+// glLoadIdentity();
+//
+// glDisable(GL_LIGHTING);
+//
+// glClearDepth(1f);
+// glEnable(GL_DEPTH_TEST);
+// glDepthFunc(GL_LEQUAL);
+//
+// glEnable(GL_NORMALIZE);
+//
+// glShadeModel(GL_SMOOTH);
+//
+// glEnable(GL_BLEND);
+// glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+// }
+//
+//
+// public static void enterBatchTexturedQuadMode(ITexture texture)
+// {
+// texture.bind();
+// glBegin(GL11.GL_QUADS);
+// batchTexturedQuadMode = true;
+// }
+//
+//
+// public static void leaveBatchTexturedQuadMode()
+// {
+// glEnd();
+// batchTexturedQuadMode = false;
+// }
+//}
diff --git a/src/mightypork/gamecore/backend/Backend.java b/src/mightypork/gamecore/backend/Backend.java
index e347dce..3d2b133 100644
--- a/src/mightypork/gamecore/backend/Backend.java
+++ b/src/mightypork/gamecore/backend/Backend.java
@@ -7,16 +7,14 @@ import mightypork.utils.eventbus.clients.RootBusNode;
/**
- * Application backend interface (set of core modules)
+ * Application backend interface (set of core modules).
+ * Backend is created without a bus access, which will be assigned during app
+ * initialization.
*
* @author MightyPork
*/
public abstract class Backend extends RootBusNode {
- public Backend(BusAccess busAccess) {
- super(busAccess);
- }
-
/**
* Initialize backend modules, add them to event bus.
diff --git a/src/mightypork/gamecore/backend/BackendModule.java b/src/mightypork/gamecore/backend/BackendModule.java
index f9d65e8..0515086 100644
--- a/src/mightypork/gamecore/backend/BackendModule.java
+++ b/src/mightypork/gamecore/backend/BackendModule.java
@@ -1,7 +1,7 @@
package mightypork.gamecore.backend;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.BusAccess;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.interfaces.Destroyable;
@@ -23,10 +23,11 @@ public abstract class BackendModule extends BusNode implements Destroyable {
super(busAccess);
}
+
@Override
- @DefaultImpl
+ @Stub
public void destroy()
- {
+ {
}
}
diff --git a/src/mightypork/gamecore/backend/lwjgl/AwtScreenshot.java b/src/mightypork/gamecore/backend/lwjgl/AwtScreenshot.java
index 0609da6..5a3ced1 100644
--- a/src/mightypork/gamecore/backend/lwjgl/AwtScreenshot.java
+++ b/src/mightypork/gamecore/backend/lwjgl/AwtScreenshot.java
@@ -33,8 +33,7 @@ public class AwtScreenshot implements Screenshot {
* @param bpp bits per pixel (typically 4)
* @param buffer
*/
- public AwtScreenshot(int width, int height, int bpp, ByteBuffer buffer)
- {
+ public AwtScreenshot(int width, int height, int bpp, ByteBuffer buffer) {
this.width = width;
this.height = height;
this.bpp = bpp;
diff --git a/src/mightypork/gamecore/backend/lwjgl/LwjglBackend.java b/src/mightypork/gamecore/backend/lwjgl/LwjglBackend.java
index cc00bb2..a4a2ce5 100644
--- a/src/mightypork/gamecore/backend/lwjgl/LwjglBackend.java
+++ b/src/mightypork/gamecore/backend/lwjgl/LwjglBackend.java
@@ -13,11 +13,6 @@ import mightypork.utils.eventbus.BusAccess;
*/
public class LwjglBackend extends Backend {
- public LwjglBackend(BusAccess busAccess) {
- super(busAccess);
- }
-
-
private LwjglRenderModule renderer;
diff --git a/src/mightypork/gamecore/backend/lwjgl/LwjglRenderModule.java b/src/mightypork/gamecore/backend/lwjgl/LwjglRenderModule.java
index 7141cb1..9c11771 100644
--- a/src/mightypork/gamecore/backend/lwjgl/LwjglRenderModule.java
+++ b/src/mightypork/gamecore/backend/lwjgl/LwjglRenderModule.java
@@ -6,12 +6,6 @@ import static org.lwjgl.opengl.GL11.*;
import java.nio.ByteBuffer;
import java.util.Stack;
-import org.lwjgl.BufferUtils;
-import org.lwjgl.LWJGLException;
-import org.lwjgl.opengl.Display;
-import org.lwjgl.opengl.DisplayMode;
-import org.lwjgl.opengl.GL11;
-
import mightypork.gamecore.render.Grad;
import mightypork.gamecore.render.RenderModule;
import mightypork.gamecore.render.Screenshot;
@@ -29,6 +23,12 @@ import mightypork.utils.math.constraints.rect.caching.RectDigest;
import mightypork.utils.math.constraints.vect.Vect;
import mightypork.utils.math.timing.FpsMeter;
+import org.lwjgl.BufferUtils;
+import org.lwjgl.LWJGLException;
+import org.lwjgl.opengl.Display;
+import org.lwjgl.opengl.DisplayMode;
+import org.lwjgl.opengl.GL11;
+
/**
* LWJGL rendering module
@@ -376,13 +376,17 @@ public class LwjglRenderModule extends RenderModule {
@Override
- public void setupProjection(Vect screenSize)
+ public void setupProjection()
{
// fix projection for changed size
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
- glViewport(0, 0, screenSize.xi(), screenSize.yi());
- glOrtho(0, screenSize.xi(), screenSize.yi(), 0, -1000, 1000);
+
+ int w = Display.getWidth();
+ int h = Display.getHeight();
+
+ glViewport(0, 0, w, h);
+ glOrtho(0, w, h, 0, -1000, 1000);
// back to modelview
glMatrixMode(GL_MODELVIEW);
diff --git a/src/mightypork/gamecore/backend/lwjgl/SlickLazyTexture.java b/src/mightypork/gamecore/backend/lwjgl/SlickLazyTexture.java
index 90e4203..c6c412e 100644
--- a/src/mightypork/gamecore/backend/lwjgl/SlickLazyTexture.java
+++ b/src/mightypork/gamecore/backend/lwjgl/SlickLazyTexture.java
@@ -4,10 +4,11 @@ package mightypork.gamecore.backend.lwjgl;
import java.io.IOException;
import mightypork.gamecore.resources.TextureBasedResource;
-import mightypork.gamecore.resources.textures.*;
+import mightypork.gamecore.resources.textures.LazyTexture;
import mightypork.utils.annotations.Alias;
import mightypork.utils.files.FileUtils;
import mightypork.utils.logging.Log;
+
import org.lwjgl.opengl.GL11;
import org.newdawn.slick.opengl.Texture;
import org.newdawn.slick.opengl.TextureLoader;
@@ -26,6 +27,7 @@ public class SlickLazyTexture extends LazyTexture {
private boolean alpha;
private boolean alphal;
+
/**
* @param resourcePath resource path
*/
@@ -33,6 +35,7 @@ public class SlickLazyTexture extends LazyTexture {
super(resourcePath);
}
+
@Override
protected synchronized void loadResource(String path)
{
diff --git a/src/mightypork/gamecore/core/config/Config.java b/src/mightypork/gamecore/core/config/Config.java
index 9762953..1a2422a 100644
--- a/src/mightypork/gamecore/core/config/Config.java
+++ b/src/mightypork/gamecore/core/config/Config.java
@@ -116,6 +116,7 @@ public class Config {
/**
* Add "key." before the given config file key
+ *
* @param cfgKey config key
* @return key. + cfgKey
*/
diff --git a/src/mightypork/gamecore/core/config/ConfigSetup.java b/src/mightypork/gamecore/core/config/ConfigSetup.java
index 1680753..4db01e0 100644
--- a/src/mightypork/gamecore/core/config/ConfigSetup.java
+++ b/src/mightypork/gamecore/core/config/ConfigSetup.java
@@ -1,11 +1,13 @@
package mightypork.gamecore.core.config;
+
import mightypork.utils.files.config.PropertyManager;
+
/**
* Config setup, class used to populate the config file.
*/
public interface ConfigSetup {
void addOptions(PropertyManager prop);
-}
\ No newline at end of file
+}
diff --git a/src/mightypork/gamecore/core/config/KeyOpts.java b/src/mightypork/gamecore/core/config/KeyOpts.java
index a28f3bf..df8271d 100644
--- a/src/mightypork/gamecore/core/config/KeyOpts.java
+++ b/src/mightypork/gamecore/core/config/KeyOpts.java
@@ -1,13 +1,14 @@
package mightypork.gamecore.core.config;
+
import mightypork.gamecore.input.KeyStroke;
+
/**
* Key options - restricted access to {@link Config} for keys
*/
public class KeyOpts {
-
public void add(String cfgKey, String dataString)
{
add(cfgKey, dataString, null);
@@ -16,7 +17,8 @@ public class KeyOpts {
/**
* @param cfgKey key in config file
- * @param dataString string representing the keystroke (format for {@link KeyStroke})
+ * @param dataString string representing the keystroke (format for
+ * {@link KeyStroke})
* @param comment optional comment
*/
public void add(String cfgKey, String dataString, String comment)
@@ -25,4 +27,4 @@ public class KeyOpts {
Config.strokes.put(Config.prefixKey(cfgKey), kprop);
Config.cfg.putProperty(kprop);
}
-}
\ No newline at end of file
+}
diff --git a/src/mightypork/gamecore/core/config/KeyProperty.java b/src/mightypork/gamecore/core/config/KeyProperty.java
index d5586ec..fe893ba 100644
--- a/src/mightypork/gamecore/core/config/KeyProperty.java
+++ b/src/mightypork/gamecore/core/config/KeyProperty.java
@@ -1,9 +1,11 @@
package mightypork.gamecore.core.config;
+
import mightypork.gamecore.input.KeyStroke;
import mightypork.gamecore.input.Keys;
import mightypork.utils.files.config.Property;
+
/**
* Key property.
* The stored value must be invariant ({@link KeyStroke} is mutable).
@@ -12,8 +14,7 @@ import mightypork.utils.files.config.Property;
*/
public class KeyProperty extends Property {
- public KeyProperty(String key, KeyStroke defaultValue, String comment)
- {
+ public KeyProperty(String key, KeyStroke defaultValue, String comment) {
super(key, defaultValue, comment);
}
@@ -50,4 +51,4 @@ public class KeyProperty extends Property {
// keep it invariant
getValue().setTo(((KeyStroke) value).getKey(), ((KeyStroke) value).getMod());
}
-}
\ No newline at end of file
+}
diff --git a/src/mightypork/gamecore/core/config/KeySetup.java b/src/mightypork/gamecore/core/config/KeySetup.java
index bca57a0..6573273 100644
--- a/src/mightypork/gamecore/core/config/KeySetup.java
+++ b/src/mightypork/gamecore/core/config/KeySetup.java
@@ -7,4 +7,4 @@ package mightypork.gamecore.core.config;
public interface KeySetup {
public void addKeys(KeyOpts keys);
-}
\ No newline at end of file
+}
diff --git a/src/mightypork/gamecore/core/events/MainLoopRequest.java b/src/mightypork/gamecore/core/events/MainLoopRequest.java
index 7034aa9..855531b 100644
--- a/src/mightypork/gamecore/core/events/MainLoopRequest.java
+++ b/src/mightypork/gamecore/core/events/MainLoopRequest.java
@@ -22,8 +22,7 @@ public class MainLoopRequest extends BusEvent {
* @param task task to run on main thread in rendering context
* @param priority if true, skip other tasks in queue
*/
- public MainLoopRequest(Runnable task, boolean priority)
- {
+ public MainLoopRequest(Runnable task, boolean priority) {
this.task = task;
this.priority = priority;
}
diff --git a/src/mightypork/gamecore/core/modules/AppAccess.java b/src/mightypork/gamecore/core/modules/AppAccess.java
index 0b98452..0f35bd7 100644
--- a/src/mightypork/gamecore/core/modules/AppAccess.java
+++ b/src/mightypork/gamecore/core/modules/AppAccess.java
@@ -2,7 +2,6 @@ package mightypork.gamecore.core.modules;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.utils.eventbus.BusAccess;
@@ -26,12 +25,6 @@ public interface AppAccess extends BusAccess {
abstract InputSystem getInput();
- /**
- * @return display system
- */
- abstract DisplaySystem getDisplay();
-
-
/**
* Quit to OS
* Destroy app & exit VM
diff --git a/src/mightypork/gamecore/core/modules/AppAccessAdapter.java b/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
index 897757b..93085bc 100644
--- a/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
+++ b/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
@@ -2,7 +2,6 @@ package mightypork.gamecore.core.modules;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.utils.eventbus.EventBus;
@@ -20,8 +19,7 @@ public class AppAccessAdapter implements AppAccess {
/**
* @param app app access
*/
- public AppAccessAdapter(AppAccess app)
- {
+ public AppAccessAdapter(AppAccess app) {
if (app == null) throw new NullPointerException("AppAccess instance cannot be null.");
this.app = app;
@@ -42,13 +40,6 @@ public class AppAccessAdapter implements AppAccess {
}
- @Override
- public final DisplaySystem getDisplay()
- {
- return app.getDisplay();
- }
-
-
@Override
public final EventBus getEventBus()
{
diff --git a/src/mightypork/gamecore/core/modules/AppInitOptions.java b/src/mightypork/gamecore/core/modules/AppInitOptions.java
new file mode 100644
index 0000000..a3bf507
--- /dev/null
+++ b/src/mightypork/gamecore/core/modules/AppInitOptions.java
@@ -0,0 +1,151 @@
+package mightypork.gamecore.core.modules;
+
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Level;
+
+import mightypork.gamecore.backend.Backend;
+import mightypork.gamecore.core.WorkDir.RouteSetup;
+import mightypork.gamecore.core.config.ConfigSetup;
+import mightypork.gamecore.core.config.KeySetup;
+import mightypork.gamecore.resources.AsyncResourceLoader;
+import mightypork.gamecore.resources.ResourceLoader;
+import mightypork.gamecore.resources.ResourceSetup;
+
+
+/**
+ * Init options holder class
+ */
+public class AppInitOptions {
+
+ boolean singleInstance = false;
+
+ Backend backend = null;
+ File workdir = null;
+
+ String logDir = "log";
+ String logFilePrefix = "runtime";
+
+ String screenshotDir = "screenshots";
+
+ int logArchiveCount = 0;
+ boolean busLogging = false;
+
+ String configFile = "settings.cfg";
+ String configComment = "Main config file";
+
+ public String lockFile = ".lock";
+
+ final List resourceLists = new ArrayList<>();
+ final List keyLists = new ArrayList<>();
+ final List configLists = new ArrayList<>();
+ final List routeLists = new ArrayList<>();
+
+ ResourceLoader resourceLoader = new AsyncResourceLoader();
+ Level logLevel = Level.ALL;
+ public boolean sigleInstance = true;
+ Level logSoutLevel = Level.ALL;
+
+
+ public void setConfigFile(String filename, String comment)
+ {
+ configFile = filename;
+ configComment = comment;
+ }
+
+
+ public void addConfig(ConfigSetup cfg)
+ {
+ configLists.add(cfg);
+ }
+
+
+ public void addKeys(KeySetup keys)
+ {
+ keyLists.add(keys);
+ }
+
+
+ public void addRoutes(RouteSetup keys)
+ {
+ routeLists.add(keys);
+ }
+
+
+ public void addResources(ResourceSetup res)
+ {
+ resourceLists.add(res);
+ }
+
+
+ public void setBackend(Backend backend)
+ {
+ this.backend = backend;
+ }
+
+
+ /**
+ * Set whether to run in single instance mode, or allow multiple instances.
+ * Multiple instances running can cause various collisions (eg. when writing
+ * config file or logging).
+ *
+ * @param sigleInstance true to allow only one instance
+ */
+ public void setSigleInstance(boolean sigleInstance)
+ {
+ this.sigleInstance = sigleInstance;
+ }
+
+
+ /**
+ * Set working directory path. If not exists, it will be created.
+ *
+ * @param workdir work dir path
+ */
+ public void setWorkdir(File workdir)
+ {
+ this.workdir = workdir;
+ }
+
+
+ public void setBusLogging(boolean yes)
+ {
+ busLogging = yes;
+ }
+
+
+ public void setLogOptions(String logDir, String filePrefix, int archivedCount, Level logLevel)
+ {
+ this.logDir = logDir;
+ this.logFilePrefix = filePrefix;
+ this.logArchiveCount = archivedCount;
+ this.logLevel = logLevel;
+ }
+
+
+ public void setResourceLoader(ResourceLoader resLoader)
+ {
+ resourceLoader = resLoader;
+ }
+
+
+ public void setScreenshotDir(String path)
+ {
+ this.screenshotDir = path;
+ }
+
+
+ public void setLockFile(String lockFile)
+ {
+ this.lockFile = lockFile;
+ }
+
+
+ public void setLogLevel(Level logLevel, Level soutLevel)
+ {
+ this.logLevel = logLevel;
+ this.logSoutLevel = soutLevel;
+ }
+}
diff --git a/src/mightypork/gamecore/core/modules/AppModule.java b/src/mightypork/gamecore/core/modules/AppModule.java
index 074f588..2ff0bd0 100644
--- a/src/mightypork/gamecore/core/modules/AppModule.java
+++ b/src/mightypork/gamecore/core/modules/AppModule.java
@@ -2,7 +2,6 @@ package mightypork.gamecore.core.modules;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.utils.eventbus.clients.RootBusNode;
@@ -23,8 +22,7 @@ public abstract class AppModule extends RootBusNode implements AppAccess {
*
* @param app access to app systems
*/
- public AppModule(AppAccess app)
- {
+ public AppModule(AppAccess app) {
super(app);
this.app = app;
@@ -45,13 +43,6 @@ public abstract class AppModule extends RootBusNode implements AppAccess {
}
- @Override
- public final DisplaySystem getDisplay()
- {
- return app.getDisplay();
- }
-
-
@Override
public final void shutdown()
{
diff --git a/src/mightypork/gamecore/core/modules/AppSubModule.java b/src/mightypork/gamecore/core/modules/AppSubModule.java
index 0433539..4668f38 100644
--- a/src/mightypork/gamecore/core/modules/AppSubModule.java
+++ b/src/mightypork/gamecore/core/modules/AppSubModule.java
@@ -2,7 +2,6 @@ package mightypork.gamecore.core.modules;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.eventbus.clients.DelegatingClient;
@@ -25,8 +24,7 @@ public class AppSubModule extends BusNode implements AppAccess {
*
* @param app access to app systems
*/
- public AppSubModule(AppAccess app)
- {
+ public AppSubModule(AppAccess app) {
super(app);
this.app = app;
@@ -47,13 +45,6 @@ public class AppSubModule extends BusNode implements AppAccess {
}
- @Override
- public final DisplaySystem getDisplay()
- {
- return app.getDisplay();
- }
-
-
@Override
public final void shutdown()
{
diff --git a/src/mightypork/gamecore/core/modules/BaseApp.java b/src/mightypork/gamecore/core/modules/BaseApp.java
index bf51e46..0e5ac8a 100644
--- a/src/mightypork/gamecore/core/modules/BaseApp.java
+++ b/src/mightypork/gamecore/core/modules/BaseApp.java
@@ -4,9 +4,6 @@ package mightypork.gamecore.core.modules;
import java.io.File;
import java.io.IOException;
import java.lang.Thread.UncaughtExceptionHandler;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Level;
import javax.swing.JOptionPane;
@@ -19,14 +16,12 @@ import mightypork.gamecore.core.config.KeySetup;
import mightypork.gamecore.gui.screens.ScreenRegistry;
import mightypork.gamecore.gui.screens.impl.CrossfadeOverlay;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
-import mightypork.gamecore.resources.AsyncResourceLoader;
+import mightypork.gamecore.render.RenderModule;
import mightypork.gamecore.resources.Res;
-import mightypork.gamecore.resources.ResourceLoader;
import mightypork.gamecore.resources.ResourceSetup;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.gamecore.util.SlickLogRedirector;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.EventBus;
import mightypork.utils.eventbus.events.DestroyEvent;
import mightypork.utils.files.InstanceLock;
@@ -48,109 +43,8 @@ import mightypork.utils.math.algo.Move;
*/
public abstract class BaseApp extends App implements AppAccess, UncaughtExceptionHandler {
- /**
- * Init options holder class
- */
- public class AppInitOptions {
-
- private String logDir = "log";
- private String logFilePrefix = "runtime";
-
- private String screenshotDir = "screenshots";
-
- private int logArchiveCount = 0;
- private boolean busLogging = false;
-
- private String configFile = "settings.cfg";
- private String configComment = "Main config file";
-
- public String lockFile = ".lock";
-
- private final List resourceLists = new ArrayList<>();
- private final List keyLists = new ArrayList<>();
- private final List configLists = new ArrayList<>();
- private final List routeLists = new ArrayList<>();
-
- private ResourceLoader resourceLoader = new AsyncResourceLoader();
- private Level logLevel = Level.ALL;
- public boolean sigleInstance;
- private Level logSoutLevel;
-
-
- public void setConfigFile(String filename, String comment)
- {
- configFile = filename;
- configComment = comment;
- }
-
-
- public void addConfig(ConfigSetup cfg)
- {
- configLists.add(cfg);
- }
-
-
- public void addKeys(KeySetup keys)
- {
- keyLists.add(keys);
- }
-
-
- public void addRoutes(RouteSetup keys)
- {
- routeLists.add(keys);
- }
-
-
- public void addResources(ResourceSetup res)
- {
- resourceLists.add(res);
- }
-
-
- public void setBusLogging(boolean yes)
- {
- busLogging = yes;
- }
-
-
- public void setLogOptions(String logDir, String filePrefix, int archivedCount, Level logLevel)
- {
- this.logDir = logDir;
- this.logFilePrefix = filePrefix;
- this.logArchiveCount = archivedCount;
- this.logLevel = logLevel;
- }
-
-
- public void setResourceLoader(ResourceLoader resLoader)
- {
- resourceLoader = resLoader;
- }
-
-
- public void setScreenshotDir(String path)
- {
- this.screenshotDir = path;
- }
-
-
- public void setLockFile(String lockFile)
- {
- this.lockFile = lockFile;
- }
-
-
- public void setLogLevel(Level logLevel, Level soutLevel)
- {
- this.logLevel = logLevel;
- this.logSoutLevel = soutLevel;
- }
- }
-
// modules
private InputSystem inputSystem;
- private DisplaySystem displaySystem;
private SoundSystem soundSystem;
private EventBus eventBus;
private MainLoop gameLoop;
@@ -177,11 +71,11 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
}
- public BaseApp(File workdir, boolean singleInstance) {
+ public BaseApp(Backend backend) {
- WorkDir.init(workdir);
-
- opt.sigleInstance = singleInstance;
+ eventBus = new EventBus();
+ setBackend(backend);
+ backend.setBusAccess(this);
}
@@ -207,6 +101,8 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
*/
protected void initialize()
{
+ WorkDir.init(opt.workdir);
+
if (opt.sigleInstance) initLock();
lockObtained = true;
@@ -265,8 +161,7 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
* Display
*/
Log.f2("Initializing Display System...");
- displaySystem = new DisplaySystem(this);
- initDisplay(displaySystem);
+ initDisplay(gfx());
/*
* Audio
@@ -393,7 +288,7 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
* Called at the beginning of the initialization sequence, right after lock
* was obtained.
*/
- @DefaultImpl
+ @Stub
protected void preInit()
{
}
@@ -402,22 +297,26 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
/**
* Called at the end of init sequence, before main loop starts.
*/
- @DefaultImpl
+ @Stub
protected void postInit()
{
}
/**
- * Create window and configure display system
+ * Create window and configure rendering system
*
- * @param display
+ * @param gfx Graphics module
*/
- @DefaultImpl
- protected void initDisplay(DisplaySystem display)
+ @Stub
+ protected void initDisplay(RenderModule gfx)
{
- display.createMainWindow(800, 600, true, false, "LWJGL game");
- display.setTargetFps(60);
+ gfx.setSize(800, 600);
+ gfx.setResizable(true);
+ gfx.setTitle("New Game");
+ gfx.setTargetFps(60);
+
+ gfx.createDisplay();
}
@@ -426,7 +325,7 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
*
* @param audio
*/
- @DefaultImpl
+ @Stub
protected void initSoundSystem(SoundSystem audio)
{
}
@@ -467,7 +366,7 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
}
- @DefaultImpl
+ @Stub
protected void initInputSystem(InputSystem input)
{
}
@@ -508,13 +407,6 @@ public abstract class BaseApp extends App implements AppAccess, UncaughtExceptio
}
- @Override
- public final DisplaySystem getDisplay()
- {
- return displaySystem;
- }
-
-
@Override
public final EventBus getEventBus()
{
diff --git a/src/mightypork/gamecore/core/modules/MainLoop.java b/src/mightypork/gamecore/core/modules/MainLoop.java
index 92be51c..138515e 100644
--- a/src/mightypork/gamecore/core/modules/MainLoop.java
+++ b/src/mightypork/gamecore/core/modules/MainLoop.java
@@ -9,7 +9,7 @@ import mightypork.gamecore.render.Renderable;
import mightypork.gamecore.render.TaskTakeScreenshot;
import mightypork.gamecore.render.events.ScreenshotRequestListener;
import mightypork.utils.Support;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.events.UpdateEvent;
import mightypork.utils.logging.Log;
import mightypork.utils.math.timing.Profiler;
@@ -35,8 +35,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
/**
* @param app {@link AppAccess} instance
*/
- public MainLoop(AppAccess app)
- {
+ public MainLoop(AppAccess app) {
super(app);
}
@@ -61,7 +60,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
timer = new TimerDelta();
while (running) {
- getDisplay().beginFrame();
+ App.gfx().beginFrame();
double delta = timer.getDelta();
if (delta > MAX_DELTA) {
@@ -90,7 +89,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
afterRender();
- getDisplay().endFrame();
+ App.gfx().endFrame();
}
}
@@ -98,7 +97,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
/**
* Called before render
*/
- @DefaultImpl
+ @Stub
protected void beforeRender()
{
//
@@ -108,7 +107,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
/**
* Called after render
*/
- @DefaultImpl
+ @Stub
protected void afterRender()
{
//
diff --git a/src/mightypork/gamecore/gui/components/BaseComponent.java b/src/mightypork/gamecore/gui/components/BaseComponent.java
index 083783c..a4210c8 100644
--- a/src/mightypork/gamecore/gui/components/BaseComponent.java
+++ b/src/mightypork/gamecore/gui/components/BaseComponent.java
@@ -6,7 +6,7 @@ import mightypork.gamecore.gui.events.LayoutChangeListener;
import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.Support;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.interfaces.Enableable;
import mightypork.utils.logging.Log;
import mightypork.utils.math.color.Color;
@@ -33,8 +33,7 @@ public abstract class BaseComponent extends AbstractRectCache implements Compone
private Num alphaMul = Num.ONE;
- public BaseComponent()
- {
+ public BaseComponent() {
enableCaching(false);
}
@@ -110,7 +109,7 @@ public abstract class BaseComponent extends AbstractRectCache implements Compone
@Override
- @DefaultImpl
+ @Stub
public void updateLayout()
{
}
diff --git a/src/mightypork/gamecore/gui/components/LayoutComponent.java b/src/mightypork/gamecore/gui/components/LayoutComponent.java
index 46759a9..916170b 100644
--- a/src/mightypork/gamecore/gui/components/LayoutComponent.java
+++ b/src/mightypork/gamecore/gui/components/LayoutComponent.java
@@ -7,7 +7,6 @@ import java.util.LinkedList;
import mightypork.gamecore.core.modules.AppAccess;
import mightypork.gamecore.core.modules.AppSubModule;
import mightypork.gamecore.input.InputSystem;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.utils.eventbus.EventBus;
import mightypork.utils.eventbus.clients.ClientHub;
@@ -20,16 +19,14 @@ public abstract class LayoutComponent extends BaseComponent implements ClientHub
final LinkedList components = new LinkedList<>();
- public LayoutComponent(AppAccess app, RectBound context)
- {
+ public LayoutComponent(AppAccess app, RectBound context) {
this.subModule = new AppSubModule(app);
setRect(context);
enableCaching(true); // layout is typically updated only when screen resizes.
}
- public LayoutComponent(AppAccess app)
- {
+ public LayoutComponent(AppAccess app) {
this(app, null);
}
@@ -76,13 +73,6 @@ public abstract class LayoutComponent extends BaseComponent implements ClientHub
}
- @Override
- public DisplaySystem getDisplay()
- {
- return subModule.getDisplay();
- }
-
-
@Override
public void shutdown()
{
diff --git a/src/mightypork/gamecore/gui/components/LinearComponent.java b/src/mightypork/gamecore/gui/components/LinearComponent.java
index 893149c..665d545 100644
--- a/src/mightypork/gamecore/gui/components/LinearComponent.java
+++ b/src/mightypork/gamecore/gui/components/LinearComponent.java
@@ -52,8 +52,7 @@ public abstract class LinearComponent extends BaseComponent implements DynamicWi
private Num height;
- public LinearComponent()
- {
+ public LinearComponent() {
super.setRect(rect);
}
diff --git a/src/mightypork/gamecore/gui/components/input/ClickableWrapper.java b/src/mightypork/gamecore/gui/components/input/ClickableWrapper.java
index 45dc6b7..ac6b8aa 100644
--- a/src/mightypork/gamecore/gui/components/input/ClickableWrapper.java
+++ b/src/mightypork/gamecore/gui/components/input/ClickableWrapper.java
@@ -14,8 +14,7 @@ public class ClickableWrapper extends ClickableComponent implements DelegatingCl
private final ClientList list;
- public ClickableWrapper(Component wrapped)
- {
+ public ClickableWrapper(Component wrapped) {
this.wrapped = wrapped;
wrapped.setRect(this);
diff --git a/src/mightypork/gamecore/gui/components/input/TextButton.java b/src/mightypork/gamecore/gui/components/input/TextButton.java
index 40eb506..992c838 100644
--- a/src/mightypork/gamecore/gui/components/input/TextButton.java
+++ b/src/mightypork/gamecore/gui/components/input/TextButton.java
@@ -32,8 +32,7 @@ public class TextButton extends ClickableComponent implements DynamicWidthCompon
private boolean hoverMove = true;
- public TextButton(GLFont font, String text, Color color)
- {
+ public TextButton(GLFont font, String text, Color color) {
this.color = color;
this.textPainter = new TextPainter(font, AlignX.CENTER, this.color, text);
diff --git a/src/mightypork/gamecore/gui/components/layout/ColumnLayout.java b/src/mightypork/gamecore/gui/components/layout/ColumnLayout.java
index abbdf2a..9a2470d 100644
--- a/src/mightypork/gamecore/gui/components/layout/ColumnLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/ColumnLayout.java
@@ -11,14 +11,12 @@ public class ColumnLayout extends GridLayout {
private int col = 0;
- public ColumnLayout(AppAccess app, int rows)
- {
+ public ColumnLayout(AppAccess app, int rows) {
this(app, null, rows);
}
- public ColumnLayout(AppAccess app, RectBound context, int cols)
- {
+ public ColumnLayout(AppAccess app, RectBound context, int cols) {
super(app, context, 1, cols);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/ConstraintLayout.java b/src/mightypork/gamecore/gui/components/layout/ConstraintLayout.java
index 3bf0ae8..e0e6c96 100644
--- a/src/mightypork/gamecore/gui/components/layout/ConstraintLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/ConstraintLayout.java
@@ -14,14 +14,12 @@ import mightypork.utils.math.constraints.rect.RectBound;
*/
public class ConstraintLayout extends LayoutComponent {
- public ConstraintLayout(AppAccess app)
- {
+ public ConstraintLayout(AppAccess app) {
super(app);
}
- public ConstraintLayout(AppAccess app, RectBound context)
- {
+ public ConstraintLayout(AppAccess app, RectBound context) {
super(app, context);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/FlowColumnLayout.java b/src/mightypork/gamecore/gui/components/layout/FlowColumnLayout.java
index b00d8e3..fb9697a 100644
--- a/src/mightypork/gamecore/gui/components/layout/FlowColumnLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/FlowColumnLayout.java
@@ -28,8 +28,7 @@ public class FlowColumnLayout extends LayoutComponent {
* @param elementWidth width of all elements
* @param align component align. Legal values are LEFT and RIGHT.
*/
- public FlowColumnLayout(AppAccess app, RectBound context, Num elementWidth, AlignX align)
- {
+ public FlowColumnLayout(AppAccess app, RectBound context, Num elementWidth, AlignX align) {
super(app, context);
this.elementWidth = elementWidth;
this.align = align;
@@ -48,8 +47,7 @@ public class FlowColumnLayout extends LayoutComponent {
* @param elementWidth width of all elements
* @param align component align. Legal values are LEFT and RIGHT.
*/
- public FlowColumnLayout(AppAccess app, Num elementWidth, AlignX align)
- {
+ public FlowColumnLayout(AppAccess app, Num elementWidth, AlignX align) {
this(app, null, elementWidth, align);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/FlowRowLayout.java b/src/mightypork/gamecore/gui/components/layout/FlowRowLayout.java
index 180a1e6..17db112 100644
--- a/src/mightypork/gamecore/gui/components/layout/FlowRowLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/FlowRowLayout.java
@@ -28,8 +28,7 @@ public class FlowRowLayout extends LayoutComponent {
* @param elementHeight height of all elements
* @param align component align. Legal values are TOP and BOTTOM.
*/
- public FlowRowLayout(AppAccess app, RectBound context, Num elementHeight, AlignY align)
- {
+ public FlowRowLayout(AppAccess app, RectBound context, Num elementHeight, AlignY align) {
super(app, context);
this.elementHeight = elementHeight;
this.align = align;
@@ -48,8 +47,7 @@ public class FlowRowLayout extends LayoutComponent {
* @param elementHeight height of all elements
* @param align component align. Legal values are TOP and BOTTOM.
*/
- public FlowRowLayout(AppAccess app, Num elementHeight, AlignY align)
- {
+ public FlowRowLayout(AppAccess app, Num elementHeight, AlignY align) {
this(app, null, elementHeight, align);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/GridLayout.java b/src/mightypork/gamecore/gui/components/layout/GridLayout.java
index 56da8b5..d672f41 100644
--- a/src/mightypork/gamecore/gui/components/layout/GridLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/GridLayout.java
@@ -24,8 +24,7 @@ public class GridLayout extends LayoutComponent {
* @param rows number of rows
* @param cols number of columns
*/
- public GridLayout(AppAccess app, RectBound context, int rows, int cols)
- {
+ public GridLayout(AppAccess app, RectBound context, int rows, int cols) {
super(app, context);
this.tiler = tiles(cols, rows);
}
@@ -39,8 +38,7 @@ public class GridLayout extends LayoutComponent {
* @param rows number of rows
* @param cols number of columns
*/
- public GridLayout(AppAccess app, int rows, int cols)
- {
+ public GridLayout(AppAccess app, int rows, int cols) {
this(app, null, rows, cols);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/RowLayout.java b/src/mightypork/gamecore/gui/components/layout/RowLayout.java
index 0db4442..5592a20 100644
--- a/src/mightypork/gamecore/gui/components/layout/RowLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/RowLayout.java
@@ -11,14 +11,12 @@ public class RowLayout extends GridLayout {
private int row = 0;
- public RowLayout(AppAccess app, int rows)
- {
+ public RowLayout(AppAccess app, int rows) {
this(app, null, rows);
}
- public RowLayout(AppAccess app, RectBound context, int rows)
- {
+ public RowLayout(AppAccess app, RectBound context, int rows) {
super(app, context, rows, 1);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/AbstractLinearWrapper.java b/src/mightypork/gamecore/gui/components/layout/linear/AbstractLinearWrapper.java
index d2142b5..f7ef0ed 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/AbstractLinearWrapper.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/AbstractLinearWrapper.java
@@ -23,8 +23,7 @@ public abstract class AbstractLinearWrapper extends LinearComponent implements D
/**
* @param wrapped wrapped component. Can be null.
*/
- public AbstractLinearWrapper(Component wrapped)
- {
+ public AbstractLinearWrapper(Component wrapped) {
this.wrapped = wrapped;
if (wrapped != null) {
if (wrapped instanceof LinearComponent) {
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/LinearGap.java b/src/mightypork/gamecore/gui/components/layout/linear/LinearGap.java
index d5f6d25..a5bf526 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/LinearGap.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/LinearGap.java
@@ -12,14 +12,12 @@ import mightypork.utils.math.constraints.num.Num;
*/
public class LinearGap extends LinearRectangle {
- public LinearGap(Num width)
- {
+ public LinearGap(Num width) {
super(new NullComponent(), width);
}
- public LinearGap(double heightPercent)
- {
+ public LinearGap(double heightPercent) {
this(Num.ZERO);
setWidth(height().perc(heightPercent));
}
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/LinearLayout.java b/src/mightypork/gamecore/gui/components/layout/linear/LinearLayout.java
index bee938d..d2985cb 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/LinearLayout.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/LinearLayout.java
@@ -15,15 +15,13 @@ import mightypork.utils.math.constraints.vect.proxy.VectAdapter;
public class LinearLayout extends LayoutComponent {
- public LinearLayout(AppAccess app, AlignX align)
- {
+ public LinearLayout(AppAccess app, AlignX align) {
super(app);
this.align = align;
}
- public LinearLayout(AppAccess app, RectBound context, AlignX align)
- {
+ public LinearLayout(AppAccess app, RectBound context, AlignX align) {
super(app, context);
this.align = align;
}
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/LinearRectangle.java b/src/mightypork/gamecore/gui/components/layout/linear/LinearRectangle.java
index 78e3f9c..9fa3fe8 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/LinearRectangle.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/LinearRectangle.java
@@ -10,8 +10,7 @@ public class LinearRectangle extends AbstractLinearWrapper {
private Num width;
- public LinearRectangle(Component wrapped, Num width)
- {
+ public LinearRectangle(Component wrapped, Num width) {
super(wrapped);
this.width = width;
}
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/LinearSquare.java b/src/mightypork/gamecore/gui/components/layout/linear/LinearSquare.java
index a3c37ee..bb3a813 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/LinearSquare.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/LinearSquare.java
@@ -6,8 +6,7 @@ import mightypork.gamecore.gui.components.Component;
public class LinearSquare extends AbstractLinearWrapper {
- public LinearSquare(Component wrapped)
- {
+ public LinearSquare(Component wrapped) {
super(wrapped);
}
diff --git a/src/mightypork/gamecore/gui/components/layout/linear/LinearWrapper.java b/src/mightypork/gamecore/gui/components/layout/linear/LinearWrapper.java
index 2fe8896..0acd7d8 100644
--- a/src/mightypork/gamecore/gui/components/layout/linear/LinearWrapper.java
+++ b/src/mightypork/gamecore/gui/components/layout/linear/LinearWrapper.java
@@ -6,8 +6,7 @@ import mightypork.gamecore.gui.components.DynamicWidthComponent;
public class LinearWrapper extends AbstractLinearWrapper {
- public LinearWrapper(DynamicWidthComponent wrapped)
- {
+ public LinearWrapper(DynamicWidthComponent wrapped) {
super(wrapped);
}
diff --git a/src/mightypork/gamecore/gui/components/painters/ImagePainter.java b/src/mightypork/gamecore/gui/components/painters/ImagePainter.java
index c4c87a4..fb47e7b 100644
--- a/src/mightypork/gamecore/gui/components/painters/ImagePainter.java
+++ b/src/mightypork/gamecore/gui/components/painters/ImagePainter.java
@@ -20,8 +20,7 @@ public class ImagePainter extends BaseComponent implements DynamicWidthComponent
/**
* @param txQuad drawn image
*/
- public ImagePainter(TxQuad txQuad)
- {
+ public ImagePainter(TxQuad txQuad) {
this.txQuad = txQuad;
}
diff --git a/src/mightypork/gamecore/gui/events/LayoutChangeEvent.java b/src/mightypork/gamecore/gui/events/LayoutChangeEvent.java
index 99e66ec..0a9e378 100644
--- a/src/mightypork/gamecore/gui/events/LayoutChangeEvent.java
+++ b/src/mightypork/gamecore/gui/events/LayoutChangeEvent.java
@@ -18,8 +18,7 @@ import mightypork.utils.eventbus.events.flags.NonRejectableEvent;
@NonRejectableEvent
public class LayoutChangeEvent extends BusEvent {
- public LayoutChangeEvent()
- {
+ public LayoutChangeEvent() {
}
diff --git a/src/mightypork/gamecore/gui/events/ScreenRequest.java b/src/mightypork/gamecore/gui/events/ScreenRequest.java
index eaa7f4c..c48fc8e 100644
--- a/src/mightypork/gamecore/gui/events/ScreenRequest.java
+++ b/src/mightypork/gamecore/gui/events/ScreenRequest.java
@@ -19,8 +19,7 @@ public class ScreenRequest extends BusEvent {
/**
* @param screenKey screen name
*/
- public ScreenRequest(String screenKey)
- {
+ public ScreenRequest(String screenKey) {
scrName = screenKey;
}
diff --git a/src/mightypork/gamecore/gui/screens/LayeredScreen.java b/src/mightypork/gamecore/gui/screens/LayeredScreen.java
index 0f0e5e1..a5ee636 100644
--- a/src/mightypork/gamecore/gui/screens/LayeredScreen.java
+++ b/src/mightypork/gamecore/gui/screens/LayeredScreen.java
@@ -50,8 +50,7 @@ public abstract class LayeredScreen extends Screen {
/**
* @param app app access
*/
- public LayeredScreen(AppAccess app)
- {
+ public LayeredScreen(AppAccess app) {
super(app);
addChildClient(layersClient);
}
diff --git a/src/mightypork/gamecore/gui/screens/Overlay.java b/src/mightypork/gamecore/gui/screens/Overlay.java
index 15e3bfa..8522085 100644
--- a/src/mightypork/gamecore/gui/screens/Overlay.java
+++ b/src/mightypork/gamecore/gui/screens/Overlay.java
@@ -4,17 +4,19 @@ package mightypork.gamecore.gui.screens;
import java.util.ArrayList;
import java.util.Collection;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.core.modules.AppAccess;
import mightypork.gamecore.core.modules.AppSubModule;
import mightypork.gamecore.gui.Hideable;
import mightypork.gamecore.gui.components.layout.ConstraintLayout;
import mightypork.gamecore.gui.events.LayoutChangeListener;
+import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.input.KeyBinder;
import mightypork.gamecore.input.KeyBindingPool;
import mightypork.gamecore.input.KeyStroke;
import mightypork.gamecore.input.KeyStroke.Edge;
import mightypork.gamecore.render.Renderable;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.interfaces.Enableable;
import mightypork.utils.interfaces.Updateable;
import mightypork.utils.math.color.Color;
@@ -28,8 +30,7 @@ import mightypork.utils.math.constraints.vect.Vect;
*
* @author Ondřej Hruška (MightyPork)
*/
-public abstract class Overlay extends AppSubModule implements Comparable, Updateable, Renderable, KeyBinder, Hideable, Enableable,
- LayoutChangeListener {
+public abstract class Overlay extends AppSubModule implements Comparable, Updateable, Renderable, KeyBinder, Hideable, Enableable, LayoutChangeListener {
private boolean visible = true;
private boolean enabled = true;
@@ -50,13 +51,13 @@ public abstract class Overlay extends AppSubModule implements Comparable
*/
@Override
- @DefaultImpl
+ @Stub
public void onLayoutChanged()
{
}
diff --git a/src/mightypork/gamecore/gui/screens/Screen.java b/src/mightypork/gamecore/gui/screens/Screen.java
index dd5da90..ca40b25 100644
--- a/src/mightypork/gamecore/gui/screens/Screen.java
+++ b/src/mightypork/gamecore/gui/screens/Screen.java
@@ -10,9 +10,8 @@ import mightypork.gamecore.input.KeyBinder;
import mightypork.gamecore.input.KeyBindingPool;
import mightypork.gamecore.input.KeyStroke;
import mightypork.gamecore.input.KeyStroke.Edge;
-import mightypork.gamecore.render.DisplaySystem;
import mightypork.gamecore.render.Renderable;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.math.constraints.rect.Rect;
import mightypork.utils.math.constraints.rect.RectBound;
@@ -112,7 +111,7 @@ public abstract class Screen extends AppSubModule implements Renderable, RectBou
@Override
public final Rect getRect()
{
- return getDisplay().getRect();
+ return App.gfx().getRect();
}
@@ -122,7 +121,7 @@ public abstract class Screen extends AppSubModule implements Renderable, RectBou
if (!isActive()) return;
if (needSetupViewport) {
- App.gfx().setupProjection(DisplaySystem.getSize());
+ App.gfx().setupProjection();
}
App.gfx().pushState();
@@ -136,7 +135,7 @@ public abstract class Screen extends AppSubModule implements Renderable, RectBou
/**
* Called when the screen becomes active
*/
- @DefaultImpl
+ @Stub
protected void onScreenEnter()
{
}
@@ -145,7 +144,7 @@ public abstract class Screen extends AppSubModule implements Renderable, RectBou
/**
* Called when the screen is no longer active
*/
- @DefaultImpl
+ @Stub
protected void onScreenLeave()
{
}
diff --git a/src/mightypork/gamecore/gui/screens/ScreenLayer.java b/src/mightypork/gamecore/gui/screens/ScreenLayer.java
index 6465918..64334d1 100644
--- a/src/mightypork/gamecore/gui/screens/ScreenLayer.java
+++ b/src/mightypork/gamecore/gui/screens/ScreenLayer.java
@@ -1,7 +1,7 @@
package mightypork.gamecore.gui.screens;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
/**
@@ -17,8 +17,7 @@ public abstract class ScreenLayer extends Overlay {
/**
* @param screen parent screen
*/
- public ScreenLayer(Screen screen)
- {
+ public ScreenLayer(Screen screen) {
super(screen); // screen as AppAccess
this.screen = screen;
@@ -37,7 +36,7 @@ public abstract class ScreenLayer extends Overlay {
/**
* Called when the screen becomes active
*/
- @DefaultImpl
+ @Stub
protected void onScreenEnter()
{
}
@@ -46,7 +45,7 @@ public abstract class ScreenLayer extends Overlay {
/**
* Called when the screen is no longer active
*/
- @DefaultImpl
+ @Stub
protected void onScreenLeave()
{
}
diff --git a/src/mightypork/gamecore/gui/screens/ScreenRegistry.java b/src/mightypork/gamecore/gui/screens/ScreenRegistry.java
index 7d2ac24..8b80c9a 100644
--- a/src/mightypork/gamecore/gui/screens/ScreenRegistry.java
+++ b/src/mightypork/gamecore/gui/screens/ScreenRegistry.java
@@ -13,7 +13,7 @@ import mightypork.gamecore.gui.events.ScreenRequestListener;
import mightypork.gamecore.render.Renderable;
import mightypork.gamecore.render.events.ViewportChangeEvent;
import mightypork.gamecore.render.events.ViewportChangeListener;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.logging.Log;
@@ -32,8 +32,7 @@ public class ScreenRegistry extends AppModule implements ScreenRequestListener,
/**
* @param app app access
*/
- public ScreenRegistry(AppAccess app)
- {
+ public ScreenRegistry(AppAccess app) {
super(app);
}
@@ -102,7 +101,7 @@ public class ScreenRegistry extends AppModule implements ScreenRequestListener,
@Override
- @DefaultImpl
+ @Stub
protected void deinit()
{
//
diff --git a/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java b/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java
index 0a09842..a50927c 100644
--- a/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java
+++ b/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java
@@ -41,8 +41,7 @@ public class CrossfadeOverlay extends Overlay {
};
- public CrossfadeOverlay(AppAccess app)
- {
+ public CrossfadeOverlay(AppAccess app) {
super(app);
final QuadPainter qp = new QuadPainter(RGB.BLACK); // TODO allow custom colors
diff --git a/src/mightypork/gamecore/gui/screens/impl/CrossfadeRequest.java b/src/mightypork/gamecore/gui/screens/impl/CrossfadeRequest.java
index ec14232..29982e2 100644
--- a/src/mightypork/gamecore/gui/screens/impl/CrossfadeRequest.java
+++ b/src/mightypork/gamecore/gui/screens/impl/CrossfadeRequest.java
@@ -19,8 +19,7 @@ public class CrossfadeRequest extends BusEvent {
* @param screen screen key to show. Null = exit the app.
* @param fromDark true to fade from full black (ie. start of the game)
*/
- public CrossfadeRequest(String screen, boolean fromDark)
- {
+ public CrossfadeRequest(String screen, boolean fromDark) {
super();
this.screen = screen;
this.fromDark = fromDark;
@@ -30,8 +29,7 @@ public class CrossfadeRequest extends BusEvent {
/**
* @param screen screen key to show. Null = exit the app.
*/
- public CrossfadeRequest(String screen)
- {
+ public CrossfadeRequest(String screen) {
super();
this.screen = screen;
this.fromDark = false;
diff --git a/src/mightypork/gamecore/gui/screens/impl/FadingLayer.java b/src/mightypork/gamecore/gui/screens/impl/FadingLayer.java
index 34d97f0..82e87cc 100644
--- a/src/mightypork/gamecore/gui/screens/impl/FadingLayer.java
+++ b/src/mightypork/gamecore/gui/screens/impl/FadingLayer.java
@@ -3,7 +3,7 @@ package mightypork.gamecore.gui.screens.impl;
import mightypork.gamecore.gui.screens.Screen;
import mightypork.gamecore.gui.screens.ScreenLayer;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.math.animation.Easing;
import mightypork.utils.math.animation.NumAnimated;
import mightypork.utils.math.timing.TimedTask;
@@ -47,8 +47,7 @@ public abstract class FadingLayer extends ScreenLayer {
*
* @param screen
*/
- public FadingLayer(Screen screen)
- {
+ public FadingLayer(Screen screen) {
this(screen, new NumAnimated(1, Easing.QUADRATIC_OUT, 0.3));
}
@@ -57,8 +56,7 @@ public abstract class FadingLayer extends ScreenLayer {
* @param screen
* @param easingAnim the animation num
*/
- public FadingLayer(Screen screen, NumAnimated easingAnim)
- {
+ public FadingLayer(Screen screen, NumAnimated easingAnim) {
super(screen);
numa = easingAnim;
@@ -74,7 +72,7 @@ public abstract class FadingLayer extends ScreenLayer {
/**
* Called after the fade-out was completed
*/
- @DefaultImpl
+ @Stub
protected void onHideFinished()
{
}
@@ -83,7 +81,7 @@ public abstract class FadingLayer extends ScreenLayer {
/**
* Called after the fade-in was completed
*/
- @DefaultImpl
+ @Stub
protected void onShowFinished()
{
}
diff --git a/src/mightypork/gamecore/gui/screens/impl/LayerColor.java b/src/mightypork/gamecore/gui/screens/impl/LayerColor.java
index b4f2451..b1b67a2 100644
--- a/src/mightypork/gamecore/gui/screens/impl/LayerColor.java
+++ b/src/mightypork/gamecore/gui/screens/impl/LayerColor.java
@@ -12,8 +12,7 @@ public class LayerColor extends ScreenLayer {
private final int zIndex;
- public LayerColor(Screen screen, Color color, int zIndex)
- {
+ public LayerColor(Screen screen, Color color, int zIndex) {
super(screen);
final QuadPainter qp = new QuadPainter(color);
diff --git a/src/mightypork/gamecore/input/InputSystem.java b/src/mightypork/gamecore/input/InputSystem.java
index 4413fd2..4f685d2 100644
--- a/src/mightypork/gamecore/input/InputSystem.java
+++ b/src/mightypork/gamecore/input/InputSystem.java
@@ -58,8 +58,7 @@ public class InputSystem extends RootBusNode implements Updateable, KeyBinder {
/**
* @param app app access
*/
- public InputSystem(AppAccess app)
- {
+ public InputSystem(AppAccess app) {
super(app);
initDevices();
diff --git a/src/mightypork/gamecore/input/KeyBinding.java b/src/mightypork/gamecore/input/KeyBinding.java
index c77c0d6..1b32c8d 100644
--- a/src/mightypork/gamecore/input/KeyBinding.java
+++ b/src/mightypork/gamecore/input/KeyBinding.java
@@ -25,8 +25,7 @@ public class KeyBinding implements KeyEventHandler, InputReadyListener {
* @param stroke trigger keystroke
* @param handler action
*/
- public KeyBinding(KeyStroke stroke, Edge edge, Runnable handler)
- {
+ public KeyBinding(KeyStroke stroke, Edge edge, Runnable handler) {
this.keystroke = stroke;
this.handler = handler;
this.edge = edge;
diff --git a/src/mightypork/gamecore/input/KeyStroke.java b/src/mightypork/gamecore/input/KeyStroke.java
index 4957ac9..23e9277 100644
--- a/src/mightypork/gamecore/input/KeyStroke.java
+++ b/src/mightypork/gamecore/input/KeyStroke.java
@@ -28,8 +28,7 @@ public class KeyStroke { //implements Pollable
* @param key key code
* @param mod_mask mods mask
*/
- public KeyStroke(int key, int mod_mask)
- {
+ public KeyStroke(int key, int mod_mask) {
setTo(key, mod_mask);
}
@@ -39,8 +38,7 @@ public class KeyStroke { //implements Pollable
*
* @param key key code
*/
- public KeyStroke(int key)
- {
+ public KeyStroke(int key) {
this(key, Keys.MOD_NONE);
}
diff --git a/src/mightypork/gamecore/input/events/KeyEvent.java b/src/mightypork/gamecore/input/events/KeyEvent.java
index 27cd820..4c97912 100644
--- a/src/mightypork/gamecore/input/events/KeyEvent.java
+++ b/src/mightypork/gamecore/input/events/KeyEvent.java
@@ -25,8 +25,7 @@ public class KeyEvent extends BusEvent {
* @param c typed char (can be zero char)
* @param down true = pressed, false = released.
*/
- public KeyEvent(int key, char c, boolean down)
- {
+ public KeyEvent(int key, char c, boolean down) {
this.key = key;
this.c = c;
this.down = down;
diff --git a/src/mightypork/gamecore/input/events/MouseButtonEvent.java b/src/mightypork/gamecore/input/events/MouseButtonEvent.java
index e116804..3696afe 100644
--- a/src/mightypork/gamecore/input/events/MouseButtonEvent.java
+++ b/src/mightypork/gamecore/input/events/MouseButtonEvent.java
@@ -34,8 +34,7 @@ public class MouseButtonEvent extends BusEvent {
* @param down button pressed
* @param wheeld wheel change
*/
- public MouseButtonEvent(Vect pos, int button, boolean down, int wheeld)
- {
+ public MouseButtonEvent(Vect pos, int button, boolean down, int wheeld) {
this.button = button;
this.down = down;
this.pos = pos.freeze();
diff --git a/src/mightypork/gamecore/input/events/MouseMotionEvent.java b/src/mightypork/gamecore/input/events/MouseMotionEvent.java
index 06fda84..5131644 100644
--- a/src/mightypork/gamecore/input/events/MouseMotionEvent.java
+++ b/src/mightypork/gamecore/input/events/MouseMotionEvent.java
@@ -23,8 +23,7 @@ public class MouseMotionEvent extends BusEvent {
* @param pos end pos
* @param move move vector
*/
- public MouseMotionEvent(Vect pos, Vect move)
- {
+ public MouseMotionEvent(Vect pos, Vect move) {
this.move = move.freeze();
this.pos = pos.freeze();
}
diff --git a/src/mightypork/gamecore/render/DisplaySystem.java b/src/mightypork/gamecore/render/DisplaySystem.java
deleted file mode 100644
index 53c6e5f..0000000
--- a/src/mightypork/gamecore/render/DisplaySystem.java
+++ /dev/null
@@ -1,300 +0,0 @@
-package mightypork.gamecore.render;
-
-
-import static org.lwjgl.opengl.GL11.*;
-
-import java.nio.ByteBuffer;
-
-import mightypork.gamecore.backend.lwjgl.AwtScreenshot;
-import mightypork.gamecore.core.modules.AppAccess;
-import mightypork.gamecore.core.modules.AppModule;
-import mightypork.gamecore.render.events.DisplayReadyEvent;
-import mightypork.gamecore.render.events.ViewportChangeEvent;
-import mightypork.utils.logging.Log;
-import mightypork.utils.math.constraints.rect.Rect;
-import mightypork.utils.math.constraints.rect.RectBound;
-import mightypork.utils.math.constraints.vect.Vect;
-import mightypork.utils.math.timing.FpsMeter;
-
-import org.lwjgl.BufferUtils;
-import org.lwjgl.LWJGLException;
-import org.lwjgl.opengl.Display;
-import org.lwjgl.opengl.DisplayMode;
-
-
-/**
- * Display system
- *
- * @author Ondřej Hruška (MightyPork)
- */
-@Deprecated
-public class DisplaySystem extends AppModule implements RectBound {
-
- private DisplayMode windowDisplayMode;
- private int targetFps;
- private FpsMeter fpsMeter;
- private boolean fullscreenSwitchRequested;
-
- /** Current screen size */
- private static final Vect screenSize = new Vect() {
-
- @Override
- public double y()
- {
- return Display.getHeight();
- }
-
-
- @Override
- public double x()
- {
- return Display.getWidth();
- }
- };
-
- private static final Rect rect = Rect.make(screenSize);
-
-
- /**
- * @param app app access
- */
- public DisplaySystem(AppAccess app)
- {
- super(app);
- }
-
-
- @Override
- protected void deinit()
- {
- Display.destroy();
- }
-
-
- /**
- * Set target fps (for syncing in endFrame() call).
- * With vsync enabled, the target fps may not be met.
- *
- * @param fps requested fps
- */
- public void setTargetFps(int fps)
- {
- this.targetFps = fps;
- }
-
-
- /**
- * Create a main window
- *
- * @param width requested width
- * @param height requested height
- * @param resizable is resizable by the user
- * @param fullscreen is in fullscreen
- * @param title window title
- */
- public void createMainWindow(int width, int height, boolean resizable, boolean fullscreen, String title)
- {
- try {
- Display.setDisplayMode(windowDisplayMode = new DisplayMode(width, height));
- Display.setResizable(resizable);
- Display.setVSyncEnabled(true);
- Display.setTitle(title);
- Display.create();
-
- fpsMeter = new FpsMeter();
-
- if (fullscreen) {
- switchFullscreen();
- Display.update();
- }
-
- getEventBus().send(new DisplayReadyEvent());
-
- } catch (final LWJGLException e) {
- throw new RuntimeException("Could not initialize screen", e);
- }
- }
-
-
- /**
- * Toggle FS if possible
- */
- public void switchFullscreen()
- {
- fullscreenSwitchRequested = true;
- }
-
-
- private void doSwitchFullscreen()
- {
- try {
-
- if (!Display.isFullscreen()) {
- Log.f3("Entering fullscreen.");
- // save window resize
- windowDisplayMode = new DisplayMode(Display.getWidth(), Display.getHeight());
-
- Display.setDisplayMode(Display.getDesktopDisplayMode());
- Display.setFullscreen(true);
- Display.update();
- } else {
- Log.f3("Leaving fullscreen.");
- Display.setDisplayMode(windowDisplayMode);
- Display.update();
- }
-
- getEventBus().send(new ViewportChangeEvent(getSize()));
-
- } catch (final Throwable t) {
- Log.e("Failed to toggle fullscreen mode.", t);
- try {
- Display.setDisplayMode(windowDisplayMode);
- Display.update();
- } catch (final Throwable t1) {
- throw new RuntimeException("Failed to revert failed fullscreen toggle.", t1);
- }
- }
- }
-
-
- /**
- * Take screenshot (expensive processing is done on-demand when screenshot
- * is processed).
- *
- * @return screenshot object
- */
- public static AwtScreenshot prepareScreenshot()
- {
- glReadBuffer(GL_FRONT);
- final int width = Display.getWidth();
- final int height = Display.getHeight();
- final int bpp = 4;
- final ByteBuffer buffer = BufferUtils.createByteBuffer(width * height * bpp);
- glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
-
- final AwtScreenshot sc = new AwtScreenshot(width, height, bpp, buffer);
-
- return sc;
- }
-
-
- /**
- * @return true if close was requested (i.e. click on cross)
- */
- public static boolean isCloseRequested()
- {
- return Display.isCloseRequested();
- }
-
-
- /**
- * Get fullscreen state
- *
- * @return is fullscreen
- */
- public static boolean isFullscreen()
- {
- return Display.isFullscreen();
- }
-
-
- /**
- * Get screen size. This Vect is final and views at it can safely be made.
- *
- * @return size
- */
- public static Vect getSize()
- {
- return screenSize;
- }
-
-
- /**
- * Get screen rect. Static version of getRect().
- *
- * @return size
- */
- public static Rect getBounds()
- {
- return rect;
- }
-
-
- /**
- * @return screen width
- */
- public static int getWidth()
- {
- return screenSize.xi();
- }
-
-
- /**
- * @return screen height
- */
- public static int getHeight()
- {
- return screenSize.yi();
- }
-
-
- /**
- * Start a OpenGL frame
- */
- public void beginFrame()
- {
- // handle resize
- if (Display.wasResized()) {
- getEventBus().send(new ViewportChangeEvent(getSize()));
- }
-
- if (fullscreenSwitchRequested) {
- fullscreenSwitchRequested = false;
- doSwitchFullscreen();
- }
-
- glLoadIdentity();
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
- fpsMeter.frame();
- }
-
-
- /**
- * End an OpenGL frame, flip buffers, sync to fps.
- */
- public void endFrame()
- {
- Display.update(false); // don't poll input devices
- Display.sync(targetFps);
- }
-
-
- /**
- * Get screen rect. This Rect is final and views at it can safely be made.
- */
- @Override
- public Rect getRect()
- {
- return getBounds();
- }
-
-
- /**
- * @return current FPS
- */
- public long getFps()
- {
- return fpsMeter.getFPS();
- }
-
-
- /**
- * Get screen center. This vect is final and views at it can safely be made.
- *
- * @return screen center.
- */
- public static Vect getCenter()
- {
- return rect.center();
- }
-}
diff --git a/src/mightypork/gamecore/render/Render.java b/src/mightypork/gamecore/render/Render.java
deleted file mode 100644
index ca4d781..0000000
--- a/src/mightypork/gamecore/render/Render.java
+++ /dev/null
@@ -1,542 +0,0 @@
-package mightypork.gamecore.render;
-
-
-import static org.lwjgl.opengl.GL11.*;
-
-import java.io.IOException;
-
-import mightypork.gamecore.resources.textures.FilterMode;
-import mightypork.gamecore.resources.textures.ITexture;
-import mightypork.gamecore.resources.textures.TxQuad;
-import mightypork.utils.files.FileUtils;
-import mightypork.utils.logging.Log;
-import mightypork.utils.math.color.Color;
-import mightypork.utils.math.color.pal.RGB;
-import mightypork.utils.math.constraints.rect.Rect;
-import mightypork.utils.math.constraints.rect.caching.RectDigest;
-import mightypork.utils.math.constraints.vect.Vect;
-import mightypork.utils.math.constraints.vect.VectConst;
-
-import org.lwjgl.opengl.GL11;
-import org.newdawn.slick.opengl.Texture;
-import org.newdawn.slick.opengl.TextureLoader;
-
-
-/**
- * Render utilities
- *
- * @author Ondřej Hruška (MightyPork)
- */
-@Deprecated
-public class Render {
-
- public static final VectConst AXIS_X = Vect.make(1, 0, 0);
- public static final VectConst AXIS_Y = Vect.make(0, 1, 0);
- public static final VectConst AXIS_Z = Vect.make(0, 0, 1);
-
-
- /**
- * Bind GL color
- *
- * @param color Color color
- */
- public static void setColor(Color color)
- {
- if (color != null) glColor4d(color.r(), color.g(), color.b(), color.a());
- }
-
-
- /**
- * Bind GL color
- *
- * @param color Color color
- * @param alpha alpha multiplier
- */
- public static void setColor(Color color, double alpha)
- {
- if (color != null) glColor4d(color.r(), color.g(), color.b(), color.a() * alpha);
- }
-
-
- /**
- * Translate
- *
- * @param x
- * @param y
- */
- public static void translate(double x, double y)
- {
- glTranslated(x, y, 0);
- }
-
-
- /**
- * Translate
- *
- * @param x
- * @param y
- * @param z
- */
- public static void translate(double x, double y, double z)
- {
- glTranslated(x, y, z);
- }
-
-
- /**
- * Translate with coord
- *
- * @param coord coord
- */
- public static void translate(Vect coord)
- {
- glTranslated(coord.x(), coord.y(), coord.z());
- }
-
-
- /**
- * Translate with coord, discard Z
- *
- * @param coord coord
- */
- public static void translateXY(Vect coord)
- {
- glTranslated(coord.x(), coord.y(), 0);
- }
-
-
- /**
- * Scale
- *
- * @param x
- * @param y
- */
- public static void scale(double x, double y)
- {
- glScaled(x, y, 0);
- }
-
-
- /**
- * Scale
- *
- * @param x
- * @param y
- * @param z
- */
- public static void scale(double x, double y, double z)
- {
- glScaled(x, y, z);
- }
-
-
- /**
- * Scale
- *
- * @param factor vector of scaling factors
- */
- public static void scale(Vect factor)
- {
- glScaled(factor.x(), factor.y(), factor.z());
- }
-
-
- /**
- * Scale by X factor
- *
- * @param factor scaling factor
- */
- public static void scaleXY(double factor)
- {
- glScaled(factor, factor, 1);
- }
-
-
- /**
- * Scale by X factor
- *
- * @param factor scaling factor
- */
- public static void scaleX(double factor)
- {
- glScaled(factor, 1, 1);
- }
-
-
- /**
- * Scale by Y factor
- *
- * @param factor scaling factor
- */
- public static void scaleY(double factor)
- {
- glScaled(1, factor, 1);
- }
-
-
- /**
- * Scale by Z factor
- *
- * @param factor scaling factor
- */
- public static void scaleZ(double factor)
- {
- glScaled(1, 1, factor);
- }
-
-
- /**
- * Rotate around X axis
- *
- * @param angle deg
- */
- public static void rotateX(double angle)
- {
- rotate(angle, AXIS_X);
- }
-
-
- /**
- * Rotate around Y axis
- *
- * @param angle deg
- */
- public static void rotateY(double angle)
- {
- rotate(angle, AXIS_Y);
- }
-
-
- /**
- * Rotate around Z axis
- *
- * @param angle deg
- */
- public static void rotateZ(double angle)
- {
- rotate(angle, AXIS_Z);
- }
-
-
- /**
- * Rotate
- *
- * @param angle rotate angle
- * @param axis rotation axis
- */
- public static void rotate(double angle, Vect axis)
- {
- final Vect vec = axis.norm(1);
- glRotated(angle, vec.x(), vec.y(), vec.z());
- }
-
- private static int pushed = 0;
- /** Can be used to avoid texture binding and glBegin/glEnd in textured quads */
- public static boolean batchTexturedQuadMode;
-
-
- /**
- * Store GL state
- */
- public static void pushState()
- {
- pushed++;
-
- if (pushed >= 100) {
- Log.w("Suspicious number of state pushes: " + pushed);
- }
-
- GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS);
- GL11.glPushClientAttrib(GL11.GL_ALL_CLIENT_ATTRIB_BITS);
- GL11.glMatrixMode(GL11.GL_MODELVIEW);
- GL11.glPushMatrix();
- GL11.glMatrixMode(GL11.GL_PROJECTION);
- GL11.glPushMatrix();
- GL11.glMatrixMode(GL11.GL_MODELVIEW);
- }
-
-
- /**
- * Restore Gl state
- */
- public static void popState()
- {
- if (pushed == 0) {
- Log.w("Pop without push.");
- }
-
- pushed--;
-
- GL11.glMatrixMode(GL11.GL_PROJECTION);
- GL11.glPopMatrix();
- GL11.glMatrixMode(GL11.GL_MODELVIEW);
- GL11.glPopMatrix();
- GL11.glPopClientAttrib();
- GL11.glPopAttrib();
- }
-
-
- /**
- * Store matrix
- */
- public static void pushMatrix()
- {
- GL11.glPushMatrix();
- }
-
-
- /**
- * Restore Gl state
- */
- public static void popMatrix()
- {
- GL11.glPopMatrix();
- }
-
-
- /**
- * Load texture
- *
- * @param resourcePath
- * @param filtering filtering mode to use while loading.
- * @return the loaded texture
- */
- public synchronized static Texture loadSlickTexture(String resourcePath, FilterMode filtering)
- {
-
- try {
-
- final String ext = FileUtils.getExtension(resourcePath).toUpperCase();
-
- final Texture texture = TextureLoader.getTexture(ext, FileUtils.getResource(resourcePath), false, filtering.num);
-
- if (texture == null) {
- Log.w("Texture " + resourcePath + " could not be loaded.");
- }
-
- return texture;
-
- } catch (final IOException e) {
- Log.e("Loading of texture " + resourcePath + " failed.", e);
- throw new RuntimeException("Could not load texture " + resourcePath + ".", e);
- }
-
- }
-
-
- /**
- * Render quad 2D
- *
- * @param rect rectangle
- * @param color draw color
- */
- public static void quad(Rect rect, Color color)
- {
- setColor(color);
- quad(rect);
- }
-
-
- /**
- * Render quad
- *
- * @param quad the quad to draw (px)
- */
- public static void quad(Rect quad)
- {
- final RectDigest q = quad.digest();
-
- // draw with color
-
- glDisable(GL_TEXTURE_2D);
-
- // quad
- glBegin(GL_QUADS);
- glVertex2d(q.left, q.bottom);
- glVertex2d(q.right, q.bottom);
- glVertex2d(q.right, q.top);
- glVertex2d(q.left, q.top);
- glEnd();
- }
-
-
- /**
- * Draw quad with horizontal gradient
- *
- * @param quad drawn quad bounds
- * @param color1 left color
- * @param color2 right color
- */
- public static void quadGradH(Rect quad, Color color1, Color color2)
- {
- quadColor(quad, color1, color2, color2, color1);
- }
-
-
- public static void quadColor(Rect quad, Color color)
- {
- quadColor(quad, color, color, color, color);
- }
-
-
- /**
- * Draw quad with coloured vertices.
- *
- * @param quad drawn quad bounds
- * @param colorHMinVMin
- * @param colorHMaxVMin
- * @param colorHMaxVMax
- * @param colorHMinVMax
- */
- public static void quadColor(Rect quad, Color colorHMinVMin, Color colorHMaxVMin, Color colorHMaxVMax, Color colorHMinVMax)
- {
- final RectDigest r = quad.digest();
-
- // draw with color
-
- glDisable(GL_TEXTURE_2D);
-
- glBegin(GL_QUADS);
- setColor(colorHMinVMax);
- glVertex2d(r.left, r.bottom);
-
- setColor(colorHMaxVMax);
- glVertex2d(r.right, r.bottom);
-
- setColor(colorHMaxVMin);
- glVertex2d(r.right, r.top);
-
- setColor(colorHMinVMin);
- glVertex2d(r.left, r.top);
- glEnd();
- }
-
-
- /**
- * Draw quad with vertical gradient
- *
- * @param quad drawn quad bounds
- * @param color1 top color
- * @param color2 bottom color
- */
- public static void quadGradV(Rect quad, Color color1, Color color2)
- {
- quadColor(quad, color1, color1, color2, color2);
- }
-
-
- /**
- * Render textured rect
- *
- * @param quad rectangle (px)
- * @param txquad texture quad
- */
- public static void quadTextured(Rect quad, TxQuad txquad)
- {
- quadTextured(quad, txquad, RGB.WHITE);
- }
-
-
- /**
- * Render textured rect
- *
- * @param quad rectangle (px)
- * @param txquad texture instance
- * @param tint color tint
- */
- public static void quadTextured(Rect quad, TxQuad txquad, Color tint)
- {
- if (!batchTexturedQuadMode) {
- glEnable(GL_TEXTURE_2D);
- txquad.tx.bind();
- glBegin(GL_QUADS);
- setColor(tint);
- }
-
- final RectDigest q = quad.digest();
- final RectDigest u = txquad.uvs.digest();
-
- final double offs = 0.0001;// hack to avoid white stitching
-
- double tL = u.left + offs, tR = u.right - offs, tT = u.top + offs, tB = u.bottom - offs;
-
- // handle flip
- if (txquad.isFlippedY()) {
- final double swap = tT;
- tT = tB;
- tB = swap;
- }
-
- if (txquad.isFlippedX()) {
- final double swap = tL;
- tL = tR;
- tR = swap;
- }
-
- final double w = txquad.tx.getWidth01();
- final double h = txquad.tx.getHeight01();
-
- // quad with texture
- glTexCoord2d(tL * w, tB * h);
- glVertex2d(q.left, q.bottom);
-
- glTexCoord2d(tR * w, tB * h);
- glVertex2d(q.right, q.bottom);
-
- glTexCoord2d(tR * w, tT * h);
- glVertex2d(q.right, q.top);
-
- glTexCoord2d(tL * w, tT * h);
- glVertex2d(q.left, q.top);
-
- if (!batchTexturedQuadMode) glEnd();
- }
-
-
- /**
- * Setup Ortho projection for 2D graphics
- *
- * @param size viewport size (screen size)
- */
- public static void setupOrtho(Vect size)
- {
- // fix projection for changed size
- glMatrixMode(GL_PROJECTION);
- glLoadIdentity();
- glViewport(0, 0, size.xi(), size.yi());
- glOrtho(0, size.xi(), size.yi(), 0, -1000, 1000);
-
- // back to modelview
- glMatrixMode(GL_MODELVIEW);
-
- glLoadIdentity();
-
- glDisable(GL_LIGHTING);
-
- glClearDepth(1f);
- glEnable(GL_DEPTH_TEST);
- glDepthFunc(GL_LEQUAL);
-
- glEnable(GL_NORMALIZE);
-
- glShadeModel(GL_SMOOTH);
-
- glEnable(GL_BLEND);
- glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- }
-
-
- public static void enterBatchTexturedQuadMode(ITexture texture)
- {
- texture.bind();
- glBegin(GL11.GL_QUADS);
- batchTexturedQuadMode = true;
- }
-
-
- public static void leaveBatchTexturedQuadMode()
- {
- glEnd();
- batchTexturedQuadMode = false;
- }
-}
diff --git a/src/mightypork/gamecore/render/RenderModule.java b/src/mightypork/gamecore/render/RenderModule.java
index e6dcf28..53a2b6c 100644
--- a/src/mightypork/gamecore/render/RenderModule.java
+++ b/src/mightypork/gamecore/render/RenderModule.java
@@ -260,11 +260,9 @@ public abstract class RenderModule extends BackendModule {
/**
- * Setup projection for 2D graphics
- *
- * @param screenSize current viewport size
+ * Setup projection for 2D graphics, using current scren size
*/
- public abstract void setupProjection(Vect screenSize);
+ public abstract void setupProjection();
/**
@@ -286,7 +284,7 @@ public abstract class RenderModule extends BackendModule {
/**
- * Create a main window
+ * Create a main window, if needed
*/
public abstract void createDisplay();
diff --git a/src/mightypork/gamecore/render/TaskTakeScreenshot.java b/src/mightypork/gamecore/render/TaskTakeScreenshot.java
index 8866743..45306e9 100644
--- a/src/mightypork/gamecore/render/TaskTakeScreenshot.java
+++ b/src/mightypork/gamecore/render/TaskTakeScreenshot.java
@@ -4,7 +4,6 @@ package mightypork.gamecore.render;
import java.io.File;
import java.io.IOException;
-import mightypork.gamecore.backend.lwjgl.AwtScreenshot;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.modules.App;
import mightypork.utils.Support;
diff --git a/src/mightypork/gamecore/render/events/FullscreenToggleRequest.java b/src/mightypork/gamecore/render/events/FullscreenToggleRequest.java
index 10aaa64..e8cff95 100644
--- a/src/mightypork/gamecore/render/events/FullscreenToggleRequest.java
+++ b/src/mightypork/gamecore/render/events/FullscreenToggleRequest.java
@@ -1,16 +1,16 @@
package mightypork.gamecore.render.events;
-import mightypork.gamecore.render.DisplaySystem;
+import mightypork.gamecore.render.RenderModule;
import mightypork.utils.eventbus.BusEvent;
import mightypork.utils.eventbus.events.flags.SingleReceiverEvent;
@SingleReceiverEvent
-public class FullscreenToggleRequest extends BusEvent {
+public class FullscreenToggleRequest extends BusEvent {
@Override
- protected void handleBy(DisplaySystem handler)
+ protected void handleBy(RenderModule handler)
{
handler.switchFullscreen();
}
diff --git a/src/mightypork/gamecore/render/events/ViewportChangeEvent.java b/src/mightypork/gamecore/render/events/ViewportChangeEvent.java
index 92f1017..8851451 100644
--- a/src/mightypork/gamecore/render/events/ViewportChangeEvent.java
+++ b/src/mightypork/gamecore/render/events/ViewportChangeEvent.java
@@ -22,8 +22,7 @@ public class ViewportChangeEvent extends BusEvent {
/**
* @param size new screen size
*/
- public ViewportChangeEvent(Vect size)
- {
+ public ViewportChangeEvent(Vect size) {
this.screenSize = size;
}
diff --git a/src/mightypork/gamecore/resources/AsyncResourceLoader.java b/src/mightypork/gamecore/resources/AsyncResourceLoader.java
index 1dbd1f7..adbeb1d 100644
--- a/src/mightypork/gamecore/resources/AsyncResourceLoader.java
+++ b/src/mightypork/gamecore/resources/AsyncResourceLoader.java
@@ -43,8 +43,7 @@ public class AsyncResourceLoader extends Thread implements ResourceLoader, Destr
}
- public AsyncResourceLoader()
- {
+ public AsyncResourceLoader() {
super("Deferred loader");
}
diff --git a/src/mightypork/gamecore/resources/BaseLazyResource.java b/src/mightypork/gamecore/resources/BaseLazyResource.java
index 7094fca..709ea5c 100644
--- a/src/mightypork/gamecore/resources/BaseLazyResource.java
+++ b/src/mightypork/gamecore/resources/BaseLazyResource.java
@@ -27,8 +27,7 @@ public abstract class BaseLazyResource implements LazyResource, Destroyable {
* @param resource resource path / name; this string is later used in
* loadResource()
*/
- public BaseLazyResource(String resource)
- {
+ public BaseLazyResource(String resource) {
this.resource = resource;
}
diff --git a/src/mightypork/gamecore/resources/ResourceLoadRequest.java b/src/mightypork/gamecore/resources/ResourceLoadRequest.java
index 33abc64..b4d68b4 100644
--- a/src/mightypork/gamecore/resources/ResourceLoadRequest.java
+++ b/src/mightypork/gamecore/resources/ResourceLoadRequest.java
@@ -19,8 +19,7 @@ public class ResourceLoadRequest extends BusEvent {
/**
* @param resource resource to load
*/
- public ResourceLoadRequest(LazyResource resource)
- {
+ public ResourceLoadRequest(LazyResource resource) {
this.resource = resource;
}
diff --git a/src/mightypork/gamecore/resources/TextureBasedResource.java b/src/mightypork/gamecore/resources/TextureBasedResource.java
index ab74205..8bc5612 100644
--- a/src/mightypork/gamecore/resources/TextureBasedResource.java
+++ b/src/mightypork/gamecore/resources/TextureBasedResource.java
@@ -1,12 +1,7 @@
package mightypork.gamecore.resources;
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Inherited;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
+import java.lang.annotation.*;
/**
diff --git a/src/mightypork/gamecore/resources/audio/JointVolume.java b/src/mightypork/gamecore/resources/audio/JointVolume.java
index 393b17d..52c92f3 100644
--- a/src/mightypork/gamecore/resources/audio/JointVolume.java
+++ b/src/mightypork/gamecore/resources/audio/JointVolume.java
@@ -20,8 +20,7 @@ public class JointVolume extends Volume {
* @param volumes individual volumes to join
*/
@SafeVarargs
- public JointVolume(Volume... volumes)
- {
+ public JointVolume(Volume... volumes) {
super(1D);
this.volumes = volumes;
}
diff --git a/src/mightypork/gamecore/resources/audio/LazyAudio.java b/src/mightypork/gamecore/resources/audio/LazyAudio.java
index 4b844ad..2dde728 100644
--- a/src/mightypork/gamecore/resources/audio/LazyAudio.java
+++ b/src/mightypork/gamecore/resources/audio/LazyAudio.java
@@ -43,8 +43,7 @@ public class LazyAudio extends BaseLazyResource {
*
* @param resourceName resource to load when needed
*/
- public LazyAudio(String resourceName)
- {
+ public LazyAudio(String resourceName) {
super(resourceName);
}
@@ -92,7 +91,7 @@ public class LazyAudio extends BaseLazyResource {
{
final String ext = FileUtils.getExtension(resource);
- try(final InputStream stream = FileUtils.getResource(resource)) {
+ try (final InputStream stream = FileUtils.getResource(resource)) {
if (ext.equalsIgnoreCase("ogg")) {
backingAudio = SoundStore.get().getOgg(resource, stream);
diff --git a/src/mightypork/gamecore/resources/audio/SoundRegistry.java b/src/mightypork/gamecore/resources/audio/SoundRegistry.java
index a938215..467515f 100644
--- a/src/mightypork/gamecore/resources/audio/SoundRegistry.java
+++ b/src/mightypork/gamecore/resources/audio/SoundRegistry.java
@@ -24,8 +24,7 @@ public class SoundRegistry extends AppAccessAdapter {
/**
* @param app app access
*/
- public SoundRegistry(AppAccess app)
- {
+ public SoundRegistry(AppAccess app) {
super(app);
if (getSoundSystem() == null) throw new NullPointerException("SoundSystem cannot be null.");
}
diff --git a/src/mightypork/gamecore/resources/audio/SoundSystem.java b/src/mightypork/gamecore/resources/audio/SoundSystem.java
index 9267d07..77f1fa2 100644
--- a/src/mightypork/gamecore/resources/audio/SoundSystem.java
+++ b/src/mightypork/gamecore/resources/audio/SoundSystem.java
@@ -78,8 +78,7 @@ public class SoundSystem extends RootBusNode implements Updateable {
/**
* @param app app access
*/
- public SoundSystem(AppAccess app)
- {
+ public SoundSystem(AppAccess app) {
super(app);
if (!soundSystemInited) {
@@ -90,7 +89,6 @@ public class SoundSystem extends RootBusNode implements Updateable {
SoundStore.get().init();
setListener(INITIAL_LISTENER_POS);
-
getEventBus().send(new AudioReadyEvent());
} catch (final Throwable t) {
Log.e("Error initializing sound system.", t);
diff --git a/src/mightypork/gamecore/resources/audio/Volume.java b/src/mightypork/gamecore/resources/audio/Volume.java
index c801c11..49b36f2 100644
--- a/src/mightypork/gamecore/resources/audio/Volume.java
+++ b/src/mightypork/gamecore/resources/audio/Volume.java
@@ -15,8 +15,7 @@ public class Volume extends Mutable {
/**
* @param d initial value
*/
- public Volume(Double d)
- {
+ public Volume(Double d) {
super(d);
}
diff --git a/src/mightypork/gamecore/resources/audio/players/BaseAudioPlayer.java b/src/mightypork/gamecore/resources/audio/players/BaseAudioPlayer.java
index 740c28f..27ee4ec 100644
--- a/src/mightypork/gamecore/resources/audio/players/BaseAudioPlayer.java
+++ b/src/mightypork/gamecore/resources/audio/players/BaseAudioPlayer.java
@@ -32,8 +32,7 @@ public abstract class BaseAudioPlayer implements Destroyable {
* @param baseGain base gain (volume multiplier)
* @param volume colume control
*/
- public BaseAudioPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume)
- {
+ public BaseAudioPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume) {
this.audio = track;
this.baseGain = baseGain;
diff --git a/src/mightypork/gamecore/resources/audio/players/EffectPlayer.java b/src/mightypork/gamecore/resources/audio/players/EffectPlayer.java
index 859f1b7..7b8ad66 100644
--- a/src/mightypork/gamecore/resources/audio/players/EffectPlayer.java
+++ b/src/mightypork/gamecore/resources/audio/players/EffectPlayer.java
@@ -19,8 +19,7 @@ public class EffectPlayer extends BaseAudioPlayer {
* @param baseGain base gain (volume multiplier)
* @param volume volume control
*/
- public EffectPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume)
- {
+ public EffectPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume) {
super(track, (float) basePitch, (float) baseGain, volume);
}
diff --git a/src/mightypork/gamecore/resources/audio/players/LoopPlayer.java b/src/mightypork/gamecore/resources/audio/players/LoopPlayer.java
index 97a76ef..26d46ad 100644
--- a/src/mightypork/gamecore/resources/audio/players/LoopPlayer.java
+++ b/src/mightypork/gamecore/resources/audio/players/LoopPlayer.java
@@ -40,8 +40,7 @@ public class LoopPlayer extends BaseAudioPlayer implements Updateable, Pauseable
* @param baseGain base gain (volume multiplier)
* @param volume volume control
*/
- public LoopPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume)
- {
+ public LoopPlayer(LazyAudio track, double basePitch, double baseGain, Volume volume) {
super(track, (float) basePitch, (float) baseGain, volume);
paused = true;
diff --git a/src/mightypork/gamecore/resources/fonts/FontRegistry.java b/src/mightypork/gamecore/resources/fonts/FontRegistry.java
index 6e097ce..8d4596d 100644
--- a/src/mightypork/gamecore/resources/fonts/FontRegistry.java
+++ b/src/mightypork/gamecore/resources/fonts/FontRegistry.java
@@ -21,8 +21,7 @@ public class FontRegistry extends AppAccessAdapter {
/**
* @param app app access
*/
- public FontRegistry(AppAccess app)
- {
+ public FontRegistry(AppAccess app) {
super(app);
}
diff --git a/src/mightypork/gamecore/resources/fonts/FontRenderer.java b/src/mightypork/gamecore/resources/fonts/FontRenderer.java
index 01d5bc7..122e766 100644
--- a/src/mightypork/gamecore/resources/fonts/FontRenderer.java
+++ b/src/mightypork/gamecore/resources/fonts/FontRenderer.java
@@ -24,8 +24,7 @@ public class FontRenderer {
/**
* @param font used font
*/
- public FontRenderer(GLFont font)
- {
+ public FontRenderer(GLFont font) {
this(font, RGB.WHITE);
}
@@ -34,8 +33,7 @@ public class FontRenderer {
* @param font used font
* @param color drawing color
*/
- public FontRenderer(GLFont font, Color color)
- {
+ public FontRenderer(GLFont font, Color color) {
this.font = font;
this.color = color;
}
diff --git a/src/mightypork/gamecore/resources/fonts/impl/LazyFont.java b/src/mightypork/gamecore/resources/fonts/impl/LazyFont.java
index 19291d3..c65320a 100644
--- a/src/mightypork/gamecore/resources/fonts/impl/LazyFont.java
+++ b/src/mightypork/gamecore/resources/fonts/impl/LazyFont.java
@@ -32,8 +32,7 @@ public class LazyFont extends BaseLazyResource implements GLFont {
int numval;
- private FontStyle(int style)
- {
+ private FontStyle(int style) {
this.numval = style;
}
}
@@ -56,8 +55,7 @@ public class LazyFont extends BaseLazyResource implements GLFont {
* @param chars chars to load; null to load basic chars only
* @param size size (px)
*/
- public LazyFont(String resourcePath, String chars, double size)
- {
+ public LazyFont(String resourcePath, String chars, double size) {
this(resourcePath, chars, size, FontStyle.PLAIN, false, FilterMode.NEAREST);
}
@@ -72,8 +70,7 @@ public class LazyFont extends BaseLazyResource implements GLFont {
* @param antialias use antialiasing for caching texture
* @param filter gl filtering mode
*/
- public LazyFont(String resourcePath, String chars, double size, FontStyle style, boolean antialias, FilterMode filter)
- {
+ public LazyFont(String resourcePath, String chars, double size, FontStyle style, boolean antialias, FilterMode filter) {
super(resourcePath);
this.size = size;
this.style = style;
@@ -134,7 +131,7 @@ public class LazyFont extends BaseLazyResource implements GLFont {
*/
protected Font getAwtFont(String resource, float size, int style) throws IOException
{
- try(InputStream in = FileUtils.getResource(resource)) {
+ try (InputStream in = FileUtils.getResource(resource)) {
Font awtFont = Font.createFont(Font.TRUETYPE_FONT, in);
diff --git a/src/mightypork/gamecore/resources/fonts/impl/LazyFontNative.java b/src/mightypork/gamecore/resources/fonts/impl/LazyFontNative.java
index f373770..7bf55f3 100644
--- a/src/mightypork/gamecore/resources/fonts/impl/LazyFontNative.java
+++ b/src/mightypork/gamecore/resources/fonts/impl/LazyFontNative.java
@@ -26,8 +26,7 @@ public class LazyFontNative extends LazyFont {
* @param antialias use antialiasing when drawn on the cache texture
* @param filter GL filtering mode
*/
- public LazyFontNative(String fontName, String extraChars, double size, FontStyle style, boolean antialias, FilterMode filter)
- {
+ public LazyFontNative(String fontName, String extraChars, double size, FontStyle style, boolean antialias, FilterMode filter) {
super(fontName, extraChars, size, style, antialias, filter);
}
diff --git a/src/mightypork/gamecore/resources/fonts/impl/TextureBackedFont.java b/src/mightypork/gamecore/resources/fonts/impl/TextureBackedFont.java
index 8fe2084..839f49b 100644
--- a/src/mightypork/gamecore/resources/fonts/impl/TextureBackedFont.java
+++ b/src/mightypork/gamecore/resources/fonts/impl/TextureBackedFont.java
@@ -20,7 +20,6 @@ import java.util.Map;
import mightypork.gamecore.resources.fonts.GLFont;
import mightypork.gamecore.resources.textures.FilterMode;
-import mightypork.gamecore.resources.textures.LazyTexture;
import mightypork.utils.logging.Log;
import mightypork.utils.math.color.Color;
import mightypork.utils.math.constraints.vect.Vect;
@@ -90,8 +89,7 @@ public class TextureBackedFont implements GLFont {
* @param filter used Gl filter
* @param chars chars to load
*/
- public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, String chars)
- {
+ public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, String chars) {
this(font, antialias, filter, (" " + chars).toCharArray());
}
@@ -104,8 +102,7 @@ public class TextureBackedFont implements GLFont {
* @param filter used Gl filter
* @param chars chars to load
*/
- public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, char[] chars)
- {
+ public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, char[] chars) {
GLUtils.checkGLContext();
this.font = font;
@@ -165,8 +162,7 @@ public class TextureBackedFont implements GLFont {
public int height;
- public LoadedGlyph(char c, BufferedImage image)
- {
+ public LoadedGlyph(char c, BufferedImage image) {
this.image = image;
this.c = c;
this.width = image.getWidth();
@@ -302,8 +298,7 @@ public class TextureBackedFont implements GLFont {
byteBuffer = ByteBuffer.allocateDirect(width * height * (bpp / 8)).order(ByteOrder.nativeOrder()).put(newI);
} else {
- byteBuffer = ByteBuffer.allocateDirect(width * height * (bpp / 8)).order(ByteOrder.nativeOrder())
- .put(((DataBufferByte) (bufferedImage.getData().getDataBuffer())).getData());
+ byteBuffer = ByteBuffer.allocateDirect(width * height * (bpp / 8)).order(ByteOrder.nativeOrder()).put(((DataBufferByte) (bufferedImage.getData().getDataBuffer())).getData());
}
byteBuffer.flip();
diff --git a/src/mightypork/gamecore/resources/textures/FilterMode.java b/src/mightypork/gamecore/resources/textures/FilterMode.java
index bf1d933..bbaeb40 100644
--- a/src/mightypork/gamecore/resources/textures/FilterMode.java
+++ b/src/mightypork/gamecore/resources/textures/FilterMode.java
@@ -16,8 +16,7 @@ public enum FilterMode
public final int num;
- private FilterMode(int gl)
- {
+ private FilterMode(int gl) {
this.num = gl;
}
}
diff --git a/src/mightypork/gamecore/resources/textures/QuadGrid.java b/src/mightypork/gamecore/resources/textures/QuadGrid.java
index 86c4c04..afa05a4 100644
--- a/src/mightypork/gamecore/resources/textures/QuadGrid.java
+++ b/src/mightypork/gamecore/resources/textures/QuadGrid.java
@@ -18,8 +18,7 @@ public class QuadGrid {
private final double tileH;
- public QuadGrid(ITexture tx, int tilesX, int tilesY)
- {
+ public QuadGrid(ITexture tx, int tilesX, int tilesY) {
this.tx = tx;
this.txWidth = tilesX;
this.txHeight = tilesY;
diff --git a/src/mightypork/gamecore/resources/textures/TextureRegistry.java b/src/mightypork/gamecore/resources/textures/TextureRegistry.java
index ba67ad1..058d0c5 100644
--- a/src/mightypork/gamecore/resources/textures/TextureRegistry.java
+++ b/src/mightypork/gamecore/resources/textures/TextureRegistry.java
@@ -27,8 +27,7 @@ public class TextureRegistry extends AppAccessAdapter {
/**
* @param app app access
*/
- public TextureRegistry(AppAccess app)
- {
+ public TextureRegistry(AppAccess app) {
super(app);
}
diff --git a/src/mightypork/gamecore/resources/textures/TxQuad.java b/src/mightypork/gamecore/resources/textures/TxQuad.java
index 3b76a48..34ca4d2 100644
--- a/src/mightypork/gamecore/resources/textures/TxQuad.java
+++ b/src/mightypork/gamecore/resources/textures/TxQuad.java
@@ -65,8 +65,7 @@ public class TxQuad {
* @param x2 right bottom X (0-1)
* @param y2 right bottom Y (0-1)
*/
- public TxQuad(ITexture tx, double x1, double y1, double x2, double y2)
- {
+ public TxQuad(ITexture tx, double x1, double y1, double x2, double y2) {
this(tx, Rect.make(x1, y1, x2, y2));
}
@@ -75,8 +74,7 @@ public class TxQuad {
* @param tx Texture
* @param uvs Rect of texture UVs (0-1); will be frozen.
*/
- public TxQuad(ITexture tx, Rect uvs)
- {
+ public TxQuad(ITexture tx, Rect uvs) {
this.tx = tx;
this.uvs = uvs.freeze();
}
@@ -87,8 +85,7 @@ public class TxQuad {
*
* @param txQuad a copied quad
*/
- public TxQuad(TxQuad txQuad)
- {
+ public TxQuad(TxQuad txQuad) {
this.tx = txQuad.tx;
this.uvs = txQuad.uvs;
this.flipX = txQuad.flipX;
diff --git a/src/mightypork/gamecore/resources/textures/TxSheet.java b/src/mightypork/gamecore/resources/textures/TxSheet.java
index 918a634..3ace5a0 100644
--- a/src/mightypork/gamecore/resources/textures/TxSheet.java
+++ b/src/mightypork/gamecore/resources/textures/TxSheet.java
@@ -22,8 +22,7 @@ public class TxSheet {
private final int count;
- public TxSheet(TxQuad tx, int width, int height)
- {
+ public TxSheet(TxQuad tx, int width, int height) {
this.original = tx;
this.width = width;
this.count = width * height;
diff --git a/src/mightypork/gamecore/resources/textures/WrapMode.java b/src/mightypork/gamecore/resources/textures/WrapMode.java
index e646e5a..7a25488 100644
--- a/src/mightypork/gamecore/resources/textures/WrapMode.java
+++ b/src/mightypork/gamecore/resources/textures/WrapMode.java
@@ -16,8 +16,7 @@ public enum WrapMode
public final int num;
- private WrapMode(int gl)
- {
+ private WrapMode(int gl) {
this.num = gl;
}
}
diff --git a/src/mightypork/gamecore/util/SlickLogRedirector.java b/src/mightypork/gamecore/util/SlickLogRedirector.java
index 7af26b2..fe33d49 100644
--- a/src/mightypork/gamecore/util/SlickLogRedirector.java
+++ b/src/mightypork/gamecore/util/SlickLogRedirector.java
@@ -19,8 +19,7 @@ public class SlickLogRedirector implements org.newdawn.slick.util.LogSystem {
/**
* @param log log to redirect into
*/
- public SlickLogRedirector(LogWriter log)
- {
+ public SlickLogRedirector(LogWriter log) {
this.writer = log;
}
diff --git a/src/mightypork/rogue/Launcher.java b/src/mightypork/rogue/Launcher.java
index c0ec058..4fb98ff 100644
--- a/src/mightypork/rogue/Launcher.java
+++ b/src/mightypork/rogue/Launcher.java
@@ -77,7 +77,10 @@ public class Launcher {
System.exit(1);
}
- final BaseApp app = new RogueApp(workdir, true);
+ final BaseApp app = new RogueApp();
+
+ app.getInitOptions().setWorkdir(workdir);
+ app.getInitOptions().setSigleInstance(true);
app.getInitOptions().setLogLevel(llFile, llSyso);
app.getInitOptions().setBusLogging(logBus);
diff --git a/src/mightypork/rogue/RogueApp.java b/src/mightypork/rogue/RogueApp.java
index 87d45c9..57971db 100644
--- a/src/mightypork/rogue/RogueApp.java
+++ b/src/mightypork/rogue/RogueApp.java
@@ -8,11 +8,12 @@ import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.core.events.MainLoopRequest;
import mightypork.gamecore.core.events.ShudownRequest;
import mightypork.gamecore.core.events.UserQuitRequest;
+import mightypork.gamecore.core.modules.AppInitOptions;
import mightypork.gamecore.core.modules.BaseApp;
import mightypork.gamecore.gui.screens.ScreenRegistry;
import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.input.KeyStroke.Edge;
-import mightypork.gamecore.render.DisplaySystem;
+import mightypork.gamecore.render.RenderModule;
import mightypork.gamecore.render.events.FullscreenToggleRequest;
import mightypork.gamecore.render.events.ScreenshotRequest;
import mightypork.gamecore.render.events.ScreenshotRequestListener;
@@ -42,11 +43,8 @@ import mightypork.utils.logging.Log;
*/
public final class RogueApp extends BaseApp implements ViewportChangeListener, ScreenshotRequestListener {
- public RogueApp(File workdir, boolean singleInstance)
- {
- super(workdir, singleInstance);
-
- setBackend(new LwjglBackend(this));
+ public RogueApp() {
+ super(new LwjglBackend());
AppInitOptions opt = getInitOptions();
@@ -72,15 +70,20 @@ public final class RogueApp extends BaseApp implements ViewportChangeListener, S
@Override
- protected void initDisplay(DisplaySystem display)
+ protected void initDisplay(RenderModule gfx)
{
// init based on config
final int w = Config.getValue("display.width");
final int h = Config.getValue("display.height");
final boolean fs = Config.getValue("display.fullscreen");
- display.createMainWindow(w, h, true, fs, Const.TITLEBAR);
- display.setTargetFps(Const.FPS_RENDER);
+ gfx.setSize(w, h);
+ gfx.setResizable(true);
+ gfx.setFullscreen(fs);
+ gfx.setTitle(Const.TITLEBAR);
+ gfx.setTargetFps(Const.FPS_RENDER);
+
+ gfx.createDisplay();
}
@@ -93,7 +96,6 @@ public final class RogueApp extends BaseApp implements ViewportChangeListener, S
WorldProvider.init(this);
getEventBus().subscribe(new RogueStateManager(this));
-
screens.addScreen("main_menu", new ScreenMainMenu(this));
screens.addScreen("select_world", new ScreenSelectWorld(this));
screens.addScreen("game", new ScreenGame(this));
@@ -133,7 +135,6 @@ public final class RogueApp extends BaseApp implements ViewportChangeListener, S
protected void postInit()
{
-
getEventBus().send(new MainLoopRequest(new Runnable() {
@Override
@@ -154,13 +155,13 @@ public final class RogueApp extends BaseApp implements ViewportChangeListener, S
public void onViewportChanged(ViewportChangeEvent event)
{
// save viewport size to config file
- final boolean fs = DisplaySystem.isFullscreen();
+ final boolean fs = gfx().isFullscreen();
Config.setValue("display.fullscreen", fs);
if (!fs) {
- Config.setValue("display.width", DisplaySystem.getWidth());
- Config.setValue("display.height", DisplaySystem.getHeight());
+ Config.setValue("display.width", gfx().getWidth());
+ Config.setValue("display.height", gfx().getHeight());
}
}
diff --git a/src/mightypork/rogue/RogueResources.java b/src/mightypork/rogue/RogueResources.java
index 60992a4..f2fce52 100644
--- a/src/mightypork/rogue/RogueResources.java
+++ b/src/mightypork/rogue/RogueResources.java
@@ -16,7 +16,6 @@ import mightypork.utils.math.constraints.rect.Rect;
public class RogueResources implements ResourceSetup {
-
@Override
public void addFonts(FontRegistry fonts)
{
@@ -111,7 +110,6 @@ public class RogueResources implements ResourceSetup {
textures.add("inv.slot.base", grid.makeQuad(0, 5));
textures.add("inv.slot.selected", grid.makeQuad(1, 5));
-
// sprites
texture = textures.addTexture("/res/img/sprites.png", FilterMode.NEAREST, WrapMode.CLAMP);
grid = texture.grid(8, 8);
@@ -121,7 +119,6 @@ public class RogueResources implements ResourceSetup {
textures.add("sprite.rat.boss", grid.makeSheet(0, 3, 4, 1));
textures.add("sprite.zzz", grid.makeQuad(0, 7)); // sleep thingy
-
// logo
texture = textures.addTexture("/res/img/logo.png", FilterMode.NEAREST, WrapMode.CLAMP);
textures.add("logo", texture.makeQuad(Rect.make(0, 0, 0.543, 0.203)));
@@ -135,7 +132,6 @@ public class RogueResources implements ResourceSetup {
textures.add("story_2", grid.makeQuad(3, 2, 3, 1));
textures.add("story_3", grid.makeQuad(0, 3, 3, 1));
-
// tiles
texture = textures.addTexture("tiles", "/res/img/tiles.png", FilterMode.NEAREST, WrapMode.CLAMP);
grid = texture.grid(8, 8);
@@ -176,7 +172,6 @@ public class RogueResources implements ResourceSetup {
textures.add("tile.ufog.se", grid.makeQuad(5, 7).flipY().flipX());
textures.add("tile.ufog.full", grid.makeQuad(6, 7));
-
texture = textures.addTexture("items", "/res/img/items.png", FilterMode.NEAREST, WrapMode.CLAMP);
grid = texture.grid(8, 8);
textures.add("item.meat", grid.makeQuad(0, 0));
diff --git a/src/mightypork/rogue/RogueStateManager.java b/src/mightypork/rogue/RogueStateManager.java
index b4743a8..f761393 100644
--- a/src/mightypork/rogue/RogueStateManager.java
+++ b/src/mightypork/rogue/RogueStateManager.java
@@ -9,8 +9,7 @@ import mightypork.utils.logging.Log;
public class RogueStateManager extends AppModule {
- public RogueStateManager(AppAccess app)
- {
+ public RogueStateManager(AppAccess app) {
super(app);
}
@@ -49,5 +48,4 @@ public class RogueStateManager extends AppModule {
}
}
-
}
diff --git a/src/mightypork/rogue/events/LoadingOverlayRequest.java b/src/mightypork/rogue/events/LoadingOverlayRequest.java
index e8f2fbd..1b503fd 100644
--- a/src/mightypork/rogue/events/LoadingOverlayRequest.java
+++ b/src/mightypork/rogue/events/LoadingOverlayRequest.java
@@ -22,8 +22,7 @@ public class LoadingOverlayRequest extends BusEvent {
* @param msg task description
* @param task task runnable
*/
- public LoadingOverlayRequest(String msg, Runnable task)
- {
+ public LoadingOverlayRequest(String msg, Runnable task) {
this.task = task;
this.msg = msg;
}
diff --git a/src/mightypork/rogue/events/RogueStateRequest.java b/src/mightypork/rogue/events/RogueStateRequest.java
index 8865200..611c41a 100644
--- a/src/mightypork/rogue/events/RogueStateRequest.java
+++ b/src/mightypork/rogue/events/RogueStateRequest.java
@@ -17,15 +17,13 @@ public class RogueStateRequest extends BusEvent {
private final boolean fromDark;
- public RogueStateRequest(RogueState requested)
- {
+ public RogueStateRequest(RogueState requested) {
this.requested = requested;
this.fromDark = false;
}
- public RogueStateRequest(RogueState requested, boolean fromDark)
- {
+ public RogueStateRequest(RogueState requested, boolean fromDark) {
this.requested = requested;
this.fromDark = fromDark;
}
diff --git a/src/mightypork/rogue/screens/FpsOverlay.java b/src/mightypork/rogue/screens/FpsOverlay.java
index eedaa39..ba9e48d 100644
--- a/src/mightypork/rogue/screens/FpsOverlay.java
+++ b/src/mightypork/rogue/screens/FpsOverlay.java
@@ -2,6 +2,7 @@ package mightypork.rogue.screens;
import mightypork.gamecore.core.config.Config;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.core.modules.AppAccess;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.AlignX;
@@ -27,8 +28,7 @@ public class FpsOverlay extends Overlay {
TextPainter tp;
- public FpsOverlay(AppAccess screen)
- {
+ public FpsOverlay(AppAccess screen) {
super(screen);
/*
@@ -53,7 +53,7 @@ public class FpsOverlay extends Overlay {
@Override
public String getString()
{
- return getDisplay().getFps() + " fps";
+ return App.gfx().getFps() + " fps";
}
});
diff --git a/src/mightypork/rogue/screens/LoadingOverlay.java b/src/mightypork/rogue/screens/LoadingOverlay.java
index 125df45..f98f35d 100644
--- a/src/mightypork/rogue/screens/LoadingOverlay.java
+++ b/src/mightypork/rogue/screens/LoadingOverlay.java
@@ -64,8 +64,7 @@ public class LoadingOverlay extends Overlay {
};
- public LoadingOverlay(AppAccess app)
- {
+ public LoadingOverlay(AppAccess app) {
super(app);
final QuadPainter qp = new QuadPainter(PAL16.SEABLUE);
diff --git a/src/mightypork/rogue/screens/RogueScreen.java b/src/mightypork/rogue/screens/RogueScreen.java
index deb4215..cb54d44 100644
--- a/src/mightypork/rogue/screens/RogueScreen.java
+++ b/src/mightypork/rogue/screens/RogueScreen.java
@@ -7,19 +7,18 @@ import mightypork.gamecore.core.modules.AppAccess;
import mightypork.gamecore.gui.screens.LayeredScreen;
import mightypork.rogue.RogueStateManager.RogueState;
import mightypork.rogue.events.RogueStateRequest;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
public class RogueScreen extends LayeredScreen implements UserQuitRequestListener {
- public RogueScreen(AppAccess app)
- {
+ public RogueScreen(AppAccess app) {
super(app);
}
@Override
- @DefaultImpl
+ @Stub
public void onQuitRequest(UserQuitRequest event)
{
getEventBus().send(new RogueStateRequest(RogueState.EXIT));
diff --git a/src/mightypork/rogue/screens/game/HeartBar.java b/src/mightypork/rogue/screens/game/HeartBar.java
index d000636..3b2eb19 100644
--- a/src/mightypork/rogue/screens/game/HeartBar.java
+++ b/src/mightypork/rogue/screens/game/HeartBar.java
@@ -1,9 +1,9 @@
package mightypork.rogue.screens.game;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.gui.AlignX;
import mightypork.gamecore.gui.components.BaseComponent;
-import mightypork.gamecore.render.Render;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.utils.math.constraints.num.Num;
import mightypork.utils.math.constraints.num.var.NumVar;
@@ -22,8 +22,7 @@ public class HeartBar extends BaseComponent {
private final Rect heart;
- public HeartBar(Num total, Num active, TxQuad img_on, TxQuad img_half, TxQuad img_off, AlignX align)
- {
+ public HeartBar(Num total, Num active, TxQuad img_on, TxQuad img_half, TxQuad img_off, AlignX align) {
super();
this.total = total;
this.active = active;
@@ -58,7 +57,7 @@ public class HeartBar extends BaseComponent {
index.setTo(i);
final double rem = active.value() - i;
- Render.quadTextured(heart, (rem > 0.6 ? img_on : rem > 0.25 ? img_half : img_off));
+ App.gfx().quad(heart, (rem > 0.6 ? img_on : rem > 0.25 ? img_half : img_off));
}
}
diff --git a/src/mightypork/rogue/screens/game/IngameNav.java b/src/mightypork/rogue/screens/game/IngameNav.java
index 66f1340..4f56f5a 100644
--- a/src/mightypork/rogue/screens/game/IngameNav.java
+++ b/src/mightypork/rogue/screens/game/IngameNav.java
@@ -1,11 +1,11 @@
package mightypork.rogue.screens.game;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.core.modules.AppAccess;
import mightypork.gamecore.gui.AlignX;
import mightypork.gamecore.gui.components.LayoutComponent;
import mightypork.gamecore.gui.components.layout.FlowColumnLayout;
-import mightypork.gamecore.render.Render;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.utils.math.constraints.rect.Rect;
@@ -21,21 +21,18 @@ public class IngameNav extends LayoutComponent {
private final TxQuad bg;
- public IngameNav(AppAccess app)
- {
+ public IngameNav(AppAccess app) {
this(app, null);
}
- public IngameNav(AppAccess app, RectBound context)
- {
+ public IngameNav(AppAccess app, RectBound context) {
super(app, context);
final Rect shr = this.shrink(height().perc(5));
leftFlow = new FlowColumnLayout(app, context, shr.height(), AlignX.LEFT);
rightFlow = new FlowColumnLayout(app, context, shr.height(), AlignX.RIGHT);
-
leftFlow.setRect(shr);
rightFlow.setRect(shr);
attach(leftFlow);
@@ -64,11 +61,10 @@ public class IngameNav extends LayoutComponent {
{
// draw BG (manually repeat)
for (int i = 0; i < Math.ceil(width().value() / paintHelper.width().value()); i++) {
- Render.quadTextured(paintHelper.moveX(paintHelper.width().value() * i), bg);
+ App.gfx().quad(paintHelper.moveX(paintHelper.width().value() * i), bg);
}
super.renderComponent();
}
-
}
diff --git a/src/mightypork/rogue/screens/game/InvSlot.java b/src/mightypork/rogue/screens/game/InvSlot.java
index 34b493e..d6bf45e 100644
--- a/src/mightypork/rogue/screens/game/InvSlot.java
+++ b/src/mightypork/rogue/screens/game/InvSlot.java
@@ -1,11 +1,11 @@
package mightypork.rogue.screens.game;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.AlignX;
import mightypork.gamecore.gui.components.input.ClickableComponent;
import mightypork.gamecore.gui.components.painters.TextPainter;
-import mightypork.gamecore.render.Render;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.PlayerFacade;
@@ -47,8 +47,7 @@ public class InvSlot extends ClickableComponent {
private final Num hAlpha = Num.make(0.7);
- public InvSlot(int index, InvSlot[] allSlots)
- {
+ public InvSlot(int index, InvSlot[] allSlots) {
super();
this.txBase = Res.getTxQuad("inv.slot.base");
this.txSelected = Res.getTxQuad("inv.slot.selected");
@@ -117,7 +116,7 @@ public class InvSlot extends ClickableComponent {
bg = txBase;
}
- Render.quadTextured(this, bg);
+ App.gfx().quad(this, bg);
final PlayerFacade pl = WorldProvider.get().getPlayer();
@@ -148,17 +147,16 @@ public class InvSlot extends ClickableComponent {
rtTxP.render();
}
-
if (itm.isDamageable()) {
Color.pushAlpha(hAlpha);
- Render.quadColor(usesRect, RGB.BLACK);
+ App.gfx().quad(usesRect, RGB.BLACK);
final double useRatio = (itm.getRemainingUses() / (double) itm.getMaxUses());
final Color barColor = (useRatio > 0.6 ? RGB.GREEN : useRatio > 0.2 ? RGB.ORANGE : RGB.RED);
- Render.quadColor(usesRect.shrinkRight(usesRect.width().value() * (1 - useRatio)), barColor);
+ App.gfx().quad(usesRect.shrinkRight(usesRect.width().value() * (1 - useRatio)), barColor);
Color.popAlpha();
}
diff --git a/src/mightypork/rogue/screens/game/LayerAskSave.java b/src/mightypork/rogue/screens/game/LayerAskSave.java
index 4ba7e22..d96d4cc 100644
--- a/src/mightypork/rogue/screens/game/LayerAskSave.java
+++ b/src/mightypork/rogue/screens/game/LayerAskSave.java
@@ -44,8 +44,7 @@ public class LayerAskSave extends FadingLayer {
}
- public LayerAskSave(final ScreenGame screen)
- {
+ public LayerAskSave(final ScreenGame screen) {
super(screen);
this.gscreen = screen;
diff --git a/src/mightypork/rogue/screens/game/LayerDeath.java b/src/mightypork/rogue/screens/game/LayerDeath.java
index 8ccc78b..25dd4d5 100644
--- a/src/mightypork/rogue/screens/game/LayerDeath.java
+++ b/src/mightypork/rogue/screens/game/LayerDeath.java
@@ -28,8 +28,7 @@ import mightypork.utils.math.constraints.num.Num;
public class LayerDeath extends FadingLayer {
- public LayerDeath(final ScreenGame screen)
- {
+ public LayerDeath(final ScreenGame screen) {
super(screen);
// darker down to cover console.
@@ -54,7 +53,6 @@ public class LayerDeath extends FadingLayer {
linl = new LinearLayout(root, AlignX.CENTER);
rl.add(linl);
-
final TextButton btn1 = new TextButton(thick_font, "Retry", ScreenGame.COLOR_BTN_GOOD);
btn1.textPainter.setVPaddingPercent(25);
linl.add(btn1);
diff --git a/src/mightypork/rogue/screens/game/LayerGameUi.java b/src/mightypork/rogue/screens/game/LayerGameUi.java
index ab36839..70adca3 100644
--- a/src/mightypork/rogue/screens/game/LayerGameUi.java
+++ b/src/mightypork/rogue/screens/game/LayerGameUi.java
@@ -40,8 +40,7 @@ public class LayerGameUi extends ScreenLayer {
private final ScreenGame gameScreen;
- public LayerGameUi(ScreenGame screen)
- {
+ public LayerGameUi(ScreenGame screen) {
super(screen);
this.gameScreen = screen;
@@ -127,7 +126,6 @@ public class LayerGameUi extends ScreenLayer {
nav.addRight(btn = new NavButton(Res.getTxQuad("nav.button.fg.pause")));
btn.setAction(gameScreen.actionTogglePause);
-
// TODO actions
//nav.addLeft(new NavButton(Res.txq("nav.button.fg.options")));
//nav.addLeft(new NavButton(Res.txq("nav.button.fg.help")));
diff --git a/src/mightypork/rogue/screens/game/LayerInv.java b/src/mightypork/rogue/screens/game/LayerInv.java
index b122eab..a7da722 100644
--- a/src/mightypork/rogue/screens/game/LayerInv.java
+++ b/src/mightypork/rogue/screens/game/LayerInv.java
@@ -102,8 +102,7 @@ public class LayerInv extends FadingLayer {
}
- public LayerInv(final ScreenGame screen)
- {
+ public LayerInv(final ScreenGame screen) {
super(screen);
this.gscreen = screen;
diff --git a/src/mightypork/rogue/screens/game/LayerMapView.java b/src/mightypork/rogue/screens/game/LayerMapView.java
index cf26ec7..43d7a61 100644
--- a/src/mightypork/rogue/screens/game/LayerMapView.java
+++ b/src/mightypork/rogue/screens/game/LayerMapView.java
@@ -14,8 +14,7 @@ public class LayerMapView extends ScreenLayer {
protected final MapView map;
- public LayerMapView(Screen screen)
- {
+ public LayerMapView(Screen screen) {
super(screen);
// render component
diff --git a/src/mightypork/rogue/screens/game/LayerWin.java b/src/mightypork/rogue/screens/game/LayerWin.java
index 4f19b7f..90a1900 100644
--- a/src/mightypork/rogue/screens/game/LayerWin.java
+++ b/src/mightypork/rogue/screens/game/LayerWin.java
@@ -25,8 +25,7 @@ import mightypork.utils.math.constraints.num.Num;
public class LayerWin extends FadingLayer {
- public LayerWin(final ScreenGame screen)
- {
+ public LayerWin(final ScreenGame screen) {
super(screen);
// darker down to cover console.
diff --git a/src/mightypork/rogue/screens/game/NavButton.java b/src/mightypork/rogue/screens/game/NavButton.java
index 68a5000..111ce16 100644
--- a/src/mightypork/rogue/screens/game/NavButton.java
+++ b/src/mightypork/rogue/screens/game/NavButton.java
@@ -1,8 +1,8 @@
package mightypork.rogue.screens.game;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.gui.components.input.ClickableComponent;
-import mightypork.gamecore.render.Render;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
@@ -17,8 +17,7 @@ public class NavButton extends ClickableComponent {
private final TxQuad base, hover, down, fg;
- public NavButton(TxQuad fg)
- {
+ public NavButton(TxQuad fg) {
super();
this.base = Res.getTxQuad("nav.button.bg.base");
this.hover = Res.getTxQuad("nav.button.bg.hover");
@@ -41,9 +40,9 @@ public class NavButton extends ClickableComponent {
}
if (!isEnabled()) bg = base; // override effects
-
- Render.quadTextured(this, bg);
- Render.quadTextured(this, fg);
+
+ App.gfx().quad(this, bg);
+ App.gfx().quad(this, fg);
}
}
diff --git a/src/mightypork/rogue/screens/game/ScreenGame.java b/src/mightypork/rogue/screens/game/ScreenGame.java
index 49daa1b..ae0431c 100644
--- a/src/mightypork/rogue/screens/game/ScreenGame.java
+++ b/src/mightypork/rogue/screens/game/ScreenGame.java
@@ -64,7 +64,6 @@ public class ScreenGame extends RogueScreen implements PlayerDeathHandler, GameW
public Action actionToggleInv = new Action() {
-
@Override
public void execute()
{
@@ -183,7 +182,6 @@ public class ScreenGame extends RogueScreen implements PlayerDeathHandler, GameW
worldActions.setEnabled(false); // disable world actions
}
-
if (nstate != GScrState.DEATH) deathLayer.hide();
if (nstate != GScrState.WIN) winLayer.hide();
if (nstate != GScrState.INV) invLayer.hide();
@@ -239,8 +237,7 @@ public class ScreenGame extends RogueScreen implements PlayerDeathHandler, GameW
}
- public ScreenGame(AppAccess app)
- {
+ public ScreenGame(AppAccess app) {
super(app);
addLayer(invLayer = new LayerInv(this));
diff --git a/src/mightypork/rogue/screens/menu/ScreenMainMenu.java b/src/mightypork/rogue/screens/menu/ScreenMainMenu.java
index 2b921a7..f09192e 100644
--- a/src/mightypork/rogue/screens/menu/ScreenMainMenu.java
+++ b/src/mightypork/rogue/screens/menu/ScreenMainMenu.java
@@ -32,7 +32,6 @@ import mightypork.utils.math.constraints.rect.Rect;
*/
public class ScreenMainMenu extends RogueScreen {
-
/**
* The layer
*
@@ -40,8 +39,7 @@ public class ScreenMainMenu extends RogueScreen {
*/
class MenuLayer extends ScreenLayer {
- public MenuLayer(Screen screen)
- {
+ public MenuLayer(Screen screen) {
super(screen);
init();
@@ -52,7 +50,6 @@ public class ScreenMainMenu extends RogueScreen {
{
final Rect menuBox = root.shrink(Num.ZERO, root.height().perc(15)).moveY(root.height().perc(-4));
-
final QuadPainter bg = QuadPainter.gradV(Color.fromHex(0x007eb3), PAL16.SEABLUE);
bg.setRect(root);
root.add(bg);
@@ -83,7 +80,6 @@ public class ScreenMainMenu extends RogueScreen {
rows.add(btn, 2);
rows.skip(1);
-
btn = new TextButton(btnFont, "Story", PAL16.CLOUDBLUE);
btn.setAction(new Action() {
@@ -108,7 +104,6 @@ public class ScreenMainMenu extends RogueScreen {
});
rows.add(btn, 2);
-
bindKey(Config.getKey("general.close"), Edge.RISING, new Runnable() {
@Override
@@ -129,8 +124,7 @@ public class ScreenMainMenu extends RogueScreen {
}
- public ScreenMainMenu(AppAccess app)
- {
+ public ScreenMainMenu(AppAccess app) {
super(app);
addLayer(new MenuLayer(this));
diff --git a/src/mightypork/rogue/screens/select_world/ScreenSelectWorld.java b/src/mightypork/rogue/screens/select_world/ScreenSelectWorld.java
index f1db4a6..8069284 100644
--- a/src/mightypork/rogue/screens/select_world/ScreenSelectWorld.java
+++ b/src/mightypork/rogue/screens/select_world/ScreenSelectWorld.java
@@ -29,15 +29,12 @@ import mightypork.utils.math.constraints.rect.Rect;
*/
public class ScreenSelectWorld extends RogueScreen {
-
- public ScreenSelectWorld(AppAccess app)
- {
+ public ScreenSelectWorld(AppAccess app) {
super(app);
addLayer(new WorldsLayer(this));
}
-
class WorldsLayer extends ScreenLayer {
private WorldSlot slot1;
@@ -45,8 +42,7 @@ public class ScreenSelectWorld extends RogueScreen {
private WorldSlot slot3;
- public WorldsLayer(Screen screen)
- {
+ public WorldsLayer(Screen screen) {
super(screen);
init();
@@ -57,7 +53,6 @@ public class ScreenSelectWorld extends RogueScreen {
{
final Rect menuBox = root.shrink(root.width().perc(25), root.height().perc(30)).moveY(root.height().perc(-10));
-
final QuadPainter bg = QuadPainter.gradV(Color.fromHex(0x007eb3), PAL16.SEABLUE);
bg.setRect(root);
root.add(bg);
diff --git a/src/mightypork/rogue/screens/select_world/WorldSlot.java b/src/mightypork/rogue/screens/select_world/WorldSlot.java
index 5e1c551..1e93aa4 100644
--- a/src/mightypork/rogue/screens/select_world/WorldSlot.java
+++ b/src/mightypork/rogue/screens/select_world/WorldSlot.java
@@ -46,8 +46,7 @@ public class WorldSlot extends ConstraintLayout {
private TextButton delBtn;
- public WorldSlot(AppAccess app, File worldFile)
- {
+ public WorldSlot(AppAccess app, File worldFile) {
super(app);
this.file = worldFile;
@@ -173,7 +172,7 @@ public class WorldSlot extends ConstraintLayout {
final int lvl = worldBundle.get("level", -1);
if (lvl == -1) throw new RuntimeException("Invalid save format."); // let the catch block handle it
-
+
label = "Level " + (lvl + 1);
} catch (final Exception e) {
Log.w("Error loading world save.", e);
diff --git a/src/mightypork/rogue/screens/story/ScreenStory.java b/src/mightypork/rogue/screens/story/ScreenStory.java
index cfdfb60..c18c8c3 100644
--- a/src/mightypork/rogue/screens/story/ScreenStory.java
+++ b/src/mightypork/rogue/screens/story/ScreenStory.java
@@ -103,12 +103,10 @@ public class ScreenStory extends RogueScreen implements MouseButtonHandler {
private final Color textColor = Color.fromHex(0x7ad8ff);
- public LayerSlide(Screen screen)
- {
+ public LayerSlide(Screen screen) {
super(screen);
- final TextPainter help = new TextPainter(Res.getFont("tiny"), AlignX.CENTER, RGB.WHITE.withAlpha(txProceedAlpha.mul(0.3)),
- "Space / click to proceed.");
+ final TextPainter help = new TextPainter(Res.getFont("tiny"), AlignX.CENTER, RGB.WHITE.withAlpha(txProceedAlpha.mul(0.3)), "Space / click to proceed.");
help.setRect(root.bottomEdge().growUp(root.height().perc(4)));
help.setVPaddingPercent(5);
root.add(help);
@@ -210,14 +208,12 @@ public class ScreenStory extends RogueScreen implements MouseButtonHandler {
};
- public ScreenStory(AppAccess app)
- {
+ public ScreenStory(AppAccess app) {
super(app);
addLayer(new LayerColor(this, Color.fromHex(0x040c1e), 0));
addLayer(slideLayer = new LayerSlide(this));
-
bindKey(new KeyStroke(Keys.SPACE), Edge.RISING, next);
bindKey(new KeyStroke(Keys.RIGHT), Edge.RISING, next);
bindKey(new KeyStroke(Keys.BACKSPACE), Edge.RISING, prev);
diff --git a/src/mightypork/rogue/world/Inventory.java b/src/mightypork/rogue/world/Inventory.java
index 030eff2..ab9af32 100644
--- a/src/mightypork/rogue/world/Inventory.java
+++ b/src/mightypork/rogue/world/Inventory.java
@@ -17,14 +17,12 @@ public class Inventory implements IonBinary {
private int lastAddIndex = 0;
- public Inventory(int size)
- {
+ public Inventory(int size) {
this.items = new Item[size];
}
- public Inventory()
- {
+ public Inventory() {
// ION constructor
}
@@ -184,8 +182,10 @@ public class Inventory implements IonBinary {
s += i + ": ";
final Item itm = getItem(i);
- if (itm == null) s += "";
- else s += itm;
+ if (itm == null)
+ s += "";
+ else
+ s += itm;
}
s += "]";
return s;
diff --git a/src/mightypork/rogue/world/PlayerControl.java b/src/mightypork/rogue/world/PlayerControl.java
index d990721..da4e60b 100644
--- a/src/mightypork/rogue/world/PlayerControl.java
+++ b/src/mightypork/rogue/world/PlayerControl.java
@@ -120,7 +120,7 @@ public abstract class PlayerControl {
final Tile t = getLevel().getTile(Coord.fromVect(pos));
if (!t.isPotentiallyWalkable()) return false; // no point in attacking entity thru wall, right?
-
+
//try to hit entity
final Entity prey = getLevel().getClosestEntity(pos, EntityType.MONSTER, 1);
if (prey != null) {
diff --git a/src/mightypork/rogue/world/PlayerData.java b/src/mightypork/rogue/world/PlayerData.java
index 9db30e6..fd57455 100644
--- a/src/mightypork/rogue/world/PlayerData.java
+++ b/src/mightypork/rogue/world/PlayerData.java
@@ -19,7 +19,6 @@ public class PlayerData implements IonBundled {
/** Attack str with bare hands */
public static final int BARE_ATTACK = 1;
-
private int eid = -1; // marks not initialized
private int level;
diff --git a/src/mightypork/rogue/world/PlayerFacade.java b/src/mightypork/rogue/world/PlayerFacade.java
index 1585360..758d238 100644
--- a/src/mightypork/rogue/world/PlayerFacade.java
+++ b/src/mightypork/rogue/world/PlayerFacade.java
@@ -38,8 +38,7 @@ public class PlayerFacade {
/**
* @param world
*/
- PlayerFacade(World world)
- {
+ PlayerFacade(World world) {
this.world = world;
}
diff --git a/src/mightypork/rogue/world/WorldConsole.java b/src/mightypork/rogue/world/WorldConsole.java
index a324c5e..8fc4f75 100644
--- a/src/mightypork/rogue/world/WorldConsole.java
+++ b/src/mightypork/rogue/world/WorldConsole.java
@@ -34,8 +34,7 @@ public class WorldConsole implements Updateable {
private double elapsed = 0;
- private Entry(String text)
- {
+ private Entry(String text) {
this.text = text;
this.fadeout = new NumAnimated(1, Easing.LINEAR);
this.fadeout.setDefaultDuration(0.5);
diff --git a/src/mightypork/rogue/world/WorldProvider.java b/src/mightypork/rogue/world/WorldProvider.java
index c59a5f0..d1c7454 100644
--- a/src/mightypork/rogue/world/WorldProvider.java
+++ b/src/mightypork/rogue/world/WorldProvider.java
@@ -28,8 +28,7 @@ public class WorldProvider extends RootBusNode {
}
- public WorldProvider(BusAccess busAccess)
- {
+ public WorldProvider(BusAccess busAccess) {
super(busAccess);
setListening(false);
}
diff --git a/src/mightypork/rogue/world/WorldRenderer.java b/src/mightypork/rogue/world/WorldRenderer.java
index 4597e33..b291026 100644
--- a/src/mightypork/rogue/world/WorldRenderer.java
+++ b/src/mightypork/rogue/world/WorldRenderer.java
@@ -1,7 +1,12 @@
package mightypork.rogue.world;
-import mightypork.gamecore.render.Render;
+import java.awt.GradientPaint;
+
+import mightypork.gamecore.core.modules.App;
+import mightypork.gamecore.render.GradH;
+import mightypork.gamecore.render.GradV;
+import mightypork.gamecore.render.RenderModule;
import mightypork.gamecore.resources.Res;
import mightypork.rogue.Const;
import mightypork.rogue.world.entity.Entity;
@@ -40,8 +45,7 @@ public class WorldRenderer extends RectProxy {
private TileRenderContext trc;
- public WorldRenderer(Rect viewport, Num tileSize)
- {
+ public WorldRenderer(Rect viewport, Num tileSize) {
super(viewport);
this.tileSize = tileSize;
@@ -80,11 +84,13 @@ public class WorldRenderer extends RectProxy {
{
prepareRenderContextIfNeeded();
- Render.pushMatrix();
- Render.setColor(RGB.WHITE);
- Render.translate(center());
- Render.scaleXY(tileSize.value());
- Render.translate(getOffset());
+ final RenderModule gfx = App.gfx();
+
+ gfx.pushGeometry();
+ gfx.setColor(RGB.WHITE);
+ gfx.translate(center());
+ gfx.scaleXY(tileSize.value());
+ gfx.translate(getOffset());
// tiles to render
@@ -105,17 +111,19 @@ public class WorldRenderer extends RectProxy {
// === TILES ===
// batch rendering of the tiles
- if (USE_BATCH_RENDERING) {
- Render.enterBatchTexturedQuadMode(Res.getTexture("tiles"));
- }
+ // TODO
+// if (USE_BATCH_RENDERING) {
+// gfx.enterBatchTexturedQuadMode(Res.getTexture("tiles"));
+// }
for (trc.pos.x = x1; trc.pos.x <= x2; trc.pos.x++) {
for (trc.pos.y = y1; trc.pos.y <= y2; trc.pos.y++) {
trc.renderTile();
}
}
- if (USE_BATCH_RENDERING) {
- Render.leaveBatchTexturedQuadMode();
- }
+ // TODO
+// if (USE_BATCH_RENDERING) {
+// gfx.leaveBatchTexturedQuadMode();
+// }
// === ITEMS ON TILES ===
@@ -143,28 +151,32 @@ public class WorldRenderer extends RectProxy {
// === unexplored fog ===
// batch rendering of the tiles
- if (USE_BATCH_RENDERING) {
- Render.setColor(RGB.WHITE, Const.RENDER_UFOG ? 1 : 0.6);
- Render.enterBatchTexturedQuadMode(Res.getTexture("tiles"));
- }
+ // TODO
+// if (USE_BATCH_RENDERING) {
+// gfx.setColor(RGB.WHITE, Const.RENDER_UFOG ? 1 : 0.6);
+// gfx.enterBatchTexturedQuadMode(Res.getTexture("tiles"));
+// }
+ // TODO use Const.RENDER_UFOG
for (trc.pos.x = x1; trc.pos.x <= x2; trc.pos.x++) {
for (trc.pos.y = y1; trc.pos.y <= y2; trc.pos.y++) {
trc.renderUFog();
}
}
- if (USE_BATCH_RENDERING) {
- Render.leaveBatchTexturedQuadMode();
- }
+ // TODO
+// if (USE_BATCH_RENDERING) {
+// gfx.leaveBatchTexturedQuadMode();
+// }
// === OVERLAY SHADOW ===
- Render.popMatrix();
+ gfx.popGeometry();
+
- Render.quadGradH(leftShadow, RGB.BLACK, RGB.NONE);
- Render.quadGradH(rightShadow, RGB.NONE, RGB.BLACK);
+ gfx.quad(leftShadow, new GradH(RGB.BLACK, RGB.NONE));
+ gfx.quad(rightShadow, new GradH(RGB.NONE, RGB.BLACK));
- Render.quadGradV(topShadow, RGB.BLACK, RGB.NONE);
- Render.quadGradV(bottomShadow, RGB.NONE, RGB.BLACK);
+ gfx.quad(topShadow, new GradV(RGB.BLACK, RGB.NONE));
+ gfx.quad(bottomShadow, new GradV(RGB.NONE, RGB.BLACK));
}
diff --git a/src/mightypork/rogue/world/entity/AiTimer.java b/src/mightypork/rogue/world/entity/AiTimer.java
index 2e4545a..d73baf6 100644
--- a/src/mightypork/rogue/world/entity/AiTimer.java
+++ b/src/mightypork/rogue/world/entity/AiTimer.java
@@ -8,8 +8,7 @@ import mightypork.utils.math.timing.TaskRepeater;
public abstract class AiTimer extends TaskRepeater implements IonBundled {
- public AiTimer(double duration)
- {
+ public AiTimer(double duration) {
super(duration);
}
diff --git a/src/mightypork/rogue/world/entity/Entity.java b/src/mightypork/rogue/world/entity/Entity.java
index 3014b4a..87f9fdf 100644
--- a/src/mightypork/rogue/world/entity/Entity.java
+++ b/src/mightypork/rogue/world/entity/Entity.java
@@ -11,7 +11,7 @@ import mightypork.rogue.world.entity.modules.EntityModuleHealth;
import mightypork.rogue.world.entity.modules.EntityModulePosition;
import mightypork.rogue.world.level.Level;
import mightypork.rogue.world.level.render.MapRenderContext;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.clients.DelegatingClient;
import mightypork.utils.exceptions.IllegalValueException;
import mightypork.utils.interfaces.Updateable;
@@ -44,8 +44,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
private boolean freed;
- public Entity(EntityModel model, int eid)
- {
+ public Entity(EntityModel model, int eid) {
this.entityId = eid;
this.model = model;
@@ -72,7 +71,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
}
- @DefaultImpl
+ @Stub
protected void saveExtra(IonDataBundle bundle)
{
}
@@ -95,7 +94,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
}
- @DefaultImpl
+ @Stub
protected void loadExtra(IonDataBundle bundle)
{
}
@@ -154,7 +153,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
public abstract PathFinder getPathFinder();
- @DefaultImpl
+ @Stub
public final void render(MapRenderContext context)
{
getRenderer().render(context);
@@ -202,7 +201,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
/**
* Called right after the entity's health reaches zero.
*/
- @DefaultImpl
+ @Stub
public void onKilled()
{
}
@@ -220,7 +219,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
/**
* @return whether this dead entity can be removed from level
*/
- @DefaultImpl
+ @Stub
public boolean canRemoveCorpse()
{
return isDead() && health.getTimeSinceLastDamage() > despawnDelay;
@@ -230,7 +229,7 @@ public abstract class Entity implements IonBundled, Updateable, DelegatingClient
/**
* Called after the corpse has been cleaned from level.
*/
- @DefaultImpl
+ @Stub
public void onCorpseRemoved()
{
}
diff --git a/src/mightypork/rogue/world/entity/EntityModel.java b/src/mightypork/rogue/world/entity/EntityModel.java
index db533f3..10ea1c5 100644
--- a/src/mightypork/rogue/world/entity/EntityModel.java
+++ b/src/mightypork/rogue/world/entity/EntityModel.java
@@ -21,8 +21,7 @@ public final class EntityModel {
public final Class extends Entity> tileClass;
- public EntityModel(int id, Class extends Entity> entity)
- {
+ public EntityModel(int id, Class extends Entity> entity) {
Entities.register(id, this);
this.id = id;
this.tileClass = entity;
diff --git a/src/mightypork/rogue/world/entity/EntityModule.java b/src/mightypork/rogue/world/entity/EntityModule.java
index 6b217b0..38e910f 100644
--- a/src/mightypork/rogue/world/entity/EntityModule.java
+++ b/src/mightypork/rogue/world/entity/EntityModule.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.entity;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.interfaces.Updateable;
import mightypork.utils.ion.IonBundled;
import mightypork.utils.ion.IonDataBundle;
@@ -18,8 +18,7 @@ public abstract class EntityModule implements IonBundled, Updateable {
protected final Entity entity;
- public EntityModule(Entity entity)
- {
+ public EntityModule(Entity entity) {
this.entity = entity;
}
@@ -31,21 +30,21 @@ public abstract class EntityModule implements IonBundled, Updateable {
@Override
- @DefaultImpl
+ @Stub
public void load(IonDataBundle bundle)
{
}
@Override
- @DefaultImpl
+ @Stub
public void save(IonDataBundle bundle)
{
}
@Override
- @DefaultImpl
+ @Stub
public void update(double delta)
{
}
diff --git a/src/mightypork/rogue/world/entity/EntityPathFinder.java b/src/mightypork/rogue/world/entity/EntityPathFinder.java
index 95a0d0f..29a336a 100644
--- a/src/mightypork/rogue/world/entity/EntityPathFinder.java
+++ b/src/mightypork/rogue/world/entity/EntityPathFinder.java
@@ -20,8 +20,7 @@ public class EntityPathFinder extends PathFinder {
protected final Entity entity;
- public EntityPathFinder(Entity entity)
- {
+ public EntityPathFinder(Entity entity) {
this.entity = entity;
}
diff --git a/src/mightypork/rogue/world/entity/impl/BossRatAi.java b/src/mightypork/rogue/world/entity/impl/BossRatAi.java
index 3ec6525..46cce11 100644
--- a/src/mightypork/rogue/world/entity/impl/BossRatAi.java
+++ b/src/mightypork/rogue/world/entity/impl/BossRatAi.java
@@ -18,8 +18,7 @@ public class BossRatAi extends GrayRatAi {
};
- public BossRatAi(Entity entity)
- {
+ public BossRatAi(Entity entity) {
super(entity);
setAttackTime(0.3);
diff --git a/src/mightypork/rogue/world/entity/impl/BrownRatAi.java b/src/mightypork/rogue/world/entity/impl/BrownRatAi.java
index 70e7a91..39b9f3a 100644
--- a/src/mightypork/rogue/world/entity/impl/BrownRatAi.java
+++ b/src/mightypork/rogue/world/entity/impl/BrownRatAi.java
@@ -7,8 +7,7 @@ import mightypork.utils.math.Calc;
public class BrownRatAi extends GrayRatAi {
- public BrownRatAi(Entity entity)
- {
+ public BrownRatAi(Entity entity) {
super(entity);
setAttackTime(1.2);
diff --git a/src/mightypork/rogue/world/entity/impl/EntityBossRat.java b/src/mightypork/rogue/world/entity/impl/EntityBossRat.java
index 67a09c4..4782b77 100644
--- a/src/mightypork/rogue/world/entity/impl/EntityBossRat.java
+++ b/src/mightypork/rogue/world/entity/impl/EntityBossRat.java
@@ -21,8 +21,7 @@ public class EntityBossRat extends Entity {
private final BossRatAi ai = new BossRatAi(this);
- public EntityBossRat(EntityModel model, int eid)
- {
+ public EntityBossRat(EntityModel model, int eid) {
super(model, eid);
addModule("ai", ai);
diff --git a/src/mightypork/rogue/world/entity/impl/EntityBrownRat.java b/src/mightypork/rogue/world/entity/impl/EntityBrownRat.java
index 5dcc581..080e792 100644
--- a/src/mightypork/rogue/world/entity/impl/EntityBrownRat.java
+++ b/src/mightypork/rogue/world/entity/impl/EntityBrownRat.java
@@ -21,8 +21,7 @@ public class EntityBrownRat extends Entity {
private final BrownRatAi ai = new BrownRatAi(this);
- public EntityBrownRat(EntityModel model, int eid)
- {
+ public EntityBrownRat(EntityModel model, int eid) {
super(model, eid);
addModule("ai", ai);
diff --git a/src/mightypork/rogue/world/entity/impl/EntityGrayRat.java b/src/mightypork/rogue/world/entity/impl/EntityGrayRat.java
index 28a96ff..6efe03a 100644
--- a/src/mightypork/rogue/world/entity/impl/EntityGrayRat.java
+++ b/src/mightypork/rogue/world/entity/impl/EntityGrayRat.java
@@ -21,8 +21,7 @@ public class EntityGrayRat extends Entity {
private EntityRenderer renderer;
- public EntityGrayRat(EntityModel model, int eid)
- {
+ public EntityGrayRat(EntityModel model, int eid) {
super(model, eid);
addModule("ai", ai);
diff --git a/src/mightypork/rogue/world/entity/impl/EntityPlayer.java b/src/mightypork/rogue/world/entity/impl/EntityPlayer.java
index 9bdb395..159dcbc 100644
--- a/src/mightypork/rogue/world/entity/impl/EntityPlayer.java
+++ b/src/mightypork/rogue/world/entity/impl/EntityPlayer.java
@@ -1,12 +1,7 @@
package mightypork.rogue.world.entity.impl;
-import mightypork.rogue.world.entity.Entity;
-import mightypork.rogue.world.entity.EntityModel;
-import mightypork.rogue.world.entity.EntityModule;
-import mightypork.rogue.world.entity.EntityPathFinder;
-import mightypork.rogue.world.entity.EntityRenderer;
-import mightypork.rogue.world.entity.EntityType;
+import mightypork.rogue.world.entity.*;
import mightypork.rogue.world.entity.modules.EntityMoveListener;
import mightypork.rogue.world.entity.render.EntityRendererMobLR;
import mightypork.rogue.world.events.PlayerKilledEvent;
@@ -21,8 +16,7 @@ public class EntityPlayer extends Entity {
class PlayerAi extends EntityModule implements EntityMoveListener {
- public PlayerAi(Entity entity)
- {
+ public PlayerAi(Entity entity) {
super(entity);
setDespawnDelay(2);
@@ -86,8 +80,7 @@ public class EntityPlayer extends Entity {
private final PlayerAi ai = new PlayerAi(this);
- public EntityPlayer(EntityModel model, int eid)
- {
+ public EntityPlayer(EntityModel model, int eid) {
super(model, eid);
pos.setStepTime(0.25);
diff --git a/src/mightypork/rogue/world/entity/impl/GrayRatAi.java b/src/mightypork/rogue/world/entity/impl/GrayRatAi.java
index 0f8bf61..8fbb4b0 100644
--- a/src/mightypork/rogue/world/entity/impl/GrayRatAi.java
+++ b/src/mightypork/rogue/world/entity/impl/GrayRatAi.java
@@ -7,8 +7,7 @@ import mightypork.utils.math.Calc;
public class GrayRatAi extends MonsterAi {
- public GrayRatAi(Entity entity)
- {
+ public GrayRatAi(Entity entity) {
super(entity);
setAttackTime(1.2);
diff --git a/src/mightypork/rogue/world/entity/impl/MonsterAi.java b/src/mightypork/rogue/world/entity/impl/MonsterAi.java
index 50cef70..d99c910 100644
--- a/src/mightypork/rogue/world/entity/impl/MonsterAi.java
+++ b/src/mightypork/rogue/world/entity/impl/MonsterAi.java
@@ -9,7 +9,7 @@ import mightypork.rogue.world.entity.EntityModule;
import mightypork.rogue.world.entity.EntityType;
import mightypork.rogue.world.entity.modules.EntityMoveListener;
import mightypork.rogue.world.tile.Tile;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.ion.IonDataBundle;
import mightypork.utils.math.Calc;
import mightypork.utils.math.algo.Coord;
@@ -75,8 +75,7 @@ public class MonsterAi extends EntityModule implements EntityMoveListener {
private int preyId = -1;
- public MonsterAi(final Entity entity)
- {
+ public MonsterAi(final Entity entity) {
super(entity);
noDoorPf = new PathFinderProxy(entity.getPathFinder()) {
@@ -208,7 +207,7 @@ public class MonsterAi extends EntityModule implements EntityMoveListener {
final List noDoorPath = noDoorPf.findPath(entity.getCoord(), prey.getCoord());
if (noDoorPath == null) return; // cant reach, give up
-
+
startChasing(prey);
}
}
@@ -313,35 +312,35 @@ public class MonsterAi extends EntityModule implements EntityMoveListener {
}
- @DefaultImpl
+ @Stub
protected double getScanRadius()
{
return isIdle() ? Calc.randInt(1, 3) : Calc.randInt(4, 8); // For override
}
- @DefaultImpl
+ @Stub
protected int getPreyAbandonDistance()
{
return Calc.randInt(5, 8); // For override
}
- @DefaultImpl
+ @Stub
protected double getAttackDistance()
{
return 1;
}
- @DefaultImpl
+ @Stub
protected int getAttackStrength()
{
return 1; // For override
}
- @DefaultImpl
+ @Stub
protected double getStepTime()
{
return isIdle() ? 0.7 : 0.4;
diff --git a/src/mightypork/rogue/world/entity/modules/EntityModuleHealth.java b/src/mightypork/rogue/world/entity/modules/EntityModuleHealth.java
index 0ba29f8..fecc629 100644
--- a/src/mightypork/rogue/world/entity/modules/EntityModuleHealth.java
+++ b/src/mightypork/rogue/world/entity/modules/EntityModuleHealth.java
@@ -10,8 +10,7 @@ import mightypork.utils.math.Calc;
public class EntityModuleHealth extends EntityModule {
- public EntityModuleHealth(Entity entity)
- {
+ public EntityModuleHealth(Entity entity) {
super(entity);
}
diff --git a/src/mightypork/rogue/world/entity/modules/EntityModulePosition.java b/src/mightypork/rogue/world/entity/modules/EntityModulePosition.java
index 80c5b1d..c7bb5c5 100644
--- a/src/mightypork/rogue/world/entity/modules/EntityModulePosition.java
+++ b/src/mightypork/rogue/world/entity/modules/EntityModulePosition.java
@@ -32,8 +32,7 @@ public class EntityModulePosition extends EntityModule {
private final Set moveListeners = new LinkedHashSet<>();
- public EntityModulePosition(Entity entity)
- {
+ public EntityModulePosition(Entity entity) {
super(entity);
}
@@ -112,7 +111,7 @@ public class EntityModulePosition extends EntityModule {
public void update(double delta)
{
if (entity.isDead()) return; // corpses dont walk
-
+
if (!entityPos.isFinished()) {
entityPos.update(delta);
}
diff --git a/src/mightypork/rogue/world/entity/modules/EntityPos.java b/src/mightypork/rogue/world/entity/modules/EntityPos.java
index 9af9005..0106475 100644
--- a/src/mightypork/rogue/world/entity/modules/EntityPos.java
+++ b/src/mightypork/rogue/world/entity/modules/EntityPos.java
@@ -23,20 +23,17 @@ class EntityPos implements IonBundled, Updateable {
private final VectAnimated walkOffset = new VectAnimated(Vect.ZERO, Easing.LINEAR);
- public EntityPos(Coord pos)
- {
+ public EntityPos(Coord pos) {
this.coord.setTo(pos);
}
- public EntityPos(int x, int y)
- {
+ public EntityPos(int x, int y) {
this.coord.setTo(x, y);
}
- public EntityPos()
- {
+ public EntityPos() {
}
diff --git a/src/mightypork/rogue/world/entity/render/EntityRendererMobLR.java b/src/mightypork/rogue/world/entity/render/EntityRendererMobLR.java
index a70dcdb..380ed33 100644
--- a/src/mightypork/rogue/world/entity/render/EntityRendererMobLR.java
+++ b/src/mightypork/rogue/world/entity/render/EntityRendererMobLR.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.entity.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.resources.textures.TxSheet;
@@ -34,8 +34,7 @@ public class EntityRendererMobLR extends EntityRenderer {
private final Color hue = Color.rgb(Num.ONE, animRedVar, animRedVar);
- public EntityRendererMobLR(Entity entity, String sheetKey)
- {
+ public EntityRendererMobLR(Entity entity, String sheetKey) {
this.entity = entity;
this.sheet = Res.getTxSheet(sheetKey);
}
@@ -56,26 +55,22 @@ public class EntityRendererMobLR extends EntityRenderer {
final double hurtOffset = (1 - Calc.clamp(hurtTime / 0.1, 0, 1)) * (entity.isDead() ? 0.3 : 0.05);
-
Rect spriteRect = Rect.make(visualPos.x() * w, (visualPos.y() - hurtOffset) * w, w, w);
spriteRect = spriteRect.shrink(w * 0.05);
animRedVar.setTo(hurtTime / 0.3);
- Render.pushMatrix();
+ App.gfx().pushGeometry();
- Render.translate(spriteRect.center());
+ App.gfx().translate(spriteRect.center());
if (entity.isDead()) {
- Render.rotateZ(Calc.clamp(hurtTime / 0.3, 0, 1) * 90);
+ App.gfx().rotateZ(Calc.clamp(hurtTime / 0.3, 0, 1) * 90);
}
final double hw = spriteRect.width().half().value();
- Render.quadTextured(
- Vect.ZERO.expand(hw, hw, hw, hw),
- q,
- hue.withAlpha(entity.isDead() ? 1 - Easing.CIRC_IN.get(hurtTime / entity.getDespawnDelay()) : 1));
- Render.popMatrix();
+ App.gfx().quad(Vect.ZERO.expand(hw, hw, hw, hw), q, hue.withAlpha(entity.isDead() ? 1 - Easing.CIRC_IN.get(hurtTime / entity.getDespawnDelay()) : 1));
+ App.gfx().popGeometry();
}
}
diff --git a/src/mightypork/rogue/world/events/PlayerStepEndEvent.java b/src/mightypork/rogue/world/events/PlayerStepEndEvent.java
index a6dc4d1..910b4b8 100644
--- a/src/mightypork/rogue/world/events/PlayerStepEndEvent.java
+++ b/src/mightypork/rogue/world/events/PlayerStepEndEvent.java
@@ -12,8 +12,7 @@ public class PlayerStepEndEvent extends BusEvent {
private final EntityPlayer player;
- public PlayerStepEndEvent(EntityPlayer player)
- {
+ public PlayerStepEndEvent(EntityPlayer player) {
super();
this.player = player;
}
diff --git a/src/mightypork/rogue/world/events/WorldPauseRequest.java b/src/mightypork/rogue/world/events/WorldPauseRequest.java
index 33a951b..cb1ac19 100644
--- a/src/mightypork/rogue/world/events/WorldPauseRequest.java
+++ b/src/mightypork/rogue/world/events/WorldPauseRequest.java
@@ -20,8 +20,7 @@ public class WorldPauseRequest extends BusEvent {
private final PauseAction op;
- public WorldPauseRequest(PauseAction op)
- {
+ public WorldPauseRequest(PauseAction op) {
super();
this.op = op;
}
diff --git a/src/mightypork/rogue/world/gen/LevelBuilder.java b/src/mightypork/rogue/world/gen/LevelBuilder.java
index 04da72c..261983e 100644
--- a/src/mightypork/rogue/world/gen/LevelBuilder.java
+++ b/src/mightypork/rogue/world/gen/LevelBuilder.java
@@ -29,8 +29,7 @@ public class LevelBuilder {
boolean important;
- public RoomEntry(RoomBuilder room, int count, boolean important)
- {
+ public RoomEntry(RoomBuilder room, int count, boolean important) {
this.count = count;
this.room = room;
this.important = important;
@@ -43,8 +42,7 @@ public class LevelBuilder {
boolean important;
- public ItemEntry(Item item, boolean important)
- {
+ public ItemEntry(Item item, boolean important) {
this.item = item;
this.important = important;
}
@@ -56,8 +54,7 @@ public class LevelBuilder {
boolean important;
- public EntityEntry(Entity item, boolean important)
- {
+ public EntityEntry(Entity item, boolean important) {
this.entity = item;
this.important = important;
}
@@ -82,8 +79,7 @@ public class LevelBuilder {
* @param theme tiles theme
* @param seed level seed
*/
- public LevelBuilder(int max_size, MapTheme theme, long seed)
- {
+ public LevelBuilder(int max_size, MapTheme theme, long seed) {
this.rand = new Random(seed);
this.map = new ScratchMap(max_size, theme, rand);
}
diff --git a/src/mightypork/rogue/world/gen/RoomEntry.java b/src/mightypork/rogue/world/gen/RoomEntry.java
index 5418a97..a93af9c 100644
--- a/src/mightypork/rogue/world/gen/RoomEntry.java
+++ b/src/mightypork/rogue/world/gen/RoomEntry.java
@@ -15,8 +15,7 @@ public class RoomEntry {
final Coord max;
- public RoomEntry(Coord min, Coord max)
- {
+ public RoomEntry(Coord min, Coord max) {
super();
this.min = min;
this.max = max;
diff --git a/src/mightypork/rogue/world/gen/Rooms.java b/src/mightypork/rogue/world/gen/Rooms.java
index f363849..86a399a 100644
--- a/src/mightypork/rogue/world/gen/Rooms.java
+++ b/src/mightypork/rogue/world/gen/Rooms.java
@@ -1,14 +1,7 @@
package mightypork.rogue.world.gen;
-import mightypork.rogue.world.gen.rooms.BasicRoom;
-import mightypork.rogue.world.gen.rooms.BossRoom;
-import mightypork.rogue.world.gen.rooms.DeadEndRoom;
-import mightypork.rogue.world.gen.rooms.EntranceRoom;
-import mightypork.rogue.world.gen.rooms.ExitRoom;
-import mightypork.rogue.world.gen.rooms.ItemShrineRoom;
-import mightypork.rogue.world.gen.rooms.StorageRoom;
-import mightypork.rogue.world.gen.rooms.TreasureChestRoom;
+import mightypork.rogue.world.gen.rooms.*;
import mightypork.rogue.world.item.Item;
diff --git a/src/mightypork/rogue/world/gen/ScratchMap.java b/src/mightypork/rogue/world/gen/ScratchMap.java
index 98dc3af..afcc70c 100644
--- a/src/mightypork/rogue/world/gen/ScratchMap.java
+++ b/src/mightypork/rogue/world/gen/ScratchMap.java
@@ -121,8 +121,7 @@ public class ScratchMap {
private static final boolean FIX_GLITCHES = true;
- public ScratchMap(int max_size, MapTheme theme, Random rand)
- {
+ public ScratchMap(int max_size, MapTheme theme, Random rand) {
map = new Tile[max_size][max_size];
genMin = Coord.make((max_size / 2) - 1, (max_size / 2) - 1);
@@ -409,7 +408,7 @@ public class ScratchMap {
final Tile current = getTile(c);
if (!current.isNull() && (current.isPotentiallyWalkable() || current.isStairs())) continue; // floor already, let it be
-
+
if (i == 0 && j == 0) {
set(c, theme.floor());
} else {
@@ -714,7 +713,7 @@ public class ScratchMap {
if (!isIn(pos)) return false;
if (pos.dist(enterPoint) < 4) return false; // protected distance.
-
+
final Tile t = getTile(pos);
if (!t.isWalkable()) return false;
diff --git a/src/mightypork/rogue/world/gen/WorldGenError.java b/src/mightypork/rogue/world/gen/WorldGenError.java
index 46988b5..7e18291 100644
--- a/src/mightypork/rogue/world/gen/WorldGenError.java
+++ b/src/mightypork/rogue/world/gen/WorldGenError.java
@@ -8,26 +8,22 @@ package mightypork.rogue.world.gen;
*/
public class WorldGenError extends RuntimeException {
- public WorldGenError()
- {
+ public WorldGenError() {
super();
}
- public WorldGenError(String message, Throwable cause)
- {
+ public WorldGenError(String message, Throwable cause) {
super(message, cause);
}
- public WorldGenError(String message)
- {
+ public WorldGenError(String message) {
super(message);
}
- public WorldGenError(Throwable cause)
- {
+ public WorldGenError(Throwable cause) {
super(cause);
}
diff --git a/src/mightypork/rogue/world/gen/rooms/AbstractRectRoom.java b/src/mightypork/rogue/world/gen/rooms/AbstractRectRoom.java
index a14fbcb..cfc7761 100644
--- a/src/mightypork/rogue/world/gen/rooms/AbstractRectRoom.java
+++ b/src/mightypork/rogue/world/gen/rooms/AbstractRectRoom.java
@@ -9,7 +9,7 @@ import mightypork.rogue.world.gen.RoomEntry;
import mightypork.rogue.world.gen.ScratchMap;
import mightypork.rogue.world.gen.TileProtectLevel;
import mightypork.rogue.world.tile.TileModel;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.math.algo.Coord;
import mightypork.utils.math.algo.Moves;
@@ -92,7 +92,7 @@ public abstract class AbstractRectRoom implements RoomBuilder {
}
- @DefaultImpl
+ @Stub
protected void buildExtras(ScratchMap map, MapTheme theme, Random rand, Coord min, Coord max)
{
}
diff --git a/src/mightypork/rogue/world/gen/rooms/BasicRoom.java b/src/mightypork/rogue/world/gen/rooms/BasicRoom.java
index d5c26c8..d02b696 100644
--- a/src/mightypork/rogue/world/gen/rooms/BasicRoom.java
+++ b/src/mightypork/rogue/world/gen/rooms/BasicRoom.java
@@ -11,7 +11,6 @@ import mightypork.utils.math.algo.Coord;
public class BasicRoom extends AbstractRectRoom {
-
@Override
protected TileModel getDoorType(MapTheme theme, Random rand)
{
diff --git a/src/mightypork/rogue/world/gen/rooms/ItemShrineRoom.java b/src/mightypork/rogue/world/gen/rooms/ItemShrineRoom.java
index 9683122..dcb5681 100644
--- a/src/mightypork/rogue/world/gen/rooms/ItemShrineRoom.java
+++ b/src/mightypork/rogue/world/gen/rooms/ItemShrineRoom.java
@@ -16,8 +16,7 @@ public class ItemShrineRoom extends SecretRoom {
private final Item item;
- public ItemShrineRoom(Item item)
- {
+ public ItemShrineRoom(Item item) {
this.item = item;
}
diff --git a/src/mightypork/rogue/world/gen/rooms/StorageRoom.java b/src/mightypork/rogue/world/gen/rooms/StorageRoom.java
index 5e58e79..94356e2 100644
--- a/src/mightypork/rogue/world/gen/rooms/StorageRoom.java
+++ b/src/mightypork/rogue/world/gen/rooms/StorageRoom.java
@@ -50,6 +50,5 @@ public class StorageRoom extends SecretRoom {
if (--maxStuff == 0) return;
}
-
}
}
diff --git a/src/mightypork/rogue/world/gen/rooms/TreasureChestRoom.java b/src/mightypork/rogue/world/gen/rooms/TreasureChestRoom.java
index cf551e8..3eec048 100644
--- a/src/mightypork/rogue/world/gen/rooms/TreasureChestRoom.java
+++ b/src/mightypork/rogue/world/gen/rooms/TreasureChestRoom.java
@@ -12,8 +12,7 @@ import mightypork.utils.math.algo.Coord;
public class TreasureChestRoom extends ItemShrineRoom {
- public TreasureChestRoom(Item item)
- {
+ public TreasureChestRoom(Item item) {
super(item);
}
diff --git a/src/mightypork/rogue/world/gui/MapView.java b/src/mightypork/rogue/world/gui/MapView.java
index 0b160a7..d5fd9fe 100644
--- a/src/mightypork/rogue/world/gui/MapView.java
+++ b/src/mightypork/rogue/world/gui/MapView.java
@@ -5,10 +5,10 @@ import java.util.Collection;
import java.util.LinkedHashSet;
import java.util.Set;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.gui.components.InputComponent;
import mightypork.gamecore.input.events.MouseButtonEvent;
import mightypork.gamecore.input.events.MouseButtonHandler;
-import mightypork.gamecore.render.Render;
import mightypork.rogue.world.PlayerControl;
import mightypork.rogue.world.World;
import mightypork.rogue.world.WorldProvider;
@@ -32,8 +32,7 @@ import mightypork.utils.math.timing.TimedTask;
*
* @author Ondřej Hruška (MightyPork)
*/
-public class MapView extends InputComponent implements DelegatingClient, MouseButtonHandler, Updateable, WorldAscendRequestListener,
- WorldDescendRequestListener {
+public class MapView extends InputComponent implements DelegatingClient, MouseButtonHandler, Updateable, WorldAscendRequestListener, WorldDescendRequestListener {
private static final double transition_time = 0.8;
@@ -73,7 +72,6 @@ public class MapView extends InputComponent implements DelegatingClient, MouseBu
}
};
-
private final Num tileSize;
@@ -92,8 +90,7 @@ public class MapView extends InputComponent implements DelegatingClient, MouseBu
}
- public MapView()
- {
+ public MapView() {
this.tileSize = height().min(width()).div(9).max(32).mul(Num.make(1).sub(zoom.mul(0.5)));
this.worldRenderer = new WorldRenderer(this, tileSize);
plc = WorldProvider.get().getPlayerControl();
@@ -107,7 +104,7 @@ public class MapView extends InputComponent implements DelegatingClient, MouseBu
{
worldRenderer.render();
- Render.quadColor(this, blackColor);
+ App.gfx().quad(this, blackColor);
}
diff --git a/src/mightypork/rogue/world/gui/Minimap.java b/src/mightypork/rogue/world/gui/Minimap.java
index 2e137a7..3aa31a6 100644
--- a/src/mightypork/rogue/world/gui/Minimap.java
+++ b/src/mightypork/rogue/world/gui/Minimap.java
@@ -1,10 +1,10 @@
package mightypork.rogue.world.gui;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.gui.components.InputComponent;
import mightypork.gamecore.input.events.MouseButtonEvent;
import mightypork.gamecore.input.events.MouseButtonHandler;
-import mightypork.gamecore.render.Render;
import mightypork.rogue.Const;
import mightypork.rogue.world.PlayerFacade;
import mightypork.rogue.world.WorldProvider;
@@ -60,7 +60,7 @@ public class Minimap extends InputComponent implements MouseButtonHandler {
final Color clr = t.getMapColor();
- Render.setColor(clr);
+ App.gfx().setColor(clr);
GL11.glVertex2i(point.x, point.y);
GL11.glVertex2i(point.x + unit, point.y);
@@ -70,7 +70,7 @@ public class Minimap extends InputComponent implements MouseButtonHandler {
}
// player
- Render.setColor(playerColor);
+ App.gfx().setColor(playerColor);
final double plx = tl.xi() + plCoord.x() * unit;
final double ply = tl.yi() + plCoord.y() * unit;
diff --git a/src/mightypork/rogue/world/gui/WorldConsoleRenderer.java b/src/mightypork/rogue/world/gui/WorldConsoleRenderer.java
index 575521c..a4e901c 100644
--- a/src/mightypork/rogue/world/gui/WorldConsoleRenderer.java
+++ b/src/mightypork/rogue/world/gui/WorldConsoleRenderer.java
@@ -27,8 +27,7 @@ public class WorldConsoleRenderer extends BaseComponent {
private final Rect itemViewRect;
- public WorldConsoleRenderer(Num rowHeight)
- {
+ public WorldConsoleRenderer(Num rowHeight) {
this.rowHeight = rowHeight;
this.fr = new FontRenderer(Res.getFont("tiny"));
@@ -72,7 +71,6 @@ public class WorldConsoleRenderer extends BaseComponent {
Log.e(e); // this should not happen
}
-
if (console.lastPickupItem != null) {
double alpha = 1;
diff --git a/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java b/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java
index 63846c8..c47daec 100644
--- a/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java
+++ b/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java
@@ -56,8 +56,7 @@ public class MIPKeyboard extends MapInteractionPlugin implements DelegatingClien
}
- public MIPKeyboard(MapView mapView)
- {
+ public MIPKeyboard(MapView mapView) {
super(mapView);
// bind keys
diff --git a/src/mightypork/rogue/world/gui/interaction/MIPMouse.java b/src/mightypork/rogue/world/gui/interaction/MIPMouse.java
index 8bac7c6..d59a93f 100644
--- a/src/mightypork/rogue/world/gui/interaction/MIPMouse.java
+++ b/src/mightypork/rogue/world/gui/interaction/MIPMouse.java
@@ -20,8 +20,7 @@ public class MIPMouse extends MapInteractionPlugin implements PlayerStepEndListe
private static final int RIGHT = 1; // left
- public MIPMouse(MapView mapView)
- {
+ public MIPMouse(MapView mapView) {
super(mapView);
}
diff --git a/src/mightypork/rogue/world/gui/interaction/MapInteractionPlugin.java b/src/mightypork/rogue/world/gui/interaction/MapInteractionPlugin.java
index 5d24107..8fde371 100644
--- a/src/mightypork/rogue/world/gui/interaction/MapInteractionPlugin.java
+++ b/src/mightypork/rogue/world/gui/interaction/MapInteractionPlugin.java
@@ -13,8 +13,7 @@ public abstract class MapInteractionPlugin {
protected final MapView mapView;
- public MapInteractionPlugin(MapView mapView)
- {
+ public MapInteractionPlugin(MapView mapView) {
super();
this.mapView = mapView;
}
diff --git a/src/mightypork/rogue/world/item/Item.java b/src/mightypork/rogue/world/item/Item.java
index 6527142..2a71f54 100644
--- a/src/mightypork/rogue/world/item/Item.java
+++ b/src/mightypork/rogue/world/item/Item.java
@@ -3,7 +3,7 @@ package mightypork.rogue.world.item;
import mightypork.rogue.world.PlayerFacade;
import mightypork.utils.Support;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.ion.IonBundled;
import mightypork.utils.ion.IonDataBundle;
import mightypork.utils.math.Calc;
@@ -18,8 +18,7 @@ public abstract class Item implements IonBundled {
private int uses = 1;
- public Item(ItemModel model)
- {
+ public Item(ItemModel model) {
this.model = model;
}
@@ -38,7 +37,7 @@ public abstract class Item implements IonBundled {
@Override
- @DefaultImpl
+ @Stub
public void save(IonDataBundle out)
{
out.put("c", amount);
@@ -47,7 +46,7 @@ public abstract class Item implements IonBundled {
@Override
- @DefaultImpl
+ @Stub
public void load(IonDataBundle in)
{
amount = in.get("c", amount);
@@ -61,7 +60,7 @@ public abstract class Item implements IonBundled {
}
- @DefaultImpl
+ @Stub
protected int getMaxStackSize()
{
return isStackable() ? 65535 : 1;
@@ -188,7 +187,7 @@ public abstract class Item implements IonBundled {
public abstract String getVisualName();
- @DefaultImpl
+ @Stub
public boolean pickUp(PlayerFacade pl)
{
return pl.addItem(this);
diff --git a/src/mightypork/rogue/world/item/ItemModel.java b/src/mightypork/rogue/world/item/ItemModel.java
index 972954e..a12032d 100644
--- a/src/mightypork/rogue/world/item/ItemModel.java
+++ b/src/mightypork/rogue/world/item/ItemModel.java
@@ -19,8 +19,7 @@ public final class ItemModel {
public final Class extends Item> itemClass;
- public ItemModel(int id, Class extends Item> item)
- {
+ public ItemModel(int id, Class extends Item> item) {
Items.register(id, this);
this.id = id;
this.itemClass = item;
diff --git a/src/mightypork/rogue/world/item/ItemRenderer.java b/src/mightypork/rogue/world/item/ItemRenderer.java
index 4c85492..18bca5d 100644
--- a/src/mightypork/rogue/world/item/ItemRenderer.java
+++ b/src/mightypork/rogue/world/item/ItemRenderer.java
@@ -9,8 +9,7 @@ public abstract class ItemRenderer {
protected final Item item;
- public ItemRenderer(Item item)
- {
+ public ItemRenderer(Item item) {
this.item = item;
}
diff --git a/src/mightypork/rogue/world/item/Items.java b/src/mightypork/rogue/world/item/Items.java
index acb2255..a6f675e 100644
--- a/src/mightypork/rogue/world/item/Items.java
+++ b/src/mightypork/rogue/world/item/Items.java
@@ -8,13 +8,7 @@ import mightypork.rogue.world.item.impl.active.ItemHeartPiece;
import mightypork.rogue.world.item.impl.food.ItemCheese;
import mightypork.rogue.world.item.impl.food.ItemMeat;
import mightypork.rogue.world.item.impl.food.ItemSandwich;
-import mightypork.rogue.world.item.impl.weapons.ItemAxe;
-import mightypork.rogue.world.item.impl.weapons.ItemBone;
-import mightypork.rogue.world.item.impl.weapons.ItemClub;
-import mightypork.rogue.world.item.impl.weapons.ItemKnife;
-import mightypork.rogue.world.item.impl.weapons.ItemRock;
-import mightypork.rogue.world.item.impl.weapons.ItemSword;
-import mightypork.rogue.world.item.impl.weapons.ItemTwig;
+import mightypork.rogue.world.item.impl.weapons.*;
import mightypork.utils.ion.IonDataBundle;
import mightypork.utils.ion.IonInput;
import mightypork.utils.ion.IonOutput;
diff --git a/src/mightypork/rogue/world/item/impl/ItemBaseFood.java b/src/mightypork/rogue/world/item/impl/ItemBaseFood.java
index e03b624..029e618 100644
--- a/src/mightypork/rogue/world/item/impl/ItemBaseFood.java
+++ b/src/mightypork/rogue/world/item/impl/ItemBaseFood.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.item.ItemType;
public abstract class ItemBaseFood extends Item {
- public ItemBaseFood(ItemModel model)
- {
+ public ItemBaseFood(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/ItemBaseWeapon.java b/src/mightypork/rogue/world/item/impl/ItemBaseWeapon.java
index 869fcaa..a2ccdbd 100644
--- a/src/mightypork/rogue/world/item/impl/ItemBaseWeapon.java
+++ b/src/mightypork/rogue/world/item/impl/ItemBaseWeapon.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.item.ItemType;
public abstract class ItemBaseWeapon extends Item {
- public ItemBaseWeapon(ItemModel model)
- {
+ public ItemBaseWeapon(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/active/ItemHeartPiece.java b/src/mightypork/rogue/world/item/impl/active/ItemHeartPiece.java
index 0ff6341..a440114 100644
--- a/src/mightypork/rogue/world/item/impl/active/ItemHeartPiece.java
+++ b/src/mightypork/rogue/world/item/impl/active/ItemHeartPiece.java
@@ -12,8 +12,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemHeartPiece extends Item {
- public ItemHeartPiece(ItemModel model)
- {
+ public ItemHeartPiece(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/food/ItemCheese.java b/src/mightypork/rogue/world/item/impl/food/ItemCheese.java
index 152d805..b26f007 100644
--- a/src/mightypork/rogue/world/item/impl/food/ItemCheese.java
+++ b/src/mightypork/rogue/world/item/impl/food/ItemCheese.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemCheese extends ItemBaseFood {
- public ItemCheese(ItemModel model)
- {
+ public ItemCheese(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/food/ItemMeat.java b/src/mightypork/rogue/world/item/impl/food/ItemMeat.java
index 8d65ead..e8f58f2 100644
--- a/src/mightypork/rogue/world/item/impl/food/ItemMeat.java
+++ b/src/mightypork/rogue/world/item/impl/food/ItemMeat.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemMeat extends ItemBaseFood {
- public ItemMeat(ItemModel model)
- {
+ public ItemMeat(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/food/ItemSandwich.java b/src/mightypork/rogue/world/item/impl/food/ItemSandwich.java
index 713b6e8..f655ab6 100644
--- a/src/mightypork/rogue/world/item/impl/food/ItemSandwich.java
+++ b/src/mightypork/rogue/world/item/impl/food/ItemSandwich.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemSandwich extends ItemBaseFood {
- public ItemSandwich(ItemModel model)
- {
+ public ItemSandwich(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemAxe.java b/src/mightypork/rogue/world/item/impl/weapons/ItemAxe.java
index d384bbc..2fbdb4d 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemAxe.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemAxe.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemAxe extends ItemBaseWeapon {
- public ItemAxe(ItemModel model)
- {
+ public ItemAxe(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemBone.java b/src/mightypork/rogue/world/item/impl/weapons/ItemBone.java
index 9b12682..51aee39 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemBone.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemBone.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemBone extends ItemBaseWeapon {
- public ItemBone(ItemModel model)
- {
+ public ItemBone(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemClub.java b/src/mightypork/rogue/world/item/impl/weapons/ItemClub.java
index bf15b73..caff2f2 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemClub.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemClub.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemClub extends ItemBaseWeapon {
- public ItemClub(ItemModel model)
- {
+ public ItemClub(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemKnife.java b/src/mightypork/rogue/world/item/impl/weapons/ItemKnife.java
index 0fb4f74..2fe3691 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemKnife.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemKnife.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemKnife extends ItemBaseWeapon {
- public ItemKnife(ItemModel model)
- {
+ public ItemKnife(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemRock.java b/src/mightypork/rogue/world/item/impl/weapons/ItemRock.java
index 1d142f5..4328e89 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemRock.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemRock.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemRock extends ItemBaseWeapon {
- public ItemRock(ItemModel model)
- {
+ public ItemRock(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemSword.java b/src/mightypork/rogue/world/item/impl/weapons/ItemSword.java
index 8aaf119..bb7d9b9 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemSword.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemSword.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemSword extends ItemBaseWeapon {
- public ItemSword(ItemModel model)
- {
+ public ItemSword(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/impl/weapons/ItemTwig.java b/src/mightypork/rogue/world/item/impl/weapons/ItemTwig.java
index 297eddc..24c86bd 100644
--- a/src/mightypork/rogue/world/item/impl/weapons/ItemTwig.java
+++ b/src/mightypork/rogue/world/item/impl/weapons/ItemTwig.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.item.render.QuadItemRenderer;
public class ItemTwig extends ItemBaseWeapon {
- public ItemTwig(ItemModel model)
- {
+ public ItemTwig(ItemModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/item/render/QuadItemRenderer.java b/src/mightypork/rogue/world/item/render/QuadItemRenderer.java
index 12239d5..197c963 100644
--- a/src/mightypork/rogue/world/item/render/QuadItemRenderer.java
+++ b/src/mightypork/rogue/world/item/render/QuadItemRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.item.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.item.Item;
import mightypork.rogue.world.item.ItemRenderer;
@@ -13,8 +13,7 @@ public class QuadItemRenderer extends ItemRenderer {
private final TxQuad txq;
- public QuadItemRenderer(Item item, TxQuad txq)
- {
+ public QuadItemRenderer(Item item, TxQuad txq) {
super(item);
this.txq = txq;
}
@@ -23,7 +22,7 @@ public class QuadItemRenderer extends ItemRenderer {
@Override
public void render(Rect r)
{
- Render.quadTextured(r, txq);
+ App.gfx().quad(r, txq);
}
}
diff --git a/src/mightypork/rogue/world/level/Level.java b/src/mightypork/rogue/world/level/Level.java
index a1eca23..d69e18a 100644
--- a/src/mightypork/rogue/world/level/Level.java
+++ b/src/mightypork/rogue/world/level/Level.java
@@ -2,16 +2,7 @@ package mightypork.rogue.world.level;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
import mightypork.rogue.world.World;
import mightypork.rogue.world.entity.Entities;
@@ -48,7 +39,6 @@ import mightypork.utils.math.noise.NoiseGen;
*/
public class Level implements BusAccess, Updateable, DelegatingClient, ToggleableClient, IonBinary {
-
private final FloodFill exploreFiller = new FloodFill() {
@Override
@@ -112,13 +102,11 @@ public class Level implements BusAccess, Updateable, DelegatingClient, Toggleabl
private double timeSinceLastEntitySort;
- public Level()
- {
+ public Level() {
}
- public Level(int width, int height)
- {
+ public Level(int width, int height) {
size.setTo(width, height);
buildArray();
}
@@ -154,7 +142,7 @@ public class Level implements BusAccess, Updateable, DelegatingClient, Toggleabl
public final Tile getTile(Coord pos)
{
if (!pos.isInRange(0, 0, size.x - 1, size.y - 1)) return Tiles.NULL.createTile(); // out of range
-
+
return tiles[pos.y][pos.x];
}
diff --git a/src/mightypork/rogue/world/level/render/EntityRenderContext.java b/src/mightypork/rogue/world/level/render/EntityRenderContext.java
index edb3b33..25f955b 100644
--- a/src/mightypork/rogue/world/level/render/EntityRenderContext.java
+++ b/src/mightypork/rogue/world/level/render/EntityRenderContext.java
@@ -7,8 +7,7 @@ import mightypork.utils.math.constraints.rect.Rect;
public class EntityRenderContext extends MapRenderContext {
- public EntityRenderContext(Level map, Rect drawArea)
- {
+ public EntityRenderContext(Level map, Rect drawArea) {
super(map, drawArea);
}
diff --git a/src/mightypork/rogue/world/level/render/MapRenderContext.java b/src/mightypork/rogue/world/level/render/MapRenderContext.java
index 82e2a0e..98ff03e 100644
--- a/src/mightypork/rogue/world/level/render/MapRenderContext.java
+++ b/src/mightypork/rogue/world/level/render/MapRenderContext.java
@@ -15,8 +15,7 @@ public abstract class MapRenderContext {
private final Rect mapRect;
- public MapRenderContext(Level map, Rect drawArea)
- {
+ public MapRenderContext(Level map, Rect drawArea) {
this.map = map;
this.tiler = drawArea.tiles(map.getWidth(), map.getHeight());
diff --git a/src/mightypork/rogue/world/level/render/TileRenderContext.java b/src/mightypork/rogue/world/level/render/TileRenderContext.java
index 1f637f8..cfab2ba 100644
--- a/src/mightypork/rogue/world/level/render/TileRenderContext.java
+++ b/src/mightypork/rogue/world/level/render/TileRenderContext.java
@@ -21,8 +21,7 @@ public final class TileRenderContext extends MapRenderContext implements RectBou
private final NoiseGen noise;
- public TileRenderContext(Level map, Rect drawArea)
- {
+ public TileRenderContext(Level map, Rect drawArea) {
super(map, drawArea);
//this.tiler.setOverlap(0.002); // avoid gaps (rounding error?)
diff --git a/src/mightypork/rogue/world/tile/Tile.java b/src/mightypork/rogue/world/tile/Tile.java
index ca6bd1b..536c7d6 100644
--- a/src/mightypork/rogue/world/tile/Tile.java
+++ b/src/mightypork/rogue/world/tile/Tile.java
@@ -9,7 +9,7 @@ import mightypork.rogue.world.item.Item;
import mightypork.rogue.world.level.Level;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.utils.Support;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.BusAccess;
import mightypork.utils.eventbus.EventBus;
import mightypork.utils.ion.IonBinary;
@@ -40,8 +40,7 @@ public abstract class Tile implements BusAccess, IonBinary {
private TileRenderer renderer;
- public Tile(TileModel model)
- {
+ public Tile(TileModel model) {
this.model = model;
}
@@ -51,7 +50,7 @@ public abstract class Tile implements BusAccess, IonBinary {
*
* @param context rendering ctx
*/
- @DefaultImpl
+ @Stub
public void renderTile(TileRenderContext context)
{
if (!isExplored() && Const.RENDER_UFOG) return;
@@ -64,7 +63,7 @@ public abstract class Tile implements BusAccess, IonBinary {
}
- @DefaultImpl
+ @Stub
public void renderUFog(TileRenderContext context)
{
initRenderer();
@@ -96,7 +95,7 @@ public abstract class Tile implements BusAccess, IonBinary {
*
* @param context
*/
- @DefaultImpl
+ @Stub
public void renderExtra(TileRenderContext context)
{
initRenderer();
@@ -172,7 +171,7 @@ public abstract class Tile implements BusAccess, IonBinary {
}
- @DefaultImpl
+ @Stub
public void updateTile(double delta)
{
initRenderer();
@@ -186,7 +185,7 @@ public abstract class Tile implements BusAccess, IonBinary {
*
* @return true if currently walkable
*/
- @DefaultImpl
+ @Stub
public boolean isWalkable()
{
return isPotentiallyWalkable();
@@ -205,7 +204,7 @@ public abstract class Tile implements BusAccess, IonBinary {
public abstract boolean doesCastShadow();
- @DefaultImpl
+ @Stub
public boolean doesReceiveShadow()
{
return !doesCastShadow();
@@ -252,7 +251,7 @@ public abstract class Tile implements BusAccess, IonBinary {
*
* @return true if the tile is interactive and did something.
*/
- @DefaultImpl
+ @Stub
public boolean onClick()
{
return false;
diff --git a/src/mightypork/rogue/world/tile/TileModel.java b/src/mightypork/rogue/world/tile/TileModel.java
index f02922b..5cc214a 100644
--- a/src/mightypork/rogue/world/tile/TileModel.java
+++ b/src/mightypork/rogue/world/tile/TileModel.java
@@ -19,8 +19,7 @@ public final class TileModel {
public final Class extends Tile> tileClass;
- public TileModel(int id, Class extends Tile> tile)
- {
+ public TileModel(int id, Class extends Tile> tile) {
Tiles.register(id, this);
this.id = id;
this.tileClass = tile;
diff --git a/src/mightypork/rogue/world/tile/TileRenderer.java b/src/mightypork/rogue/world/tile/TileRenderer.java
index 81c1572..c2e1a20 100644
--- a/src/mightypork/rogue/world/tile/TileRenderer.java
+++ b/src/mightypork/rogue/world/tile/TileRenderer.java
@@ -1,12 +1,13 @@
package mightypork.rogue.world.tile;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
+import mightypork.gamecore.render.RenderModule;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.render.NullTileRenderer;
-import mightypork.utils.annotations.DefaultImpl;
+import mightypork.utils.annotations.Stub;
import mightypork.utils.interfaces.Updateable;
import mightypork.utils.math.algo.Moves;
import mightypork.utils.math.constraints.rect.Rect;
@@ -40,8 +41,7 @@ public abstract class TileRenderer implements Updateable {
}
- public TileRenderer(Tile tile)
- {
+ public TileRenderer(Tile tile) {
this.tile = tile;
if (!inited) {
@@ -90,21 +90,24 @@ public abstract class TileRenderer implements Updateable {
if (shadows == 0) return;
final Rect rect = context.getRect();
+
+
+ final RenderModule gfx = App.gfx();
- if ((shadows & Moves.BITS_NW_CORNER) == Moves.BIT_NW) Render.quadTextured(rect, SH_NW);
- if ((shadows & Moves.BIT_N) != 0) Render.quadTextured(rect, SH_N);
- if ((shadows & Moves.BITS_NE_CORNER) == Moves.BIT_NE) Render.quadTextured(rect, SH_NE);
+ if ((shadows & Moves.BITS_NW_CORNER) == Moves.BIT_NW) gfx.quad(rect, SH_NW);
+ if ((shadows & Moves.BIT_N) != 0) gfx.quad(rect, SH_N);
+ if ((shadows & Moves.BITS_NE_CORNER) == Moves.BIT_NE) gfx.quad(rect, SH_NE);
- if ((shadows & Moves.BIT_W) != 0) Render.quadTextured(rect, SH_W);
- if ((shadows & Moves.BIT_E) != 0) Render.quadTextured(rect, SH_E);
+ if ((shadows & Moves.BIT_W) != 0) gfx.quad(rect, SH_W);
+ if ((shadows & Moves.BIT_E) != 0) gfx.quad(rect, SH_E);
- if ((shadows & Moves.BITS_SW_CORNER) == Moves.BIT_SW) Render.quadTextured(rect, SH_SW);
- if ((shadows & Moves.BIT_S) != 0) Render.quadTextured(rect, SH_S);
- if ((shadows & Moves.BITS_SE_CORNER) == Moves.BIT_SE) Render.quadTextured(rect, SH_SE);
+ if ((shadows & Moves.BITS_SW_CORNER) == Moves.BIT_SW) gfx.quad(rect, SH_SW);
+ if ((shadows & Moves.BIT_S) != 0) gfx.quad(rect, SH_S);
+ if ((shadows & Moves.BITS_SE_CORNER) == Moves.BIT_SE) gfx.quad(rect, SH_SE);
}
- @DefaultImpl
+ @Stub
public void renderExtra(TileRenderContext context)
{
}
@@ -113,11 +116,13 @@ public abstract class TileRenderer implements Updateable {
public void renderUnexploredFog(TileRenderContext context)
{
// TODO cache values, update neighbouring tiles upon "explored" flag changed.
+
+ final RenderModule gfx = App.gfx();
final Rect rect = context.getRect();
if (!context.getTile().isExplored()) {
- Render.quadTextured(rect, UFOG_FULL);
+ gfx.quad(rect, UFOG_FULL);
return;
}
@@ -132,16 +137,17 @@ public abstract class TileRenderer implements Updateable {
if (ufog == 0) return;
- if ((ufog & Moves.BITS_NW_CORNER) == Moves.BIT_NW) Render.quadTextured(rect, UFOG_NW);
- if ((ufog & Moves.BIT_N) != 0) Render.quadTextured(rect, UFOG_N);
- if ((ufog & Moves.BITS_NE_CORNER) == Moves.BIT_NE) Render.quadTextured(rect, UFOG_NE);
- if ((ufog & Moves.BIT_W) != 0) Render.quadTextured(rect, UFOG_W);
- if ((ufog & Moves.BIT_E) != 0) Render.quadTextured(rect, UFOG_E);
+ if ((ufog & Moves.BITS_NW_CORNER) == Moves.BIT_NW) gfx.quad(rect, UFOG_NW);
+ if ((ufog & Moves.BIT_N) != 0) gfx.quad(rect, UFOG_N);
+ if ((ufog & Moves.BITS_NE_CORNER) == Moves.BIT_NE) gfx.quad(rect, UFOG_NE);
+
+ if ((ufog & Moves.BIT_W) != 0) gfx.quad(rect, UFOG_W);
+ if ((ufog & Moves.BIT_E) != 0) gfx.quad(rect, UFOG_E);
- if ((ufog & Moves.BITS_SW_CORNER) == Moves.BIT_SW) Render.quadTextured(rect, UFOG_SW);
- if ((ufog & Moves.BIT_S) != 0) Render.quadTextured(rect, UFOG_S);
- if ((ufog & Moves.BITS_SE_CORNER) == Moves.BIT_SE) Render.quadTextured(rect, UFOG_SE);
+ if ((ufog & Moves.BITS_SW_CORNER) == Moves.BIT_SW) gfx.quad(rect, UFOG_SW);
+ if ((ufog & Moves.BIT_S) != 0) gfx.quad(rect, UFOG_S);
+ if ((ufog & Moves.BITS_SE_CORNER) == Moves.BIT_SE) gfx.quad(rect, UFOG_SE);
}
diff --git a/src/mightypork/rogue/world/tile/TileType.java b/src/mightypork/rogue/world/tile/TileType.java
index eba8593..86fcba0 100644
--- a/src/mightypork/rogue/world/tile/TileType.java
+++ b/src/mightypork/rogue/world/tile/TileType.java
@@ -28,8 +28,7 @@ public enum TileType
private final boolean potentiallyWalkable;
- private TileType(Color defaultMapColor, boolean potentiallyWalkable)
- {
+ private TileType(Color defaultMapColor, boolean potentiallyWalkable) {
this.mapColor = defaultMapColor;
this.potentiallyWalkable = potentiallyWalkable;
}
diff --git a/src/mightypork/rogue/world/tile/Tiles.java b/src/mightypork/rogue/world/tile/Tiles.java
index a2b85b6..0d81029 100644
--- a/src/mightypork/rogue/world/tile/Tiles.java
+++ b/src/mightypork/rogue/world/tile/Tiles.java
@@ -4,14 +4,7 @@ package mightypork.rogue.world.tile;
import java.io.IOException;
import mightypork.rogue.world.tile.impl.NullTile;
-import mightypork.rogue.world.tile.impl.brick.TileBrickChest;
-import mightypork.rogue.world.tile.impl.brick.TileBrickDoor;
-import mightypork.rogue.world.tile.impl.brick.TileBrickEntrance;
-import mightypork.rogue.world.tile.impl.brick.TileBrickExit;
-import mightypork.rogue.world.tile.impl.brick.TileBrickFloor;
-import mightypork.rogue.world.tile.impl.brick.TileBrickPassage;
-import mightypork.rogue.world.tile.impl.brick.TileBrickSecretDoor;
-import mightypork.rogue.world.tile.impl.brick.TileBrickWall;
+import mightypork.rogue.world.tile.impl.brick.*;
import mightypork.utils.ion.IonInput;
import mightypork.utils.ion.IonOutput;
diff --git a/src/mightypork/rogue/world/tile/impl/NullTile.java b/src/mightypork/rogue/world/tile/impl/NullTile.java
index a785cb6..7519eb7 100644
--- a/src/mightypork/rogue/world/tile/impl/NullTile.java
+++ b/src/mightypork/rogue/world/tile/impl/NullTile.java
@@ -11,8 +11,7 @@ import mightypork.rogue.world.tile.TileType;
public class NullTile extends Tile {
- public NullTile(TileModel model)
- {
+ public NullTile(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseChest.java b/src/mightypork/rogue/world/tile/impl/TileBaseChest.java
index 9ce45c0..cc6607c 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseChest.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseChest.java
@@ -19,8 +19,7 @@ public abstract class TileBaseChest extends TileWithItems {
private int clicks = 1;
- public TileBaseChest(TileModel model)
- {
+ public TileBaseChest(TileModel model) {
super(model);
}
@@ -67,7 +66,6 @@ public abstract class TileBaseChest extends TileWithItems {
}
}
-
return true;
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseDoor.java b/src/mightypork/rogue/world/tile/impl/TileBaseDoor.java
index 34b9bfc..83cdd2d 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseDoor.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseDoor.java
@@ -18,8 +18,7 @@ public abstract class TileBaseDoor extends TileSolid {
protected boolean locked = false;
- public TileBaseDoor(TileModel model, TxSheet locked, TxSheet closed, TxSheet open)
- {
+ public TileBaseDoor(TileModel model, TxSheet locked, TxSheet closed, TxSheet open) {
super(model);
this.renderer = new DoorTileRenderer(this, locked, closed, open);
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseEntrance.java b/src/mightypork/rogue/world/tile/impl/TileBaseEntrance.java
index 0242620..69fc01c 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseEntrance.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseEntrance.java
@@ -10,8 +10,7 @@ import mightypork.utils.math.color.Color;
public abstract class TileBaseEntrance extends TileBaseStairs {
- public TileBaseEntrance(TileModel model)
- {
+ public TileBaseEntrance(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseExit.java b/src/mightypork/rogue/world/tile/impl/TileBaseExit.java
index 69e5768..f9264e6 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseExit.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseExit.java
@@ -10,8 +10,7 @@ import mightypork.utils.math.color.Color;
public abstract class TileBaseExit extends TileBaseStairs {
- public TileBaseExit(TileModel model)
- {
+ public TileBaseExit(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseFloor.java b/src/mightypork/rogue/world/tile/impl/TileBaseFloor.java
index 9532ed5..a71446e 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseFloor.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseFloor.java
@@ -13,8 +13,7 @@ public abstract class TileBaseFloor extends TileWithItems {
private final BasicTileRenderer renderer;
- public TileBaseFloor(TileModel model, TxSheet sheet)
- {
+ public TileBaseFloor(TileModel model, TxSheet sheet) {
super(model);
this.renderer = new BasicTileRenderer(this, sheet);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBasePassage.java b/src/mightypork/rogue/world/tile/impl/TileBasePassage.java
index af9f9dd..56ae2d1 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBasePassage.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBasePassage.java
@@ -18,8 +18,7 @@ public abstract class TileBasePassage extends TileSolid {
private final BasicTileRenderer renderer;
- public TileBasePassage(TileModel model, TxSheet sheet)
- {
+ public TileBasePassage(TileModel model, TxSheet sheet) {
super(model);
this.renderer = new BasicTileRenderer(this, sheet);
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseSecretDoor.java b/src/mightypork/rogue/world/tile/impl/TileBaseSecretDoor.java
index 941367b..0f6f7d3 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseSecretDoor.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseSecretDoor.java
@@ -16,8 +16,7 @@ public abstract class TileBaseSecretDoor extends TileBaseDoor {
private int clicks = 2;
- public TileBaseSecretDoor(TileModel model, TxSheet secret, TxSheet closed, TxSheet open)
- {
+ public TileBaseSecretDoor(TileModel model, TxSheet secret, TxSheet closed, TxSheet open) {
super(model, secret, closed, open);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseStairs.java b/src/mightypork/rogue/world/tile/impl/TileBaseStairs.java
index 27ebcaf..19949de 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseStairs.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseStairs.java
@@ -7,8 +7,7 @@ import mightypork.rogue.world.tile.TileType;
public abstract class TileBaseStairs extends TileSolid {
- public TileBaseStairs(TileModel model)
- {
+ public TileBaseStairs(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileBaseWall.java b/src/mightypork/rogue/world/tile/impl/TileBaseWall.java
index 61eb70a..ab316cd 100644
--- a/src/mightypork/rogue/world/tile/impl/TileBaseWall.java
+++ b/src/mightypork/rogue/world/tile/impl/TileBaseWall.java
@@ -12,8 +12,7 @@ public abstract class TileBaseWall extends TileSolid {
private final BasicTileRenderer renderer;
- public TileBaseWall(TileModel model, TxSheet sheet)
- {
+ public TileBaseWall(TileModel model, TxSheet sheet) {
super(model);
this.renderer = new BasicTileRenderer(this, sheet);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileSolid.java b/src/mightypork/rogue/world/tile/impl/TileSolid.java
index c7cc1f6..0ef40ce 100644
--- a/src/mightypork/rogue/world/tile/impl/TileSolid.java
+++ b/src/mightypork/rogue/world/tile/impl/TileSolid.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.TileModel;
public abstract class TileSolid extends Tile {
- public TileSolid(TileModel model)
- {
+ public TileSolid(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/TileWithItems.java b/src/mightypork/rogue/world/tile/impl/TileWithItems.java
index 44c3d9d..f7e9336 100644
--- a/src/mightypork/rogue/world/tile/impl/TileWithItems.java
+++ b/src/mightypork/rogue/world/tile/impl/TileWithItems.java
@@ -22,8 +22,7 @@ public abstract class TileWithItems extends Tile {
protected final Stack- items = new Stack<>();
- public TileWithItems(TileModel model)
- {
+ public TileWithItems(TileModel model) {
super(model);
}
@@ -106,7 +105,6 @@ public abstract class TileWithItems extends Tile {
return !items.isEmpty();
}
-
// @Override
// public boolean onClick()
// {
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickChest.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickChest.java
index 03d9c62..794c80c 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickChest.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickChest.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.tile.render.ChestRenderer;
public class TileBrickChest extends TileBaseChest {
- public TileBrickChest(TileModel model)
- {
+ public TileBrickChest(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickDoor.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickDoor.java
index 70ccb4d..cd60cad 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickDoor.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickDoor.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.impl.TileBaseDoor;
public class TileBrickDoor extends TileBaseDoor {
- public TileBrickDoor(TileModel model)
- {
+ public TileBrickDoor(TileModel model) {
//@formatter:off
super(
model,
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickEntrance.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickEntrance.java
index 16eb3d6..97c6ca1 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickEntrance.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickEntrance.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.tile.render.OneFrameTileRenderer;
public class TileBrickEntrance extends TileBaseEntrance {
- public TileBrickEntrance(TileModel model)
- {
+ public TileBrickEntrance(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickExit.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickExit.java
index e7549d5..337e0f0 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickExit.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickExit.java
@@ -10,8 +10,7 @@ import mightypork.rogue.world.tile.render.OneFrameTileRenderer;
public class TileBrickExit extends TileBaseExit {
- public TileBrickExit(TileModel model)
- {
+ public TileBrickExit(TileModel model) {
super(model);
}
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickFloor.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickFloor.java
index 86eb660..b50c1c6 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickFloor.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickFloor.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.impl.TileBaseFloor;
public class TileBrickFloor extends TileBaseFloor {
- public TileBrickFloor(TileModel model)
- {
+ public TileBrickFloor(TileModel model) {
super(model, Res.getTxSheet("tile.brick.floor"));
}
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickPassage.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickPassage.java
index 94e7cee..9265712 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickPassage.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickPassage.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.impl.TileBasePassage;
public class TileBrickPassage extends TileBasePassage {
- public TileBrickPassage(TileModel model)
- {
+ public TileBrickPassage(TileModel model) {
super(model, Res.getTxSheet("tile.brick.passage"));
}
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickSecretDoor.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickSecretDoor.java
index b88665c..b87db09 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickSecretDoor.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickSecretDoor.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.impl.TileBaseSecretDoor;
public class TileBrickSecretDoor extends TileBaseSecretDoor {
- public TileBrickSecretDoor(TileModel model)
- {
+ public TileBrickSecretDoor(TileModel model) {
//@formatter:off
super(
model,
diff --git a/src/mightypork/rogue/world/tile/impl/brick/TileBrickWall.java b/src/mightypork/rogue/world/tile/impl/brick/TileBrickWall.java
index 0d745f0..90d1c70 100644
--- a/src/mightypork/rogue/world/tile/impl/brick/TileBrickWall.java
+++ b/src/mightypork/rogue/world/tile/impl/brick/TileBrickWall.java
@@ -8,8 +8,7 @@ import mightypork.rogue.world.tile.impl.TileBaseWall;
public class TileBrickWall extends TileBaseWall {
- public TileBrickWall(TileModel model)
- {
+ public TileBrickWall(TileModel model) {
super(model, Res.getTxSheet("tile.brick.wall"));
}
diff --git a/src/mightypork/rogue/world/tile/render/BasicTileRenderer.java b/src/mightypork/rogue/world/tile/render/BasicTileRenderer.java
index 2edc79f..7f2a746 100644
--- a/src/mightypork/rogue/world/tile/render/BasicTileRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/BasicTileRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
@@ -14,8 +14,7 @@ public class BasicTileRenderer extends TileRenderer {
private final TxSheet sheet;
- public BasicTileRenderer(Tile tile, TxSheet sheet)
- {
+ public BasicTileRenderer(Tile tile, TxSheet sheet) {
super(tile);
this.sheet = sheet;
}
@@ -25,6 +24,6 @@ public class BasicTileRenderer extends TileRenderer {
public void renderTile(TileRenderContext context)
{
final Rect rect = context.getRect();
- Render.quadTextured(rect, sheet.getRandomQuad(context.getTileNoise()));
+ App.gfx().quad(rect, sheet.getRandomQuad(context.getTileNoise()));
}
}
diff --git a/src/mightypork/rogue/world/tile/render/ChestRenderer.java b/src/mightypork/rogue/world/tile/render/ChestRenderer.java
index 0db3ad8..731ce56 100644
--- a/src/mightypork/rogue/world/tile/render/ChestRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/ChestRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.TileRenderer;
@@ -17,8 +17,7 @@ public class ChestRenderer extends TileRenderer {
private final TxQuad txqChestOpen;
- public ChestRenderer(TileBaseChest tile, TxQuad txq, TxQuad chest, TxQuad chestOpen)
- {
+ public ChestRenderer(TileBaseChest tile, TxQuad txq, TxQuad chest, TxQuad chestOpen) {
super(tile);
this.chestTile = tile;
@@ -32,7 +31,7 @@ public class ChestRenderer extends TileRenderer {
@Override
public void renderTile(TileRenderContext context)
{
- Render.quadTextured(context.getRect(), txqFloor);
+ App.gfx().quad(context.getRect(), txqFloor);
}
@@ -40,10 +39,10 @@ public class ChestRenderer extends TileRenderer {
public void renderExtra(TileRenderContext context)
{
if (!chestTile.opened) {
- Render.quadTextured(context.getRect(), txqChest);
+ App.gfx().quad(context.getRect(), txqChest);
} else {
if (!chestTile.removed) {
- Render.quadTextured(context.getRect(), txqChestOpen);
+ App.gfx().quad(context.getRect(), txqChestOpen);
}
}
}
diff --git a/src/mightypork/rogue/world/tile/render/DoorTileRenderer.java b/src/mightypork/rogue/world/tile/render/DoorTileRenderer.java
index 9020ea9..ec87daf 100644
--- a/src/mightypork/rogue/world/tile/render/DoorTileRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/DoorTileRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.TileRenderer;
@@ -28,8 +28,7 @@ public class DoorTileRenderer extends TileRenderer {
};
- public DoorTileRenderer(TileBaseDoor doorTile, TxSheet locked, TxSheet closed, TxSheet open)
- {
+ public DoorTileRenderer(TileBaseDoor doorTile, TxSheet locked, TxSheet closed, TxSheet open) {
super(doorTile);
this.locked = locked;
@@ -50,10 +49,10 @@ public class DoorTileRenderer extends TileRenderer {
}
if (visuallyOpen) {
- Render.quadTextured(rect, open.getRandomQuad(context.getTileNoise()));
+ App.gfx().quad(rect, open.getRandomQuad(context.getTileNoise()));
} else {
final TxSheet sheet = (((TileBaseDoor) tile).isLocked() ? locked : closed);
- Render.quadTextured(rect, sheet.getRandomQuad(context.getTileNoise()));
+ App.gfx().quad(rect, sheet.getRandomQuad(context.getTileNoise()));
}
}
diff --git a/src/mightypork/rogue/world/tile/render/NullTileRenderer.java b/src/mightypork/rogue/world/tile/render/NullTileRenderer.java
index a06296c..5564cb8 100644
--- a/src/mightypork/rogue/world/tile/render/NullTileRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/NullTileRenderer.java
@@ -12,8 +12,7 @@ import mightypork.rogue.world.tile.TileRenderer;
*/
public class NullTileRenderer extends TileRenderer {
- public NullTileRenderer()
- {
+ public NullTileRenderer() {
super(null);
}
diff --git a/src/mightypork/rogue/world/tile/render/OneFrameTileRenderer.java b/src/mightypork/rogue/world/tile/render/OneFrameTileRenderer.java
index ac7f7bc..945f11e 100644
--- a/src/mightypork/rogue/world/tile/render/OneFrameTileRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/OneFrameTileRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
@@ -18,8 +18,7 @@ public class OneFrameTileRenderer extends TileRenderer {
private final TxQuad txq;
- public OneFrameTileRenderer(Tile tile, TxQuad txq)
- {
+ public OneFrameTileRenderer(Tile tile, TxQuad txq) {
super(tile);
this.txq = txq;
}
@@ -28,6 +27,6 @@ public class OneFrameTileRenderer extends TileRenderer {
@Override
public void renderTile(TileRenderContext context)
{
- Render.quadTextured(context.getRect(), txq);
+ App.gfx().quad(context.getRect(), txq);
}
}
diff --git a/src/mightypork/rogue/world/tile/render/TwoHighTileRenderer.java b/src/mightypork/rogue/world/tile/render/TwoHighTileRenderer.java
index f01d703..a3ad6b7 100644
--- a/src/mightypork/rogue/world/tile/render/TwoHighTileRenderer.java
+++ b/src/mightypork/rogue/world/tile/render/TwoHighTileRenderer.java
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.render;
-import mightypork.gamecore.render.Render;
+import mightypork.gamecore.core.modules.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
@@ -19,8 +19,7 @@ public class TwoHighTileRenderer extends TileRenderer {
private final TxQuad txq;
- public TwoHighTileRenderer(Tile tile, TxQuad txq)
- {
+ public TwoHighTileRenderer(Tile tile, TxQuad txq) {
super(tile);
this.txq = txq;
}
@@ -30,6 +29,6 @@ public class TwoHighTileRenderer extends TileRenderer {
public void renderTile(TileRenderContext context)
{
final Rect rect = context.getRect();
- Render.quadTextured(rect.growUp(rect.height()), txq);
+ App.gfx().quad(rect.growUp(rect.height()), txq);
}
}