I found that
queue_free() also works.
On a side note it also tried
get_parent().queue_free() and that just deletes everything in your parent node. For me that was everything on the screen.
My new code now looks like this:
elif flash_opacity < 0:
flash_times -= 1
if flash_times == 0: # The number of times to flash has ended so kill the node
flash_player_buttons = false
# get_parent().remove_child(self) # this also works
flash_up = true