From 6ce8b9e22fc13be34b442c7b6af48b42cd44275a Mon Sep 17 00:00:00 2001 From: chai <215380520@qq.com> Date: Wed, 13 Mar 2024 11:00:58 +0800 Subject: +init --- ParticleParent.cs | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 ParticleParent.cs (limited to 'ParticleParent.cs') diff --git a/ParticleParent.cs b/ParticleParent.cs new file mode 100644 index 0000000..dc8de91 --- /dev/null +++ b/ParticleParent.cs @@ -0,0 +1,39 @@ +using UnityEngine; + +public class ParticleParent : MonoBehaviour +{ + public GameObject particleObject; + + private ParticleSystem[] parts; + + private Vector2[] particleSizes; + + private void Start() + { + particleObject = Object.Instantiate(particleObject, base.transform.position, base.transform.rotation); + particleObject.transform.parent = base.transform; + parts = particleObject.GetComponentsInChildren(); + particleSizes = new Vector2[parts.Length]; + for (int i = 0; i < parts.Length; i++) + { + particleSizes[i].x = parts[i].main.startSize.constantMin; + particleSizes[i].y = parts[i].main.startSize.constantMax; + } + } + + private void Update() + { + } + + public void Play(float damage, float multi) + { + for (int i = 0; i < parts.Length; i++) + { + ParticleSystem.MainModule mainModule = default(ParticleSystem.MainModule); + mainModule = parts[i].main; + float num = (1.5f + damage * 0.01f) * multi; + mainModule.startSize = new ParticleSystem.MinMaxCurve(particleSizes[i].x * num, particleSizes[i].y * num); + parts[i].Play(); + } + } +} -- cgit v1.1-26-g67d0