I thought that was the objective. Why did you get confused when it wasn’t being destroyed every time if that’s not the case?
You can still implement it the way you want though. Just store the random bool result inside a variable (set it after your custom event) and use that variable to determine whether the enemy should be destroyed or not (place this logic after the begin overlap node where the destroy node is, like I’ve shown)
The Cast To node would be obsolete in this case, since we’re feeding the actor into the node’s input pin and taking it out of it’s output pin.