Easiest way to hide a button

Jan 30, 2023

This should be simple but I'm struggling with it. Basically I want an exit module button to appear after user has interacted with four buttons each of which shows a layer. 

I've created a button with a hidden state and I've tried triggers to make the button appear when a variable for each layer is true (it becomes true once layer is opened) and I've tried using the states of the individual show layer buttons as well.

But I can't seem to get it to work, I think it has something to do with the timeline of the base layer as the trigger is set to show the button when the "timeline starts if variable 1 is true and if variable 2 is true etc. etc.)

Thoughts or recommendations?

4 Replies
Walt Hamilton

If you have all this on one slide and are using different layers on that slide, you can't use "When timeline starts" to initiate the triggers. That's because the slide timeline will only start once. Going to a layer doesn't cause the timeline to restart. The good news is that you don't need variables. All you need is the states. Give a Visited state to each object that shows one of the layers. It doesn't even have to look different than the Normal state, in fact you may have reasons not to want it to. The important thing is that it have a Visited state. When an object with a Visited state is clicked, it automatically changes to Visited. Then you can create a trigger "Change state of [exit module] button to Normal when the state of ... is clicked". You will get a drop down of all the objects. Select those four that show the layers. This is the easiest method, but may not work well if the learner goes to other slides, then returns to this one. In that case, you need variables.  There was a time (I don't know if this has been changed), when it didn't work for more than about five objects, but with only four, you should be all right.

Jeremy Lippart

Walt I appreciate the insight into the timeline, I got a workaround to work by using variables and the trigger is "When variable X changes if variables A, B, C are all true". It just seems to have more steps than should be needed for a function that I'm assuming is pretty basic amongst most users