5 Layers with CheckBoxes on Base Layer

Feb 23, 2015

How can I have a continue button (to next slide) appear only when a person has clicked on and reviewed each of the layers?

11 Replies
Ashley Terwilliger-Pollard

Hi John,

Are they reviewing the layers in a particular, forced order? If so, than you could put that button on the last layer.

Otherwise, you'd need to set up a variable for each layer and you'd want to adjust it from false to true when the timeline of that layer starts. You'd than have a button called continue that is initially hidden, and include a trigger to change it's state to normal, based on the condition that variable X, Y and Z (for your layers) are all True. 

G McKinzie

Hi Ashley,

I'm trying to do the same thing John was doing.  I have no idea how the variable should read.  I'm shooting in the dark here trying all different types of things.  Is there a tutorial somewhere?  Or would you mind elaborating.  Does each layer get a different variable?  What about the main layer that has the continue button?  I set the state of the Continue button to normal when the variable changes to True however I can't figure out how to set up the variable on each layer.  I want the user to visit all the layers before they can see the continue button.

thanks for any assistance.

Chris Cole

Hi G McKinzie -

There are a lot of ways to do it, and the solution you implement would depend on how you have your slide set up, like what types of buttons you are using, et cetera. If you could share your story file, or a single-slide version of your story file, then we could offer a specific solution.

But generally speaking... I assume you have buttons on your base layer that the learner clicks to show each layer? If so, then like Cary said you could set the initial state of your Continue button to Disabled (or hidden, whichever you prefer). Add a Player trigger that (in effect) says Change state of the Continue button to Normal when state of button 1 = Visited AND state of Button 2 = Visited AND State of button 3 - Visited et cetera.

Hope this helps.

Chris

 

 

Ashley Terwilliger-Pollard

Hi G,

As Chris mentioned - there are a lot of different ways to set this up, but in my example you'd need a different variable for each slide layer. 

If you've got an example you've started to work up, you're welcome to share here so that we could take a look at what you've got and offer some advice based on that. 

Cary Glenn

Hi G,

I think I've got this working for you now. I changed the hot spots to shapes and then made them transparent and no line. I then added a visited state to them. I set the continue button to be hidden from the state menu. Then I added a trigger to the continue button that says to change the state of continue to Normal when the the state of the rectangles are visited. I hope this helps, I did the similar thing with hot spots when I first started using Storyline.

Chris Cole

Hi G -

Cary's advice is spot on - using states can sometimes be a simpler solution than using variables.

But if you want to understand how to use variables for future reference... your original solution would be workable - you were close. You were correctly setting a variable when each layer was visited. You were also checking if all three variables were set to true. However, you were only checking the variables when variable3 changed. That would have worked if the learner clicked the three hotspots in sequence, but if the learner clicked the third hotspot first, you checked the variables but then you never checked the variables again. Also, you need a trigger to check your showContinue variable and change the state of the Continue button to Normal if it = true. (A simpler method would be to eliminate the showContinue variable altogether and simply change the state of the continue button if all three variables = true.)

So a simpler version of your solution (using variables) would be to put a trigger on each layer that says Change the state of the Continue button to Normal if all three variables = true. And you would put that trigger AFTER the trigger that says to change the appropriate variable to true in each layer. So each time a layer is visited, you are checking all three variables, and changing the Continue button if appropriate.

But... Cary's solution is more straightforward. :-)

Chris

This discussion is closed. You can start a new discussion or contact Articulate Support.