SL360 drag drop multiple objects, one target feedback layer issues

Dec 20, 2020

Hi, everyone:

RE: Freeform drag/drop with multiple objects and one target

I created this drag/drop interaction in SL2 about 6 yrs ago. It has worked fine as an SL2 interaction but not in SL360 (latest version as of Dec. 2020) in terms of the triggers. I'm unsure if it's the triggers or states that are the issue. (Or me!)

I got the customized "invalid" feedback layer to work properly with a trigger and state changes when none of the objects have been selected. However, when I drop all the objects (correct and incorrect) onto the target, the "correct" feedback layer pops up. And if I drop only the wrong objects onto the target, the "invalid" feedback layer pops up.

I've spent too much time trying different combos of triggers and states to get this interaction to work. I'm at a loss as to what to do even though this should have been a quick set up.

I'd be grateful if someone in the community and figure out what I'm missing or doing wrong.

Thanks!

P.S. The wrong items are the milk, fish & chicken.

2 Replies
Walt Hamilton

I wonder, from the use of the Selected state, if this was originally a modified Pick many State interaction? Normally, Drag and Drop expects every draggable item to have a correct drop target. Pick Many only expects the items to be clicked, not dragged, so it is about the same amount of work to modify either of them.

The short answer is that I think the attached story does what you want, and you can use the non-original slide as is if you want.

I set the number of attempts to five for my testing purposes. If you want more than one attempt, you will need to edit the Try Again layer

If you are interested in why, you can read the following explanation.

I recommend using your trigger for the Invalid response, and using the built-in actions for the Correct and Incorrect responses.I think the built-in actions are easier than custom ones, but it does cause some problems. The main problem is to avoid triggering the built-in Invalid Response message.

The first problem is that the Milk, Fish, and Chicken were listed in the Form View as having the Hotspot as their correct drop target. I listed them as having None for a drop target. Otherwise, the interaction isn't Correct unless all the objects are dropped on the hotspot. Listing them means they can be dragged. More importantly, they are recognized as being an object dropped on the hotspot. Otherwise, if they are the only dropped items, the built-in Invalid response is triggered.

Another problem is that the custom Invalid response should show only if no item has been dropped. I changed the trigger for the Invalid response from "or"s to "and"s. Otherwise, If even one item is not dropped, the Invalid response shows. I also changed the initial state for  Milk, Fish, and Chicken to Drop Correct and put that into the trigger. There are problems with using Normal in a trigger like that.

The final problem is that using the built-in Submit button and trigger can still trigger the built-in Invalid response, if no item has been dropped, or only incorrect items have been dropped. That is because without a target, they don't change state when dropped. So I gave them triggers to change their state when dropped, and modified the Submit trigger to submit only if at least one item has a changed state (indicating it has been dragged.)

Once those three problems are solved, the normal Drag and Drop checking can function as designed..