summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorilotterytea <iltsu@alright.party>2022-10-15 17:22:40 +0200
committerilotterytea <iltsu@alright.party>2022-10-15 17:22:40 +0200
commit67dbc1e33ed6552532f35e78b27b8905cedd4ee8 (patch)
tree1fc12d19ba185d7bb5cb379f1cd870fb00b33133 /core
parent614206efd1d73d55bad18db1bd40d102c3943465 (diff)
таблица сейвов которую я делал 7 дней
Diffstat (limited to 'core')
-rw-r--r--core/src/com/ilotterytea/maxoning/screens/MenuScreen.java90
1 files changed, 51 insertions, 39 deletions
diff --git a/core/src/com/ilotterytea/maxoning/screens/MenuScreen.java b/core/src/com/ilotterytea/maxoning/screens/MenuScreen.java
index e8dc864..c796d22 100644
--- a/core/src/com/ilotterytea/maxoning/screens/MenuScreen.java
+++ b/core/src/com/ilotterytea/maxoning/screens/MenuScreen.java
@@ -14,14 +14,15 @@ import com.badlogic.gdx.scenes.scene2d.ui.*;
import com.badlogic.gdx.scenes.scene2d.utils.ClickListener;
import com.badlogic.gdx.utils.Align;
import com.badlogic.gdx.utils.viewport.FillViewport;
+import com.ilotterytea.maxoning.MaxonConstants;
import com.ilotterytea.maxoning.MaxonGame;
import com.ilotterytea.maxoning.player.MaxonSavegame;
import com.ilotterytea.maxoning.ui.*;
import com.ilotterytea.maxoning.utils.math.Math;
import com.ilotterytea.maxoning.utils.serialization.GameDataSystem;
+import java.io.File;
import java.io.IOException;
-import java.io.ObjectInputStream;
import java.util.ArrayList;
import java.util.Calendar;
@@ -264,47 +265,58 @@ public class MenuScreen implements Screen {
}
private void loadSavegamesToTable(Table table) {
- ArrayList<MaxonSavegame> saves = GameDataSystem.getSavegames();
-
- // Load existing files:
- for (int i = 0; i < saves.size(); i++) {
- final MaxonSavegame sav = saves.get(i);
- SaveGameWidget widget = new SaveGameWidget(
- skin, widgetSkin, sav
- );
- final int finalI = i;
- widget.addListener(new ClickListener() {
- @Override
- public void clicked(InputEvent event, float x, float y) {
- try {
- game.setScreen(new GameScreen(game, sav, finalI));
- } catch (IOException | ClassNotFoundException e) {
- throw new RuntimeException(e);
+ for (int i = 0; i < 3; i++) {
+ if (new File(MaxonConstants.GAME_SAVEGAME_FOLDER + String.format("/0%s.maxon", i)).exists()) {
+ final MaxonSavegame sav = GameDataSystem.load("0" + i + ".maxon");
+ SaveGameWidget widget = new SaveGameWidget(
+ skin, widgetSkin, sav
+ );
+ final int finalI = i;
+ widget.addListener(new ClickListener() {
+ @Override
+ public void clicked(InputEvent event, float x, float y) {
+ try {
+ game.setScreen(new GameScreen(game, sav, finalI));
+ } catch (IOException | ClassNotFoundException e) {
+ throw new RuntimeException(e);
+ }
+ dispose();
}
- dispose();
- }
- });
- table.add(widget).width(512f).padBottom(8f).row();
- }
+ });
+ table.add(widget).width(512f).padBottom(8f).row();
+ } else {
- for (int i = 0; i < 3 - saves.size(); i++) {
- final MaxonSavegame sav = new MaxonSavegame();
- SaveGameWidget widget = new SaveGameWidget(
- skin, widgetSkin, null
- );
- final int finalI = i;
- widget.addListener(new ClickListener() {
- @Override
- public void clicked(InputEvent event, float x, float y) {
- try {
- game.setScreen(new GameScreen(game, sav, finalI));
- } catch (IOException | ClassNotFoundException e) {
- throw new RuntimeException(e);
+ final MaxonSavegame sav = new MaxonSavegame();
+ final SaveGameWidget widget = new SaveGameWidget(
+ skin, widgetSkin, null
+ );
+ final int finalI = i;
+ widget.addListener(new ClickListener() {
+ @Override
+ public void clicked(InputEvent event, float x, float y) {
+ sav.petId = 0;
+ sav.inv = new ArrayList<>();
+ sav.multiplier = 5;
+ sav.points = 0;
+ sav.roomId = 0;
+ sav.seed = System.currentTimeMillis();
+ sav.name = "SAVE " + (finalI + 1);
+ sav.elapsedTime = 0;
+ sav.lastTimestamp = System.currentTimeMillis();
+ sav.outInv = new ArrayList<>();
+
+ GameDataSystem.save(sav, "0" + finalI + ".maxon");
+
+ try {
+ game.setScreen(new GameScreen(game, sav, finalI));
+ } catch (IOException | ClassNotFoundException e) {
+ throw new RuntimeException(e);
+ }
+ dispose();
}
- dispose();
- }
- });
- table.add(widget).width(512f).padBottom(8f).row();
+ });
+ table.add(widget).width(512f).padBottom(8f).row();
+ }
}
}