Завершить инженерный кандидат Stage 5

This commit is contained in:
2026-08-19 02:04:45 +03:00
parent b840684ef3
commit cde886ca96
45 changed files with 3236 additions and 98 deletions
@@ -5,10 +5,12 @@ import android.content.SharedPreferences;
public final class ProgressStore {
private static final String FILE = "project_sacrifice_progress_v1";
public static final int CURRENT_SAVE_VERSION = 2;
private final SharedPreferences preferences;
public ProgressStore(Context context) {
preferences = context.getSharedPreferences(FILE, Context.MODE_PRIVATE);
migrateIfSupported();
}
public int unlockedCount() {
@@ -36,6 +38,17 @@ public final class ProgressStore {
editor.apply();
}
public int saveVersion() {
return preferences.getInt("save_version", 1);
}
private void migrateIfSupported() {
int version = preferences.getInt("save_version", 1);
if (version >= 1 && version < CURRENT_SAVE_VERSION) {
preferences.edit().putInt("save_version", CURRENT_SAVE_VERSION).apply();
}
}
private static String key(int levelNumber, String suffix) {
return "level_" + levelNumber + "_" + suffix;
}