Commit Graph
320 Commits
Author SHA1 Message Date
Jonas Herzig c4d2be9e89 Make thread requirements of ReplayHandler#setup explicit and fix illegal usage 2019-07-08 09:53:47 +02:00
Jonas Herzig a0e397d1d5 Add support for camera roll on 1.7.10 2019-07-06 21:24:26 +02:00
Jonas Herzig 7299ecd0ce Fix main/offhand items of spectated player not being updated 2019-06-30 15:46:52 +02:00
Jonas Herzig 4fe2fee456 Fix constant equip sound when spectating player with head gear in replay 2019-06-30 15:46:09 +02:00
Jonas Herzig 7241036e61 AWT is forbidden on 1.13+ (this includes BufferedImage)
Instead use NativeImage on 1.13+ via newly introduced Image class.
See Image docs for details.

Also fixes an issue with thumbnail taking on 1.13+: The original
ScreenshotHelper method is now async, luckily there's a sync
variant and as a bonus it directly returns a NativeImage so we can
skip having to read the screenshot from disk.
2019-06-30 12:12:13 +02:00
Jonas Herzig c051b0ba3b Fix crash when quickly double-clicking the "Load"-replay button
This has previously been fixed for quadruple-clicking on the replay
itself but for some reason has not been fixed for simply double-clicking
the "Load" button.
2019-06-28 17:38:55 +02:00
Jonas Herzig 9320bd931b Fix container GUIs opening in 1.14+
Not sure why MC has yet another packet for those now but tbh idc.
2019-06-28 15:29:40 +02:00
Jonas Herzig 214da6ba59 Update to MC 1.14.3 2019-06-24 18:36:12 +02:00
Jonas Herzig e7deed73b5 Fix NPE when jumping to beginning of replay (before player is spawned) 2019-06-21 22:14:22 +02:00
Jonas Herzig 4213d37c76 Fix race-condition-induced dead lock on replay restart in 1.14+
MC clears it scheduled tasks on disconnect. If we don't wait for
that to have happened on the async sender, then we might loose
some of the initial handshake packets (resulting in a dead lock in
fabric's registry syncing code).
2019-06-21 22:06:04 +02:00
Jonas Herzig b7136e6d70 [1.14] Fix camera entity after restarting replay (same as 1eafc3f) 2019-06-20 18:44:10 +02:00
Jonas Herzig af55951f42 Introduce minimal mode (allows RM to run on unsupported MC versions)
by disabling various version-specific features (i.e. everything which
requires the ReplayStudio).
2019-06-20 18:44:10 +02:00
Jonas Herzig 357501e5db Qualify some (remapped) field references which the preprocesser ignored
The preprocessor should have complained about these but it didn't for
some reason. This commit isn't fixing any imminent bug, it's just
precautionary (and required to compile once the preprocessor is fixed).
2019-06-17 12:04:51 +02:00
Jonas Herzig 1eafc3fadf [1.14] Fix closing of replay not actually fully shutting down the world 2019-06-14 22:09:56 +02:00
Jonas Herzig 4dd02f8299 [1.14] Fix recording not always being stopped 2019-06-14 22:09:56 +02:00
Jonas Herzig d15fa6a3f9 Fix notice screen back buttons not being hooked up 2019-06-14 22:09:56 +02:00
Jonas Herzig a840cadfb7 Fix camera event handler staying registered leading to lack of HUD
When unloading the camera without killing it first (e.g. jumping back
in time), the event handler wouldn't ever get unregistered.
2019-06-14 22:09:56 +02:00
Jonas Herzig 2a08c11598 [1.7.10] Fix dead lock and NPE when jumping backwards in replays
The deadlock is a regression due to login phase inclusion.
Not sure about the NPE, it might have always existed.
2019-06-14 22:09:56 +02:00
Jonas Herzig c72392fb62 Fix various NPE while in replay on 1.8.9 or below
Nulling the world and calling runTick proved to be too volatile, so
instead let's try performing an early return from runTick via mixin.
2019-06-14 14:49:54 +02:00
Jonas Herzig 560982a14a Fix NPE when replay is closed but camera entity is still being rendered 2019-06-14 14:09:42 +02:00
Jonas Herzig 047f216f73 [1.7.10] Fix event handler visibility 2019-06-14 14:04:52 +02:00
Jonas Herzig 898e29d7a1 [1.7.10] Fix crash when opening replay
Looks to be two regressions, one due to login phase inclusion and one
due to simplification of InputReplayTimer.
2019-06-14 13:35:53 +02:00
Jonas Herzig d89655e69a Remove some more preprocessor statements in favor of remap 2019-05-28 11:25:46 +02:00
Jonas Herzig e7d96fca2a Fix lack of hand when spectating player in replay on 1.13+ 2019-05-25 19:45:53 +02:00
Jonas Herzig cfdc4b9713 Remove workaround for super-super-class remapping bug 2019-05-25 18:57:32 +02:00
Jonas Herzig 05aec482c9 Fix classic camera movement (regression from switching to lwjgl vecs) 2019-05-22 11:04:10 +02:00
Jonas Herzig cc9f2828c1 Fix world being set to null on replay restart when in sync mode 2019-05-21 11:04:38 +02:00
Jonas Herzig cf30f39b0e Be explicit about when we expect a login phase and when we don't 2019-05-20 18:57:20 +02:00
Jonas Herzig fc1d99f985 Fix mouse input to overlays while the replay is paused in 1.8-1.12.2 2019-05-20 17:34:07 +02:00
Jonas Herzig e5ee6a3d94 Update to MC 1.14.1
The ReplayStudio update also fixes an issue with reading the
PlayerListEntryPacket leading to NPEs during Quick Mode.
2019-05-20 14:59:31 +02:00
Jonas Herzig 0e086d91a6 Use own event distribution system instead abusing fabric's one 2019-05-20 14:59:13 +02:00
Jonas Herzig 7cbf7f7c94 Switch core to 1.14 (generated via ./gradlew :1.14:setCoreVersion) 2019-05-10 14:09:22 +02:00
Jonas Herzig d54905713f Fix mouse scroll and screenshot mixin targets 2019-05-07 12:48:36 +02:00
Jonas Herzig 2c843f4b45 Fix spectated player hand swinging 2019-05-06 23:31:35 +02:00
Jonas Herzig bd91d0d3bd Get rid of all the ATs in favor of Mixins 2019-05-06 22:46:21 +02:00
Jonas Herzig 220b22869a Fix replay initialization with login phase on 1.11.2 and below
While this commit also considerably simplifies/cleans the setup
method, the actual fix is that the networkManager is now added
to the channel pipeline with under the "packet_handler" key,
whereas before it was unnamed causing issues when transitioning
to the play state.
2019-05-04 19:22:41 +02:00
Jonas Herzig 3d009e45c7 Update to MC 1.14 / Fabric 2019-05-04 15:27:03 +02:00
Jonas Herzig 17fe5b345f Replace all ATs with Mixin on 1.13+ in preparation for Fabric 2019-04-26 12:04:33 +02:00
Jonas Herzig 2ee91515f7 Make use of the source remapping feature of The Preprocessor plugin 2019-04-24 15:38:34 +02:00
Jonas Herzig fa8f8f52aa Stop using @SneakyThrows since it breaks the JDT used for source remap 2019-04-24 13:41:06 +02:00
Jonas Herzig 73597dd031 Fix camera being reset to 0/0/0 when jumping in quick mode in 1.13 2019-03-27 11:04:41 +01:00
Jonas Herzig b8c892fcd4 Fix initialization of quick mode with login phase
Replay is always already past the login phase when quick mode is
enabled, hence the LoginSuccess packet must not be sent.
2019-03-27 10:58:37 +01:00
Jonas Herzig 27efc3c717 Fix pre-1.13 imports 2019-03-13 14:52:11 +01:00
Jonas Herzig 1d88ca044d Add "Edit" button to replay viewer gui 2019-03-12 20:11:07 +01:00
Jonas Herzig 51c073012e Re-work Replay Editor UI 2019-03-12 19:44:34 +01:00
Jonas Herzig 9d315134fc Fix packet re-encoding in pre-1.13 versions 2019-03-11 18:16:23 +01:00
Jonas Herzig 32de147ae2 Update ReplayStudio for dedicated replay cache
Also change artifact back from localMaven to jitpack
2019-03-11 17:51:53 +01:00
Jonas Herzig 79f02b5dfb Fix regression in MixinRenderItem redirect method signature 2019-03-11 15:48:11 +01:00
Jonas Herzig 0f3a6253e0 Complete all currently actionable 1.13.2 FIXMEs 2019-03-11 15:13:31 +01:00
Jonas Herzig f8fc3462e8 Get recording and replay working 2019-03-10 14:15:14 +01:00