fix sprite substitution

# Conflicts:
#	Habitica/src/main/java/com/habitrpg/android/habitica/HabiticaBaseApplication.kt
#	common/src/main/java/com/habitrpg/common/habitica/extensions/DataBindingUtils.kt
#	version.properties
This commit is contained in:
Phillip Thelen 2023-03-08 14:08:55 +01:00
parent edf8d5bbe3
commit 6cdf5c7bf6

View file

@ -18,8 +18,6 @@ import com.habitrpg.common.habitica.helpers.AppConfigManager
import com.habitrpg.common.habitica.views.PixelArtView
import java.util.Collections
import java.util.Date
import kotlin.time.DurationUnit
import kotlin.time.toDuration
fun PixelArtView.loadImage(imageName: String?, imageFormat: String? = null) {
val shouldLoadImage = DataBindingUtils.existsAsImage(imageName)
@ -78,8 +76,8 @@ object DataBindingUtils {
imageName.startsWith("handleless") -> "chair_$imageName"
else -> imageName
}
return name + if (imageFormat == null && FILEFORMAT_MAP.containsKey(name)) {
"." + FILEFORMAT_MAP[name]
return name + if (imageFormat == null && FILEFORMAT_MAP.containsKey(imageName)) {
"." + FILEFORMAT_MAP[imageName]
} else {
".${imageFormat ?: "png"}"
}
@ -125,14 +123,17 @@ object DataBindingUtils {
private var spriteSubstitutions: Map<String, String> = HashMap()
get() {
if (Date().time - (lastSubstitutionCheck?.time ?: 0) > 30.toDuration(DurationUnit.MINUTES).inWholeMilliseconds) {
field = AppConfigManager().spriteSubstitutions()["generic"] ?: HashMap()
if (Date().time - (lastSubstitutionCheck?.time ?: 0) > 180000) {
val subs = configManager?.spriteSubstitutions()
field = subs?.get("generic") ?: subs?.get("pets") ?: HashMap()
lastSubstitutionCheck = Date()
}
return field
}
private var lastSubstitutionCheck: Date? = null
var configManager: AppConfigManager? = null
init {
val tempMap = HashMap<String, String>()
tempMap["head_special_1"] = "gif"