Deprecate most static fields in ReplayMod class
Fix replay restarting
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
package com.replaymod.recording;
|
||||
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import com.replaymod.recording.handler.ConnectionEventHandler;
|
||||
import com.replaymod.recording.packet.PacketListener;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import net.minecraftforge.fml.common.FMLCommonHandler;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
@@ -34,6 +34,7 @@ public class ReplayModRecording {
|
||||
PacketListener packetListener = connectionEventHandler.getPacketListener();
|
||||
if (packetListener != null) {
|
||||
packetListener.addMarker();
|
||||
core.printInfoToChat("replaymod.chat.addedmarker");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.replaymod.recording.gui;
|
||||
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import com.replaymod.core.SettingsRegistry;
|
||||
import com.replaymod.recording.Setting;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.FontRenderer;
|
||||
import net.minecraft.client.gui.Gui;
|
||||
@@ -18,9 +19,11 @@ import static com.replaymod.core.ReplayMod.TEXTURE_SIZE;
|
||||
*/
|
||||
public class GuiRecordingOverlay {
|
||||
private final Minecraft mc;
|
||||
private final SettingsRegistry settingsRegistry;
|
||||
|
||||
public GuiRecordingOverlay(Minecraft mc) {
|
||||
public GuiRecordingOverlay(Minecraft mc, SettingsRegistry settingsRegistry) {
|
||||
this.mc = mc;
|
||||
this.settingsRegistry = settingsRegistry;
|
||||
}
|
||||
|
||||
public void register() {
|
||||
@@ -38,7 +41,7 @@ public class GuiRecordingOverlay {
|
||||
@SubscribeEvent
|
||||
public void renderRecordingIndicator(RenderGameOverlayEvent.Post event) {
|
||||
if (event.type != RenderGameOverlayEvent.ElementType.ALL) return;
|
||||
if(ReplayMod.replaySettings.showRecordingIndicator()) {
|
||||
if (settingsRegistry.get(Setting.INDICATOR)) {
|
||||
FontRenderer fontRenderer = mc.fontRendererObj;
|
||||
fontRenderer.drawString(I18n.format("replaymod.gui.recording").toUpperCase(), 30, 18 - (fontRenderer.FONT_HEIGHT / 2), 0xffffffff);
|
||||
mc.renderEngine.bindTexture(TEXTURE);
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
package com.replaymod.recording.handler;
|
||||
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import com.replaymod.recording.Setting;
|
||||
import com.replaymod.recording.gui.GuiRecordingOverlay;
|
||||
import com.replaymod.recording.packet.PacketListener;
|
||||
import de.johni0702.replaystudio.replay.ReplayFile;
|
||||
import de.johni0702.replaystudio.replay.ZipReplayFile;
|
||||
import de.johni0702.replaystudio.studio.ReplayStudio;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import eu.crushedpixel.replaymod.chat.ChatMessageHandler.ChatMessageType;
|
||||
import io.netty.channel.Channel;
|
||||
import io.netty.channel.ChannelPipeline;
|
||||
import net.minecraft.client.Minecraft;
|
||||
@@ -47,8 +46,6 @@ public class ConnectionEventHandler {
|
||||
|
||||
@SubscribeEvent
|
||||
public void onConnectedToServerEvent(ClientConnectedToServerEvent event) {
|
||||
ReplayMod.chatMessageHandler.initialize();
|
||||
|
||||
try {
|
||||
if(event.isLocal) {
|
||||
if (MinecraftServer.getServer().getEntityWorld().getWorldType() == WorldType.DEBUG_WORLD) {
|
||||
@@ -88,12 +85,12 @@ public class ConnectionEventHandler {
|
||||
recordingEventHandler = new RecordingEventHandler(packetListener);
|
||||
recordingEventHandler.register();
|
||||
|
||||
guiOverlay = new GuiRecordingOverlay(mc);
|
||||
guiOverlay = new GuiRecordingOverlay(mc, core.getSettingsRegistry());
|
||||
guiOverlay.register();
|
||||
|
||||
ReplayMod.chatMessageHandler.addLocalizedChatMessage("replaymod.chat.recordingstarted", ChatMessageType.INFORMATION);
|
||||
core.printInfoToChat("replaymod.chat.recordingstarted");
|
||||
} catch(Exception e) {
|
||||
ReplayMod.chatMessageHandler.addLocalizedChatMessage("replaymod.chat.recordingfailed", ChatMessageType.WARNING);
|
||||
core.printWarningToChat("replaymod.chat.recordingfailed");
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
@@ -106,8 +103,6 @@ public class ConnectionEventHandler {
|
||||
recordingEventHandler.unregister();
|
||||
recordingEventHandler = null;
|
||||
packetListener = null;
|
||||
|
||||
ReplayMod.chatMessageHandler.stop();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,11 +2,10 @@ package com.replaymod.recording.packet;
|
||||
|
||||
import com.google.common.hash.Hashing;
|
||||
import com.google.common.io.Files;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import de.johni0702.replaystudio.data.Marker;
|
||||
import de.johni0702.replaystudio.replay.ReplayFile;
|
||||
import de.johni0702.replaystudio.replay.ReplayMetaData;
|
||||
import com.replaymod.core.ReplayMod;
|
||||
import eu.crushedpixel.replaymod.chat.ChatMessageHandler;
|
||||
import eu.crushedpixel.replaymod.holders.AdvancedPosition;
|
||||
import io.netty.channel.ChannelHandlerContext;
|
||||
import io.netty.channel.ChannelInboundHandlerAdapter;
|
||||
@@ -90,8 +89,6 @@ public abstract class DataListener extends ChannelInboundHandlerAdapter {
|
||||
marker.setPitch((float) pos.getPitch());
|
||||
marker.setRoll((float) pos.getRoll());
|
||||
markers.add(marker);
|
||||
|
||||
ReplayMod.chatMessageHandler.addLocalizedChatMessage("replaymod.chat.addedmarker", ChatMessageHandler.ChatMessageType.INFORMATION);
|
||||
}
|
||||
|
||||
public class DataWriter {
|
||||
@@ -142,15 +139,13 @@ public abstract class DataListener extends ChannelInboundHandlerAdapter {
|
||||
|
||||
public synchronized void requestFinish() {
|
||||
if (saveService.isShutdown()) return;
|
||||
// TODO: Add some GUI showing saving status
|
||||
try {
|
||||
Runtime.getRuntime().removeShutdownHook(shutdownHook);
|
||||
saveService.shutdown();
|
||||
saveService.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS);
|
||||
stream.close();
|
||||
|
||||
// TODO: Get rid of replay file appender
|
||||
ReplayMod.replayFileAppender.startNewReplayFileWriting();
|
||||
|
||||
String mcversion = ReplayMod.getMinecraftVersion();
|
||||
|
||||
String[] pl = players.toArray(new String[players.size()]);
|
||||
@@ -173,7 +168,7 @@ public abstract class DataListener extends ChannelInboundHandlerAdapter {
|
||||
} catch(Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
ReplayMod.replayFileAppender.replayFileWritingFinished();
|
||||
// TODO: Always close GUI
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user