MagicWeaponAttState.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Common.Utility.CombatEvent;
  2. using Core.Utility;
  3. using Fort23.Core;
  4. using UnityEngine;
  5. namespace GameLogic.Combat.Hero.State
  6. {
  7. public class MagicWeaponAttState : CombatHeroStateBasic
  8. {
  9. private CombatMagicWeaponEntity myCombatMagicWeaponEntity;
  10. private BesselPath _besselPath;
  11. public MagicWeaponAttState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
  12. {
  13. myCombatMagicWeaponEntity = combatHeroEntity as CombatMagicWeaponEntity;
  14. }
  15. /// <summary>
  16. /// 开始攻击
  17. /// </summary>
  18. protected override void ProEnter()
  19. {
  20. _besselPath = CObjectPool.Instance.Fetch<BesselPath>();
  21. myCombatMagicWeaponEntity.GameObject.transform.eulerAngles = Vector3.zero;
  22. Vector3 p1 = myCombatMagicWeaponEntity.GameObject.transform.TransformVector(new Vector3(-1.5f, 1.7f, 1));
  23. HeroDieEventData heroDieEventData = HeroDieEventData.Create();
  24. heroDieEventData.combatHeroEntity = myCombatMagicWeaponEntity;
  25. CombatEventManager.Instance.Dispatch(CombatEventType.MagicWeaponDie,
  26. heroDieEventData);
  27. myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.XiuMian);
  28. }
  29. private void SetTargetPos()
  30. {
  31. }
  32. protected override void ProExit()
  33. {
  34. CObjectPool.Instance.Recycle(_besselPath);
  35. }
  36. }
  37. }