Variables don't change if the trigger is added on a non-base layer?

Mar 18, 2015

Hello all, 

I have this six-tab multiple layer interaction. Four of these six tabs have one layer for each of them. The other two tab each has two layers. For example, for the "Project ID" tab, after the learner clicks and reads the first texts layer "Project ID", they will need to click on the arrow on the lower right side, to move onto the next layer "Project ID -Understanding" to read more information about Project ID. 

I want make sure the learners read all the information, before they click on Next on the player and move forward.  To do this, I set up eight variables -- six  are associated with the tabs, which all reside on the base layer. Once a tab is clicked, the variable associated to this tab will change. Then the other two are on the non-based layers - one on the "Project ID" layer, associated to an arrow button on the lower right side of this layer, called "ProjectUnderstandingVisited"; and the other on the "Fund Codes" layer, called "MoneyTreeVisited", also associated to an arrow button on this non-base layer. 

However, I found that the condition I set for the Next button will not work, when I include the two non-base-layer variables. I set up the trigger for the Next button as:

  • When all the eight variables are greater than zero (AND), then move forward;
  • When any of the eight variables are zero (OR), show the "Sorry" layer to remind the learners that they need to read all the information.

The triggers didn't work.  I tried many times, then found that if I took out the two "special" non-base layer variables, everything would work fine.  If I add the non-base layer variables back, then the triggers won't work anymore. 

So is there anything I did wrong, or is this a thing that we can't do in Articulate Storyline: to change a variable on a non-base layer and then pass this variable back to the base layer?

Can somebody help me to get around with it?

I attached my file in case my description is not clear. 

Thanks very much!

 

7 Replies
Ashley Terwilliger-Pollard

Hi Maggie, 

I didn't see the arrows you were referring to in terms of your hotspots covering them, but I did notice that some of your triggers looked out of order in terms of adjusting the variable after the user has already jumped to a new layer. Triggers will execute as described here, so if there is a show or jump to new slide type of trigger, any variable or state adjustments will need to occur before that or else they won't be executed as the user has already "left" the slide. 

Chris Cole

Hi Maggie -

I agree with Ashley that the trigger order is probably the culprit. If you change the variable first, then jump to slide 1.2 or show the other layer, then your problem should be resolved.

But Ashley... Here is an interesting item... when I look in the Triggers list at the right of the screen to see Maggie's logic for showing the "Sorry" layer, I see it is set up as expected; if variable X = 0 OR variable Y = 0... But if I open the trigger and look at the conditions in the Trigger Wizard dialog box, it says if variable X = 0 AND variable Y = 0, et cetera.  Doesn't seem to be impacting the functionality of the slide, but might be something for Articulate to take a look at?

Chris

Ashley Terwilliger-Pollard

Hi Chris,

Our team is aware of some issues with the "OR" condition related to variables, and it looks like it's acting like an OR, even though it shows it's using AND inside the Trigger Wizard dialog. If you change it to OR and click Ok, it saves and stays that way in the Trigger Wizard window until you save the project, close, and open it again. At that point it's reverted back to AND.

They're looking into a fix for this issue, so hopefully I'll be able to share information with you soon in regards to this. 

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