summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit/TimelineEventProxy.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/Unit/TimelineEventProxy.cs')
-rw-r--r--Assets/Scripts/Unit/TimelineEventProxy.cs21
1 files changed, 18 insertions, 3 deletions
diff --git a/Assets/Scripts/Unit/TimelineEventProxy.cs b/Assets/Scripts/Unit/TimelineEventProxy.cs
index 2c5bf608..a8918e39 100644
--- a/Assets/Scripts/Unit/TimelineEventProxy.cs
+++ b/Assets/Scripts/Unit/TimelineEventProxy.cs
@@ -169,7 +169,15 @@ public partial class TimelineEventProxy
go.transform.SetParent(root.transform);
FxClear onClear = root.AddComponent<FxClear>();
onClear.gameObject.name = prefab.name + "(Clone)";
- onClear.Initialize(new PlayEffectInfo(path, EffectPlayTypes.Oneshot, m_Root, effect.position, effect.rotation, effect.scale, 0, false));
+ if(owner != null)
+ {
+ Quaternion rot = owner.transform.rotation * Quaternion.Euler(effect.rotation);
+ onClear.Initialize(new PlayEffectInfo(path, EffectPlayTypes.Oneshot, m_Root, effect.position, rot.eulerAngles, effect.scale, 0, false));
+ }
+ else
+ {
+ onClear.Initialize(new PlayEffectInfo(path, EffectPlayTypes.Oneshot, m_Root, effect.position, effect.rotation, effect.scale, 0, false));
+ }
#if UNITY_EDITOR
if (isInEditMode && registerParticleSystem != null)
{
@@ -214,8 +222,15 @@ public partial class TimelineEventProxy
info.position = m_Root.transform.position + e.posOffset;
info.rotation = e.rotation;
info.scale = e.scale;
- info.velocity = e.velocity;
- info.acceleration = e.acceleration;
+ 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);