Next button disabling until user interacts with 5 of 10 objects

Hello everyone, 

I am trying to work with variables with SL3 but I am stuck with this interaction.  Basically, I have a page with several links to other pages. Let's say 20 for example.   I want the user to visit at least 5 of these pages (they all return to this initial menu page) before they can click on the next button.  

I looked at this article (https://community.articulate.com/discussions/articulate-storyline/next-button-to-appear-after-all-layers-have-been-viewed) but it only states how to do it when all links have been viewed.   

 

Can this be done.   

A really nice to have also is to have an audio file play once they return from viewing the 5th page.  

 

Thanks in advance.

Tom

10 Replies
Crystal Horn

Hi Tom. You can get this done with variables! Here's how I did it:

  • Use a number variable to track clicks on each page.
  • Create a trigger to disable the Next button when the timeline starts IF the variable is less than or equal to 4 (or whatever total comes right before your required clicks). Create another trigger to change the Next button to Normal when the timeline starts IF the variable is 5.
  • Disable the objects once they've been clicked so you can't click the same one and adjust the variable over and over.

Here's a little demo file. I made it in Storyline 360, but the attached sample can be opened in Storyline 3 as well. I hope that helps!

Crystal Horn

Happy to help, Tom! For the variable issue, I like to reference the variable on the slides so I can see what's happening to that value whenever I click.

You don't have to have them disabled. Instead, you could add a condition to the "adjust variable" trigger not to adjust it again if they click on the same object more than once, for example, if the object is in a Visited state instead.

Tom Seguin

I displayed the variable on my page for reference as you suggested but when I click on the links – it stays at 0.

I’ve attached a few screenshots for reference.

[cid:image001.jpg@01D4D814.ECA09740]

All links are setup like this:

[cid:image002.png@01D4D814.ECA09740]

[cid:image003.png@01D4D814.ECA09740]

I really appreciate your help.

Tom

Steve Flowers

Yes. I've done something similar in the past. As Michael points out, the same object would contribute to the unlock. 

Another way to do this is to use a "function" object. I use these often. Draw a shape off the stage and set the state to hidden.

Add a trigger to set your "unlock" variable to zero. Then add triggers to check the state of each of the clickable objects on your slide that you want to contribute to your unlock. For each object in the selected state or visited state, add one to your unlock variable. At the end of the trigger sequence, enable the next button if the unlock variable is equal to or greater than the number of objects you want to have the user click. 

Then, at the end of the sequence on your hidden object, add a trigger to set the state of the object back to hidden.

On each of your clickable objects, add a trigger that shows this object on click. This will activate your function object, do the math, then hide the object. This way, it checks the state of your objects each time an interaction is made.