MagicWeaponWidget.cs 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. using Core.Language;
  2. using Excel2Json;
  3. using GameLogic.Combat.Buff;
  4. using GameLogic.Combat.CombatTool;
  5. using GameLogic.Combat.Hero;
  6. namespace Fort23.Mono
  7. {
  8. [UIBinding(prefab = "MagicWeaponWidget")]
  9. public partial class MagicWeaponWidget : UIComponent
  10. {
  11. private CombatMagicWeaponEntity combatMagicWeaponEntity;
  12. private void Init()
  13. {
  14. }
  15. public override void AddEvent()
  16. {
  17. StaticUpdater.Instance.AddLateUpdateCallBack(Update);
  18. }
  19. public override void DelEvent()
  20. {
  21. StaticUpdater.Instance.RemoveLateUpdateCallBack(Update);
  22. }
  23. public override void AddButtonEvent()
  24. {
  25. myButton.onClick.AddListener(() =>
  26. {
  27. if (combatMagicWeaponEntity.IsEnemy)
  28. {
  29. // SkillConfig skillConfig = SkillBasic.SelfSkillConfig;
  30. CombatController.currActiveCombat.isUpdate = false;
  31. SkillMassgePanel.OpenSkillSelectPanel(
  32. LanguageManager.Instance.Text(combatMagicWeaponEntity.FaBaoInfo.FabaoConfig.name),
  33. LanguageManager.Instance.Text(combatMagicWeaponEntity.FaBaoInfo.FabaoConfig.model),
  34. delegate() { CombatController.currActiveCombat.isUpdate = true; });
  35. return;
  36. }
  37. if (combatMagicWeaponEntity == null || !combatMagicWeaponEntity.IsCanUse())
  38. {
  39. return;
  40. }
  41. b_1008 b1008 = combatMagicWeaponEntity.BuffControl.GetBuffBasicForType<b_1008>();
  42. if (b1008 != null)
  43. {
  44. return;
  45. }
  46. combatMagicWeaponEntity.UseMagicWeapon();
  47. });
  48. }
  49. public void InitWidget(CombatMagicWeaponEntity combatMagicWeaponEntity)
  50. {
  51. this.combatMagicWeaponEntity = combatMagicWeaponEntity;
  52. }
  53. private void Update()
  54. {
  55. if (combatMagicWeaponEntity == null)
  56. {
  57. return;
  58. }
  59. float d = (combatMagicWeaponEntity.cd+combatMagicWeaponEntity.RootMagicWeaponControl.globalMagicWeaponCd) / (combatMagicWeaponEntity.MaxCd);
  60. cd.fillAmount = 1 - d;
  61. }
  62. }
  63. }