CombatShowTextPanel.cs 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using Common.Utility.CombatEvent;
  2. using Fort23.Core;
  3. using GameLogic.Combat.CombatTool;
  4. using UnityEngine;
  5. using Utility;
  6. namespace Fort23.Mono
  7. {
  8. [UIBinding(prefab = "CombatShowTextPanel")]
  9. public partial class CombatShowTextPanel : UIPanel
  10. {
  11. // public static Font huiFuFont;
  12. // public static Font shangHai;
  13. public static void OpenCombatShowTextPanel(CTaskAwaitBuffer cTaskAwaitBuffer)
  14. {
  15. cTaskAwaitBuffer.AddTask(UIManager.Instance.LoadAndOpenPanel<CombatShowTextPanel>(null,UILayer.Middle));
  16. // cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<Font>("hd_0.fontsettings",
  17. // delegate(AssetHandle handle) { huiFuFont = handle.AssetObject<Font>(); }));
  18. //
  19. // cTaskAwaitBuffer.AddTask(AssetBundleLoadManager.Instance.LoadAssetAsyncTask<Font>("Zhanli_0.fontsettings",
  20. // delegate(AssetHandle handle) { shangHai = handle.AssetObject<Font>(); }));
  21. }
  22. private void Init()
  23. {
  24. }
  25. protected override void AddEvent()
  26. {
  27. CombatEventManager.Instance.AddEventListener(CombatEventType.HarmUpdate, HarmUpdate);
  28. CombatEventManager.Instance.AddEventListener(CombatEventType.RecoverUpdate, RecoverUpdate);
  29. }
  30. protected override void DelEvent()
  31. {
  32. CombatEventManager.Instance.RemoveEventListener(CombatEventType.HarmUpdate, HarmUpdate);
  33. CombatEventManager.Instance.AddEventListener(CombatEventType.RecoverUpdate, RecoverUpdate);
  34. }
  35. public override void AddButtonEvent()
  36. {
  37. }
  38. private async void RecoverUpdate(IEventData iEventData)
  39. {
  40. HarmUpdateEventData harmUpdateEventData = iEventData as HarmUpdateEventData;
  41. HarmReturnInfo harmReturnInfo = harmUpdateEventData.HarmReturnInfo;
  42. ShowTextWidget widget =
  43. await UIManager.Instance.CreateGComponentForObject<ShowTextWidget>(ShowTextWidget, null, transform,
  44. isInstance: true);
  45. widget.ShowUI(harmReturnInfo,false);
  46. }
  47. private async void HarmUpdate(IEventData iEventData)
  48. {
  49. HarmUpdateEventData harmUpdateEventData = iEventData as HarmUpdateEventData;
  50. HarmReturnInfo harmReturnInfo = harmUpdateEventData.HarmReturnInfo;
  51. ShowTextWidget widget =
  52. await UIManager.Instance.CreateGComponentForObject<ShowTextWidget>(ShowTextWidget, null, transform,
  53. isInstance: true);
  54. widget.ShowUI(harmReturnInfo,true);
  55. }
  56. }
  57. }