Для реализации телепортации игрока из одного мира в другой с возвратом в исходную точку, вы можете использовать плагин, такой как EssentialsX, который позволяет легко управлять телепортацией. Однако, если вы хотите реализовать это с помощью команд, вам нужно будет использовать командные блоки или скрипты.
Вот примерный алгоритм, как это можно сделать:
1. Сохраните текущее местоположение игрока перед телепортацией.
2. Телепортируйте игрока в мир
spawn.
3. Создайте команду или механизм, который вернет игрока обратно в сохраненное местоположение в мире
world.
Если вы используете плагин, вот пример на Java, который может помочь:
public class TeleportListener implements Listener {
private final Map<UUID, Location> playerLocations = new HashMap<>();
@EventHandler
public void onPlayerTeleport(PlayerTeleportEvent event) {
Player player = event.getPlayer();
if (event.getTo().getWorld().getName().equals("spawn")) {
// Сохраните текущее местоположение игрока
playerLocations.put(player.getUniqueId(), event.getFrom());
// Телепортируйте игрока в нужное место в мире spawn
Location spawnLocation = new Location(Bukkit.getWorld("spawn"), x, y, z); // Замените x, y, z на нужные координаты
player.teleport(spawnLocation);
}
}
public void teleportBack(Player player) {
if (playerLocations.containsKey(player.getUniqueId())) {
Location returnLocation = playerLocations.get(player.getUniqueId());
player.teleport(returnLocation);
playerLocations.remove(player.getUniqueId());
}
}
}
Не забудьте зарегистрировать слушателя в вашем плагине и вызвать
teleportBack в нужный момент, когда хотите вернуть игрока обратно.
Если вам нужно сделать это без плагинов, то вам придется использовать командные блоки и систему редстоуна для хранения координат и телепортации.