feat: improve silence and unsilence feedback for mobs in NametagEntityListener
This commit is contained in:
1 parent
98dc59ca15
commit
961a22beac
1 file changed
+20
-3
+20
-3
@@ -4,6 +4,7 @@ import eu.mhsl.craftattack.spawn.core.appliance.ApplianceListener;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.format.NamedTextColor;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.player.PlayerInteractEntityEvent;
|
||||
import org.bukkit.inventory.EquipmentSlot;
|
||||
@@ -30,23 +31,39 @@ public class NametagEntityListener extends ApplianceListener<SilenceNametag> {
|
||||
PersistentDataType.INTEGER
|
||||
)) return;
|
||||
|
||||
Entity mob = event.getRightClicked();
|
||||
|
||||
if (getAppliance().getNametagAction(item) == SilenceNametag.NametagActions.SILENCE) {
|
||||
if(mob.isSilent()) {
|
||||
event.getPlayer().sendMessage(
|
||||
Component.text("Der Mob ist bereits verstummt.")
|
||||
.color(NamedTextColor.RED)
|
||||
);
|
||||
return;
|
||||
}
|
||||
System.out.println("Silencing mob");
|
||||
event.getRightClicked().setSilent(true);
|
||||
mob.setSilent(true);
|
||||
event.getPlayer().sendMessage(
|
||||
Component.text("Der Mob wurde verstummt.")
|
||||
.color(NamedTextColor.GREEN)
|
||||
);
|
||||
} else if (getAppliance().getNametagAction(item) == SilenceNametag.NametagActions.UNSILENCE) {
|
||||
if (!mob.isSilent()) {
|
||||
event.getPlayer().sendMessage(
|
||||
Component.text("Der Mob ist bereits entstummt.")
|
||||
.color(NamedTextColor.RED)
|
||||
);
|
||||
return;
|
||||
}
|
||||
System.out.println("Unsilencing mob");
|
||||
event.getRightClicked().setSilent(false);
|
||||
mob.setSilent(false);
|
||||
event.getPlayer().sendMessage(
|
||||
Component.text("Der Mob wurde entstummt.")
|
||||
.color(NamedTextColor.GREEN)
|
||||
);
|
||||
}
|
||||
|
||||
if (item.getItemMeta().customName() == null){
|
||||
if (item.getItemMeta().customName() == null && event.getPlayer().getGameMode() != org.bukkit.GameMode.CREATIVE) {
|
||||
System.out.println("Nametag has no custom name, reducing amount");
|
||||
item.setAmount(item.getAmount() - 1);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user