using System; using System.Collections; using System.Collections.Generic; using simplejson; using UnityEngine; public class PottingMobileServicesEditor : PottingMobileServicesBase { static PottingMobileServicesEditor() { InitManager(); } /** * 获取服务器配置 * appver:如果不需要根据版本判断可以串0 * lastver:每次全新获取传0 * * @param appVer * @param lastVer */ public static void _configSync(string appVer, int lastVer) { YouLoftServices.ServerConfig((i, s) => { PottingMobileServicesManger.Instance.ConfigSync(GETJsonString(i,s)); }); } /** * 渠道下单接口,根据不同渠道需要的数据不同 * 返回的数据结构不同,前端需要根据情况解析 * * @param channel 渠道 * @param goodsid 商品ID */ public static void _channelPayOrder(int channel, string goodsid) { YouLoftServices._channelPayOrder(channel,goodsid, (i, s) => { PottingMobileServicesManger.Instance.ChannelpayOrder(GETJsonString(i,s)); }); } /** * 获取当前游戏,渠道的最新版本 * 返回结果无加密 * * @param channel 渠道 */ public static void _channelPayGetAppVersion(int channel) { YouLoftServices.GameServerVersion(channel, (i, s) => { PottingMobileServicesManger.Instance.ChannelpayGetAppVersion(GETJsonString(i,s)); }); } /** * 兑换码兑换接口 * * @param redeemcode 兑换码 */ public static void _dedeemConsume(string redeemcode) { YouLoftServices.RedemptionCode(redeemcode, (i, s) => { PottingMobileServicesManger.Instance.DedeemConsume(GETJsonString(i,s)); }); } /** * 登录接口 * * @param id 设备ID 或者第三方登录平台的ID * @param type 登录类型 * @param name 用户昵称 * @param icon 用户头像链接 */ public static void _userLogin(string id, int type, string name, string icon) { YouLoftServices.Login(id,type,name,icon, (i, s) => { PottingMobileServicesManger.Instance.UserLogin(GETJsonString(i,s)); }); } /** * 获取(提交)存档到服务器 * 1.每次启动游戏优先获取存档 * 2.当有需要更新的存档时提交服务器 * 提交存档时服务器会默认覆盖以前的存档不会做其他判断 * 请求需要签名,返回数据有加密 * * @param archive * @param archiveVersion */ public static void _userSync(string archive, int archiveVersion) { YouLoftServices.CommitArchive(archive,archiveVersion, (i, s) => { PottingMobileServicesManger.Instance.UserSync(GETJsonString(i,s)); }); } /** * 心跳检测,判断当前客户端登陆是否有效 * 请求需要签名,返回数据无加密 */ public static void _userHeartbeat() { YouLoftServices._userHeartbeat((i, s) => { PottingMobileServicesManger.Instance.UserHeartbeat(GETJsonString(i,s)); }); } /** * 用户下订接口,下单成功之后返回支付链接 * -跳转支付页面 * * @param goodsid 商品ID */ public static void _userOrder(string goodsid, string activityid) { YouLoftServices.RequestOrder(goodsid,activityid, (code, starUrl,endUrl,orderid) => { if (code==1) { code = 200; } if (code==2) { code = 4000; } var jsonData = new JSONObject { ["code"] = code, ["data"] =starUrl, ["returnAppLink"] =endUrl, ["orderid"] =orderid }; PottingMobileServicesManger.Instance.UserOrder(jsonData.ToString()); }); } /** * 恢复购买,查看已完成的所有订单,以及消耗状态 * 请求需要签名,返回结果有加密 */ public static void _userResumepurchase() { YouLoftServices.ResumeOrder((i, s) => { PottingMobileServicesManger.Instance.UserResumepurchase(GETJsonString(i,s)); }); } /** * 订单消耗 * 请求需要签名,返回结果有加密 * * @param goodsid 商品ID * @param orderId 订单ID */ public static void _userConsume(string goodsid, string orderId) { YouLoftServices.ConsumeOrder(goodsid,orderId, (i, s) => { PottingMobileServicesManger.Instance.UserConsume(GETJsonString(i,s)); }); } /** * 查询单个订单的状态 * 用来处理非消耗性商品,判断订单是否支付完成 * 返回结果有加密 * * @param goodsid 商品ID * @param orderId 订单ID */ public static void _userQueryOrder(string goodsid, string orderId) { YouLoftServices._userQueryOrder(goodsid,orderId, (i, s) => { PottingMobileServicesManger.Instance.UserQueryOrder(GETJsonString(i,s)); }); } /** * 提交用户分数 * 返回用户排行榜信息,返回结果无加密 * * @param score 名次 * @param info 排名信息 * @param rankingid 排名ID */ public static void _userUploadScore(int score, string info, string rankingid) { YouLoftServices.UploadScore(rankingid,score,info,(b)=> { int code = b? 200 : 4000; var jsonData = new JSONObject { ["code"] = code, ["data"] =b }; PottingMobileServicesManger.Instance.UserUploadScore(jsonData.ToString()); }); } /** * 获取用户自己的排名 * * @param rankingid 排行榜ID */ public static void _userGetUserRank(string rankingid) { YouLoftServices._userGetUserRank(rankingid, (i, s) => { PottingMobileServicesManger.Instance.GetActivitiesWithChannel(GETJsonString(i,s)); }); } /// /// 获取活动 /// /// 渠道 /// 语言 public static void _getActivitiesWithChannel(string channel, string language) { YouLoftServices.ActivityBy(channel, language, (i, s) => { PottingMobileServicesManger.Instance.GetActivitiesWithChannel(GETJsonString(i,s)); }); } /// /// 获取公告 /// /// 渠道 /// 版本 /// 语言 public static void _getGameAnoncementsWithChannel(string channel, string version, string language) { YouLoftServices.AnnouncementBy(channel, version,language, (i, s) => { PottingMobileServicesManger.Instance.GameAnoncementsWithChannel(GETJsonString(i,s)); }); } /// /// 根据渠道兑换码兑换接口 /// /// 兑换码 /// 渠道 public static void _redeemConsume(string redeemCode, string channel) { YouLoftServices._redeemConsume(redeemCode,channel, (i, s) => { PottingMobileServicesManger.Instance.RedeemConsume(GETJsonString(i,s)); }); } /// /// 根据渠道兑换码兑换接口,需要用户登录 /// /// /// public static void _redeemUserConsume(string redeemCode, string channel,string clientId) { YouLoftServices._redeemUserConsume(redeemCode,channel, (i, s) => { PottingMobileServicesManger.Instance.RedeemUserConsume(GETJsonString(i,s)); }); } public static void _FeedBackSubmit(string msg, string connect, string docInfo) { YouLoftServices.Feedback(msg,connect,"","","", "",(i,s) => { PottingMobileServicesManger.Instance.feedBackSubmitComplected(GETJsonString(i,s)); }); } /// /// 上报关键数据 /// /// public static void _GameInfoUpload (Dictionary lable) { } /// /// 上报付费 /// public static void _PayrecordSubmit() { } public static string GETJsonString(int code,string data ) { if (code==1) { code = 200; } if (code==2) { code = 4000; } var jsonData = new JSONObject { ["code"] = code, ["data"] =data }; Debug.Log(jsonData.ToString()); return jsonData.ToString(); } /// /// 获取服务器信息 /// public static void _Serverinfo() { } }