mirror of
https://github.com/PlaceholderAPI/PlaceholderAPI
synced 2026-06-29 19:05:55 +02:00
fix(parsing): adjust parsing to support paper dev builds better
This commit is contained in:
@@ -60,7 +60,8 @@ public final class PlaceholderAPIPlugin extends JavaPlugin {
|
||||
private static PlaceholderAPIPlugin instance;
|
||||
|
||||
static {
|
||||
String version = Bukkit.getServer().getBukkitVersion().split("-")[0];
|
||||
String version = normalizeBukkitVersion(Bukkit.getServer().getBukkitVersion());
|
||||
|
||||
String suffix;
|
||||
if (version.chars()
|
||||
.filter(c -> c == '.')
|
||||
@@ -68,7 +69,17 @@ public final class PlaceholderAPIPlugin extends JavaPlugin {
|
||||
suffix = "R1";
|
||||
version = 'v' + version.replace('.', '_') + '_' + suffix;
|
||||
} else {
|
||||
int minor = Integer.parseInt(version.split("\\.")[2].charAt(0) + "");
|
||||
final String[] versionParts = version.split("\\.");
|
||||
|
||||
int minor = 1;
|
||||
if (versionParts.length > 2 && !versionParts[2].isEmpty()) {
|
||||
try {
|
||||
minor = Integer.parseInt(versionParts[2].charAt(0) + "");
|
||||
} catch (final NumberFormatException ignored) {
|
||||
minor = 1;
|
||||
}
|
||||
}
|
||||
|
||||
version = 'v' + version.replace('.', '_').replace("_" + minor, "") + '_' + "R" + (minor - 1);
|
||||
}
|
||||
|
||||
@@ -294,4 +305,15 @@ public final class PlaceholderAPIPlugin extends JavaPlugin {
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static String normalizeBukkitVersion(@NotNull final String bukkitVersion) {
|
||||
String version = bukkitVersion.split("-", 2)[0];
|
||||
|
||||
final int paperBuildMetadataIndex = version.indexOf(".build.");
|
||||
if (paperBuildMetadataIndex != -1) {
|
||||
version = version.substring(0, paperBuildMetadataIndex);
|
||||
}
|
||||
|
||||
return version;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user