restricting navigation when using layers

I used the articles (re: T/F variable and triggers) on this site to lock down navigation for a refresher training course.

How do I make it work with a slide with a layer(s)?

Right now it works in that the learner can't advance until the timeline on the base layer is done, but it allows the learner to click Next once the 1st layer comes up and then they are able to advance to the next slide without viewing all the layers.

8 Replies
Rebecca Fleisch Cordeiro

Hi Jessica,

Are you using the built-in Next button? The attached example does. Not sure if it will work for you when you incorporate it into what you've already done, but figured I'd give it a whirl.

I used a number variable, named it LayerCount.

LayerCount is set to 0 when the timeline of the Base Layer starts.

1 is added to LayerCount each time users click the Next button.

Triggers tell Storyline to

show layer 1 if LayerCount=1

show layer 2 if LayerCount=2

show layer 3 if LayerCount=3

Jump to next slide if LayerCount=4

Monique Donahue

Hi Jessica, how are the layers being triggered? Is it via clickable objects on the screen, hotspots, hover action, or something else?

If by clickable objects, you could add several conditions on your Next button trigger to check the state of each object that must be clicked. If the state = "visited" for all cases, only then will the Next button advance the user. Optionally, you could use 'OR' instead of 'AND' on these conditions so that if just one of the layers has been visited (as opposed to all of them), then the Next button would advance the user.

If you are using hotspots (which don't have states) or hover actions to display your layers, you will need to use T/F variables instead.

1. Create a T/F variable for each layer. Make sure these T/F variables are set to FALSE by default.

2. Set a trigger on each layer to change the corresponding variable to TRUE when the layer's timeline starts.

3. Create conditions on the Next trigger to check the value of each variable. The Next button should work only when they are all TRUE. (or when at least one of them is true if you use 'OR' on the conditions instead of 'AND'... really depends which behavior you are trying to achieve).

Jessica Huber

I included one part of the project above...

I am editting this work that was done some time ago by someone no longer with the company.

On the Personal Connection and Options slides, originally the learner clicked on the phone and smiley respectively to trigger the layer, which is fine, but once the layer was triggered, then the learner could click next and by pass the layer to the next slide. That seems to be an issue no matter what I do. I have now taken the phone and smiley out of the equation - having the learner click next to trigger the layer, but they can still by-pass the layer. I do have the Continue variable set as T/F for the next button.

I have other slides in the project with 4 layers that are triggered after the timeline of each ends. Same problem - the learner can click next on the first layer and advance to the next slide.

I'm irritated to the point that I just want to be done with the editting, as I have more projects to do (don't we all) and I may just create slides instead of layers. Not sure what to do, as I don't have clcikable objects or hotspots, and I'm just trying to use the built-in Next button. :(

Rebecca Fleisch Cordeiro

Hi Jessica,

I took a quick peek at the Personal Connection slide.You did add the Count Layer variable, but your Jump to the Next Slide trigger is using a different variable (perhaps an older one). If you're going to

So, if you're going to use the the Layer Count variable

Add 1 to Layer Count when user clicks Next

Show layer TelephoneCall when user clicks Next if LayerCount=1

Jump to next slide when user clicks Next if LayerCount=2

Probably the same deal with the Option slides.

Oh, and if you're going to use LayerCount for other slides, be sure to set it back to 0 at the start.

It can feel confusing sometimes!

Monique Donahue

Hi Jessica. I just made some changes to the Personal Connection slide for you that I think achieves what you are asking for. I have attached the revised file, but also here is what I did for your reference:

  1. Created two T/F variables for this screen, Phone1 and Phone2. Both initially default to FALSE.
  2. Created a trigger on the base layer that sets Phone1 to TRUE when the timeline ends. (I also adjusted the base layer timeline length to end at the same point that the audio ends so that the variable changes as soon as the audio is complete.)
  3. Created a trigger on the "telephone call" layer that sets Phone2 to TRUE when the timeline ends.
  4. Created two triggers for the Next button. (a) The first shows the "telephone call" layer only when Phone1 is TRUE (base layer audio has completed) but Phone2 is still FALSE. (b) The second moves to the next slide only after both variables are TRUE.

Using the "timeline end" trigger in conjunction with a T/F variable ensures the user can't advance until everything on the layer has completed.

I hope this helps! Just apply this same idea for your other slides that have the same issue, with unique variables for each slide.

Jessica Huber

@Rebecca - still not sure why, but the layer count doesn't work for me like it did for you. :( I was able to keep clicking Next and skip content. I know some of my learners will attempt that, and I do not want them skipping material at all (this has been a huge problem for us in the past with a sister company's training materials.)

@Monique - it worked! You are awesome... I can finally finish these edits and move on to something else, which is good, since this piece was driving my bonkers! I can't wait to put this one to bed.

Totally unrelated - why did the audio disappear in the edited version you sent to me?