OnlineGiftHandler.cs 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /*-----------------------------------------------
  2. *本文件由代码生成器自动生成,
  3. *千万不要修改本文件的任何代码,
  4. *修改的的任何代码都会被覆盖掉!
  5. --------------------------------------------------*/
  6. using System.IO;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Text;
  11. using Pomelo.DotNetClient;
  12. namespace pomelo.area
  13. {
  14. public class OnlineGiftHandler
  15. {
  16. private PomeloClient _socket;
  17. public GetGiftInfoResponse lastGetGiftInfoResponse { get { return _socket.GetLastResponse<GetGiftInfoResponse>(); } }
  18. public GetOnlineTimeResponse lastGetOnlineTimeResponse { get { return _socket.GetLastResponse<GetOnlineTimeResponse>(); } }
  19. public ReceiveGiftResponse lastReceiveGiftResponse { get { return _socket.GetLastResponse<ReceiveGiftResponse>(); } }
  20. static OnlineGiftHandler()
  21. {
  22. EventTypes.RegistPushType("area.onlineGiftPush.giftInfoPush", typeof(GiftInfoPush));
  23. EventTypes.RegistRequestType("area.onlineGiftHandler.getGiftInfoRequest", typeof(GetGiftInfoRequest), typeof(GetGiftInfoResponse));
  24. EventTypes.RegistRequestType("area.onlineGiftHandler.getOnlineTimeRequest", typeof(GetOnlineTimeRequest), typeof(GetOnlineTimeResponse));
  25. EventTypes.RegistRequestType("area.onlineGiftHandler.receiveGiftRequest", typeof(ReceiveGiftRequest), typeof(ReceiveGiftResponse));
  26. }
  27. public OnlineGiftHandler(PomeloClient socket)
  28. {
  29. this._socket = socket;
  30. }
  31. public void getGiftInfoRequest(Action<PomeloException,GetGiftInfoResponse> cb,object option = null)
  32. {
  33. var request = new GetGiftInfoRequest();
  34. _socket.request<GetGiftInfoResponse>(request, (object msg, out int s2c_code, out string s2c_msg) => {
  35. var rsp = msg as GetGiftInfoResponse;
  36. s2c_code = rsp.s2c_code;
  37. s2c_msg = rsp.s2c_msg;
  38. return s2c_code == 200;
  39. }, cb, option);
  40. }
  41. public void getOnlineTimeRequest(Action<PomeloException,GetOnlineTimeResponse> cb,object option = null)
  42. {
  43. var request = new GetOnlineTimeRequest();
  44. _socket.request<GetOnlineTimeResponse>(request, (object msg, out int s2c_code, out string s2c_msg) => {
  45. var rsp = msg as GetOnlineTimeResponse;
  46. s2c_code = rsp.s2c_code;
  47. s2c_msg = rsp.s2c_msg;
  48. return s2c_code == 200;
  49. }, cb, option);
  50. }
  51. public void receiveGiftRequest(int c2s_id,Action<PomeloException,ReceiveGiftResponse> cb,object option = null)
  52. {
  53. var request = new ReceiveGiftRequest();
  54. request.c2s_id= c2s_id;
  55. _socket.request<ReceiveGiftResponse>(request, (object msg, out int s2c_code, out string s2c_msg) => {
  56. var rsp = msg as ReceiveGiftResponse;
  57. s2c_code = rsp.s2c_code;
  58. s2c_msg = rsp.s2c_msg;
  59. return s2c_code == 200;
  60. }, cb, option);
  61. }
  62. public void onGiftInfoPush(Action<GiftInfoPush> cb)
  63. {
  64. _socket.listen_once<GiftInfoPush>(cb);
  65. }
  66. }
  67. }