diff --git a/bin/RabiClone.jar b/bin/RabiClone.jar index bbbde1a..c0dc451 100644 Binary files a/bin/RabiClone.jar and b/bin/RabiClone.jar differ diff --git a/src/sig/RabiClone.java b/src/sig/RabiClone.java index 3d46bdc..68d47be 100644 --- a/src/sig/RabiClone.java +++ b/src/sig/RabiClone.java @@ -51,6 +51,10 @@ public class RabiClone{ public static long lastControllerScan = System.currentTimeMillis(); + static long lastUpdate=System.nanoTime(); + final static long TARGET_FRAMETIME = 8333333l; + static long lastReportedTime=System.currentTimeMillis(); + public static void main(String[] args) { Key.InitializeKeyConversionMap(); @@ -124,8 +128,11 @@ public class RabiClone{ OBJ.remove(i--); } } + + waitForNextFrame(); } } + private static void handleGameControllers() { for (int i=0;i1000) { + System.err.println("WARNING! Update loop is underperforming!"); + lastReportedTime=System.currentTimeMillis(); + } + } + lastUpdate=newTime; + } } diff --git a/src/sig/engine/KeyBind.java b/src/sig/engine/KeyBind.java index 4651029..8d46877 100644 --- a/src/sig/engine/KeyBind.java +++ b/src/sig/engine/KeyBind.java @@ -76,9 +76,11 @@ public class KeyBind { public static void poll() { //Polls all KeyBinds based on device. - for (Action a : Action.values()) { + for (int i=0;i()); StringBuilder renderedText=new StringBuilder(a.toString()).append(": "); List sectionList = actionHighlightSections.get(a.ordinal()); sectionList.clear(); - for (int i=0;i