RoomPushHandleHelper.cs 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. namespace ET.Client
  2. {
  3. public static class RoomPushHandleHelper
  4. {
  5. // 加入房间推送协程
  6. public static async ETTask JoinRoomPushTo(Scene clientScene, RoomInfo roomInfo)
  7. {
  8. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  9. if (startFightRoomComponment == null)
  10. {
  11. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  12. }
  13. startFightRoomComponment.ClearStartFightRoomInfo();
  14. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  15. EventSystem.Instance.Publish(clientScene, new EventType.JoinRoomPush());
  16. }
  17. //准备推送
  18. public static async ETTask ReadyPushTo(Scene clientScene, RoomInfo roomInfo)
  19. {
  20. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  21. if (startFightRoomComponment == null)
  22. {
  23. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  24. }
  25. startFightRoomComponment.ClearStartFightRoomInfo();
  26. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  27. EventSystem.Instance.Publish(clientScene, new EventType.ReadyPush());
  28. }
  29. // T人推送协程
  30. public static async ETTask KickPushTo(Scene clientScene, RoomInfo roomInfo)
  31. {
  32. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  33. if (startFightRoomComponment == null)
  34. {
  35. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  36. }
  37. startFightRoomComponment.ClearStartFightRoomInfo();
  38. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  39. EventSystem.Instance.Publish(clientScene, new EventType.KickPush());
  40. }
  41. //都准备好了 推送开始倒计时
  42. public static async ETTask ReadyStartPushTo(Scene clientScene, long readyStartTime)
  43. {
  44. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  45. if (startFightRoomComponment == null)
  46. {
  47. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  48. }
  49. await startFightRoomComponment.SetReadyTimeCount(readyStartTime);
  50. EventSystem.Instance.Publish(clientScene, new EventType.ReadyStartPush());
  51. }
  52. //正式开始 推送发牌
  53. public static async ETTask GameStartPushTo(Scene clientScene, RoomInfo roomInfo)
  54. {
  55. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  56. if (startFightRoomComponment == null)
  57. {
  58. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  59. }
  60. startFightRoomComponment.ClearStartFightRoomInfo();
  61. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  62. EventSystem.Instance.Publish(clientScene, new EventType.GameStartPush());
  63. }
  64. //玩家摸牌
  65. public static async ETTask GameDrawCardPushTo(Scene clientScene, RoomInfo roomInfo)
  66. {
  67. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  68. if (startFightRoomComponment == null)
  69. {
  70. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  71. }
  72. startFightRoomComponment.ClearStartFightRoomInfo();
  73. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  74. EventSystem.Instance.Publish(clientScene, new EventType.GameDrawCardPush());
  75. }
  76. //玩家出牌
  77. public static async ETTask GameDisCardPushTo(Scene clientScene, RoomInfo roomInfo)
  78. {
  79. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  80. if (startFightRoomComponment == null)
  81. {
  82. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  83. }
  84. startFightRoomComponment.ClearStartFightRoomInfo();
  85. await startFightRoomComponment.SetStartFightRoomInfoFromPush(roomInfo);
  86. EventSystem.Instance.Publish(clientScene, new EventType.GameDisCardPush());
  87. }
  88. //操作推送
  89. public static async ETTask OperationPushTo(Scene clientScene, G2C_HGHHOperationPush msg)
  90. {
  91. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  92. if (startFightRoomComponment == null)
  93. {
  94. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  95. }
  96. startFightRoomComponment.ClearStartFightRoomInfo();
  97. startFightRoomComponment.SetOperatorOpType(msg.OpType);
  98. await startFightRoomComponment.SetStartFightRoomInfoFromPush(msg.info);
  99. EventSystem.Instance.Publish(clientScene, new EventType.GameOperationPush());
  100. }
  101. //操作推送
  102. public static async ETTask HGHHSettlementPushTo(Scene clientScene, G2C_HGHHSettlementPush msg)
  103. {
  104. var startFightRoomComponment = clientScene.GetComponent<StartFightRoomComponment>();
  105. if (startFightRoomComponment == null)
  106. {
  107. startFightRoomComponment = clientScene.AddComponent<StartFightRoomComponment>();
  108. }
  109. startFightRoomComponment.ClearStartFightRoomInfo();
  110. await startFightRoomComponment.SetSettlementFromPush(msg.CurRound, msg.PlayerInfo);
  111. EventSystem.Instance.Publish(clientScene, new EventType.HGHHSettlementPush());
  112. }
  113. }
  114. }