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(); } } }