Layers and Triggers

Mar 19, 2018

Hello all

So I have a little issue using triggers. I have a slide with 5 layers on. Each layer shows when the user clicks on part of a UI, this is using the hotspots part. Each layer shows a close up of that part of the UI with some text explaining what it dose then closes when the user clicks anywhere on the screen.

What I want to have is a check that enables the next button (inbuilt player one) once the user has clicked each layer.

I have tired using the Boolean checks, 1 Var for each layer that gets set to true after its clicked then having a check that enables the next button when all 5 layers are set to true. The problem is how to trigger this errr trigger.   

I can't set it to work on a time line as it wont pass the check before the timeline ends.

I have also tried using an Int var that adds one to the var each time a layer is clicked including adding having a check that will only count each layer once. problem is even using a is_complete var a user could just click the same one 5 times to unlock the button.

Is there a much simpler way of doing this? maybe using states?

Thanks in advance

9 Replies
Walt Hamilton

If you stay on the same slides, and only go to different layers, it can be done. Give each of the 5 buttons a "Visited" state. To save a ton of time and trouble, name it "Visited" so you can use the built-in triggers, rather than writing your own. Then on each layer, along with the trigger that closes it, add a trigger to enable the Next button if each of the 5 buttons's state is Visited.

This only works this way if you stay on the same slide all the time. If you navigate to other slides, you must use other methods.

Walt Hamilton

The states are added to the buttons the learner clicks to view the layer.

If some of the layers show when the button is rolled over, and you consider that to be adequate "visitation", you may be able to get away with writing a trigger for that particular button.  It would set button state to "Visited" when the layer opens, and it would be on the layer.  This would only work if the learner never clicks the button. If the learner clicks on a button with a visited state, the built-in trigger kicks in, and very likely causes conflict with your trigger, and you won't like the results.

If you want the learner to both roll over the button and click on it, things get much more complicated. In that case it's much easier to show than tell. You would need to attach the file here, and I could show you how the triggers would work.

Matthew Khawam

Hi Walt

Thanks again for getting back to me, at the moment my layers are triggered via hotspots rather than buttons. 

I have found something that is close to a fix by having the hotspots run a check that can set the next button to normal if the conditions are met, its not the most effective solution but seems to be working.

Do you think it is better to have the hotspot trigger a role over layer that then has a hidden button on? right now the hotspot has a role over and a click option.

Unfortunately I cant upload the file, but thanks for your offer   

Walt Hamilton

If you have conditions that are reliable and triggers that are guaranteed to fire and check the conditions, and it's all working, then you have an effective solution. Using it is more efficient that spending time looking for a more elegant solution. The most important consideration is "What does it look like to the learner?" If they can click where it seems most natural to them, or take the most logical action, and get the result you want them to get, it's what you want. For example, is there a method in place to make them want to click after they roll over if they need to?

Matthew Khawam

At the moment when you roll over each part of the window, it will highlight greying out the rest of the display, I think this will lead to someone wanting to click, however I could add a caption saying for example "This is the table of content window, click to find out more"

It needs more testing to ensure it works properly, will have to get someone else to drive for that, I have tried force articulate to run the is complete check all the time as no matter where a user moves over on the screen the trigger will fire. It would be handy if you didn't have to have your trigger fire at a certain point but have it run in the background, like in this situation.

Only issue is at the moment once you click back from viewing the last window until you move the mouse again the next button is still in its disabled state,  of course as soon as a user moves it again it will enable.

Thanks for your help   

 

Matthew Khawam

Hi

So I have followed your suggestion and used a button the rather using hotspots. this lets me lock off the next slide.

I have found an issue with how I have set it up. If a user clicks one option then clicks the previous button and then the next button again the slide is unlocked. 

I'm not sure what is happening here any help would be great

 

Matt   

Matthew Khawam

the live help guys came up with a solution based on Vars.

It seems to be working, I do wonder though if I can have a better way of showing if a layer has been visited.

at the moment the button sets to green text when its been visited but will change back to black when rolled over, I need that roll over state to stay as is but is there a way to add a second roll over that will keep the text green when its been visited?

 

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