Merge branch 'feature/game' into test/2.0.0

This commit is contained in:
Max
2023-12-27 15:07:07 +08:00
9 changed files with 166 additions and 125 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -53,6 +53,9 @@ import com.nnbc123.core.room.anotherroompk.ShowUserInfoDialogEvent
import com.nnbc123.core.room.bean.RoomContributeDataInfo import com.nnbc123.core.room.bean.RoomContributeDataInfo
import com.nnbc123.core.room.bean.RoomContributeUserInfo import com.nnbc123.core.room.bean.RoomContributeUserInfo
import com.nnbc123.core.room.bean.RoomInfo import com.nnbc123.core.room.bean.RoomInfo
import com.nnbc123.core.room.bean.RoomModeType
import com.nnbc123.core.room.game.GameInfo
import com.nnbc123.core.room.game.GameModel
import com.nnbc123.core.room.model.RoomContributeListModel import com.nnbc123.core.room.model.RoomContributeListModel
import com.nnbc123.core.room.queuing_mic.event.HasAnimationEffect import com.nnbc123.core.room.queuing_mic.event.HasAnimationEffect
import com.nnbc123.core.share.ShareModel import com.nnbc123.core.share.ShareModel
@@ -66,6 +69,7 @@ import com.nnbc123.core.utils.net.RxHelper
import com.nnbc123.library.rxbus.RxBus import com.nnbc123.library.rxbus.RxBus
import com.nnbc123.library.utils.FormatUtils import com.nnbc123.library.utils.FormatUtils
import com.nnbc123.library.utils.JavaUtil import com.nnbc123.library.utils.JavaUtil
import com.nnbc123.library.utils.ResUtil
import com.nnbc123.library.utils.SingleToastUtil import com.nnbc123.library.utils.SingleToastUtil
import com.trello.rxlifecycle3.android.FragmentEvent import com.trello.rxlifecycle3.android.FragmentEvent
import io.reactivex.SingleObserver import io.reactivex.SingleObserver
@@ -240,16 +244,16 @@ class HomePartyFragment : BaseFragment(), View.OnClickListener, OnShareDialogIte
} }
//这里的2和4是服务端定义的错误状态 关闭排麦模式和关闭PK模式! //这里的2和4是服务端定义的错误状态 关闭排麦模式和关闭PK模式!
private val isShowChangeGame: Boolean private val isShowChangeGame: Boolean get() {
get() = false val currentRoomInfo = AvRoomDataManager.get().mCurrentRoomInfo;
/* RoomInfo currentRoomInfo = AvRoomDataManager.get().mCurrentRoomInfo;
return currentRoomInfo != null && return currentRoomInfo != null &&
AvRoomDataManager.get().isRoomOwner() && AvRoomDataManager.get().isRoomOwner() &&
currentRoomInfo.getIsPermitRoom() != 1 && currentRoomInfo.getIsPermitRoom() != 1 &&
currentRoomInfo.getType() != RoomInfo.ROOM_TYPE_SINGLE && currentRoomInfo.getType() != RoomInfo.ROOM_TYPE_SINGLE &&
(currentRoomInfo.getRoomModeType() == RoomModeType.NORMAL_MODE || (currentRoomInfo.getRoomModeType() == RoomModeType.NORMAL_MODE ||
currentRoomInfo.getRoomModeType() == 2 || currentRoomInfo.getRoomModeType() == 2 ||
currentRoomInfo.getRoomModeType() == 4);*/ currentRoomInfo.getRoomModeType() == 4)
}
fun setRoomBg(roomInfo: RoomInfo?) { fun setRoomBg(roomInfo: RoomInfo?) {
if (_binding == null) return if (_binding == null) return
@@ -421,6 +425,34 @@ class HomePartyFragment : BaseFragment(), View.OnClickListener, OnShareDialogIte
setupFollowRoom() setupFollowRoom()
FOLLOW_ROOM_TYPE = if (AvRoomDataManager.get().isRoomFans) "2" else "1" FOLLOW_ROOM_TYPE = if (AvRoomDataManager.get().isRoomFans) "2" else "1"
setIdOnlineData() setIdOnlineData()
if (isShowChangeGame) {
initRvGame()
binding.llChangeGame.visibility = View.VISIBLE
if (AvRoomDataManager.get().isOpenGame) {
binding.tvCurrGame.text = it.mgName
} else {
binding.tvCurrGame.text = "扩列交友"
}
GameModel.getGameList()
.compose(bindToLifecycle())
.subscribe { gameInfos ->
if (AvRoomDataManager.get().isOpenGame) {
for (i in gameInfos.indices) {
val gameInfo: GameInfo = gameInfos[i]
if (gameInfo.mgId.toLongOrNull() == it.mgId) {
gameInfos.removeAt(i)
break
}
}
val gameInfo = GameInfo()
gameInfo.name = "扩列交友"
gameInfos.add(gameInfo)
}
gameAdapter?.setNewData(gameInfos)
}
} else {
binding.llChangeGame.setVisibility(View.GONE)
}
} }
} }
@@ -520,8 +552,8 @@ class HomePartyFragment : BaseFragment(), View.OnClickListener, OnShareDialogIte
var imageView: ImageView var imageView: ImageView
val avatarList = listOf( val avatarList = listOf(
binding.ivRank0, binding.ivRank0,
binding.ivRank1, // binding.ivRank1,
binding.ivRank2 // binding.ivRank2
) )
for (i in avatarList.indices) { for (i in avatarList.indices) {
imageView = avatarList[i] imageView = avatarList[i]
@@ -538,13 +570,13 @@ class HomePartyFragment : BaseFragment(), View.OnClickListener, OnShareDialogIte
private fun updateRoomRanks(data: List<RoomContributeUserInfo>) { private fun updateRoomRanks(data: List<RoomContributeUserInfo>) {
val avatarList = arrayListOf( val avatarList = arrayListOf(
binding.ivRank0, binding.ivRank0,
binding.ivRank1, // binding.ivRank1,
binding.ivRank2 // binding.ivRank2
) )
val stvList = arrayListOf( val stvList = arrayListOf(
binding.stvRank0, binding.stvRank0,
binding.stvRank1, // binding.stvRank1,
binding.stvRank2 // binding.stvRank2
) )
for (i in 0 until avatarList.size) { for (i in 0 until avatarList.size) {
avatarList[i].loadAvatar(data.getOrNull(i)?.avatar) avatarList[i].loadAvatar(data.getOrNull(i)?.avatar)

View File

@@ -8,8 +8,8 @@ import com.nnbc123.app.BuildConfig;
public class AppConfig { public class AppConfig {
protected static final String APP_ID = "1467745235064848385"; protected static final String APP_ID = "1735573973195948033";
protected static final String APP_KEY = "BvjLDpWol7OihaYeFebuepx1bZu6cxU5"; protected static final String APP_KEY = "r23OylNqnjOBPM0SDgVBfq6RCKMWAc0X";
protected static boolean isTestEnv = BuildConfig.DEBUG; protected static boolean isTestEnv = BuildConfig.DEBUG;
} }

View File

@@ -34,7 +34,7 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId:
private val TAG = "GameDelegate" private val TAG = "GameDelegate"
private var APP_CODE = "" private var APP_CODE = ""
private val mRoomID = AvRoomDataManager.get().roomUid.toString() private val mRoomID :String get() = AvRoomDataManager.get().roomUid.toString()
private val mLanguage = "zh-CN" //语言 private val mLanguage = "zh-CN" //语言
//调用游戏SDK的接口,成功加载游戏后可用: //调用游戏SDK的接口,成功加载游戏后可用:
@@ -84,7 +84,10 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId:
} }
fun updateGame(mgId: Long?) { fun updateGame(mgId: Long?) {
if (mgId == null || mgId == 0L || mgId == mMGID || iSudFSTAPP == null) return if (mgId == null || mgId == 0L) return
if (mgId == mMGID && iSudFSTAPP != null) {
return
}
mMGID = mgId mMGID = mgId
updateMyMicQueue(GameStatus.STATUS_NOT_JOIN) updateMyMicQueue(GameStatus.STATUS_NOT_JOIN)
loadMG(activity, mUid, mRoomID, APP_CODE, mMGID, mLanguage) loadMG(activity, mUid, mRoomID, APP_CODE, mMGID, mLanguage)
@@ -165,7 +168,9 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId:
) { ) {
iSudFSTAPP?.destroyMG() iSudFSTAPP?.destroyMG()
iSudFSTAPP = SudMGP.loadMG(activity, userID, roomID, code, mgID, language, mISudFSMMG) iSudFSTAPP = SudMGP.loadMG(activity, userID, roomID, code, mgID, language, mISudFSMMG)
addGameView(iSudFSTAPP!!.gameView) iSudFSTAPP?.apply {
addGameView(gameView)
}
} }
/** /**
@@ -226,6 +231,9 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId:
LogUtils.d(p0) LogUtils.d(p0)
} }
override fun onGameLoadingProgress(p0: Int, p1: Int, p2: Int) {
}
override fun onGameStarted() { override fun onGameStarted() {
} }

View File

@@ -169,12 +169,62 @@
android:id="@+id/icon_room_vip" android:id="@+id/icon_room_vip"
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_vertical" android:layout_marginTop="2.5dp"
android:layout_marginEnd="3dp" android:layout_marginEnd="3dp"
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/ic_vip_room_bottom" android:src="@drawable/ic_vip_room_bottom"
android:visibility="gone" /> android:visibility="gone" />
<LinearLayout
android:id="@+id/ll_change_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="6dp"
android:background="@drawable/bg_room_select_game"
android:orientation="vertical"
android:paddingStart="8dp"
android:paddingTop="2dp"
android:paddingEnd="8dp"
android:paddingBottom="2dp"
android:visibility="gone"
tools:visibility="visible">
<LinearLayout
android:id="@+id/ll_select_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_curr_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:includeFontPadding="true"
android:textColor="@color/white"
android:textSize="15sp"
tools:text="飞到敌人" />
<ImageView
android:id="@+id/iv_change_game_arrow"
android:layout_width="20dp"
android:layout_height="10dp"
android:scaleType="center"
android:src="@drawable/ic_room_arrow_type_below" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="4dp"
android:visibility="gone" />
</LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/ll_rank" android:id="@+id/ll_rank"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -215,130 +265,81 @@
</FrameLayout> </FrameLayout>
<FrameLayout <!-- <FrameLayout-->
android:layout_width="29dp" <!-- android:layout_width="29dp"-->
android:layout_height="35dp"> <!-- android:layout_height="35dp">-->
<ImageView <!-- <ImageView-->
android:id="@+id/iv_rank_1" <!-- android:id="@+id/iv_rank_1"-->
android:layout_width="24dp" <!-- android:layout_width="24dp"-->
android:layout_height="24dp" <!-- android:layout_height="24dp"-->
android:layout_gravity="bottom|end" <!-- android:layout_gravity="bottom|end"-->
android:layout_marginBottom="2dp" <!-- android:layout_marginBottom="2dp"-->
android:src="@drawable/default_avatar" /> <!-- android:src="@drawable/default_avatar" />-->
<View <!-- <View-->
android:layout_width="29dp" <!-- android:layout_width="29dp"-->
android:layout_height="33dp" <!-- android:layout_height="33dp"-->
android:background="@drawable/ic_room_rank1" /> <!-- android:background="@drawable/ic_room_rank1" />-->
<com.coorchice.library.SuperTextView <!-- <com.coorchice.library.SuperTextView-->
android:id="@+id/stv_rank1" <!-- android:id="@+id/stv_rank1"-->
android:layout_width="22dp" <!-- android:layout_width="22dp"-->
android:layout_height="8dp" <!-- android:layout_height="8dp"-->
android:layout_gravity="bottom|end" <!-- android:layout_gravity="bottom|end"-->
android:gravity="center" <!-- android:gravity="center"-->
android:includeFontPadding="false" <!-- android:includeFontPadding="false"-->
android:text="0" <!-- android:text="0"-->
android:textColor="#2E527A" <!-- android:textColor="#2E527A"-->
android:textSize="7dp" <!-- android:textSize="7dp"-->
app:corner="10dp" <!-- app:corner="10dp"-->
app:solid="#91C8FA" /> <!-- app:solid="#91C8FA" />-->
</FrameLayout> <!-- </FrameLayout>-->
<FrameLayout <!-- <FrameLayout-->
android:layout_width="29dp" <!-- android:layout_width="29dp"-->
android:layout_height="35dp" <!-- android:layout_height="35dp"-->
android:layout_marginEnd="5dp"> <!-- android:layout_marginEnd="5dp">-->
<ImageView <!-- <ImageView-->
android:id="@+id/iv_rank_2" <!-- android:id="@+id/iv_rank_2"-->
android:layout_width="24dp" <!-- android:layout_width="24dp"-->
android:layout_height="24dp" <!-- android:layout_height="24dp"-->
android:layout_gravity="bottom|end" <!-- android:layout_gravity="bottom|end"-->
android:layout_marginBottom="2dp" <!-- android:layout_marginBottom="2dp"-->
android:src="@drawable/default_avatar" /> <!-- android:src="@drawable/default_avatar" />-->
<View <!-- <View-->
android:layout_width="29dp" <!-- android:layout_width="29dp"-->
android:layout_height="33dp" <!-- android:layout_height="33dp"-->
android:background="@drawable/ic_room_rank2" /> <!-- android:background="@drawable/ic_room_rank2" />-->
<com.coorchice.library.SuperTextView <!-- <com.coorchice.library.SuperTextView-->
android:id="@+id/stv_rank2" <!-- android:id="@+id/stv_rank2"-->
android:layout_width="22dp" <!-- android:layout_width="22dp"-->
android:layout_height="8dp" <!-- android:layout_height="8dp"-->
android:layout_gravity="bottom|end" <!-- android:layout_gravity="bottom|end"-->
android:gravity="center" <!-- android:gravity="center"-->
android:includeFontPadding="false" <!-- android:includeFontPadding="false"-->
android:text="0" <!-- android:text="0"-->
android:textColor="#824B2C" <!-- android:textColor="#824B2C"-->
android:textSize="7dp" <!-- android:textSize="7dp"-->
app:corner="10dp" <!-- app:corner="10dp"-->
app:solid="#F0A47B" /> <!-- app:solid="#F0A47B" />-->
</FrameLayout> <!-- </FrameLayout>-->
</LinearLayout> </LinearLayout>
<LinearLayout
android:id="@+id/ll_change_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="6dp"
android:background="@drawable/bg_room_select_game"
android:orientation="vertical"
android:paddingStart="8dp"
android:paddingTop="2dp"
android:paddingEnd="8dp"
android:paddingBottom="2dp"
android:visibility="gone"
tools:visibility="gone">
<LinearLayout
android:id="@+id/ll_select_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_curr_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:includeFontPadding="true"
android:textColor="@color/white"
android:textSize="15sp"
tools:text="飞到敌人" />
<ImageView
android:id="@+id/iv_change_game_arrow"
android:layout_width="20dp"
android:layout_height="10dp"
android:scaleType="center"
android:src="@drawable/ic_room_arrow_type_below" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_game"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="4dp"
android:visibility="gone" />
</LinearLayout>
<ImageView <ImageView
android:id="@+id/room_more" android:id="@+id/room_more"
android:layout_width="25dp" android:layout_width="25dp"
android:layout_height="25dp" android:layout_height="25dp"
android:layout_gravity="bottom"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="13dp" android:layout_marginEnd="13dp"
android:scaleType="center" android:scaleType="center"
android:src="@drawable/icon_room_more" /> android:src="@drawable/icon_room_more" />

View File

@@ -34,7 +34,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
android:layout_marginTop="75dp" android:layout_marginTop="85dp"
android:orientation="vertical"> android:orientation="vertical">
<TextView <TextView

View File

@@ -18,7 +18,7 @@ object GameModel : BaseModel() {
.compose(RxHelper.handleSchAndExce()) .compose(RxHelper.handleSchAndExce())
} }
fun getGameList(): Single<List<GameInfo>> { fun getGameList(): Single<ArrayList<GameInfo>> {
return api.getGameList() return api.getGameList()
.compose(RxHelper.handleBeanData()) .compose(RxHelper.handleBeanData())
.compose(RxHelper.handleSchAndExce()) .compose(RxHelper.handleSchAndExce())
@@ -34,7 +34,7 @@ object GameModel : BaseModel() {
*/ */
@POST("/miniGame/record/miniGameList") @POST("/miniGame/record/miniGameList")
fun getGameList( fun getGameList(
): Single<ServiceResult<List<GameInfo>>> ): Single<ServiceResult<ArrayList<GameInfo>>>
/** /**
* *

View File

@@ -568,7 +568,7 @@ public class RoomBaseModel extends BaseModel implements IRoomBaseModel {
*/ */
@Override @Override
public Single<String> updateMyMicQueue(int micPosition, String roomId, UserInfo userInfo) { public Single<String> updateMyMicQueue(int micPosition, String roomId, UserInfo userInfo) {
return updateMyMicQueue(micPosition, roomId, userInfo); return updateMyMicQueue(micPosition, roomId, userInfo, false);
} }
@Override @Override