fix parcelize

This commit is contained in:
Phillip Thelen 2022-08-30 13:08:27 +02:00
parent f0999429f5
commit 7e85b6e79b
11 changed files with 50 additions and 53 deletions

View file

@ -1,29 +1,19 @@
package com.habitrpg.android.habitica.data
import com.habitrpg.common.habitica.api.HostConfig
import com.habitrpg.android.habitica.models.Achievement
import com.habitrpg.android.habitica.models.ContentResult
import com.habitrpg.android.habitica.models.LeaveChallengeBody
import com.habitrpg.common.habitica.models.PurchaseValidationRequest
import com.habitrpg.common.habitica.models.PurchaseValidationResult
import com.habitrpg.android.habitica.models.Tag
import com.habitrpg.android.habitica.models.TeamPlan
import com.habitrpg.android.habitica.models.WorldState
import com.habitrpg.common.habitica.models.auth.UserAuthResponse
import com.habitrpg.android.habitica.models.inventory.Equipment
import com.habitrpg.android.habitica.models.inventory.Quest
import com.habitrpg.android.habitica.models.members.Member
import com.habitrpg.android.habitica.models.responses.BulkTaskScoringData
import com.habitrpg.android.habitica.models.responses.BuyResponse
import com.habitrpg.common.habitica.models.responses.ErrorResponse
import com.habitrpg.common.habitica.models.responses.FeedResponse
import com.habitrpg.common.habitica.models.responses.HabitResponse
import com.habitrpg.android.habitica.models.responses.PostChatMessageResult
import com.habitrpg.android.habitica.models.responses.SkillResponse
import com.habitrpg.common.habitica.models.responses.Status
import com.habitrpg.common.habitica.models.responses.TaskDirectionData
import com.habitrpg.android.habitica.models.responses.UnlockResponse
import com.habitrpg.common.habitica.models.responses.VerifyUsernameResponse
import com.habitrpg.android.habitica.models.shops.Shop
import com.habitrpg.android.habitica.models.shops.ShopItem
import com.habitrpg.android.habitica.models.social.Challenge

View file

@ -10,7 +10,6 @@ import com.habitrpg.android.habitica.models.inventory.Pet
import com.habitrpg.android.habitica.models.inventory.Quest
import com.habitrpg.android.habitica.models.inventory.QuestContent
import com.habitrpg.android.habitica.models.responses.BuyResponse
import com.habitrpg.common.habitica.models.responses.FeedResponse
import com.habitrpg.android.habitica.models.shops.Shop
import com.habitrpg.android.habitica.models.shops.ShopItem
import com.habitrpg.android.habitica.models.user.Items

View file

@ -14,7 +14,6 @@ import com.habitrpg.android.habitica.models.inventory.Pet
import com.habitrpg.android.habitica.models.inventory.Quest
import com.habitrpg.android.habitica.models.inventory.QuestContent
import com.habitrpg.android.habitica.models.responses.BuyResponse
import com.habitrpg.common.habitica.models.responses.FeedResponse
import com.habitrpg.android.habitica.models.shops.Shop
import com.habitrpg.android.habitica.models.shops.ShopItem
import com.habitrpg.android.habitica.models.user.Items

View file

