From 49b0cbe4f8430afbd3de69024cd03ee804ead7ec Mon Sep 17 00:00:00 2001 From: Jonas Herzig Date: Sun, 27 Sep 2020 14:13:40 +0200 Subject: [PATCH] Fix jumping to marker position when time already matches --- .../java/com/replaymod/replay/ReplayHandler.java | 4 ---- .../replay/gui/overlay/GuiMarkerTimeline.java | 14 +++++++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/replaymod/replay/ReplayHandler.java b/src/main/java/com/replaymod/replay/ReplayHandler.java index 56384232..d20a7f41 100644 --- a/src/main/java/com/replaymod/replay/ReplayHandler.java +++ b/src/main/java/com/replaymod/replay/ReplayHandler.java @@ -519,10 +519,6 @@ public class ReplayHandler { return spectating; } - public void setTargetPosition(Location pos) { - targetCameraPosition = pos; - } - public void moveCameraToTargetPosition() { CameraEntity cam = getCameraEntity(); if (cam != null && targetCameraPosition != null) { diff --git a/src/main/java/com/replaymod/replay/gui/overlay/GuiMarkerTimeline.java b/src/main/java/com/replaymod/replay/gui/overlay/GuiMarkerTimeline.java index d312d670..83aa491f 100644 --- a/src/main/java/com/replaymod/replay/gui/overlay/GuiMarkerTimeline.java +++ b/src/main/java/com/replaymod/replay/gui/overlay/GuiMarkerTimeline.java @@ -4,6 +4,7 @@ import com.replaymod.core.ReplayMod; import com.replaymod.core.versions.MCVer.Keyboard; import com.replaymod.replay.ReplayHandler; import com.replaymod.replay.ReplayModReplay; +import com.replaymod.replay.camera.CameraEntity; import com.replaymod.replaystudio.data.Marker; import com.replaymod.replaystudio.util.Location; import de.johni0702.minecraft.gui.GuiRenderer; @@ -168,11 +169,14 @@ public class GuiMarkerTimeline extends AbstractGuiTimeline im } else if (button == 1) { // Right click selectedMarker = null; if (replayHandler != null) { - replayHandler.setTargetPosition(new Location( - marker.getX(), marker.getY(), marker.getZ(), - marker.getPitch(), marker.getYaw() - )); - replayHandler.doJump(marker.getTime(), false); + CameraEntity cameraEntity = replayHandler.getCameraEntity(); + if (cameraEntity != null) { + cameraEntity.setCameraPosRot(new Location( + marker.getX(), marker.getY(), marker.getZ(), + marker.getPitch(), marker.getYaw() + )); + } + replayHandler.doJump(marker.getTime(), true); } else { setCursorPosition(marker.getTime()); }