Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0475643a54 | |||
| dcc9ae2e92 |
2
pom.xml
2
pom.xml
@@ -5,7 +5,7 @@
|
||||
|
||||
<groupId>pb.ajneb97</groupId>
|
||||
<artifactId>PaintballBattle</artifactId>
|
||||
<version>1.13.0</version>
|
||||
<version>1.14.0</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>PaintballBattle</name>
|
||||
|
||||
@@ -155,20 +155,29 @@ public class PaintballBattle extends JavaPlugin {
|
||||
public void setVersion(){
|
||||
String packageName = Bukkit.getServer().getClass().getPackage().getName();
|
||||
String bukkitVersion = Bukkit.getServer().getBukkitVersion().split("-")[0];
|
||||
switch(bukkitVersion){
|
||||
case "1.20.5":
|
||||
case "1.20.6":
|
||||
serverVersion = ServerVersion.v1_20_R4;
|
||||
break;
|
||||
case "1.21":
|
||||
case "1.21.1":
|
||||
case "1.21.4":
|
||||
case "1.21.5":
|
||||
serverVersion = ServerVersion.v1_21_R1;
|
||||
break;
|
||||
default:
|
||||
//serverVersion = ServerVersion.valueOf(packageName.replace("org.bukkit.craftbukkit.", ""));
|
||||
serverVersion = ServerVersion.detect();
|
||||
String versionKey = null;
|
||||
|
||||
// Versuche, das Package-Muster zu extrahieren (z.B. v1_21_R4, spigot_26_1)
|
||||
if(packageName.contains(".")) {
|
||||
versionKey = packageName.substring(packageName.lastIndexOf('.') + 1);
|
||||
} else {
|
||||
versionKey = packageName;
|
||||
}
|
||||
|
||||
// Versuche zuerst, die Version direkt aus dem Enum zu nehmen
|
||||
try {
|
||||
serverVersion = ServerVersion.valueOf(versionKey);
|
||||
Bukkit.getLogger().info("[PaintballBattle] Detected server version: " + serverVersion.name());
|
||||
} catch (IllegalArgumentException e) {
|
||||
// Wenn nicht vorhanden, prüfe auf bekannte Patterns
|
||||
if(versionKey.toLowerCase().startsWith("spigot_26_1")) {
|
||||
serverVersion = ServerVersion.SPIGOT_26_1;
|
||||
Bukkit.getLogger().info("[PaintballBattle] Detected server version: SPIGOT_26_1");
|
||||
} else {
|
||||
// Fallback: immer die neueste bekannte Version nehmen
|
||||
serverVersion = ServerVersion.values()[ServerVersion.values().length-1];
|
||||
Bukkit.getLogger().info("[PaintballBattle] Unknown server version '" + versionKey + "', using latest supported: " + serverVersion.name());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,8 @@ public enum ServerVersion {
|
||||
v1_21_R1,
|
||||
v1_21_R2,
|
||||
v1_21_R3,
|
||||
v1_21_R4; // Added for Paper 1.21.8
|
||||
v1_21_R4, // Added for Paper 1.21.8
|
||||
SPIGOT_26_1; // Added für Spigot 26.1
|
||||
|
||||
public boolean serverVersionGreaterEqualThan(ServerVersion version1, ServerVersion version2) {
|
||||
return version1.ordinal() >= version2.ordinal();
|
||||
@@ -45,7 +46,7 @@ public enum ServerVersion {
|
||||
public static ServerVersion detect() {
|
||||
String pkg = Bukkit.getServer().getClass().getPackage().getName();
|
||||
// Bukkit.getLogger().info(pkg);
|
||||
// Typically ends with v1_x_Ry
|
||||
// Typically ends with v1_x_Ry or spigot_26_1
|
||||
String detected = pkg.substring(pkg.lastIndexOf('.') + 1);
|
||||
|
||||
try {
|
||||
@@ -53,6 +54,11 @@ public enum ServerVersion {
|
||||
Bukkit.getLogger().info("[PaintballBattle] Detected server version: " + version.name());
|
||||
return version;
|
||||
} catch (IllegalArgumentException ex) {
|
||||
// Zusätzliche Erkennung für Spigot 26.1
|
||||
if(detected.toLowerCase().startsWith("spigot_26_1")) {
|
||||
Bukkit.getLogger().info("[PaintballBattle] Detected server version: SPIGOT_26_1");
|
||||
return ServerVersion.SPIGOT_26_1;
|
||||
}
|
||||
Bukkit.getLogger().warning("[PaintballBattle] Unknown server version '" + detected + "', defaulting to v1_21_R4");
|
||||
return ServerVersion.v1_21_R4;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
main: pb.ajneb97.PaintballBattle
|
||||
version: 1.12.1
|
||||
name: PaintballBattle
|
||||
api-version: 1.13
|
||||
api-version: 1.14
|
||||
author: Ajneb97
|
||||
softdepend: [Multiverse-Core, Vault, PlaceholderAPI, DecentHolograms]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user