Skip to content

Commit

Permalink
fix uuid stuff, remove HexaConsumer
Browse files Browse the repository at this point in the history
dkim19375 committed Apr 11, 2021
1 parent 40a7a5a commit b188927
Showing 4 changed files with 33 additions and 83 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ sourceCompatibility = targetCompatibility = JavaVersion.VERSION_1_8
compileJava.options.encoding 'UTF-8'

group 'me.dkim19375'
version '2.6.0'
version '2.6.1'

repositories {
mavenCentral()
38 changes: 9 additions & 29 deletions src/main/java/me/dkim19375/dkim19375core/PlayerUtils.java
Original file line number Diff line number Diff line change
@@ -11,17 +11,16 @@ public class PlayerUtils {
private PlayerUtils() {
}

public enum InputTypes {
VALID_USERNAME, VALID_UUID, INVALID_USERNAME, INVALID_UUID, INVALID
}

@Nullable
public static Player getFromAll(final String uuidOrPlayer) {
if (uuidOrPlayer.matches("^\\w{3,16}$")) {
return Bukkit.getPlayer(uuidOrPlayer);
}
if (uuidOrPlayer.matches("[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}")) {
final UUID uuid = UUID.fromString(uuidOrPlayer);
final UUID uuid = UUIDUtils.getFromString(uuidOrPlayer);
if (uuid == null) {
return null;
}
return Bukkit.getPlayer(uuid);
}
return null;
@@ -32,28 +31,6 @@ public static Player getFromAll(final UUID uuid) {
return Bukkit.getPlayer(uuid);
}

@NotNull
public static InputTypes getInputType(final String uuidOrPlayer) {
if (uuidOrPlayer.matches("^\\w{3,16}$")) {
final Player player = Bukkit.getPlayer(uuidOrPlayer);
if (player != null) {
return InputTypes.VALID_USERNAME;
}
return InputTypes.INVALID_USERNAME;
}
if (uuidOrPlayer.matches("[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}")) {
final UUID uuid = UUID.fromString(uuidOrPlayer);
final Player player = Bukkit.getPlayer(uuid);
if (player != null) {
return InputTypes.VALID_UUID;
}
}
if (uuidOrPlayer.matches("[0-9a-fA-F]{32}")) {
return InputTypes.INVALID_UUID;
}
return InputTypes.INVALID;
}

@Nullable
public static Player getPlayerFromUsername(final String username) {
if (username.matches("^\\w{3,16}$")) {
@@ -63,8 +40,11 @@ public static Player getPlayerFromUsername(final String username) {
}

@Nullable
public static Player getPlayerFromUUID(final String StringUUID) {
final UUID uuid = UUID.fromString(StringUUID);
public static Player getPlayerFromUUID(final String stringUUID) {
final UUID uuid = UUIDUtils.getFromString(stringUUID);
if (uuid == null) {
return null;
}
return Bukkit.getPlayer(uuid);
}

23 changes: 23 additions & 0 deletions src/main/java/me/dkim19375/dkim19375core/UUIDUtils.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package me.dkim19375.dkim19375core;

import org.jetbrains.annotations.Nullable;

import java.util.UUID;

public class UUIDUtils {
@Nullable
public static UUID getFromString(String name) {
try {
return UUID.fromString(name);
} catch (IllegalArgumentException ignored) {}
try {
String uuid1 = name.substring(0, 8);
String uuid2 = name.substring(8, 12);
String uuid3 = name.substring(12, 16);
String uuid4 = name.substring(16, 20);
String uuid5 = name.substring(20);
return UUID.fromString(uuid1 + "-" + uuid2 + "-" + uuid3 + "-" + uuid4 + "-" + uuid5);
} catch (IndexOutOfBoundsException ignored) {}
return null;
}
}

This file was deleted.

0 comments on commit b188927

Please sign in to comment.