@ -38,6 +38,8 @@ import com.habitrpg.android.habitica.models.tasks.Task
import com.habitrpg.android.habitica.ui.helpers.dismissKeyboard
import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel
import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog
import com.habitrpg.common.habitica.extensions.dpToPx
import com.habitrpg.common.habitica.extensions.getThemeColor
import com.habitrpg.shared.habitica.models.tasks.Attribute
import com.habitrpg.shared.habitica.models.tasks.Frequency
import com.habitrpg.shared.habitica.models.tasks.HabitResetOption
@ -537,7 +539,7 @@ class TaskFormActivity : BaseActivity() {
thisTask = configureTask(thisTask)
val resultIntent = Intent()
resultIntent.putExtra(TASK_TYPE_KEY, taskType)
resultIntent.putExtra(TASK_TYPE_KEY, taskType.value)
if (!isChallengeTask) {
if (isCreating) {
if (isDiscardCancelled) {

View file

@ -2,6 +2,7 @@ plugins {
kotlin("multiplatform")
id("com.android.library")
id("kotlin-parcelize")
id("kotlin-kapt")
}
kotlin {

View file

@ -16,9 +16,9 @@ class TaskDirectionDataQuest {
}
@HParcelize
class TaskDirectionDataDrop: HParcelable {
var value: Int = 0
var key: String? = null
var type: String? = null
var dialog: String? = null
}
data class TaskDirectionDataDrop(
var value: Int,
var key: String?,
var type: String?,
var dialog: String?,
): HParcelable

View file

@ -5,32 +5,31 @@ import com.habitrpg.shared.habitica.HParcelize
import com.habitrpg.shared.habitica.models.AvatarStats
@HParcelize
class TaskScoringResult(): HParcelable {
constructor(data: TaskDirectionData, stats: AvatarStats?) : this() {
hasLeveledUp = data.lvl > (stats?.lvl ?: 0)
healthDelta = data.hp - (stats?.hp ?: 0.0)
hasDied = data.hp <= 0.0
experienceDelta = if (hasLeveledUp) {
data class TaskScoringResult(var hasDied: Boolean,
var drop: TaskDirectionDataDrop?,
var experienceDelta: Double,
var healthDelta: Double,
var goldDelta: Double,
var manaDelta: Double,
var hasLeveledUp: Boolean,
var level: Int,
var questDamage: Double?,
var questItemsFound: Int?): HParcelable {
constructor(data: TaskDirectionData, stats: AvatarStats?) : this(
data.hp <= 0.0,
data._tmp?.drop,
if (data.lvl > (stats?.lvl ?: 0)) {
(stats?.toNextLevel ?: 0).toDouble() - (stats?.exp ?: 0.0) + data.exp
} else {
data.exp - (stats?.exp ?: 0.0)
}
manaDelta = data.mp - (stats?.mp ?: 0.0)
goldDelta = data.gp - (stats?.gp ?: 0.0)
level = data.lvl
questDamage = data._tmp?.quest?.progressDelta
questItemsFound = data._tmp?.quest?.collection
drop = data._tmp?.drop
}
var hasDied: Boolean = false
var drop: TaskDirectionDataDrop? = null
var experienceDelta: Double? = null
var healthDelta: Double? = null
var goldDelta: Double? = null
var manaDelta: Double? = null
var hasLeveledUp: Boolean = false
var level: Int? = null
var questDamage: Double? = null
var questItemsFound: Int? = null
},
data.hp - (stats?.hp ?: 0.0),
data.gp - (stats?.gp ?: 0.0),
data.mp - (stats?.mp ?: 0.0),
data.lvl > (stats?.lvl ?: 0),
data.lvl,
data._tmp?.quest?.progressDelta,
data._tmp?.quest?.collection
)
}

View file

@ -1,2 +1,2 @@
NAME=4.0.1
CODE=4420
CODE=4460

View file

@ -1,9 +1,10 @@
package com.habitrpg.wearos.habitica.models.user
import com.habitrpg.shared.habitica.models.AvatarGear
import com.squareup.moshi.JsonClass
@JsonClass(generateAdapter = true)
open class Gear {
var equipped: Outfit? = null
var costume: Outfit? = null
open class Gear: AvatarGear {
override var equipped: Outfit? = null
override var costume: Outfit? = null
}

View file

@ -1,11 +1,12 @@
package com.habitrpg.wearos.habitica.models.user
import com.habitrpg.shared.habitica.models.AvatarItems
import com.squareup.moshi.JsonClass
@JsonClass(generateAdapter = true)
class Items {
var gear: Gear? = null
class Items: AvatarItems {
override var gear: Gear? = null
var currentMount: String? = null
var currentPet: String? = null
override var currentMount: String? = null
override var currentPet: String? = null
}

View file

@ -1,7 +1,9 @@
package com.habitrpg.wearos.habitica.models.user
import com.habitrpg.shared.habitica.models.Avatar
import com.habitrpg.shared.habitica.models.AvatarAuthentication
import com.habitrpg.shared.habitica.models.tasks.TasksOrder
import com.squareup.moshi.Json
import com.squareup.moshi.JsonClass
@JsonClass(generateAdapter = true)
@ -14,12 +16,15 @@ class User: Avatar {
override val currentPet: String?
get() = items?.currentPet
override var sleep: Boolean = false
override var balance: Double = 0.0
@Json(ignore = true)
override var authentication: AvatarAuthentication? = null
override var stats: Stats? = null
override var preferences: Preferences? = null
override var flags: Flags? = null
override var gemCount: Int = 0
override var hourglassCount: Int = 0
var items: Items? = null
override var items: Items? = null
override val costume: Outfit?
get() = items?.gear?.costume
override val equipped: Outfit?