diff --git a/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerClient.java b/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerClient.java index 6c48a0ba..d8ac4c07 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerClient.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerClient.java @@ -1085,6 +1085,7 @@ public void onClientInit(Minecraft mc) { logger.catching(e); } + TASmod.savestateHandlerServer.getSavestateTemporaryHandler().setNoSave(true); setTASState(TASstate.PLAYBACK); } } diff --git a/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerServer.java b/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerServer.java index cf0e1074..f66ce7b2 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerServer.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerServer.java @@ -158,6 +158,7 @@ public void fullRecord() { TASmod.savestateHandlerServer.resetState(); } + TASmod.savestateHandlerServer.getSavestateTemporaryHandler().setNoSave(true); setTASStateServer(TASstate.RECORDING); try { @@ -187,6 +188,7 @@ public void fullPlay() { TASmod.savestateHandlerServer.resetState(); } + TASmod.savestateHandlerServer.getSavestateTemporaryHandler().setNoSave(true); setTASStateServer(TASstate.PLAYBACK); try { diff --git a/src/main/java/com/minecrafttas/tasmod/savestates/handlers/SavestateTempHandler.java b/src/main/java/com/minecrafttas/tasmod/savestates/handlers/SavestateTempHandler.java index efa25403..619985e8 100644 --- a/src/main/java/com/minecrafttas/tasmod/savestates/handlers/SavestateTempHandler.java +++ b/src/main/java/com/minecrafttas/tasmod/savestates/handlers/SavestateTempHandler.java @@ -11,13 +11,16 @@ import com.minecrafttas.tasmod.TASmod; import com.minecrafttas.tasmod.events.EventPlaybackClient.EventRecordClear; import com.minecrafttas.tasmod.events.EventPlaybackServer.EventControllerStateChange; +import com.minecrafttas.tasmod.events.EventSavestate; import com.minecrafttas.tasmod.networking.TASmodBufferBuilder; import com.minecrafttas.tasmod.playback.PlaybackControllerClient.TASstate; import com.minecrafttas.tasmod.registries.TASmodPackets; import com.minecrafttas.tasmod.savestates.SavestateHandlerServer; +import com.minecrafttas.tasmod.savestates.SavestateIndexer.SavestatePaths; import com.minecrafttas.tasmod.savestates.exceptions.SavestateException; import com.minecrafttas.tasmod.util.Component; +import net.minecraft.server.MinecraftServer; import net.minecraft.util.text.TextFormatting; /** @@ -26,7 +29,7 @@ * * @author Scribble */ -public class SavestateTempHandler implements EventControllerStateChange, EventRecordClear { +public class SavestateTempHandler implements EventControllerStateChange, EventRecordClear, EventSavestate.EventServerLoadstate { private final Logger logger; private final SavestateHandlerServer handler; @@ -144,4 +147,9 @@ public void onRecordingClear() { public void setNoSave(boolean noSave) { this.noSave = noSave; } + + @Override + public void onServerLoadstate(MinecraftServer server, SavestatePaths paths) { + createState = false; + } }