void performTeleport(Player player, Location to, PortalPlayerSession ps, MVDestination d) {
if (!plugin.getCore().getMVConfig().getEnforceAccess() || (d.getRequiredPermission() == null)
|| (d.getRequiredPermission().length() == 0) || player.hasPermission(d.getRequiredPermission())) {
SafeTTeleporter playerTeleporter = this.plugin.getCore().getSafeTTeleporter();
TeleportResult result = playerTeleporter.safelyTeleport(player, player, d);
if (result == TeleportResult.SUCCESS) {
ps.playerDidTeleport(to);
ps.setTeleportTime(new Date());
this.stateSuccess(player.getDisplayName(), d.getName());
return;