/// <summary> /// 새 파티클 시스템을 추가합니다. /// 파티클 시스템은 한 번에 10개까지만 활성화될 수 있습니다. /// </summary> public static void AddParticleSystem( ParticleSystem.StartPosition startPosX, ParticleSystem.StartPosition startPosY, float velocityX, float velocityY, int lifetime, int createNumber, float createRange, ParticleSystem.CreateFunction createFunction, Particle.Type particleType, ParticleSystem.ParticleColor particleColor, float particleSize, int particleLifetime) { void particleSystemsRemoveAtZero(object[] args) { List <ParticleSystem> particleSystems_ = args[0] as List <ParticleSystem>; if (particleSystems_.Count > 10) { particleSystems_.RemoveAt(0); } } void particleSystemsAdd(object[] args) { List <ParticleSystem> particleSystems_ = args[0] as List <ParticleSystem>; ParticleSystem particleSystem_ = args[1] as ParticleSystem; particleSystems_.Add(particleSystem_); } // 한 번에 활성화되는 파티클 시스템 수를 10개로 제한 Util.TaskQueue.Add("particleSystems", particleSystemsRemoveAtZero, particleSystems); ParticleSystem ps = new ParticleSystem(startPosX, startPosY, velocityX, velocityY, lifetime, createNumber, createRange, createFunction, particleType, particleColor, particleSize, particleLifetime); Util.TaskQueue.Add("particleSystems", particleSystemsAdd, particleSystems, ps); }
/// <summary> /// 새 파티클 시스템을 추가합니다. /// 파티클 시스템은 한 번에 5개까지만 활성화될 수 있습니다. /// </summary> public static void AddParticleSystem( float startPosX, float startPosY, float velocityX, float velocityY, int lifetime, int createNumber, float createRange, ParticleSystem.CreateFunction createFunction, Particle.Type particleType, Color particleColor, float particleSize, int particleLifetime) { // 한 번에 활성화되는 파티클 시스템 수를 5개로 제한 if (particleSystems.Count > 10) { particleSystems.RemoveAt(0); } ParticleSystem ps = new ParticleSystem(startPosX, startPosY, velocityX, velocityY, lifetime, createNumber, createRange, createFunction, particleType, particleColor, particleSize, particleLifetime); particleSystems.Add(ps); }