CombatShowTextPanel.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Common.Utility.CombatEvent;
  2. using Fort23.Core;
  3. using GameLogic.Combat.CombatTool;
  4. namespace Fort23.Mono
  5. {
  6. [UIBinding(prefab = "CombatShowTextPanel")]
  7. public partial class CombatShowTextPanel : UIPanel
  8. {
  9. public static async CTask OpenCombatShowTextPanel()
  10. {
  11. await UIManager.Instance.LoadAndOpenPanel<CombatShowTextPanel>(null);
  12. }
  13. private void Init()
  14. {
  15. }
  16. protected override void AddEvent()
  17. {
  18. CombatEventManager.Instance.AddEventListener(CombatEventType.HarmUpdate, HarmUpdate);
  19. }
  20. protected override void DelEvent()
  21. {
  22. CombatEventManager.Instance.RemoveEventListener(CombatEventType.HarmUpdate, HarmUpdate);
  23. }
  24. public override void AddButtonEvent()
  25. {
  26. }
  27. private async void HarmUpdate(IEventData iEventData)
  28. {
  29. HarmUpdateEventData harmUpdateEventData = iEventData as HarmUpdateEventData;
  30. HarmReturnInfo harmReturnInfo = harmUpdateEventData.HarmReturnInfo;
  31. ShowTextWidget widget =
  32. await UIManager.Instance.CreateGComponentForObject<ShowTextWidget>(ShowTextWidget, null, transform,
  33. isInstance: true);
  34. widget.ShowUI(harmReturnInfo);
  35. }
  36. }
  37. }