diff --git a/.classpath b/.classpath
index 45f6ff8..dd14e7a 100644
--- a/.classpath
+++ b/.classpath
@@ -32,5 +32,6 @@
+
diff --git a/LICENSE.txt b/LICENSE.txt
index 2cf0918..fe55e0a 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,4 +1,5 @@
-Copyright (c) 2014 Ondřej Hruška (MightyPork),
+Copyright (c) 2014, Ondřej Hruška
+Some rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
@@ -14,6 +15,7 @@ are met:
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.
+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/src/mightypork/gamecore/core/Config.java b/src/mightypork/gamecore/core/Config.java
index dd085fe..406efaa 100644
--- a/src/mightypork/gamecore/core/Config.java
+++ b/src/mightypork/gamecore/core/Config.java
@@ -15,7 +15,7 @@ import mightypork.gamecore.util.files.config.PropertyManager;
/**
* Static application configuration
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class Config {
@@ -63,7 +63,7 @@ public class Config {
* Key property.
* The stored value must be invariant ({@link KeyStroke} is mutable).
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public static class KeyProperty extends Property {
diff --git a/src/mightypork/gamecore/core/WorkDir.java b/src/mightypork/gamecore/core/WorkDir.java
index bd015cf..563f747 100644
--- a/src/mightypork/gamecore/core/WorkDir.java
+++ b/src/mightypork/gamecore/core/WorkDir.java
@@ -11,7 +11,7 @@ import mightypork.gamecore.logging.Log;
/**
* Static application workdir accessor.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class WorkDir {
diff --git a/src/mightypork/gamecore/core/events/MainLoopRequest.java b/src/mightypork/gamecore/core/events/MainLoopRequest.java
index 277bbe4..55257b1 100644
--- a/src/mightypork/gamecore/core/events/MainLoopRequest.java
+++ b/src/mightypork/gamecore/core/events/MainLoopRequest.java
@@ -9,7 +9,7 @@ import mightypork.gamecore.eventbus.event_flags.SingleReceiverEvent;
/**
* Request to execute given {@link Runnable} in main loop.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
@SingleReceiverEvent
public class MainLoopRequest extends BusEvent {
diff --git a/src/mightypork/gamecore/core/events/ShudownRequest.java b/src/mightypork/gamecore/core/events/ShudownRequest.java
index 73fbb8c..c238cc4 100644
--- a/src/mightypork/gamecore/core/events/ShudownRequest.java
+++ b/src/mightypork/gamecore/core/events/ShudownRequest.java
@@ -5,14 +5,13 @@ import mightypork.gamecore.core.modules.MainLoop;
import mightypork.gamecore.eventbus.BusEvent;
import mightypork.gamecore.eventbus.event_flags.NonConsumableEvent;
import mightypork.gamecore.eventbus.event_flags.SingleReceiverEvent;
-import mightypork.gamecore.resources.audio.SoundSystem;
/**
* Shutdown request, non-interactive. Shutdown needs to execute on GL thread for
* display to deinit properly.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
@SingleReceiverEvent
@NonConsumableEvent
diff --git a/src/mightypork/gamecore/core/events/UserQuitRequest.java b/src/mightypork/gamecore/core/events/UserQuitRequest.java
index ba571b3..8828303 100644
--- a/src/mightypork/gamecore/core/events/UserQuitRequest.java
+++ b/src/mightypork/gamecore/core/events/UserQuitRequest.java
@@ -10,7 +10,7 @@ import mightypork.gamecore.eventbus.EventBus;
* titlebar button, and if no client consumes it, the application will be shut
* down.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class UserQuitRequest extends BusEvent {
diff --git a/src/mightypork/gamecore/core/events/UserQuitRequestListener.java b/src/mightypork/gamecore/core/events/UserQuitRequestListener.java
index 45fd94c..b97a995 100644
--- a/src/mightypork/gamecore/core/events/UserQuitRequestListener.java
+++ b/src/mightypork/gamecore/core/events/UserQuitRequestListener.java
@@ -4,7 +4,7 @@ package mightypork.gamecore.core.events;
/**
* Quit request listener; implementing client can abort shutdown.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public interface UserQuitRequestListener {
diff --git a/src/mightypork/gamecore/core/modules/AppAccess.java b/src/mightypork/gamecore/core/modules/AppAccess.java
index 05faf43..eede2a7 100644
--- a/src/mightypork/gamecore/core/modules/AppAccess.java
+++ b/src/mightypork/gamecore/core/modules/AppAccess.java
@@ -10,7 +10,7 @@ import mightypork.gamecore.resources.audio.SoundSystem;
/**
* App interface visible to subsystems
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public interface AppAccess extends BusAccess {
diff --git a/src/mightypork/gamecore/core/modules/AppAccessAdapter.java b/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
index faceb51..a6a825a 100644
--- a/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
+++ b/src/mightypork/gamecore/core/modules/AppAccessAdapter.java
@@ -10,7 +10,7 @@ import mightypork.gamecore.resources.audio.SoundSystem;
/**
* App access adapter (defualt {@link AppAccess} implementation)
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class AppAccessAdapter implements AppAccess {
diff --git a/src/mightypork/gamecore/core/modules/AppModule.java b/src/mightypork/gamecore/core/modules/AppModule.java
index 35cf15d..9b1db57 100644
--- a/src/mightypork/gamecore/core/modules/AppModule.java
+++ b/src/mightypork/gamecore/core/modules/AppModule.java
@@ -11,7 +11,7 @@ import mightypork.gamecore.resources.audio.SoundSystem;
* App event bus client, to be used for subsystems, screens and anything that
* needs access to the eventbus and other systems; Attached directly to bus.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public abstract class AppModule extends RootBusNode implements AppAccess {
diff --git a/src/mightypork/gamecore/core/modules/AppSubModule.java b/src/mightypork/gamecore/core/modules/AppSubModule.java
index 5e91002..bf32a83 100644
--- a/src/mightypork/gamecore/core/modules/AppSubModule.java
+++ b/src/mightypork/gamecore/core/modules/AppSubModule.java
@@ -13,7 +13,7 @@ import mightypork.gamecore.resources.audio.SoundSystem;
* Delegating bus client, to be attached to any {@link DelegatingClient}, such
* as a {@link RootBusNode}.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class AppSubModule extends BusNode implements AppAccess {
diff --git a/src/mightypork/gamecore/core/modules/BaseApp.java b/src/mightypork/gamecore/core/modules/BaseApp.java
index 464ee39..3dd93d0 100644
--- a/src/mightypork/gamecore/core/modules/BaseApp.java
+++ b/src/mightypork/gamecore/core/modules/BaseApp.java
@@ -11,9 +11,9 @@ import java.util.logging.Level;
import javax.swing.JOptionPane;
import mightypork.gamecore.core.Config;
-import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.Config.ConfigSetup;
import mightypork.gamecore.core.Config.KeySetup;
+import mightypork.gamecore.core.WorkDir;
import mightypork.gamecore.core.WorkDir.RouteSetup;
import mightypork.gamecore.eventbus.EventBus;
import mightypork.gamecore.eventbus.events.DestroyEvent;
@@ -31,16 +31,16 @@ import mightypork.gamecore.resources.ResourceSetup;
import mightypork.gamecore.resources.audio.SoundSystem;
import mightypork.gamecore.util.annot.DefaultImpl;
import mightypork.gamecore.util.files.InstanceLock;
-import mightypork.gamecore.util.ion.Ion;
import mightypork.gamecore.util.math.algo.Coord;
import mightypork.gamecore.util.math.algo.Move;
+import mightypork.ion.Ion;
/**
* Basic screen-based game with subsystems.
* This class takes care of the initialization sequence.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public abstract class BaseApp implements AppAccess, UncaughtExceptionHandler {
@@ -320,8 +320,8 @@ public abstract class BaseApp implements AppAccess, UncaughtExceptionHandler {
{
logSystemInfo();
}
-
-
+
+
protected void logSystemInfo()
{
String txt = "";
@@ -344,8 +344,8 @@ public abstract class BaseApp implements AppAccess, UncaughtExceptionHandler {
protected void registerIonizables()
{
- Ion.registerType(Coord.ION_MARK, Coord.class);
- Ion.registerType(Move.ION_MARK, Move.class);
+ Ion.register(Coord.class);
+ Ion.register(Move.class);
}
diff --git a/src/mightypork/gamecore/core/modules/MainLoop.java b/src/mightypork/gamecore/core/modules/MainLoop.java
index 03e29dd..86ab3fb 100644
--- a/src/mightypork/gamecore/core/modules/MainLoop.java
+++ b/src/mightypork/gamecore/core/modules/MainLoop.java
@@ -2,9 +2,7 @@ package mightypork.gamecore.core.modules;
import java.util.Deque;
-import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedDeque;
-import java.util.concurrent.ConcurrentLinkedQueue;
import mightypork.gamecore.eventbus.events.UpdateEvent;
import mightypork.gamecore.gui.screens.ScreenRegistry;
@@ -21,7 +19,7 @@ import mightypork.gamecore.util.math.timing.TimerDelta;
/**
* Delta-timed game loop with task queue etc.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public class MainLoop extends AppModule implements ScreenshotRequestListener {
@@ -74,7 +72,7 @@ public class MainLoop extends AppModule implements ScreenshotRequestListener {
getEventBus().sendDirect(new UpdateEvent(delta));
Runnable r;
- long t = Profiler.begin();
+ final long t = Profiler.begin();
while ((r = tasks.poll()) != null) {
Log.f3(" * Main loop task.");
r.run();
diff --git a/src/mightypork/gamecore/eventbus/BusAccess.java b/src/mightypork/gamecore/eventbus/BusAccess.java
index dbd2718..31c4770 100644
--- a/src/mightypork/gamecore/eventbus/BusAccess.java
+++ b/src/mightypork/gamecore/eventbus/BusAccess.java
@@ -4,7 +4,7 @@ package mightypork.gamecore.eventbus;
/**
* Access to an {@link EventBus} instance
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
public interface BusAccess {
diff --git a/src/mightypork/gamecore/eventbus/BusEvent.java b/src/mightypork/gamecore/eventbus/BusEvent.java
index 99e36c5..7cfd9d6 100644
--- a/src/mightypork/gamecore/eventbus/BusEvent.java
+++ b/src/mightypork/gamecore/eventbus/BusEvent.java
@@ -27,7 +27,7 @@ import mightypork.gamecore.eventbus.event_flags.SingleReceiverEvent;
* zero delay.
*
*
- * @author MightyPork
+ * @author Ondřej Hruška
* @param handler type
*/
public abstract class BusEvent {
diff --git a/src/mightypork/gamecore/eventbus/EventBus.java b/src/mightypork/gamecore/eventbus/EventBus.java
index b8ff901..b509ae8 100644
--- a/src/mightypork/gamecore/eventbus/EventBus.java
+++ b/src/mightypork/gamecore/eventbus/EventBus.java
@@ -7,7 +7,6 @@ import java.util.Collection;
import java.util.Collections;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentLinkedDeque;
import java.util.concurrent.DelayQueue;
import java.util.concurrent.Delayed;
import java.util.concurrent.TimeUnit;
@@ -25,7 +24,7 @@ import mightypork.gamecore.util.Utils;
* An event bus, accommodating multiple EventChannels.
* Channel will be created when an event of type is first encountered.
*
- * @author MightyPork
+ * @author Ondřej Hruška
*/
final public class EventBus implements Destroyable, BusAccess {
@@ -135,13 +134,13 @@ final public class EventBus implements Destroyable, BusAccess {
private final QueuePollingThread busThread;
/** Registered clients */
- private final Set