MagicSkillBasic.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
  2. using GameLogic.Combat.Hero;
  3. using UnityEngine;
  4. namespace GameLogic.Combat.Skill.MagicSkill
  5. {
  6. public class MagicSkillBasic : SkillBasic
  7. {
  8. protected MagicAttShowBasic magicAttShowBasic;
  9. protected CombatMagicWeaponEntity CombatMagicWeaponEntity
  10. {
  11. get { return CombatHeroEntity as CombatMagicWeaponEntity; }
  12. }
  13. protected override void ProUseSkill()
  14. {
  15. _finishTimeLineGroupName = "-1";
  16. ProMagicUseSkill();
  17. }
  18. public MagicAttShowBasic InitMagicAttShowBasic(CombatHeroEntity target, System.Action finishCallBack)
  19. {
  20. MagicAttShowBasic magicAttShowBasic = null;
  21. TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic =
  22. CombatHeroEntity.combatHeroTimeLineControl.GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>(
  23. "sk1_xiaoshi");
  24. if (timeLineEventLogicGroupBasic != null)
  25. {
  26. XiaoShiAndShow xiaoShiAndShow = new XiaoShiAndShow();
  27. xiaoShiAndShow.Init(this);
  28. magicAttShowBasic = xiaoShiAndShow;
  29. }
  30. else
  31. {
  32. StraightLineShow straightLineShow = new StraightLineShow();
  33. straightLineShow.Init(this);
  34. magicAttShowBasic = straightLineShow;
  35. }
  36. magicAttShowBasic.SetInfo(target, finishCallBack);
  37. return magicAttShowBasic;
  38. }
  39. public XiaoShiAndShowForTargetPosShow InitXiaoShiAndShow(Vector3 target, System.Action finishCallBack)
  40. {
  41. XiaoShiAndShowForTargetPosShow xiaoShiAndShow = new XiaoShiAndShowForTargetPosShow();
  42. xiaoShiAndShow.Init(this);
  43. xiaoShiAndShow.SetInfo(null, finishCallBack);
  44. xiaoShiAndShow.SetTargetPos(target);
  45. return xiaoShiAndShow;
  46. }
  47. public MoveToTargetPosShow InitMoveToTargetPosShow(Vector3 targetPos, System.Action finishCallBack)
  48. {
  49. MoveToTargetPosShow moveToTargetPosShow = new MoveToTargetPosShow();
  50. moveToTargetPosShow.Init(this);
  51. moveToTargetPosShow.SetInfo(null, finishCallBack);
  52. moveToTargetPosShow.SetTargetPos(targetPos);
  53. return moveToTargetPosShow;
  54. }
  55. protected virtual void ProMagicUseSkill()
  56. {
  57. }
  58. protected void SetMagicAttShowBasic(MagicAttShowBasic magicAttShowBasic)
  59. {
  60. this.magicAttShowBasic = magicAttShowBasic;
  61. }
  62. protected override void ProCombatUpdate(float time)
  63. {
  64. if (magicAttShowBasic != null)
  65. {
  66. magicAttShowBasic.Update(time);
  67. }
  68. MagicSkillUpdate(time);
  69. }
  70. protected virtual void MagicSkillUpdate(float time)
  71. {
  72. }
  73. }
  74. }