Cleaned up ReplayHandler by unifying selectedKeyframe and selectedMarkerKeyframe into selectedKeyframe, thus only being able to select one Keyframe at once

This commit is contained in:
CrushedPixel
2015-07-13 22:08:41 +02:00
parent a7590ce384
commit 0f024a9de9
5 changed files with 18 additions and 16 deletions

View File

@@ -155,6 +155,12 @@ public class KeyInputHandler {
if(!ReplayHandler.isInReplay() || (mc.currentScreen != null && !(mc.currentScreen instanceof GuiMouseInput))) return; if(!ReplayHandler.isInReplay() || (mc.currentScreen != null && !(mc.currentScreen instanceof GuiMouseInput))) return;
if(kb.getKeyCode() == Keyboard.KEY_DELETE) {
if(ReplayHandler.getSelectedKeyframe() != null) {
}
}
if(kb.getKeyDescription().equals("key.chat") && (kb.isPressed() || kb.getKeyCode() == keyCode)) { if(kb.getKeyDescription().equals("key.chat") && (kb.isPressed() || kb.getKeyCode() == keyCode)) {
mc.displayGuiScreen(new GuiMouseInput(ReplayMod.overlay)); mc.displayGuiScreen(new GuiMouseInput(ReplayMod.overlay));
} }

View File

@@ -258,12 +258,12 @@ public class GuiEditKeyframe extends GuiScreen {
if(keyframeType != KeyframeType.MARKER) { if(keyframeType != KeyframeType.MARKER) {
ReplayHandler.removeKeyframe(keyframe); ReplayHandler.removeKeyframe(keyframe);
ReplayHandler.addKeyframe(keyframeBackup); ReplayHandler.addKeyframe(keyframeBackup);
ReplayHandler.selectKeyframe(keyframeBackup);
} else { } else {
ReplayHandler.getMarkerKeyframes().remove(keyframe); ReplayHandler.getMarkerKeyframes().remove(keyframe);
ReplayHandler.getMarkerKeyframes().add(keyframeBackup); ReplayHandler.getMarkerKeyframes().add(keyframeBackup);
ReplayHandler.selectMarkerKeyframe(keyframeBackup);
} }
ReplayHandler.selectKeyframe(keyframeBackup);
} else { } else {
keyframe.setRealTimestamp(TimestampUtils.calculateTimestamp(min.getIntValue(), sec.getIntValue(), ms.getIntValue())); keyframe.setRealTimestamp(TimestampUtils.calculateTimestamp(min.getIntValue(), sec.getIntValue(), ms.getIntValue()));
if(keyframeType == KeyframeType.POSITION) { if(keyframeType == KeyframeType.POSITION) {

View File

@@ -1,8 +1,9 @@
package eu.crushedpixel.replaymod.gui.elements.timelines; package eu.crushedpixel.replaymod.gui.elements.timelines;
import eu.crushedpixel.replaymod.gui.GuiEditKeyframe; import eu.crushedpixel.replaymod.gui.GuiEditKeyframe;
import eu.crushedpixel.replaymod.holders.Keyframe;
import eu.crushedpixel.replaymod.holders.AdvancedPosition; import eu.crushedpixel.replaymod.holders.AdvancedPosition;
import eu.crushedpixel.replaymod.holders.Keyframe;
import eu.crushedpixel.replaymod.holders.Marker;
import eu.crushedpixel.replaymod.holders.TimestampValue; import eu.crushedpixel.replaymod.holders.TimestampValue;
import eu.crushedpixel.replaymod.replay.ReplayHandler; import eu.crushedpixel.replaymod.replay.ReplayHandler;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
@@ -195,7 +196,7 @@ public class GuiKeyframeTimeline extends GuiTimeline {
drawKeyframe(kf, bodyWidth, leftTime, rightTime, segmentLength); drawKeyframe(kf, bodyWidth, leftTime, rightTime, segmentLength);
} }
if(ReplayHandler.getSelectedKeyframe() != null) { if(ReplayHandler.getSelectedKeyframe() != null && !(ReplayHandler.getSelectedKeyframe().getValue() instanceof Marker)) {
drawKeyframe(ReplayHandler.getSelectedKeyframe(), bodyWidth, leftTime, rightTime, segmentLength); drawKeyframe(ReplayHandler.getSelectedKeyframe(), bodyWidth, leftTime, rightTime, segmentLength);
} }
} }

View File

@@ -43,7 +43,7 @@ public class GuiMarkerTimeline extends GuiTimeline {
closest = ReplayHandler.getMarkerKeyframes().getClosestKeyframeForTimestamp((int) time, tolerance); closest = ReplayHandler.getMarkerKeyframes().getClosestKeyframeForTimestamp((int) time, tolerance);
} }
ReplayHandler.selectMarkerKeyframe(closest); ReplayHandler.selectKeyframe(closest);
if(closest == null) { //if no keyframe clicked, jump in time if(closest == null) { //if no keyframe clicked, jump in time
ReplayMod.overlay.performJump(getTimeAt(mouseX, mouseY)); ReplayMod.overlay.performJump(getTimeAt(mouseX, mouseY));
@@ -126,12 +126,12 @@ public class GuiMarkerTimeline extends GuiTimeline {
//Draw Keyframe logos //Draw Keyframe logos
for(Keyframe<Marker> kf : ReplayHandler.getMarkerKeyframes()) { for(Keyframe<Marker> kf : ReplayHandler.getMarkerKeyframes()) {
if (kf != null && !kf.equals(ReplayHandler.getSelectedMarkerKeyframe())) if (kf != null && !kf.equals(ReplayHandler.getSelectedKeyframe()))
drawKeyframe(kf, bodyWidth, leftTime, rightTime, segmentLength); drawKeyframe(kf, bodyWidth, leftTime, rightTime, segmentLength);
} }
if(ReplayHandler.getSelectedMarkerKeyframe() != null) { if(ReplayHandler.getSelectedKeyframe() != null && ReplayHandler.getSelectedKeyframe().getValue() instanceof Marker) {
drawKeyframe(ReplayHandler.getSelectedMarkerKeyframe(), bodyWidth, leftTime, rightTime, segmentLength); drawKeyframe(ReplayHandler.getSelectedKeyframe(), bodyWidth, leftTime, rightTime, segmentLength);
} }
} }

