protected virtual void SpawnParticles() { ParticleEffect explodeEffect = PoolManager.GetPoolItem <ParticleEffect>(explodeID); int particleCount = 5; Vector3?spawnPos = transform.position; ParticleSystemOverride overrides = null; Vector3? spawnRot = null; float spawnDelay = 0.0f; float? sortYOffset = null; Transform followTransform = null; explodeEffect.Emit(particleCount, spawnPos, overrides, spawnRot, spawnDelay, sortYOffset, followTransform); }
protected void SpawnParticles(int?_particleCount = null, string _effectID = null) { // get a particle effect system ParticleEffect effect; if (_effectID == null) { effect = PoolManager.GetPoolItem <ParticleEffect>(); } else { effect = PoolManager.GetPoolItem <ParticleEffect>(_effectID); } Vector3?spawnPos = parent.transform.position; // spawn position ParticleSystemOverride overrides = null; // particle system overrides, can override things like particle lifetime, spawn rate, and particle size Vector3? localRotation = null; // optional rotation to spawn float delayTime = 0.0f; // time to wait before spawning float? sortYOffset = null; // bias for rendering particles above other objects based on vertical position Transform followTransform = null; // an object the particles should move towards, will set emitter position to the objects position effect.Emit(_particleCount, spawnPos, overrides, localRotation, delayTime, sortYOffset, followTransform); }