Switch core to 1.14 (generated via ./gradlew :1.14:setCoreVersion)
This commit is contained in:
@@ -11,9 +11,9 @@ import de.johni0702.minecraft.gui.element.GuiLabel;
|
||||
import de.johni0702.minecraft.gui.layout.CustomLayout;
|
||||
import de.johni0702.minecraft.gui.layout.HorizontalLayout;
|
||||
import de.johni0702.minecraft.gui.layout.VerticalLayout;
|
||||
import net.minecraft.crash.CrashReport;
|
||||
import net.minecraft.crash.CrashReportCategory;
|
||||
import net.minecraft.crash.ReportedException;
|
||||
import net.minecraft.util.crash.CrashReport;
|
||||
import net.minecraft.util.crash.CrashReportSection;
|
||||
import net.minecraft.util.crash.CrashException;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.function.Consumer;
|
||||
@@ -30,11 +30,11 @@ public class GuiExportFailed extends GuiScreen {
|
||||
// Check whether the user has configured some custom ffmpeg arguments
|
||||
if (settings.getEncodingPreset().getValue().equals(settings.getExportArguments())) {
|
||||
// If they haven't, then this is probably a faulty ffmpeg installation and there's nothing we can do
|
||||
CrashReport crashReport = CrashReport.makeCrashReport(e, "Exporting video");
|
||||
CrashReportCategory details = crashReport.makeCategory("Export details");
|
||||
CrashReport crashReport = CrashReport.create(e, "Exporting video");
|
||||
CrashReportSection details = crashReport.addElement("Export details");
|
||||
addDetail(details, "Settings", settings::toString);
|
||||
addDetail(details, "FFmpeg log", e::getLog);
|
||||
throw new ReportedException(crashReport);
|
||||
throw new CrashException(crashReport);
|
||||
} else {
|
||||
// If they have, ask them whether it was intentional
|
||||
GuiExportFailed gui = new GuiExportFailed(e, doRestart);
|
||||
@@ -106,7 +106,7 @@ public class GuiExportFailed extends GuiScreen {
|
||||
|
||||
abortButton.onClick(() -> {
|
||||
// Assume they know what they're doing
|
||||
getMinecraft().displayGuiScreen(null);
|
||||
getMinecraft().openScreen(null);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,8 +29,8 @@ import de.johni0702.minecraft.gui.popup.GuiYesNoPopup;
|
||||
import de.johni0702.minecraft.gui.utils.Colors;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import net.minecraft.client.gui.GuiErrorScreen;
|
||||
import net.minecraft.crash.CrashReport;
|
||||
import net.minecraft.client.gui.menu.NoticeScreen;
|
||||
import net.minecraft.util.crash.CrashReport;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.List;
|
||||
@@ -38,7 +38,7 @@ import java.util.List;
|
||||
import static com.replaymod.render.ReplayModRender.LOGGER;
|
||||
|
||||
//#if MC>=11400
|
||||
//$$ import net.minecraft.text.TranslatableTextComponent;
|
||||
import net.minecraft.text.TranslatableTextComponent;
|
||||
//#endif
|
||||
|
||||
public class GuiRenderQueue extends AbstractGuiPopup<GuiRenderQueue> {
|
||||
@@ -204,7 +204,7 @@ public class GuiRenderQueue extends AbstractGuiPopup<GuiRenderQueue> {
|
||||
|
||||
private void processQueue(Iterable<RenderJob> queue) {
|
||||
// Close all GUIs (so settings in GuiRenderSettings are saved)
|
||||
getMinecraft().displayGuiScreen(null);
|
||||
getMinecraft().openScreen(null);
|
||||
// Start rendering
|
||||
int jobsDone = 0;
|
||||
for (RenderJob renderJob : queue) {
|
||||
@@ -214,17 +214,17 @@ public class GuiRenderQueue extends AbstractGuiPopup<GuiRenderQueue> {
|
||||
videoRenderer.renderVideo();
|
||||
} catch (VideoWriter.NoFFmpegException e) {
|
||||
LOGGER.error("Rendering video:", e);
|
||||
GuiErrorScreen errorScreen = new GuiErrorScreen(
|
||||
NoticeScreen errorScreen = new NoticeScreen(
|
||||
//#if MC>=11400
|
||||
//$$ () -> {},
|
||||
//$$ new TranslatableTextComponent("replaymod.gui.rendering.error.title"),
|
||||
//$$ new TranslatableTextComponent("replaymod.gui.rendering.error.message")
|
||||
() -> {},
|
||||
new TranslatableTextComponent("replaymod.gui.rendering.error.title"),
|
||||
new TranslatableTextComponent("replaymod.gui.rendering.error.message")
|
||||
//#else
|
||||
I18n.format("replaymod.gui.rendering.error.title"),
|
||||
I18n.format("replaymod.gui.rendering.error.message")
|
||||
//$$ I18n.format("replaymod.gui.rendering.error.title"),
|
||||
//$$ I18n.format("replaymod.gui.rendering.error.message")
|
||||
//#endif
|
||||
);
|
||||
getMinecraft().displayGuiScreen(errorScreen);
|
||||
getMinecraft().openScreen(errorScreen);
|
||||
return;
|
||||
} catch (VideoWriter.FFmpegStartupException e) {
|
||||
int jobsToSkip = jobsDone;
|
||||
@@ -236,7 +236,7 @@ public class GuiRenderQueue extends AbstractGuiPopup<GuiRenderQueue> {
|
||||
});
|
||||
return;
|
||||
} catch (Throwable t) {
|
||||
Utils.error(LOGGER, this, CrashReport.makeCrashReport(t, "Rendering video"), () -> {});
|
||||
Utils.error(LOGGER, this, CrashReport.create(t, "Rendering video"), () -> {});
|
||||
container.display(); // Re-show the queue popup and the new error popup
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -32,9 +32,9 @@ import de.johni0702.minecraft.gui.utils.lwjgl.Color;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableColor;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import net.minecraft.client.gui.GuiErrorScreen;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.crash.CrashReport;
|
||||
import net.minecraft.client.gui.menu.NoticeScreen;
|
||||
import net.minecraft.client.resource.language.I18n;
|
||||
import net.minecraft.util.crash.CrashReport;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.io.File;
|
||||
@@ -52,7 +52,7 @@ import static com.replaymod.core.utils.Utils.error;
|
||||
import static com.replaymod.render.ReplayModRender.LOGGER;
|
||||
|
||||
//#if MC>=11400
|
||||
//$$ import net.minecraft.text.TranslatableTextComponent;
|
||||
import net.minecraft.text.TranslatableTextComponent;
|
||||
//#endif
|
||||
|
||||
public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
@@ -108,7 +108,7 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
public final GuiSlider frameRateSlider = new GuiSlider().onValueChanged(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
frameRateSlider.setText(I18n.format("replaymod.gui.rendersettings.framerate")
|
||||
frameRateSlider.setText(I18n.translate("replaymod.gui.rendersettings.framerate")
|
||||
+ ": " + (frameRateSlider.getValue() + 10));
|
||||
}
|
||||
}).setSize(122, 20).setSteps(110);
|
||||
@@ -177,7 +177,7 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
.onValueChanged(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
sphericalFovSlider.setText(I18n.format("replaymod.gui.rendersettings.sphericalFov")
|
||||
sphericalFovSlider.setText(I18n.translate("replaymod.gui.rendersettings.sphericalFov")
|
||||
+ ": " + (MIN_SPHERICAL_FOV + sphericalFovSlider.getValue() * SPHERICAL_FOV_STEP_SIZE) + "°");
|
||||
|
||||
updateInputs();
|
||||
@@ -231,23 +231,23 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
@Override
|
||||
public void run() {
|
||||
// Closing this GUI ensures that settings are saved
|
||||
getMinecraft().displayGuiScreen(null);
|
||||
getMinecraft().openScreen(null);
|
||||
try {
|
||||
VideoRenderer videoRenderer = new VideoRenderer(save(false), replayHandler, timeline);
|
||||
videoRenderer.renderVideo();
|
||||
} catch (VideoWriter.NoFFmpegException e) {
|
||||
LOGGER.error("Rendering video:", e);
|
||||
GuiErrorScreen errorScreen = new GuiErrorScreen(
|
||||
NoticeScreen errorScreen = new NoticeScreen(
|
||||
//#if MC>=11400
|
||||
//$$ () -> {},
|
||||
//$$ new TranslatableTextComponent("replaymod.gui.rendering.error.title"),
|
||||
//$$ new TranslatableTextComponent("replaymod.gui.rendering.error.message")
|
||||
() -> {},
|
||||
new TranslatableTextComponent("replaymod.gui.rendering.error.title"),
|
||||
new TranslatableTextComponent("replaymod.gui.rendering.error.message")
|
||||
//#else
|
||||
I18n.format("replaymod.gui.rendering.error.title"),
|
||||
I18n.format("replaymod.gui.rendering.error.message")
|
||||
//$$ I18n.format("replaymod.gui.rendering.error.title"),
|
||||
//$$ I18n.format("replaymod.gui.rendering.error.message")
|
||||
//#endif
|
||||
);
|
||||
getMinecraft().displayGuiScreen(errorScreen);
|
||||
getMinecraft().openScreen(errorScreen);
|
||||
} catch (VideoWriter.FFmpegStartupException e) {
|
||||
GuiExportFailed.tryToRecover(e, newSettings -> {
|
||||
// Update settings with fixed ffmpeg arguments
|
||||
@@ -256,7 +256,7 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
renderButton.onClick();
|
||||
});
|
||||
} catch (Throwable t) {
|
||||
error(LOGGER, GuiRenderSettings.this, CrashReport.makeCrashReport(t, "Rendering video"), () -> {});
|
||||
error(LOGGER, GuiRenderSettings.this, CrashReport.create(t, "Rendering video"), () -> {});
|
||||
display(); // Re-show the render settings gui and the new error popup
|
||||
}
|
||||
}
|
||||
@@ -264,7 +264,7 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
public final GuiButton cancelButton = new GuiButton(buttonPanel).onClick(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
getMinecraft().displayGuiScreen(null);
|
||||
getMinecraft().openScreen(null);
|
||||
}
|
||||
}).setSize(100, 20).setI18nLabel("replaymod.gui.cancel");
|
||||
|
||||
@@ -538,7 +538,7 @@ public class GuiRenderSettings extends GuiScreen implements Closeable {
|
||||
antiAliasingDropdown.getSelectedValue(),
|
||||
exportCommand.getText(),
|
||||
exportArguments.getText(),
|
||||
net.minecraft.client.gui.GuiScreen.isCtrlKeyDown()
|
||||
net.minecraft.client.gui.Screen.hasControlDown()
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ public class GuiRenderingDone extends GuiScreen {
|
||||
settingsRegistry.set(Setting.SKIP_POST_RENDER_GUI, true);
|
||||
settingsRegistry.save();
|
||||
}
|
||||
getMinecraft().displayGuiScreen(null);
|
||||
getMinecraft().openScreen(null);
|
||||
}
|
||||
}).setSize(100, 20).setI18nLabel("replaymod.gui.close");
|
||||
|
||||
|
||||
@@ -17,18 +17,18 @@ import de.johni0702.minecraft.gui.layout.HorizontalLayout;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadablePoint;
|
||||
import net.minecraft.client.renderer.texture.DynamicTexture;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.client.texture.NativeImageBackedTexture;
|
||||
import net.minecraft.client.resource.language.I18n;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
//#if MC>=11300
|
||||
import net.minecraft.client.renderer.texture.NativeImage;
|
||||
import net.minecraft.client.texture.NativeImage;
|
||||
//#endif
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
private static final ResourceLocation NO_PREVIEW_TEXTURE = new ResourceLocation("replaymod", "logo.jpg");
|
||||
private static final Identifier NO_PREVIEW_TEXTURE = new Identifier("replaymod", "logo.jpg");
|
||||
|
||||
private final VideoRenderer renderer;
|
||||
|
||||
@@ -86,7 +86,7 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
}
|
||||
}.setI18nLabel("replaymod.gui.rendering.cancel").setSize(150, 20);
|
||||
|
||||
private DynamicTexture previewTexture;
|
||||
private NativeImageBackedTexture previewTexture;
|
||||
private boolean previewTextureDirty;
|
||||
|
||||
{
|
||||
@@ -205,8 +205,8 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
prevRenderedFrames = renderer.getFramesDone();
|
||||
}
|
||||
|
||||
renderTime.setText(I18n.format("replaymod.gui.rendering.timetaken") + ": " + secToString(renderTimeTaken/1000));
|
||||
remainingTime.setText(I18n.format("replaymod.gui.rendering.timeleft") + ": " + secToString(renderTimeLeft));
|
||||
renderTime.setText(I18n.translate("replaymod.gui.rendering.timetaken") + ": " + secToString(renderTimeTaken/1000));
|
||||
remainingTime.setText(I18n.translate("replaymod.gui.rendering.timeleft") + ": " + secToString(renderTimeLeft));
|
||||
|
||||
int framesDone = renderer.getFramesDone(), framesTotal = renderer.getTotalFrames();
|
||||
progressBar.setI18nLabel("replaymod.gui.rendering.progress", framesDone, framesTotal);
|
||||
@@ -219,9 +219,9 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
int sec = seconds - ((min*60) + (hours*60*60));
|
||||
|
||||
StringBuilder builder = new StringBuilder();
|
||||
if(hours > 0) builder.append(hours).append(I18n.format("replaymod.gui.hours"));
|
||||
if(min > 0 || hours > 0) builder.append(min).append(I18n.format("replaymod.gui.minutes"));
|
||||
builder.append(sec).append(I18n.format("replaymod.gui.seconds"));
|
||||
if(hours > 0) builder.append(hours).append(I18n.translate("replaymod.gui.hours"));
|
||||
if(min > 0 || hours > 0) builder.append(min).append(I18n.translate("replaymod.gui.minutes"));
|
||||
builder.append(sec).append(I18n.translate("replaymod.gui.seconds"));
|
||||
|
||||
return builder.toString();
|
||||
}
|
||||
@@ -233,14 +233,14 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
|
||||
if (previewTexture == null) {
|
||||
//#if MC>=11300
|
||||
previewTexture = new DynamicTexture(videoWidth, videoHeight, true);
|
||||
previewTexture = new NativeImageBackedTexture(videoWidth, videoHeight, true);
|
||||
//#else
|
||||
//$$ previewTexture = new DynamicTexture(videoWidth, videoHeight);
|
||||
//#endif
|
||||
}
|
||||
|
||||
if (previewTextureDirty) {
|
||||
previewTexture.updateDynamicTexture();
|
||||
previewTexture.upload();
|
||||
previewTextureDirty = false;
|
||||
}
|
||||
|
||||
@@ -271,7 +271,7 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
buffer.mark();
|
||||
synchronized (this) {
|
||||
//#if MC>=11300
|
||||
NativeImage data = previewTexture.getTextureData();
|
||||
NativeImage data = previewTexture.getImage();
|
||||
assert data != null;
|
||||
for (int y = 0; y < data.getHeight(); y++) {
|
||||
for (int x = 0; x < data.getWidth(); x++) {
|
||||
|
||||
Reference in New Issue
Block a user