fix: update lore text for silence nametag and improve nullability handling
This commit is contained in:
1 parent
0f415b9aba
commit
167ed811b6
2 files changed
+8
-10
No files matched your search
+4
-7
@@ -1,16 +1,12 @@
|
|||||||
package eu.mhsl.craftattack.spawn.craftattack.appliances.gameplay.silenceNametag;
|
package eu.mhsl.craftattack.spawn.craftattack.appliances.gameplay.silenceNametag;
|
||||||
|
|
||||||
import eu.mhsl.craftattack.spawn.core.appliance.ApplianceListener;
|
import eu.mhsl.craftattack.spawn.core.appliance.ApplianceListener;
|
||||||
import net.kyori.adventure.text.Component;
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.inventory.PrepareAnvilEvent;
|
import org.bukkit.event.inventory.PrepareAnvilEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.view.AnvilView;
|
import org.bukkit.inventory.view.AnvilView;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class NametagAnvilListener extends ApplianceListener<SilenceNametag> {
|
public class NametagAnvilListener extends ApplianceListener<SilenceNametag> {
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onAnvilRename(PrepareAnvilEvent event){
|
public void onAnvilRename(PrepareAnvilEvent event){
|
||||||
@@ -22,10 +18,11 @@ public class NametagAnvilListener extends ApplianceListener<SilenceNametag> {
|
|||||||
ItemStack inputItem = anvilView.getItem(0);
|
ItemStack inputItem = anvilView.getItem(0);
|
||||||
if(inputItem == null || inputItem.getType() != Material.NAME_TAG) return;
|
if(inputItem == null || inputItem.getType() != Material.NAME_TAG) return;
|
||||||
|
|
||||||
|
String renameText = anvilView.getRenameText();
|
||||||
|
|
||||||
if(!SilenceNametag.muteString.equals(anvilView.getRenameText())
|
if(!SilenceNametag.muteString.equals(renameText)
|
||||||
&& !SilenceNametag.unmuteString.equals(anvilView.getRenameText())) return;
|
&& !SilenceNametag.unmuteString.equals(renameText)) return;
|
||||||
|
|
||||||
event.setResult(this.getAppliance().createSilenceNametag(resultItem, anvilView.getRenameText()));
|
event.setResult(this.getAppliance().createSilenceNametag(resultItem, renameText));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+4
-3
@@ -7,6 +7,7 @@ import org.bukkit.event.Listener;
|
|||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.persistence.PersistentDataType;
|
import org.bukkit.persistence.PersistentDataType;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -37,9 +38,9 @@ public class SilenceNametag extends Appliance {
|
|||||||
item.editMeta(meta -> {
|
item.editMeta(meta -> {
|
||||||
List<Component> lore = meta.hasLore() ? new ArrayList<>(meta.lore()) : new ArrayList<>();
|
List<Component> lore = meta.hasLore() ? new ArrayList<>(meta.lore()) : new ArrayList<>();
|
||||||
if(action == NametagActions.SILENCE) {
|
if(action == NametagActions.SILENCE) {
|
||||||
lore.add(Component.text("Dieses Namensschild verstummt Mobs."));
|
lore.add(Component.text("Dieser Name Tag verstummt Mobs."));
|
||||||
} else if (action == NametagActions.UNSILENCE){
|
} else if (action == NametagActions.UNSILENCE){
|
||||||
lore.add(Component.text("Dieses Namensschild entstummt Mobs."));
|
lore.add(Component.text("Dieser Name Tag entstummt Mobs."));
|
||||||
}
|
}
|
||||||
meta.customName(null);
|
meta.customName(null);
|
||||||
meta.lore(lore);
|
meta.lore(lore);
|
||||||
@@ -47,7 +48,7 @@ public class SilenceNametag extends Appliance {
|
|||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
NametagActions getNametagAction(ItemStack item) {
|
@Nullable NametagActions getNametagAction(ItemStack item) {
|
||||||
Objects.requireNonNull(item, "item must not be null");
|
Objects.requireNonNull(item, "item must not be null");
|
||||||
return item.getPersistentDataContainer().get(nametagActionKey, PersistentDataType.INTEGER) == null
|
return item.getPersistentDataContainer().get(nametagActionKey, PersistentDataType.INTEGER) == null
|
||||||
? null
|
? null
|
||||||
|
|||||||
Reference in new issue
Block a user