Commit Graph

351 Commits

Author SHA1 Message Date
CrushedPixel
40aaf7fbef When initially asked to Log in, rename "Cancel" to "Skip" button to indicate that the user doesn't have to log in in order to use the mod 2015-08-07 12:23:58 +02:00
johni0702
00fd746eb7 Remove unnecessary localization
Clean up position and size calculation
2015-08-04 23:14:31 +02:00
CrushedPixel
b32aaf5609 Initially set the GuiObjectManager's Keyframe Timeline's cursor position to the GuiReplayOverlay's Keyframe Timeline's cursor position 2015-08-04 17:26:00 +02:00
CrushedPixel
eb281b9df4 Added Disclaimer to GuiRegister telling users that registering means they agree with ReplayMod.com's Terms of Services 2015-08-02 13:56:34 +02:00
CrushedPixel
34fe741cc4 Call Minecraft#updateDisplay in VideoRenderer if not in High Performance Mode, to resize the GuiVideoRenderer if user resized screen (requested by many users)
This has no side effects on the rendered video.
Change GuiVideoRenderer#initGui method to allow for resizing
2015-07-30 12:59:54 +02:00
CrushedPixel
7e99cfeb50 Allow for spaces in Replay Names in GuiRenameReplay and use proper variable names instead of copy-pasted SrgNames 2015-07-30 11:43:18 +02:00
CrushedPixel
7bc3574515 When setting the last camera position before a time jump, a boolean has to be passed indicating whether that position should be enforced or ignored if it's out of a reasonable distance from the player's position.
This is used by the GuiMarkerTimeline to ensure that jumping to Marker Keyframes actually results in the Marker Keyframe's Position.

