Помогите [Решено] Как указать игроку (-ам) (или команде игроков scoreboard) место возрождения?

Статус
Закрыто для дальнейших ответов.
player.setBedSpawnLocation(loc);
Если не ошибаюсь
 
Ну, понятно что можно взять игроков в команде и каждому из них установить точку спавна.
Вариант в принципе нормальный, но хотелось бы знать, можно установить именно сразу точку спавна для всей команды.
 
Ну, понятно что можно взять игроков в команде и каждому из них установить точку спавна.
Вариант в принципе нормальный, но хотелось бы знать, можно установить именно сразу точку спавна для всей команды.
PlayerDeathEvent
 
Можете не много мысль изложить ? А то чёт не догнал до конца.
smirk.gif
 
Правильнее будет поставить здоровье на 20 и тепешнуть на то место
Почему правильней? (типо быстрей и менее ресурсо затратно?)
Но я так понимаю придётся в ручную дропать инвентарь?

1. Поймал ивент смерти
2. Проверил группу
3. Установил точку спавна
О как, а я так понял установить точку спавна так player.setBedSpawnLocation(loc); ?

Но здесь нет такого метода http://joxi.ru/J2blWvzu4pDp5r
(на скрине ошибка. Вместо PlayerDeathEvent(PlayerDeathEvent player) ==
PlayerDeathEvent(Player player) )

или надо Player p = player?
p.setBedSpawnLocation(loc);
 
Последнее редактирование:
Ну если тебе надо дропать инвертарь, то можешь и не делать этого.
Дропать инвентарь надо. PvP всё таки и если будет прям около респавна, то будет сложновато убить. По этому откажусь, но запомню такой вариант)
 
Java:
    @EventHandler
    public void onRespawn(PlayerRespawnEvent event) {
        Player p = event.getPlayer();
     
        ScoreboardManager sm = Bukkit.getScoreboardManager();
     
        if (sm.getNewScoreboard().getTeam("RED").hasPlayer(p)) {
            Location loc = p.getLocation();
            event.setRespawnLocation(loc.add(100, 0, 0));
        }else{
            return;
        }
    }
 
Java:
    @EventHandler
    public void onRespawn(PlayerRespawnEvent event) {
        Player p = event.getPlayer();
    
        ScoreboardManager sm = Bukkit.getScoreboardManager();
    
        if (sm.getNewScoreboard().getTeam("RED").hasPlayer(p)) {
            Location loc = p.getLocation();
            event.setRespawnLocation(loc.add(100, 0, 0));
        }else{
            return;
        }
    }
Спасибо! Переделаю под себя.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх