Код IT Загрузка примера кода…

Kotlin main.kt
fun onAction(action: PetAction) {
    val current = _petState.value
    val updated = when (action) {
        PetAction.Feed -> current.copy(
            energy = current.energy + 25,
            health = current.health + 8,
        )
        PetAction.Play -> current.copy(
            energy = current.energy - 18,
            health = current.health + 12,
            cleanliness = current.cleanliness - 8,
        )
        PetAction.Wash -> current.copy(
            cleanliness = current.cleanliness + 35,
            energy = current.energy - 5,
        )
    }.clamped().copy(lastUpdatedMillis = System.currentTimeMillis())

    _petState.value = updated
    _feedback.value = actionFeedback(action)
    persist(updated)
}
fun onAction(action: PetAction) {
    val current = _petState.value
    val updated = when (action) {
        PetAction.Feed -> current.copy(
            energy = current.energy + 25,
            health = current.health + 8,
        )
        PetAction.Play -> current.copy(
            energy = current.energy - 18,
            health = current.health + 12,
            cleanliness = current.cleanliness - 8,
        )
        PetAction.Wash -> current.copy(
            cleanliness = current.cleanliness + 35,
            energy = current.energy - 5,
        )
    }.clamped().copy(lastUpdatedMillis = System.currentTimeMillis())

    _petState.value = updated
    _feedback.value = actionFeedback(action)
    persist(updated)
}