I have a simple drag and drop with three drag options. I have it set to snap back when dropped incorrectly. I want a Correct layer to show after all items are dropped correctly.
I have done this several times in the past using a trigger to show layer correct when states of all drag items are drop correct. But, it's not working on my current interaction. The states are there and the drag items are changing to the state upon correct drop. I have tried the trigger at the slide level and attached to an object.
I don't want to resort to a submit button. And I can't afford to keep putting time into this. Please help!
Here you go. Same trigger, same setup where text boxes are the drag options that have drop correct states. As I said--I tried the trigger at the slide level and then somewhat randomly attached to a shape. In the working example, the trigger is attached to a group.
it was working - your correct layer only had placeholders so it was appearing that it wasn't displaying - I added highlighted text and it displays as it should.
Okay--the problem was that the circles with letters wouldn't show, no matter what. I see no explanation. So I deleted the circles and instead used text boxes with the letters and am lining them up with the empty circles on the base later (it's harder than it looks).
Thanks for the help. The mystery remains unsolved, if anyone out there wants to try. :-)
Wendy--the letters were supposed to appear on the correct layer. However, since they weren't, I realized that the better design was to have each appear upon a correct drop. So I moved them to be based layer with an initial hidden state.
Sometimes the problem forces you to see a better design. :)
The Drop Correct and Incorrect states are meant to be used on the objects that are identified as draggable in the form view. So in your case, the text boxes would be the draggable objects.
The challenge is that you've assigned a Drop Correct state to an object (the blue circle) that isn't directly involved in the drag-and-drop interaction. Thus, Storyline isn't paying any attention to it. To have Storyline give it attention, you'll need to add a trigger similar to your current submit trigger.
So something like "Hey, Change the state of blue circle to Drop Correct when the state of Option X, Option Y, and Option Z are Drop Correct.
If I had to surmise, I'm guessing that you're viewing "Drop Correct" as a bit of a global setting. In other words, "Hey, if the question is correct, then anything that I've assigned a "Drop Correct" state to, should automatically fire when the learner successfully completes the question.
However, as mentioned above, the Drop Correct and Incorrect states aren't global in that sense. Rather, they are only automatic on the objects that are being dragged and dropped. Hence the check box option to "Delay item drop states until interaction is submitted".
All other items on the slide will need to be triggered to show that change.
12 Replies
Hi Amy
easier for someone to help if you could upload your .story file and they can see your setup.
Here you go. Same trigger, same setup where text boxes are the drag options that have drop correct states. As I said--I tried the trigger at the slide level and then somewhat randomly attached to a shape. In the working example, the trigger is attached to a group.
The interaction works. You just don't see anything because there is no content on the Correct layer.
Hi Amy
it was working - your correct layer only had placeholders so it was appearing that it wasn't displaying - I added highlighted text and it displays as it should.
What's not appearing are the letters inside the blue circles, I haven't put any text yet since the layer isn't showing.
When is the X Y Z blue circle text supposed to appear - only on the correct layer or when they drop on target on base layer?
Okay--the problem was that the circles with letters wouldn't show, no matter what. I see no explanation. So I deleted the circles and instead used text boxes with the letters and am lining them up with the empty circles on the base later (it's harder than it looks).
Thanks for the help. The mystery remains unsolved, if anyone out there wants to try. :-)
Wendy--the letters were supposed to appear on the correct layer. However, since they weren't, I realized that the better design was to have each appear upon a correct drop. So I moved them to be based layer with an initial hidden state.
Sometimes the problem forces you to see a better design. :)
So you're sorted now Amy or still need help?
I am sorted. Thanks. You must be a Brit.
The mystery of why objects on the correct layer weren't showing with the layer remains, for those who like a challenge.
An Aussie ;-) Good luck with your project!
Hi Amy,
I took a look at your file. Here's the scoop...
The Drop Correct and Incorrect states are meant to be used on the objects that are identified as draggable in the form view. So in your case, the text boxes would be the draggable objects.
The challenge is that you've assigned a Drop Correct state to an object (the blue circle) that isn't directly involved in the drag-and-drop interaction. Thus, Storyline isn't paying any attention to it. To have Storyline give it attention, you'll need to add a trigger similar to your current submit trigger.
So something like "Hey, Change the state of blue circle to Drop Correct when the state of Option X, Option Y, and Option Z are Drop Correct.
If I had to surmise, I'm guessing that you're viewing "Drop Correct" as a bit of a global setting. In other words, "Hey, if the question is correct, then anything that I've assigned a "Drop Correct" state to, should automatically fire when the learner successfully completes the question.
However, as mentioned above, the Drop Correct and Incorrect states aren't global in that sense. Rather, they are only automatic on the objects that are being dragged and dropped. Hence the check box option to "Delay item drop states until interaction is submitted".
All other items on the slide will need to be triggered to show that change.
I hope this helps!
Mike
This discussion is closed. You can start a new discussion or contact Articulate Support.