Load/Unload level creates multiple of the same actors

Hey so I have a SmoothOpenLevel function which unloads the current level and loads the new level and when I call this multiple times opening the same map (eg. open game map, open menu map, then open back game map), all of my actors form duplicates of one another.

Like this:

Does anyone know how to fix this, please can someone help, thank you.