cleanup and refactoring, package reorganization

This commit is contained in:
2014-07-27 00:02:54 +02:00
parent 50cbc9479b
commit a4108f2caf
99 changed files with 402 additions and 336 deletions
@@ -1,14 +1,14 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import java.util.ArrayList;
import java.util.List;
import mightypork.gamecore.backend.BackendModule;
import mightypork.gamecore.audio.players.EffectPlayer;
import mightypork.gamecore.audio.players.LoopPlayer;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.ResourceLoadRequest;
import mightypork.gamecore.resources.audio.players.EffectPlayer;
import mightypork.gamecore.resources.audio.players.LoopPlayer;
import mightypork.gamecore.core.BackendModule;
import mightypork.gamecore.resources.loading.ResourceLoadRequest;
import mightypork.utils.interfaces.Updateable;
import mightypork.utils.math.constraints.vect.Vect;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import mightypork.gamecore.core.App;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import mightypork.utils.interfaces.Destroyable;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import mightypork.utils.math.Calc;
@@ -1,12 +1,12 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import java.util.HashMap;
import java.util.Map;
import mightypork.gamecore.audio.players.EffectPlayer;
import mightypork.gamecore.audio.players.LoopPlayer;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.audio.players.EffectPlayer;
import mightypork.gamecore.resources.audio.players.LoopPlayer;
/**
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.audio;
package mightypork.gamecore.audio;
import mightypork.utils.math.Calc;
@@ -1,8 +1,8 @@
package mightypork.gamecore.resources.audio.players;
package mightypork.gamecore.audio.players;
import mightypork.gamecore.resources.audio.DeferredAudio;
import mightypork.gamecore.resources.audio.Volume;
import mightypork.gamecore.audio.DeferredAudio;
import mightypork.gamecore.audio.Volume;
import mightypork.utils.interfaces.Destroyable;
@@ -1,8 +1,8 @@
package mightypork.gamecore.resources.audio.players;
package mightypork.gamecore.audio.players;
import mightypork.gamecore.resources.audio.DeferredAudio;
import mightypork.gamecore.resources.audio.Volume;
import mightypork.gamecore.audio.DeferredAudio;
import mightypork.gamecore.audio.Volume;
import mightypork.utils.math.constraints.vect.Vect;
@@ -1,8 +1,8 @@
package mightypork.gamecore.resources.audio.players;
package mightypork.gamecore.audio.players;
import mightypork.gamecore.resources.audio.DeferredAudio;
import mightypork.gamecore.resources.audio.Volume;
import mightypork.gamecore.audio.DeferredAudio;
import mightypork.gamecore.audio.Volume;
import mightypork.utils.interfaces.Pauseable;
import mightypork.utils.interfaces.Updateable;
import mightypork.utils.math.animation.NumAnimated;
@@ -1,4 +1,4 @@
package mightypork.gamecore.util;
package mightypork.gamecore.backends.lwjgl;
import java.nio.FloatBuffer;
@@ -1,7 +1,8 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.core.OptionalInitTask;
import mightypork.utils.logging.writers.LogWriter;
@@ -10,6 +11,7 @@ import mightypork.utils.logging.writers.LogWriter;
*
* @author Ondřej Hruška (MightyPork)
*/
@OptionalInitTask
public class InitTaskRedirectSlickLog extends InitTask {
@Override
@@ -1,9 +1,11 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl;
import mightypork.gamecore.backend.Backend;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.resources.audio.AudioModule;
import mightypork.gamecore.audio.AudioModule;
import mightypork.gamecore.backends.lwjgl.audio.SlickAudioModule;
import mightypork.gamecore.backends.lwjgl.graphics.LwjglGraphicsModule;
import mightypork.gamecore.core.AppBackend;
import mightypork.gamecore.graphics.GraphicsModule;
/**
@@ -11,7 +13,7 @@ import mightypork.gamecore.resources.audio.AudioModule;
*
* @author MightyPork
*/
public class LwjglBackend extends Backend {
public class LwjglBackend extends AppBackend {
private LwjglGraphicsModule graphics;
private SlickAudioModule audio;
@@ -22,6 +24,8 @@ public class LwjglBackend extends Backend {
{
addChildClient(graphics = new LwjglGraphicsModule());
addChildClient(audio = new SlickAudioModule());
app.addInitTask(new InitTaskRedirectSlickLog());
}
@@ -1,4 +1,4 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl;
import java.util.logging.Level;
@@ -11,7 +11,7 @@ import mightypork.utils.logging.writers.LogWriter;
*
* @author Ondřej Hruška (MightyPork)
*/
public class SlickLogRedirector implements org.newdawn.slick.util.LogSystem {
class SlickLogRedirector implements org.newdawn.slick.util.LogSystem {
LogWriter writer;
@@ -1,10 +1,10 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl.audio;
import java.io.IOException;
import java.io.InputStream;
import mightypork.gamecore.resources.audio.DeferredAudio;
import mightypork.gamecore.audio.DeferredAudio;
import mightypork.utils.files.FileUtil;
import org.lwjgl.openal.AL10;
@@ -1,11 +1,11 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl.audio;
import java.nio.FloatBuffer;
import mightypork.gamecore.resources.audio.AudioModule;
import mightypork.gamecore.resources.audio.DeferredAudio;
import mightypork.gamecore.util.BufferHelper;
import mightypork.gamecore.audio.AudioModule;
import mightypork.gamecore.audio.DeferredAudio;
import mightypork.gamecore.backends.lwjgl.BufferHelper;
import mightypork.utils.logging.Log;
import mightypork.utils.math.constraints.vect.Vect;
import mightypork.utils.math.constraints.vect.var.VectVar;
@@ -1,4 +1,4 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl.graphics;
import java.awt.image.BufferedImage;
@@ -8,7 +8,7 @@ import java.nio.ByteBuffer;
import javax.imageio.ImageIO;
import mightypork.gamecore.render.Screenshot;
import mightypork.gamecore.graphics.Screenshot;
/**
@@ -1,4 +1,4 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl.graphics;
import static org.lwjgl.opengl.GL11.*;
@@ -7,11 +7,11 @@ import java.nio.ByteBuffer;
import java.util.Stack;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.gamecore.graphics.Screenshot;
import mightypork.gamecore.graphics.textures.DeferredTexture;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.events.ViewportChangeEvent;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.render.Screenshot;
import mightypork.gamecore.resources.textures.DeferredTexture;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.utils.logging.Log;
import mightypork.utils.math.color.Color;
import mightypork.utils.math.color.Grad;
@@ -1,10 +1,10 @@
package mightypork.gamecore.backend.lwjgl;
package mightypork.gamecore.backends.lwjgl.graphics;
import java.io.IOException;
import mightypork.gamecore.resources.MustLoadInRenderingContext;
import mightypork.gamecore.resources.textures.DeferredTexture;
import mightypork.gamecore.graphics.textures.DeferredTexture;
import mightypork.gamecore.resources.loading.MustLoadInRenderingContext;
import mightypork.utils.annotations.Alias;
import mightypork.utils.exceptions.IllegalValueException;
import mightypork.utils.files.FileUtil;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.fonts.impl;
package mightypork.gamecore.backends.lwjgl.graphics.font;
import java.awt.Font;
@@ -6,10 +6,9 @@ import java.awt.FontFormatException;
import java.io.IOException;
import java.io.InputStream;
import mightypork.gamecore.resources.BaseDeferredResource;
import mightypork.gamecore.resources.MustLoadInRenderingContext;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.gamecore.resources.textures.FilterMode;
import mightypork.gamecore.graphics.fonts.DeferredFont;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.resources.loading.MustLoadInRenderingContext;
import mightypork.utils.annotations.Alias;
import mightypork.utils.files.FileUtil;
import mightypork.utils.math.color.Color;
@@ -23,42 +22,11 @@ import mightypork.utils.math.constraints.vect.Vect;
*/
@MustLoadInRenderingContext
@Alias(name = "Font")
public class LazyFont extends BaseDeferredResource implements IFont {
public static enum FontStyle
{
PLAIN(Font.PLAIN), BOLD(Font.BOLD), ITALIC(Font.ITALIC), BOLD_ITALIC(Font.BOLD + Font.ITALIC);
int numval;
private FontStyle(int style) {
this.numval = style;
}
}
public class DeferredLwjglFont extends DeferredFont {
private IFont font = null;
private double size;
private FontStyle style;
private String chars;
private FilterMode filter;
private boolean antialias;
private double discardTop;
private double discardBottom;
/**
* A font from resource; setters shall be used to specify parameters in
* greater detail.
*
* @param resourcePath resource to load
* @param chars chars to load; null to load basic chars only
* @param size size (px)
*/
public LazyFont(String resourcePath, String chars, double size) {
this(resourcePath, chars, size, FontStyle.PLAIN, false, FilterMode.NEAREST);
}
/**
* A font from resource
@@ -66,47 +34,11 @@ public class LazyFont extends BaseDeferredResource implements IFont {
* @param resourcePath resource to load
* @param chars chars to load; null to load basic chars only
* @param size size (px)
* @param style font style
* @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 DeferredLwjglFont(String resourcePath, String chars, double size) {
super(resourcePath);
this.size = size;
this.style = style;
this.chars = chars;
this.filter = filter;
this.antialias = antialias;
}
public synchronized void setSize(double size)
{
this.size = size;
}
public synchronized void setStyle(FontStyle style)
{
this.style = style;
}
public synchronized void setChars(String chars)
{
this.chars = chars;
}
public synchronized void setFilter(FilterMode filter)
{
this.filter = filter;
}
public synchronized void setAntialias(boolean antialias)
{
this.antialias = antialias;
}
@@ -115,7 +47,7 @@ public class LazyFont extends BaseDeferredResource implements IFont {
{
final Font awtFont = getAwtFont(path, (float) size, style.numval);
font = new TextureBackedFont(awtFont, antialias, filter, chars);
font = new LwjglTextureBackedFont(awtFont, antialias, filter, chars);
font.setDiscardRatio(discardTop, discardBottom);
}
@@ -209,26 +141,4 @@ public class LazyFont extends BaseDeferredResource implements IFont {
// this will have to suffice
font = null;
}
@Override
public void setDiscardRatio(double top, double bottom)
{
discardTop = top;
discardBottom = bottom;
}
@Override
public double getTopDiscardRatio()
{
return discardTop;
}
@Override
public double getBottomDiscardRatio()
{
return discardBottom;
}
}
@@ -0,0 +1,37 @@
package mightypork.gamecore.backends.lwjgl.graphics.font;
import java.awt.Font;
import java.io.IOException;
import mightypork.gamecore.graphics.textures.FilterMode;
import mightypork.utils.annotations.Alias;
/**
* Font obtained from the OS
*
* @author Ondřej Hruška (MightyPork)
*/
@Alias(name = "FontNative")
public class DeferredLwjglFontFromSystem extends DeferredLwjglFont {
/**
* A font from OS, found by name
*
* @param fontName font family name
* @param chars chars to load; null to load basic chars only
* @param size size (pt)
*/
public DeferredLwjglFontFromSystem(String fontName, String chars, double size) {
super(fontName, chars, size);
}
@Override
protected Font getAwtFont(String resource, float size, int style) throws IOException
{
return new Font(resource, style, (int) size);
}
}
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.fonts.impl;
package mightypork.gamecore.backends.lwjgl.graphics.font;
import static org.lwjgl.opengl.GL11.*;
@@ -18,8 +18,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.gamecore.resources.textures.FilterMode;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.graphics.textures.FilterMode;
import mightypork.utils.exceptions.IllegalValueException;
import mightypork.utils.logging.Log;
import mightypork.utils.math.color.Color;
@@ -41,7 +41,7 @@ import org.newdawn.slick.opengl.GLUtils;
* @author David Aaron Muhar (bobjob)
* @author Ondřej Hruška (MightyPork)
*/
public class TextureBackedFont implements IFont {
public class LwjglTextureBackedFont implements IFont {
private class CharTile {
@@ -90,7 +90,7 @@ public class TextureBackedFont implements IFont {
* @param filter used Gl filter
* @param chars chars to load
*/
public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, String chars) {
public LwjglTextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, String chars) {
this(font, antialias, filter, (" " + chars).toCharArray());
}
@@ -103,7 +103,7 @@ public class TextureBackedFont implements IFont {
* @param filter used Gl filter
* @param chars chars to load
*/
public TextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, char[] chars) {
public LwjglTextureBackedFont(java.awt.Font font, boolean antialias, FilterMode filter, char[] chars) {
GLUtils.checkGLContext();
this.font = font;
+13 -9
View File
@@ -6,12 +6,13 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import mightypork.gamecore.backend.Backend;
import mightypork.gamecore.audio.AudioModule;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.core.plugins.AppPlugin;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.resources.audio.AudioModule;
import mightypork.gamecore.core.init.InitTaskCrashHandler;
import mightypork.gamecore.core.init.InitTaskIonizables;
import mightypork.gamecore.core.init.InitTaskLog;
import mightypork.gamecore.core.init.InitTaskLogHeader;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.EventBus;
import mightypork.utils.eventbus.clients.BusNode;
@@ -29,7 +30,7 @@ public class App extends BusNode {
private static App instance;
private final Backend backend;
private final AppBackend backend;
private final EventBus eventBus = new EventBus();
private boolean started = false;
@@ -42,7 +43,7 @@ public class App extends BusNode {
*
* @param backend
*/
public App(Backend backend) {
public App(AppBackend backend) {
if (App.instance != null) {
throw new IllegalStateException("App already initialized");
}
@@ -59,6 +60,7 @@ public class App extends BusNode {
// initialize and use backend
this.backend = backend;
this.eventBus.subscribe(backend);
this.backend.bind(this);
this.backend.initialize();
}
@@ -75,8 +77,10 @@ public class App extends BusNode {
throw new IllegalStateException("App already started, cannot add plugins.");
}
plugin.initialize(this);
// attach to event bus
plugins.add(plugin);
plugin.bind(this);
plugin.initialize();
}
@@ -100,7 +104,7 @@ public class App extends BusNode {
*
* @return the backend
*/
public Backend getBackend()
public AppBackend getBackend()
{
return backend;
}
@@ -1,8 +1,8 @@
package mightypork.gamecore.backend;
package mightypork.gamecore.core;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.resources.audio.AudioModule;
import mightypork.gamecore.audio.AudioModule;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.utils.eventbus.clients.BusNode;
@@ -14,7 +14,24 @@ import mightypork.utils.eventbus.clients.BusNode;
*
* @author MightyPork
*/
public abstract class Backend extends BusNode {
public abstract class AppBackend extends BusNode {
protected App app;
/**
* Assign an app instance.
*
* @param app app
*/
public void bind(App app)
{
if (this.app != null) {
throw new IllegalStateException("App already set.");
}
this.app = app;
}
/**
* Initialize backend modules, add them to event bus.
@@ -1,7 +1,6 @@
package mightypork.gamecore.core.plugins;
package mightypork.gamecore.core;
import mightypork.gamecore.core.App;
import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.clients.BusNode;
@@ -15,14 +14,21 @@ import mightypork.utils.eventbus.clients.BusNode;
*/
public class AppPlugin extends BusNode {
protected App app;
void bind(App app)
{
this.app = app;
}
/**
* Initialize the plugin for the given App.<br>
* The plugin is already attached to the event bus.
*
* @param app
*/
@Stub
public void initialize(App app)
public void initialize()
{
}
}
@@ -1,4 +1,4 @@
package mightypork.gamecore.backend;
package mightypork.gamecore.core;
import mightypork.utils.annotations.Stub;
@@ -1,4 +1,4 @@
package mightypork.gamecore.core.init;
package mightypork.gamecore.core;
import java.util.ArrayList;
@@ -7,7 +7,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Set;
import mightypork.gamecore.core.App;
import mightypork.utils.Reflect;
import mightypork.utils.annotations.Stub;
import mightypork.utils.logging.Log;
@@ -28,13 +28,8 @@ public abstract class InitTask {
* Assign the initialized app instance to a protected "app" field.
*
* @param app app
*/
public void bind(App app)
{
if (this.app != null) {
throw new IllegalStateException("App instance is already set.");
}
*/
void bind(App app) {
this.app = app;
}
@@ -122,7 +117,14 @@ public abstract class InitTask {
if (remaining.size() > 0) {
// build error message for each bad task
int badInitializers = 0;
for (InitTask task : remaining) {
if (Reflect.hasAnnotation(task.getClass(), OptionalInitTask.class)) {
continue;
}
badInitializers++;
String notSatisfied = "";
for (String d : task.getDependencies()) {
@@ -139,7 +141,7 @@ public abstract class InitTask {
Log.w("InitTask \"" + task.getName() + "\" - missing dependencies: " + notSatisfied);
}
throw new RuntimeException("Some InitTask dependencies could not be satisfied.");
if (badInitializers > 0) throw new RuntimeException("Some InitTask dependencies could not be satisfied.");
}
return ordered;
+1 -1
View File
@@ -4,8 +4,8 @@ package mightypork.gamecore.core;
import java.util.Deque;
import java.util.concurrent.ConcurrentLinkedDeque;
import mightypork.gamecore.graphics.Renderable;
import mightypork.gamecore.gui.screens.ScreenRegistry;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.eventbus.events.UpdateEvent;
@@ -0,0 +1,19 @@
package mightypork.gamecore.core;
import java.lang.annotation.*;
/**
* Indicates that an {@link InitTask} can safely be ignored if it's dependencies
* are not satisfied.
*
* @author Ondřej Hruška (MightyPork)
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
@Inherited
public @interface OptionalInitTask {
}
@@ -1,7 +1,7 @@
package mightypork.gamecore.core.config;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.core.InitTask;
import mightypork.utils.annotations.Stub;
import mightypork.utils.exceptions.IllegalValueException;
@@ -1,10 +1,10 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import java.lang.Thread.UncaughtExceptionHandler;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.core.InitTask;
import mightypork.utils.annotations.Stub;
import mightypork.utils.logging.Log;
@@ -1,8 +1,8 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.graphics.GraphicsModule;
/**
@@ -1,9 +1,9 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import java.io.IOException;
import mightypork.gamecore.core.init.InitTask;
import mightypork.gamecore.core.InitTask;
import mightypork.utils.ion.Ion;
import mightypork.utils.ion.IonInput;
import mightypork.utils.ion.IonOutput;
@@ -1,11 +1,11 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import java.io.File;
import java.util.logging.Level;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.init.InitTask;
import mightypork.utils.logging.Log;
import mightypork.utils.logging.writers.LogWriter;
import mightypork.utils.string.StringUtil;
@@ -1,10 +1,11 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import java.io.IOException;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.core.OptionalInitTask;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.init.InitTask;
import mightypork.utils.logging.Log;
@@ -14,6 +15,7 @@ import mightypork.utils.logging.Log;
*
* @author Ondřej Hruška (MightyPork)
*/
@OptionalInitTask
public class InitTaskLogHeader extends InitTask {
@Override
@@ -1,4 +1,4 @@
package mightypork.gamecore.core.init.impl;
package mightypork.gamecore.core.init;
import java.io.File;
@@ -9,8 +9,8 @@ import java.util.Map.Entry;
import javax.swing.JOptionPane;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.init.InitTask;
import mightypork.utils.annotations.Stub;
import mightypork.utils.files.InstanceLock;
import mightypork.utils.logging.Log;
@@ -1,8 +1,8 @@
package mightypork.gamecore.core.plugins.screenshot;
import mightypork.gamecore.core.InitTask;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.init.InitTask;
/**
@@ -2,8 +2,8 @@ package mightypork.gamecore.core.plugins.screenshot;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.AppPlugin;
import mightypork.gamecore.core.events.MainLoopRequest;
import mightypork.gamecore.core.plugins.AppPlugin;
import mightypork.utils.Support;
@@ -6,7 +6,7 @@ import java.io.IOException;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.render.Screenshot;
import mightypork.gamecore.graphics.Screenshot;
import mightypork.utils.Support;
import mightypork.utils.logging.Log;
@@ -1,4 +1,4 @@
package mightypork.gamecore.render;
package mightypork.gamecore.graphics;
import mightypork.utils.eventbus.BusEvent;
@@ -1,9 +1,9 @@
package mightypork.gamecore.render;
package mightypork.gamecore.graphics;
import mightypork.gamecore.backend.BackendModule;
import mightypork.gamecore.resources.textures.DeferredTexture;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.core.BackendModule;
import mightypork.gamecore.graphics.textures.DeferredTexture;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.utils.math.color.Color;
import mightypork.utils.math.color.Grad;
import mightypork.utils.math.constraints.rect.Rect;
@@ -1,4 +1,4 @@
package mightypork.gamecore.render;
package mightypork.gamecore.graphics;
/**
@@ -1,4 +1,4 @@
package mightypork.gamecore.render;
package mightypork.gamecore.graphics;
import java.io.File;
@@ -0,0 +1,98 @@
package mightypork.gamecore.graphics.fonts;
import mightypork.gamecore.graphics.textures.FilterMode;
import mightypork.gamecore.resources.BaseDeferredResource;
/**
* Abstract deferred font stub.
*
* @author Ondřej Hruška (MightyPork)
*/
public abstract class DeferredFont extends BaseDeferredResource implements IFont {
public static enum FontStyle
{
PLAIN(0), BOLD(1), ITALIC(2), BOLD_ITALIC(3);
public int numval;
/**
* Font style
*
* @param style style index as in awt Font. Not using constants to be
* independent on awt.
*/
private FontStyle(int style) {
this.numval = style;
}
}
protected double size = 12;
protected FontStyle style = FontStyle.PLAIN;
protected String chars = Glyphs.basic;
protected FilterMode filter = FilterMode.NEAREST;
protected boolean antialias = false;
protected double discardTop = 0;
protected double discardBottom = 0;
public DeferredFont(String resource) {
super(resource);
}
public void setSize(double size)
{
this.size = size;
}
public void setStyle(FontStyle style)
{
this.style = style;
}
public void setChars(String chars)
{
this.chars = chars;
}
public void setFilter(FilterMode filter)
{
this.filter = filter;
}
public void setAntialias(boolean antialias)
{
this.antialias = antialias;
}
@Override
public void setDiscardRatio(double top, double bottom)
{
discardTop = top;
discardBottom = bottom;
}
@Override
public double getTopDiscardRatio()
{
return discardTop;
}
@Override
public double getBottomDiscardRatio()
{
return discardBottom;
}
}
@@ -1,11 +1,11 @@
package mightypork.gamecore.resources.fonts;
package mightypork.gamecore.graphics.fonts;
import java.util.HashMap;
import mightypork.gamecore.backends.lwjgl.graphics.font.DeferredLwjglFont;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.ResourceLoadRequest;
import mightypork.gamecore.resources.fonts.impl.LazyFont;
import mightypork.gamecore.resources.loading.ResourceLoadRequest;
import mightypork.utils.eventbus.clients.BusNode;
import org.newdawn.slick.opengl.Texture;
@@ -23,12 +23,12 @@ public class FontRegistry extends BusNode {
/**
* Load a {@link LazyFont}
* Load a {@link DeferredLwjglFont}
*
* @param key font key
* @param font font instance
*/
public void addFont(String key, LazyFont font)
public void addFont(String key, DeferredFont font)
{
App.bus().send(new ResourceLoadRequest(font));
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.fonts;
package mightypork.gamecore.graphics.fonts;
import mightypork.gamecore.core.App;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.fonts;
package mightypork.gamecore.graphics.fonts;
/**
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.fonts;
package mightypork.gamecore.graphics.fonts;
import mightypork.utils.math.color.Color;
@@ -1,8 +1,8 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import mightypork.gamecore.resources.BaseDeferredResource;
import mightypork.gamecore.resources.MustLoadInRenderingContext;
import mightypork.gamecore.resources.loading.MustLoadInRenderingContext;
import mightypork.utils.annotations.Alias;
import mightypork.utils.math.constraints.rect.Rect;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
/**
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import mightypork.utils.interfaces.Destroyable;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import mightypork.utils.math.constraints.rect.Rect;
@@ -1,11 +1,11 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import java.util.HashMap;
import java.util.Map;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.ResourceLoadRequest;
import mightypork.gamecore.resources.loading.ResourceLoadRequest;
import mightypork.utils.exceptions.KeyAlreadyExistsException;
import mightypork.utils.math.constraints.rect.Rect;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import mightypork.utils.math.constraints.rect.Rect;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
import java.util.Random;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources.textures;
package mightypork.gamecore.graphics.textures;
/**
@@ -1,10 +1,10 @@
package mightypork.gamecore.gui.components;
import mightypork.gamecore.graphics.Renderable;
import mightypork.gamecore.gui.events.LayoutChangeEvent;
import mightypork.gamecore.gui.events.LayoutChangeListener;
import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.Support;
import mightypork.utils.annotations.Stub;
import mightypork.utils.interfaces.Enableable;
@@ -1,7 +1,7 @@
package mightypork.gamecore.gui.components;
import mightypork.gamecore.render.Renderable;
import mightypork.gamecore.graphics.Renderable;
import mightypork.utils.math.constraints.rect.PluggableRectBound;
import mightypork.utils.math.constraints.rect.Rect;
import mightypork.utils.math.constraints.rect.RectBound;
@@ -1,10 +1,10 @@
package mightypork.gamecore.gui.components.input;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.components.DynamicWidthComponent;
import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.utils.math.AlignX;
import mightypork.utils.math.color.Color;
import mightypork.utils.math.color.pal.RGB;
@@ -2,9 +2,9 @@ package mightypork.gamecore.gui.components.painters;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.components.BaseComponent;
import mightypork.gamecore.gui.components.DynamicWidthComponent;
import mightypork.gamecore.resources.textures.TxQuad;
/**
@@ -2,10 +2,10 @@ package mightypork.gamecore.gui.components.painters;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.fonts.FontRenderer;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.components.BaseComponent;
import mightypork.gamecore.gui.components.DynamicWidthComponent;
import mightypork.gamecore.resources.fonts.FontRenderer;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.utils.math.AlignX;
import mightypork.utils.math.color.Color;
import mightypork.utils.math.color.pal.RGB;
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import java.util.Collection;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.Renderable;
import mightypork.gamecore.gui.components.layout.ConstraintLayout;
import mightypork.gamecore.gui.events.LayoutChangeListener;
import mightypork.gamecore.input.Edge;
@@ -12,7 +13,6 @@ import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.input.KeyBinder;
import mightypork.gamecore.input.KeyBindingPool;
import mightypork.gamecore.input.KeyStroke;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.interfaces.Enableable;
@@ -2,13 +2,13 @@ package mightypork.gamecore.gui.screens;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.Renderable;
import mightypork.gamecore.gui.events.LayoutChangeEvent;
import mightypork.gamecore.gui.events.LayoutChangeListener;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.input.KeyBinder;
import mightypork.gamecore.input.KeyBindingPool;
import mightypork.gamecore.input.KeyStroke;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.annotations.Stub;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.math.constraints.rect.Rect;
@@ -7,11 +7,11 @@ import java.util.Map;
import java.util.TreeSet;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.Renderable;
import mightypork.gamecore.gui.events.LayoutChangeEvent;
import mightypork.gamecore.gui.events.ScreenRequestListener;
import mightypork.gamecore.gui.events.ViewportChangeEvent;
import mightypork.gamecore.gui.events.ViewportChangeListener;
import mightypork.gamecore.render.Renderable;
import mightypork.utils.eventbus.clients.BusNode;
import mightypork.utils.logging.Log;
+9 -9
View File
@@ -1,15 +1,15 @@
package mightypork.gamecore.resources;
import mightypork.gamecore.resources.audio.SoundRegistry;
import mightypork.gamecore.resources.audio.players.EffectPlayer;
import mightypork.gamecore.resources.audio.players.LoopPlayer;
import mightypork.gamecore.resources.fonts.FontRegistry;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.gamecore.resources.textures.ITexture;
import mightypork.gamecore.resources.textures.TextureRegistry;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.audio.SoundRegistry;
import mightypork.gamecore.audio.players.EffectPlayer;
import mightypork.gamecore.audio.players.LoopPlayer;
import mightypork.gamecore.graphics.fonts.FontRegistry;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.graphics.textures.ITexture;
import mightypork.gamecore.graphics.textures.TextureRegistry;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxSheet;
/**
@@ -1,9 +1,9 @@
package mightypork.gamecore.resources;
import mightypork.gamecore.resources.audio.SoundRegistry;
import mightypork.gamecore.resources.fonts.FontRegistry;
import mightypork.gamecore.resources.textures.TextureRegistry;
import mightypork.gamecore.audio.SoundRegistry;
import mightypork.gamecore.graphics.fonts.FontRegistry;
import mightypork.gamecore.graphics.textures.TextureRegistry;
/**
@@ -1,40 +0,0 @@
package mightypork.gamecore.resources.fonts.impl;
import java.awt.Font;
import java.io.IOException;
import mightypork.gamecore.resources.textures.FilterMode;
import mightypork.utils.annotations.Alias;
/**
* Font obtained from the OS
*
* @author Ondřej Hruška (MightyPork)
*/
@Alias(name = "FontNative")
public class LazyFontNative extends LazyFont {
/**
* A font from OS, found by name
*
* @param fontName font family name
* @param extraChars extra chars (0-255 loaded by default)
* @param size size (pt)
* @param style font style
* @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) {
super(fontName, extraChars, size, style, antialias, filter);
}
@Override
protected Font getAwtFont(String resource, float size, int style) throws IOException
{
return new Font(resource, style, (int) size);
}
}
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources;
package mightypork.gamecore.resources.loading;
import java.util.concurrent.ExecutorService;
@@ -7,6 +7,7 @@ import java.util.concurrent.LinkedBlockingQueue;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.events.MainLoopRequest;
import mightypork.gamecore.resources.DeferredResource;
import mightypork.utils.Reflect;
import mightypork.utils.Support;
import mightypork.utils.interfaces.Destroyable;
@@ -1,4 +1,4 @@
package mightypork.gamecore.resources;
package mightypork.gamecore.resources.loading;
import java.lang.annotation.*;
@@ -1,6 +1,7 @@
package mightypork.gamecore.resources;
package mightypork.gamecore.resources.loading;
import mightypork.gamecore.resources.DeferredResource;
import mightypork.utils.eventbus.BusEvent;
import mightypork.utils.eventbus.events.flags.SingleReceiverEvent;
@@ -1,4 +1,6 @@
package mightypork.gamecore.resources;
package mightypork.gamecore.resources.loading;
import mightypork.gamecore.resources.DeferredResource;
/**
+3 -3
View File
@@ -3,19 +3,19 @@ package mightypork.rogue;
import junk.AppInitOptions;
import junk.BaseApp;
import mightypork.gamecore.backend.lwjgl.LwjglBackend;
import mightypork.gamecore.backends.lwjgl.LwjglBackend;
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.plugins.screenshot.ScreenshotRequest;
import mightypork.gamecore.graphics.FullscreenToggleRequest;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.gamecore.gui.events.ViewportChangeEvent;
import mightypork.gamecore.gui.events.ViewportChangeListener;
import mightypork.gamecore.gui.screens.ScreenRegistry;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.input.InputSystem;
import mightypork.gamecore.render.FullscreenToggleRequest;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.resources.Res;
import mightypork.rogue.RogueStateManager.RogueState;
import mightypork.rogue.events.RogueStateRequest;
+14 -13
View File
@@ -1,16 +1,17 @@
package mightypork.rogue;
import mightypork.gamecore.audio.SoundRegistry;
import mightypork.gamecore.backends.lwjgl.graphics.font.DeferredLwjglFont;
import mightypork.gamecore.graphics.fonts.DeferredFont;
import mightypork.gamecore.graphics.fonts.FontRegistry;
import mightypork.gamecore.graphics.fonts.Glyphs;
import mightypork.gamecore.graphics.textures.FilterMode;
import mightypork.gamecore.graphics.textures.ITexture;
import mightypork.gamecore.graphics.textures.QuadGrid;
import mightypork.gamecore.graphics.textures.TextureRegistry;
import mightypork.gamecore.graphics.textures.WrapMode;
import mightypork.gamecore.resources.ResourceSetup;
import mightypork.gamecore.resources.audio.SoundRegistry;
import mightypork.gamecore.resources.fonts.FontRegistry;
import mightypork.gamecore.resources.fonts.Glyphs;
import mightypork.gamecore.resources.fonts.impl.LazyFont;
import mightypork.gamecore.resources.textures.FilterMode;
import mightypork.gamecore.resources.textures.ITexture;
import mightypork.gamecore.resources.textures.QuadGrid;
import mightypork.gamecore.resources.textures.TextureRegistry;
import mightypork.gamecore.resources.textures.WrapMode;
import mightypork.utils.math.constraints.rect.Rect;
@@ -19,15 +20,15 @@ public class RogueResources implements ResourceSetup {
@Override
public void addFonts(FontRegistry fonts)
{
LazyFont font;
DeferredFont font;
//fonts.loadFont("polygon_pixel", new DeferredFont("/res/font/PolygonPixel5x7Standard.ttf", Glyphs.basic, 16));
fonts.addFont("press_start", font = new LazyFont("/res/font/PressStart2P.ttf", Glyphs.basic, 16));
fonts.addFont("press_start", font = new DeferredLwjglFont("/res/font/PressStart2P.ttf", Glyphs.basic, 16));
fonts.addFont("battlenet", font = new LazyFont("/res/font/battlenet.ttf", Glyphs.basic, 16));
fonts.addFont("battlenet", font = new DeferredLwjglFont("/res/font/battlenet.ttf", Glyphs.basic, 16));
font.setDiscardRatio(3 / 16D, 2 / 16D);
fonts.addFont("tinyutf", font = new LazyFont("/res/font/TinyUnicode2.ttf", Glyphs.basic, 16));
fonts.addFont("tinyutf", font = new DeferredLwjglFont("/res/font/TinyUnicode2.ttf", Glyphs.basic, 16));
font.setDiscardRatio(5 / 16D, 3 / 16D);
// aliases
+1 -1
View File
@@ -3,12 +3,12 @@ package mightypork.rogue.screens;
import mightypork.gamecore.core.App;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.screens.Overlay;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.utils.math.AlignX;
import mightypork.utils.math.color.pal.RGB;
import mightypork.utils.math.constraints.num.Num;
@@ -2,8 +2,8 @@ package mightypork.rogue.screens.game;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.components.BaseComponent;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.utils.math.AlignX;
import mightypork.utils.math.constraints.num.Num;
import mightypork.utils.math.constraints.num.var.NumVar;
@@ -2,10 +2,10 @@ package mightypork.rogue.screens.game;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.components.LayoutComponent;
import mightypork.gamecore.gui.components.layout.FlowColumnLayout;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.utils.math.AlignX;
import mightypork.utils.math.constraints.rect.Rect;
import mightypork.utils.math.constraints.rect.RectBound;
@@ -2,11 +2,11 @@ package mightypork.rogue.screens.game;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.ClickableComponent;
import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.rogue.world.PlayerFacade;
import mightypork.rogue.world.WorldProvider;
import mightypork.rogue.world.item.Item;
@@ -4,6 +4,7 @@ package mightypork.rogue.screens.game;
import java.io.IOException;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.TextButton;
import mightypork.gamecore.gui.components.layout.RowLayout;
@@ -13,7 +14,6 @@ import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.screens.impl.FadingLayer;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.rogue.screens.game.ScreenGame.GScrState;
import mightypork.rogue.world.WorldProvider;
import mightypork.utils.logging.Log;
@@ -4,6 +4,7 @@ package mightypork.rogue.screens.game;
import java.io.IOException;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.TextButton;
import mightypork.gamecore.gui.components.layout.RowLayout;
@@ -15,7 +16,6 @@ import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.screens.impl.FadingLayer;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.rogue.RogueStateManager.RogueState;
import mightypork.rogue.events.RogueStateRequest;
import mightypork.rogue.screens.game.ScreenGame.GScrState;
@@ -4,6 +4,7 @@ package mightypork.rogue.screens.game;
import java.io.File;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.TextButton;
import mightypork.gamecore.gui.components.layout.RowLayout;
@@ -14,7 +15,6 @@ import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.screens.impl.FadingLayer;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.rogue.RogueStateManager.RogueState;
import mightypork.rogue.events.RogueStateRequest;
import mightypork.rogue.world.WorldProvider;
@@ -2,9 +2,9 @@ package mightypork.rogue.screens.game;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.gui.components.input.ClickableComponent;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
/**
@@ -3,6 +3,7 @@ package mightypork.rogue.screens.menu;
import mightypork.gamecore.core.config.Config;
import mightypork.gamecore.core.events.UserQuitRequest;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.TextButton;
import mightypork.gamecore.gui.components.layout.RowLayout;
@@ -13,7 +14,6 @@ import mightypork.gamecore.gui.screens.Screen;
import mightypork.gamecore.gui.screens.ScreenLayer;
import mightypork.gamecore.input.Edge;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.rogue.RogueStateManager.RogueState;
import mightypork.rogue.events.RogueStateRequest;
import mightypork.rogue.screens.RogueScreen;
@@ -3,6 +3,7 @@ package mightypork.rogue.screens.select_world;
import java.io.File;
import mightypork.gamecore.graphics.fonts.IFont;
import mightypork.gamecore.gui.Action;
import mightypork.gamecore.gui.components.input.TextButton;
import mightypork.gamecore.gui.components.layout.ConstraintLayout;
@@ -10,7 +11,6 @@ import mightypork.gamecore.gui.components.layout.GridLayout;
import mightypork.gamecore.gui.components.painters.QuadPainter;
import mightypork.gamecore.gui.events.ScreenRequest;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.IFont;
import mightypork.rogue.events.LoadingOverlayRequest;
import mightypork.rogue.world.World;
import mightypork.rogue.world.WorldProvider;
@@ -2,7 +2,7 @@ package mightypork.rogue.world;
import mightypork.gamecore.core.App;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.rogue.world.entity.Entity;
import mightypork.rogue.world.level.Level;
import mightypork.rogue.world.level.render.TileRenderContext;
@@ -2,9 +2,9 @@ package mightypork.rogue.world.entity.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.rogue.world.entity.Entity;
import mightypork.rogue.world.entity.EntityRenderer;
import mightypork.rogue.world.level.render.MapRenderContext;
@@ -4,9 +4,9 @@ package mightypork.rogue.world.gui;
import java.util.Collection;
import java.util.ConcurrentModificationException;
import mightypork.gamecore.graphics.fonts.FontRenderer;
import mightypork.gamecore.gui.components.BaseComponent;
import mightypork.gamecore.resources.Res;
import mightypork.gamecore.resources.fonts.FontRenderer;
import mightypork.rogue.world.WorldConsole;
import mightypork.rogue.world.WorldProvider;
import mightypork.utils.logging.Log;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.item.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.rogue.world.item.Item;
import mightypork.rogue.world.item.ItemRenderer;
import mightypork.utils.math.constraints.rect.Rect;
@@ -2,9 +2,9 @@ package mightypork.rogue.world.tile;
import mightypork.gamecore.core.App;
import mightypork.gamecore.render.GraphicsModule;
import mightypork.gamecore.graphics.GraphicsModule;
import mightypork.gamecore.graphics.textures.TxQuad;
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.Stub;
@@ -3,7 +3,7 @@ package mightypork.rogue.world.tile.impl;
import java.io.IOException;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.tile.TileModel;
import mightypork.rogue.world.tile.TileRenderer;
import mightypork.rogue.world.tile.TileType;
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.impl;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.tile.TileModel;
import mightypork.rogue.world.tile.TileRenderer;
import mightypork.rogue.world.tile.TileType;
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.impl;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.tile.TileModel;
import mightypork.rogue.world.tile.TileRenderer;
import mightypork.rogue.world.tile.TileType;
@@ -3,7 +3,7 @@ package mightypork.rogue.world.tile.impl;
import java.io.IOException;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.tile.TileColors;
import mightypork.rogue.world.tile.TileModel;
import mightypork.utils.ion.IonInput;
@@ -1,7 +1,7 @@
package mightypork.rogue.world.tile.impl;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.tile.TileModel;
import mightypork.rogue.world.tile.TileType;
import mightypork.rogue.world.tile.render.BasicTileRenderer;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.tile.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
import mightypork.rogue.world.tile.TileRenderer;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.tile.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.TileRenderer;
import mightypork.rogue.world.tile.impl.TileBaseChest;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.tile.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxSheet;
import mightypork.gamecore.graphics.textures.TxSheet;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.TileRenderer;
import mightypork.rogue.world.tile.impl.TileBaseDoor;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.tile.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
import mightypork.rogue.world.tile.TileRenderer;
@@ -2,7 +2,7 @@ package mightypork.rogue.world.tile.render;
import mightypork.gamecore.core.App;
import mightypork.gamecore.resources.textures.TxQuad;
import mightypork.gamecore.graphics.textures.TxQuad;
import mightypork.rogue.world.level.render.TileRenderContext;
import mightypork.rogue.world.tile.Tile;
import mightypork.rogue.world.tile.TileRenderer;