Populating empty deck from another existing deck?

Hello All,

Need some help with an idea and I’m not sure if it can happen. As my subject states I have an empty deck. What I’d like to do is to be able to populate that deck via a right-click with one of two other decks that already exist. I saw that there is an option for ‘Add Deck Global Key Command.’ I’ve used this feature to grab a deck from an existing window where the target deck is sitting.

I’ve tried matching the properties with the insert button following the path: Property → Global Property → Map Window → [Name of Deck] and the result would be: GetProperty("[Name of Deck] Draw_numPieces").

When I’ve tested right-clicking on the deck, the empty deck does not populate with the desired deck. Also, the deck name in question does have spaces. If this is a problem, I can easily go back in and add ‘_’ to fix that.

Am I on the right path or is there another way around this? Thanks for your help and if I happen across the answer, I’ll certainly post back here with what I find.

Also, I do know about the deck option to send to another deck but this is more ideal for discard piles to main decks. Plus if I need to add options for a 3rd+ deck I’m looking for some option that will let me right click and send off.

Ok, lets see If I undestood you correctly. You have an empty deck and two populated decks. And you want to right click on the empty deck which opens a menu with two options? One to send deck 1 into the empty deck, and the other to send deck 2 into the empty deck? Is this correct?
Then the DeckGlobalKeyCommand wouldn’t help you. This command will only apply to all cards within the deck you specified it for. Since your deck is empty there’s nothing to apply.

But you could add a command to other two decks to send them to the empty deck. There is an option within decks called “Include command to send entire deck to another deck” where you could specify your empty deck as a destination, and some text for the menu. This way you would need to click the deck you want to send.

If you want only one menu, where you can select either deck 1 or deck 2, you could add two regular GlobalKeyCommands to your window (in combination e.g. with a ToolbarMenu). Each command could fire the same keycode (lets say CTRL + S), but with different expressions to test. Therfore your cards would need a property value which is unique for each deck. Lets say your cards in deck 1 all have the property Deck=1 , defined through a marker and your cards in deck 2 have the value Deck=2 . Then you first GKC would only apply to pieces where {$Deck$=1} (defined in “Matching properties”) and the other one does the opposite.
You then need a “Return to Deck” trait within you cards (best in the prototype), which registers on your keycode and has your empty deck as the destination.

Unfortunately you can not add this command to the empty deck itself, at least I don’t know a way to do so. But maybe my answer helped you in some way?

After some further thought and testing I came up with another idea, you might try. You can add a dummy piece to your empty deck which has the image of the deck’s outline. Give the item the trait “Does not stack” and set both options to never, so that you can not select it and it can not move. This trait prevents the dummy element from being drawn regulary, and it should also always stay at the end of the deck. You then could specify the “DeckGlobalKeyCommand” you want to use to populate the empty deck. As I said this command only triggers pieces within the deck, so add a regular “GlobalKeyCommand” to your dummy element which trigger is the key command of your “DeckGlobalKeyCommand”. This command than applies to all pieces that match your given expression, in all locations. You than can check for the correct deck name you are interested in (forget the “Deck=1” thing, this wasn’t thought through…). It is also not important, if your deck name has spaces in it. I also use the “GetProperty()” function on a deck with a space and it works as I want.

Maybe this is something you are looking for? Maybe this approach would require some further testing and the behaviour of this dummy object. What does not work is if the deck is not set do always shuffle. So if your dummy element gets to the top of the deck you’re screwed. Its not a problem if your dummy is at the top and the deck is set to “Reshuffle=Always”, as then another card will be drawn. Using the command “Send entire deck to another deck” also applies to the dummy element, so if you use this, the element will be moved, too.

Hi Sebaestschjin,

Yes, you understood my question/request exactly.

As you noted, the DeckGlobalKeyCommand didn’t work. I did some testing after posting here and noted that it should only add elements to the cards and such as you suggested. I’ll review your suggestions here and see what I can come up with as well.

Thanks so much for your help and thoughts here!

Okay, so I’ve figured a round-a-bout way of doing it. It’s quick and dirty but it works for me and get’s what I need done. So here’s what I found out:

  • I’ve updated the deck in question to allow multiple cards to be drawn.
  • Updated the prototype with a 2nd send to deck option (this allows for extra blank decks in the future) to the blank deck
  • I then select that option on the deck in question and hit the total number of cards in that deck.
  • I then pull that deck off the stack and place in the map window
  • From there, select the option to send it to the new deck window
  • After that, I’ll need to see about updating the previous return to deck to the new discard pile with a trigger command or something

This works well enough for me.