Unable to set actor variable in blueprint outside instance

Another approach is to make the waypoint and the gem one actor:

Player hits the gem and gets teleported to the waypoint arrow; this way we need no (hard) references whatsoever and no script in the player - it’s going to be a busy class anyway.

You can manipulate the location of the gem / waypoint arrow / actor freely. You can even set world transforms to absolute if that’s more convenient.