As always your example is excellent!
I have a few thoughts that may help - mostly around "after you have dragged the hand, does it reset to its original location?" which can be easier in development, since you don't have to put it back manually after testing, and you can make the scene easily replayable and such.
So if you use the following code for the "on release" then we can have the hand position reset to its starting place after we go to the new card, so if you go back you can do it again
on release do if rect.overlaps[hand bill] go["card56"] hand.pos:(90,150) end endOr if we go with this version, the hand, if dragged, will always reset to its initial position after dragging
on release do if rect.overlaps[hand bill] go["card56"] end hand.pos:(90,150) endYou can of course change the position to anything you want. Using the listener, I typed in "hand.pos" and pressed shift+enter to get the position it was as the start, which is what I used in the code above, so if you have a different starting position you can get the coordinates for that using the same method.
Hope this helps!