diff --git a/.gitignore b/.gitignore index 9bd1082..0b286fe 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,7 @@ /captures .externalNativeBuild *.ser +*.ser +*.apk +*.apk +*.ser diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index ed34ff9..b781930 100644 Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ diff --git a/app/release/app-release.apk b/app/release/app-release.apk index d9ede82..8ed551f 100644 Binary files a/app/release/app-release.apk and b/app/release/app-release.apk differ diff --git a/app/src/main/java/adrienmalin/pingpoints/MatchActivity.kt b/app/src/main/java/adrienmalin/pingpoints/MatchActivity.kt index fe0a8a4..dff4ed7 100644 --- a/app/src/main/java/adrienmalin/pingpoints/MatchActivity.kt +++ b/app/src/main/java/adrienmalin/pingpoints/MatchActivity.kt @@ -65,7 +65,7 @@ class MatchActivity : AppCompatActivity() { findViewById(R.id.imgService1) ) - // Init or restore ViewModel + // Init ViewModel matchModel = ViewModelProviders.of(this).get(MatchModel::class.java) matchModel?.apply { if (!matchStarted) { @@ -172,10 +172,9 @@ class MatchActivity : AppCompatActivity() { fun updateScore(view: View) { matchModel?.apply { if (!matchFinished) { - for (side in 0..1) { - if (view == buttons[side]) { - updateScore(players[side]) - } + when(view) { + buttons[0] -> updateScore(players[0]) + buttons[1] -> updateScore(players[1]) } updateUI() } diff --git a/app/src/main/java/adrienmalin/pingpoints/MatchModel.kt b/app/src/main/java/adrienmalin/pingpoints/MatchModel.kt index 9f482bc..4a6a535 100644 --- a/app/src/main/java/adrienmalin/pingpoints/MatchModel.kt +++ b/app/src/main/java/adrienmalin/pingpoints/MatchModel.kt @@ -29,7 +29,6 @@ class MatchModel : ViewModel() { } fun updateScore(scorer: Player) { - pointId++ scorer.score++ if ((players.sumBy { it.score } % 2 == 0) or (players.all { it.score >= 10 })) { serviceSide = relaunchSide.also { relaunchSide = serviceSide } @@ -46,7 +45,7 @@ class MatchModel : ViewModel() { fun saveState() { val point = Point(players.map { it.score }, serviceSide) - if (pointId == history.size) { + if (++pointId == history.size) { history.add(point) } else { history[pointId] = point @@ -54,7 +53,7 @@ class MatchModel : ViewModel() { } fun undo() { - history[pointId--].let{ + history[pointId--].let { players.zip(it.score).forEach{(player, score) -> player.score = score} serviceSide = it.serviceSide relaunchSide = when(serviceSide) { diff --git a/app/src/main/java/adrienmalin/pingpoints/StarterNameActivity.kt b/app/src/main/java/adrienmalin/pingpoints/StarterNameActivity.kt index 4cc5df5..cb81d5b 100644 --- a/app/src/main/java/adrienmalin/pingpoints/StarterNameActivity.kt +++ b/app/src/main/java/adrienmalin/pingpoints/StarterNameActivity.kt @@ -44,8 +44,7 @@ class StarterNameActivity : AppCompatActivity() { enableSttSwitch = findViewById(R.id.enableSttSwitch) // Restore previous data - previousMatch = getPreferences(Context.MODE_PRIVATE) - previousMatch?.apply { + previousMatch = getPreferences(Context.MODE_PRIVATE).apply { previousPlayers = getStringSet("previousPlayers", emptySet()) val adapter = ArrayAdapter( this@StarterNameActivity, diff --git a/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt b/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt index 0311fa8..0e2889c 100644 --- a/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt +++ b/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt @@ -25,10 +25,8 @@ class VictoryActivity : AppCompatActivity() { val previousMatch = getPreferences(Context.MODE_PRIVATE) - // Init victoryModel - victoryModel = ViewModelProviders.of(this).get(VictoryModel::class.java) - - victoryModel?.apply { + // Init VictoryModel + victoryModel = ViewModelProviders.of(this).get(VictoryModel::class.java).apply { if (!matchFinished) { matchFinished = true winnerName = intent.getStringExtra("winnerName")