Trying to do an exploding ring.

Hi,
I’ve just bought ParticleCandy and I am trying to do an exploding ring. I did it by taking the FairyDust sample an put, in the particle property, the weight to 0, the emissionShape to 3 and the emissionRadius to 30.
The strange thing is that the weight change made the particle going up.
Anyway what I really want is to be able to have an explosion ring. Is there a good way to do it.

Thanks in advance.

Bruno from BlueGlutton.com [import]uid: 9097 topic_id: 10408 reply_id: 310408[/import]

Ok, I did it :
Do a circular png file. Then use the ring type emission shape and it works.

BR
Bruno from http://blueglutton.com [import]uid: 9097 topic_id: 10408 reply_id: 38069[/import]

Hold on. I am confused. Why would you do a circular png? [import]uid: 8192 topic_id: 10408 reply_id: 38444[/import]

Hi,
The way I did is by having a png file with a circle in it. Then I use the disk emission shape not the ring one with as ScaleInSpeed different from 0.
Maybe there’s a different way but what I did seems to work.
Have you a better way to do it ? Because if so, I am interested.

Bruno from http://blueglutton.com [import]uid: 9097 topic_id: 10408 reply_id: 38452[/import]

Thanks.

Check this out. Works really well and gives you a sort of a Firework effect

--Ring Explosion Particle  
-- DEFINE PARTICLE TYPE PROPERTIES  
local ring = {}  
ring.imagePath = "picture.png"  
ring.imageWidth = 22 -- PARTICLE IMAGE WIDTH (newImageRect)  
ring.imageHeight = 14 -- PARTICLE IMAGE HEIGHT (newImageRect)  
ring.velocityStart = 500 -- PIXELS PER SECOND  
ring.velocityVariation = 100  
ring.velocityChange = -5  
ring.rotationStart = 0  
ring.rotationVariation = 200  
ring.directionVariation = 360  
ring.alphaStart = 1 -- PARTICLE START ALPHA  
ring.fadeInSpeed = 0.5 -- PER SECOND  
ring.fadeOutSpeed = -2.0 -- PER SECOND  
ring.fadeOutDelay = 500 -- WHEN TO START FADE-OUT  
ring.scaleStart = .5 -- PARTICLE START SIZE  
ring.scaleVariation = .5  
ring.scaleInSpeed = 0  
ring.weight = 0-- PARTICLE WEIGHT (\>0 FALLS DOWN, \<0 WILL RISE UPWARDS)  
ring.emissionShape = 0 -- 0 = POINT, 1 = LINE, 2 = RING, 3 = DISC  
ring.emissionRadius = 5 -- SIZE / RADIUS OF EMISSION SHAPE  
ring.killOutsideScreen = true -- PARENT LAYER MUST NOT BE NESTED OR ROTATED!   
ring.lifeTime = 2000 -- MAX. LIFETIME OF A PARTICLE  
ring.useEmitterRotation = false --INHERIT EMITTER'S CURRENT ROTATION  
ring.blendMode = "normal" -- SETS BLEND MODE ("add" OR "normal", DEFAULT IS "normal")  
Particles.CreateParticleType ("Ring", ring)   
  
Particles.CreateEmitter("E3", screenW/2, 160, 0, false, true)  
  
Particles.AttachParticleType("E3", "Ring" , 500, 99999,0)  
--Blow Effect  
local function blow()  
 Particles.StartEmitter("E3")  
 local function stop ()  
 Particles.StopEmitter("E3")  
 end  
 timer.performWithDelay(100,stop,1)  
end  
timer.performWithDelay(1000,blow,0)  
  

You need this timer at the end so that you stop the emitter. Maybe there is another way to do it. This one keeps looping. Just change the 0 to 1 to play it once, in the timer. [import]uid: 8192 topic_id: 10408 reply_id: 38457[/import]

I tried what you provided. Thank you but it doesn’t do what I have in mind. Have look at this video ( from Star Wars ) : http://www.youtube.com/watch?v=djZFHTa6TfA&feature=related
I really want to have the kind of circular blast we have not the central explosion.

BR
Bruno from http://blueglutton.com [import]uid: 9097 topic_id: 10408 reply_id: 38703[/import]

So you want the circular Blast that keeps going instead of stopping like the one I provided?
Just change the velocity change parameter to 0 or something positive. Play with the velocity variables. [import]uid: 8192 topic_id: 10408 reply_id: 38834[/import]