diff --git a/app/src/module_game/java/com/chwl/app/game/core/GameMessageAbility.kt b/app/src/module_game/java/com/chwl/app/game/core/GameMessageAbility.kt index 580d483e0..f136af60d 100644 --- a/app/src/module_game/java/com/chwl/app/game/core/GameMessageAbility.kt +++ b/app/src/module_game/java/com/chwl/app/game/core/GameMessageAbility.kt @@ -1,10 +1,12 @@ package com.chwl.app.game.core +import com.chwl.app.R import com.chwl.core.support.listener.ListenerOwner import com.chwl.core.support.listener.ListenerStore import com.chwl.core.support.listener.SafeListenerOwner import com.chwl.core.support.room.RoomAbility import com.chwl.core.support.room.RoomContext +import com.chwl.library.utils.ResUtil import com.netease.nimlib.sdk.chatroom.ChatRoomMessageBuilder import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage import com.netease.nimlib.sdk.msg.constant.MsgTypeEnum @@ -51,6 +53,17 @@ class GameMessageAbility(private val listenerOwner: ListenerOwner(GameIMEngineAbility::class.java.simpleName) imEngineAbility?.addListener(this) + addSystemNotify() + } + + private fun addSystemNotify() { + val message = ChatRoomMessageBuilder.createTipMessage( + roomContext?.roomId?.toString() ?: "" + ) + message.content = ResUtil.getString( + R.string.yizhuan_xchat_android_constants_xchatconstants_01 + ) + addMessage(message) } override fun onStop(context: RoomContext) { diff --git a/app/src/module_game/java/com/chwl/app/game/core/engine/SudEngineAbility.kt b/app/src/module_game/java/com/chwl/app/game/core/engine/SudEngineAbility.kt index d1344aaeb..8e892ff6f 100644 --- a/app/src/module_game/java/com/chwl/app/game/core/engine/SudEngineAbility.kt +++ b/app/src/module_game/java/com/chwl/app/game/core/engine/SudEngineAbility.kt @@ -6,10 +6,8 @@ import android.view.View import android.view.ViewTreeObserver import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.MutableLiveData import com.chwl.app.R import com.chwl.app.avroom.game.AppConfig -import com.chwl.app.game.core.GameQueueAbility import com.chwl.core.auth.AuthModel import com.chwl.core.room.game.GameModel import com.chwl.core.room.game.bean.GameCfg @@ -25,7 +23,6 @@ import com.chwl.library.language.LanguageHelper import com.chwl.library.utils.SingleToastUtil import com.chwl.library.utils.json.JsonUtils import com.example.lib_utils.log.ILog -import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableStateFlow import tech.sud.mgp.core.ISudFSMStateHandle import tech.sud.mgp.core.ISudListenerInitSDK diff --git a/app/src/module_game/java/com/chwl/app/game/ui/game/widgets/message/GameMessageAdapter.kt b/app/src/module_game/java/com/chwl/app/game/ui/game/widgets/message/GameMessageAdapter.kt index 91d74f597..15097946c 100644 --- a/app/src/module_game/java/com/chwl/app/game/ui/game/widgets/message/GameMessageAdapter.kt +++ b/app/src/module_game/java/com/chwl/app/game/ui/game/widgets/message/GameMessageAdapter.kt @@ -75,10 +75,19 @@ class GameMessageAdapter(val dataList: MutableList) : if (item is ChatRoomMessage) { if (item.msgType == MsgTypeEnum.text) { convertText(viewHolder, item) + } else if (item.msgType == MsgTypeEnum.tip) { + convertTips(viewHolder, item) } } } + private fun convertTips(holder: GameMessageNormalViewHolder, message: ChatRoomMessage) { + val textView = holder.textView + textView.setTextColor(ContextCompat.getColor(textView.context, R.color.color_white)) + textView.text = message.content + textView.setBackgroundResource(R.drawable.shape_room_message_tip_bg) + } + private fun convertText(holder: GameMessageNormalViewHolder, message: ChatRoomMessage) { val textView = holder.textView val text = TextSpannableBuilder(textView)