| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 | 
							- using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
 
- using Common.Utility.CombatEvent;
 
- using Core.Audio;
 
- using GameLogic.Combat.CombatTool;
 
- using GameLogic.Combat.Skill;
 
- using UnityEngine;
 
- using Utility.CTween;
 
- namespace GameLogic.Combat.Hero.State
 
- {
 
-     public class MagicWeaponChuChangState : CombatHeroStateBasic
 
-     {
 
-         private CombatMagicWeaponEntity myCombatMagicWeaponEntity;
 
-         private Vector3 startPos;
 
-         private Vector3 endPos;
 
-         private float _addTime;
 
-         private float _currTime;
 
-         private TimeLineEventLogicGroupBasic timeLineEventLogicGroup;
 
-         private bool isUpdate;
 
-         private int[] xOff = new int[] { 0, 1, -1, 2, -2 };
 
-         public MagicWeaponChuChangState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
 
-         {
 
-             myCombatMagicWeaponEntity = combatHeroEntity as CombatMagicWeaponEntity;
 
-         }
 
-         protected override void ProEnter()
 
-         {
 
-             myCombatMagicWeaponEntity.CloseLoopFx();
 
-             myCombatMagicWeaponEntity.GameObject.transform.eulerAngles = Vector3.zero;
 
-             myCombatMagicWeaponEntity.GameObject.transform.localScale = Vector3.one;
 
-             myCombatMagicWeaponEntity.GameObject.transform.rotation = myCombatMagicWeaponEntity.RootMagicWeaponControl
 
-                 .combatHeroEntity.GameObject.transform.rotation;
 
-             myCombatMagicWeaponEntity.GameObject.SetActive(true);
 
-             startPos = myCombatMagicWeaponEntity.RootMagicWeaponControl.combatHeroEntity.dotPos;
 
-             float y = myCombatMagicWeaponEntity.IsEnemy ? 5 : 5;
 
-             float x = xOff[myCombatMagicWeaponEntity.useIndex % xOff.Length];
 
-             if (myCombatMagicWeaponEntity.CustomizeShowTarget != null)
 
-             {
 
-                 endPos = myCombatMagicWeaponEntity.CustomizeShowTarget();
 
-             }
 
-             else
 
-             {
 
-                 endPos = myCombatMagicWeaponEntity.RootMagicWeaponControl.combatHeroEntity.GameObject.transform
 
-                     .TransformPoint(
 
-                         new Vector3(x, y, 0));
 
-             }
 
-             // endPos = startPos +  Vector3(x-3, y, 0);
 
-             _addTime = 1.0f / (Vector3.Distance(startPos, endPos) /
 
-                                CustomTweenManager.AnimationCurveLibrary.fabaoMoveTopSpeed);
 
-             isUpdate = true;
 
-             if (myCombatMagicWeaponEntity.isMagicWeaponTreasureBook)
 
-             {
 
-                 _currTime = 1;
 
-             }
 
-             else
 
-             {
 
-                 AudioManager.Instance.Play("fabaochuxian.wav",false);
 
-                 _currTime = 0;
 
-                 combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("jihuo");
 
-             }
 
-         }
 
-         protected override void ProUpdate(float t)
 
-         {
 
-             if (!isUpdate)
 
-             {
 
-                 return;
 
-             }
 
-             _currTime += t * _addTime;
 
-             Vector3 pos = Vector3.Lerp(startPos, endPos, _currTime);
 
-             myCombatMagicWeaponEntity.combatHeroGameObject.SetPosition(pos);
 
-             if (_currTime >= 1)
 
-             {
 
-                 isUpdate = false;
 
-                 if (timeLineEventLogicGroup != null)
 
-                 {
 
-                     timeLineEventLogicGroup.CloseLoopFx();
 
-                 }
 
-                 UseMagicWeaponEventData useMagicWeaponEventData = UseMagicWeaponEventData.Create();
 
-                 useMagicWeaponEventData.combatHeroEntity =
 
-                     myCombatMagicWeaponEntity.RootMagicWeaponControl.combatHeroEntity;
 
-                 useMagicWeaponEventData.combatMagicWeaponEntity = myCombatMagicWeaponEntity;
 
-                 CombatEventManager.Instance.Dispatch(CombatEventType.ShowUseMagicWeaponName, useMagicWeaponEventData);
 
-                 // myCombatMagicWeaponEntity.GameObject.SetActive(true);
 
-                 timeLineEventLogicGroup =
 
-                     combatHeroEntity.combatHeroTimeLineControl.AddEventLogicGroup("show");
 
-                 if (timeLineEventLogicGroup != null)
 
-                 {
 
-                     timeLineEventLogicGroup.TimeLineUpdateEnd = delegate()
 
-                     {
 
-                         timeLineEventLogicGroup.CloseLoopFx();
 
-                         myCombatMagicWeaponEntity.isCombatState = true;
 
-                         myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
 
-                     };
 
-                 }
 
-                 else
 
-                 {
 
-                     myCombatMagicWeaponEntity.isCombatState = true;
 
-                     myCombatMagicWeaponEntity.CombatAIBasic.ChangeState(CombatHeroStateType.idle);
 
-                 }
 
-             }
 
-         }
 
-         protected override void ProExit()
 
-         {
 
-             timeLineEventLogicGroup?.BreakTimeLine(myCombatMagicWeaponEntity);
 
-             timeLineEventLogicGroup = null;
 
-         }
 
-         public override bool IsUpdateLockTarget()
 
-         {
 
-             return false;
 
-         }
 
-         protected override void ProDispose()
 
-         {
 
-         }
 
-     }
 
- }
 
 
  |