View File

@@ -47,7 +47,6 @@ public class ReplayHandler {
private static int realTimelinePosition = 0; private static int realTimelinePosition = 0;
private static Keyframe selectedKeyframe; private static Keyframe selectedKeyframe;
private static Keyframe<Marker> selectedMarkerKeyframe;
private static boolean inPath = false; private static boolean inPath = false;
private static CameraEntity cameraEntity; private static CameraEntity cameraEntity;
@@ -228,7 +227,7 @@ public class ReplayHandler {
} }
public static void toggleMarker() { public static void toggleMarker() {
if(selectedMarkerKeyframe != null) markerKeyframes.remove(selectedMarkerKeyframe); if(selectedKeyframe.getValue() instanceof Marker) markerKeyframes.remove(selectedKeyframe);
else { else {
AdvancedPosition pos = new AdvancedPosition(mc.getRenderViewEntity(), false); AdvancedPosition pos = new AdvancedPosition(mc.getRenderViewEntity(), false);
int timestamp = ReplayMod.replaySender.currentTimeStamp(); int timestamp = ReplayMod.replaySender.currentTimeStamp();
@@ -314,7 +313,7 @@ public class ReplayHandler {
mc.displayGuiScreen(new GuiYesNo(new GuiYesNoCallback() { mc.displayGuiScreen(new GuiYesNo(new GuiYesNoCallback() {
@Override @Override
public void confirmClicked(boolean result, int id) { public void confirmClicked(boolean result, int id) {
if (result) { if(result) {
resetKeyframes(resetMarkers); resetKeyframes(resetMarkers);
} }
@@ -341,11 +340,9 @@ public class ReplayHandler {
} }
public static boolean isSelected(Keyframe kf) { public static boolean isSelected(Keyframe kf) {
return kf == selectedKeyframe || kf == selectedMarkerKeyframe; return kf == selectedKeyframe;
} }
public static void selectMarkerKeyframe(Keyframe<Marker> kf) { selectedMarkerKeyframe = kf; }
public static boolean isInReplay() { public static boolean isInReplay() {
return inReplay; return inReplay;
} }
@@ -508,8 +505,6 @@ public class ReplayHandler {
return selectedKeyframe; return selectedKeyframe;
} }
public static Keyframe<Marker> getSelectedMarkerKeyframe() { return selectedMarkerKeyframe; }
public static int getRealTimelineCursor() { public static int getRealTimelineCursor() {
return realTimelinePosition; return realTimelinePosition;
} }