ShopSProxy.cs 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. using System.Collections.Generic;
  2. using ET;
  3. namespace GFGGame
  4. {
  5. public class ShopSProxy
  6. {
  7. public static async ETTask<bool> ReqShopInfo()
  8. {
  9. S2C_RequestShopInfo response = null;
  10. response = (S2C_RequestShopInfo)await MessageHelper.SendToServer(new C2S_RequestShopInfo());
  11. if (response != null)
  12. {
  13. if (response.Error == ErrorCode.ERR_Success)
  14. {
  15. for (int i = 0; i < response.ks.Count; i++)
  16. {
  17. ShopDataManager.Instance.UpdateGoodsData(response.ks[i], response.vs[i]);
  18. }
  19. return true;
  20. }
  21. }
  22. return false;
  23. }
  24. public static async ETTask<bool> ReqShopBuy(int buyId, long buyCount = 1)
  25. {
  26. S2C_ShopBuy response = null;
  27. response = (S2C_ShopBuy)await MessageHelper.SendToServer(new C2S_ShopBuy() { BuyId = buyId, Times = (int)buyCount });
  28. if (response != null)
  29. {
  30. if (response.Error == ErrorCode.ERR_Success)
  31. {
  32. ShopDataManager.Instance.UpdateGoodsData(response.BuyId, response.TotalTimes);
  33. ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(response.BuyId);
  34. ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(shopCfg.itemId);
  35. if (LauncherConfig.netType == LauncherConfig.EnumNetType.LOCAL && shopCfg.costType == CostType.RMB)
  36. {
  37. PromptController.Instance.ShowFloatTextPrompt("虚拟充值成功");
  38. }
  39. List<ItemData> itemDatas;
  40. if (itemCfg.itemType == ConstItemType.USEABLE &&
  41. (itemCfg.subType == ConstItemSubType.USEABLE_AUTO))
  42. {
  43. itemDatas = ItemUtil.CreateItemDataList(itemCfg.itemsArr, response.Times * shopCfg.itemNum);
  44. }
  45. else
  46. {
  47. itemDatas = ItemUtil.CreateItemDataList(itemCfg.id, response.Times * shopCfg.itemNum);
  48. }
  49. EventAgent.DispatchEvent(ConstMessage.CONTINUOUS_REBATE_GIFT_SHOP_BUY, shopCfg);
  50. BonusController.TryShowBonusList(itemDatas);
  51. EventAgent.DispatchEvent(ConstMessage.SHOP_BUY);
  52. EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
  53. return true;
  54. }
  55. }
  56. return false;
  57. }
  58. /**********************************************会员中心**********************************************/
  59. //领取VIP等级礼包
  60. public static async ETTask<bool> ReqGetVipGiftBag(int vipLv)
  61. {
  62. S2C_GetVipLevelGift response = null;
  63. response = (S2C_GetVipLevelGift)await MessageHelper.SendToServer(new C2S_GetVipLevelGift() { VipLevel = vipLv });
  64. if (response != null)
  65. {
  66. if (response.Error == ErrorCode.ERR_Success)
  67. {
  68. int[][] bonus = VipCfgArray.Instance.GetCfg(vipLv - 1).bonusOnceArr;
  69. BonusController.TryShowBonusList(bonus);
  70. return true;
  71. }
  72. }
  73. return false;
  74. }
  75. //领取VIP周礼包
  76. public static async ETTask<bool> ReqGetVipWeekGiftBag(int vipLv)
  77. {
  78. S2C_GetVipWeekGift response = null;
  79. response = (S2C_GetVipWeekGift)await MessageHelper.SendToServer(new C2S_GetVipWeekGift() { VipLevel = vipLv });
  80. if (response != null)
  81. {
  82. if (response.Error == ErrorCode.ERR_Success)
  83. {
  84. int[][] bonus = VipCfgArray.Instance.GetCfg(vipLv).bonusWeekArr;
  85. BonusController.TryShowBonusList(bonus);
  86. return true;
  87. }
  88. }
  89. return false;
  90. }
  91. /*********************************************************月卡***************************************************/
  92. //领取每日返还珍珠
  93. public static async ETTask<bool> ReqGetMonthCardReward(int monthCardType)
  94. {
  95. S2C_GetMonthCardReward response = null;
  96. response = (S2C_GetMonthCardReward)await MessageHelper.SendToServer(new C2S_GetMonthCardReward() { MonthCardType = monthCardType });
  97. if (response != null)
  98. {
  99. if (response.Error == ErrorCode.ERR_Success)
  100. {
  101. EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
  102. return true;
  103. }
  104. }
  105. return false;
  106. }
  107. //领取专属单品
  108. public static async ETTask<bool> ReqGetMonthCardItem(int month)
  109. {
  110. S2C_GetMonthCardItem response = null;
  111. response = (S2C_GetMonthCardItem)await MessageHelper.SendToServer(new C2S_GetMonthCardItem());
  112. if (response != null)
  113. {
  114. if (response.Error == ErrorCode.ERR_Success)
  115. {
  116. MonthlyCardClothesCfg clothesCfg = MonthlyCardClothesCfgArray.Instance.GetCfgByyearAndmonth(TimeUtil.GetCurYear(), month);
  117. List<ItemData> itemDatas = ItemUtil.CreateItemDataList(clothesCfg.clothesArr[0], clothesCfg.clothesArr[1]);
  118. BonusController.TryShowBonusList(itemDatas);
  119. return true;
  120. }
  121. }
  122. return false;
  123. }
  124. }
  125. }