release
This commit is contained in:
BIN
app/release/app-release.apk
Normal file
BIN
app/release/app-release.apk
Normal file
Binary file not shown.
1
app/release/output.json
Normal file
1
app/release/output.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
|
@ -23,7 +23,7 @@ class MainActivity : AppCompatActivity() {
|
|||||||
var buttons: Array<Button> = emptyArray()
|
var buttons: Array<Button> = emptyArray()
|
||||||
var imageViews: Array<ImageView?> = emptyArray()
|
var imageViews: Array<ImageView?> = emptyArray()
|
||||||
var history: MutableList<State> = ArrayList()
|
var history: MutableList<State> = ArrayList()
|
||||||
var game: Int = 0
|
var step: Int = 0
|
||||||
var undo: MenuItem? = null
|
var undo: MenuItem? = null
|
||||||
var redo: MenuItem? = null
|
var redo: MenuItem? = null
|
||||||
|
|
||||||
@ -64,13 +64,13 @@ class MainActivity : AppCompatActivity() {
|
|||||||
|
|
||||||
override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) {
|
override fun onOptionsItemSelected(item: MenuItem) = when (item.itemId) {
|
||||||
R.id.action_undo -> {
|
R.id.action_undo -> {
|
||||||
game--
|
step--
|
||||||
reloadState()
|
reloadState()
|
||||||
redo?.isVisible = true
|
redo?.isVisible = true
|
||||||
true
|
true
|
||||||
}
|
}
|
||||||
R.id.action_redo -> {
|
R.id.action_redo -> {
|
||||||
game++
|
step++
|
||||||
reloadState()
|
reloadState()
|
||||||
undo?.isVisible = true
|
undo?.isVisible = true
|
||||||
true
|
true
|
||||||
@ -94,20 +94,20 @@ class MainActivity : AppCompatActivity() {
|
|||||||
|
|
||||||
fun saveState() {
|
fun saveState() {
|
||||||
val state = State(players.map { it.score }, serviceSide)
|
val state = State(players.map { it.score }, serviceSide)
|
||||||
if (game == history.size) {
|
if (step == history.size) {
|
||||||
history.add(state)
|
history.add(state)
|
||||||
} else {
|
} else {
|
||||||
history[game] = state
|
history[step] = state
|
||||||
history = history.subList(0, game+1).toMutableList()
|
history = history.subList(0, step+1).toMutableList()
|
||||||
}
|
}
|
||||||
if (game > 0) {
|
if (step > 0) {
|
||||||
undo?.isVisible = true
|
undo?.isVisible = true
|
||||||
}
|
}
|
||||||
redo?.isVisible = false
|
redo?.isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
fun reloadState() {
|
fun reloadState() {
|
||||||
history[game].let{
|
history[step].let{
|
||||||
players.zip(it.score).forEach{(player, score) -> player.score = score}
|
players.zip(it.score).forEach{(player, score) -> player.score = score}
|
||||||
serviceSide = it.serviceSide
|
serviceSide = it.serviceSide
|
||||||
relaunchSide = when(serviceSide) {
|
relaunchSide = when(serviceSide) {
|
||||||
@ -115,11 +115,11 @@ class MainActivity : AppCompatActivity() {
|
|||||||
Side.RIGHT -> Side.LEFT
|
Side.RIGHT -> Side.LEFT
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
when(game){
|
when(step){
|
||||||
0 -> undo?.isVisible = false
|
0 -> undo?.isVisible = false
|
||||||
history.size - 1 -> redo?.isVisible = false
|
history.size - 1 -> redo?.isVisible = false
|
||||||
}
|
}
|
||||||
this.game = game
|
this.step = step
|
||||||
updateUI()
|
updateUI()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -159,7 +159,7 @@ class MainActivity : AppCompatActivity() {
|
|||||||
for (side in enumValues<Side>()) {
|
for (side in enumValues<Side>()) {
|
||||||
if (view == buttons[side.value]) {
|
if (view == buttons[side.value]) {
|
||||||
if (!matchIsFinished()) {
|
if (!matchIsFinished()) {
|
||||||
game++
|
step++
|
||||||
players[side.value].score++
|
players[side.value].score++
|
||||||
if (players.sumBy { it.score } % 2 == 0) {
|
if (players.sumBy { it.score } % 2 == 0) {
|
||||||
serviceSide = relaunchSide.also { relaunchSide = serviceSide }
|
serviceSide = relaunchSide.also { relaunchSide = serviceSide }
|
||||||
|
Reference in New Issue
Block a user