Release 2.4.3
This commit is contained in:
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
* text=auto
|
||||||
@@ -178,20 +178,22 @@ val doRelease by tasks.registering {
|
|||||||
defaultTasks("shadowJar")
|
defaultTasks("shadowJar")
|
||||||
|
|
||||||
preprocess {
|
preprocess {
|
||||||
"1.16.1"(11601, "yarn") {
|
"1.16.2"(11602, "yarn") {
|
||||||
"1.15.2"(11502, "yarn") {
|
"1.16.1"(11601, "yarn") {
|
||||||
"1.14.4"(11404, "yarn", file("versions/mapping-fabric-1.15.2-1.14.4.txt")) {
|
"1.15.2"(11502, "yarn") {
|
||||||
"1.14.4-forge"(11404, "srg", file("versions/mapping-1.14.4-fabric-forge.txt")) {
|
"1.14.4"(11404, "yarn", file("versions/mapping-fabric-1.15.2-1.14.4.txt")) {
|
||||||
"1.12.2"(11202, "srg", file("versions/1.14.4-forge/mapping.txt")) {
|
"1.14.4-forge"(11404, "srg", file("versions/mapping-1.14.4-fabric-forge.txt")) {
|
||||||
"1.12.1"(11201, "srg") {
|
"1.12.2"(11202, "srg", file("versions/1.14.4-forge/mapping.txt")) {
|
||||||
"1.12"(11200, "srg") {
|
"1.12.1"(11201, "srg") {
|
||||||
"1.11.2"(11102, "srg", file("versions/1.12/mapping.txt")) {
|
"1.12"(11200, "srg") {
|
||||||
"1.11"(11100, "srg", file("versions/1.11.2/mapping.txt")) {
|
"1.11.2"(11102, "srg", file("versions/1.12/mapping.txt")) {
|
||||||
"1.10.2"(11002, "srg", file("versions/1.11/mapping.txt")) {
|
"1.11"(11100, "srg", file("versions/1.11.2/mapping.txt")) {
|
||||||
"1.9.4"(10904, "srg") {
|
"1.10.2"(11002, "srg", file("versions/1.11/mapping.txt")) {
|
||||||
"1.8.9"(10809, "srg", file("versions/1.9.4/mapping.txt")) {
|
"1.9.4"(10904, "srg") {
|
||||||
"1.8"(10800, "srg", file("versions/1.8.9/mapping.txt")) {
|
"1.8.9"(10809, "srg", file("versions/1.9.4/mapping.txt")) {
|
||||||
"1.7.10"(10710, "srg", file("versions/1.8/mapping.txt"))
|
"1.8"(10800, "srg", file("versions/1.8.9/mapping.txt")) {
|
||||||
|
"1.7.10"(10710, "srg", file("versions/1.8/mapping.txt"))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ To access the **Replay Mod Settings** from the Main Menu click the **"Replay Vie
|
|||||||
While playing, you can click the 'Mods' button in the Pause screen to reach **Replay Mod Settings** if you use Minecraft 1.12.2 and below, or have the mod [Mod Menu](https://www.curseforge.com/minecraft/mc-mods/modmenu) installed.
|
While playing, you can click the 'Mods' button in the Pause screen to reach **Replay Mod Settings** if you use Minecraft 1.12.2 and below, or have the mod [Mod Menu](https://www.curseforge.com/minecraft/mc-mods/modmenu) installed.
|
||||||
|
|
||||||
When in a Replay, you can either bind a hotkey to the **Replay Mod Settings** in Minecraft's Control settings
|
When in a Replay, you can either bind a hotkey to the **Replay Mod Settings** in Minecraft's Control settings
|
||||||
or use the hotkey GUI by clicking on the arrow button in the lower left corner.
|
or use the hotkey GUI by clicking on the hamburger button in the lower left corner.
|
||||||
|
|
||||||
## Accounts [accounts]
|
## Accounts [accounts]
|
||||||
In previous versions of ReplayMod we used accounts to deliver videos to the **Replay Center**. This has since been discontinued and with that, so have the accounts.
|
In previous versions of ReplayMod we used accounts to deliver videos to the **Replay Center**. This has since been discontinued and with that, so have the accounts.
|
||||||
@@ -439,6 +439,9 @@ If you have a Replay in a dark setting (for example at nighttime, or in a cave)
|
|||||||
This works as a replacement for the **Night Vision Potion Effect**, without the side effect of a weird sky color.
|
This works as a replacement for the **Night Vision Potion Effect**, without the side effect of a weird sky color.
|
||||||
|
|
||||||
## Quick Mode [quickmode] (Minecraft 1.9 and up)
|
## Quick Mode [quickmode] (Minecraft 1.9 and up)
|
||||||
|

|
||||||
|
In **Quick Mode**, this clock symbol is displayed in the lower right corner of the screen.
|
||||||
|
|
||||||
When you first enable **Quick Mode** in a replay, an internal reference of certain entity and block properties is stored for quick access, allowing for faster navigation in the **Replay Timeline**.
|
When you first enable **Quick Mode** in a replay, an internal reference of certain entity and block properties is stored for quick access, allowing for faster navigation in the **Replay Timeline**.
|
||||||
As a side effect, certain features like particles and second skin layers will not be rendered in the preview.
|
As a side effect, certain features like particles and second skin layers will not be rendered in the preview.
|
||||||
By default, **Quick Mode** is toggled with `Q`.
|
By default, **Quick Mode** is toggled with `Q`.
|
||||||
|
|||||||
BIN
docs/img/quickmode-icon.jpg
Normal file
BIN
docs/img/quickmode-icon.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
BIN
docs/img/quickmode-icon.png
Normal file
BIN
docs/img/quickmode-icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
2
jGui
2
jGui
Submodule jGui updated: 037d54f83a...bf00dcf2ce
@@ -28,7 +28,8 @@ val jGuiVersions = listOf(
|
|||||||
"1.14.4-forge",
|
"1.14.4-forge",
|
||||||
"1.14.4",
|
"1.14.4",
|
||||||
"1.15.2",
|
"1.15.2",
|
||||||
"1.16.1"
|
"1.16.1",
|
||||||
|
"1.16.2"
|
||||||
)
|
)
|
||||||
val replayModVersions = listOf(
|
val replayModVersions = listOf(
|
||||||
"1.7.10",
|
"1.7.10",
|
||||||
@@ -44,7 +45,8 @@ val replayModVersions = listOf(
|
|||||||
"1.14.4-forge",
|
"1.14.4-forge",
|
||||||
"1.14.4",
|
"1.14.4",
|
||||||
"1.15.2",
|
"1.15.2",
|
||||||
"1.16.1"
|
"1.16.1",
|
||||||
|
"1.16.2"
|
||||||
)
|
)
|
||||||
|
|
||||||
include(":jGui")
|
include(":jGui")
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
//#if FABRIC>=1
|
||||||
|
package com.replaymod.core;
|
||||||
|
|
||||||
|
import net.fabricmc.loader.api.entrypoint.PreLaunchEntrypoint;
|
||||||
|
|
||||||
|
// Required for ReplayModMMLauncher.
|
||||||
|
//
|
||||||
|
// Chain-loading mixin configurations only works when the first class that is loaded doesn't have any mixins which
|
||||||
|
// target it. The first class would ordinarily be MC's Main but there are valid use cases for targeting it, see
|
||||||
|
// e.g. https://github.com/ReplayMod/ReplayMod/issues/327
|
||||||
|
// So, instead of relying on the bad assumption that Main doesn't have any mixins, we'll instead register this
|
||||||
|
// dummy pre-launch entry point which is practically guaranteed to not have any mixins and gets called before Main.
|
||||||
|
public class DummyChainLoadEntryPoint implements PreLaunchEntrypoint {
|
||||||
|
@Override
|
||||||
|
public void onPreLaunch() {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//#endif
|
||||||
@@ -23,7 +23,7 @@ import com.replaymod.core.events.PostRenderCallback;
|
|||||||
public class FullBrightness extends EventRegistrations implements Extra {
|
public class FullBrightness extends EventRegistrations implements Extra {
|
||||||
private ReplayModReplay module;
|
private ReplayModReplay module;
|
||||||
|
|
||||||
private final IGuiImage indicator = new GuiImage().setTexture(ReplayMod.TEXTURE, 90, 20, 19, 13).setSize(19, 13);
|
private final IGuiImage indicator = new GuiImage().setTexture(ReplayMod.TEXTURE, 90, 20, 19, 16).setSize(19, 16);
|
||||||
|
|
||||||
private MinecraftClient mc;
|
private MinecraftClient mc;
|
||||||
private boolean active;
|
private boolean active;
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ public class HotkeyButtons extends EventRegistrations implements Extra {
|
|||||||
|
|
||||||
public Gui(ReplayMod mod, GuiReplayOverlay overlay) {
|
public Gui(ReplayMod mod, GuiReplayOverlay overlay) {
|
||||||
toggleButton = new GuiTexturedButton(overlay).setSize(20, 20)
|
toggleButton = new GuiTexturedButton(overlay).setSize(20, 20)
|
||||||
.setTexture(ReplayMod.TEXTURE, ReplayMod.TEXTURE_SIZE).setTexturePosH(0, 0)
|
.setTexture(ReplayMod.TEXTURE, ReplayMod.TEXTURE_SIZE).setTexturePosH(0, 120)
|
||||||
.onClick(new Runnable() {
|
.onClick(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|||||||
52
src/main/java/com/replaymod/extras/QuickMode.java
Normal file
52
src/main/java/com/replaymod/extras/QuickMode.java
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
package com.replaymod.extras;
|
||||||
|
|
||||||
|
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.events.ReplayOpenedCallback;
|
||||||
|
import com.replaymod.replay.gui.overlay.GuiReplayOverlay;
|
||||||
|
import de.johni0702.minecraft.gui.element.GuiImage;
|
||||||
|
import de.johni0702.minecraft.gui.layout.HorizontalLayout;
|
||||||
|
import de.johni0702.minecraft.gui.utils.EventRegistrations;
|
||||||
|
|
||||||
|
public class QuickMode extends EventRegistrations implements Extra {
|
||||||
|
private ReplayModReplay module;
|
||||||
|
|
||||||
|
private final GuiImage indicator = new GuiImage().setTexture(ReplayMod.TEXTURE, 40, 100, 16, 16).setSize(16, 16);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void register(final ReplayMod mod) {
|
||||||
|
this.module = ReplayModReplay.instance;
|
||||||
|
|
||||||
|
mod.getKeyBindingRegistry().registerKeyBinding("replaymod.input.quickmode", Keyboard.KEY_Q, () -> {
|
||||||
|
ReplayHandler replayHandler = module.getReplayHandler();
|
||||||
|
if (replayHandler == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
replayHandler.getReplaySender().setSyncModeAndWait();
|
||||||
|
mod.runLater(() -> {
|
||||||
|
replayHandler.ensureQuickModeInitialized(() -> {
|
||||||
|
boolean enabled = !replayHandler.isQuickMode();
|
||||||
|
updateIndicator(replayHandler.getOverlay(), enabled);
|
||||||
|
replayHandler.setQuickMode(enabled);
|
||||||
|
replayHandler.getReplaySender().setAsyncMode(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}, true);
|
||||||
|
|
||||||
|
register();
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
on(ReplayOpenedCallback.EVENT, replayHandler -> updateIndicator(replayHandler.getOverlay(), replayHandler.isQuickMode()));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateIndicator(GuiReplayOverlay overlay, boolean enabled) {
|
||||||
|
if (enabled) {
|
||||||
|
overlay.statusIndicatorPanel.addElements(new HorizontalLayout.Data(1), indicator);
|
||||||
|
} else {
|
||||||
|
overlay.statusIndicatorPanel.removeElement(indicator);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -23,6 +23,7 @@ public class ReplayModExtras implements Module {
|
|||||||
PlayerOverview.class,
|
PlayerOverview.class,
|
||||||
YoutubeUpload.class,
|
YoutubeUpload.class,
|
||||||
FullBrightness.class,
|
FullBrightness.class,
|
||||||
|
QuickMode.class,
|
||||||
HotkeyButtons.class,
|
HotkeyButtons.class,
|
||||||
OpenEyeExtra.class
|
OpenEyeExtra.class
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -48,8 +48,16 @@ public abstract class MixinWorldClient extends World implements RecordingEventHa
|
|||||||
private MinecraftClient client;
|
private MinecraftClient client;
|
||||||
|
|
||||||
//#if MC>=11600
|
//#if MC>=11600
|
||||||
//$$ protected MixinWorldClient(MutableWorldProperties mutableWorldProperties, RegistryKey<World> registryKey, RegistryKey<DimensionType> registryKey2, DimensionType dimensionType, Supplier<Profiler> profiler, boolean bl, boolean bl2, long l) {
|
//$$ protected MixinWorldClient(MutableWorldProperties mutableWorldProperties, RegistryKey<World> registryKey,
|
||||||
//$$ super(mutableWorldProperties, registryKey, registryKey2, dimensionType, profiler, bl, bl2, l);
|
//#if MC<11602
|
||||||
|
//$$ RegistryKey<DimensionType> registryKey2,
|
||||||
|
//#endif
|
||||||
|
//$$ DimensionType dimensionType, Supplier<Profiler> profiler, boolean bl, boolean bl2, long l) {
|
||||||
|
//$$ super(mutableWorldProperties, registryKey,
|
||||||
|
//#if MC<11602
|
||||||
|
//$$ registryKey2,
|
||||||
|
//#endif
|
||||||
|
//$$ dimensionType, profiler, bl, bl2, l);
|
||||||
//$$ }
|
//$$ }
|
||||||
//#else
|
//#else
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
@@ -109,7 +117,11 @@ public abstract class MixinWorldClient extends World implements RecordingEventHa
|
|||||||
|
|
||||||
// Same goes for level events (also called effects). E.g. door open, block break, etc.
|
// Same goes for level events (also called effects). E.g. door open, block break, etc.
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
|
//#if MC>=11600
|
||||||
|
//$$ @Inject(method = "syncWorldEvent", at = @At("HEAD"))
|
||||||
|
//#else
|
||||||
@Inject(method = "playLevelEvent", at = @At("HEAD"))
|
@Inject(method = "playLevelEvent", at = @At("HEAD"))
|
||||||
|
//#endif
|
||||||
private void playLevelEvent (PlayerEntity player, int type, BlockPos pos, int data, CallbackInfo ci) {
|
private void playLevelEvent (PlayerEntity player, int type, BlockPos pos, int data, CallbackInfo ci) {
|
||||||
//#else
|
//#else
|
||||||
//$$ // These are handled in the World class, so we override the method in WorldClient and add our special handling.
|
//$$ // These are handled in the World class, so we override the method in WorldClient and add our special handling.
|
||||||
|
|||||||
@@ -625,7 +625,11 @@ public class FullReplaySender extends ChannelDuplexHandler implements ReplaySend
|
|||||||
false,
|
false,
|
||||||
//#if MC>=11600
|
//#if MC>=11600
|
||||||
//$$ packet.method_29443(),
|
//$$ packet.method_29443(),
|
||||||
|
//#if MC>=11602
|
||||||
|
//$$ (net.minecraft.util.registry.DynamicRegistryManager.Impl) packet.getRegistryManager(),
|
||||||
|
//#else
|
||||||
//$$ (net.minecraft.util.registry.RegistryTracker.Modifiable) packet.getDimension(),
|
//$$ (net.minecraft.util.registry.RegistryTracker.Modifiable) packet.getDimension(),
|
||||||
|
//#endif
|
||||||
//$$ packet.method_29444(),
|
//$$ packet.method_29444(),
|
||||||
//$$ packet.getDimensionId(),
|
//$$ packet.getDimensionId(),
|
||||||
//#else
|
//#else
|
||||||
|
|||||||
@@ -39,6 +39,11 @@ import java.io.IOException;
|
|||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
//#if MC>=11602
|
||||||
|
//$$ import net.minecraft.util.registry.DynamicRegistryManager;
|
||||||
|
//$$ import net.minecraft.util.registry.Registry;
|
||||||
|
//#endif
|
||||||
|
|
||||||
//#if MC>=11600
|
//#if MC>=11600
|
||||||
//$$ import net.minecraft.world.World;
|
//$$ import net.minecraft.world.World;
|
||||||
//#else
|
//#else
|
||||||
@@ -195,7 +200,11 @@ public class QuickReplaySender extends ChannelHandlerAdapter implements ReplaySe
|
|||||||
replay.reset();
|
replay.reset();
|
||||||
ctx.fireChannelRead(new PlayerRespawnS2CPacket(
|
ctx.fireChannelRead(new PlayerRespawnS2CPacket(
|
||||||
//#if MC>=11600
|
//#if MC>=11600
|
||||||
|
//#if MC>=11602
|
||||||
|
//$$ DimensionType.addRegistryDefaults(new DynamicRegistryManager.Impl()).get(Registry.DIMENSION_TYPE_KEY).get(DimensionType.OVERWORLD_REGISTRY_KEY),
|
||||||
|
//#else
|
||||||
//$$ DimensionType.OVERWORLD_REGISTRY_KEY,
|
//$$ DimensionType.OVERWORLD_REGISTRY_KEY,
|
||||||
|
//#endif
|
||||||
//$$ World.OVERWORLD,
|
//$$ World.OVERWORLD,
|
||||||
//$$ 0,
|
//$$ 0,
|
||||||
//$$ GameMode.SPECTATOR,
|
//$$ GameMode.SPECTATOR,
|
||||||
|
|||||||
@@ -125,17 +125,6 @@ public class ReplayModReplay implements Module {
|
|||||||
}
|
}
|
||||||
}, true);
|
}, true);
|
||||||
|
|
||||||
registry.registerKeyBinding("replaymod.input.quickmode", Keyboard.KEY_Q, () -> {
|
|
||||||
if (replayHandler != null) {
|
|
||||||
replayHandler.getReplaySender().setSyncModeAndWait();
|
|
||||||
core.runLater(() ->
|
|
||||||
replayHandler.ensureQuickModeInitialized(() -> {
|
|
||||||
replayHandler.setQuickMode(!replayHandler.isQuickMode());
|
|
||||||
replayHandler.getReplaySender().setAsyncMode(true);
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
}, true);
|
|
||||||
|
|
||||||
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.rollclockwise", Keyboard.KEY_L, () -> {
|
core.getKeyBindingRegistry().registerKeyBinding("replaymod.input.rollclockwise", Keyboard.KEY_L, () -> {
|
||||||
// Noop, actual handling logic in CameraEntity#update
|
// Noop, actual handling logic in CameraEntity#update
|
||||||
}, true);
|
}, true);
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ public class GuiReplayOverlay extends AbstractGuiOverlay<GuiReplayOverlay> {
|
|||||||
* This is not used by the replay module itself but may be used by other modules/extras to show
|
* This is not used by the replay module itself but may be used by other modules/extras to show
|
||||||
* when they're active.
|
* when they're active.
|
||||||
*/
|
*/
|
||||||
public final GuiPanel statusIndicatorPanel = new GuiPanel(this).setSize(100, 20)
|
public final GuiPanel statusIndicatorPanel = new GuiPanel(this).setSize(100, 16)
|
||||||
.setLayout(new HorizontalLayout(HorizontalLayout.Alignment.RIGHT).setSpacing(5));
|
.setLayout(new HorizontalLayout(HorizontalLayout.Alignment.RIGHT).setSpacing(5));
|
||||||
|
|
||||||
private final EventHandler eventHandler = new EventHandler();
|
private final EventHandler eventHandler = new EventHandler();
|
||||||
@@ -78,7 +78,7 @@ public class GuiReplayOverlay extends AbstractGuiOverlay<GuiReplayOverlay> {
|
|||||||
pos(topPanel, 10, 10);
|
pos(topPanel, 10, 10);
|
||||||
size(topPanel, width - 20, 20);
|
size(topPanel, width - 20, 20);
|
||||||
|
|
||||||
pos(statusIndicatorPanel, width / 2, height - 25);
|
pos(statusIndicatorPanel, width / 2, height - 21);
|
||||||
width(statusIndicatorPanel, width / 2 - 5);
|
width(statusIndicatorPanel, width / 2 - 5);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -51,7 +51,11 @@ public abstract class MixinPlayerControllerMP {
|
|||||||
//#endif
|
//#endif
|
||||||
|
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
|
//#if MC>=11602
|
||||||
|
//$$ @Inject(method = "createPlayer(Lnet/minecraft/client/world/ClientWorld;Lnet/minecraft/stat/StatHandler;Lnet/minecraft/client/recipebook/ClientRecipeBook;ZZ)Lnet/minecraft/client/network/ClientPlayerEntity;", at=@At("HEAD"), cancellable = true)
|
||||||
|
//#else
|
||||||
@Inject(method = "createPlayer", at=@At("HEAD"), cancellable = true)
|
@Inject(method = "createPlayer", at=@At("HEAD"), cancellable = true)
|
||||||
|
//#endif
|
||||||
private void replayModReplay_createReplayCamera(
|
private void replayModReplay_createReplayCamera(
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
ClientWorld worldIn,
|
ClientWorld worldIn,
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 12 KiB |
@@ -25,6 +25,9 @@
|
|||||||
"modmenu": [
|
"modmenu": [
|
||||||
"com.replaymod.core.gui.ModMenuApiImpl"
|
"com.replaymod.core.gui.ModMenuApiImpl"
|
||||||
],
|
],
|
||||||
|
"preLaunch": [
|
||||||
|
"com.replaymod.core.DummyChainLoadEntryPoint"
|
||||||
|
],
|
||||||
"mm:early_risers": [
|
"mm:early_risers": [
|
||||||
"com.replaymod.core.ReplayModMMLauncher"
|
"com.replaymod.core.ReplayModMMLauncher"
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
2.4.2
|
2.4.3
|
||||||
|
|||||||
0
versions/1.16.2/.gitkeep
Normal file
0
versions/1.16.2/.gitkeep
Normal file
@@ -226,21 +226,25 @@ dependencies {
|
|||||||
11404: '1.14.4',
|
11404: '1.14.4',
|
||||||
11502: '1.15.2',
|
11502: '1.15.2',
|
||||||
11601: '1.16.1',
|
11601: '1.16.1',
|
||||||
|
11602: '1.16.2',
|
||||||
][mcVersion]
|
][mcVersion]
|
||||||
mappings 'net.fabricmc:yarn:' + [
|
mappings 'net.fabricmc:yarn:' + [
|
||||||
11404: '1.14.4+build.16',
|
11404: '1.14.4+build.16',
|
||||||
11502: '1.15.2+build.14',
|
11502: '1.15.2+build.14',
|
||||||
11601: '1.16.1+build.17:v2',
|
11601: '1.16.1+build.17:v2',
|
||||||
|
11602: '1.16.2+build.1:v2',
|
||||||
][mcVersion]
|
][mcVersion]
|
||||||
modCompile 'net.fabricmc:fabric-loader:' + [
|
modCompile 'net.fabricmc:fabric-loader:' + [
|
||||||
11404: '0.7.8+build.189',
|
11404: '0.7.8+build.189',
|
||||||
11502: '0.7.8+build.189',
|
11502: '0.7.8+build.189',
|
||||||
11601: '0.8.8+build.202',
|
11601: '0.8.8+build.202',
|
||||||
|
11602: '0.9.1+build.205',
|
||||||
][mcVersion]
|
][mcVersion]
|
||||||
def fabricApiVersion = [
|
def fabricApiVersion = [
|
||||||
11404: '0.4.3+build.247-1.14',
|
11404: '0.4.3+build.247-1.14',
|
||||||
11502: '0.5.1+build.294-1.15',
|
11502: '0.5.1+build.294-1.15',
|
||||||
11601: '0.14.0+build.371-1.16',
|
11601: '0.14.0+build.371-1.16',
|
||||||
|
11602: '0.17.1+build.394-1.16',
|
||||||
][mcVersion]
|
][mcVersion]
|
||||||
def fabricApiModules = [
|
def fabricApiModules = [
|
||||||
"api-base",
|
"api-base",
|
||||||
@@ -292,7 +296,7 @@ dependencies {
|
|||||||
|
|
||||||
shadow 'com.github.ReplayMod.JavaBlend:2.79.0:a0696f8'
|
shadow 'com.github.ReplayMod.JavaBlend:2.79.0:a0696f8'
|
||||||
|
|
||||||
shadow "com.github.ReplayMod:ReplayStudio:20b5183", shadeExclusions
|
shadow "com.github.ReplayMod:ReplayStudio:bc8baba", shadeExclusions
|
||||||
|
|
||||||
implementation(jGui){
|
implementation(jGui){
|
||||||
transitive = false // FG 1.2 puts all MC deps into the compile configuration and we don't want to shade those
|
transitive = false // FG 1.2 puts all MC deps into the compile configuration and we don't want to shade those
|
||||||
@@ -301,7 +305,10 @@ dependencies {
|
|||||||
shadow 'com.github.ReplayMod:lwjgl-utils:27dcd66'
|
shadow 'com.github.ReplayMod:lwjgl-utils:27dcd66'
|
||||||
|
|
||||||
if (FABRIC) {
|
if (FABRIC) {
|
||||||
if (mcVersion >= 11600) {
|
if (mcVersion >= 11602) {
|
||||||
|
// TODO re-add to runtime once available
|
||||||
|
modCompileOnly 'io.github.prospector:modmenu:1.14.0+build.24'
|
||||||
|
} else if (mcVersion >= 11600) {
|
||||||
modCompile 'io.github.prospector:modmenu:1.14.0+build.24'
|
modCompile 'io.github.prospector:modmenu:1.14.0+build.24'
|
||||||
} else {
|
} else {
|
||||||
modCompile 'io.github.prospector.modmenu:ModMenu:1.6.2-92'
|
modCompile 'io.github.prospector.modmenu:ModMenu:1.6.2-92'
|
||||||
|
|||||||
Reference in New Issue
Block a user