Merge branch 'stable' into develop-1.7.10
This commit is contained in:
@@ -30,24 +30,24 @@ cddfc1a07301f2fa07a5e1b6897e455d397d6d5c547d45082c267a1ee2c75f70 /com/github/Mod
|
||||
7191124b8491d36b9fc1eb1a4e0f8ef710a4b98e27dde92854c24d45457fd9d0 /com/github/ModCoderPack/MCInjector/05aa80e/MCInjector-05aa80e.pom
|
||||
ecf57aab63509ec0ce3937c2215bc3a2e3cb6357cd11095978db18bd3251731a /com/github/ModCoderPack/MCInjector/7258466/MCInjector-7258466.jar
|
||||
dc7ed1f4f0ddd8f5ce3b449db944907a5eb2855dbbbc59b08dad1247ebafba33 /com/github/ModCoderPack/MCInjector/7258466/MCInjector-7258466.pom
|
||||
6ebdbbf19772568d89e9655b5d64c26b1050d9326c8c2e61f64ab33b9650d56f /com/github/ReplayMod/ReplayStudio/1.10.2/24a6ad9/1.10.2-24a6ad9.jar
|
||||
ab6a1dfa190ddfe8db5258c32363a9fee8e273b43478b948c8b79163d305b523 /com/github/ReplayMod/ReplayStudio/1.10.2/24a6ad9/1.10.2-24a6ad9.pom
|
||||
01e9dee0e8ce43579f0cd9a360e9059d1443653e964dbe98ba5ac726657f1098 /com/github/ReplayMod/ReplayStudio/1.11.2/24a6ad9/1.11.2-24a6ad9.jar
|
||||
e688800f492d466b3edf21e1d3a8e7e33f02094bc00af41a938a1901cb954a3d /com/github/ReplayMod/ReplayStudio/1.11.2/24a6ad9/1.11.2-24a6ad9.pom
|
||||
e9a6a2d1ced27eb8c79c822fff17a2526b80a46565db7d80c291786e72aab2b6 /com/github/ReplayMod/ReplayStudio/1.11/24a6ad9/1.11-24a6ad9.jar
|
||||
ec2508e54ebf32139af2de851f5ff953c5f9f20f8d0ad2a32d967ca36a3df170 /com/github/ReplayMod/ReplayStudio/1.11/24a6ad9/1.11-24a6ad9.pom
|
||||
be3a00aeb83309589a5eb5f362c8be4c2a7618254bd83e4ad5e4c68979594134 /com/github/ReplayMod/ReplayStudio/1.12.1/24a6ad9/1.12.1-24a6ad9.jar
|
||||
5b71b67fcfc0f9b841544fbdfc5341782e0b872137b7e6c580eeb255849b6ddd /com/github/ReplayMod/ReplayStudio/1.12.1/24a6ad9/1.12.1-24a6ad9.pom
|
||||
a3b7366e9464df440b7d35aa763514d0d4f3561352ff46fd20d4fbd72199d9e4 /com/github/ReplayMod/ReplayStudio/1.12.2/24a6ad9/1.12.2-24a6ad9.jar
|
||||
648c604e39a264df7fa7ec2a2e23316c6603ef0514f97ed2469e9fa0df8b2f88 /com/github/ReplayMod/ReplayStudio/1.12.2/24a6ad9/1.12.2-24a6ad9.pom
|
||||
e879a28f1214a31a713a5e913a340c800924af8cef874f4c4b6fe87dfd168a5a /com/github/ReplayMod/ReplayStudio/1.12/24a6ad9/1.12-24a6ad9.jar
|
||||
f76387ad6cf25314254e09a46fa4d3cf1316e73cc8d7dcc519ff043cedf5e011 /com/github/ReplayMod/ReplayStudio/1.12/24a6ad9/1.12-24a6ad9.pom
|
||||
7bbfd0a7208a54a6504fcc55ab1923657290eb5f875b8a7a0e90b38c30ac3bf2 /com/github/ReplayMod/ReplayStudio/1.7.10/24a6ad9/1.7.10-24a6ad9.jar
|
||||
0859e94b2301b922a5b3c708af5cfd3a5258472f0e96c1d5fa03d46ae1904a0d /com/github/ReplayMod/ReplayStudio/1.7.10/24a6ad9/1.7.10-24a6ad9.pom
|
||||
a8004aa2fe87255b9de92d100347a76eda0c4922a082e1656a402825c21f29d4 /com/github/ReplayMod/ReplayStudio/1.8/24a6ad9/1.8-24a6ad9.jar
|
||||
826c406986c4ffd5d2abd0b9c0b8184cdf65ac14aa1c8eb885c2ee7b34b9bc2d /com/github/ReplayMod/ReplayStudio/1.8/24a6ad9/1.8-24a6ad9.pom
|
||||
2d828c6bf155a91c345b21202fe03d8ceaa5c3ad8db0e0c0cc8fde77adc465f6 /com/github/ReplayMod/ReplayStudio/1.9.4/24a6ad9/1.9.4-24a6ad9.jar
|
||||
c5be0021f31bfd1e9c792b24f2811816430450b91e98452cef33392dda00696e /com/github/ReplayMod/ReplayStudio/1.9.4/24a6ad9/1.9.4-24a6ad9.pom
|
||||
2a0317d30d61fb285cc53fa20e2e70f8415cd450bd7dd27316ede1958bd0026a /com/github/ReplayMod/ReplayStudio/1.10.2/464e18a/1.10.2-464e18a.jar
|
||||
4d23573378855cb19ed826fbf64af7933176009968c346a0dc90db0aaf0b1085 /com/github/ReplayMod/ReplayStudio/1.10.2/464e18a/1.10.2-464e18a.pom
|
||||
0c2fc451112aea29afea627c6f960c6c2d802bf9ce5171e13141d765cabd1bd3 /com/github/ReplayMod/ReplayStudio/1.11.2/464e18a/1.11.2-464e18a.jar
|
||||
05897bc9d94d22c632d2f92acb61d3b5a4524bb2c87e084c843d48ec2859b5d0 /com/github/ReplayMod/ReplayStudio/1.11.2/464e18a/1.11.2-464e18a.pom
|
||||
72a34922cd66c11c4828ea5a6a59a22c7e84704eba6d6569dcb7946c861c6150 /com/github/ReplayMod/ReplayStudio/1.11/464e18a/1.11-464e18a.jar
|
||||
652eebb442f3735b6dd826f1dfc0b9b0a4a15cc5cbc8838829680593cd1d329c /com/github/ReplayMod/ReplayStudio/1.11/464e18a/1.11-464e18a.pom
|
||||
09b16315282ff3d230473ef8c1ebc8ecbedecc9e1cfacc11a25c8cf33804df58 /com/github/ReplayMod/ReplayStudio/1.12.1/464e18a/1.12.1-464e18a.jar
|
||||
1fce1aed0a6d8ec2d98963657affc067cb4e07c919dcb82b08c67567375da4fd /com/github/ReplayMod/ReplayStudio/1.12.1/464e18a/1.12.1-464e18a.pom
|
||||
09f3bb46fcfe5717824ef98b1fe1ddd168dbaab9bb9733638b372eafdb38e8ea /com/github/ReplayMod/ReplayStudio/1.12.2/464e18a/1.12.2-464e18a.jar
|
||||
8cfc8fadf77620baea61e9939466ec09c352628867562039fd3fb0d19077de7d /com/github/ReplayMod/ReplayStudio/1.12.2/464e18a/1.12.2-464e18a.pom
|
||||
5a2768d35614ff979587e7cbfb1e47ee583d6abae5c37d987d092d937ddab1df /com/github/ReplayMod/ReplayStudio/1.12/464e18a/1.12-464e18a.jar
|
||||
9a3839e479d182c36e0d1c50c5546f4ab2be874c0edf391b8c2da06f0f826b0d /com/github/ReplayMod/ReplayStudio/1.12/464e18a/1.12-464e18a.pom
|
||||
4608a10f2be2d7d85b63497c0ef1b5c8b6240b219de72507a375349f4060a7c6 /com/github/ReplayMod/ReplayStudio/1.7.10/464e18a/1.7.10-464e18a.jar
|
||||
932c417dead3f4fde2518ebd97bcb7911f5bdccc015bff8f8a02bbd0e0652150 /com/github/ReplayMod/ReplayStudio/1.7.10/464e18a/1.7.10-464e18a.pom
|
||||
3e71190a4715c3b75c5cc0c370446ddcd140d0aed81f699a1bb8613d22828060 /com/github/ReplayMod/ReplayStudio/1.8/464e18a/1.8-464e18a.jar
|
||||
25eec3876744c665225511ab1d6f786e2a763b18e99c29305cabed06187868e5 /com/github/ReplayMod/ReplayStudio/1.8/464e18a/1.8-464e18a.pom
|
||||
12aab719873f618d2d9fecd39792b95391d33f2a63e59a6def4683603c941234 /com/github/ReplayMod/ReplayStudio/1.9.4/464e18a/1.9.4-464e18a.jar
|
||||
02fff38653316815a7b0208959fa58d92ccd4ec9eef51b2c9d4b0d0383a72361 /com/github/ReplayMod/ReplayStudio/1.9.4/464e18a/1.9.4-464e18a.pom
|
||||
bfdcda4cbf23f28392384818a1417c2d6df687e15ce77530ef96381393102f8a /com/github/SpongePowered/MixinGradle/dcfaf61/MixinGradle-dcfaf61.jar
|
||||
3552e0c04817d91d1b6671a051d0e1d952c8b6a8eec57b54e829de9fa3ddf002 /com/github/SpongePowered/MixinGradle/dcfaf61/MixinGradle-dcfaf61.pom
|
||||
c6ebd74cd6108b8c372c95b842725ee5bd6d3303ba26cb00f18bc92f80b47956 /com/github/tony19/named-regexp/0.2.3/named-regexp-0.2.3.jar
|
||||
|
||||
@@ -44,7 +44,7 @@ popd # Back to root
|
||||
|
||||
./gradlew -Preprod $PROXY_SETTINGS -I gradle/reprod/init.gradle "$@"
|
||||
|
||||
if [ "$SIGNED_JAR" == "1" ]; then
|
||||
if [ "$(git blame -p version.txt | head -n1 | cut -d' ' -f1)" == "$(git rev-parse HEAD)" ]; then
|
||||
echo "Trying to fetch signature for resulting jar files.."
|
||||
pushd versions
|
||||
for ver in */; do
|
||||
|
||||
@@ -36,6 +36,7 @@ import de.johni0702.minecraft.gui.popup.GuiYesNoPopup;
|
||||
import de.johni0702.minecraft.gui.utils.Colors;
|
||||
import net.minecraft.crash.CrashReport;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
import org.lwjgl.util.ReadableDimension;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
@@ -123,7 +124,8 @@ public class GuiReplayEditor extends GuiScreen {
|
||||
return button;
|
||||
}
|
||||
|
||||
public void save(File inputFile, PacketStream.FilterInfo...filters) {
|
||||
@SafeVarargs
|
||||
public final void save(File inputFile, Pair<PacketStream.FilterInfo, JsonObject>... filters) {
|
||||
save(Utils.fileNameToReplayName(inputFile.getName()), (outputFile) -> {
|
||||
Studio studio = new ReplayStudio();
|
||||
File tmpDir = null;
|
||||
@@ -146,7 +148,10 @@ public class GuiReplayEditor extends GuiScreen {
|
||||
PacketStream stream = studio.createReplayStream(in, true);
|
||||
|
||||
stream.addFilter(new ProgressFilter(metaData.getDuration()));
|
||||
for (PacketStream.FilterInfo info : filters) {
|
||||
for (Pair<PacketStream.FilterInfo, JsonObject> pair : filters) {
|
||||
PacketStream.FilterInfo info = pair.getLeft();
|
||||
JsonObject config = pair.getRight();
|
||||
info.getFilter().init(studio, config);
|
||||
stream.addFilter(info.getFilter(), info.getFrom(), info.getTo());
|
||||
LOGGER.debug("Added filter {}", info);
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.crash.CrashReport;
|
||||
import org.apache.commons.io.IOCase;
|
||||
import org.apache.commons.io.filefilter.SuffixFileFilter;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
import org.lwjgl.util.Dimension;
|
||||
|
||||
import java.io.File;
|
||||
@@ -133,12 +134,11 @@ public class GuiTrimPanel extends GuiPanel {
|
||||
ChangeTimestampFilter ctf = new ChangeTimestampFilter();
|
||||
JsonObject config = new JsonObject();
|
||||
config.addProperty("offset", -start);
|
||||
ctf.init(null, config);
|
||||
// Pass filters to save dialog
|
||||
gui.save(inputReplays.getSelectedValue(),
|
||||
new PacketStream.FilterInfo(new SquashFilter(), -1, start),
|
||||
new PacketStream.FilterInfo(ctf, start, end),
|
||||
new PacketStream.FilterInfo(new RemoveFilter(), end, -1)
|
||||
Pair.of(new PacketStream.FilterInfo(new SquashFilter(), -1, start), new JsonObject()),
|
||||
Pair.of(new PacketStream.FilterInfo(ctf, start, end), config),
|
||||
Pair.of(new PacketStream.FilterInfo(new RemoveFilter(), end, -1), new JsonObject())
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -23,15 +23,30 @@ import static com.replaymod.core.versions.MCVer.*;
|
||||
public class ChunkLoadingRenderGlobal {
|
||||
|
||||
private final RenderGlobal hooked;
|
||||
private final ChunkRenderDispatcher renderDispatcher;
|
||||
private final JailingQueue<ChunkCompileTaskGenerator> workerJailingQueue;
|
||||
private final CustomChunkRenderWorker renderWorker;
|
||||
private ChunkRenderDispatcher renderDispatcher;
|
||||
private JailingQueue<ChunkCompileTaskGenerator> workerJailingQueue;
|
||||
private CustomChunkRenderWorker renderWorker;
|
||||
private int frame;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public ChunkLoadingRenderGlobal(RenderGlobal renderGlobal) {
|
||||
this.hooked = renderGlobal;
|
||||
this.renderDispatcher = renderGlobal.renderDispatcher;
|
||||
|
||||
setup(renderGlobal.renderDispatcher);
|
||||
}
|
||||
|
||||
public void updateRenderDispatcher(ChunkRenderDispatcher renderDispatcher) {
|
||||
if (this.renderDispatcher != null) {
|
||||
workerJailingQueue.freeAll();
|
||||
this.renderDispatcher = null;
|
||||
}
|
||||
if (renderDispatcher != null) {
|
||||
setup(renderDispatcher);
|
||||
}
|
||||
}
|
||||
|
||||
private void setup(ChunkRenderDispatcher renderDispatcher) {
|
||||
this.renderDispatcher = renderDispatcher;
|
||||
this.renderWorker = new CustomChunkRenderWorker(renderDispatcher, new RegionRenderCacheBuilder());
|
||||
|
||||
int workerThreads = renderDispatcher.listThreadedWorkers.size();
|
||||
|
||||
@@ -10,6 +10,7 @@ import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.Shadow;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.Redirect;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
//#if MC<10904
|
||||
@@ -67,5 +68,19 @@ public abstract class MixinRenderGlobal {
|
||||
ci.cancel();
|
||||
}
|
||||
}
|
||||
|
||||
@Inject(method = "setWorldAndLoadRenderers", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/chunk/ChunkRenderDispatcher;stopWorkerThreads()V"))
|
||||
private void stopWorkerThreadsAndChunkLoadingRenderGlobal(CallbackInfo ci) {
|
||||
if (replayModRender_hook != null) {
|
||||
replayModRender_hook.updateRenderDispatcher(null);
|
||||
}
|
||||
}
|
||||
|
||||
@Inject(method = "loadRenderers", at = @At(value = "RETURN"))
|
||||
private void setupChunkLoadingRenderGlobal(CallbackInfo ci) {
|
||||
if (replayModRender_hook != null) {
|
||||
replayModRender_hook.updateRenderDispatcher(renderDispatcher);
|
||||
}
|
||||
}
|
||||
}
|
||||
//#endif
|
||||
|
||||
@@ -95,7 +95,7 @@ public class ReplayHandler {
|
||||
|
||||
markers = new ArrayList<>(replayFile.getMarkers().or(Collections.emptySet()));
|
||||
|
||||
replaySender = new ReplaySender(this, replayFile, asyncMode);
|
||||
replaySender = new ReplaySender(this, replayFile, false);
|
||||
|
||||
setup();
|
||||
|
||||
@@ -103,6 +103,8 @@ public class ReplayHandler {
|
||||
overlay.setVisible(true);
|
||||
|
||||
FML_BUS.post(new ReplayOpenEvent.Post(this));
|
||||
|
||||
replaySender.setAsyncMode(asyncMode);
|
||||
}
|
||||
|
||||
void restartedReplay() {
|
||||
|
||||
@@ -1 +1 @@
|
||||
2.1.1
|
||||
2.1.2
|
||||
|
||||
@@ -115,6 +115,8 @@ repositories {
|
||||
configurations {
|
||||
shade
|
||||
compile.extendsFrom shade
|
||||
|
||||
shade.exclude group: 'com.google.code.gson', module: 'gson' // provided by MC
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@@ -133,7 +135,7 @@ dependencies {
|
||||
|
||||
def studioVersion = "${(int)(mcVersion/10000)}.${(int)(mcVersion/100)%100}" + (mcVersion%100==0 ? '' : ".${mcVersion%100}")
|
||||
if (studioVersion == '1.8.9') studioVersion = '1.8'
|
||||
shade("com.github.ReplayMod.ReplayStudio:$studioVersion:24a6ad9"){
|
||||
shade("com.github.ReplayMod.ReplayStudio:$studioVersion:464e18a"){
|
||||
exclude group: 'com.google.guava', module: 'guava' // provided by MC
|
||||
exclude group: 'org.projectlombok', module: 'lombok' // runtime only for @SneakyThrows which isn't used
|
||||
}
|
||||
|
||||
@@ -65,7 +65,10 @@ static def convertSource(Map<String, String> kws, Map<String, Integer> vars, Lis
|
||||
}
|
||||
}
|
||||
} else if (trimmed.startsWith(kws.ifdef)) {
|
||||
ifStack.push(null)
|
||||
def result = vars.containsKey(trimmed.substring(kws.ifdef.length()))
|
||||
ifStack.push(result)
|
||||
indentStack.push(getIndent(line))
|
||||
active &= result
|
||||
} else if (trimmed.startsWith(kws.endif)) {
|
||||
if (ifStack.isEmpty()) {
|
||||
throw new ParserException("Unexpected endif in line $n of $fileName")
|
||||
|
||||
Reference in New Issue
Block a user