diff --git a/src/mightypork/gamecore/backends/lwjgl/LwjglInputModule.java b/src/mightypork/gamecore/backends/lwjgl/LwjglInputModule.java index fd8af3f..698a676 100644 --- a/src/mightypork/gamecore/backends/lwjgl/LwjglInputModule.java +++ b/src/mightypork/gamecore/backends/lwjgl/LwjglInputModule.java @@ -2,7 +2,6 @@ package mightypork.gamecore.backends.lwjgl; import mightypork.gamecore.core.App; -import mightypork.gamecore.core.events.UserQuitRequest; import mightypork.gamecore.input.InputModule; import mightypork.gamecore.input.Key; import mightypork.gamecore.input.Keys; @@ -20,12 +19,11 @@ import org.lwjgl.opengl.Display; /** - * Input system + * Lwjgl Input Module. * * @author Ondřej Hruška (MightyPork) */ public class LwjglInputModule extends InputModule implements Updateable { - /** Current mouse position */ private static final Vect mousePos = new Vect() { @@ -61,11 +59,12 @@ public class LwjglInputModule extends InputModule implements Updateable { } } + @Override protected void initKeyCodes() { Keys.NONE.setCode(Keyboard.KEY_NONE); - + Keys.NUM_1.setCode(Keyboard.KEY_1); Keys.NUM_2.setCode(Keyboard.KEY_2); Keys.NUM_3.setCode(Keyboard.KEY_3); @@ -76,7 +75,7 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.NUM_8.setCode(Keyboard.KEY_8); Keys.NUM_9.setCode(Keyboard.KEY_9); Keys.NUM_0.setCode(Keyboard.KEY_0); - + Keys.Q.setCode(Keyboard.KEY_Q); Keys.W.setCode(Keyboard.KEY_W); Keys.E.setCode(Keyboard.KEY_E); @@ -103,7 +102,7 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.B.setCode(Keyboard.KEY_B); Keys.N.setCode(Keyboard.KEY_N); Keys.M.setCode(Keyboard.KEY_M); - + Keys.MINUS.setCode(Keyboard.KEY_MINUS); Keys.EQUALS.setCode(Keyboard.KEY_EQUALS); Keys.SLASH.setCode(Keyboard.KEY_SLASH); @@ -115,7 +114,7 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.GRAVE.setCode(Keyboard.KEY_GRAVE); Keys.COMMA.setCode(Keyboard.KEY_COMMA); Keys.PERIOD.setCode(Keyboard.KEY_PERIOD); - + Keys.SPACE.setCode(Keyboard.KEY_SPACE); Keys.BACKSPACE.setCode(Keyboard.KEY_BACK); Keys.TAB.setCode(Keyboard.KEY_TAB); @@ -125,7 +124,7 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.POWER.setCode(Keyboard.KEY_POWER); Keys.SLEEP.setCode(Keyboard.KEY_SLEEP); //Keys.MENU.setCode(Keyboard.KEY_MENU); // not defined - + Keys.F1.setCode(Keyboard.KEY_F1); Keys.F2.setCode(Keyboard.KEY_F2); Keys.F3.setCode(Keyboard.KEY_F3); @@ -141,11 +140,11 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.F13.setCode(Keyboard.KEY_F13); Keys.F14.setCode(Keyboard.KEY_F14); Keys.F15.setCode(Keyboard.KEY_F15); - + Keys.CAPS_LOCK.setCode(Keyboard.KEY_CAPITAL); - Keys.SCROLL_LOCK.setCode(Keyboard.KEY_SCROLL); + Keys.SCROLL_LOCK.setCode(Keyboard.KEY_SCROLL); Keys.NUM_LOCK.setCode(Keyboard.KEY_NUMLOCK); - + Keys.NUMPAD_MINUS.setCode(Keyboard.KEY_SUBTRACT); Keys.NUMPAD_PLUSS.setCode(Keyboard.KEY_ADD); Keys.NUMPAD_0.setCode(Keyboard.KEY_NUMPAD0); @@ -162,7 +161,7 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.NUMPAD_ENTER.setCode(Keyboard.KEY_NUMPADENTER); Keys.NUMPAD_DIVIDE.setCode(Keyboard.KEY_DIVIDE); Keys.NUMPAD_MULTIPLY.setCode(Keyboard.KEY_MULTIPLY); - + Keys.CONTROL_LEFT.setCode(Keyboard.KEY_LCONTROL); Keys.CONTROL_RIGHT.setCode(Keyboard.KEY_RCONTROL); Keys.ALT_LEFT.setCode(Keyboard.KEY_LMENU); @@ -171,18 +170,18 @@ public class LwjglInputModule extends InputModule implements Updateable { Keys.SHIFT_RIGHT.setCode(Keyboard.KEY_RSHIFT); Keys.META_LEFT.setCode(Keyboard.KEY_LMETA); Keys.META_RIGHT.setCode(Keyboard.KEY_RMETA); - + Keys.UP.setCode(Keyboard.KEY_UP); Keys.DOWN.setCode(Keyboard.KEY_DOWN); Keys.LEFT.setCode(Keyboard.KEY_LEFT); Keys.RIGHT.setCode(Keyboard.KEY_RIGHT); - + Keys.HOME.setCode(Keyboard.KEY_HOME); Keys.END.setCode(Keyboard.KEY_END); - + Keys.PAGE_UP.setCode(Keyboard.KEY_PRIOR); Keys.PAGE_DOWN.setCode(Keyboard.KEY_NEXT); - + Keys.RETURN.setCode(Keyboard.KEY_RETURN); Keys.PAUSE.setCode(Keyboard.KEY_PAUSE); Keys.INSERT.setCode(Keyboard.KEY_INSERT); @@ -230,7 +229,7 @@ public class LwjglInputModule extends InputModule implements Updateable { } if (Display.isCloseRequested()) { - App.bus().send(new UserQuitRequest()); + App.shutdown(); } } diff --git a/src/mightypork/gamecore/backends/lwjgl/audio/SlickAudioModule.java b/src/mightypork/gamecore/backends/lwjgl/audio/SlickAudioModule.java index 729b556..87384ca 100644 --- a/src/mightypork/gamecore/backends/lwjgl/audio/SlickAudioModule.java +++ b/src/mightypork/gamecore/backends/lwjgl/audio/SlickAudioModule.java @@ -6,7 +6,6 @@ import java.nio.FloatBuffer; 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; diff --git a/src/mightypork/gamecore/backends/lwjgl/graphics/LwjglGraphicsModule.java b/src/mightypork/gamecore/backends/lwjgl/graphics/LwjglGraphicsModule.java index 1ce147f..59ff484 100644 --- a/src/mightypork/gamecore/backends/lwjgl/graphics/LwjglGraphicsModule.java +++ b/src/mightypork/gamecore/backends/lwjgl/graphics/LwjglGraphicsModule.java @@ -512,13 +512,6 @@ public class LwjglGraphicsModule extends GraphicsModule { } - @Override - public boolean isCloseRequested() - { - return Display.isCloseRequested(); - } - - @Override public void beginFrame() { diff --git a/src/mightypork/gamecore/core/App.java b/src/mightypork/gamecore/core/App.java index 62834e4..fbb9817 100644 --- a/src/mightypork/gamecore/core/App.java +++ b/src/mightypork/gamecore/core/App.java @@ -6,6 +6,7 @@ import java.util.List; import mightypork.gamecore.audio.AudioModule; import mightypork.gamecore.core.config.Config; +import mightypork.gamecore.core.events.ShutdownEvent; import mightypork.gamecore.graphics.GraphicsModule; import mightypork.gamecore.input.InputModule; import mightypork.utils.annotations.Stub; @@ -165,24 +166,33 @@ public class App extends BusNode { */ public static void shutdown() { - if (instance == null) throw new IllegalStateException("App is not running."); - - Log.i("Shutting down subsystems..."); - - // TODO send some shutdown notify event - - try { - final EventBus bus = bus(); - if (bus != null) { - bus.send(new DestroyEvent()); - bus.destroy(); - } - } catch (final Throwable e) { - Log.e(e); + if (instance != null) { + Log.i("Dispatching Shutdown event..."); + + bus().send(new ShutdownEvent(new Runnable() { + + @Override + public void run() + { + try { + final EventBus bus = bus(); + if (bus != null) { + bus.send(new DestroyEvent()); + bus.destroy(); + } + } catch (final Throwable e) { + Log.e(e); + } + + Log.i("Shutdown completed."); + System.exit(0); + } + })); + + } else { + Log.w("App is not running."); + System.exit(0); } - - Log.i("App terminated."); - System.exit(0); } diff --git a/src/mightypork/gamecore/core/config/Config.java b/src/mightypork/gamecore/core/config/Config.java index 09dd6c4..d319847 100644 --- a/src/mightypork/gamecore/core/config/Config.java +++ b/src/mightypork/gamecore/core/config/Config.java @@ -96,7 +96,7 @@ public class Config { */ public void addKeyStroke(String key, String defval, String comment) { - final KeyStrokeProperty kprop = new KeyStrokeProperty(prefixKeyStroke(key), KeyStroke.createFromDataString(defval), comment); + final KeyStrokeProperty kprop = new KeyStrokeProperty(prefixKeyStroke(key), KeyStroke.createFromString(defval), comment); strokes.put(prefixKeyStroke(key), kprop); propertyManager.addProperty(kprop); } diff --git a/src/mightypork/gamecore/core/config/KeyStrokeProperty.java b/src/mightypork/gamecore/core/config/KeyStrokeProperty.java index e9a49fc..03e98df 100644 --- a/src/mightypork/gamecore/core/config/KeyStrokeProperty.java +++ b/src/mightypork/gamecore/core/config/KeyStrokeProperty.java @@ -31,7 +31,7 @@ public class KeyStrokeProperty extends Property { final Key backup_key = value.getKey(); final int backup_mod = value.getMod(); - value.fromDataString(string); + value.loadFromString(string); if (value.getKey() == Keys.NONE) { value.setTo(backup_key, backup_mod); } @@ -42,7 +42,7 @@ public class KeyStrokeProperty extends Property { @Override public String toString() { - return value.toDataString(); + return value.saveToString(); } diff --git a/src/mightypork/gamecore/core/events/ShudownRequest.java b/src/mightypork/gamecore/core/events/ShudownRequest.java deleted file mode 100644 index 14df451..0000000 --- a/src/mightypork/gamecore/core/events/ShudownRequest.java +++ /dev/null @@ -1,33 +0,0 @@ -package mightypork.gamecore.core.events; - - -import mightypork.gamecore.core.App; -import mightypork.gamecore.core.MainLoop; -import mightypork.utils.eventbus.BusEvent; -import mightypork.utils.eventbus.events.flags.NonConsumableEvent; -import mightypork.utils.eventbus.events.flags.SingleReceiverEvent; - - -/** - * Shutdown request, non-interactive. Shutdown needs to execute on GL thread for - * display to deinit properly. - * - * @author Ondřej Hruška (MightyPork) - */ -@SingleReceiverEvent -@NonConsumableEvent -public class ShudownRequest extends BusEvent { - - @Override - public void handleBy(final MainLoop handler) - { - handler.queueTask(new Runnable() { - - @Override - public void run() - { - App.shutdown(); - } - }, true); - } -} diff --git a/src/mightypork/gamecore/core/events/ShutdownEvent.java b/src/mightypork/gamecore/core/events/ShutdownEvent.java new file mode 100644 index 0000000..8defcce --- /dev/null +++ b/src/mightypork/gamecore/core/events/ShutdownEvent.java @@ -0,0 +1,47 @@ +package mightypork.gamecore.core.events; + + +import mightypork.utils.eventbus.BusEvent; +import mightypork.utils.eventbus.EventBus; +import mightypork.utils.logging.Log; + + +/** + * Shutdown event.
+ * This event is dispatched when the App.shutdown() method is + * called. If no client consumes it, the shutdown will immediately follow.
+ * This is a way to allow clients to abort the shutdown (ie. ask user to save + * game). After the game is saved, the App.shutdown() method can be + * called again. + * + * @author Ondřej Hruška (MightyPork) + */ +public class ShutdownEvent extends BusEvent { + + private Runnable shutdownTask; + + + public ShutdownEvent(Runnable doShutdown) { + this.shutdownTask = doShutdown; + } + + + @Override + protected void handleBy(ShutdownListener handler) + { + handler.onShutdown(this); + } + + + @Override + public void onDispatchComplete(EventBus bus) + { + if (!isConsumed()) { + Log.i("Shutting down..."); + shutdownTask.run(); + } else { + Log.i("Shutdown aborted."); + } + } + +} diff --git a/src/mightypork/gamecore/core/events/UserQuitRequestListener.java b/src/mightypork/gamecore/core/events/ShutdownListener.java similarity index 78% rename from src/mightypork/gamecore/core/events/UserQuitRequestListener.java rename to src/mightypork/gamecore/core/events/ShutdownListener.java index 4456a16..00ebc10 100644 --- a/src/mightypork/gamecore/core/events/UserQuitRequestListener.java +++ b/src/mightypork/gamecore/core/events/ShutdownListener.java @@ -6,7 +6,7 @@ package mightypork.gamecore.core.events; * * @author Ondřej Hruška (MightyPork) */ -public interface UserQuitRequestListener { +public interface ShutdownListener { /** * Intercept quit request.
@@ -14,5 +14,5 @@ public interface UserQuitRequestListener { * * @param event quit request event. */ - void onQuitRequest(UserQuitRequest event); + void onShutdown(ShutdownEvent event); } diff --git a/src/mightypork/gamecore/core/events/UserQuitRequest.java b/src/mightypork/gamecore/core/events/UserQuitRequest.java deleted file mode 100644 index b762c52..0000000 --- a/src/mightypork/gamecore/core/events/UserQuitRequest.java +++ /dev/null @@ -1,32 +0,0 @@ -package mightypork.gamecore.core.events; - - -import mightypork.utils.eventbus.BusEvent; -import mightypork.utils.eventbus.EventBus; - - -/** - * User quit request. This event is triggered when user clicks the "close" - * titlebar button, and if no client consumes it, the application will be shut - * down. - * - * @author Ondřej Hruška (MightyPork) - */ -public class UserQuitRequest extends BusEvent { - - @Override - protected void handleBy(UserQuitRequestListener handler) - { - handler.onQuitRequest(this); - } - - - @Override - public void onDispatchComplete(EventBus bus) - { - if (!isConsumed()) { - bus.send(new ShudownRequest()); - } - } - -} diff --git a/src/mightypork/gamecore/graphics/GraphicsModule.java b/src/mightypork/gamecore/graphics/GraphicsModule.java index 6e09e4d..f895888 100644 --- a/src/mightypork/gamecore/graphics/GraphicsModule.java +++ b/src/mightypork/gamecore/graphics/GraphicsModule.java @@ -316,14 +316,6 @@ public abstract class GraphicsModule extends BackendModule { public abstract Screenshot takeScreenshot(); - /** - * FIXME This should probably be moved to input module - * - * @return true if close was requested recently (i.e. click on cross) - */ - public abstract boolean isCloseRequested(); - - /** * Start a render frame - clear buffers, prepare rendering context etc. */ diff --git a/src/mightypork/gamecore/gui/components/BaseComponent.java b/src/mightypork/gamecore/gui/components/BaseComponent.java index 8dd1d1d..be01481 100644 --- a/src/mightypork/gamecore/gui/components/BaseComponent.java +++ b/src/mightypork/gamecore/gui/components/BaseComponent.java @@ -1,7 +1,6 @@ package mightypork.gamecore.gui.components; -import mightypork.gamecore.backends.lwjgl.LwjglInputModule; import mightypork.gamecore.core.App; import mightypork.gamecore.graphics.Renderable; import mightypork.gamecore.gui.events.LayoutChangeEvent; diff --git a/src/mightypork/gamecore/gui/components/input/TextButton.java b/src/mightypork/gamecore/gui/components/input/TextButton.java index 9a2ca7c..725c5bf 100644 --- a/src/mightypork/gamecore/gui/components/input/TextButton.java +++ b/src/mightypork/gamecore/gui/components/input/TextButton.java @@ -1,7 +1,6 @@ package mightypork.gamecore.gui.components.input; -import mightypork.gamecore.backends.lwjgl.LwjglInputModule; import mightypork.gamecore.core.App; import mightypork.gamecore.graphics.fonts.IFont; import mightypork.gamecore.gui.components.DynamicWidthComponent; diff --git a/src/mightypork/gamecore/gui/screens/Overlay.java b/src/mightypork/gamecore/gui/screens/Overlay.java index a9f18d5..c997972 100644 --- a/src/mightypork/gamecore/gui/screens/Overlay.java +++ b/src/mightypork/gamecore/gui/screens/Overlay.java @@ -4,15 +4,14 @@ package mightypork.gamecore.gui.screens; import java.util.ArrayList; import java.util.Collection; -import mightypork.gamecore.backends.lwjgl.LwjglInputModule; 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.Trigger; import mightypork.gamecore.input.KeyBinder; import mightypork.gamecore.input.KeyBindingPool; import mightypork.gamecore.input.KeyStroke; +import mightypork.gamecore.input.Trigger; import mightypork.utils.annotations.Stub; import mightypork.utils.eventbus.clients.BusNode; import mightypork.utils.interfaces.Enableable; diff --git a/src/mightypork/gamecore/gui/screens/Screen.java b/src/mightypork/gamecore/gui/screens/Screen.java index a75a4ef..29d659a 100644 --- a/src/mightypork/gamecore/gui/screens/Screen.java +++ b/src/mightypork/gamecore/gui/screens/Screen.java @@ -5,10 +5,10 @@ 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.Trigger; import mightypork.gamecore.input.KeyBinder; import mightypork.gamecore.input.KeyBindingPool; import mightypork.gamecore.input.KeyStroke; +import mightypork.gamecore.input.Trigger; import mightypork.utils.annotations.Stub; import mightypork.utils.eventbus.clients.BusNode; import mightypork.utils.math.constraints.rect.Rect; diff --git a/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java b/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java index 56312e4..b89179e 100644 --- a/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java +++ b/src/mightypork/gamecore/gui/screens/impl/CrossfadeOverlay.java @@ -2,7 +2,6 @@ package mightypork.gamecore.gui.screens.impl; import mightypork.gamecore.core.App; -import mightypork.gamecore.core.events.ShudownRequest; import mightypork.gamecore.gui.components.painters.QuadPainter; import mightypork.gamecore.gui.events.ScreenRequest; import mightypork.gamecore.gui.screens.Overlay; @@ -31,7 +30,7 @@ public class CrossfadeOverlay extends Overlay { public void run() { if (requestedScreenName == null) { - App.bus().send(new ShudownRequest()); + App.shutdown(); } else { App.bus().send(new ScreenRequest(requestedScreenName)); } diff --git a/src/mightypork/gamecore/input/InputModule.java b/src/mightypork/gamecore/input/InputModule.java index 43c7520..ce83ec9 100644 --- a/src/mightypork/gamecore/input/InputModule.java +++ b/src/mightypork/gamecore/input/InputModule.java @@ -6,7 +6,11 @@ import mightypork.utils.math.constraints.vect.Vect; /** - * Abstract input module + * Abstract input module.
+ * An input module takes care of dispatching mouse and keyboard events, provides + * access to mouse position, key states etc.
+ * The input module also takes care of calling App.shutdown() when the user + * requests exit (eg. clicks the titlebar close button) * * @author Ondřej Hruška (MightyPork) */ diff --git a/src/mightypork/gamecore/input/KeyStroke.java b/src/mightypork/gamecore/input/KeyStroke.java index a53b944..0f0da13 100644 --- a/src/mightypork/gamecore/input/KeyStroke.java +++ b/src/mightypork/gamecore/input/KeyStroke.java @@ -5,7 +5,7 @@ import mightypork.utils.string.StringUtil; /** - * Key stroke description + * Key stroke * * @author Ondřej Hruška (MightyPork) */ @@ -62,21 +62,21 @@ public class KeyStroke { } - public String toDataString() + public String saveToString() { return Keys.modToString(mod) + "+" + key.getName(); } - public static KeyStroke createFromDataString(String dataString) + public static KeyStroke createFromString(String dataString) { final KeyStroke ks = new KeyStroke(Keys.NONE, Keys.MOD_NONE); - ks.fromDataString(dataString); + ks.loadFromString(dataString); return ks; } - public void fromDataString(String dataString) + public void loadFromString(String dataString) { final String dataString1 = dataString.toUpperCase().replace('-', '+').replaceAll("[^A-Z0-9_+]", ""); @@ -108,7 +108,7 @@ public class KeyStroke { @Override public String toString() { - return toDataString(); + return saveToString(); } diff --git a/src/mightypork/rogue/RogueApp.java b/src/mightypork/rogue/RogueApp.java index ab06199..aeacf45 100644 --- a/src/mightypork/rogue/RogueApp.java +++ b/src/mightypork/rogue/RogueApp.java @@ -7,8 +7,7 @@ import mightypork.gamecore.backends.lwjgl.LwjglBackend; import mightypork.gamecore.backends.lwjgl.LwjglInputModule; 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.events.ShutdownEvent; import mightypork.gamecore.core.plugins.screenshot.ScreenshotRequest; import mightypork.gamecore.graphics.FullscreenToggleRequest; import mightypork.gamecore.graphics.GraphicsModule; @@ -110,8 +109,8 @@ public final class RogueApp extends BaseApp implements ViewportChangeListener, S bindEventToKey(new FullscreenToggleRequest(), "global.fullscreen"); bindEventToKey(new ScreenshotRequest(), "global.screenshot"); - bindEventToKey(new UserQuitRequest(), "global.quit"); - bindEventToKey(new ShudownRequest(), "global.quit_force"); + bindEventToKey(new ShutdownEvent(), "global.quit"); + bindEventToKey(new ShutdownEvent(), "global.quit_force"); } diff --git a/src/mightypork/rogue/screens/RogueScreen.java b/src/mightypork/rogue/screens/RogueScreen.java index c20e272..715b705 100644 --- a/src/mightypork/rogue/screens/RogueScreen.java +++ b/src/mightypork/rogue/screens/RogueScreen.java @@ -1,15 +1,15 @@ package mightypork.rogue.screens; -import mightypork.gamecore.core.events.UserQuitRequest; -import mightypork.gamecore.core.events.UserQuitRequestListener; +import mightypork.gamecore.core.events.ShutdownEvent; +import mightypork.gamecore.core.events.ShutdownListener; import mightypork.gamecore.gui.screens.LayeredScreen; import mightypork.rogue.RogueStateManager.RogueState; import mightypork.rogue.events.RogueStateRequest; import mightypork.utils.annotations.Stub; -public class RogueScreen extends LayeredScreen implements UserQuitRequestListener { +public class RogueScreen extends LayeredScreen implements ShutdownListener { public RogueScreen(AppAccess app) { super(app); @@ -18,7 +18,7 @@ public class RogueScreen extends LayeredScreen implements UserQuitRequestListene @Override @Stub - public void onQuitRequest(UserQuitRequest event) + public void onShutdown(ShutdownEvent event) { getEventBus().send(new RogueStateRequest(RogueState.EXIT)); event.consume(); diff --git a/src/mightypork/rogue/screens/game/LayerInv.java b/src/mightypork/rogue/screens/game/LayerInv.java index 831685f..db9d852 100644 --- a/src/mightypork/rogue/screens/game/LayerInv.java +++ b/src/mightypork/rogue/screens/game/LayerInv.java @@ -8,8 +8,8 @@ import mightypork.gamecore.gui.components.layout.GridLayout; import mightypork.gamecore.gui.components.painters.QuadPainter; import mightypork.gamecore.gui.components.painters.TextPainter; import mightypork.gamecore.gui.screens.impl.FadingLayer; -import mightypork.gamecore.input.Trigger; import mightypork.gamecore.input.KeyStroke; +import mightypork.gamecore.input.Trigger; import mightypork.gamecore.resources.Res; import mightypork.rogue.screens.game.ScreenGame.GScrState; import mightypork.rogue.world.PlayerFacade; diff --git a/src/mightypork/rogue/screens/game/ScreenGame.java b/src/mightypork/rogue/screens/game/ScreenGame.java index b75578a..9fb0565 100644 --- a/src/mightypork/rogue/screens/game/ScreenGame.java +++ b/src/mightypork/rogue/screens/game/ScreenGame.java @@ -4,7 +4,7 @@ package mightypork.rogue.screens.game; import java.io.File; import mightypork.gamecore.core.config.Config; -import mightypork.gamecore.core.events.UserQuitRequest; +import mightypork.gamecore.core.events.ShutdownEvent; import mightypork.gamecore.gui.Action; import mightypork.gamecore.gui.ActionGroup; import mightypork.gamecore.input.Trigger; @@ -343,7 +343,7 @@ public class ScreenGame extends RogueScreen implements PlayerDeathHandler, GameW @Override - public void onQuitRequest(UserQuitRequest event) + public void onShutdown(ShutdownEvent event) { // if player is dead, don't ask don't ask for save final PlayerFacade pl = WorldProvider.get().getPlayer(); diff --git a/src/mightypork/rogue/screens/menu/ScreenMainMenu.java b/src/mightypork/rogue/screens/menu/ScreenMainMenu.java index 6288ffc..30f7b4f 100644 --- a/src/mightypork/rogue/screens/menu/ScreenMainMenu.java +++ b/src/mightypork/rogue/screens/menu/ScreenMainMenu.java @@ -2,7 +2,7 @@ package mightypork.rogue.screens.menu; import mightypork.gamecore.core.config.Config; -import mightypork.gamecore.core.events.UserQuitRequest; +import mightypork.gamecore.core.events.ShutdownEvent; import mightypork.gamecore.graphics.fonts.IFont; import mightypork.gamecore.gui.Action; import mightypork.gamecore.gui.components.input.TextButton; @@ -98,7 +98,7 @@ public class ScreenMainMenu extends RogueScreen { @Override protected void execute() { - getEventBus().send(new UserQuitRequest()); + getEventBus().send(new ShutdownEvent()); } }); rows.add(btn, 2); @@ -108,7 +108,7 @@ public class ScreenMainMenu extends RogueScreen { @Override public void run() { - getEventBus().send(new UserQuitRequest()); + getEventBus().send(new ShutdownEvent()); } }); } diff --git a/src/mightypork/rogue/screens/story/ScreenStory.java b/src/mightypork/rogue/screens/story/ScreenStory.java index 3f297c8..ecf997e 100644 --- a/src/mightypork/rogue/screens/story/ScreenStory.java +++ b/src/mightypork/rogue/screens/story/ScreenStory.java @@ -10,9 +10,9 @@ import mightypork.gamecore.gui.components.painters.TextPainter; import mightypork.gamecore.gui.screens.Screen; import mightypork.gamecore.gui.screens.ScreenLayer; import mightypork.gamecore.gui.screens.impl.LayerColor; -import mightypork.gamecore.input.Trigger; import mightypork.gamecore.input.KeyStroke; import mightypork.gamecore.input.Keys; +import mightypork.gamecore.input.Trigger; import mightypork.gamecore.input.events.MouseButtonEvent; import mightypork.gamecore.input.events.MouseButtonHandler; import mightypork.gamecore.resources.Res; diff --git a/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java b/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java index 242f9eb..1e89e2f 100644 --- a/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java +++ b/src/mightypork/rogue/world/gui/interaction/MIPKeyboard.java @@ -7,10 +7,10 @@ import java.util.List; import mightypork.gamecore.backends.lwjgl.LwjglInputModule; import mightypork.gamecore.core.config.Config; -import mightypork.gamecore.input.Trigger; import mightypork.gamecore.input.KeyBindingPool; import mightypork.gamecore.input.KeyStroke; import mightypork.gamecore.input.Keys; +import mightypork.gamecore.input.Trigger; import mightypork.rogue.world.entity.impl.EntityPlayer; import mightypork.rogue.world.events.PlayerStepEndListener; import mightypork.rogue.world.gui.MapView;