DuiPingWidget.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using Common.Utility.CombatEvent;
  2. using GameLogic.Combat.Hero;
  3. using UnityEngine;
  4. namespace Fort23.Mono
  5. {
  6. [UIBinding(prefab = "DuiPingWidget")]
  7. public partial class DuiPingWidget : UIComponent
  8. {
  9. public CombatMagicWeaponEntity combatMagicWeaponEntity;
  10. private RectTransform rectTransform;
  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. rectTransform = icon.GetComponent<RectTransform>();
  23. rectTransform.sizeDelta = new Vector2(100, 9);
  24. }
  25. public void ShowWidget(CombatMagicWeaponEntity combatMagicWeaponEntity)
  26. {
  27. this.combatMagicWeaponEntity = combatMagicWeaponEntity;
  28. Vector3 offPos = new Vector3(0, 0);
  29. if (this.combatMagicWeaponEntity.IsEnemy)
  30. {
  31. offPos = new Vector3(0, 2);
  32. }
  33. else
  34. {
  35. offPos = new Vector3(0, -2);
  36. }
  37. Vector3 worldPos = combatMagicWeaponEntity.GameObject.transform.position + offPos;
  38. Vector3 p = UIManager.Instance.CurrCustomCameraStack.camera.WorldToScreenPoint(worldPos);
  39. Vector3 p2 = UIManager.Instance.UICamera.ScreenToWorldPoint(p);
  40. transform.position = p2;
  41. }
  42. public void UpdateHp()
  43. {
  44. float bl = combatMagicWeaponEntity.HpBl / combatMagicWeaponEntity.MaxHp;
  45. rectTransform.sizeDelta = new Vector2(100 * bl, 9);
  46. }
  47. }
  48. }