diff --git a/Habitica/res/values/strings.xml b/Habitica/res/values/strings.xml
index 0d1a30819..a7784e7d3 100644
--- a/Habitica/res/values/strings.xml
+++ b/Habitica/res/values/strings.xml
@@ -340,7 +340,7 @@
Standard
Magic Potion
Quest
- Rare
+ Special
Wacky
World Quest
Need a break? Check into Daniel’s Inn to pause some of Habitica’s more difficult game mechanics:\n\n
@@ -894,4 +894,5 @@
Guild Description
Invite to Guild
Join Guild
+ Garden
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/PetDetailRecyclerAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/PetDetailRecyclerAdapter.kt
index cfa897c5d..3694bdb94 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/PetDetailRecyclerAdapter.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/PetDetailRecyclerAdapter.kt
@@ -96,7 +96,11 @@ class PetDetailRecyclerAdapter(data: OrderedRealmCollection?, autoUpdate: B
fun bind(item: Pet, ownedPet: OwnedPet?) {
this.animal = item
this.ownedPet = ownedPet
- this.titleView.text = item.color
+ if (item.color == "Veggie") {
+ this.titleView.text = context?.getString(R.string.garden)
+ } else {
+ this.titleView.text = item.color
+ }
this.imageView.alpha = 1.0f
val imageName = "Pet-$itemType-${item.color}"
if (this.ownedPet?.trained ?: 0 > 0) {
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt
index 04d5dae18..e093ce4ee 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt
@@ -87,7 +87,7 @@ class StableRecyclerAdapter : androidx.recyclerview.widget.RecyclerView.Adapter<
"Mount_Icon_" + item.key
}
this.ownedTextView.text = animal?.numberOwned?.toString()
- ownedTextView.visibility = if (animal?.numberOwned == 0) View.GONE else View.VISIBLE
+ ownedTextView.visibility = if (animal?.numberOwned == 0 || animal?.type == "special") View.GONE else View.VISIBLE
imageView.background = null
DataBindingUtils.loadImage(imageName) {
val drawable = BitmapDrawable(context?.resources, if (item.numberOwned > 0) it else it.extractAlpha())
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/ContentDeserializer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/ContentDeserializer.kt
index 360672422..a26869712 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/ContentDeserializer.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/ContentDeserializer.kt
@@ -69,6 +69,10 @@ class ContentDeserializer : JsonDeserializer {
pet.key = petObj.getAsString("key")
pet.text = petObj.getAsString("text")
pet.type = petObj.getAsString("type")
+ if (pet.type == "special") {
+ pet.animal = pet.key.split("-")[0]
+ pet.color = pet.key.split("-")[1]
+ }
if (pet.type == "premium") {
pet.premium = true
}
@@ -84,6 +88,10 @@ class ContentDeserializer : JsonDeserializer {
mount.color = mountObj.getAsString("potion")
mount.key = mountObj.getAsString("key")
mount.type = mountObj.getAsString("type")
+ if (mount.type == "special") {
+ mount.animal = mount.key.split("-")[0]
+ mount.color = mount.key.split("-")[1]
+ }
if (mount.type == "premium") {
mount.premium = true
}