PayProxy.lua 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. local RemoteProxy = requireProxy("remote/RemoteProxy")
  2. local PayProxy = class("PayProxy", RemoteProxy)
  3. PayProxy.NAME = global.ProxyTable.PayProxy
  4. function PayProxy:ctor()
  5. PayProxy.super.ctor(self)
  6. end
  7. -- 获得道具数量 统一接口
  8. function PayProxy:GetItemCount(itemID, bOneID)
  9. if bOneID then
  10. return GetItemDataNumber(itemID, { realbool = true })
  11. end
  12. return GetItemDataNumber(itemID)
  13. end
  14. -- 检查道具是否符合条件
  15. function PayProxy:CheckItemCount(itemID, itemNum, bOneID, speicalYuanBao)
  16. local MoneyProxy = global.Facade:retrieveProxy(global.ProxyTable.MoneyProxy)
  17. local typeConfig = MoneyProxy:GetMoneyType()
  18. local myCount = 0
  19. if speicalYuanBao and (itemID == typeConfig.YuanBao or itemID == typeConfig.BindYuanBao) then
  20. myCount = self:GetItemCount(typeConfig.YuanBao, bOneID) + self:GetItemCount(typeConfig.BindYuanBao, bOneID)
  21. else
  22. myCount = self:GetItemCount(itemID, bOneID)
  23. end
  24. return myCount >= itemNum
  25. end
  26. -- 检查道具是否符合条件 带提示
  27. function PayProxy:CheckItemCountEX(data)
  28. if not data.itemID and not data.itemNum then
  29. return false
  30. end
  31. if not self:CheckItemCount(data.itemID, data.itemNum, data.bOneID, data.speicalYuanBao) then
  32. if not data.noTips then
  33. local ItemConfigProxy = global.Facade:retrieveProxy( global.ProxyTable.ItemConfigProxy )
  34. global.Facade:sendNotification(global.NoticeTable.SystemTips, string.format(GET_STRING(260100), ItemConfigProxy:GetItemNameByIndex(data.itemID)))
  35. end
  36. return false
  37. end
  38. return true
  39. end
  40. return PayProxy