房间 "夺宝精灵" 精灵分解. 根据不同等级的精灵, 显示不同的提示文案

This commit is contained in:
wzq
2023-10-12 16:36:36 +08:00
parent b92c97dfb9
commit 80d571d1d1
6 changed files with 47 additions and 7 deletions

View File

@@ -66,7 +66,7 @@ android {
lint {
abortOnError false
disable 'MissingTranslation', 'ExtraTranslation', 'ContentDescription'
disable 'MissingTranslation', 'ExtraTranslation', 'ContentDescription', 'SmallSp'
}

View File

@@ -147,6 +147,7 @@ class TestFairyFragment : BaseViewBindingFragment<TreasureFairyFragmentTestFairy
val p = binding.ivFairy3.layoutParams as ConstraintLayout.LayoutParams
p.verticalBias = 0.9f
binding.tvResolveTips.visibility = View.VISIBLE
binding.tvResolveTips.text = getString(R.string.tips_fairy_resolve_low)
binding.viewBgTop.setBackgroundResource(R.drawable.treasure_fairy_bg_test_fairy_legend)
binding.ivBegin.setBackgroundResource(R.drawable.treasure_fairy_bg_resolve_fairy_begin)
binding.tvTips.text = "點擊投入需要分解的精靈"
@@ -224,8 +225,16 @@ class TestFairyFragment : BaseViewBindingFragment<TreasureFairyFragmentTestFairy
if (fairyType == MyFairyItemView.BASE) {
fairyResolveViews.forEachIndexed { index, imageView ->
it?.get(index)?.elfPicUrl?.let { elfPicUrl ->
binding.tvResolveTips.text = getString(
if (it[index].level == FairyInfo.LEVEL_HIGH) {
R.string.tips_fairy_resolve_high
} else {
R.string.tips_fairy_resolve_low
}
)
imageView.load(elfPicUrl)
} ?: run {
binding.tvResolveTips.text = getString(R.string.tips_fairy_resolve_low)
imageView.setImageDrawable(null)
}
}

View File

@@ -95,7 +95,7 @@
android:id="@+id/tv_resolve_tips"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tips_fairy_resolve"
android:text="@string/tips_fairy_resolve_low"
android:textColor="@color/color_ffe8aa"
android:textSize="8sp"
app:layout_constraintBottom_toTopOf="@id/iv_begin"

View File

@@ -5132,6 +5132,7 @@
<string name="fairy_debris_not_enough_please_buy">可用碎片不足,請購買</string>
<string name="zero">0</string>
<string name="please_input_quantity">輸入數量</string>
<string name="tips_fairy_resolve">分解普通精靈將隨機獲得80-100個碎片</string>
<string name="tips_fairy_resolve_low">分解普通精靈將隨機獲得80-100個碎片</string>
<string name="tips_fairy_resolve_high">分解傳說精靈將隨機獲得400-500個碎片</string>
</resources>

View File

@@ -8,5 +8,18 @@ data class FairyInfo(
val elfLevel: Int = 0,
val elfName: String = "",
val elfPicUrl: String = "",
var selectedNum:Int
) : Serializable
var selectedNum: Int
) : Serializable {
/**
* 精灵等级, 对应 lowElves= 0, middleElves = 1, highElves = 2
* 服务端未添加区分精灵等级字段. 本地根据数组遍历赋值
*/
var level: Int = LEVEL_LOW
companion object {
const val LEVEL_LOW = 0
const val LEVEL_MIDDLE = 1
const val LEVEL_HIGH = 2
}
}

View File

@@ -3,6 +3,9 @@ package com.yizhuan.xchat_android_core.treasurefairy
import com.yizhuan.xchat_android_core.bean.response.ServiceResult
import com.yizhuan.xchat_android_core.gift.bean.SimpleUserInfo
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager
import com.yizhuan.xchat_android_core.treasurefairy.FairyInfo.Companion.LEVEL_HIGH
import com.yizhuan.xchat_android_core.treasurefairy.FairyInfo.Companion.LEVEL_LOW
import com.yizhuan.xchat_android_core.treasurefairy.FairyInfo.Companion.LEVEL_MIDDLE
import com.yizhuan.xchat_android_core.utils.net.launchRequest
import com.yizhuan.xchat_android_library.net.rxnet.RxNet
import retrofit2.http.*
@@ -42,8 +45,22 @@ object TreasureFairyModel {
api.getForestInfo()
}
suspend fun getMyFairyInfo(): MyFairyInfo? = launchRequest {
api.getMyFairyInfo()
suspend fun getMyFairyInfo(): MyFairyInfo? {
val data = launchRequest {
api.getMyFairyInfo()
}
data?.lowElves?.forEach {
it.level = LEVEL_LOW
}
data?.middleElves?.forEach {
it.level = LEVEL_MIDDLE
}
data?.highElves?.forEach {
it.level = LEVEL_HIGH
}
return data
}
suspend fun getFriendsList(nick: String?): List<SimpleUserInfo>? = launchRequest {