using Core.State; using Fort23.Core; using Fort23.UTool; using GameLogic.Combat.CombatTool; using UnityEngine; namespace GameLogic.Combat.Hero.State { public class MagicWeaponPingDouState : CombatHeroStateBasic { public class MagicWeaponPingDouData : CObject, IStateEnterData { public CombatMagicWeaponEntity target; public override void ActiveObj() { } public override void DormancyObj() { } } private CombatMagicWeaponEntity myCombatMagicWeaponEntity; private Vector3 startPos; private Vector3 endPos; private float _addTime; private float _currTime; private MagicWeaponPingDouData _magicWeaponPingDouData; private ParticleSystemPool _particleSystemPool1; private ParticleSystemPool _particleSystemPool2; public MagicWeaponPingDouState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity) { myCombatMagicWeaponEntity = combatHeroEntity as CombatMagicWeaponEntity; } protected override void ProEnter() { CombatController.currActiveCombat.GameTimeLineParticleFactory.CreateParticle("fx_对拼气罩_loop", myCombatMagicWeaponEntity.dotPos, null, false, null, delegate(ParticleSystemPool particleSystemPool) { particleSystemPool.transform.rotation = myCombatMagicWeaponEntity.GameObject.transform.rotation; _particleSystemPool1= particleSystemPool; }); CombatController.currActiveCombat.GameTimeLineParticleFactory.CreateParticle("fx_对拼点", myCombatMagicWeaponEntity.dotPos, null, false, null, delegate(ParticleSystemPool particleSystemPool) { particleSystemPool.transform.rotation = myCombatMagicWeaponEntity.GameObject.transform.rotation; _particleSystemPool2= particleSystemPool; }); } protected override void ProUpdate(float t) { } protected override void ProExit() { GObjectPool.Instance.Recycle(_particleSystemPool1); GObjectPool.Instance.Recycle(_particleSystemPool2); _particleSystemPool1 = null; _particleSystemPool2 = null; } public override bool IsUpdateLockTarget() { return false; } protected override void ProDispose() { } } }