diff options
Diffstat (limited to 'Assets/Scripts/Unit/TimelineEventProxy_Handlers.cs')
-rw-r--r-- | Assets/Scripts/Unit/TimelineEventProxy_Handlers.cs | 203 |
1 files changed, 0 insertions, 203 deletions
diff --git a/Assets/Scripts/Unit/TimelineEventProxy_Handlers.cs b/Assets/Scripts/Unit/TimelineEventProxy_Handlers.cs deleted file mode 100644 index cc352324..00000000 --- a/Assets/Scripts/Unit/TimelineEventProxy_Handlers.cs +++ /dev/null @@ -1,203 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -// Timeline Event Handlers -public partial class TimelineEventProxy -{ - - void EventEffect(AnimationEventBase animEvent) - { - EventEffect effect = animEvent as EventEffect; - if (effect == null) - return; - string path = effect.effectPath; - if (path == null || path == "") - return; - GameObject prefab = ResourceManager.Instance.LoadAsset<GameObject>(path); - if (prefab != null) - { - GameObject root = new GameObject(); - - GameObject go = GameObject.Instantiate(prefab); - go.transform.SetParent(root.transform); - FxClear onClear = root.AddComponent<FxClear>(); - onClear.gameObject.name = prefab.name + "(Clone)"; - - PlayEffectInfo info = new PlayEffectInfo(); - info.path = path; - info.playEffectType = EffectPlayTypes.Oneshot; - info.posOffset = effect.position; - info.rot = effect.rotation; - info.scale = effect.scale; - info.bAttached = effect.attached; - if (effect.attached) - { - if (effect.parentNode == global::EventEffect.EParentNode.Unit) - { - info.rootTr = m_Root; - } - else if(effect.parentNode == global::EventEffect.EParentNode.World)
- {
- info.rootTr = null;
- } - else if (effect.parentNode == global::EventEffect.EParentNode.Bone) - { - if (m_UnitModel != null) - { - info.rootTr = m_UnitModel.Find(effect.bonePath); - } - } - else if(effect.parentNode == global::EventEffect.EParentNode.PresetBone) - { - if(m_UnitModel != null) - { - UnitDetail detail = m_UnitModel.GetComponent<UnitDetail>(); - if(detail) - { - info.rootTr = detail.GetBone(effect.bone); - } - } - } - else if(effect.parentNode == global::EventEffect.EParentNode.ReferencePoint)
- {
- } - } - - onClear.Initialize(info); -#if UNITY_EDITOR - if (isInEditMode && registerParticleSystem != null) - { - registerParticleSystem(onClear); - } - onClear.gameObject.transform.SetParent(Root_Particles.transform); -#endif - } - } - - void EventCamera_Shake(AnimationEventBase animEvent) - { - - } - - void EventProjectile(AnimationEventBase animEvent) - { - EventProjectile e = animEvent as EventProjectile; - if (e == null) - return; - string projectilePath = e.projectilePath; - if (projectilePath == null || projectilePath == "") - return; - GameObject prefab = ResourceManager.Instance.LoadAsset<GameObject>(projectilePath); - if (prefab == null) - { - LogHelper.LogError("缺少对应的projectile, " + projectilePath); - return; - } - if (prefab.GetComponent<Projectile>() == null) - { - LogHelper.LogError("没有projectile脚本"); - return; - } - GameObject obj = GameObject.Instantiate(prefab); - Projectile projectile = obj.GetComponent<Projectile>(); - ProjectileInfo info = new ProjectileInfo(); - info.name = e.name; - info.tag = e.tag; - info.moveType = e.moveType; - info.owner = owner; - info.position = m_Root.transform.position + e.posOffset; - info.rotation = e.rotation; - info.scale = e.scale; - if (owner) - { - info.velocity = owner.transform.rotation * e.velocity; - } - else - { - info.velocity = e.velocity; - } - info.acceleration = e.acceleration; - info.lifetime = e.lifeTime; - info.sparkPath = e.sparkPath; - projectile.Initialize(info); - -#if UNITY_EDITOR - if (isInEditMode && registerProjectile != null) - { - registerProjectile(projectile); - } - obj.transform.SetParent(Root_Projectiles.transform); -#endif - } - - void EventMesh_AfterImage(AnimationEventBase animEvent) - { -#if UNITY_EDITOR - if (isInEditMode) - return; -#endif - EventMesh_AfterImage afterImage = animEvent as EventMesh_AfterImage; - if (afterImage == null) - return; - string avatarPath = owner.unitDetail.afterImageAvatarPath; - GameObject go = ResourceManager.Instance.LoadAsset<GameObject>(avatarPath); - if (go) - { - GameObject instance = GameObject.Instantiate(go); - AfterImageAvatar avatar = instance.GetOrAddComponent<AfterImageAvatar>(); - if (!avatar) - { - GameObject.DestroyImmediate(instance); - return; - } - avatar.Initialize(owner); - } - } - - void EventUnit_SetPosition(AnimationEventBase animEvent) - { - // 在unitState回调里处理 - } - - void EventMesh_VisibilityInMainCamera(AnimationEventBase animEvent)
- {
- EventMesh_VisibilityInMainCamera visible = animEvent as EventMesh_VisibilityInMainCamera;
- if (visible == null)
- return;
- if (owner == null || owner.unitRender == null)
- return;
- owner.unitRender.SetVisibilityInMainCamera(visible.isVisible);
- }
-
- #region Unit Image Effects - void EventMesh_ImageEffect_MotionBlur(AnimationEventBase animEvent)
- {
- EventMesh_ImageEffect_MotionBlur motionBlur = animEvent as EventMesh_ImageEffect_MotionBlur;
- if (motionBlur == null)
- return ;
- if (owner == null || !(owner is PCController))
- return;
- float angle = motionBlur.angle;
- angle = owner.isTowardRight ? angle : 180 - angle;
- // ((PCController)owner).unitImageEffect.ShowMotionBlur(motionBlur.lifeTime, angle, motionBlur.distance);
- ((PCController)owner).unitImageEffect.ShowGlitch(motionBlur.lifeTime);
- }
-
- #endregion -
- #region Lens Effect
-
- void EventMesh_LensEffect_Dash(AnimationEventBase animEvent)
- {
- EventMesh_LensEffect_Dash dashinfo = animEvent as EventMesh_LensEffect_Dash;
- if (dashinfo == null)
- return;
-
- UnitSnapshotInfo info = owner.TakeSnapshot();
- owner.unitLensEffect.Dash(Color.white, dashinfo.lifeTime, dashinfo.angle, info);
- }
-
- #endregion
-
-}
\ No newline at end of file |