I have a ParticleEmitter parented to an attachment. I want to change the radius of the particle emitter/attachment so the radius of the particle effect is in line with the perimiter of the circle I want to put the attachment inside of.
If you want it to only appear on the outer edge, you’d have to write your own logic for positioning particles. It simply isn’t possible with just the ParticleEmitter because it uses the BoundingBox of whatever it is inside, so it won’t appear on only the outer edge.
You most likely could do it by doing this:
Create a Loop that runs as often as your Particle’s original “Rate”
In the loop, create a new attachment
Clone the Particle and put it in the new attachment
Position the attachment at a random point on a circle according to a “radius” property
Run :Emit(1) on the new Particle
Cleanup with either Debris or a manual :Destroy() call when the Particle is finished
You can get a random point on a circle with this code:
local val = math.random() * math.pi * 2
local offset = Vector3.new(math.cos(val)*radius,0,math.sin(val)*radius)
local finalPosition = origin + offset
You can set the radius automatically or you can get it from the original circle’s size property.
I know you said you knew how to script it yourself, but I’m not totally sure what you meant by asking how to change the radius of the Emitter. If this does end up helping, then that’s great. If not, then I apologize.