The actual code handling Position jumping after Time jumping was moved to the ReplayHandler and is now also called when jumping using the "Please wait" Screen.
2015-07-30 11:29:45 +02:00
CrushedPixel
8d8fa6a835 Be more reasonable in GuiKeyframeRepository with user inputs, not replacing the keyframeSetList's elements every time the Keyframe Preset's name changes and therefore not calling the Listener which set the nameInput's value every time. This leads to a smoother user experience regarding the nameInput Text Field. 2015-07-30 11:00:44 +02:00
CrushedPixel
62b2e04b85 The Camera Path Play/Pause button now tells the user where it's going to start (current cursor position or start) 2015-07-30 10:54:25 +02:00
CrushedPixel
d4e16ee07e Pressing the chat button if a GuiMouseInput is already present closes this GuiMouseInput (easier toggle between mouse and camera mode) 2015-07-29 12:24:43 +02:00
CrushedPixel
dd68b1546d The GuiRenderSettings loads their initial settings from the Replay Mod config
Upon rendering, the GuiRenderSettings saves the current RenderOptions to the Replay Mod config
2015-07-28 00:00:38 +02:00
CrushedPixel
0494b9cffe Added a setFPS() method to GuiVideoFramerateSlider to programmatically change the FPS value 2015-07-27 23:58:08 +02:00
CrushedPixel
4f69d9e22f Added hover message in GuiUploadFile to tell the user why they can't upload a File 2015-07-25 15:15:59 +02:00
CrushedPixel
caf0807e8b Only allow Alphanumerical characters and underscores when registering a new username
Use RegexUtils in GuiUploadFile
2015-07-25 14:53:03 +02:00
CrushedPixel
5427616ceb Reworked ReplayProcess to get rid of own Interpolation instances (as these can be handled by the KeyframeLists)
Camera Paths are now started from the current cursor position, using Ctrl-click the path always starts from the beginning
2015-07-25 14:11:06 +02:00
CrushedPixel
f91791ff9e Keyframes are now live edited (to allow for better fine tweaking of camera paths) 2015-07-24 18:00:01 +02:00
CrushedPixel
aae4af2062 Rework GuiVideoRenderer's Estimated Time Left to ignore the first frame (which took a long time to initialize) and be able to cope with multiple frames changing since the last update (Fast Rendering Mode) | https://trello.com/c/szQQycno/ 2015-07-24 13:09:32 +02:00
CrushedPixel
853c8a45e0 ComposedElements properly draw overlays of their underlying Elements 2015-07-23 22:41:48 +02:00
CrushedPixel
be8286ad9c Center and free the Mouse cursor whenever a GuiReplayOverlay is opened 2015-07-23 13:20:39 +02:00
CrushedPixel
eb57e7be2c Since we can't determine the file extension without parsing the actual ffmpeg arguments, we don't manually delete the destination video file when rendering but instead tell FFmpeg to overwrite this file if it already exists using the -y parameter. 2015-07-23 13:09:56 +02:00
CrushedPixel
6e9a77098a When clicking Time/Marker Keyframes, the time is now traveled with the "Please wait" screen 2015-07-22 23:13:21 +02:00
CrushedPixel
9d025cfae0 Synchronizing the Replay Timeline now respects the Speed Slider's value as a stretch factor. Shift key ignores that stretch value. 2015-07-21 23:58:56 +02:00
CrushedPixel
ff6b09dcba Adjust MARKER_DISTANCE value in GuiTimeline to avoid visual glitches 2015-07-21 03:44:33 +02:00
CrushedPixel
91399301f7 GuiReplayOverlay: The Keyframe Timeline should be zoomed in more initially
Do not reset Timeline whenever resetUI is called, only if "deep" reset
2015-07-21 03:44:11 +02:00
CrushedPixel
d3b07e6679 Do not restrict Camera Yaw Values in GuiEditKeyframe 2015-07-21 03:41:02 +02:00
CrushedPixel
585482a542 GuiArrowButton now draws from Texture instead of awful calculations 2015-07-20 02:03:01 +02:00
CrushedPixel
a435d5a271 Make GuiAdvancedButton only perform actions when enabled 2015-07-20 02:01:00 +02:00
CrushedPixel
9b76bcadcb Fixed NPE in GuiEditKeyframe caused by super.onInit() call being too late... Johni0702, did you even test that Gui? | https://trello.com/c/PmcdLgzV/ 2015-07-20 01:16:09 +02:00
CrushedPixel
702e02db65 Made calculation of Markers on GuiTimeline dynamic
Changed Real Timeline's Length to 30 minutes (request by multiple users)
2015-07-19 23:27:22 +02:00
johni0702
6422558028 General warning cleanup 2015-07-19 16:21:56 +02:00
johni0702
4f718ab302 Split GuiEditKeyframe into multiple classes depending on Keyframe type 2015-07-19 16:18:46 +02:00
CrushedPixel
c309929276 Fixed GuiReplaySpeedSlider and GuiVideoFramerateSlider overriding the wrong methods 2015-07-19 15:29:57 +02:00
CrushedPixel
d6c03644b8 Created GuiOutsideClickableElement interface for GuiElements that can be deselected/closed by clicking outside of them and properly forward mouse clicks to these elements 2015-07-19 14:42:12 +02:00
CrushedPixel
07fc3ceced Rewrote GuiRenderSettings to use the semi-new Gui System and have three instead of two pages (Video Settings, Advanced Settings, Command Line Settings) 2015-07-19 13:27:37 +02:00
CrushedPixel
0dc4ddca08 Reduced Constructor sets GuiAdvancedTextField's height 2015-07-19 13:27:37 +02:00
CrushedPixel
5087de8cd5 GuiColorPicker#hoveringPicker only returns true if the GuiElement is enabled 2015-07-19 13:27:37 +02:00
CrushedPixel
51814e143b Created dummy GuiOverlayElement interface for ComposedElement to determine which Elements to draw last
Added methods to retrieve position and size from a GuiElement
Added draw() method with option to override hovered boolean to GuiElement interface and implemented it. This is required for GuiAdvancedButtons which would be tinted blue (as if hovered) even though an overlying GuiElement (e.g. GuiDropdown) was hovered
2015-07-19 13:27:37 +02:00
CrushedPixel
33bed3e6a5 Made GuiReplaySpeedSlider a subclass of GuiAdvancedButton 2015-07-19 13:27:37 +02:00
CrushedPixel
23b77b2375 Right-Clicking a Position Keyframe teleports the Camera to that Keyframe's Position, Right-Clicking a Time Keyframe jumps to its Timestamp | https://trello.com/c/dL48nHyG/
DRYed closest Keyframe calculation on GuiKeyframeTimeline
DRYed closest Keyframe calculation on GuiMarkerTimeline
2015-07-19 13:27:37 +02:00
CrushedPixel
b4eb366688 Added more Constructors to GuiAdvancedTextField 2015-07-19 13:27:37 +02:00
CrushedPixel
b851632ffb added getWidth() method to GuiString which returns the width of the drawn String (calculated using FontRenderer#getStringWidth()) 2015-07-19 13:27:37 +02:00
CrushedPixel
3c7c1198cc Made GuiColorPicker a subclass of GuiAdvancedButton and call pickerToggled() method from own click handler methods 2015-07-19 13:27:36 +02:00
CrushedPixel
5b167351b0 ComposedElement initially sorts its elements and respects their elements' y position if both are Dropdowns 2015-07-19 13:27:36 +02:00
CrushedPixel
3299986e18 Made GuiVideoFramerateSlider a subclass of GuiAdvancedButton and added missing @Override annotations 2015-07-19 13:27:36 +02:00
CrushedPixel
708201c456 Added CheckBoxListener for GuiAdvancedCheckBox 2015-07-19 13:27:36 +02:00
johni0702
046b686837 Fix GuiDropdown not functioning in GuiReplayEditor 2015-07-18 17:50:43 +02:00
CrushedPixel
8f82ca5434 Implemented NoOverlay interface for some more GUIs 2015-07-17 16:21:23 +02:00
CrushedPixel
2f78dc5e27 Don't render indicators in GuiReplayOverlay if current screen implements NoOverlay 2015-07-17 16:21:02 +02:00
johni0702
fdd2c7ecf7 Allow all camera rotation axis to be ignored separately during rendering 2015-07-17 12:43:46 +02:00
CrushedPixel
d360ee5e2e Moved Add and Remove Buttons in GuiObjectManager 5px upwards 2015-07-17 12:27:55 +02:00