When clicking Time/Marker Keyframes, the time is now traveled with the "Please wait" screen

This commit is contained in:
CrushedPixel
2015-07-22 23:13:21 +02:00
parent 9d025cfae0
commit 6e9a77098a
3 changed files with 13 additions and 7 deletions

View File

@@ -78,7 +78,7 @@ public class GuiKeyframeTimeline extends GuiTimeline {
if(closest.getValue() instanceof AdvancedPosition) {
ReplayHandler.getCameraEntity().moveAbsolute((AdvancedPosition)closest.getValue());
} else if(closest.getValue() instanceof TimestampValue) {
ReplayMod.replaySender.jumpToTime(((TimestampValue)closest.getValue()).asInt());
ReplayMod.overlay.performJump(((TimestampValue)closest.getValue()).asInt());
}
}
}

View File

@@ -68,7 +68,7 @@ public class GuiMarkerTimeline extends GuiTimeline {
if(closest != null) {
//Jump to clicked Marker Keyframe
ReplayHandler.setLastPosition(closest.getValue().getPosition());
ReplayMod.replaySender.jumpToTime(closest.getRealTimestamp());
ReplayMod.overlay.performJump(closest.getRealTimestamp(), false);
}
}

View File

@@ -436,6 +436,10 @@ public class GuiReplayOverlay extends Gui {
}
public void performJump(long timelineTime) {
performJump(timelineTime, true);
}
public void performJump(long timelineTime, boolean setLastPosition) {
if (timelineTime != -1) { // Click on timeline
//When hurrying, no Timeline jumping etc. is possible
if(!ReplayMod.replaySender.isHurrying()) {
@@ -443,11 +447,13 @@ public class GuiReplayOverlay extends Gui {
mc.displayGuiScreen(null);
}
CameraEntity cam = ReplayHandler.getCameraEntity();
if(cam != null) {
ReplayHandler.setLastPosition(new AdvancedPosition(cam.posX, cam.posY, cam.posZ, cam.rotationPitch, cam.rotationYaw));
} else {
ReplayHandler.setLastPosition(null);
if(setLastPosition) {
CameraEntity cam = ReplayHandler.getCameraEntity();
if(cam != null) {
ReplayHandler.setLastPosition(new AdvancedPosition(cam.posX, cam.posY, cam.posZ, cam.rotationPitch, cam.rotationYaw));
} else {
ReplayHandler.setLastPosition(null);
}
}
long diff = timelineTime - ReplayMod.replaySender.getDesiredTimestamp();