添加新接口扣款添加星币筛选

This commit is contained in:
18401019693 2023-11-10 17:49:59 +08:00
parent dc46ffc5b6
commit 68e6f5df1b
24 changed files with 120 additions and 51 deletions

View File

@ -205,6 +205,9 @@ public class SudGameActivity extends AbsActivity {
}
});
break;
case SudMGPMGState.MG_COMMON_GAME_STATE:
LiveNetManager.get(mContext).deductMoney( mCreateSudRoomModel.getSudGameRoomId());
break;
}
}

View File

@ -42,6 +42,17 @@ public class SudRoomListModel extends BaseModel {
private String sex;
@SerializedName("sud_game_icon")
private String sudgameicon;
@SerializedName("currency_type")
private String currencyType;
public String getCurrencyType() {
return currencyType;
}
public SudRoomListModel setCurrencyType(String currencyType) {
this.currencyType = currencyType;
return this;
}
public String getSudgameicon() {
return sudgameicon;

View File

@ -93,8 +93,8 @@ public class CreateSudGamePopup extends BottomPopupView {
private void initDate() {
currencyTypeName = getContext().getString(R.string.golden_bean);
userName = IMLoginManager.get(getContext()).getUserInfo().getUserNicename();
roomNames.add(WordUtil.isNewZh() ? "起玩吧!" : "Let's play together!");
roomNames.add(WordUtil.isNewZh() ? "來戰斗吧!" : "Let's fight!");
roomNames.add(WordUtil.isNewZh() ? "起玩吧!" : "Let's play together!");
roomNames.add(WordUtil.isNewZh() ? "來戰鬥吧!" : "Let's fight!");
roomNames.add(WordUtil.isNewZh() ? "決戰到天亮 " : "Fight until dawn");
roomNames.add(WordUtil.isNewZh() ? "在線等遊戲夥伴~" : "Waiting for game partners~");
roomNames.add(WordUtil.isNewZh() ? userName + "的房间 " : userName + "s room");

View File

@ -52,7 +52,7 @@ public class SudGameListPopup extends BottomPopupView {
private TextView gameTitle, sillTitle, houseOwnerTitle;
private String id = "0", mLiveUid;
private int page = 0;
private String mSill = "0,0", mSillName, roomHolderType = "0", roomHolderTypeName;
private String mSill = "0,0,0", mSillName, roomHolderType = "0", roomHolderTypeName;
private CommonRefreshView mRefreshView;
private SudGameListAdapter sudGameListAdapter;

View File

@ -116,13 +116,17 @@ public class SudGameListSelectPopup extends AttachPopupView {
selectString.add(getContext().getString(R.string.interactive_game_create_unlimited));
selectString.add(getContext().getString(R.string.interactive_game_create_0_1));
selectString.add(getContext().getString(R.string.interactive_game_create_1_2));
selectString.add(getContext().getString(R.string.interactive_game_create_2_5));
selectString.add(getContext().getString(R.string.interactive_game_create_5));
selectSill.put(getContext().getString(R.string.interactive_game_create_unlimited), "0,0");
selectSill.put(getContext().getString(R.string.interactive_game_create_0_1), "0,1");
selectSill.put(getContext().getString(R.string.interactive_game_create_1_2), "1,2");
selectSill.put(getContext().getString(R.string.interactive_game_create_2_5), "2,5");
selectSill.put(getContext().getString(R.string.interactive_game_create_5), "5,0");
selectString.add(getContext().getString(R.string.room_sill0_100));
selectString.add(getContext().getString(R.string.room_sill100_500));
selectString.add(getContext().getString(R.string.room_sill500_m));
selectSill.put(getContext().getString(R.string.interactive_game_create_unlimited), "0,0,0");
selectSill.put(getContext().getString(R.string.interactive_game_create_0_1), "0,1,3");
selectSill.put(getContext().getString(R.string.interactive_game_create_1_2), "1,5,3");
selectSill.put(getContext().getString(R.string.interactive_game_create_5), "5,0,3");
selectSill.put(getContext().getString(R.string.room_sill0_100), "0,1,2");
selectSill.put(getContext().getString(R.string.room_sill100_500), "1,5,2");
selectSill.put(getContext().getString(R.string.room_sill500_m), "5,0,2");
index = 0;
for (int i = 0; i < selectString.size(); i++) {
if (TextUtils.equals(mSill, selectString.get(i))) {

View File

@ -1056,4 +1056,9 @@ public interface PDLiveApi {
@Query("mg_id") String mgId,
@Query("room_id") String roomId
);
@GET("/api/public/?service=Sudgameserver.deductMoney")
Observable<ResponseModel<Object>> deductMoney(
@Query("room_id") String roomId
);
}

View File

@ -74,7 +74,6 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.functions.Consumer;
import io.reactivex.schedulers.Schedulers;
import retrofit2.http.Query;
/**
@ -2316,6 +2315,24 @@ public class LiveNetManager {
}).isDisposed();
}
public void deductMoney(String roomId) {
API.get().pdLiveApi(mContext)
.deductMoney(roomId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<ResponseModel<Object>>() {
@Override
public void accept(ResponseModel<Object> objectResponseModel) throws Exception {
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
}
}).isDisposed();
}
public void gameStartCheckRemainingBalance(String mgId, String roomId, HttpCallback<CheckRemainingBalance> callback) {
API.get().pdLiveApi(mContext)
.gameStartCheckRemainingBalance(mgId, roomId)

View File

@ -4,6 +4,7 @@ import android.app.Activity;
import android.os.Handler;
import android.os.Looper;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.ViewTreeObserver;
import android.widget.Toast;
@ -280,6 +281,7 @@ public abstract class BaseGameViewModel implements SudFSMMGListener {
@Override
public void onGameLog(String str) {
SudFSMMGListener.super.onGameLog(str);
Log.e("onGameStarted", "游戏日志:" + str);
}
/**
@ -288,6 +290,7 @@ public abstract class BaseGameViewModel implements SudFSMMGListener {
*/
@Override
public void onGameStarted() {
Log.e("onGameStarted", "游戏开始--------------------");
}
/**

View File

@ -227,8 +227,12 @@ public class SudFSMMGDecorator implements ISudFSMMG {
}
break;
case SudMGPMGState.MG_COMMON_GAME_STATE: // 10. 游戏状态
Log.e("onGameStateChange", "mg_common_game_state:::::" + "dataJson:::::"+dataJson);
SudMGPMGState.MGCommonGameState mgCommonGameState = SudJsonUtils.fromJson(dataJson, SudMGPMGState.MGCommonGameState.class);
sudFSMMGCache.onGameMGCommonGameState(mgCommonGameState);
if (mgCommonGameState.gameState==2){
Bus.get().post(new CheckRemainingBalanceEvent().setSudMGPMGState(SudMGPMGState.MG_COMMON_GAME_STATE));
}
if (listener == null) {
ISudFSMStateHandleUtils.handleSuccess(handle);
} else {
@ -817,7 +821,7 @@ public class SudFSMMGDecorator implements ISudFSMMG {
if (listener != null && listener.onPlayerStateChange(handle, userId, state, dataJson)) {
return;
}
Log.e("SudFSMMGDecorator", "userId:" + userId + " state:" + state + " dataJson:" + dataJson);
Log.e("onPlayerStateChange", "userId:" + userId + " state:" + state + " dataJson:" + dataJson);
switch (state) {
case SudMGPMGState.MG_COMMON_PLAYER_IN: // 1.加入状态已修改
SudMGPMGState.MGCommonPlayerIn mgCommonPlayerIn = SudJsonUtils.fromJson(dataJson, SudMGPMGState.MGCommonPlayerIn.class);

View File

@ -95,7 +95,7 @@ public class LiveSudGameHistoryPopup extends BottomPopupView {
@Override
public void loadData(int p, HttpCallback callback) {
page = p;
LiveHttpUtil.gameRecord(sudGameId, currencyType, dateType, p - 1, callback);
LiveHttpUtil.gameRecord(sudGameId, currencyType, dateType, p, callback);
}
@Override

View File

@ -1,6 +1,5 @@
package com.yunbao.common.views;
import android.text.TextUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
@ -16,6 +15,7 @@ public class LiveSudGameHistoryViewHolder extends RecyclerView.ViewHolder {
private TextView sudGameName, sudGameTime, sudGameUser, sudGameCoin;
private ImageView sudGameType;
public LiveSudGameHistoryViewHolder(@NonNull View itemView) {
super(itemView);
sudGameName = itemView.findViewById(R.id.sud_game_name);
@ -32,20 +32,21 @@ public class LiveSudGameHistoryViewHolder extends RecyclerView.ViewHolder {
if (model.getCurrencyType() == 3) {
ImgLoader.display(itemView.getContext(), R.mipmap.gold_coin, sudGameType);
} if (model.getCurrencyType()==2) {
}
if (model.getCurrencyType() == 2) {
ImgLoader.display(itemView.getContext(), R.mipmap.icon_collectibles, sudGameType);
}
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < model.getUserName().size(); i++) {
if (i > model.getUserName().size() - 2) {
stringBuffer.append(model.getUserName().get(i))
.append("/");
}
if (stringBuffer.length() > 0) {
sudGameUser.setText(stringBuffer.toString().substring(0, stringBuffer.toString().length() - 1));
} else {
stringBuffer.append(model.getUserName().get(i));
sudGameUser.setText(stringBuffer.toString());
}
}
sudGameUser.setText(stringBuffer.toString());
}
}

View File

@ -264,6 +264,9 @@ public class LiveSudGamePopup extends BottomPopupView {
}
});
break;
case SudMGPMGState.MG_COMMON_GAME_STATE:
LiveNetManager.get(getContext()).deductMoney( mCreateSudRoomModel.getSudGameRoomId());
break;
}

View File

@ -41,7 +41,7 @@ public class SudGameListViewHolder extends RecyclerView.ViewHolder {
private TextView roomName, playerWeAre, playerWeAre2, goldenBeanNumber;
private RoundedImageView avatarList1, avatarList2, avatarList3, avatarList4, avatarList5;
private ImageView gifImageView;
private ImageView sex, game_icon;
private ImageView sex, game_icon, gold_coin;
public SudGameListViewHolder(@NonNull View itemView) {
@ -58,6 +58,7 @@ public class SudGameListViewHolder extends RecyclerView.ViewHolder {
avatarList3 = itemView.findViewById(R.id.avatar_list3);
avatarList4 = itemView.findViewById(R.id.avatar_list4);
avatarList5 = itemView.findViewById(R.id.avatar_list5);
gold_coin = itemView.findViewById(R.id.gold_coin);
sex = itemView.findViewById(R.id.sex);
avatarList1.setVisibility(View.GONE);
avatarList2.setVisibility(View.GONE);
@ -78,6 +79,11 @@ public class SudGameListViewHolder extends RecyclerView.ViewHolder {
} else if (TextUtils.equals(model.getSex(), "2")) {
ImgLoader.display(itemView.getContext(), R.mipmap.icon_sex_woman, sex);
}
if (TextUtils.equals(model.getCurrencyType(), "2")) {
ImgLoader.display(itemView.getContext(), R.mipmap.icon_collectibles, gold_coin);
} else {
ImgLoader.display(itemView.getContext(), R.mipmap.gold_coin, gold_coin);
}
ImgLoader.display(itemView.getContext(), model.getSudgameicon(), game_icon);
ViewClicksAntiShake.clicksAntiShake(itemView.findViewById(R.id.layout), new ViewClicksAntiShake.ViewClicksCallBack() {
@Override

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="555dp"
android:layout_height="585dp"
android:background="@mipmap/background_sud_history"
android:orientation="vertical">

View File

@ -175,6 +175,7 @@
android:textSize="12sp" />
<ImageView
android:id="@+id/gold_coin"
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_marginStart="2dp"

View File

@ -175,6 +175,7 @@
android:textSize="12sp" />
<ImageView
android:id="@+id/gold_coin"
android:layout_width="13dp"
android:layout_height="13dp"
android:layout_marginStart="2dp"

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="450dp"
android:layout_height="500dp"
android:background="@drawable/bg_live_sud_list"
android:orientation="vertical">

View File

@ -1340,8 +1340,7 @@ Limited ride And limited avatar frame</string>
<string name="interactive_game_create_gold_bean_quantity">Please enter the number of golden beans</string>
<string name="interactive_game_create_unlimited">No limit</string>
<string name="interactive_game_create_0_1">0K-1K beans</string>
<string name="interactive_game_create_1_2">1K-2K beans</string>
<string name="interactive_game_create_2_5">2K-5K beans</string>
<string name="interactive_game_create_1_2">1K-5K beans</string>
<string name="interactive_game_create_5">Above 5K beans</string>
<string name="interactive_game_player">User</string>
<string name="interactive_game_player_we_are">In a team of %s people, let\'s play together~</string>
@ -1384,5 +1383,8 @@ Limited ride And limited avatar frame</string>
<string name="sud_in_game_game_time">Time:</string>
<string name="sud_in_game_game_record">Game Record</string>
<string name="sud_in_game_random_name">Random</string>
<string name="room_sill0_100">0-100 coins</string>
<string name="room_sill100_500">100-500 coins</string>
<string name="room_sill500_m">Above 500 coins</string>
</resources>

View File

@ -1337,8 +1337,7 @@
<string name="interactive_game_create_gold_bean_quantity">請選擇金豆數量</string>
<string name="interactive_game_create_unlimited">不限</string>
<string name="interactive_game_create_0_1">0K-1K金豆</string>
<string name="interactive_game_create_1_2">1K-2K金豆</string>
<string name="interactive_game_create_2_5">2K-5K金豆</string>
<string name="interactive_game_create_1_2">1K-5K金豆</string>
<string name="interactive_game_create_5">5K以上金豆</string>
<string name="interactive_game_player">玩家</string>
<string name="interactive_game_player_we_are">%s人組隊中一起來玩吧</string>
@ -1381,4 +1380,7 @@
<string name="sud_in_game_game_time">時間:</string>
<string name="sud_in_game_game_record">游戲記錄</string>
<string name="sud_in_game_random_name">随机</string>
<string name="room_sill0_100">0-100星幣</string>
<string name="room_sill100_500">100-500星幣</string>
<string name="room_sill500_m">500以上星幣</string>
</resources>

View File

@ -1336,8 +1336,7 @@
<string name="interactive_game_create_gold_bean_quantity">請選擇金豆數量</string>
<string name="interactive_game_create_unlimited">不限</string>
<string name="interactive_game_create_0_1">0K-1K金豆</string>
<string name="interactive_game_create_1_2">1K-2K金豆</string>
<string name="interactive_game_create_2_5">2K-5K金豆</string>
<string name="interactive_game_create_1_2">1K-5K金豆</string>
<string name="interactive_game_create_5">5K以上金豆</string>
<string name="interactive_game_player">玩家</string>
<string name="interactive_game_player_we_are">%s人組隊中一起來玩吧</string>
@ -1380,4 +1379,7 @@
<string name="sud_in_game_game_time">時間:</string>
<string name="sud_in_game_game_record">游戲記錄</string>
<string name="sud_in_game_random_name">随机</string>
<string name="room_sill0_100">0-100星幣</string>
<string name="room_sill100_500">100-500星幣</string>
<string name="room_sill500_m">500以上星幣</string>
</resources>

View File

@ -1336,8 +1336,7 @@
<string name="interactive_game_create_gold_bean_quantity">請選擇金豆數量</string>
<string name="interactive_game_create_unlimited">不限</string>
<string name="interactive_game_create_0_1">0K-1K金豆</string>
<string name="interactive_game_create_1_2">1K-2K金豆</string>
<string name="interactive_game_create_2_5">2K-5K金豆</string>
<string name="interactive_game_create_1_2">1K-5K金豆</string>
<string name="interactive_game_create_5">5K以上金豆</string>
<string name="interactive_game_player">玩家</string>
<string name="interactive_game_player_we_are">%s人組隊中一起來玩吧</string>
@ -1380,5 +1379,8 @@
<string name="sud_in_game_game_time">時間:</string>
<string name="sud_in_game_game_record">游戲記錄</string>
<string name="sud_in_game_random_name">随机</string>
<string name="room_sill0_100">0-100星幣</string>
<string name="room_sill100_500">100-500星幣</string>
<string name="room_sill500_m">500以上星幣</string>
</resources>

View File

@ -1343,8 +1343,7 @@ Limited ride And limited avatar frame</string>
<string name="interactive_game_create_gold_bean_quantity">Please enter the number of golden beans</string>
<string name="interactive_game_create_unlimited">No limit</string>
<string name="interactive_game_create_0_1">0K-1K beans</string>
<string name="interactive_game_create_1_2">1K-2K beans</string>
<string name="interactive_game_create_2_5">2K-5K beans</string>
<string name="interactive_game_create_1_2">1K-5K beans</string>
<string name="interactive_game_create_5">Above 5K beans</string>
<string name="interactive_game_player">User</string>
<string name="interactive_game_player_we_are">In a team of %s people, let\'s play together~</string>
@ -1387,4 +1386,7 @@ Limited ride And limited avatar frame</string>
<string name="sud_in_game_rule_hint3">3. Users can customize the game threshold, which must be between 100 to 50000 gold beans or 10 to 1000 star coins, and the amount must be a multiple of 10;</string>
<string name="sud_in_game_rule_hint4">4. At the beginning of the game, chips from participating users will be collected. After the game ends, 10% of the chips will be collected as tickets, and all remaining chips will be given to the winning users.In a draw, the corresponding chips will be deducted from the tickets and returned to the users;</string>
<string name="sud_in_game_rule_hint5">5. The final interpretation right of the event belongs to PDLIVE.</string>
<string name="room_sill0_100">0-100 coins</string>
<string name="room_sill100_500">100-500 coins</string>
<string name="room_sill500_m">Above 500 coins</string>
</resources>

View File

@ -5,7 +5,7 @@ ext {
minSdkVersion : 21,
targetSdkVersion : 33,
versionCode : 453,
versionName : "6.6.2"
versionName : "6.6.3"
]
manifestPlaceholders = [
//

View File

@ -66,7 +66,7 @@ public class MainHomeGameViewHolder extends AbsMainHomeChildViewHolder implement
private TextView gameTitle, sillTitle, houseOwnerTitle;
private long interactionID = 0;
private List<CustomSidebarChildModel> customSidebarChildModels = new ArrayList<>();
private String mSill = "0,0", mSillName, roomHolderType = "0", roomHolderTypeName;
private String mSill = "0,0,0", mSillName, roomHolderType = "0", roomHolderTypeName;
private long animDuration = 500;
private String id = "0";
private SudGameListAdapter sudGameListAdapter;
@ -88,7 +88,7 @@ public class MainHomeGameViewHolder extends AbsMainHomeChildViewHolder implement
public void init() {
initData();
mSill = "0,0";
mSill = "0,0,0";
roomHolderType = "0";
id = "0";
roomGameArrow = (ImageView) findViewById(R.id.room_game_arrow);