How to show layer at end of timeline only when user clicks outside an object

Jul 24, 2019

Hi, I have a series of menu drop-downs that I am having the user click through - it's not a simulation. I have built-in triggers for each menu selection. At the end i want the user to "click outside the object to change object to hidden." I know i can add a trigger to that. The issue is that I have about 10 objects that I would have to do this to because they're all on top of one another. So I created a layer and a trigger saying, " show layer X when user clicks outside object." 

However, now it shows the layer too early when the user is clicking on the other menu drop-downs earlier in the process. I don't want to display Layer X until the user reaches drop-down number 10. 

Any ideas as to how I would achieve this? I haven't worked with cue points or variables yet. Is that something that would work in this situation? How would I use them?

PS: unable to upload to this site. 

8 Replies
Ned Whiteley

Hi Deidre,

You should be able to achieve what you are after using conditions with your trigger.

Depending on how you have built your menus, each menu option may have a Visited state or, alternatively, you may be able to use the condition of the menu variables you have set up to drive your trigger:

a.  Show layer X when user clicks outside object Y     if Menu Item 1 is Visited and Menu Item 2 is Visited and Menu Item 3 is Visited and . . . 

or

b.  Show layer X when user clicks outside object Y    if MenuItem1 is equal to True and MenuItem2 is equal to True and MenuItem3 is equal to True . . . .

(I have assumed in item 'b' above that you have used True/False variables for your menu selection. All you need to do is to change the variable names and values as appropriate)

This should ensure that, however many times the user clicks outside object Y, layer X will only appear once all the items in the menu have been selected.

Hope this helps :)

Deirdre Sherman

Hi Ned,

I ended up just creating some text "Press Enter to proceed" with a trigger that "Show pic X (where X is a new base pic on top to hide all the drop-downs) when user presses Enter."

However, I think Conditions may help me with a new issue.

I have a slide with triggers showing various bubbles pointing to different sections of the base pic (PC screen). The last thing user has to do is click a hotspot to go to layer. I have a bubble and an arrow telling them to do this. Let's call this "Click Hotspot". Once they're done interacting with that layer, a trigger takes them back to the base layer (Properties set to "Resume saved data." 

The problem is that the "Click Hotspot" bubble and arrow show upon return to base layer no matter what I do. I have tried triggers to hide "Click Hotspot" when user actually clicks hotspot to bring up layer - no luck, it's still there upon return to base layer. No matter what trigger I use, it remains (I've tried about 3 different ways to trigger it to disappear). Basically, I want that last bubble and arrow that tells user to click the hotspot (that takes them to layer) to disappear when user returns to base layer after visiting layer. 

How would i write a condition/variable for that logic? 

Thanks!

Ned Whiteley

Hi Deirdre,

In the attached example, a speech bubble appears to tell you to click on the blue rectangle. When you do this, a new layer appears with a yellow triangle on it and the speech bubble disappears. Now you are asked to click on the yellow triangle, which returns you to the base layer. All that is now visible is the blue rectangle and no speech bubble.

As you should be able to see from the triggers, what I have done is to set the speech bubble's state to Hidden when the blue rectangle is clicked. You should also be able to use this technique to hide your drop-downs in your first slide, so that they don't all pile up on top of one another.

Note that any triggers regarding the extra layer must be placed on that layer and not the base layer in order to work.

Hope this helps :)

Deirdre Sherman

Ned,

I did exactly that already. When user clicks the hotspot on base, i have a trigger that tells it to "hide "Click Hotspot" text. However, when user returns to base, that "Click Hotspot" is there.  I have a trigger on the layer that returns user to the base (when layer timeline ends). 

I guess there is no way to return to a specific point on the base (before the "Click Hotspot" text appears. But i guess i can just have the user go to a third layer at the end of the layer timeline (a copy of the base) instead of returning to the base.

The solution always seems so duh :) 

Ned Whiteley

Hi Dierdre,

I originally thought that you wanted to return to the slide at the point after the speech bubble had been hidden. If you want to return to the beginning of the slide (i.e. the user can then interact as if it was the first time of visiting, with speech bubbles appearing as before) this can be easily achieved by using a Jump to Slide trigger.

This trigger is inserted on the additional layer such that it jumps to the original slide when the timeline ends for the layer. What this does is to regenerate the slide from its starting point, but all the user is aware of is that the layer has disappeared (see version 2 attached).

In this new version, the second layer remains visible for five seconds before the slide is regenerated and then the whole thing starts all over again.

I hope this is what you are after,but if I am still on the wrong track, just let me know exactly what you are trying to achieve and I am sure we will find a solution.

Deirdre Sherman

Hi,

Sorry for not being clear. I want to return to the base layer right before the the speech bubble appears; not the beginning either. The base layer has a combination of a timeline and interactive triggers. It goes from timeline to interaction back to timeline. I am trying to return to a point in time. But I think i'm making things over-complicated. I will just use a new layer to represent the point in time before the speech bubble appears. 

Thanks for all your help!

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