mirror of
https://github.com/CitizensDev/Citizens2.git
synced 2024-09-28 23:27:40 +02:00
Add --eid option to /npc remove
This commit is contained in:
parent
a360810e8d
commit
f9b0397cab
@ -1406,7 +1406,7 @@ public class NPCCommands {
|
||||
|
||||
@Command(
|
||||
aliases = { "npc" },
|
||||
usage = "remove|rem (all|id|name|--owner [owner])",
|
||||
usage = "remove|rem (all|id|name| --owner [owner] | --eid [entity uuid])",
|
||||
desc = "Remove a NPC",
|
||||
modifiers = { "remove", "rem" },
|
||||
min = 1,
|
||||
@ -1424,6 +1424,17 @@ public class NPCCommands {
|
||||
Messaging.sendTr(sender, Messages.NPCS_REMOVED);
|
||||
return;
|
||||
}
|
||||
if (args.hasValueFlag("eid")) {
|
||||
Entity entity = Bukkit.getServer().getEntity(UUID.fromString(args.getFlag("eid")));
|
||||
if (entity != null && (npc = CitizensAPI.getNPCRegistry().getNPC(entity)) != null) {
|
||||
npc.destroy();
|
||||
Messaging.sendTr(sender, Messages.NPC_REMOVED, npc.getName());
|
||||
return;
|
||||
} else {
|
||||
Messaging.sendErrorTr(sender, Messages.NPC_NOT_FOUND);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (args.argsLength() == 2) {
|
||||
if (args.getString(1).equalsIgnoreCase("all")) {
|
||||
if (!sender.hasPermission("citizens.admin.remove.all") && !sender.hasPermission("citizens.admin"))
|
||||
|
@ -75,7 +75,6 @@ public class TabListRemover {
|
||||
}
|
||||
|
||||
private PlayerEntry getEntry(Player player) {
|
||||
|
||||
PlayerEntry entry = pending.get(player.getUniqueId());
|
||||
if (entry == null) {
|
||||
entry = new PlayerEntry(player);
|
||||
@ -114,12 +113,10 @@ public class TabListRemover {
|
||||
private class Sender implements Runnable {
|
||||
@Override
|
||||
public void run() {
|
||||
|
||||
int maxPacketEntries = Settings.Setting.MAX_PACKET_ENTRIES.asInt();
|
||||
|
||||
Iterator<Map.Entry<UUID, PlayerEntry>> entryIterator = pending.entrySet().iterator();
|
||||
while (entryIterator.hasNext()) {
|
||||
|
||||
Map.Entry<UUID, PlayerEntry> mapEntry = entryIterator.next();
|
||||
PlayerEntry entry = mapEntry.getValue();
|
||||
|
||||
@ -142,8 +139,9 @@ public class TabListRemover {
|
||||
i++;
|
||||
}
|
||||
|
||||
if (entry.player.isOnline())
|
||||
if (entry.player.isOnline()) {
|
||||
NMS.sendTabListRemove(entry.player, skinnableList);
|
||||
}
|
||||
|
||||
// notify skin trackers that a remove packet has been sent to a player
|
||||
for (SkinnableEntity entity : skinnableList) {
|
||||
|
Loading…
Reference in New Issue
Block a user