Forum Discussion
Condition on Hotspots for an Order
Hi I have a tiered diagram which has hotspots which open each layer with information. How can I add a condition to ensure they start at the bottom tier? I have added the diagram. Thank you.
To make this easier I'm supplying you my test .story file. I've tweaked the code a little and there are 2 slides. One where you can only go up, and not back. and another where you can go up (still can't skip a hotspot) but you can also revisit previous layers.
Reach out if you have any questions.
13 Replies
- RonPricePartner
You could just add a hotspot on the bottom tier and then add the hotspot for the next tier on the bottom tier's layer and so on
- MargaretMcCa446Community Member
Thank you Ron, I do have a question how would you ensure which hotspot they click if they are all on the bottom tier?
- RonPricePartner
Based on your description, I was thinking that each hotspot was configured to show a different layer. So on your slide there is only one hotspot covering the bottom section to show a layer. On that layer is another hotspot over the second section that shows a different layer, and then on that layer is a third hotspot . . . Etc
I may have misunderstood your design.
- MargaretMcCa446Community Member
Thanks Ron :-)
- PhilMayorSuper Hero
I would have switched them to transparent shapes so you could disable them, doing it this way you still get the mouse hover on the hotspot
- JudyNolletSuper Hero
Ron's solution definitely works if you're building all the layers onto the slide (that is, not hiding the current layer when a new layer is shown).
Phil's solution works in more situations. Any triggers you'd add to a hotspot can be added to a shape filled with a color set to 100% transparency. Even better, a shape can be given states.
For example, the shape over the bottom tier could have an Initial State of Normal, and the others could have their Initial State set to Disabled. When the user clicks the bottom shape, one trigger would show the layer, and another trigger could change the state of the next shape to Normal.
In other cases, you could give transparent shapes Visited states. That gives you an easy way to track whether the user has clicked them all, so you could use that info in trigger conditions. For example:
Also, if you want to show the user that they click an area already, insert a checkmark or some other appropriate symbol in the shape's Visited state.
- MargaretMcCa446Community Member
Hi Judy
I have tried doing the above triggers however, the hotspots don't appear for me to change their state:
Can you please advise, thank you.
Kind regards
Margaret
- JudyNolletSuper Hero
I have no idea how the trigger shown in your picture is related to this issue, since it's dealing with the states of a picture and of an arrow based on the values in multiple variables.
You said, "the hotspots don't appear for me to change their state."
As noted above, hotspots don't have states. A shape with a solid fill set to 100% transparency would be invisible to the user (like a hotspot is), However, a shape can have states. (See PRIMER: Hotspots vs. Transparent Shapes | Articulate - Community )
Beyond that, troubleshooting is just guessing without seeing all the programming. Someone might be able to solve the issue if you upload the .story file. Here are the best practices for doing that:- Only include slides that are related to the problem.
- Be sure objects, layers, motion paths, and variables have meaningful names.
- If there is proprietary content, replace or delete it. For example, replace proprietary text with “ipsum lorem” text.
- MargaretMcCa446Community Member
Thank you Judy, sorry for my late reply I had been unwell. I will give it a go and see how it works.
- AaronBurgessAUCommunity Member
If you want to keep your hotspots, then all you need is a single variable to check.
Create a Number variable and call it checkSPOT and set it to a value of 0
Then on the base slide have each hotspot check a value. For example
Show layer TIER1
When the user clicks Hotspot 1
if checkSPOT = value 0
or checkSPOT = value 1Show layer TIER2
When user clicks Hotspot 2
if checkSPOT = value 1
or checkSPOT = value 2Just repeat this for as many hotspots you have on the base layer and so tier 3 would check value 2 and 3, Tier 4 would be values 3 and 4 etc etc.
Each tier layer has the same trigger with a different value
TIER1 is
Set checkSPOT to value 1
When the timeline starts on this layerTIER2 sets the value to 2, Tier 3 sets the value to 3.
My code blocks anyone from seeing tiers above or below. However if you want the user to be able to revisit lower tiers then the base code is
Show layer TIER1
When the user clicks Hotspot 1
if checkSPOT (greater than or equal to) value 0Show layer TIER2
When user clicks Hotspot 2
if checkSPOT (greater than or equal to) value 1 - MargaretMcCa446Community Member
Hi Aaron
Thank you for your instructions, I followed these:
This doesn't however, mean that they are prevented from clicking on the layers in order e.g. tier 1, tier 2, etc.
Please advise where I am going wrong, thank you.
Kind regards
Margaret
- AaronBurgessAUCommunity Member
To make this easier I'm supplying you my test .story file. I've tweaked the code a little and there are 2 slides. One where you can only go up, and not back. and another where you can go up (still can't skip a hotspot) but you can also revisit previous layers.
Reach out if you have any questions.
- MargaretMcCa446Community Member
Hi Aaron, thank you so much, this worked! I don't have much experience with using variables so you have taught me alot. Have a lovely day.
Kind regards
Margaret
Related Content
- 7 months ago
- 10 years ago
- 5 months ago