From 8971755bf015b02af20b16a11a00ba9757b2f702 Mon Sep 17 00:00:00 2001 From: BONNe Date: Tue, 16 Mar 2021 21:34:53 +0200 Subject: [PATCH] Expose BentoBox 1.14 onRespawnCommands (#14) * Expose BentoBox 1.14 onRespawnCommands BentoBoxWorld/BentoBox#1719 * Update Settings.java --- .../java/world/bentobox/boxed/Settings.java | 32 +++++++++++++++++++ src/main/resources/config.yml | 14 ++++++++ 2 files changed, 46 insertions(+) diff --git a/src/main/java/world/bentobox/boxed/Settings.java b/src/main/java/world/bentobox/boxed/Settings.java index 9e4ec97..9e8705c 100644 --- a/src/main/java/world/bentobox/boxed/Settings.java +++ b/src/main/java/world/bentobox/boxed/Settings.java @@ -422,6 +422,21 @@ public class Settings implements WorldSettings { @ConfigEntry(path = "area.commands.on-leave") private List onLeaveCommands = new ArrayList<>(); + @ConfigComment("List of commands that should be executed when the player respawns after death if Flags.ISLAND_RESPAWN is true.") + @ConfigComment("These commands are run by the console, unless otherwise stated using the [SUDO] prefix,") + @ConfigComment("in which case they are executed by the player.") + @ConfigComment("") + @ConfigComment("Available placeholders for the commands are the following:") + @ConfigComment(" * [name]: name of the player") + @ConfigComment("") + @ConfigComment("Here are some examples of valid commands to execute:") + @ConfigComment(" * '[SUDO] bbox version'") + @ConfigComment(" * 'bsbadmin deaths set [player] 0'") + @ConfigComment("") + @ConfigComment("Note that player-executed commands might not work, as these commands can be run with said player being offline.") + @ConfigEntry(path = "area.commands.on-respawn", since = "1.14.0") + private List onRespawnCommands = new ArrayList<>(); + // Sethome @ConfigComment("Allow setting home in the nether. Only available on nether areas, not vanilla nether.") @ConfigEntry(path = "area.sethome.nether.allow") @@ -1326,6 +1341,23 @@ public class Settings implements WorldSettings { this.onLeaveCommands = onLeaveCommands; } + /** + * @return the onRespawnCommands + */ + @Override + public List getOnRespawnCommands() { + return onRespawnCommands; + } + + /** + * Sets on respawn commands. + * + * @param onRespawnCommands the on respawn commands + */ + public void setOnRespawnCommands(List onRespawnCommands) { + this.onRespawnCommands = onRespawnCommands; + } + /** * @return the onJoinResetHealth */ diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index b2a23ca..5ed2397 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -445,6 +445,20 @@ area: # # Note that player-executed commands might not work, as these commands can be run with said player being offline. on-leave: [] + # Returns a list of commands that should be executed when the player respawns after death if Flags.ISLAND_RESPAWN is true. + # These commands are run by the console, unless otherwise stated using the [SUDO] prefix, + # in which case they are executed by the player. + # + # Available placeholders for the commands are the following: + # * [name]: name of the player + # + # Here are some examples of valid commands to execute: + # * '[SUDO] bbox version' + # * 'bsbadmin deaths set [player] 0' + # + # Note that player-executed commands might not work, as these commands can be run with said player being offline. + # Added since 1.14.0. + on-respawn: [] sethome: nether: # Allow setting home in the nether. Only available on nether areas, not vanilla nether.