From 45e391181595fabc4fd97771dfd74788bc86bf45 Mon Sep 17 00:00:00 2001 From: John Date: Sun, 19 Jun 2022 14:37:40 -0700 Subject: [PATCH] Fix access denied bug --- src/FileManager.java | 1 + src/GameFrame.java | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/FileManager.java b/src/FileManager.java index 62eeb73..6142032 100644 --- a/src/FileManager.java +++ b/src/FileManager.java @@ -38,6 +38,7 @@ public class FileManager { o = objectStream.readObject(); objectStream.close(); fileStream.close(); + System.out.println("done"); return o; } diff --git a/src/GameFrame.java b/src/GameFrame.java index 03046e6..d191b70 100644 --- a/src/GameFrame.java +++ b/src/GameFrame.java @@ -5,6 +5,9 @@ Runs the constructor in GamePanel class */ import java.awt.*; import java.io.IOException; +import java.nio.file.FileSystemException; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -25,16 +28,23 @@ public class GameFrame extends JFrame{ main = new CameraPanel(); main.setLayout(new CardLayout()); try { + System.out.println("done2"); game = (GamePanel)FileManager.readObjectFromFile("local/game_state.dat", Arrays.asList("Any")); game.gameFrame = main; game.isContinue = true; game.addUserInterface(); - game.startThread(); } catch (IOException | ClassNotFoundException | ClassCastException | SecurityException e) { System.out.println(e); game = new GamePanel(main); //run GamePanel constructor - game.startThread(); } + // delete saves to prevent unexpected behaviour + try { + Files.deleteIfExists(Path.of("local/game_state.dat")); + Files.deleteIfExists(Path.of("local/temp_state.dat")); + } catch (FileSystemException e) { + System.out.println(e); + } + game.startThread(); /* try { // read previously saved controls