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(kb.getKeyCode() == Keyboard.KEY_DELETE) {
if(ReplayHandler.getSelectedKeyframe() != null) {
}
}
if(kb.getKeyDescription().equals("key.chat") && (kb.isPressed() || kb.getKeyCode() == keyCode)) {
mc.displayGuiScreen(new GuiMouseInput(ReplayMod.overlay));
}

View File

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

View File

@@ -1,8 +1,9 @@
package eu.crushedpixel.replaymod.gui.elements.timelines;
import eu.crushedpixel.replaymod.gui.GuiEditKeyframe;
import eu.crushedpixel.replaymod.holders.Keyframe;
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.replay.ReplayHandler;
import net.minecraft.client.Minecraft;
@@ -195,7 +196,7 @@ public class GuiKeyframeTimeline extends GuiTimeline {
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);
}
}

View File

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

View File

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