Commit Graph

51 Commits

Author SHA1 Message Date
johni0702
fcbbbc9ea1 Add integration test. Run with ./gradlew runIntegrationTest 2017-04-14 17:31:15 +02:00
johni0702
fe6ded0143 Fix movement of keyframe via GuiEditKeyframe not updating selected keyframe
Selecting a keyframe, double clicking it to open the gui, changing the
timestamp, saving and then clicking the Add/Remove Keyframe button used to
crash the client. This is fixed by updating the selection whenever the time is
changed.
2017-04-13 18:18:17 +02:00
johni0702
c122d30065 Merge branch '1.8-path-segments' into 1.8 2017-01-29 11:12:06 +01:00
johni0702
db6b0ff5a6 Fix / by 0 when two spectator keyframes are closer than 50ms (fixes #60) 2017-01-28 13:12:28 +01:00
johni0702
f7460f9bf5 Re-enable time path after path playback (fixes #55) 2017-01-28 11:46:11 +01:00
johni0702
bdbffd5c33 Add Catmull-Rom spline interpolator to simplepathing 2017-01-28 11:03:59 +01:00
johni0702
5cbfd2884e Generate interpolator settings from InterpolatorType enum 2017-01-28 10:51:24 +01:00
johni0702
6095aef3d1 Fix loading and storing of default interpolator with settings 2017-01-28 10:33:45 +01:00
johni0702
2c64030459 Refactor simple pathing timeline logic into dedicated class with unit tests
Fix logic for user-set interpolators
2017-01-21 13:30:47 +01:00
CrushedPixel
cd16211309 Register new Property to imply that the path segment following a keyframe has a user-set interpolator instead of the default
Modified Keyframe GUI to allow for custom Path interpolator
2017-01-13 12:05:07 +01:00
CrushedPixel
d46589193e Fixed GuiEditPositionKeyframe's width to fit on all screen sizes
Centered all rows of GuiEditPositionKeyframe's VerticalLayout
2017-01-02 14:13:39 +01:00
johni0702
1b099f9ef6 Add render queue 2016-12-31 16:29:17 +01:00
johni0702
7ad19aa025 Add mod version and accepted MC version directly to the @Mod annotation 2016-12-30 12:10:43 +01:00
johni0702
655bea0b2d Replace @Mod.Instance with direct static references 2016-12-30 12:10:13 +01:00
johni0702
2c898a8192 Prevent rendering without sufficient keyframes (fixes #45) 2016-12-24 01:44:51 +01:00
johni0702
50b53fc6a3 Add a way to register key bindings triggered every render tick (fixes #31) 2016-11-24 21:31:21 +01:00
johni0702
9add2afec1 Deselect keyframe when pressing "V" aka. sync timelines (fixes #27) 2016-11-12 17:31:29 +01:00
johni0702
c8b71dc2cc Add tooltips to ingame buttons 2016-10-23 15:07:24 +02:00
johni0702
b240f8a276 Fix camera path always playing from the beginning regardless of ctrl key 2016-10-23 14:45:14 +02:00
johni0702
4805e5e9f5 Fix crash when setting two keyframes to the same time via the edit keyframe gui
The save button is now disabled if the configured time is already occupied.
2016-10-23 14:06:17 +02:00
johni0702
fcd4c0788e Add error popup when trying to play path with reversed time keyframes
Update jGui
2016-10-23 13:46:00 +02:00
johni0702
9c605baa7e Update jGui
Fix handling of ESC key in popups (fixes #17)

This commit changes the behavior of the escape key from closing the current
gui screen to only closing the current layer of the gui screen. E.g. pressing
ESC closes the popup but not the gui screen, it used to close both
2016-10-22 23:15:20 +02:00
johni0702
721fdc4d86 Allow moving the keyframe timeline cursor by dragging (fixes #18) 2016-10-22 22:52:27 +02:00
johni0702
1851e97346 Allow deletion of selected keyframes by pressing the DELETE key (fixes #19) 2016-10-22 22:33:11 +02:00
johni0702
ada460c384 Deselect keyframe when left clicking empty space on timeline (fixes #6) 2016-09-18 13:20:28 +02:00
johni0702
82246a5f48 Deselect Keyframe when timeline is changed (fixes #2) 2016-09-18 11:37:36 +02:00
johni0702
ef00c45068 Add linear interpolation to simplepathing 2016-09-03 13:32:17 +02:00
johni0702
26f2e76b9d Add path preview key binding 2016-09-02 21:48:26 +02:00
johni0702
5f1b610528 Add synchronize time key 2016-09-02 17:25:49 +02:00
johni0702
23bf44f9fb Add clear all keyframes key 2016-09-02 15:18:11 +02:00
johni0702
eb54d9abf3 Properly texture position keyframe button for spectator keyframes 2016-09-02 14:46:42 +02:00
johni0702
50ba370c1c Only allow a single keyframe to be selected
Fix crash when adding keyframe exactly on top of another
2016-09-02 14:23:40 +02:00
johni0702
cd1a53531b Force mouse to be visible during path playback even if game closes overlay gui 2016-09-02 13:36:26 +02:00
johni0702
a6efbe6a83 Right clicking on timeline applies clicked path at clicked time 2016-08-22 19:10:35 +02:00
johni0702
ff50f11abf Reset timeline after exiting replay 2016-08-22 19:10:35 +02:00
CrushedPixel
0ef4d0f3b8 The Path Preview's color is now based on the Camera Speed 2016-08-22 19:10:35 +02:00
johni0702
18da4361f9 Add guis for editing keyframes 2016-08-22 19:10:35 +02:00
johni0702
12d599f570 Allow dragging of keyframes in simplepathing 2016-08-22 19:10:15 +02:00
johni0702
fe8571712d Prevent overlay from being closed during path preview
Update jGui
2016-08-16 14:32:03 +02:00
johni0702
aab7c0e5e2 Automatically load entity position tracker on replay load (async) 2016-08-03 15:18:30 +02:00
johni0702
90aaa4378e Add path preview to simplepathing 2016-08-03 11:48:46 +02:00
johni0702
36c973d13a Add first person spectator keyframes to simplepathing 2016-08-01 23:02:55 +02:00
johni0702
de6e05d0f8 Include interpolator properties when serializing
Remove serialization requirement for Change classes
2016-07-31 13:53:12 +02:00
johni0702
372521f319 Add ReplayStudio as subproject
Move large parts of pathing to ReplayStudio
Upgrade to Java 8
2016-07-28 15:45:01 +02:00
johni0702
25582b6a51 Separate rendering into its own module 2016-06-14 18:16:42 +02:00
johni0702
4cf44b91f8 Fix (de)serialization of CubicSplineInterpolator in SimplePathing 2016-04-06 10:14:28 +02:00
johni0702
d97f95158c Add cubic spline interpolation used for position keyframes 2016-03-24 15:09:13 +01:00
johni0702
c123363a9f We cannot use transformAndConcat in this Guava version 2016-03-11 13:04:57 +01:00
johni0702
501b10406c Pressing shift when playing path ignores time keyframes 2016-03-10 13:31:28 +01:00
johni0702
45c411fd90 Split time and position path 2016-03-10 13:01:04 +01:00