Forum Discussion
Variable changing but state not updating
I have a couple of issues with this actually.
On the first slide, users are asked to choose whether they want to hear the audio or to just read the content. Depending on their answer, they'll either go to 1.2 (for reading) or 1.3 (for audio).
For both of these, when all of the interactions are complete, it's set to send learners to the last slide that will allow them to x out of the course.
These are the problems I'm having right now:
1.2- as soon as you click on the last character, instead of opening the corresponding layer, it goes straight to the last slide. I have the triggers set so that the layer should appear before the variable is updated and I thought that was sufficient.
1.3- the audio slides are a bit different in that there is a duplicate of the original slide that brings learners to a muted layer so that the player isn't continually going back to play the audio once the user tries to return to the screen. I did create variables and set my triggers to update in the correct order- on the initial slide it's
- update variable to true
- change state to visited
- show layer
When learners are finished with the new layer and close out of it, it's supposed to bring them to the muted slide. This is working, and the variable is updating appropriately, but the state isn't changing. This is only for the first character- for all of the rest of them the state change works as intended since it's not relying on the variable being carried over from the original slide.
I'm not really sure what I'm doing wrong. Do I need to add triggers with conditions and if so, what should they be? Can anyone help me? Attaching the file here.
- JudyNolletSuper Hero
re: slide 1.2
This trigger is a problem.
Here's what happens when the user clicks the final button: The program shows the associated layer. However, you don't see that layer, because all the buttons are Visited and the program shows the "Jasmine predicament" layer.
FYI: You don't need any triggers to change an object to Visited. Any object with a Visited state will automatically change to that state when clicked. That functionality is built in. Here's more info: PRIMER: Take advantage of built-in states | Articulate - Community
My suggestion: put a button on the base with an initial state of Hidden. Give that button a trigger to show the summary layer. Edit the trigger shown above so it changes that button to Normal when the other buttons are Visited. That will let the user click it after they close the last layer.
- This also lets the user decide when they are ready to move to the summary layer.
re: slide 1.3
Again, you don't need any of the triggers that change objects to Visited.
The states of the duplicated buttons on the "muted" layer aren't changing because the triggers say to change the button on the base (not the layer). For example:
Also, you don't need triggers to stop audio on a layer when the layer closes. That will happen automatically.
As with the other slide, I think it's best to provide a button for accessing the summary layer after the user completes the interaction.
- AmyCowanCommunity Member
1.3- ahhhh that helps so much! I just kept going through the list of triggers over and over and couldn't figure out what was going on but that makes sense- just need to pay closer attention next time.
I guess I feel like the slides are a little crowded and didn't want all of the information at the top of the slide again once the interaction is completed. I created a new state for the textbox so that it updates to say "you've completed the interaction..." after the states of the 5 characters have been visited. Created a hidden button that will be revealed only after the states of the 5 characters have been visited as well. That helps so much! Thank you!
- AmyCowanCommunity Member
It worked beautifully, thank you so much.
- JessicaVergataCommunity Member
I think I may have caught the issue with variable/state for the first character (Jasmine) on 1.3, layer: Jasmine audio muted.
All of the variables are working, but as this layer only shows after Jasmine's layer is closed, and never prior or on it's own, the initial state for the Jasmine image should either be visited, or the normal state should be set to the greyscale image. If you make that change, it should appear seamless.