Add boss portrait, reduce frequency of saves

master
John 2022-06-17 13:09:50 -04:00
parent 75257a29fe
commit b796df4759
2 changed files with 13 additions and 9 deletions

BIN
img/dialogue/Bouncer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 B

View File

@ -42,7 +42,7 @@ public class GamePanel extends JPanel implements Runnable, KeyListener, Serializ
public int playerFrame, enemyFrame;
// keeps track of how many ticks has elapsed since last frame change
public int playerFrameCounter = 0;
public int enemyFrameCounter = 0;
public int timeSinceLastSave = 0;
public boolean isPaused, isDialogue, waitForDialogue, mouseAlreadyTranslated;
public PauseMenu pauseMenu;
public DialogueMenu dialogueMenu;
@ -388,14 +388,18 @@ public class GamePanel extends JPanel implements Runnable, KeyListener, Serializ
playerFrameCounter -= 5;
}
}
// a new save is made every tick
bombCount = LevelManager.bombs;
try {
// atomic save to prevent EOF errors
FileManager.writeObjectToFile("local\\temp_state.dat", this);
Files.move(Path.of("local", "temp_state.dat"), Path.of("local", "game_state.dat"), ATOMIC_MOVE);
} catch (IOException | ConcurrentModificationException e) {
e.printStackTrace();
// a new save is made every 100 ticks
timeSinceLastSave++;
if (timeSinceLastSave >= 100) {
timeSinceLastSave -= 100;
bombCount = LevelManager.bombs;
try {
// atomic save to prevent EOF errors
FileManager.writeObjectToFile("local\\temp_state.dat", this);
Files.move(Path.of("local", "temp_state.dat"), Path.of("local", "game_state.dat"), ATOMIC_MOVE);
} catch (IOException | ConcurrentModificationException e) {
e.printStackTrace();
}
}
repaint();
delta--;