It's muffin time!

This commit is contained in:
BillyGalbreath
2021-03-11 15:20:31 -06:00
parent e53522571d
commit 3930ac48e3

View File

@@ -62,10 +62,10 @@ index 7ac34a8959a797bf2af96f3f402fa65cffe3d666..80b7ef7c02c8f99b81a6c33d6d969690
public CrashReport b(CrashReport crashreport) { public CrashReport b(CrashReport crashreport) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java b/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java diff --git a/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java b/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221aaee80ce index 0000000000000000000000000000000000000000..cabfcebf9f944f7a2a2a1cffc7401435803a8741
--- /dev/null --- /dev/null
+++ b/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java +++ b/src/main/java/net/pl3x/purpur/PurpurVersionFetcher.java
@@ -0,0 +1,115 @@ @@ -0,0 +1,119 @@
+package net.pl3x.purpur; +package net.pl3x.purpur;
+ +
+import com.destroystokyo.paper.VersionHistoryManager; +import com.destroystokyo.paper.VersionHistoryManager;
@@ -75,6 +75,10 @@ index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221
+import com.google.gson.Gson; +import com.google.gson.Gson;
+import com.google.gson.JsonObject; +import com.google.gson.JsonObject;
+import com.google.gson.JsonSyntaxException; +import com.google.gson.JsonSyntaxException;
+import net.kyori.adventure.text.Component;
+import net.kyori.adventure.text.TextComponent;
+import net.kyori.adventure.text.format.NamedTextColor;
+import net.kyori.adventure.text.format.TextDecoration;
+ +
+import javax.annotation.Nonnull; +import javax.annotation.Nonnull;
+import javax.annotation.Nullable; +import javax.annotation.Nullable;
@@ -95,15 +99,15 @@ index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221
+ +
+ @Nonnull + @Nonnull
+ @Override + @Override
+ public String getVersionMessage(@Nonnull String serverVersion) { + public Component getVersionMessage(@Nonnull String serverVersion) {
+ String[] parts = serverVersion.substring("git-Purpur-".length()).split("[-\\s]"); + String[] parts = serverVersion.substring("git-Purpur-".length()).split("[-\\s]");
+ String updateMessage = getUpdateStatusMessage("pl3xgaming/Purpur", GITHUB_BRANCH_NAME, parts[0]); + final Component updateMessage = getUpdateStatusMessage("pl3xgaming/Purpur", GITHUB_BRANCH_NAME, parts[0]);
+ String history = getHistory(); + final Component history = getHistory();
+ +
+ return history != null ? history + "\n" + updateMessage : updateMessage; + return history != null ? TextComponent.ofChildren(updateMessage, Component.newline(), history) : updateMessage;
+ } + }
+ +
+ private static String getUpdateStatusMessage(@Nonnull String repo, @Nonnull String branch, @Nonnull String versionInfo) { + private static Component getUpdateStatusMessage(@Nonnull String repo, @Nonnull String branch, @Nonnull String versionInfo) {
+ int distance; + int distance;
+ try { + try {
+ int jenkinsBuild = Integer.parseInt(versionInfo); + int jenkinsBuild = Integer.parseInt(versionInfo);
@@ -115,13 +119,13 @@ index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221
+ +
+ switch (distance) { + switch (distance) {
+ case -1: + case -1:
+ return "Error obtaining version information"; + return Component.text("Error obtaining version information", NamedTextColor.YELLOW);
+ case 0: + case 0:
+ return "You are running the latest version"; + return Component.text("You are running the latest version", NamedTextColor.GREEN);
+ case -2: + case -2:
+ return "Unknown version"; + return Component.text("Unknown version", NamedTextColor.YELLOW);
+ default: + default:
+ return "You are " + distance + " version(s) behind"; + return Component.text("You are " + distance + " version(s) behind", NamedTextColor.YELLOW);
+ } + }
+ } + }
+ +
@@ -167,7 +171,7 @@ index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221
+ } + }
+ +
+ @Nullable + @Nullable
+ private String getHistory() { + private Component getHistory() {
+ final VersionHistoryManager.VersionData data = VersionHistoryManager.INSTANCE.getVersionData(); + final VersionHistoryManager.VersionData data = VersionHistoryManager.INSTANCE.getVersionData();
+ if (data == null) { + if (data == null) {
+ return null; + return null;
@@ -178,7 +182,7 @@ index 0000000000000000000000000000000000000000..d8b408f061d96e2fa8e2e587462e2221
+ return null; + return null;
+ } + }
+ +
+ return "Previous version: " + oldVersion; + return Component.text("Previous version: " + oldVersion, NamedTextColor.GRAY, TextDecoration.ITALIC);
+ } + }
+} +}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java