Like an onion, too many layers can make an e-learning developer cry. You’re creating an e-learning lesson in Storyline and your client has a number of slides with multiple layers. Your client requires that the learner visit all of the layers on each slide before they can advance to the next.
Normally you’d disable the Next button in the Storyline player so that it won’t work until all the layers have been visited, or you have a customized Next or Continue button on the slide itself with an initial hidden state that switches to Normal after the learner has visited all the layers.
To accomplish this, you create a separate True/False variable for each layer and when the timeline begins on each layer, or when learners exit each layer, you have a trigger that switches each variable to True. Well, it’s easy to see that if you have a lot of layers and a lot of slides with layers, you could end up with 100+ variables to create. Fortunately, there is a much better way, and it works!
Instead of creating True/False variables for every layer, create 1 Number variable. Let’s say you have 10 layers, simply create a Number variable (I’d name it after the slide you’re on, but you can call it anything) with an initial value of 0.
Why Greater Than or Equal To?
Then add a trigger on each layer to add 1 to the numbered variable you just created. And finally, on the base layer, add a trigger which says to change the Next button to normal when that variable is greater than or equal to 10.
In case the learner decides to visit one or more of the layers more than once before advancing to the next slide, it’s a good idea to use the “greater than or equal to” setting on the trigger. Also, if you try to set up this trigger, you’ll notice you don’t immediately have the option to set the value of the variable, you can only change it, uh oh!
Not to worry, you just set the variable to change, then you Add + a Condition that says the variable is greater than or equal to 10 and you’re done.
Disabling the Next Button
In case you don’t know how to do this, you can add a trigger on the base layer that says to disable the Next button at a certain point on the timeline. I usually set it to be disabled within the first second. You can do this by either entering the time (When Timeline Reaches) or adding a cue point to the timeline and setting the trigger to disable the Next button when it reaches the cue point.
If you’re using a customized button, and not the one on the Storyline player, just set the initial state of the button to Hidden, and have it change to Normal after the variable has reached 10 or more (or whatever value you need based on the number of layers).
It’s also important to make sure all the triggers are in the correct order to work. In my lesson, I have the trigger to disable the Next button appear ABOVE the trigger to change it to Normal.
I hope I made this all very clear and easy to understand, but let me know in the comments if you have any questions.