tawasuyu

sergio/humanoid

HTML 13TOML 10 Definiciones

⎇ 608145b4b469bb0f8b58179bb8338053430cbdb6 launcher/src/main/java/com/rizoma/orbita/data/Weather.kt 26 líneas · 792 B Historia crudo

Órbita: quitar apps del átomo (sin desinstalar) + fondo según hora y clima 608145b4b · sergio ·

1package com.rizoma.orbita.data
2
3/** Familias de cielo en las que agrupamos los códigos WMO de Open-Meteo. */
4enum class Sky { CLEAR, CLOUDY, OVERCAST, FOG, RAIN, SNOW, STORM }
5
6/**
7 * Estado del clima local en este instante. [code] es el código WMO
8 * (https://open-meteo.com/en/docs) del que derivamos la familia de [sky].
9 */
10data class Weather(
11    val code: Int,
12    val temperatureC: Float,
13    val isDay: Boolean,
14) {
15    val sky: Sky
16        get() = when (code) {
17            0, 1 -> Sky.CLEAR
18            2 -> Sky.CLOUDY
19            3 -> Sky.OVERCAST
20            45, 48 -> Sky.FOG
21            51, 53, 55, 56, 57, 61, 63, 65, 66, 67, 80, 81, 82 -> Sky.RAIN
22            71, 73, 75, 77, 85, 86 -> Sky.SNOW
23            95, 96, 99 -> Sky.STORM
24            else -> Sky.CLOUDY
25        }
26}