MagicWeaponIdleState.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
  2. using Common.Utility.CombatEvent;
  3. using Fort23.Core;
  4. using GameLogic.Combat.CombatTool;
  5. using GameLogic.Combat.Hero.State;
  6. using UnityEngine;
  7. namespace GameLogic.Combat.Hero
  8. {
  9. public class MagicWeaponIdleState : CombatHeroStateBasic
  10. {
  11. private CombatMagicWeaponEntity myCombatMagicWeaponEntity;
  12. private Vector3 startPos;
  13. private Vector3 endPos;
  14. private float _addTime;
  15. private float _currTime;
  16. private float _awaitTime;
  17. public MagicWeaponIdleState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
  18. {
  19. myCombatMagicWeaponEntity = combatHeroEntity as CombatMagicWeaponEntity;
  20. }
  21. protected override void ProEnter()
  22. {
  23. TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
  24. combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("run");
  25. _awaitTime = 1.0f;
  26. }
  27. protected override void ProUpdate(float t)
  28. {
  29. if (myCombatMagicWeaponEntity.MagicWeaponCollisionId >= 0)
  30. {
  31. MagicWeaponCollisionInfo nMagicWeaponCollisionInfo =
  32. CombatController.currActiveCombat.MagicWeaponCombatSence.FindMagicWeaponCollisionInfo(
  33. myCombatMagicWeaponEntity.MagicWeaponCollisionId);
  34. if (nMagicWeaponCollisionInfo == null)
  35. {
  36. return;
  37. }
  38. if (!nMagicWeaponCollisionInfo.a.isCombatState || !nMagicWeaponCollisionInfo.b.isCombatState)
  39. {
  40. // Quaternion newQuaternion = Quaternion.identity;
  41. //
  42. // myCombatMagicWeaponEntity.GameObject.transform.rotation = Quaternion.RotateTowards(
  43. // myCombatMagicWeaponEntity.GameObject.transform.rotation,
  44. // newQuaternion, 5);
  45. }
  46. // else
  47. // {
  48. // myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.move);
  49. // }
  50. return;
  51. }
  52. else
  53. {
  54. myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.att);
  55. }
  56. }
  57. protected override void ProExit()
  58. {
  59. }
  60. public override bool IsUpdateLockTarget()
  61. {
  62. return false;
  63. }
  64. protected override void ProDispose()
  65. {
  66. }
  67. }
  68. }