ShowTextWidget.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using Common.Utility.CombatTimer;
  2. using Fort23.Core;
  3. using Fort23.UTool;
  4. using GameLogic.Combat.CombatTool;
  5. using UnityEngine;
  6. namespace Fort23.Mono
  7. {
  8. [UIBinding(prefab = "ShowTextWidget")]
  9. public partial class ShowTextWidget : UIComponent
  10. {
  11. private void Init()
  12. {
  13. }
  14. public override void AddEvent()
  15. {
  16. }
  17. public override void DelEvent()
  18. {
  19. }
  20. public override void AddButtonEvent()
  21. {
  22. }
  23. public void ShowUI(HarmReturnInfo harmReturnInfo, bool isHarm)
  24. {
  25. Vector3 worldPos = harmReturnInfo.target.combatHeroEntity.combatHeroGameObject.hpTransform.position;
  26. Vector3 p = UIManager.Instance.CurrCustomCameraStack.camera.WorldToScreenPoint(worldPos);
  27. Vector3 p2 = UIManager.Instance.UICamera.ScreenToWorldPoint(p);
  28. transform.position = p2;
  29. if (isHarm)
  30. {
  31. text.font = CombatShowTextPanel.shangHai;
  32. }
  33. else
  34. {
  35. text.font = CombatShowTextPanel.huiFuFont;
  36. }
  37. text.text = harmReturnInfo.att.ToString();
  38. CombatTimerManager.Instance.AddTimer(1, delegate
  39. {
  40. GObjectPool.Instance.Recycle(this);
  41. });
  42. }
  43. }
  44. }