diff options
Diffstat (limited to 'Client/Assembly-CSharp/PowerTools/SpriteAnimNodeSync.cs')
-rw-r--r-- | Client/Assembly-CSharp/PowerTools/SpriteAnimNodeSync.cs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Client/Assembly-CSharp/PowerTools/SpriteAnimNodeSync.cs b/Client/Assembly-CSharp/PowerTools/SpriteAnimNodeSync.cs new file mode 100644 index 0000000..e5fad22 --- /dev/null +++ b/Client/Assembly-CSharp/PowerTools/SpriteAnimNodeSync.cs @@ -0,0 +1,36 @@ +using System; +using UnityEngine; + +namespace PowerTools +{ + public class SpriteAnimNodeSync : MonoBehaviour + { + public int NodeId; + + public SpriteAnimNodes Parent; + + public SpriteRenderer ParentRenderer; + + public SpriteRenderer Renderer; + + public void LateUpdate() + { + if (this.Renderer && this.ParentRenderer) + { + this.Renderer.flipX = this.ParentRenderer.flipX; + } + Vector3 localPosition = base.transform.localPosition; + Vector3 localPosition2 = this.Parent.GetLocalPosition(this.NodeId, false); + localPosition.x = localPosition2.x; + localPosition.y = localPosition2.y; + base.transform.localPosition = localPosition; + float angle = this.Parent.GetAngle(this.NodeId); + if (!this.Renderer || !this.Renderer.flipX) + { + base.transform.eulerAngles = new Vector3(0f, 0f, angle); + return; + } + base.transform.eulerAngles = new Vector3(0f, 0f, -angle); + } + } +} |