6 Commits

8 changed files with 48 additions and 19 deletions

View File

@@ -0,0 +1,29 @@
name: Publish Project
on:
push:
tags:
- "*"
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
java-version: 21
distribution: temurin
cache: gradle
cache-dependency-path: gradle/wrapper/gradle-wrapper.properties
- name: Build Project
env:
ORG_GRADLE_PROJECT_MAVEN_AIRGAME_USERNAME: ${{ secrets.MAVEN_AIRGAME_USERNAME }}
ORG_GRADLE_PROJECT_MAVEN_AIRGAME_PASSWORD: ${{ secrets.MAVEN_AIRGAME_PASSWORD }}
run: chmod +x gradlew && ./gradlew build publish --no-daemon
- name: Publish to Release
uses: softprops/action-gh-release@v2
with:
files: build/*.jar

View File

@@ -1,18 +1,18 @@
plugins {
id("java-library")
id("maven-publish")
id("com.github.johnrengelman.shadow") version "8+"
id("com.gradleup.shadow") version "8.3.6"
}
group = "cn.hamster3.mc.plugin"
version = "1.3.4-SNAPSHOT"
version = "1.3.5"
description = "叁只仓鼠的 Minecraft 插件开发通用工具包"
subprojects {
apply {
plugin("java-library")
plugin("maven-publish")
plugin("com.github.johnrengelman.shadow")
plugin("com.gradleup.shadow")
}
group = rootProject.group
@@ -64,10 +64,9 @@ subprojects {
repositories {
maven {
url = uri("https://maven.airgame.net/public")
credentials {
username = rootProject.properties.getOrDefault("maven_username", "").toString()
password = rootProject.properties.getOrDefault("maven_password", "").toString()
username = findProperty("MAVEN_AIRGAME_USERNAME")?.toString() ?: ""
password = findProperty("MAVEN_AIRGAME_PASSWORD")?.toString() ?: ""
}
}
}

View File

@@ -113,15 +113,13 @@ public abstract class ParentCommand extends ChildCommand {
}
public void sendHelp(@NotNull CommandSender sender) {
sender.sendMessage("§e==================== [ " + getName() + " 使用帮助] ====================");
sender.sendMessage("§2§l<<< 命令 [" + getUsage() + "] 帮助 >>>");
Map<String, String> map = getCommandHelp(sender);
int maxLength = map.keySet().stream()
.map(String::length)
.max(Integer::compareTo)
.orElse(-1);
for (Map.Entry<String, String> entry : map.entrySet()) {
sender.sendMessage(String.format("§a%-" + maxLength + "s - %s", entry.getKey(), entry.getValue()));
sender.sendMessage(" §3" + entry.getKey());
sender.sendMessage(" §7" + entry.getValue());
}
sender.sendMessage("§2§l<<< 由插件 " + getPlugin().getName() + "-" + getPlugin().getDescription().getVersion() + " 提供 >>>");
}
@Override
@@ -142,7 +140,7 @@ public abstract class ParentCommand extends ChildCommand {
CoreMessage.COMMAND_NOT_HAS_PERMISSION.show(sender);
return true;
}
if (args.length - 1 < getArgumentCount()) {
if (args.length - 1 < childCommand.getArgumentCount()) {
sender.sendMessage(getUsage() + " " + childCommand.getUsage());
return true;
}

View File

@@ -69,9 +69,9 @@ public class InfoModeCommand extends ChildCommand {
}
if (DebugListener.INFO_MODE_PLAYERS.contains(uuid)) {
CoreMessage.COMMAND_DEBUG_INFO_MODE_OFF.show(player);
} else {
CoreMessage.COMMAND_DEBUG_INFO_MODE_ON.show(player);
} else {
CoreMessage.COMMAND_DEBUG_INFO_MODE_OFF.show(player);
}
return true;
}

View File

@@ -12,7 +12,6 @@ UPDATE_CHECKER:
CHECK_TYPE: GITEA_RELEASES
GIT_BASE_URL: https://git.airgame.net
GIT_REPO: MiniDay/hamster-core
DOWNLOAD_URL: https://jenkins.airgame.net/job/opensource/job/hamster-core/
load: STARTUP

View File

@@ -11,4 +11,3 @@ UPDATE_CHECKER:
CHECK_TYPE: GITEA_RELEASES
GIT_BASE_URL: https://git.airgame.net
GIT_REPO: MiniDay/hamster-core
DOWNLOAD_URL: https://jenkins.airgame.net/job/opensource/job/hamster-core/

View File

@@ -15,6 +15,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URI;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
@@ -45,6 +46,9 @@ public final class UpdateCheckUtils {
switch (checkType) {
case "GITEA_RELEASES": {
lastRelease = getGiteaLastRelease(baseUrl, gitRepo, gitToken);
if (downloadUrl == null) {
downloadUrl = URI.create(baseUrl).resolve(gitRepo).toString();
}
break;
}
case "GITLAB_RELEASES": {
@@ -53,6 +57,9 @@ public final class UpdateCheckUtils {
break;
}
lastRelease = getGitlabLastRelease(baseUrl, projectID, gitToken);
if (downloadUrl == null) {
downloadUrl = URI.create(baseUrl).resolve(gitRepo).toString();
}
break;
}
}
@@ -104,7 +111,6 @@ public final class UpdateCheckUtils {
JsonArray array = JSON_PARSER.parse(reader).getAsJsonArray();
for (JsonElement element : array) {
JsonObject object = element.getAsJsonObject();
//noinspection SpellCheckingInspection
if (object.get("prerelease").getAsBoolean()) {
continue;
}

View File

@@ -2,4 +2,3 @@ VERSION: ${version}
CHECK_TYPE: GITEA_RELEASES
GIT_BASE_URL: https://git.airgame.net
GIT_REPO: MiniDay/hamster-core
DOWNLOAD_URL: https://jenkins.airgame.net/job/opensource/job/hamster-core/