Send death message with respawn timer on player death

Players now receive a formatted message indicating their death and the respawn time remaining. This enhances feedback and improves the overall player experience.
This commit is contained in:
Teriuihi 2025-02-09 22:12:50 +01:00
parent dbcbb10079
commit 5f2fb8fe0a

View File

@ -9,6 +9,7 @@ import com.alttd.ctf.team.TeamPlayer;
import com.github.yannicklamprecht.worldborder.api.WorldBorderApi;
import lombok.extern.slf4j.Slf4j;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@ -60,6 +61,9 @@ public class OnPlayerDeath implements Listener {
}
TeamPlayer teamPlayer = optionalTeamPlayer.get();
event.setRespawnLocation(player.getWorld().getSpawnLocation());
player.sendRichMessage("<red>You died</red><nl><green>You will respawn in <seconds> seconds.</green>",
Placeholder.component("nl", Component.newline()),
Placeholder.parsed("seconds", String.valueOf(GameConfig.RESPAWN.TIME)));
Bukkit.getScheduler().runTaskLater(main, () -> teamPlayer.getGameClass().apply(teamPlayer, worldBorderApi, gamePhase.get(), true), GameConfig.RESPAWN.TIME * 20L);//10 x 20 ticks aka 10 seconds
}