|
|
@@ -1,39 +1,69 @@
|
|
|
using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
|
|
|
+using Fort23.UTool;
|
|
|
+using UnityEngine;
|
|
|
|
|
|
namespace GameLogic.Combat.Hero.State
|
|
|
{
|
|
|
public class CombatHeroActiveState : CombatHeroStateBasic
|
|
|
{
|
|
|
+ private Vector3 stratPos;
|
|
|
+ private Vector3 endpos;
|
|
|
+ private float currTime;
|
|
|
+ private ParticleSystemPool loopFx;
|
|
|
+
|
|
|
public CombatHeroActiveState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
|
|
|
{
|
|
|
}
|
|
|
+
|
|
|
public override bool IsUpdateLockTarget()
|
|
|
{
|
|
|
return false;
|
|
|
}
|
|
|
+
|
|
|
protected override void ProEnter()
|
|
|
{
|
|
|
- combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
- // TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
|
|
|
- // combatHeroEntity.combatHeroTimeLineControl.TimeLineData
|
|
|
- // .GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>("jihuo", null);
|
|
|
- // if (timeLineEventLogicGroup != null)
|
|
|
- // {
|
|
|
- // timeLineEventLogicGroup.SetCombatInfo(combatHeroEntity, null, null, new TriggerData(), null);
|
|
|
- // timeLineEventLogicGroup.TimeLineUpdateEnd = delegate
|
|
|
- // {
|
|
|
- // // combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
- // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
|
|
|
- // combatHeroEntity.CombatAIBasic.isAlert = false;
|
|
|
- // };
|
|
|
- // combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup(timeLineEventLogicGroup);
|
|
|
- // }
|
|
|
- // else
|
|
|
- // {
|
|
|
- // // combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
- // combatHeroEntity.CombatAIBasic.isAlert = false;
|
|
|
- // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
|
|
|
- // }
|
|
|
+ stratPos = combatHeroEntity.dotPos;
|
|
|
+ currTime = 0;
|
|
|
+ // endpos
|
|
|
+ GObjectPool.Instance.FetchAsync<ParticleSystemPool>("fx_gw_dunguang_loop.prefab",
|
|
|
+ delegate(ParticleSystemPool obj)
|
|
|
+ {
|
|
|
+ loopFx = obj;
|
|
|
+ obj.own.transform.position = stratPos;
|
|
|
+ });
|
|
|
+ // combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
+ // // TimeLineEventLogicGroupBasic timeLineEventLogicGroup =
|
|
|
+ // // combatHeroEntity.combatHeroTimeLineControl.TimeLineData
|
|
|
+ // // .GetTimeLineEventLogicGroup<TimeLineEventLogicGroupBasic>("jihuo", null);
|
|
|
+ // // if (timeLineEventLogicGroup != null)
|
|
|
+ // // {
|
|
|
+ // // timeLineEventLogicGroup.SetCombatInfo(combatHeroEntity, null, null, new TriggerData(), null);
|
|
|
+ // // timeLineEventLogicGroup.TimeLineUpdateEnd = delegate
|
|
|
+ // // {
|
|
|
+ // // // combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
+ // // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
|
|
|
+ // // combatHeroEntity.CombatAIBasic.isAlert = false;
|
|
|
+ // // };
|
|
|
+ // // combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup(timeLineEventLogicGroup);
|
|
|
+ // // }
|
|
|
+ // // else
|
|
|
+ // // {
|
|
|
+ // // // combatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(true).IsHide = false;
|
|
|
+ // // combatHeroEntity.CombatAIBasic.isAlert = false;
|
|
|
+ // // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
|
|
|
+ // // }
|
|
|
+ }
|
|
|
+
|
|
|
+ protected override void ProUpdate(float t)
|
|
|
+ {
|
|
|
+ currTime += t;
|
|
|
+ if (currTime > 2)
|
|
|
+ {
|
|
|
+ GObjectPool.Instance.FetchAsync<ParticleSystemPool>("fx_gw_dunguang_show.prefab",
|
|
|
+ delegate(ParticleSystemPool obj) { obj.own.transform.position = stratPos; });
|
|
|
+ GObjectPool.Instance.Recycle(loopFx);
|
|
|
+ combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|