The Position Keyframe Button now turns into a Spectator Keyframe Button when Spectator Keyframe is selected or no Position Keyframe Selected and spectating an Entity
This commit is contained in:
@@ -21,8 +21,8 @@ public class GuiKeyframeTimeline extends GuiTimeline {
|
|||||||
private static final int KEYFRAME_TIME_Y = 25;
|
private static final int KEYFRAME_TIME_Y = 25;
|
||||||
private static final int KEYFRAME_SPEC_X = 74;
|
private static final int KEYFRAME_SPEC_X = 74;
|
||||||
private static final int KEYFRAME_SPEC_Y = 30;
|
private static final int KEYFRAME_SPEC_Y = 30;
|
||||||
private static final int KEYFRAME_MARKER_X = 40;
|
private static final int KEYFRAME_MARKER_X = 109;
|
||||||
private static final int KEYFRAME_MARKER_Y = 39;
|
private static final int KEYFRAME_MARKER_Y = 20;
|
||||||
|
|
||||||
private Keyframe clickedKeyFrame;
|
private Keyframe clickedKeyFrame;
|
||||||
private long clickTime;
|
private long clickTime;
|
||||||
|
|||||||
@@ -154,9 +154,44 @@ public class GuiReplayOverlay extends Gui {
|
|||||||
}
|
}
|
||||||
}, "replaymod.gui.ingame.menu.removeposkeyframe");
|
}, "replaymod.gui.ingame.menu.removeposkeyframe");
|
||||||
|
|
||||||
|
private final GuiElement buttonSpectatorNotSelected = texturedButton(BUTTON_PLACE_X, BOTTOM_ROW, 40, 40, 20, new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
Entity cam = mc.getRenderViewEntity();
|
||||||
|
if (cam != null) {
|
||||||
|
Position position = new Position(cam.posX, cam.posY, cam.posZ, cam.rotationPitch,
|
||||||
|
cam.rotationYaw % 360, ReplayHandler.getCameraTilt());
|
||||||
|
|
||||||
|
if (ReplayHandler.isCamera())
|
||||||
|
ReplayHandler.addKeyframe(new PositionKeyframe(ReplayHandler.getRealTimelineCursor(), position));
|
||||||
|
else
|
||||||
|
ReplayHandler.addKeyframe(new PositionKeyframe(ReplayHandler.getRealTimelineCursor(), cam.getEntityId()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, "replaymod.gui.ingame.menu.addspeckeyframe");
|
||||||
|
|
||||||
|
private final GuiElement buttonSpectatorSelected = texturedButton(BUTTON_PLACE_X, BOTTOM_ROW, 40, 60, 20, new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
ReplayHandler.removeKeyframe(ReplayHandler.getSelectedKeyframe());
|
||||||
|
}
|
||||||
|
}, "replaymod.gui.ingame.menu.removespeckeyframe");
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public GuiElement delegate() {
|
public GuiElement delegate() {
|
||||||
return ReplayHandler.getSelectedKeyframe() instanceof PositionKeyframe ? buttonSelected : buttonNotSelected;
|
boolean selected = ReplayHandler.getSelectedKeyframe() instanceof PositionKeyframe;
|
||||||
|
boolean camera = true;
|
||||||
|
if(selected) {
|
||||||
|
camera = ((PositionKeyframe)ReplayHandler.getSelectedKeyframe()).getSpectatedEntityID() == null;
|
||||||
|
} else {
|
||||||
|
camera = ReplayHandler.isCamera();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(camera) {
|
||||||
|
return selected ? buttonSelected : buttonNotSelected;
|
||||||
|
} else {
|
||||||
|
return selected ? buttonSpectatorSelected : buttonSpectatorNotSelected;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -298,6 +298,8 @@ replaymod.gui.rendering.timeleft=Time Left
|
|||||||
#Ingame Menu
|
#Ingame Menu
|
||||||
replaymod.gui.ingame.menu.addposkeyframe=Add Position Keyframe
|
replaymod.gui.ingame.menu.addposkeyframe=Add Position Keyframe
|
||||||
replaymod.gui.ingame.menu.removeposkeyframe=Remove Position Keyframe
|
replaymod.gui.ingame.menu.removeposkeyframe=Remove Position Keyframe
|
||||||
|
replaymod.gui.ingame.menu.addspeckeyframe=Add Spectator Keyframe
|
||||||
|
replaymod.gui.ingame.menu.removespeckeyframe=Remove Spectator Keyframe
|
||||||
replaymod.gui.ingame.menu.addtimekeyframe=Add Time Keyframe
|
replaymod.gui.ingame.menu.addtimekeyframe=Add Time Keyframe
|
||||||
replaymod.gui.ingame.menu.removetimekeyframe=Remove Time Keyframe
|
replaymod.gui.ingame.menu.removetimekeyframe=Remove Time Keyframe
|
||||||
replaymod.gui.ingame.menu.pause=Pause Replay
|
replaymod.gui.ingame.menu.pause=Pause Replay
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 6.5 KiB |
Reference in New Issue
Block a user