MagicWeaponIdleState.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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.a.isCombatState || !nMagicWeaponCollisionInfo.b.isCombatState)
  35. {
  36. // Quaternion newQuaternion = Quaternion.identity;
  37. //
  38. // myCombatMagicWeaponEntity.GameObject.transform.rotation = Quaternion.RotateTowards(
  39. // myCombatMagicWeaponEntity.GameObject.transform.rotation,
  40. // newQuaternion, 5);
  41. }
  42. // else
  43. // {
  44. // myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.move);
  45. // }
  46. return;
  47. }
  48. else
  49. {
  50. myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.att);
  51. }
  52. }
  53. protected override void ProExit()
  54. {
  55. }
  56. public override bool IsUpdateLockTarget()
  57. {
  58. return false;
  59. }
  60. protected override void ProDispose()
  61. {
  62. }
  63. }
  64. }