Commit 4ac40395 authored by wangxuewei's avatar wangxuewei

[提交人]:王雪伟

[提交简述] :幸福农场
[实现方案] :云朵加速,加速剂,种植接口
parent e262ffd2
package com.ym.game package com.ym.game
import android.util.Log
import com.game.luckyfarm.UnityPlayerActivity import com.game.luckyfarm.UnityPlayerActivity
import com.ym.game.module.HomeInfoEntity
import com.ym.game.module.LandListEntity
import com.ym.game.module.StatusEntity
import com.ym.game.net.GameApiClient
import com.ym.library.Constant import com.ym.library.Constant
import com.ym.library.net.ApiClient
import com.ym.library.net.BaseObserver
import com.ym.library.net.RxSchedulers
import com.ym.library.utils.JumpUtils import com.ym.library.utils.JumpUtils
import com.ym.library.utils.Utils
/** /**
* @author (wangXuewei) * @author (wangXuewei)
...@@ -14,25 +23,112 @@ class GameActivity : UnityPlayerActivity() { ...@@ -14,25 +23,112 @@ class GameActivity : UnityPlayerActivity() {
* 跳转提现页 * 跳转提现页
*/ */
fun gotoWithdrawPage() { fun gotoWithdrawPage() {
Log.d("wxw", "跳转提现页")
} }
/** /**
* 排行榜 * 上榜赚钱
*/ */
fun ranklistClick() { fun ranklistClick() {
Log.d("wxw", "上榜赚钱")
} }
/** /**
* 每日福利 * 每日福利
*/ */
fun oneveryDayWelfareClick() { fun oneveryDayWelfareClick() {
Log.d("wxw", "每日福利")
} }
/** /**
* 打卡提现 * 打卡提现
*/ */
fun clockInMakeMoney() { fun clockInMakeMoney() {
Log.d("wxw", "打卡提现")
}
/**
* 获取首页信息
*/
fun getHomeInfo(callback: IUnitySendMessageCallback?) {
GameApiClient.gameApi.getGameHomeInfo().compose(RxSchedulers.observableIO2Main())
.subscribe(object : BaseObserver<HomeInfoEntity>() {
override fun onSuccess(result: HomeInfoEntity?) {
callback?.onHomeSuccess(true, Utils.obj2Str(result))
}
override fun onFailure(e: Throwable?, code: String?, errorMsg: String?) {
callback?.onHomeSuccess(false, errorMsg + "")
}
})
}
/**
* 获取地块列表
* */
fun getListLand(callback: IUnitySendMessageCallback?) {
GameApiClient.gameApi.getListLand().compose(RxSchedulers.observableIO2Main())
.subscribe(object : BaseObserver<List<LandListEntity>>() {
override fun onSuccess(result: List<LandListEntity>?) {
Log.d("wxw", "地块列表" + "{\"landList\":" + Utils.obj2Str(result) + "}")
callback?.onFarmLandListSuccess(
true,
"{\"landList\":" + Utils.obj2Str(result) + "}"
)
}
override fun onFailure(e: Throwable?, code: String?, errorMsg: String?) {
callback?.onFarmLandListSuccess(false, errorMsg + "")
}
})
}
/**
* 云朵加速
* */
fun getCloudSpeed(callback: IUnitySendMessageCallback?) {
GameApiClient.gameApi.getCloudSpeed().compose(RxSchedulers.observableIO2Main())
.subscribe(object : BaseObserver<StatusEntity>() {
override fun onSuccess(result: StatusEntity?) {
Log.d("wxw", "云朵加速" + Utils.obj2Str(result))
callback?.onCloudSpeedSuccess(true, Utils.obj2Str(result))
}
override fun onFailure(e: Throwable?, code: String?, errorMsg: String?) {
callback?.onCloudSpeedSuccess(false, errorMsg + "")
}
})
}
//解锁地块
fun getUnlockLand(callback: IUnitySendMessageCallback?, id: Int, type: Int) {
GameApiClient.gameApi.getUnlockLand(id, type).compose(RxSchedulers.observableIO2Main())
.subscribe(object : BaseObserver<StatusEntity>() {
override fun onSuccess(result: StatusEntity?) {
Log.d("wxw", "解锁地块" + Utils.obj2Str(result))
callback?.onCloudSpeedSuccess(true, Utils.obj2Str(result))
}
override fun onFailure(e: Throwable?, code: String?, errorMsg: String?) {
callback?.onCloudSpeedSuccess(false, errorMsg + "")
}
})
}
//加速剂
fun getUseAccelerators(callback: IUnitySendMessageCallback?, id: Int) {
GameApiClient.gameApi.getUseAccelerators(id).compose(RxSchedulers.observableIO2Main())
.subscribe(object : BaseObserver<StatusEntity>() {
override fun onSuccess(result: StatusEntity?) {
Log.d("wxw", "加速剂" + Utils.obj2Str(result))
callback?.onCloudSpeedSuccess(true, Utils.obj2Str(result))
}
override fun onFailure(e: Throwable?, code: String?, errorMsg: String?) {
callback?.onCloudSpeedSuccess(false, errorMsg + "")
}
})
} }
......
package com.ym.game;
/**
* @author (wangXuewei)
* @datetime 2020-10-09 22:18 GMT+8
* @detail :
*/
public class GameConfig {
}
...@@ -7,6 +7,10 @@ package com.ym.game ...@@ -7,6 +7,10 @@ package com.ym.game
*/ */
interface IUnitySendMessageCallback { interface IUnitySendMessageCallback {
fun onHomeSuccess(result: String) fun onHomeSuccess(isSuccess: Boolean, result: String)
fun onCloudSpeedSuccess(isSuccess: Boolean, result: String)
fun onFarmLandListSuccess(isSuccess: Boolean, result: String)
} }
\ No newline at end of file
...@@ -7,4 +7,66 @@ package com.ym.game.module; ...@@ -7,4 +7,66 @@ package com.ym.game.module;
*/ */
public class HomeInfoEntity { public class HomeInfoEntity {
/**
* coins : 8652
* ore : 0
* cents : 10097
* subClockNum : 10
* cloudSecond : -2
*/
private int coins;
private int ore;
private int cents;
private int subClockNum;
private int cloudSecond;
private int cloudNum;
public int getCoins() {
return coins;
}
public void setCoins(int coins) {
this.coins = coins;
}
public int getOre() {
return ore;
}
public void setOre(int ore) {
this.ore = ore;
}
public int getCents() {
return cents;
}
public void setCents(int cents) {
this.cents = cents;
}
public int getSubClockNum() {
return subClockNum;
}
public void setSubClockNum(int subClockNum) {
this.subClockNum = subClockNum;
}
public int getCloudSecond() {
return cloudSecond;
}
public void setCloudSecond(int cloudSecond) {
this.cloudSecond = cloudSecond;
}
public int getCloudNum() {
return cloudNum;
}
public void setCloudNum(int cloudNum) {
this.cloudNum = cloudNum;
}
} }
package com.ym.game.module;
/**
* @author (wangXuewei)
* @datetime 2020-10-10 11:44 GMT+8
* @detail :
*/
public class LandListEntity {
/**
* id : 1
* name : 白菜
* unlockPrice : 30
* seedPrice : 5
* profit : 6
* second : 60
* countDownSecond : 0
* status : 0
* seedNum : 0
*/
private int id;
private String name;
private int unlockPrice;
private int seedPrice;
private int profit;
private int second;
private int countDownSecond;
private int status;
private int seedNum;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getUnlockPrice() {
return unlockPrice;
}
public void setUnlockPrice(int unlockPrice) {
this.unlockPrice = unlockPrice;
}
public int getSeedPrice() {
return seedPrice;
}
public void setSeedPrice(int seedPrice) {
this.seedPrice = seedPrice;
}
public int getProfit() {
return profit;
}
public void setProfit(int profit) {
this.profit = profit;
}
public int getSecond() {
return second;
}
public void setSecond(int second) {
this.second = second;
}
public int getCountDownSecond() {
return countDownSecond;
}
public void setCountDownSecond(int countDownSecond) {
this.countDownSecond = countDownSecond;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getSeedNum() {
return seedNum;
}
public void setSeedNum(int seedNum) {
this.seedNum = seedNum;
}
}
package com.ym.game.module;
/**
* @author (wangXuewei)
* @datetime 2020-10-10 11:10 GMT+8
* @detail :
*/
public class StatusEntity {
private int status;
private int num;
private int cloudSecond;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getCloudSecond() {
return cloudSecond;
}
public void setCloudSecond(int cloudSecond) {
this.cloudSecond = cloudSecond;
}
}
package com.ym.game.net package com.ym.game.net
import com.ym.game.module.HomeInfoEntity
import com.ym.game.module.LandListEntity
import com.ym.game.module.StatusEntity
import com.ym.library.net.NetConfig import com.ym.library.net.NetConfig
import com.ym.library.net.Response import com.ym.library.net.Response
import com.ym.task.module.bean.GuessSongTaskBean import com.ym.task.module.bean.GuessSongTaskBean
import com.ym.task.module.net.SondTaskNetCongfig import com.ym.task.module.net.SondTaskNetCongfig
import io.reactivex.Observable import io.reactivex.Observable
import retrofit2.http.GET import retrofit2.http.GET
import retrofit2.http.POST
import retrofit2.http.Query
/** /**
* @author (wangXuewei) * @author (wangXuewei)
...@@ -16,12 +21,50 @@ interface IGameApi { ...@@ -16,12 +21,50 @@ interface IGameApi {
/** /**
* 获取农场首页数据 * 获取农场首页数据
*
* @param * @param
* @param * @param
* @return * @return
*/ */
@GET(NetConfig.Game.URL_GAME_HOME_INFO) @GET(NetConfig.Game.URL_GAME_HOME_INFO)
fun getGameHomeInfo(): Observable<Response<GuessSongTaskBean>> fun getGameHomeInfo(): Observable<Response<HomeInfoEntity>>
/**
* 地块列表
* @param
* @param
* @return
*/
@GET(NetConfig.Game.URL_GAME_LIST_LAND)
fun getListLand(): Observable<Response<List<LandListEntity>>>
/**
* 云朵加速
* @param
* @param
* @return
*/
@POST(NetConfig.Game.URL_GAME_CLOUD_SPEED)
fun getCloudSpeed(): Observable<Response<StatusEntity>>
/**
* 解锁地块/种植种子/收获果实
* @param id 地块列表id
* @param type 解锁地块传1 种植种子传2 收获果实传3
* @return
*/
@POST(NetConfig.Game.URL_GAME_UNLOCK_LAND)
fun getUnlockLand(@Query("id") id: Int, @Query("type") type: Int): Observable<Response<StatusEntity>>
/**
* 加速剂
* @param id 地块列表id
* @param
* @return
*/
@POST(NetConfig.Game.URL_GAME_USE_ACCELERATORS)
fun getUseAccelerators(@Query("id") id: Int): Observable<Response<StatusEntity>>
} }
\ No newline at end of file
<resources> <resources>
<string name="app_name">趣味猜歌</string> <string name="app_name">幸福农场</string>
</resources> </resources>
...@@ -233,7 +233,19 @@ public class NetConfig { ...@@ -233,7 +233,19 @@ public class NetConfig {
} }
public static class Game{ public static class Game{
public static final String URL_GAME_BUY_SEED="app/v1/game/farm/buy_seed";//金币购买种子
public static final String URL_GAME_CLOUD_SPEED="app/v1/game/farm/cloud_speed";//云朵加速
public static final String URL_GAME_DO_WD="app/v1/game/farm/do_wd";//发起提现
public static final String URL_GAME_HOME_INFO="app/v1/game/farm/home_info";//首页信息 public static final String URL_GAME_HOME_INFO="app/v1/game/farm/home_info";//首页信息
public static final String URL_GAME_LIST_LAND="app/v1/game/farm/list_land";//地块列表 public static final String URL_GAME_LIST_LAND="app/v1/game/farm/list_land";//地块列表
public static final String URL_GAME_OPEN_BOX="app/v1/game/farm/open_box";//开宝箱
public static final String URL_GAME_ORDER_DATA="app/v1/game/farm/order_data";//订单数据
public static final String URL_GAME_UNLOCK_LAND="app/v1/game/farm/unlock_land";//解锁地块/种植种子/收获果实
public static final String URL_GAME_USE_ACCELERATORS="app/v1/game/farm/use_accelerators";//加速剂加速
public static final String URL_GAME_WAREHOUSE_DATA="app/v1/game/farm/warehouseData";//仓库列表
public static final String URL_GAME_WITHDRAW_LIST="app/v1/game/farm/withdraw_list";//提现列表
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment