update 随机PK&自由PK

This commit is contained in:
zlzw 2022-12-08 13:32:26 +08:00
parent 285a33ff9a
commit 9eff246f06
4 changed files with 72 additions and 60 deletions

View File

@ -78,7 +78,7 @@ public class RandomPkManager {
for (OnRandomPkTimer onRandomPkTimer : randomPkTimer) { for (OnRandomPkTimer onRandomPkTimer : randomPkTimer) {
onRandomPkTimer.onTimer(String.format(Locale.CHINA, "%02d:%02d", min, sec)); onRandomPkTimer.onTimer(String.format(Locale.CHINA, "%02d:%02d", min, sec));
} }
if (sec == 8) { if (sec == 2) {
nextPk(); nextPk();
} }
}); });
@ -143,6 +143,7 @@ public class RandomPkManager {
for (OnRandomPkTimer pkTimer : randomPkTimer) { for (OnRandomPkTimer pkTimer : randomPkTimer) {
pkTimer.onPkEndSuccess(); pkTimer.onPkEndSuccess();
} }
status = PK_STATUS_DEFAULT;
} }
private int exitTimer; private int exitTimer;
@ -168,7 +169,6 @@ public class RandomPkManager {
end(); end();
callEndPkSuccess(); callEndPkSuccess();
cancel(); cancel();
status = PK_STATUS_DEFAULT;
} }
}); });
} }
@ -234,6 +234,9 @@ public class RandomPkManager {
} }
public void setPkStatus(int status) { public void setPkStatus(int status) {
if(status==PK_STATUS_DEFAULT){//默认状态下不响应随机PK接口
return;
}
this.status = status; this.status = status;
switch (status) { switch (status) {
case PK_STATUS_START: case PK_STATUS_START:

View File

@ -43,6 +43,8 @@ public class RandomPkRecyclerAdapter extends RefreshAdapter<RandomPkUserBean> {
@Override @Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
if (getItemViewType(position) == ITEM) { if (getItemViewType(position) == ITEM) {
((ItemViewHolder) holder).setData(mList.get(position-1));
}else{
((HeadViewHolder) holder).setData(mList.get(position)); ((HeadViewHolder) holder).setData(mList.get(position));
} }
} }

View File

@ -588,8 +588,11 @@ public class LiveRyLinkMicPkPresenter implements View.OnClickListener {
mApplyNmae = u.getUserNiceName(); mApplyNmae = u.getUserNiceName();
if (by != 1) { if (by != 1) {
if (mIsApplyDialogShow == false) { if (mIsApplyDialogShow == false) {
// showApplyDialog(u); if (u.isRandomPk()) {
showPkDialog(u); showPkDialog(u);
} else {
showApplyDialog(u);
}
} }
} else { } else {
isPK(); isPK();
@ -1003,7 +1006,7 @@ public class LiveRyLinkMicPkPresenter implements View.OnClickListener {
}); });
} else { } else {
refusePk(u);
} }
mApplyUid = null; mApplyUid = null;
mApplyStream = null; mApplyStream = null;
@ -1200,13 +1203,21 @@ public class LiveRyLinkMicPkPresenter implements View.OnClickListener {
cancelBtn.setVisibility(View.GONE); cancelBtn.setVisibility(View.GONE);
confirmBtn.setOnClickListener(v -> { confirmBtn.setOnClickListener(v -> {
refuse(); refusePk(u);
dialog.dismiss(); dialog.dismiss();
}); });
} }
void refuse() {
IMRTCManager.getInstance().responseJoinOtherRoom(u.getId(), false, "extra", new IRCRTCResultCallback() { void apply() {
isPK();
}
})
.build().show();
}
private void refusePk(UserBean u) {
IMRTCManager.getInstance().responseJoinOtherRoom(u.getId(), false, "extra_randm_pk", new IRCRTCResultCallback() {
@Override @Override
public void onFailed(RTCErrorCode errorCode) { public void onFailed(RTCErrorCode errorCode) {
@ -1217,6 +1228,7 @@ public class LiveRyLinkMicPkPresenter implements View.OnClickListener {
public void onSuccess() { public void onSuccess() {
final SocketSendBean msg1 = new SocketSendBean() final SocketSendBean msg1 = new SocketSendBean()
.param("_method_", SOCKET_LINK_MIC_PK) .param("_method_", SOCKET_LINK_MIC_PK)
// .param("randomPk",u.isRandomPk()+"")
.param("action", 3); .param("action", 3);
msg1.create(); msg1.create();
@ -1250,13 +1262,6 @@ public class LiveRyLinkMicPkPresenter implements View.OnClickListener {
LiveNetManager.get(mContext).setBanRandomPK(null); LiveNetManager.get(mContext).setBanRandomPK(null);
} }
void apply() {
isPK();
}
})
.build().show();
}
/** /**
* 显示申请多人PK的弹窗 * 显示申请多人PK的弹窗
*/ */

View File

@ -1053,6 +1053,8 @@ public class SocketRyClient {
mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"), map.getString("is_ladders"));// mListener.onLinkMicPkStart(map.getString("uid")); mListener.onLinkMicPkStart(map.getString("uid"), map.getString("pkhead"), map.getString("pkname"), map.getString("is_ladders"));// mListener.onLinkMicPkStart(map.getString("uid"));
break; break;
case 3://对方主播拒绝PK的回调 case 3://对方主播拒绝PK的回调
if (map.containsKey("randomPk") && map.getString("randomPk").equals("true")) {
}
RandomPkManager.getInstance().setPkStatus(RandomPkManager.PK_STATUS_REFUSE); RandomPkManager.getInstance().setPkStatus(RandomPkManager.PK_STATUS_REFUSE);
mListener.onLinkMicPkRefuse(); mListener.onLinkMicPkRefuse();
break; break;