How do I make particles delay?

I have two particle effects that emit footprints but they both go at the same time, so realistically it would look like you’re hopping around instead of going step by step. How can I fix this?

Oh I know, I figured out a way, I can make it transparent the first half and not the rest, and the other way around for the other foot!

Would this even work? I think it wouldn’t…

You can keep the particle instances disabled and use the ParticleEmitter:Emit for each differently over time. Otherwise, you could simply change their rates slightly so they don’t auto-emit at the same times.

Here’s one idea with skeleton code where if the humanoid is running it alternates between emitting the left and right footprint every second:

local particles = {
    [0] = --[[path to the left footprint particle emitter]],
    [1] = --[[path to the right footprint particle emitter]]
}

local humanoid = --[[path to the player's humanoid]]
local increment = 1

while wait(1) do
    if humanoid:GetState() == Enum.HumanoidStateType.Running then
        particles[increment]:Emit(1) -- emits 1 footprint from one side
        increment = (increment + 1) % 2
    end
end

What it does is alternate increment between 0 and 1 every second that the humanoid’s state is running and thus emits 1 footprint from the particles table (the one whose key is the same as the increment value).

1 Like

Oh my God I’m so sorry, I forgot to edit my post, I figured it out :smile: I just made a script that toggles between the particle effects on and off