Added Callback before clearing Keyframes | https://trello.com/c/ZzOk0ju1/

This commit is contained in:
CrushedPixel
2015-07-03 12:12:33 +02:00
parent 5960632354
commit 0bb335f692
3 changed files with 27 additions and 3 deletions

View File

@@ -185,7 +185,7 @@ public class KeyInputHandler {
}
if(kb.getKeyDescription().equals(KeybindRegistry.KEY_CLEAR_KEYFRAMES) && (kb.isPressed() || kb.getKeyCode() == keyCode)) {
ReplayHandler.resetKeyframes(false);
ReplayHandler.resetKeyframes(false, ReplayMod.replaySettings.showClearKeyframesCallback());
}
if(kb.getKeyDescription().equals(KeybindRegistry.KEY_SYNC_TIMELINE) && (kb.isPressed() || kb.getKeyCode() == keyCode)) {

View File

@@ -12,7 +12,10 @@ import eu.crushedpixel.replaymod.utils.ReplayFile;
import eu.crushedpixel.replaymod.utils.ReplayFileIO;
import io.netty.channel.ChannelHandlerContext;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiYesNo;
import net.minecraft.client.gui.GuiYesNoCallback;
import net.minecraft.client.network.NetHandlerPlayClient;
import net.minecraft.client.resources.I18n;
import net.minecraft.crash.CrashReport;
import net.minecraft.entity.Entity;
import net.minecraft.init.Bootstrap;
@@ -452,7 +455,24 @@ public class ReplayHandler {
return new ArrayList<Keyframe>(keyframes);
}
public static void resetKeyframes(boolean resetMarkers) {
public static void resetKeyframes(final boolean resetMarkers, boolean callback) {
if(!callback) {
resetKeyframes(resetMarkers);
} else {
mc.displayGuiScreen(new GuiYesNo(new GuiYesNoCallback() {
@Override
public void confirmClicked(boolean result, int id) {
if(result) {
resetKeyframes(resetMarkers);
}
mc.displayGuiScreen(null);
}
}, I18n.format("replaymod.gui.clearcallback.title"), I18n.format("replaymod.gui.clearcallback.message"), 1));
}
}
private static void resetKeyframes(boolean resetMarkers) {
MarkerKeyframe[] markers = getMarkers();
keyframes = new ArrayList<Keyframe>();

View File

@@ -336,4 +336,8 @@ replaymod.gui.ingame.menu.pausepath=Pause Camera Path
replaymod.gui.ingame.menu.zoomin=Zoom in
replaymod.gui.ingame.menu.zoomout=Zoom out
replaymod.gui.ingame.unnamedmarker=Unnamed Event Marker
replaymod.gui.ingame.unnamedmarker=Unnamed Event Marker
#Clear Keyframe Callback
replaymod.gui.clearcallback.title=Clear all Keyframes?
replaymod.gui.clearcallback.message=This Callback can be disabled in the Replay Settings.