Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: This feature may not be available in some browsers.
public class MyPlugin extends JavaPlugin implements Listener {
private final Map<UUID, Location> lastPlayerLocation = new HashMap<>();
@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
getCommand("back").setExecutor(this);
}
public Optional<Location> findLastPlayerLocation(Player player) {
Location location = lastPlayerLocation.get(player.getUniqueId());
return location == null ? Optional.empty() : Optional.of(location);
}...
Можешь пример привести кода?Сохраняй в памяти предыдущую локацию игрока и при необходимости телепортируй на неё.
Отследить телепортацию игрока можешь черезАвторизуйтесь для просмотра ссылок.
public class MyPlugin extends JavaPlugin implements Listener {
private final Map<UUID, Location> lastPlayerLocation = new HashMap<>();
@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
getCommand("back").setExecutor(this);
}
public Optional<Location> findLastPlayerLocation(Player player) {
Location location = lastPlayerLocation.get(player.getUniqueId());
return location == null ? Optional.empty() : Optional.of(location);
}
public void saveLastPlayerLocation(Player player, Location location) {
lastPlayerLocation.put(player.getUniqueId, location);
}
@EventHandler
public void onPlayerQuit(PlayerQuitEvent e) {
lastPlayerLocation.remove(e.getPlayer().getUniqueId());
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if (sender instanceof Player p) {
findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
}
}
}
нужно в конце getUniqueId() добавить ()flaweoff, у меня возникла проблема не большаяВам необходимо зарегистрироваться для просмотра изображений-вложений
Объединено
Все ли правильно я сделал?
Спасибо , теперь вопрос , что тут не так?
if (args[0].equals("spy") && args[1].equals("off")) {
if (sender instanceof Player p) {
findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
if (args[0].equals("spy") && args[1].equals("off")) {
if (sender instanceof Player p) {
findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
Спасибо , не знал как
Объединено
Java:if (args[0].equals("spy") && args[1].equals("off")) { if (sender instanceof Player p) { findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location), p.sendMessage("Последняя локация не найдена")); sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись."); player.setGameMode(GameMode.SURVIVAL); } return true; }
if (args[0].equalsIgnoreCase("spy") && args[1].equalsIgnoreCase("off")) {
if (sender instanceof Player p) {
findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
1 игнорирует написание (Off, OFF, OFf и т.д)Вопрос , а чем отличается
equalsIgnoreCase
от
equals
Все равно показывает ошибки
Вам необходимо зарегистрироваться для просмотра изображений-вложений
if (args[0].equalsIgnoreCase("spy") && args[1].equalsIgnoreCase("off")) {
if (sender instanceof Player) {
Player p = (Player) sender;
findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
Все равно показывает ошибки
Вам необходимо зарегистрироваться для просмотра изображений-вложений
if (args[0].equalsIgnoreCase("spy") && args[1].equalsIgnoreCase("off")) {
if (sender instanceof Player) {
Player p = (Player) sender;
findLastPlayerLocation(p.getUniqueId()).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
наведи на ошибку покажи что пишетВот такая чебурашка тутВам необходимо зарегистрироваться для просмотра изображений-вложений
покажи весь код класса commandCannot resolve method 'findLastPlayerLocation' in 'command'
Cannot resolve method 'findLastPlayerLocation' in 'command'
if (args[0].equalsIgnoreCase("spy") && args[1].equalsIgnoreCase("off")) {
if (sender instanceof Player) {
Player p = (Player) sender;
teleport.findLastPlayerLocation(p).ifPresentOrElse(location -> p.teleport(location),
p.sendMessage("Последняя локация не найдена"));
sender.sendMessage(prefix + " &7Слежка за игроком деактивирована! Не забудьте сохранить запись.");
player.setGameMode(GameMode.SURVIVAL);
}
return true;
}
Мы используем основные cookies для обеспечения работы этого сайта, а также дополнительные cookies для обеспечения максимального удобства пользователя.
Посмотрите дополнительную информацию и настройте свои предпочтения