Hi Mikel, thanks for writing back. Cool Codepen I'm actually using GSAP to run timelines for effects that interact with node.js and the Phillips Hue light api, not any actual DOM animation. It could be total overkill using GSAP for this, but we'll be using GSAP for animations within the interface, so I figured why not. I've actually written a simple function to do what stagger does, but it calls functions instead. Here's the code for anyone interested in doing the same
/**
* Walk - Use this to create a new effect instance
* eg. let pulseGrp1 = new pulse([1,2,3]);
* @param {Array} lights - An array of light IDs. eg. [1,2,3]
*/
walk (lights) {
this.lights = lights;
let timeline = new TimelineMax({ paused: true });
let time = 0;
let offset = 0.5;
lights.forEach((el, index) => {
timeline
.call(this.lightsOn, [[el]], this, time)
.call(this.lightsOff, [[el]], this, time + offset)
time += offset;
});
return timeline;
}