From 7db4f8b94ecbac4271ab1ab91e9680c24918d795 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Hru=C5=A1ka?= Date: Tue, 29 Jul 2014 03:48:25 +0200 Subject: [PATCH] added missing new stuffs --- .../gamecore/core/init/InitTaskCustom.java | 46 +++++++++++++++++++ .../gamecore/core/init/InitTaskScreens.java | 42 +++++++++++++++++ .../screenshot/ScreenshotRequestListener.java | 7 +++ 3 files changed, 95 insertions(+) create mode 100644 src/mightypork/gamecore/core/init/InitTaskCustom.java create mode 100644 src/mightypork/gamecore/core/init/InitTaskScreens.java create mode 100644 src/mightypork/gamecore/core/plugins/screenshot/ScreenshotRequestListener.java diff --git a/src/mightypork/gamecore/core/init/InitTaskCustom.java b/src/mightypork/gamecore/core/init/InitTaskCustom.java new file mode 100644 index 0000000..105946e --- /dev/null +++ b/src/mightypork/gamecore/core/init/InitTaskCustom.java @@ -0,0 +1,46 @@ +package mightypork.gamecore.core.init; + + +/** + * Init task that can be extended to initialize additional stuff in the + * application. + * + * @author Ondřej Hruška (MightyPork) + */ +public abstract class InitTaskCustom extends InitTask { + + private final String name; + private final String[] deps; + + + public InitTaskCustom(String name) + { + this(name, null); + } + + + public InitTaskCustom(String name, String[] dependencies) + { + this.name = name; + this.deps = dependencies; + } + + + @Override + public abstract void run(); + + + @Override + public String getName() + { + return name; + } + + + @Override + public String[] getDependencies() + { + return deps; + } + +} diff --git a/src/mightypork/gamecore/core/init/InitTaskScreens.java b/src/mightypork/gamecore/core/init/InitTaskScreens.java new file mode 100644 index 0000000..5d68f59 --- /dev/null +++ b/src/mightypork/gamecore/core/init/InitTaskScreens.java @@ -0,0 +1,42 @@ +package mightypork.gamecore.core.init; + + +import mightypork.gamecore.graphics.Renderable; + + +/** + * Task to init renderable screens (part of the main loop).
+ * Resources must already be ready. + * + * @author Ondřej Hruška (MightyPork) + */ +public abstract class InitTaskScreens extends InitTask { + + @Override + public void run() + { + app.setMainRenderable(getMainRenderableImpl()); + } + + + /** + * Create a loader impl + * + * @return loader + */ + protected abstract Renderable getMainRenderableImpl(); + + + @Override + public String getName() + { + return "renderables"; + } + + + @Override + public String[] getDependencies() + { + return new String[] { "resources", "main_loop" }; + } +} diff --git a/src/mightypork/gamecore/core/plugins/screenshot/ScreenshotRequestListener.java b/src/mightypork/gamecore/core/plugins/screenshot/ScreenshotRequestListener.java new file mode 100644 index 0000000..b113914 --- /dev/null +++ b/src/mightypork/gamecore/core/plugins/screenshot/ScreenshotRequestListener.java @@ -0,0 +1,7 @@ +package mightypork.gamecore.core.plugins.screenshot; + + +public interface ScreenshotRequestListener { + + void onScreenshotRequest(); +}