Buttons not changing states

Nov 07, 2017

Hi all (again),

I am having trouble with some buttons that are not changing to the normal state as I have them triggered to.  I have five topics that I want viewed in a particular order.  I have set the buttons to be hidden until the previous one is completed and then become "normal" state.  I have tried using multiple triggers to make this including variables.  For some reason, when the learner goes through the first topic, and returns to the main topic menu, the next topic button only becomes "normal" when the seek bar is clicked.  I have attached the file for any help.  Thank you!

13 Replies
Walt Hamilton

Emily, Here are some of the reasons why the buttons don't change states the way you want:

 

This is from slide 1.1, and the variable PII is changed when the timeline starts on slide 5.2. (Which raises a philosophical issue. I prefer to change that variable when the user clicks to jump back to the menu button. Otherwise, they can use the back button, and get credit for this slide's contents without seeing them. But that's just my personal opinion.) The variable issue, though is real and not open to interpretation. When a variable changes, it announces that fact, but the announcement is heard only on that same slide. So when the variable is changed on slide 5.2, the trigger on slide 1.1 doesn't know it changed, and doesn't fire. When you get back to slide 1.1, you can check the contents of the variable, and know what it changed to, and that can help you with your problems. I suggest using "Change state of Info Security Requirements to normal when timeline (of slide 1.1) starts when PII = True.

 

This trigger is also from slide 1.1, and represents a different sort of problem. When you give an object a built-in state (the built-in states are all listed in the drop down menu in the dialog to name the state, except hidden, which you can't use as a name), it automatically gets all the built-in triggers that accompany that state. When you create a trigger that refers to one of those built-in states (like Visited), there is frequently a conflict. Those conflicts can cause results that are interesting, but seldom desirable or useful. I suggest you use a made up name, like "Completed, and create a trigger to change it every time you need it changed.

I've attached a sample file that illustrates all those principles. It allows the user various methods of navigating the course. You want the restricted navigation which requires the learner to advance in a certain order before exiting.

I foresee one other problem. If you change the state of the buttons based on the timeline starting (and there is really no other reliable method of doing that), you can only guarantee that the timeline starts if you set the slide to reset to initial state on revisit. In that case, you may not want to repeat the audio. If you don't, you will need another variable that is set to true when the audio is finished, and triggers to control whether the audio can play and the CC can show, depending on whether the audio has played.

If those things don't get you all the way to where you want to be, or if you find new questions, ask. The forum is full of people that want to help you.

Emily Webster

That was how I had originally set the states to change - when the timeline started - which is why I think I have to click on the seekbar to get it to actually change.  I have tried using the variables (PII equal to true), but that doesn't seem to be making the change either even with the trigger on slide 1.1. 

 

The only workaround I have found is to set it so that when the learner clicks the first button (Laws and Policies) it automatically changes that button to visited AND changes the next button to normal.  However, you can see both of these things happen right before the presentation takes the learner to the topic area - so it isn't really ideal. 

Leslie McKerchie

Hi Emily!

Having the state change on one slide based on a variable changing on another slide will not produce consistent results.

I advise adjusting the 'when' to when the timeline starts based on the variable being adjusted to what looks like 'true' for most of your scenarios.

I adjusted a few triggers and went through your course and it seems to be working as you mentioned.

Your file is attached.

Leslie McKerchie

Hmm, it worked well for me.

Your requirements are:

  1. Adjust the state of PII to Normal when the Timeline starts on slide 1.1 if 'Laws' is equal to True.

Slide 2.2 shows where 'Laws' is adjusted:

When the timeline ends AND when all of the layers are visited, which are not set until the timeline ends for each - so you cannot 'skip' ahead on any of this content.

I think that's why Walt recommended setting the navigation to restricted above, because it seems like you are requiring it, but the user can skip over currently and requirements are not met. 

Take a look at those triggers/conditions and be sure they are set how you wish.

Emily Webster

The  they are set now when I return to the topic page after completing the topic the next topic button only becomes "normal" if I click on the seekbar somewhere and not when I return to the topic page.  It's like it's set to "clicks anywhere" to change to normal, but it's not.  That's what I don't understand.  It will change, but not automatically upon return to the topic page.

Emily Webster

I have also tried adjusting this topic slide so that when the learner clicks the first topic it becomes "visited" and the next topic is then made to the "normal" state.  This works.... however, this shows both the check mark for completion on the clicked topic as well as the color topic for the next one just before the presentation moves forward to the topic they clicked on.

For example, click on DOE Policies and Laws - on the screen it immediately shows a check mark on that one and then turns Personally Identifiable Information to it's "normal" state.   

This is the only workaround I have found, but it's slightly annoying given the lag time to the next screen.  Is there a way to fix that and make it faster?

Emily Webster

Hi Leslie,

This is the same Topic slide from before that I'm having issue with and can be seen in document above.  I changed the triggers so that when the learner clicks topic 1 (DOE Policies and Laws) then it becomes "visited" with a checkmark AND the next topic - Personally Identifiable Information (PII) also is set to "normal".  Unfortunately this happens instantly before the slide moves to topic 1 (policies and laws) and so the learner sees the check and the next topic in color.  I have repeated this for the other topics as well and the same thing occurs.  I had previously tried to get the next topic to be changed to "normal" when a variable in that scene changed; however, it was not triggering on the topics slide unless I clicked in the seek bar. 

 

Thank you!

Walt Hamilton

Emily, 

When you create a new state for an object, if you use one of the names in the drop-down menu, you are using a built-in state. Some built-in states (such as visited and selected) come with their own built-in triggers, which you can't see, and can't change. If those triggers do what you want, they can save you a bunch of time. But if they don't and you create your own triggers, your triggers may conflict with theirs. The results are not predictable, and seldom useful, as your course shows.

The solution is simple. For each Topic button, edit the states, copy the Visited state, and give it a new name that the system doesn't use. (I use "Completed".) Then delete the visited state, close the editor, and edit the trigger to change to the new state.

 

Then, if you don't want to see the change in the state, don't set it before jumping to the next slide. Set it when the timeline starts when you return.


Change these two triggers:

 

to these:

 

To make this work, you have to do it for each of the five topics, and you have to set the topics slide to reset to initial condition on revisit (otherwise, the timeline won't start). Don't worry about the states of the buttons, they are set correctly when the timeline starts, depending on the variables, which are much more reliable than the visited state.

It's interesting to me that you set the policies variable to true when the last policies slide starts. I always wait until the learner has finished the slide to set it, and attach it to whatever returns to the topic slide. Personal preference, I guess.

Note: in a list of triggers, once a jump trigger is encountered, none of the triggers below it are executed, so jump must be last.

 

Emily Webster

Thank  much Walt!  This seems to have worked.  I also added a trigger to pause or mute the audio upon restart if the first item was completed; however, I am going to remove that since there is not a way for it to be unmuted in case the learner wants to hear something from the slide again.  Getting closer to being able to push this out thanks to all your help!  Just waiting on the help ticket for the disappearing circles on slide 3.2! 

 

Thank you all so much!

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