From 58e87575aa64d81fa11cbdfa1a364883ddd06f11 Mon Sep 17 00:00:00 2001 From: Business Goose Date: Thu, 31 Mar 2022 02:14:53 +0100 Subject: [PATCH] Add getting other player's uuids via the uuid command --- .../commands/Command_uuid.java | 155 +++++++++--------- src/main/resources/plugin.yml | 22 ++- 2 files changed, 92 insertions(+), 85 deletions(-) diff --git a/src/main/java/me/StevenLawson/TotalFreedomMod/commands/Command_uuid.java b/src/main/java/me/StevenLawson/TotalFreedomMod/commands/Command_uuid.java index e34a65a..804c398 100644 --- a/src/main/java/me/StevenLawson/TotalFreedomMod/commands/Command_uuid.java +++ b/src/main/java/me/StevenLawson/TotalFreedomMod/commands/Command_uuid.java @@ -1,105 +1,108 @@ package me.StevenLawson.TotalFreedomMod.commands; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.UUID; import me.StevenLawson.TotalFreedomMod.admin.Admin; import me.StevenLawson.TotalFreedomMod.admin.AdminList; +import me.StevenLawson.TotalFreedomMod.manager.UUIDManager; +import me.StevenLawson.TotalFreedomMod.manager.UUIDManager.TFM_UuidResolver; import me.StevenLawson.TotalFreedomMod.player.Player; import me.StevenLawson.TotalFreedomMod.player.PlayerList; -import me.StevenLawson.TotalFreedomMod.player.UUIDManager; -import me.StevenLawson.TotalFreedomMod.player.UUIDManager.TFM_UuidResolver; +import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; -import java.util.*; - @CommandPermissions(level = AdminLevel.SENIOR, source = SourceType.ONLY_CONSOLE) public class Command_uuid extends FreedomCommand { - @Override - public boolean run(CommandSender sender, org.bukkit.entity.Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - if (args.length != 1) { - return false; - } - if ("purge".equals(args[0])) { - playerMsg(sender, "Purged " + UUIDManager.purge() + " cached UUIDs."); - return true; - } + @Override + public boolean run(CommandSender sender, org.bukkit.entity.Player sender_p, Command cmd, + String commandLabel, String[] args, boolean senderIsConsole) { + if (args.length != 1) { + return false; + } - if ("recalculate".equals(args[0])) - { - playerMsg(sender, "Recalculating UUIDs..."); + if ("purge".equals(args[0])) { + playerMsg(sender, "Purged " + UUIDManager.purge() + " cached UUIDs."); + return true; + } - // Playerlist uuids - final Set players = PlayerList.getAllPlayers(); - final List names = new ArrayList(); + if ("recalculate".equals(args[0])) { + playerMsg(sender, "Recalculating UUIDs..."); - for (Player player : players) - { - names.add(player.getLastLoginName()); - } + // Playerlist uuids + final Set players = PlayerList.getAllPlayers(); + final List names = new ArrayList(); - final Map playerUuids = new TFM_UuidResolver(names).call(); + for (Player player : players) { + names.add(player.getLastLoginName()); + } - int updated = 0; - for (String name : playerUuids.keySet()) - { - for (Player player : players) - { - if (!player.getLastLoginName().equalsIgnoreCase(name)) - { - continue; - } + final Map playerUuids = new TFM_UuidResolver(names).call(); - if (player.getUniqueId().equals(playerUuids.get(name))) - { - continue; - } + int updated = 0; + for (String name : playerUuids.keySet()) { + for (Player player : players) { + if (!player.getLastLoginName().equalsIgnoreCase(name)) { + continue; + } - PlayerList.setUniqueId(player, playerUuids.get(name)); - UUIDManager.rawSetUUID(name, playerUuids.get(name)); - updated++; - break; - } - } + if (player.getUniqueId().equals(playerUuids.get(name))) { + continue; + } - playerMsg(sender, "Recalculated " + updated + " player UUIDs"); - names.clear(); + PlayerList.setUniqueId(player, playerUuids.get(name)); + UUIDManager.rawSetUUID(name, playerUuids.get(name)); + updated++; + break; + } + } - // Adminlist UUIDs - final Set admins = AdminList.getAllAdmins(); - for (Admin admin : admins) - { - names.add(admin.getLastLoginName()); - } + playerMsg(sender, "Recalculated " + updated + " player UUIDs"); + names.clear(); - final Map adminUuids = new TFM_UuidResolver(names).call(); + // Adminlist UUIDs + final Set admins = AdminList.getAllAdmins(); + for (Admin admin : admins) { + names.add(admin.getLastLoginName()); + } - updated = 0; - for (String name : adminUuids.keySet()) - { - for (Admin admin : admins) - { - if (!admin.getLastLoginName().equalsIgnoreCase(name)) - { - continue; - } + final Map adminUuids = new TFM_UuidResolver(names).call(); - if (admin.getUniqueId().equals(adminUuids.get(name))) - { - continue; - } + updated = 0; + for (String name : adminUuids.keySet()) { + for (Admin admin : admins) { + if (!admin.getLastLoginName().equalsIgnoreCase(name)) { + continue; + } - AdminList.setUuid(admin, admin.getUniqueId(), adminUuids.get(name)); - UUIDManager.rawSetUUID(name, adminUuids.get(name)); - updated++; - break; - } - } + if (admin.getUniqueId().equals(adminUuids.get(name))) { + continue; + } - playerMsg(sender, "Recalculated " + updated + " admin UUIDs"); + AdminList.setUuid(admin, admin.getUniqueId(), adminUuids.get(name)); + UUIDManager.rawSetUUID(name, adminUuids.get(name)); + updated++; + break; + } + } - return true; - } + playerMsg(sender, "Recalculated " + updated + " admin UUIDs"); - return false; - } + return true; + } + + org.bukkit.entity.Player player = Bukkit.getPlayer(args[0]); + + if (player != null) { + playerMsg(sender, String.format("%s's UUID is %s", player.getName(), + player.getUniqueId().toString())); + return true; + } + + return false; + } } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 394ebe9..351d371 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -2,8 +2,8 @@ name: TotalFreedomMod main: me.StevenLawson.TotalFreedomMod.TotalFreedomMod version: 4.3 description: Plugin for the Total Freedom server. -softdepend: [BukkitTelnet, WorldEdit, Essentials] -authors: [Madgeek1450, Prozza, business-goose, Luna] +softdepend: [ BukkitTelnet, WorldEdit, Essentials ] +authors: [ Madgeek1450, Prozza, business-goose, Luna ] commands: setl: @@ -21,7 +21,7 @@ commands: jumppads: description: 'Manage jumppads' usage: '/ | strength >' - aliases: [launchpads, jp] + aliases: [ launchpads, jp ] qop: description: 'Quick Op - op someone based on a partial name.' usage: '/ ' @@ -140,7 +140,7 @@ commands: localspawn: description: 'Teleport to the spawn point for the current world.' usage: '/' - aliases: [worldspawn, gotospawn] + aliases: [ worldspawn, gotospawn ] tag: description: 'Sets yourself a prefix' usage: '/ | off | clear | clearall>' @@ -182,7 +182,7 @@ commands: aliases: 'ov' uuid: description: 'Provides uuid tools' - usage: '/ ' + usage: '/ ' logs: description: 'Register your connection with the TFM logviewer.' usage: '/ [off]' @@ -233,7 +233,7 @@ commands: blockcmd: description: 'Block all commands for a specific player.' usage: '/ >' - aliases: [blockcommands, blockcommand] + aliases: [ blockcommands, blockcommand ] tfbanlist: description: 'Shows all banned player names. Superadmins may optionally use ''purge'' to clear the list.' usage: '/ [purge]' @@ -276,7 +276,7 @@ commands: updatetfm: description: 'For developers only - update TFM.' usage: '/' - aliases: [tfmupdate, update, compiletfm, tfmcompile, build, buildtfm, tfmbuild] + aliases: [ tfmupdate, update, compiletfm, tfmcompile, build, buildtfm, tfmbuild ] lockup: description: 'Block target''s minecraft input. This is evil, and I never should have wrote it.' usage: '/ on | off>>' @@ -335,6 +335,10 @@ commands: description: 'Who am I? Who are you? What am I doing here?' usage: '/' resetplayer: - aliases: ["resetplayerdata"] + aliases: [ "resetplayerdata" ] description: 'Reset a player''s data.' - usage: '/command ' \ No newline at end of file + usage: '/ ' + vanish: + aliases: [ 'v', 'uv', 'unvanish' ] + description: 'Hide yourself from other players.' + usage: '/ [-s]' \ No newline at end of file