Need help with a more elegant Solution

I’m working on a card game and i got everything working. A wheel spins and lands on a color which draws a card for the player. The card is random and I currently use a switch on int to determine which card.

So this is what i need help with.

  1. Is it a way that i can use the information in the data tables instead of Switch on int to choose a random card? (I got a lot of cards and it gets messy in my blueprint fast)

  2. I would like to use the data table to assign specific cards to different players. example, Card X can only be drawn by Player 1. Previously i have made separate switches for player 1 and 2 but this also gets messy fast.

i’m including some screen shots to help clarify.

So this is my switch on Enum system. This gets very messy and is very clunky to edit. In the NewMacro_1 I choose a random int in range based on the player level. If i was to add a new card to the list i would have to change all the values.

I’m using a set name that casts to the player character to Choose the card in the Data table. This works “fine” everytime i add a card i have to type in the name of the Row it’s placed in. I would like this to be automated. So when i add a new card to the Data table it sets the correct name.

This is my card data table. I use it to determine which Widgets that needs to be displayed.

Here is the table. Any suggestions on how to make this system better is greatly appreciated. I’m about to add like 100 new cards and would like the system to be ready for the influx.