Add getting other player's uuids via the uuid command

This commit is contained in:
Business Goose 2022-03-31 02:14:53 +01:00
parent 4769228fab
commit 58e87575aa
No known key found for this signature in database
GPG key ID: 77DCA801362E9645
2 changed files with 92 additions and 85 deletions

View file

@ -1,20 +1,26 @@
package me.StevenLawson.TotalFreedomMod.commands; 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.Admin;
import me.StevenLawson.TotalFreedomMod.admin.AdminList; 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.Player;
import me.StevenLawson.TotalFreedomMod.player.PlayerList; import me.StevenLawson.TotalFreedomMod.player.PlayerList;
import me.StevenLawson.TotalFreedomMod.player.UUIDManager; import org.bukkit.Bukkit;
import me.StevenLawson.TotalFreedomMod.player.UUIDManager.TFM_UuidResolver;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import java.util.*;
@CommandPermissions(level = AdminLevel.SENIOR, source = SourceType.ONLY_CONSOLE) @CommandPermissions(level = AdminLevel.SENIOR, source = SourceType.ONLY_CONSOLE)
public class Command_uuid extends FreedomCommand { public class Command_uuid extends FreedomCommand {
@Override @Override
public boolean run(CommandSender sender, org.bukkit.entity.Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { public boolean run(CommandSender sender, org.bukkit.entity.Player sender_p, Command cmd,
String commandLabel, String[] args, boolean senderIsConsole) {
if (args.length != 1) { if (args.length != 1) {
return false; return false;
} }
@ -24,33 +30,27 @@ public class Command_uuid extends FreedomCommand {
return true; return true;
} }
if ("recalculate".equals(args[0])) if ("recalculate".equals(args[0])) {
{
playerMsg(sender, "Recalculating UUIDs..."); playerMsg(sender, "Recalculating UUIDs...");
// Playerlist uuids // Playerlist uuids
final Set<Player> players = PlayerList.getAllPlayers(); final Set<Player> players = PlayerList.getAllPlayers();
final List<String> names = new ArrayList<String>(); final List<String> names = new ArrayList<String>();
for (Player player : players) for (Player player : players) {
{
names.add(player.getLastLoginName()); names.add(player.getLastLoginName());
} }
final Map<String, UUID> playerUuids = new TFM_UuidResolver(names).call(); final Map<String, UUID> playerUuids = new TFM_UuidResolver(names).call();
int updated = 0; int updated = 0;
for (String name : playerUuids.keySet()) for (String name : playerUuids.keySet()) {
{ for (Player player : players) {
for (Player player : players) if (!player.getLastLoginName().equalsIgnoreCase(name)) {
{
if (!player.getLastLoginName().equalsIgnoreCase(name))
{
continue; continue;
} }
if (player.getUniqueId().equals(playerUuids.get(name))) if (player.getUniqueId().equals(playerUuids.get(name))) {
{
continue; continue;
} }
@ -66,25 +66,20 @@ public class Command_uuid extends FreedomCommand {
// Adminlist UUIDs // Adminlist UUIDs
final Set<Admin> admins = AdminList.getAllAdmins(); final Set<Admin> admins = AdminList.getAllAdmins();
for (Admin admin : admins) for (Admin admin : admins) {
{
names.add(admin.getLastLoginName()); names.add(admin.getLastLoginName());
} }
final Map<String, UUID> adminUuids = new TFM_UuidResolver(names).call(); final Map<String, UUID> adminUuids = new TFM_UuidResolver(names).call();
updated = 0; updated = 0;
for (String name : adminUuids.keySet()) for (String name : adminUuids.keySet()) {
{ for (Admin admin : admins) {
for (Admin admin : admins) if (!admin.getLastLoginName().equalsIgnoreCase(name)) {
{
if (!admin.getLastLoginName().equalsIgnoreCase(name))
{
continue; continue;
} }
if (admin.getUniqueId().equals(adminUuids.get(name))) if (admin.getUniqueId().equals(adminUuids.get(name))) {
{
continue; continue;
} }
@ -100,6 +95,14 @@ public class Command_uuid extends FreedomCommand {
return true; 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; return false;
} }
} }

View file

@ -182,7 +182,7 @@ commands:
aliases: 'ov' aliases: 'ov'
uuid: uuid:
description: 'Provides uuid tools' description: 'Provides uuid tools'
usage: '/<command> <purge | recalculate>' usage: '/<command> <purge | recalculate | partialName>'
logs: logs:
description: 'Register your connection with the TFM logviewer.' description: 'Register your connection with the TFM logviewer.'
usage: '/<command> [off]' usage: '/<command> [off]'
@ -337,4 +337,8 @@ commands:
resetplayer: resetplayer:
aliases: [ "resetplayerdata" ] aliases: [ "resetplayerdata" ]
description: 'Reset a player''s data.' description: 'Reset a player''s data.'
usage: '/command <partialName>' usage: '/<command> <partialName>'
vanish:
aliases: [ 'v', 'uv', 'unvanish' ]
description: 'Hide yourself from other players.'
usage: '/<vanish> <on/off> [-s]'