diff --git a/android/app/src/main/java/io/github/kichikuou/system3/GameActivity.kt b/android/app/src/main/java/io/github/kichikuou/system3/GameActivity.kt index 154eeec..f8db9f1 100644 --- a/android/app/src/main/java/io/github/kichikuou/system3/GameActivity.kt +++ b/android/app/src/main/java/io/github/kichikuou/system3/GameActivity.kt @@ -25,11 +25,13 @@ import org.libsdl.app.SDLActivity import java.io.File import java.io.IOException -// Intent for this activity must have the following extra: +// Intent for this activity must have the following extras: // - EXTRA_GAME_ROOT (string): A path to the game installation. +// - EXTRA_SAVE_DIR (string): A directory where save files will be stored. class GameActivity : SDLActivity() { companion object { const val EXTRA_GAME_ROOT = "GAME_ROOT" + const val EXTRA_SAVE_DIR = "SAVE_DIR" } private lateinit var gameRoot: File @@ -59,7 +61,9 @@ class GameActivity : SDLActivity() { } override fun getArguments(): Array { - return arrayOf("-gamedir", intent.getStringExtra(EXTRA_GAME_ROOT)) + return arrayOf("-antialias", + "-gamedir", intent.getStringExtra(EXTRA_GAME_ROOT), + "-savedir", intent.getStringExtra(EXTRA_SAVE_DIR) + "/") } override fun setTitle(title: CharSequence?) { @@ -98,7 +102,7 @@ private class CddaPlayer(private val playlistPath: File) { Log.w("cddaStart", "No playlist entry for track $track") return } - Log.v("cddaStart", "${f} Loop:${loop}") + Log.v("cddaStart", "$f Loop:$loop") try { player.apply { reset() diff --git a/android/app/src/main/java/io/github/kichikuou/system3/Launcher.kt b/android/app/src/main/java/io/github/kichikuou/system3/Launcher.kt index 61a6b3e..bbfcd81 100644 --- a/android/app/src/main/java/io/github/kichikuou/system3/Launcher.kt +++ b/android/app/src/main/java/io/github/kichikuou/system3/Launcher.kt @@ -23,7 +23,6 @@ import android.os.Handler import android.os.Message import android.util.Log import java.io.* -import java.lang.StringBuilder import java.nio.charset.Charset import java.util.* import java.util.zip.ZipEntry @@ -68,6 +67,8 @@ class Launcher private constructor(private val rootDir: File) { var observer: LauncherObserver? = null var isInstalling = false private set + val saveDir: File + get() = File(rootDir, SAVE_DIR) init { updateGameList() @@ -124,7 +125,7 @@ class Launcher private constructor(private val rootDir: File) { } } if (!saveDirFound) { - File(rootDir, SAVE_DIR).mkdir() + saveDir.mkdir() } } @@ -145,7 +146,7 @@ class Launcher private constructor(private val rootDir: File) { } else { ZipOutputStream(output.buffered()) }.use { zip -> - for (path in File(rootDir, SAVE_DIR).listFiles()) { + for (path in saveDir.listFiles()) { if (path.isDirectory || path.name.endsWith(".asd.")) continue val pathInZip = "${SAVE_DIR}/${path.name}" diff --git a/android/app/src/main/java/io/github/kichikuou/system3/LauncherActivity.kt b/android/app/src/main/java/io/github/kichikuou/system3/LauncherActivity.kt index 2d04e20..fddf9ae 100644 --- a/android/app/src/main/java/io/github/kichikuou/system3/LauncherActivity.kt +++ b/android/app/src/main/java/io/github/kichikuou/system3/LauncherActivity.kt @@ -158,6 +158,7 @@ class LauncherActivity : ListActivity(), AdapterView.OnItemLongClickListener, La val i = Intent() i.setClass(applicationContext, GameActivity::class.java) i.putExtra(GameActivity.EXTRA_GAME_ROOT, path.path) + i.putExtra(GameActivity.EXTRA_SAVE_DIR, launcher.saveDir.path) startActivity(i) }