From b25276875bc60197d6e73c233c9fffbbedcc96d7 Mon Sep 17 00:00:00 2001 From: max Date: Mon, 3 Jun 2024 19:00:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=AE=8C=E6=88=90=E6=88=BF=E9=97=B4-?= =?UTF-8?q?=E6=B8=B8=E6=88=8F=E5=88=87=E6=8D=A2=E5=85=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/avroom/adapter/RoomGameListAdapter.kt | 18 ++ .../app/avroom/adapter/SelectGameAdapter.kt | 15 -- .../app/avroom/dialog/CreateGameRoomDialog.kt | 2 +- .../app/avroom/dialog/CreateRoomDialog.kt | 2 +- .../app/avroom/dialog/RoomGameListDialog.kt | 223 ++++++++++++++++++ .../app/avroom/dialog/RoomGameplayDialog.kt | 23 +- .../app/avroom/fragment/BaseRoomFragment.kt | 4 + .../app/avroom/fragment/GameRoomFragment.kt | 39 ++- .../avroom/fragment/HomePartyFragment.java | 105 --------- .../com/chwl/app/avroom/game/GameDelegate.kt | 30 ++- .../app/avroom/online/RoomOnlineWidget.kt | 64 ++--- .../chwl/app/avroom/widget/PKBoardView.java | 4 +- .../res/drawable-xxhdpi/room_ic_back_room.png | Bin 0 -> 1847 bytes .../main/res/drawable-xxhdpi/room_ic_game.png | Bin 0 -> 18150 bytes .../main/res/layout/fragment_av_room_game.xml | 12 + .../layout/fragment_chatroom_game_main.xml | 52 ---- .../main/res/layout/fragment_game_room.xml | 28 +++ .../main/res/layout/item_room_select_game.xml | 31 --- app/src/main/res/values-ar/strings.xml | 5 + app/src/main/res/values-zh-rTW/strings.xml | 4 + app/src/main/res/values/strings.xml | 5 + .../chwl/app/game/ui/home/GameHomeFragment.kt | 1 - .../java/com/chwl/core/room/game/GameModel.kt | 27 ++- 23 files changed, 440 insertions(+), 254 deletions(-) create mode 100644 app/src/main/java/com/chwl/app/avroom/adapter/RoomGameListAdapter.kt delete mode 100644 app/src/main/java/com/chwl/app/avroom/adapter/SelectGameAdapter.kt create mode 100644 app/src/main/java/com/chwl/app/avroom/dialog/RoomGameListDialog.kt create mode 100644 app/src/main/res/drawable-xxhdpi/room_ic_back_room.png create mode 100644 app/src/main/res/drawable-xxhdpi/room_ic_game.png delete mode 100644 app/src/main/res/layout/item_room_select_game.xml diff --git a/app/src/main/java/com/chwl/app/avroom/adapter/RoomGameListAdapter.kt b/app/src/main/java/com/chwl/app/avroom/adapter/RoomGameListAdapter.kt new file mode 100644 index 000000000..3504815ed --- /dev/null +++ b/app/src/main/java/com/chwl/app/avroom/adapter/RoomGameListAdapter.kt @@ -0,0 +1,18 @@ +package com.chwl.app.avroom.adapter + +import android.widget.ImageView +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder +import com.chwl.app.R +import com.chwl.app.ui.utils.load +import com.chwl.core.room.bean.RoomIcon +import com.chwl.core.room.game.bean.GameInfo + +class RoomGameListAdapter : + BaseQuickAdapter(R.layout.room_gameplay_item2) { + override fun convert(helper: BaseViewHolder, item: GameInfo?) { + helper.setText(R.id.tv_name, item?.name) + val iconView = helper.getView(R.id.iv_icon) + iconView.load(item?.pic) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/adapter/SelectGameAdapter.kt b/app/src/main/java/com/chwl/app/avroom/adapter/SelectGameAdapter.kt deleted file mode 100644 index 5462bee97..000000000 --- a/app/src/main/java/com/chwl/app/avroom/adapter/SelectGameAdapter.kt +++ /dev/null @@ -1,15 +0,0 @@ -package com.chwl.app.avroom.adapter - -import com.chad.library.adapter.base.BaseQuickAdapter -import com.chad.library.adapter.base.BaseViewHolder -import com.chwl.app.R -import com.chwl.core.room.game.bean.GameInfo - -class SelectGameAdapter : - BaseQuickAdapter(R.layout.item_room_select_game) { - - override fun convert(helper: BaseViewHolder, item: GameInfo) { - helper.setText(R.id.tv_name,item.name) - } - -} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/CreateGameRoomDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/CreateGameRoomDialog.kt index 978a558ca..b8a305915 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/CreateGameRoomDialog.kt +++ b/app/src/main/java/com/chwl/app/avroom/dialog/CreateGameRoomDialog.kt @@ -44,7 +44,7 @@ class CreateGameRoomDialog : BaseDialog() { dismissAllowingStateLoss() } - GameModel.getGameList() + GameModel.getGameList(null) .compose(bindToLifecycle()) .subscribe( { diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/CreateRoomDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/CreateRoomDialog.kt index 0ad739c51..2a7240ea1 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/CreateRoomDialog.kt +++ b/app/src/main/java/com/chwl/app/avroom/dialog/CreateRoomDialog.kt @@ -88,7 +88,7 @@ class CreateRoomDialog : BaseDialog() { dismissAllowingStateLoss() } - GameModel.getGameList() + GameModel.getGameList(null) .compose(bindToLifecycle()) .subscribe( { diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameListDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameListDialog.kt new file mode 100644 index 000000000..ec1beaf72 --- /dev/null +++ b/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameListDialog.kt @@ -0,0 +1,223 @@ +package com.chwl.app.avroom.dialog + +import android.app.Dialog +import android.content.Context +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.core.view.isVisible +import androidx.lifecycle.Lifecycle +import androidx.lifecycle.LifecycleEventObserver +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.LifecycleOwner +import com.chwl.app.R +import com.chwl.app.avroom.adapter.RoomGameListAdapter +import com.chwl.app.base.BaseActivity +import com.chwl.app.common.widget.dialog.DialogManager +import com.chwl.app.databinding.RoomGameplayDialogBinding +import com.chwl.app.home.helper.OpenRoomHelper +import com.chwl.core.manager.AvRoomDataManager +import com.chwl.core.room.bean.RoomInfo +import com.chwl.core.room.bean.RoomModeType +import com.chwl.core.room.core.RoomDataService +import com.chwl.core.room.game.GameModel.getGameList +import com.chwl.core.room.game.bean.GameInfo +import com.chwl.core.support.room.AudioRoomContext +import com.chwl.library.utils.JavaUtil +import com.chwl.library.utils.ResUtil +import com.chwl.library.utils.SingleToastUtil +import com.example.lib_utils.ktx.asLifecycle +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.unity3d.splash.services.core.lifecycle.LifecycleEvent +import io.reactivex.disposables.CompositeDisposable + +class RoomGameListDialog : + BottomSheetDialogFragment(), LifecycleObserver { + private var binding: RoomGameplayDialogBinding? = null + private var compositeDisposable: CompositeDisposable? = null + private val adapter = RoomGameListAdapter() + private var dialogManager: DialogManager? = null + + override fun getTheme(): Int { + return R.style.ErbanBottomSheetDialogDimFalse + } + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding = RoomGameplayDialogBinding.inflate(LayoutInflater.from(context)) + return binding?.root + } + + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { + return super.onCreateDialog(savedInstanceState).apply { + this.setCanceledOnTouchOutside(true) + } + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + initView() + switchStatus(0) + requestData() + } + + override fun onAttach(context: Context) { + super.onAttach(context) + val lifecycleObserver = object : LifecycleEventObserver { + override fun onStateChanged(source: LifecycleOwner, event: Lifecycle.Event) { + if (event == Lifecycle.Event.ON_DESTROY) { + context.asLifecycle()?.removeObserver(this) + try { + this@RoomGameListDialog.dismissAllowingStateLoss() + } catch (e: Exception) { + } + } + } + } + context.asLifecycle()?.addObserver(lifecycleObserver) + } + + private fun initView() { + adapter.setOnItemClickListener { _, view, position -> + val item = adapter.getItem(position) as GameInfo + switchGame(item) + } + binding?.recyclerView?.adapter = adapter + } + + private fun requestData() { + val dataService = + AudioRoomContext.get() + ?.findAbility(RoomDataService::class.java.simpleName) + val cacheKey = "game_list#${parentFragment.hashCode()}" + val list = dataService?.getData(cacheKey) as? List + if (!list.isNullOrEmpty()) { + loadData(list) + return + } + val disposable = getGameList(AvRoomDataManager.get().roomUid) + .doOnError { + SingleToastUtil.showToast(it.message) + switchStatus(-2) + } + .subscribe { it: List -> + dataService?.putData(cacheKey, it) + loadData(it) + } + getCompositeDisposable().add(disposable) + } + + private fun loadData(list: List?) { + if (list.isNullOrEmpty()) { + switchStatus(-1) + } else { + adapter.setNewData(list) + switchStatus(1) + } + } + + private fun switchStatus(status: Int) { + when (status) { + // loading + 0 -> { + binding?.recyclerView?.isVisible = false + binding?.layoutStatus?.isVisible = true + binding?.groupStatusLoading?.isVisible = true + binding?.groupStatusText?.isVisible = false + } + + // 有数据 + 1 -> { + binding?.recyclerView?.isVisible = true + binding?.layoutStatus?.isVisible = false + } + + // 空数据 + -1 -> { + binding?.recyclerView?.isVisible = false + binding?.layoutStatus?.isVisible = true + binding?.groupStatusLoading?.isVisible = false + binding?.groupStatusText?.isVisible = true + binding?.tvStatus?.setText(R.string.avroom_presenter_roomnewbiehellowwordpresenter_01) + } + + // 失败 + else -> { + binding?.recyclerView?.isVisible = false + binding?.layoutStatus?.isVisible = true + binding?.groupStatusLoading?.isVisible = false + binding?.groupStatusText?.isVisible = true + binding?.tvStatus?.setText(R.string.request_failed_again_later) + } + } + } + + private fun switchGame(gameInfo: GameInfo) { + if (AvRoomDataManager.get().isGamePlaying) { + SingleToastUtil.showToast(ResUtil.getString(R.string.room_switch_game_failed_in_game)) + return + } + if (!isShowChangeGame()) { + SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_04)) + return + } + + if (dialogManager == null) { + dialogManager = DialogManager(context) + } + dialogManager?.showOkCancelDialog( + getString(R.string.room_switch_game_tips) + ) { + if (gameInfo.isStandardRoom()) { + OpenRoomHelper.updateRoomInfo( + activity as BaseActivity, + AvRoomDataManager.get().mCurrentRoomInfo, + RoomInfo.ROOMTYPE_HOME_PARTY, + 0, + false + ) + } else { + OpenRoomHelper.updateRoomInfo( + activity as BaseActivity, + AvRoomDataManager.get().mCurrentRoomInfo, + RoomInfo.ROOMTYPE_GAME, + JavaUtil.str2long(gameInfo.mgId), + false + ) + } + dismissAllowingStateLoss() + } + } + + override fun onDestroy() { + super.onDestroy() + onUnbindContext() + dialogManager?.dismissDialog() + dialogManager = null + } + + private fun getCompositeDisposable(): CompositeDisposable { + var disposable = compositeDisposable + if (disposable == null) { + disposable = CompositeDisposable() + compositeDisposable = disposable + } + return disposable + } + + private fun onUnbindContext() { + compositeDisposable?.dispose() + compositeDisposable = null + } + + //这里的2和4是服务端定义的错误状态 关闭排麦模式和关闭PK模式! + private fun isShowChangeGame(): Boolean { + val currentRoomInfo = AvRoomDataManager.get().mCurrentRoomInfo + return currentRoomInfo != null && currentRoomInfo.type != RoomInfo.ROOM_TYPE_SINGLE && + (currentRoomInfo.roomModeType == RoomModeType.NORMAL_MODE || currentRoomInfo.roomModeType == 2 || currentRoomInfo.roomModeType == 4) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameplayDialog.kt b/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameplayDialog.kt index b124db71a..9a1ab4d44 100644 --- a/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameplayDialog.kt +++ b/app/src/main/java/com/chwl/app/avroom/dialog/RoomGameplayDialog.kt @@ -1,17 +1,20 @@ package com.chwl.app.avroom.dialog import android.app.Dialog +import android.content.Context import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.core.view.isVisible +import androidx.lifecycle.Lifecycle +import androidx.lifecycle.LifecycleEventObserver +import androidx.lifecycle.LifecycleOwner import com.chwl.app.R import com.chwl.app.avroom.adapter.RoomGameplayAdapter import com.chwl.app.databinding.RoomGameplayDialogBinding import com.chwl.app.treasure_box.widget.GoldBoxHelper import com.chwl.app.ui.webview.CommonWebViewActivity -import com.chwl.app.ui.webview.baishun.BaiShunGameWebActivity import com.chwl.app.ui.webview.room_banner.RoomWebDialogActivity import com.chwl.app.utils.CommonJumpHelper import com.chwl.core.room.bean.RoomIcon @@ -19,8 +22,8 @@ import com.chwl.core.room.core.RoomDataService import com.chwl.core.room.game.bean.BaiShunGameConfig import com.chwl.core.room.model.AvRoomModel import com.chwl.core.support.room.AudioRoomContext -import com.chwl.core.support.room.RoomContext import com.chwl.library.utils.SingleToastUtil +import com.example.lib_utils.ktx.asLifecycle import com.google.android.material.bottomsheet.BottomSheetDialogFragment import com.google.gson.Gson import io.reactivex.disposables.CompositeDisposable @@ -67,6 +70,22 @@ class RoomGameplayDialog : binding?.recyclerView?.adapter = adapter } + override fun onAttach(context: Context) { + super.onAttach(context) + val lifecycleObserver = object : LifecycleEventObserver { + override fun onStateChanged(source: LifecycleOwner, event: Lifecycle.Event) { + if (event == Lifecycle.Event.ON_DESTROY) { + context.asLifecycle()?.removeObserver(this) + try { + this@RoomGameplayDialog.dismissAllowingStateLoss() + } catch (e: Exception) { + } + } + } + } + context.asLifecycle()?.addObserver(lifecycleObserver) + } + private fun requestData() { val dataService = AudioRoomContext.get()?.findAbility(RoomDataService::class.java.simpleName) diff --git a/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt b/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt index e3982c216..aabf821b2 100644 --- a/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt +++ b/app/src/main/java/com/chwl/app/avroom/fragment/BaseRoomFragment.kt @@ -44,6 +44,7 @@ import com.chwl.app.avroom.adapter.OnMicroItemClickListener import com.chwl.app.avroom.adapter.RoomMessageIndicatorAdapter import com.chwl.app.avroom.dialog.AttentionHintDialog import com.chwl.app.avroom.dialog.DatingVipRuleDialog +import com.chwl.app.avroom.dialog.RoomGameListDialog import com.chwl.app.avroom.dialog.RoomGameplayDialog import com.chwl.app.avroom.dialog.RoomOperationDialog import com.chwl.app.avroom.presenter.BaseRoomPresenter @@ -790,6 +791,9 @@ open class BaseRoomFragment?> : override fun onClick(v: View) { if (mClickLimit.checkForTime(500)) return when (v.id) { + R.id.iv_game -> { + RoomGameListDialog().show(childFragmentManager, "GAME_LIST") + } R.id.input_send -> { sendMsg() } diff --git a/app/src/main/java/com/chwl/app/avroom/fragment/GameRoomFragment.kt b/app/src/main/java/com/chwl/app/avroom/fragment/GameRoomFragment.kt index 10a4a98d9..3e53e7e41 100644 --- a/app/src/main/java/com/chwl/app/avroom/fragment/GameRoomFragment.kt +++ b/app/src/main/java/com/chwl/app/avroom/fragment/GameRoomFragment.kt @@ -19,11 +19,15 @@ import com.chwl.app.avroom.online.RoomOnlineWidget import com.chwl.app.avroom.presenter.GameRoomPresenter import com.chwl.app.avroom.view.IGameRoomView import com.chwl.app.databinding.FragmentGameRoomBinding +import com.chwl.app.home.helper.OpenRoomHelper import com.chwl.app.ui.widget.GiftDialog.OnGiftDialogBtnClickListener import com.chwl.core.manager.AvRoomDataManager import com.chwl.core.music.model.PlayerModel +import com.chwl.core.room.bean.RoomInfo import com.chwl.core.room.event.FinishAvRoomEvent +import com.chwl.core.sud.model.GameViewInfoModel import com.chwl.library.base.factory.CreatePresenter +import com.chwl.library.utils.SingleToastUtil import com.netease.nim.uikit.common.util.sys.ScreenUtil import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode @@ -74,6 +78,7 @@ class GameRoomFragment : BaseRoomFragment(), @SuppressLint("CheckResult") override fun initiate() { gameBinding.microView.bindAdapter(GameMicroViewAdapter(context)) + resetGameViewRect() super.initiate() //游戏模式暂时不需要这个 PlayerModel.get().stop() @@ -93,6 +98,29 @@ class GameRoomFragment : BaseRoomFragment(), } } + override fun onClick(v: View) { + super.onClick(v) + when (v.id) { + R.id.iv_back_room -> { + if (AvRoomDataManager.get().isGamePlaying) { + SingleToastUtil.showToast(getString(R.string.avroom_fragment_homepartyfragment_03)) + return + } + dialogManager.showOkCancelDialog( + getString(R.string.room_switch_standard_room_tips) + ) { + OpenRoomHelper.updateRoomInfo( + baseActivity, + AvRoomDataManager.get().mCurrentRoomInfo, + RoomInfo.ROOMTYPE_HOME_PARTY, + 0, + false + ) + } + } + } + } + @SuppressLint("ClickableViewAccessibility") private fun setMessagePagerAutoHeight(recyclerView: RecyclerView){ recyclerView.setOnTouchListener(OnTouchListener { v: View?, event: MotionEvent -> @@ -152,9 +180,18 @@ class GameRoomFragment : BaseRoomFragment(), gameBinding.microView.adapter.notifyDataSetChanged() } + private fun resetGameViewRect(){ + gameBinding.vGameRect.post { + gameDelegate.gameViewRect = GameViewInfoModel.GameViewRectModel().apply { + top = gameBinding.vGameRect.top + bottom = gameBinding.layoutRoot.height - gameBinding.vGameRect.bottom + } + } + } + override fun onGameStart() { if (isSixMic()) { - showMiniMic() +// showMiniMic() } } diff --git a/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyFragment.java b/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyFragment.java index b058219b3..dce06cb36 100644 --- a/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyFragment.java +++ b/app/src/main/java/com/chwl/app/avroom/fragment/HomePartyFragment.java @@ -16,17 +16,10 @@ import android.widget.TextView; import androidx.annotation.Nullable; import androidx.databinding.DataBindingUtil; import androidx.fragment.app.Fragment; -import androidx.recyclerview.widget.LinearLayoutManager; -import com.chwl.app.avroom.adapter.SelectGameAdapter; -import com.chwl.app.home.helper.OpenRoomHelper; -import com.chwl.app.ui.utils.ImageLoadUtils; import com.chwl.app.ui.utils.ImageLoadUtilsV2; import com.chwl.app.ui.widget.GiftDialog; import com.chwl.app.ui.widget.UserInfoDialog; -import com.chwl.core.room.bean.RoomModeType; -import com.chwl.core.room.game.GameModel; -import com.chwl.core.room.game.bean.GameInfo; import com.chwl.library.utils.JavaUtil; import com.example.lib_utils.UiUtils; import com.netease.nim.uikit.common.util.string.StringUtil; @@ -105,7 +98,6 @@ public class HomePartyFragment extends BaseFragment implements View.OnClickListe //收藏房间 private String FOLLOW_ROOM_TYPE = ""; - private SelectGameAdapter gameAdapter; public static HomePartyFragment newInstance() { HomePartyFragment homePartyFragment = new HomePartyFragment(); @@ -224,73 +216,6 @@ public class HomePartyFragment extends BaseFragment implements View.OnClickListe } } - private void initRvGame() { - RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo; - if (roomInfo == null || gameAdapter != null) return; - gameMainBinding.rvGame.setLayoutManager(new LinearLayoutManager(mContext)); - gameMainBinding.rvGame.setAdapter(gameAdapter = new SelectGameAdapter()); - gameMainBinding.llSelectGame.setOnClickListener(v -> { - if (gameMainBinding.rvGame.getVisibility() == View.VISIBLE) { - gameMainBinding.rvGame.setVisibility(View.GONE); - gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type_below); - } else { - if (!isShowChangeGame()) { - SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_01)); - return; - } - if (AvRoomDataManager.get().isGamePlaying()) { - SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_02)); - } else { - gameMainBinding.rvGame.setVisibility(View.VISIBLE); - gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type); - } - } - }); - - gameAdapter.setOnItemClickListener((adapter, view, position) -> { - if (AvRoomDataManager.get().isGamePlaying()) { - SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_03)); - } - if (!isShowChangeGame()) { - SingleToastUtil.showToast(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_04)); - return; - } - - GameInfo gameInfo = gameAdapter.getItem(position); - if (gameInfo != null) { - gameMainBinding.rvGame.setVisibility(View.GONE); - gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type_below); - if (gameInfo.isStandardRoom()) { - OpenRoomHelper.updateRoomInfo( - getBaseActivity(), - AvRoomDataManager.get().mCurrentRoomInfo, - RoomInfo.ROOMTYPE_HOME_PARTY, - 0, - false); - } else { - OpenRoomHelper.updateRoomInfo( - getBaseActivity(), - AvRoomDataManager.get().mCurrentRoomInfo, - RoomInfo.ROOMTYPE_GAME, - JavaUtil.str2long(gameInfo.getMgId()), - false); - } - } - }); - } - - //这里的2和4是服务端定义的错误状态 关闭排麦模式和关闭PK模式! - private boolean isShowChangeGame() { - RoomInfo currentRoomInfo = AvRoomDataManager.get().mCurrentRoomInfo; - return currentRoomInfo != null && - AvRoomDataManager.get().isRoomOwner() && - currentRoomInfo.getIsPermitRoom() != 1 && - currentRoomInfo.getType() != RoomInfo.ROOM_TYPE_SINGLE && - (currentRoomInfo.getRoomModeType() == RoomModeType.NORMAL_MODE || - currentRoomInfo.getRoomModeType() == 2 || - currentRoomInfo.getRoomModeType() == 4); - } - public void setRoomBg(RoomInfo roomInfo) { if (svgaRoomBg == null) return; AVRoomActivity.setBackBg(mContext, roomInfo, svgaRoomBg, bgPicture); @@ -465,36 +390,6 @@ public class HomePartyFragment extends BaseFragment implements View.OnClickListe ivFollowRoom.setImageResource(AvRoomDataManager.get().isRoomFans ? R.drawable.room_ic_collect_yes : R.drawable.room_ic_collect_no); setIdOnlineData(); - - if (isShowChangeGame()) { - initRvGame(); - gameMainBinding.llChangeGame.setVisibility(View.VISIBLE); - if (AvRoomDataManager.get().isOpenGame()) { - gameMainBinding.tvCurrGame.setText(currentRoomInfo.getMgName()); - } else { - gameMainBinding.tvCurrGame.setText(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_08)); - } - GameModel.INSTANCE.getGameList() - .compose(bindToLifecycle()) - .subscribe(gameInfos -> { - if (AvRoomDataManager.get().isOpenGame()) { - for (int i = 0; i < gameInfos.size(); i++) { - GameInfo gameInfo = gameInfos.get(i); - if (JavaUtil.str2long(gameInfo.getMgId()) == currentRoomInfo.getMgId()) { - gameInfos.remove(i); - break; - } - } - GameInfo gameInfo = new GameInfo(); - gameInfo.asStandardRoom(); - gameInfo.setName(ResUtil.getString(R.string.avroom_fragment_homepartyfragment_09)); - gameInfos.add(gameInfo); - } - gameAdapter.setNewData(gameInfos); - }); - } else { - gameMainBinding.llChangeGame.setVisibility(View.GONE); - } } } diff --git a/app/src/main/java/com/chwl/app/avroom/game/GameDelegate.kt b/app/src/main/java/com/chwl/app/avroom/game/GameDelegate.kt index cc37a4dca..1fda79b1f 100644 --- a/app/src/main/java/com/chwl/app/avroom/game/GameDelegate.kt +++ b/app/src/main/java/com/chwl/app/avroom/game/GameDelegate.kt @@ -18,6 +18,7 @@ import com.chwl.core.room.game.bean.GameCfg import com.chwl.core.room.game.GameModel import com.chwl.core.room.game.GameStatus import com.chwl.core.room.model.HomePartyModel +import com.chwl.core.sud.model.GameViewInfoModel.GameViewRectModel import com.chwl.core.sud.state.SudMGPAPPState import com.chwl.core.sud.state.SudMGPMGState import com.chwl.core.user.UserModel @@ -25,6 +26,7 @@ import com.chwl.core.utils.LogUtils import com.chwl.core.utils.net.RxHelper import com.chwl.library.language.LanguageHelper import com.chwl.library.net.rxnet.callback.CallBack +import com.chwl.library.utils.ResUtil import com.chwl.library.utils.SingleToastUtil import okhttp3.* import org.json.JSONException @@ -56,6 +58,8 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId: private var onGameStatusChangeListener: OnGameStatusChangeListener? = null + var gameViewRect: GameViewRectModel? = null + fun setOnGameStatusChangeListener(onGameStatusChangeListener: OnGameStatusChangeListener) { this.onGameStatusChangeListener = onGameStatusChangeListener } @@ -342,12 +346,26 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId: //遊戲安全操作區域 val viewGameRect = JSONObject() - viewGameRect.put("left", 0) - viewGameRect.put("top", container.context.resources.getDimensionPixelOffset(R.dimen.dp_180)) - viewGameRect.put("right", 0) - viewGameRect.put("bottom", container.context.resources.getDimensionPixelOffset(R.dimen.dp_150)) + val viewRect = gameViewRect + if (viewRect != null) { + Log.d(TAG,"notifyGameViewInfo top:${viewRect.top} viewRect:${viewRect.bottom}") + viewGameRect.put("left", viewRect.left) + viewGameRect.put("top", viewRect.top) + viewGameRect.put("right", viewRect.right) + viewGameRect.put("bottom", viewRect.bottom) + } else { + viewGameRect.put("left", 0) + viewGameRect.put( + "top", + container.context.resources.getDimensionPixelOffset(R.dimen.dp_185) + ) + viewGameRect.put("right", 0) + viewGameRect.put( + "bottom", + container.context.resources.getDimensionPixelOffset(R.dimen.dp_180) + ) + } jsonObject.put("view_game_rect", viewGameRect) - //通知遊戲 val json = jsonObject.toString() Log.d(TAG, "notifyGameViewInfo:$json") @@ -471,7 +489,7 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId: } else if (isJoin) { val upPosition = AvRoomDataManager.get().findGamePosition() if (upPosition == Int.MIN_VALUE) { - showToast("當前遊戲人數已滿!") + showToast(ResUtil.getString(R.string.room_game_number_full)) } else { UserModel.get().cacheLoginUserInfo?.gameStatus = 1 homePartyModel.upMicroPhone(upPosition, diff --git a/app/src/main/java/com/chwl/app/avroom/online/RoomOnlineWidget.kt b/app/src/main/java/com/chwl/app/avroom/online/RoomOnlineWidget.kt index e88633327..1e0dbcfb1 100644 --- a/app/src/main/java/com/chwl/app/avroom/online/RoomOnlineWidget.kt +++ b/app/src/main/java/com/chwl/app/avroom/online/RoomOnlineWidget.kt @@ -68,41 +68,43 @@ class RoomOnlineWidget : FrameLayoutRoomWidget, RoomWidget { ) : super(context, attrs, defStyleAttr, defStyleRes) init { - this.singleClick { - RoomOnlineUserActivity.start(context) - } - adapter.setOnItemClickListener { adapter, view, position -> - RoomOnlineUserActivity.start(context) - } - binding.recyclerView.adapter = adapter - binding.recyclerView.addItemDecoration( - VerticalDecoration( - UIUtil.dip2px(context, 4.5), - false, - false + if (!isInEditMode) { + this.singleClick { + RoomOnlineUserActivity.start(context) + } + adapter.setOnItemClickListener { adapter, view, position -> + RoomOnlineUserActivity.start(context) + } + binding.recyclerView.adapter = adapter + binding.recyclerView.addItemDecoration( + VerticalDecoration( + UIUtil.dip2px(context, 4.5), + false, + false + ) ) - ) - val isRTL = UiUtils.isRtl(context) - binding.recyclerView.outlineProvider = object : ViewOutlineProvider() { - override fun getOutline(view: View?, outline: Outline?) { - if (isRTL) { - outline?.setRect( - UiUtils.dip2px(9f), - 0, - (view?.width ?: 0), - (view?.height ?: 0), - ) - } else { - outline?.setRect( - 0, - 0, - (view?.width ?: 0) - UiUtils.dip2px(9f), - (view?.height ?: 0), - ) + val isRTL = UiUtils.isRtl(context) + binding.recyclerView.outlineProvider = object : ViewOutlineProvider() { + override fun getOutline(view: View?, outline: Outline?) { + if (isRTL) { + outline?.setRect( + UiUtils.dip2px(9f), + 0, + (view?.width ?: 0), + (view?.height ?: 0), + ) + } else { + outline?.setRect( + 0, + 0, + (view?.width ?: 0) - UiUtils.dip2px(9f), + (view?.height ?: 0), + ) + } } } + binding.recyclerView.clipToOutline = true } - binding.recyclerView.clipToOutline = true } override fun onInitialize(roomView: RoomView, roomContext: RoomContext) { diff --git a/app/src/main/java/com/chwl/app/avroom/widget/PKBoardView.java b/app/src/main/java/com/chwl/app/avroom/widget/PKBoardView.java index 7c3242d98..a7bbf416f 100644 --- a/app/src/main/java/com/chwl/app/avroom/widget/PKBoardView.java +++ b/app/src/main/java/com/chwl/app/avroom/widget/PKBoardView.java @@ -84,7 +84,9 @@ public class PKBoardView extends RelativeLayout implements View.OnClickListener private void init() { inflate(getContext(), R.layout.layout_pk_board_view, this); - + if (isInEditMode()) { + return; + } llPkScoreBoard = findViewById(R.id.root_view); rlRedTeamAddPeople = findViewById(R.id.fl_left); tvRedTeamScore = this.findViewById(R.id.tv_red_team_score); diff --git a/app/src/main/res/drawable-xxhdpi/room_ic_back_room.png b/app/src/main/res/drawable-xxhdpi/room_ic_back_room.png new file mode 100644 index 0000000000000000000000000000000000000000..a69a89f6dc2b06e443d0089c0f69e602759abc2a GIT binary patch literal 1847 zcmV-72gvw|P)j{00001b5ch_0Itp) z=>Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91KcE8u1ONa40RR91KL7v#0H5W^2mk;Ep-DtRRA>d|n_FxZRTPFfT*MYA zUJxQ0Z4gPc61l0Z2CWhd3dZ>2g$D?Q2aRGh#t52X;*0STl_x_G6ATy>O$4#{5ms-QAtR z>?kOMOW|gi0oTGf7z@Lp8>D+04)@T=?=EP7zu<3Z&tx*vja5`|Y(mf%Vr&ZB0##4} zVGq>9cKDe}=;YTfA@EtS8Cu{p#3`pR)(r2%O;$vXBV}+GY=UBnD&aO5 zQS^$S&>?U;Y=EPXhO|=X8kknJ3ZSqOSPp+e+R}vs2cQOqB~}R-&%oud4s4TiIP?aL ziM;|as>i$y^8O}|PwE{3$1;2qFGn++EKm(MAsepq0JVu6KL<5wqFglDuOLX?( z$85#~2MhT#IOrmQt72xt2IxDJr?ieEx}nns@&SMa1(!@cLPnjf4Y%TMqvXfAGx zsNH%HG{yD`wW3j6BSe)BGOmEDU_9IphruS<=#88dJk(D%!f_c)mq-G&U8zT$KuCK{L3iti$If?{Fa}j zKxyVmEkUmh&`{U%7O3ky5}*@DvQ~688Z9v}CS5JCu2=AK&@%uaEl7@X;aT`NNP+Yd zuoSc;9s80qHl1=ACy&8HaDnqefn#-fWoncj025hWz-TI$aDEtUF$m%ay4UGZS7R4e zbQjlzRW6oZPn)yepu9`atx)h&4Kit@q&C7v(d%m>ll9K4aWawDd1RK5;TRiGf6A5YMe$o5_>yTx3&#-LfXM=!9t(N?gTYrs)(>sui#}skF%+y9k|oq zDE>FH7KBHssvDJ5(K&{^{)J2=%MEEHj3#hxLd*R0FxGfp^cH_lcu#{ zr31yCdgl*76O=<3na?Am_kA5`zMiD0CD-t^g_)bm^a#GFk$V&tc`gPg?Bi0Kg4bjG zBa}lJDMjfyP=RXseAlK2~H`HTexArc=l;HuH71 zlkg<8c{f?QXJ3vGs$&fN;d7|T;kEb=Q>wD-2DkhQ=&uS{g_g0DHe2mSyX7A$ciQ1qy4l6H4*fy+X{ z;HA(b8W_}o7Cvm2I-FZf;0I%Ml2;)2pBCECW1F1Cq1RwctU>1+qkvMVg%(I#H2K*N z3&3RAIzO!N=M*#)v<9F(?P>jYl{Pr8f+^uWk5Q9?wSR9G=zm*^DeqBO6_mypPIOZ^ zG6(8F)6l+5JIU@5ZEbA=1wAdgm+qVe`+2u&?`JrsJ24eBHqc(5>)~oJog%ACJpt;k z_kz9>X+3W*E%_OKW06>c&v`^8$nGf6z(_4{B}|8jFb=eROxwm3q;xx=6%K)xm^3=m l&TVabQze`v=-9^?{{miw(0S|Aa%TVl002ovPDHLkV1jF{Ny7jD literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/room_ic_game.png b/app/src/main/res/drawable-xxhdpi/room_ic_game.png new file mode 100644 index 0000000000000000000000000000000000000000..aad91dd0b37d55db3c8c10cdd0d28a5dfc729d4f GIT binary patch literal 18150 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

@dQ9<`Ic^CQMWOKfVdKI0ez(o zV12XG7Cts)-UuXtYuz#)s+Txk^>0+42smR@hWRV5PObc=-*qw@{G2(lfqYI{==sz~ zEXn&g>kZPu^_2<<$sk&}r)n@)6>Ft-KE5VQ)~9^V8xn?rWj+iYynOa4GOPhoVRs!} z3@s3Kn=OhoH}A8_SPa_4SlEc6i295aU?N&vrPbFtOx&LeAyv~gwdIHUH+NpgD^;z6 zeLE2lC@4#<~b6r0$t$h7Kv05S5E3AVlBe&e#9dyC7Yj)mJi32kt%+k z7sY$yA7ridqy5}43)sAm?6hi_PEv3jp$r9mH3Hr&V2b9)nG7WC5d^u2FFGTbK2R zwyK?^AgQd@?>LQ<;y@8phI7t&8a?x0_qZ0W_j8SvdlYab!V6f}F=@|vak7NV9{RR< zMB}pnwL~3v(|mLD zNM_SK6V>I_)XgePT8tpIiK$MGjv2xa2Bw>s;WlGC86pH(i(Ipkd~*zz)3T590;I~C z03rlGbV_>;9C&KM5W36@mqidZg%&z-D3R!#u@FQA6nK>)bp$i>Ln2FHLOdy#4rDbN zUDI<^2hkzQ#T@{^BpcJRZbtxZ9Ik4@L!swtT$rFBCgU2bj5vi#L#%4Qt;&kva?d$) z4E0gn^g_y0)v{H0_h9Wfzw(~dwydg^X=o+7fh-a88HQR#=Ak;0kb8X+2Et-}qRnPT zM&d&{?|@vK2tVZ8?;-Hl0?D%1)<@W$0+nkeRcM)c2?G;#EWp=^)}Obox&@*YsU$-H zA3?Yt%8&X?Hww_pl04q1!g2h7(@L6`2w)O%W!yOuOBFx~_!WUgm zq4KypLa0$-7;wkp3GG+l`&jA(qhrrJX*0+f+}y#{Zw4|2sAWNw}~SGM4Jm8B!hc-2L|9cQ7y3~00kER zAeI`2h6>6pePf+FBYMq&rLku{{T!YRCkfQgx`rTN z^t$@9a_qz_KLsYmR>0$a2dX&Ko#a_ucQ3#xB^|T5k`TjLEJ@2OIN=tUSe?&he)W$q zsFj!mJMg}{zVfoJIUsc~cszPPK;EL`)#pHkb1vrh4s<`63~ha2gn89c>5?z3+&~HcabMS3)zbvx{vQEAb}bC zp2}5w4=K`xBEcbaD!U!DKcX2G>#DOfAR!P)HTp=#h zu)|T@k-P$w`dn@~#c{f+Dk&sBbxj;78SlbPl!0SBDX#kZqeL-U=SStI35(H!h}le~ z4tm=9)C}!~L9HarIPXe61?2KV@{bo6=RaS^-1OBqY3};X@0hR$zS+BS%j&DI9*f{p zbNV=0yG_o=t*3d8b#3OYDZY$SmqXbDDqhkpOSV#DiIXgVEoQ^4oE%{x_=qhrGb+WF z!Plp23ZqcjupM0|pkaK7hWN$^LxV&(hh;9!^hP%JQGN#yQ~t~x;PWg7?LLB^ed2Ul zgQvbx{iR-A+$1js4au>H{y_H%7qV9!9f#?<09v`vo!4(RH46Q9e^e-&%1~ZyI>U8I z7d{u@Ou*{<{WLHwK9OdDs6`fF(u&QlvAR1}{o!8Ge*O9Z%CWc@$O^M+?o&X%_m}@D z`@-LT;ved+oc}=eVs(GjfmwU-AKTp;bk%dU_UcX+SmrB}Yp^-iB_En@U~TY})iGl^ z4wxa$8U_ri%?t8ka9=8?Mf;-M7v&R0x;KC&4Q^zW7=86dL!SysDs=U6e+accM8iDy(g&ED2A^7BoxEivki0!>@>lLm z;(-$FYo)Q_*ms3l_1Y;Qbs`Wf{tgpc-xrC>uJvkaWQmYH`{(V6hgx4fxy6w{m|lq3 z>>^+?RwM4x!Vq0RYD`pt21^Qr&F1-F7yxP|M)#!~_f9J>UgPCpAxpcs)U(iga>07|4pm28iY}0`m)z$Pcf{QIoMy`N#g$dyL_r<9{mKLN+iARzp$eh{ zRxhn<%1@aRk-DV{pe|QrEZHh$DW}RWI)tNL9-FNkzJ@<4IbK}*SpFT-!s?irQe`Nrx zGLf`;pI)+3Z6`LXr_XRNy6OJvK8^WK>!C{ujLy{CU_;8bx6InE)*0)DOCxZ8P#lR3 z)hA8UY0>mmQuAYMTzwh&1)F}mKFmC$0lMYR^PG)$PxeI__mzy0Yu)L zkjrZjyZlO8I%An*N91-mhXeuC$SbM((yzXL^~$;KU4ILh*?iQN()yZQq$0B0r>swF z%JDrat-hfpSbT0+!L!xUs!KV^)*%TRMKjLCtt36 zfPQIBCS{Oy;r0)VoXUI29zaKl>518x9Uf@2r%&|Qi<2w`h9a9MfLOs%B@FzE>{I{g z01{_8`z$vLIJG#P(*R$4ahX7K=k?|syRCZ6-f<>-QB*A8fCNOiUO)Z;!0#ux; zt*QZwF5*ThHGn6LRiahH4n+dySmk6EH`n|k!!3>T*U?clzG5F%ry6PCMEpr%wEof> z(OSKDa-iYYTRXDvs;fs%txNBQD~C=bnCx2}f33@KiTzZV{qS@h7>QcqibZR|ChQS| z<4J2}wlLoogO~z@4C1UxR+ry#p6+$Zi!KOM?b#fF+@yP|V9Jb$W~#s|O*>Z%xc1Uk zv1PM}#ez+o7-gQVhiR8FCXGj>Ra3GlZ=!Lnw73vVkMzfWz1Fo29H~q{dDmACjgLgX zQ0s;cywum;K(H{{=Nlyn%&{5PKOJhbqoZ+~$5>uO)0Gd^8MI~Zt13EGia6@7CNXcT zpAKjal&=b;3p_p+3?r1PpIn%?;K2|(Y-B*MZU41RG{_BDr_0=aY|I>h1wU&SiF z!CKqWmbLeMWY~@0c!f$seFN;ZPL0IuvGGRse3S)^wM5Kn2}6BZ5qOd^4kQ7?3u&tY zrZK3lXnvmmiDgoTuGGRx~yR~b)A!j_^=TbOUS17~2i~-3+im&SsB+U3ywgIt- z;(7GN0_TW!Mg)PyCh%7KMrDv^)4~oVOn~mo2UQTI?4TSel03+~n8Mt&4Y6X$i^pR2 z%21M6tyjq|I$n;3`u?99su{{bsAJ*ak6M2Dwom`*V_VVh)e<+!^=E%`@P(iI(1C4r z4f*TTMXXLCT5~gE_T?ArvH0*}Z;&MWZ61r0zIKzq*q&fIfQO;Lg)a(BiBQ1v9B=|~ z1xx`9=arevQ`VOaSZSn)QQmPOCO|1Sd>5OcD2)SgDiBL7)-*OSV~380aP>9vl>$xn zA=64~YRTG1KXsC|*Ei}MvPBP_jDPj|pZfa$QO&>EejPNmvn?+KKEF60e7e@vzFo`q zkxvdd3%#oMM%lFDV*f~^9fd=tkZ61{-iic07jZC`q|qW06nqZN~sGuc8u`gMO^=ZosQ#Ls`ZAV}B+tGn07TeMUo{A+$bdpy? zwA&61YbDWKw6Aq-{khX}q;B}qeb3K->b=)3F|K?U)9ujpUQH4W(zfKmeg*TLTG1OJ zRYa^zdJGkaU5zuxGaN(i%IPdeH{4f(6W!8e3?EqNjrd*m>i?5B%Y1h7$2=!M_pCTR802T)N z>wfdvkN)Mur%rBha7IAt{%hZHUvujOL!qN2KwVzyK2--nJ%#; zBZ1szY5bo>tUH+Z@zk&efSk?}p#UXAcfpMb;Z`VK*(w}d!YWjD0J4%YAO_1UmPB-V zj&*5A2U7HjQ9E)Hi_$bx)>k={hG8My(@1HWd5ahX?Dwu-Rt@*OT&$ zfmDIF-+c39yxN||=G@*51tBK3^)dMrku`99O|0|!te4bpd0*s4TS|xBcbzpEmG}h4 zesZ}{Rg@eBX30h_g-HHTkIl!pQ2G2!c=cw$0d+T#zl5_G%v1vaU}C2?Ay)e)Q9(X?oMR?50tm#nn~k;@nJe60PWPc_NR zR()fqurQ)8W9BOn&X!H*Fup#RuTyL%XS>_7<;O{!^0g(o7`G^0| z!ODkk956+UP_W1X7inw9_0^VKW~EEMd>+peiGX7qAcUoo`a3z$nVaZ1TA-T6D1`t3 z21H3jK~zo6MQv=h&Zg#Lwwy*Z)2ORS8vfhfJ%&gfWtdT$6K7{a1Ea(7PhRt(uRl_~ z?@agS1SA#op1S{&Z|>W^{7`*zR z$+76?(o2EbftOU^$~Vp1C+|9Lm+vJUpWpv~+VswP_q|uw_ALq@fjB-A`DM{kzt1(D z7f0%$-@oUcK;tzp-P+l+{P)Sm+G1AumYKQr==a*}``_WiWio&K51g2IYHxqfnBDv@ z#`(ziI-}~U_m(&vJ|2DV{GmNRe8)ZaY@Tt|J)0d~Fp56$-#>BVj_v9HTA$4I)Y4{E z0hz`Q{Wxjgy}!#QS@>SR|3^x4SG8gsdH07$Y~Qt7D6n>4f;cTN&V`1KpN#%bH+=LP zTiQ_1ls*@Xl2p!n?r(qkmX_w+?=v*HcB=|ZPlW9Wh9}QF-gMen*{#aCl&&S4a(2xP zGj;>R3)!EyN;KkU=4V2`viE)e<>7NtY-*K#!GNq5u5o6hA@lpaJC=V+ADiARY4*|R zaMZr{tuA}v8Ri?lfz$qL=Iose@bMB6MZWbrWBK}Tnfb`Cp6xjCbmY0xckpz`IP(^dLXxXybq)h%W3eE+CjhEj97B-`l( zp&Cc}lmGh%?*4M^SdP;bvc>f?HqmWS#)eDZ`1aHJ{kPowU|qJ{kCD9(i$+&1`)u{b zX1wD2Xw{u85~xA<@*?v-^o@&4Ff}CeL=w*0+uk#7@4y+{j*WS%B*VeNTU>2E$X z*zkq3F}rP5?)qyNg(Fu#?S{8a+Fr(k>JMe9IbAB`yu#2x{Lf~leV@Pa6aVGJ>GGe?^@|Q< zwQ@hW_vbzV*ZmfY6>g^=IipxgwdPlj)Y;RIG&@6l8qc~u_;ssCgV|9gJ zpjG#rP33X2+6ZAKV}nr}AC2_&zPEOO>K6B(>!sHeNLBJnU%D&!w!U;vv6%a8M_1-E zi5fxBr+XQRUsgn90S}*B-$2^$G{9;y?!s))86TGU{E+;5RS%3j4+=Akvrw=G>Gh3y zKKX$y72u?8VrFE*R>`epb0%VQeI5BKLwal^@pgxqThmGN13=x%_6tS^N5lL#y*%ipPllB4U1g;CTGWvBAi1yz{OKZ=C&H&-ToRTH4Y*M4z=0_Y_&bsMGrUF4S)=M#REY zEDc?rr0*RZJQ00hVYcy)R!{f7P|vy$Kjts{K=U9VC%h#MuS+7UlHw2KY z3G;nE3>~anYHDdsN87q{q0xcpjVu#zBcZ2zLy=;4kPm)EBE=|Ew*#!j<4IdplJ-iR zO_{0ltW)Gq=UF~F$I8R36?mAw`SH$enMbu!=G0^~onK7MXj!n;&%M--|38bbTx?-% RO!)u+002ovPDHLkV1g~@k@o-q literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/fragment_av_room_game.xml b/app/src/main/res/layout/fragment_av_room_game.xml index f8b6e3603..e2dd4485b 100644 --- a/app/src/main/res/layout/fragment_av_room_game.xml +++ b/app/src/main/res/layout/fragment_av_room_game.xml @@ -178,6 +178,7 @@ @@ -236,6 +237,17 @@ tools:contentDescription="@string/layout_fragment_av_room_game_05" tools:visibility="visible" /> + + - - - - - - - - - - - - - - @@ -79,6 +80,7 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_room_select_game.xml b/app/src/main/res/layout/item_room_select_game.xml deleted file mode 100644 index 72deff7b7..000000000 --- a/app/src/main/res/layout/item_room_select_game.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index cd425acde..96d5ae58c 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -5282,4 +5282,9 @@ خلفية الغرفة هل أنت متأكد أنك تريد اختيار هذه الصورة لتكون خلفية لغرفتك؟ + + 確認開啓該遊戲? + 確認切換成普通房嗎? + 遊戲進行中,不可中止~ + 當前遊戲人數已滿! \ No newline at end of file diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 55fe15b5f..1c66c1273 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -5225,4 +5225,8 @@ 禮物值 房間主題 確認選擇這張圖片作為房間主題嗎? + 確認開啓該遊戲? + 確認切換成普通房嗎? + 遊戲進行中,不可中止~ + 當前遊戲人數已滿! \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ab8ad8ea7..9a2ffac98 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5264,6 +5264,11 @@ You cannot join again within 24 hours after leaving Room Background Are you sure you want to select this image as the room background? + + 確認開啓該遊戲? + 確認切換成普通房嗎? + 遊戲進行中,不可中止~ + 當前遊戲人數已滿! diff --git a/app/src/module_game/java/com/chwl/app/game/ui/home/GameHomeFragment.kt b/app/src/module_game/java/com/chwl/app/game/ui/home/GameHomeFragment.kt index 079d91bbe..725667a1d 100644 --- a/app/src/module_game/java/com/chwl/app/game/ui/home/GameHomeFragment.kt +++ b/app/src/module_game/java/com/chwl/app/game/ui/home/GameHomeFragment.kt @@ -97,7 +97,6 @@ class GameHomeFragment : BaseViewBindingFragment(), Mai binding.ivGameLogo.load(config.pic) adapter.setNewData(config.gameModes) } - @Subscribe(threadMode = ThreadMode.MAIN) fun onWalletInfoUpdate(event: UpdateWalletInfoEvent?) { if (_binding == null) { diff --git a/core/src/main/java/com/chwl/core/room/game/GameModel.kt b/core/src/main/java/com/chwl/core/room/game/GameModel.kt index 6dd27edb2..85f8df4b4 100644 --- a/core/src/main/java/com/chwl/core/room/game/GameModel.kt +++ b/core/src/main/java/com/chwl/core/room/game/GameModel.kt @@ -20,24 +20,37 @@ object GameModel : BaseModel() { .compose(RxHelper.handleSchAndExce()) } - fun getGameList(): Single> { - return api.getGameList() - .compose(RxHelper.handleBeanData()) - .compose(RxHelper.handleSchAndExce()) + fun getGameList(roomUid: Long?): Single> { + if (roomUid == null) { + return api.getGameList() + .compose(RxHelper.handleBeanData()) + .compose(RxHelper.handleSchAndExce()) + } else { + return api.getGameList(roomUid) + .compose(RxHelper.handleBeanData()) + .compose(RxHelper.handleSchAndExce()) + } } private interface Api { /** - * - * - * @param uid * @return */ @POST("/miniGame/record/miniGameList") fun getGameList( ): Single>> + /** + * @param uid + * @return + */ + @FormUrlEncoded + @POST("/miniGame/record/miniGameList") + fun getGameList( + @Field("roomUid") uid: Long + ): Single>> + /** * *