diff --git a/src/main/java/eu/crushedpixel/replaymod/events/handlers/keyboard/KeyInputHandler.java b/src/main/java/eu/crushedpixel/replaymod/events/handlers/keyboard/KeyInputHandler.java index aa3850e3..c8186e20 100755 --- a/src/main/java/eu/crushedpixel/replaymod/events/handlers/keyboard/KeyInputHandler.java +++ b/src/main/java/eu/crushedpixel/replaymod/events/handlers/keyboard/KeyInputHandler.java @@ -229,5 +229,9 @@ public class KeyInputHandler { if(kb.getKeyDescription().equals(KeybindRegistry.KEY_OBJECT_MANAGER) && (kb.isPressed() || kb.getKeyCode() == keyCode)) { mc.displayGuiScreen(new GuiObjectManager()); } + + if(kb.getKeyDescription().equals(KeybindRegistry.KEY_TOGGLE_INTERPOLATION) && (kb.isPressed() || kb.getKeyCode() == keyCode)) { + ReplayMod.replaySettings.toggleInterpolation(); + } } } diff --git a/src/main/java/eu/crushedpixel/replaymod/registry/KeybindRegistry.java b/src/main/java/eu/crushedpixel/replaymod/registry/KeybindRegistry.java index 3f49f87b..ef3861d7 100755 --- a/src/main/java/eu/crushedpixel/replaymod/registry/KeybindRegistry.java +++ b/src/main/java/eu/crushedpixel/replaymod/registry/KeybindRegistry.java @@ -26,6 +26,7 @@ public class KeybindRegistry { public static final String KEY_PATH_PREVIEW = "replaymod.input.pathpreview"; public static final String KEY_ASSET_MANAGER = "replaymod.input.assetmanager"; public static final String KEY_OBJECT_MANAGER = "replaymod.input.objectmanager"; + public static final String KEY_TOGGLE_INTERPOLATION = "replaymod.input.interpolation"; private static Minecraft mc = Minecraft.getMinecraft(); @Getter @@ -54,6 +55,8 @@ public class KeybindRegistry { replayModKeyBindings.add(new KeyBinding(KEY_ASSET_MANAGER, Keyboard.KEY_G, "replaymod.title")); replayModKeyBindings.add(new KeyBinding(KEY_OBJECT_MANAGER, Keyboard.KEY_F, "replaymod.title")); + + replayModKeyBindings.add(new KeyBinding(KEY_TOGGLE_INTERPOLATION, Keyboard.KEY_O, "replaymod.title")); } public static void initialize() { diff --git a/src/main/java/eu/crushedpixel/replaymod/settings/ReplaySettings.java b/src/main/java/eu/crushedpixel/replaymod/settings/ReplaySettings.java index cacf039c..908d0e71 100755 --- a/src/main/java/eu/crushedpixel/replaymod/settings/ReplaySettings.java +++ b/src/main/java/eu/crushedpixel/replaymod/settings/ReplaySettings.java @@ -57,6 +57,11 @@ public class ReplaySettings { rewriteSettings(); } + public void toggleInterpolation() { + ReplayOptions.linear.setValue(!((Boolean)ReplayOptions.linear.getValue())); + rewriteSettings(); + } + public boolean showRecordingIndicator() { return (Boolean) RecordingOptions.indicator.getValue(); } diff --git a/src/main/resources/assets/replaymod/lang/en_US.lang b/src/main/resources/assets/replaymod/lang/en_US.lang index 9c3e7769..fff0b519 100644 --- a/src/main/resources/assets/replaymod/lang/en_US.lang +++ b/src/main/resources/assets/replaymod/lang/en_US.lang @@ -272,6 +272,7 @@ replaymod.input.marker=Add Event Marker replaymod.input.pathpreview=Toggle Path Preview replaymod.input.assetmanager=Asset Manager replaymod.input.objectmanager=Object Manager +replaymod.input.interpolation=Toggle Interpolation #Keyframe Presets GUI replaymod.gui.keyframerepository.title=Keyframe Repository