From b9f8fc2e111b07f8ca2792fd7aae220a2fe93f99 Mon Sep 17 00:00:00 2001 From: kakd <33491458+kakd@users.noreply.github.com> Date: Wed, 27 May 2020 03:58:54 -0500 Subject: [PATCH] Option to send coordinate after death (#3207) --- .../com/earth2me/essentials/EssentialsEntityListener.java | 5 +++++ Essentials/src/com/earth2me/essentials/ISettings.java | 2 ++ Essentials/src/com/earth2me/essentials/Settings.java | 5 +++++ Essentials/src/config.yml | 3 +++ Essentials/src/messages.properties | 1 + 5 files changed, 16 insertions(+) diff --git a/Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java b/Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java index c14becb62..bad908628 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsEntityListener.java @@ -1,6 +1,7 @@ package com.earth2me.essentials; import net.ess3.api.IEssentials; +import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.entity.*; import org.bukkit.event.EventHandler; @@ -145,6 +146,10 @@ public class EssentialsEntityListener implements Listener { return; } final User user = ess.getUser(event.getEntity()); + if (ess.getSettings().infoAfterDeath()) { + final Location loc = user.getLocation(); + user.sendMessage(tl("infoAfterDeath", loc.getWorld().getName(), loc.getBlockX(), loc.getBlockY(), loc.getBlockZ())); + } if (user.isAuthorized("essentials.back.ondeath") && !ess.getSettings().isCommandDisabled("back")) { user.setLastLocation(); user.sendMessage(tl("backAfterDeath")); diff --git a/Essentials/src/com/earth2me/essentials/ISettings.java b/Essentials/src/com/earth2me/essentials/ISettings.java index 7a91de7e8..d16d33195 100644 --- a/Essentials/src/com/earth2me/essentials/ISettings.java +++ b/Essentials/src/com/earth2me/essentials/ISettings.java @@ -358,4 +358,6 @@ public interface ISettings extends IConf { boolean isSpawnIfNoHome(); + boolean infoAfterDeath(); + } diff --git a/Essentials/src/com/earth2me/essentials/Settings.java b/Essentials/src/com/earth2me/essentials/Settings.java index 5f1551685..5dcfc44fb 100644 --- a/Essentials/src/com/earth2me/essentials/Settings.java +++ b/Essentials/src/com/earth2me/essentials/Settings.java @@ -1684,4 +1684,9 @@ public class Settings implements net.ess3.api.ISettings { public boolean isSpawnIfNoHome() { return config.getBoolean("spawn-if-no-home", true); } + + @Override + public boolean infoAfterDeath() { + return config.getBoolean("send-info-after-death", false); + } } diff --git a/Essentials/src/config.yml b/Essentials/src/config.yml index e2b2a8a11..95ac25050 100644 --- a/Essentials/src/config.yml +++ b/Essentials/src/config.yml @@ -459,6 +459,9 @@ broadcast-afk-message: true # You can disable the death messages of Minecraft here. death-messages: true +# When players die, should they receive the coordinates they died at? +send-info-after-death: false + # Should players with permissions be able to join and part silently? # You can control this with essentials.silentjoin and essentials.silentquit permissions if it is enabled. # In addition, people with essentials.silentjoin.vanish will be vanished on join. diff --git a/Essentials/src/messages.properties b/Essentials/src/messages.properties index 20e714221..60ca02768 100644 --- a/Essentials/src/messages.properties +++ b/Essentials/src/messages.properties @@ -189,6 +189,7 @@ ignoredList=\u00a76Ignored\:\u00a7r {0} ignoreExempt=\u00a74You may not ignore that player. ignorePlayer=\u00a76You ignore player\u00a7c {0} \u00a76from now on. illegalDate=Illegal date format. +infoAfterDeath=\u00a76You died in \u00a7e{0} \u00a76at \u00a7e{1}, {2}, {3}\u00a76. infoChapter=\u00a76Select chapter\: infoChapterPages=\u00a7e ---- \u00a76{0} \u00a7e--\u00a76 Page \u00a7c{1}\u00a76 of \u00a7c{2} \u00a7e---- infoPages=\u00a7e ---- \u00a76{2} \u00a7e--\u00a76 Page \u00a7c{0}\u00a76/\u00a7c{1} \u00a7e----