aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java
diff options
context:
space:
mode:
authorCow <cow@volloeko.de>2020-05-29 12:30:31 +0200
committerCow <cow@volloeko.de>2020-05-29 12:30:31 +0200
commitb9d6b75423ea24c4947b3a655f199c3b34aa167a (patch)
tree7df92efa2a2c4533326e9f37e9062db08cc13e51 /src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java
parent4d45e0bc9afacc8408295aef50b8fd6530f97104 (diff)
downloadCowlection-b9d6b75423ea24c4947b3a655f199c3b34aa167a.tar.gz
Cowlection-b9d6b75423ea24c4947b3a655f199c3b34aa167a.tar.bz2
Cowlection-b9d6b75423ea24c4947b3a655f199c3b34aa167a.zip
Added /moo stalkskyblock <playerName>
- Now using CommandExceptions instead of just red chat color for command error messages - Simplified creation of chat message
Diffstat (limited to 'src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java')
-rw-r--r--src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java b/src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java
new file mode 100644
index 0000000..589ada6
--- /dev/null
+++ b/src/main/java/eu/olli/cowmoonication/command/exception/ThrowingConsumer.java
@@ -0,0 +1,25 @@
+package eu.olli.cowmoonication.command.exception;
+
+import eu.olli.cowmoonication.Cowmoonication;
+import net.minecraft.command.CommandException;
+import net.minecraft.util.ChatComponentTranslation;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.IChatComponent;
+
+import java.util.function.Consumer;
+
+@FunctionalInterface
+public interface ThrowingConsumer<T> extends Consumer<T> {
+ @Override
+ default void accept(T t) {
+ try {
+ acceptThrows(t);
+ } catch (CommandException e) {
+ IChatComponent errorMsg = new ChatComponentTranslation(e.getMessage(), e.getErrorObjects());
+ errorMsg.getChatStyle().setColor(EnumChatFormatting.RED);
+ Cowmoonication.getInstance().getChatHelper().sendMessage(errorMsg);
+ }
+ }
+
+ void acceptThrows(T t) throws CommandException;
+}