CombatHeroDieState.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
  2. using GameLogic.Combat.CombatTool;
  3. namespace GameLogic.Combat.Hero.State
  4. {
  5. public class CombatHeroDieState : CombatHeroStateBasic
  6. {
  7. public CombatHeroDieState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
  8. {
  9. }
  10. protected override void ProEnter()
  11. {
  12. TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
  13. combatHeroEntity.combatHeroTimeLineControl.TimeLineData
  14. .GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>("die", null);
  15. if (timeLineEventLogicGroup != null)
  16. {
  17. timeLineEventLogicGroup.SetCombatInfo(combatHeroEntity, null, null, new TriggerData(), null);
  18. timeLineEventLogicGroup.TimeLineUpdateEnd = delegate
  19. {
  20. CombatController.currActiveCombat.CombatHeroController.RemoveDieHero(combatHeroEntity);
  21. };
  22. combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup(timeLineEventLogicGroup);
  23. }
  24. else
  25. {
  26. CombatController.currActiveCombat.CombatHeroController.RemoveDieHero(combatHeroEntity);
  27. }
  28. // combatHeroEntity.Dispose();
  29. }
  30. }
  31. }