Added replay saving/loading and score database auto-updater.
- Added 'info' table to score database to store the database version. Upon startup, if the stored version is less than the source version, all update queries defined in ScoreDB.getUpdateQueries() will be run. - Created "Replays" directory to store replay files. Replay files are created after gameplay. - Added 'replay' column to the score database to hold replay file names. - Created a Game.loadOsuFile() method to load game data. Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
This commit is contained in:
@@ -90,6 +90,9 @@ public class Options {
|
||||
/** The screenshot directory (created when needed). */
|
||||
private static File screenshotDir;
|
||||
|
||||
/** The replay directory (created when needed). */
|
||||
private static File replayDir;
|
||||
|
||||
/** The current skin directory (for user skins). */
|
||||
private static File skinDir;
|
||||
|
||||
@@ -819,6 +822,19 @@ public class Options {
|
||||
return screenshotDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the replay directory.
|
||||
* If invalid, this will return a "Replay" directory.
|
||||
* @return the replay directory
|
||||
*/
|
||||
public static File getReplayDir() {
|
||||
if (replayDir != null && replayDir.isDirectory())
|
||||
return replayDir;
|
||||
|
||||
replayDir = new File(DATA_DIR, "Replays/");
|
||||
return replayDir;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the current skin directory.
|
||||
* If invalid, this will create a "Skins" folder in the root directory.
|
||||
@@ -892,6 +908,9 @@ public class Options {
|
||||
case "ScreenshotDirectory":
|
||||
screenshotDir = new File(value);
|
||||
break;
|
||||
case "ReplayDirectory":
|
||||
replayDir = new File(value);
|
||||
break;
|
||||
case "Skin":
|
||||
skinDir = new File(value);
|
||||
break;
|
||||
@@ -1054,6 +1073,8 @@ public class Options {
|
||||
writer.newLine();
|
||||
writer.write(String.format("ScreenshotDirectory = %s", getScreenshotDir().getAbsolutePath()));
|
||||
writer.newLine();
|
||||
writer.write(String.format("ReplayDirectory = %s", getReplayDir().getAbsolutePath()));
|
||||
writer.newLine();
|
||||
writer.write(String.format("Skin = %s", getSkinDir().getAbsolutePath()));
|
||||
writer.newLine();
|
||||
writer.write(String.format("ThemeSong = %s", themeString));
|
||||
|
||||
Reference in New Issue
Block a user