diff --git a/src/main/java/de/shiewk/smoderation/punishments/Punishment.java b/src/main/java/de/shiewk/smoderation/punishments/Punishment.java index f9c7ea8..614893c 100644 --- a/src/main/java/de/shiewk/smoderation/punishments/Punishment.java +++ b/src/main/java/de/shiewk/smoderation/punishments/Punishment.java @@ -8,6 +8,7 @@ import de.shiewk.smoderation.util.TimeUtil; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; import org.jetbrains.annotations.NotNull; import java.nio.ByteBuffer; @@ -91,6 +92,18 @@ public class Punishment { Bukkit.getPluginManager().callEvent(event); if (!event.isCancelled()){ container.add(punishment); + punishment.firstIssue(); + } + } + + private void firstIssue(){ + switch (type) { + case MUTE, BAN -> { + final CommandSender sender = PlayerUtil.senderByUUID(to); + if (sender != null) { + sender.sendMessage(playerMessage()); + } + } } } diff --git a/src/main/java/de/shiewk/smoderation/util/PlayerUtil.java b/src/main/java/de/shiewk/smoderation/util/PlayerUtil.java index 8888e9f..a4c2f62 100644 --- a/src/main/java/de/shiewk/smoderation/util/PlayerUtil.java +++ b/src/main/java/de/shiewk/smoderation/util/PlayerUtil.java @@ -2,6 +2,7 @@ package de.shiewk.smoderation.util; import org.bukkit.Bukkit; import org.bukkit.OfflinePlayer; +import org.bukkit.command.CommandSender; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -29,4 +30,12 @@ public abstract class PlayerUtil { } } + public static @Nullable CommandSender senderByUUID(@NotNull UUID uid){ + if (uid.equals(UUID_CONSOLE)){ + return Bukkit.getConsoleSender(); + } else { + return Bukkit.getPlayer(uid); + } + } + } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 415887f..f9f0dad 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -5,20 +5,20 @@ api-version: '1.20' load: STARTUP commands: mute: - usage: /mute + usage: "§cUsage: /mute " aliases: - smodmute permission: smod.mute description: Mutes a player, either temporarily or permanently. ban: - usage: /ban + usage: "§cUsage: /ban " aliases: - smodban - tempban permission: smod.ban description: Bans a player, either temporarily or permanently. kick: - usage: /kick + usage: "§cUsage: /kick " aliases: - smodkick permission: smod.kick