9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2025-12-22 16:39:28 +00:00

refactor(pack): 修改逻辑

This commit is contained in:
jhqwqmc
2025-04-19 16:38:18 +08:00
parent cf9ec6810a
commit 4a0f5ee9cb
8 changed files with 21 additions and 32 deletions

View File

@@ -61,7 +61,7 @@ command.resource.disable.failure.unknown: "<red>Unknown resource <arg:0></red>"
command.resource.list: "<white>Enabled resources(<arg:0>): <green><arg:1></green><newline>Disabled resources(<arg:2>): <red><arg:3></red></white>"
command.upload.failure.not_supported: "<red>Current hosting method '<arg:0>' doesn't support uploading resource packs.</red>"
command.upload.on_progress: "<white>Started uploading progress. Check the console for more information.</white>"
command.send_resource_pack.success: "<white>Send resource pack completed</white>"
command.send_resource_pack.success: "<white>Send resource packs to <arg:0> players</white>"
warning.config.image.duplicated: "<yellow>Issue found in file <arg:0> - Duplicated image '<arg:1>'.</yellow>"
warning.config.image.lack_height: "<yellow>Issue found in file <arg:0> - The image '<arg:1>' is missing the required 'height' argument.</yellow>"
warning.config.image.height_smaller_than_ascent: "<yellow>Issue found in file <arg:0> - The image '<arg:1>' violates the bitmap image rule: 'height' should be no lower than 'ascent'.</yellow>"

View File

@@ -61,7 +61,7 @@ command.resource.disable.failure.unknown: "<red>未知资源 <arg:0></red>"
command.resource.list: "<white>启用的资源(<arg:0>): <green><arg:1></green><newline>禁用的资源(<arg:2>): <red><arg:3></red></white>"
command.upload.failure.not_supported: "<red>当前托管模式 '<arg:0>' 不支持上传资源包.</red>"
command.upload.on_progress: "<white>已开始上传进程. 检查控制台以获取详细信息.</white>"
command.send_resource_pack.success: "<white>发送资源包完成</white>"
command.send_resource_pack.success: "<white>发送资源包给 <arg:0> 个玩家</white>"
warning.config.image.duplicated: "<yellow>在文件 <arg:0> 中发现问题 - 图片 '<arg:1>' 重复定义</yellow>"
warning.config.image.lack_height: "<yellow>在文件 <arg:0> 中发现问题 - 图片 '<arg:1>' 缺少必要的 'height' 高度参数</yellow>"
warning.config.image.height_smaller_than_ascent: "<yellow>在文件 <arg:0> 中发现问题 - 图片 '<arg:1>' 违反位图规则:'height' 高度值不应小于 'ascent' 基准线高度</yellow>"

View File

@@ -1,5 +1,6 @@
package net.momirealms.craftengine.bukkit.plugin.command.feature;
import net.kyori.adventure.text.Component;
import net.momirealms.craftengine.bukkit.plugin.BukkitCraftEngine;
import net.momirealms.craftengine.bukkit.plugin.command.BukkitCommandFeature;
import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer;
@@ -35,7 +36,7 @@ public class SendResourcePackCommand extends BukkitCommandFeature<CommandSender>
if (bukkitServerPlayer == null) continue;
BukkitCraftEngine.instance().packManager().sendResourcePack(bukkitServerPlayer);
}
handleFeedback(context, MessageConstants.COMMAND_SEND_RESOURCE_PACK_SUCCESS);
handleFeedback(context, MessageConstants.COMMAND_SEND_RESOURCE_PACK_SUCCESS, Component.text(players.size()));
});
}

View File

@@ -290,23 +290,20 @@ public class AlistHost implements ResourcePackHost {
@Override
public ResourcePackHost create(Map<String, Object> arguments) {
boolean useEnv = (boolean) arguments.getOrDefault("use-env", false);
boolean useEnv = (boolean) arguments.getOrDefault("use-environment-variables", false);
String apiUrl = (String) arguments.get("api-url");
if (apiUrl == null || apiUrl.isEmpty()) {
throw new IllegalArgumentException("'api-url' cannot be empty for Alist host");
}
String userName = (String) arguments.get("username");
if (useEnv) userName = System.getenv("CE_ALIST_USERNAME");
String userName = useEnv ? System.getenv("CE_ALIST_USERNAME") : (String) arguments.get("username");
if (userName == null || userName.isEmpty()) {
throw new IllegalArgumentException("'username' cannot be empty for Alist host");
}
String password = (String) arguments.get("password");
if (useEnv) password = System.getenv("CE_ALIST_PASSWORD");
String password = useEnv ? System.getenv("CE_ALIST_PASSWORD") : (String) arguments.get("password");
if (password == null || password.isEmpty()) {
throw new IllegalArgumentException("'password' cannot be empty for Alist host");
}
String filePassword = (String) arguments.getOrDefault("file-password", "");
if (useEnv) filePassword = System.getenv("CE_ALIST_FILE_PASSWORD");
String filePassword = useEnv ? System.getenv("CE_ALIST_FILE_PASSWORD") : (String) arguments.getOrDefault("file-password", "");
String otpCode = (String) arguments.get("otp-code");
Duration jwtTokenExpiration = Duration.ofHours((int) arguments.getOrDefault("jwt-token-expiration", 48));
String uploadPath = (String) arguments.get("upload-path");

View File

@@ -250,19 +250,16 @@ public class DropboxHost implements ResourcePackHost {
public static class Factory implements ResourcePackHostFactory {
@Override
public ResourcePackHost create(Map<String, Object> arguments) {
boolean useEnv = (boolean) arguments.getOrDefault("use-env", false);
String appKey = (String) arguments.get("app-key");
if (useEnv) appKey = System.getenv("CE_DROPBOX_APP_KEY");
boolean useEnv = (boolean) arguments.getOrDefault("use-environment-variables", false);
String appKey = useEnv ? System.getenv("CE_DROPBOX_APP_KEY") : (String) arguments.get("app-key");
if (appKey == null || appKey.isEmpty()) {
throw new IllegalArgumentException("Missing required 'app-key' configuration");
}
String appSecret = (String) arguments.get("app-secret");
if (useEnv) appSecret = System.getenv("CE_DROPBOX_APP_SECRET");
String appSecret = useEnv ? System.getenv("CE_DROPBOX_APP_SECRET") : (String) arguments.get("app-secret");
if (appSecret == null || appSecret.isEmpty()) {
throw new IllegalArgumentException("Missing required 'app-secret' configuration");
}
String refreshToken = (String) arguments.get("refresh-token");
if (useEnv) refreshToken = System.getenv("CE_DROPBOX_REFRESH_TOKEN");
String refreshToken = useEnv ? System.getenv("CE_DROPBOX_REFRESH_TOKEN") : (String) arguments.get("refresh-token");
if (refreshToken == null || refreshToken.isEmpty()) {
throw new IllegalArgumentException("Missing required 'refresh-token' configuration");
}

View File

@@ -270,9 +270,8 @@ public class LobFileHost implements ResourcePackHost {
@Override
public ResourcePackHost create(Map<String, Object> arguments) {
boolean useEnv = (boolean) arguments.getOrDefault("use-env", false);
String apiKey = (String) arguments.get("api-key");
if (useEnv) apiKey = System.getenv("CE_LOBFILE_API_KEY");
boolean useEnv = (boolean) arguments.getOrDefault("use-environment-variables", false);
String apiKey = useEnv ? System.getenv("CE_LOBFILE_API_KEY") : (String) arguments.get("api-key");
if (apiKey == null || apiKey.isEmpty()) {
throw new RuntimeException("Missing 'api-key' for LobFileHost");
}

View File

@@ -230,19 +230,16 @@ public class OneDriveHost implements ResourcePackHost {
@Override
public ResourcePackHost create(Map<String, Object> arguments) {
boolean useEnv = (boolean) arguments.getOrDefault("use-env", false);
String clientId = (String) arguments.get("client-id");
if (useEnv) clientId = System.getenv("CE_ONEDRIVE_CLIENT_ID");
boolean useEnv = (boolean) arguments.getOrDefault("use-environment-variables", false);
String clientId = useEnv ? System.getenv("CE_ONEDRIVE_CLIENT_ID") : (String) arguments.get("client-id");
if (clientId == null || clientId.isEmpty()) {
throw new IllegalArgumentException("Missing required 'client-id' configuration");
}
String clientSecret = (String) arguments.get("client-secret");
if (useEnv) clientSecret = System.getenv("CE_ONEDRIVE_CLIENT_SECRET");
String clientSecret = useEnv ? System.getenv("CE_ONEDRIVE_CLIENT_SECRET") : (String) arguments.get("client-secret");
if (clientSecret == null || clientSecret.isEmpty()) {
throw new IllegalArgumentException("Missing required 'client-secret' configuration");
}
String refreshToken = (String) arguments.get("refresh-token");
if (useEnv) refreshToken = System.getenv("CE_ONEDRIVE_REFRESH_TOKEN");
String refreshToken = useEnv ? System.getenv("CE_ONEDRIVE_REFRESH_TOKEN") : (String) arguments.get("refresh-token");
if (refreshToken == null || refreshToken.isEmpty()) {
throw new IllegalArgumentException("Missing required 'refresh-token' configuration");
}

View File

@@ -156,7 +156,7 @@ public class S3Host implements ResourcePackHost {
@Override
@SuppressWarnings("deprecation")
public ResourcePackHost create(Map<String, Object> arguments) {
boolean useEnv = (boolean) arguments.getOrDefault("use-env", false);
boolean useEnv = (boolean) arguments.getOrDefault("use-environment-variables", false);
String endpoint = (String) arguments.get("endpoint");
if (endpoint == null || endpoint.isEmpty()) {
throw new IllegalArgumentException("'endpoint' cannot be empty for S3 host");
@@ -168,13 +168,11 @@ public class S3Host implements ResourcePackHost {
throw new IllegalArgumentException("'bucket' cannot be empty for S3 host");
}
String region = (String) arguments.getOrDefault("region", "auto");
String accessKeyId = (String) arguments.get("access-key-id");
if (useEnv) accessKeyId = System.getenv("CE_S3_ACCESS_KEY_ID");
String accessKeyId = useEnv ? System.getenv("CE_S3_ACCESS_KEY_ID") : (String) arguments.get("access-key-id");
if (accessKeyId == null || accessKeyId.isEmpty()) {
throw new IllegalArgumentException("'access-key-id' cannot be empty for S3 host");
}
String accessKeySecret = (String) arguments.get("access-key-secret");
if (useEnv) accessKeySecret = System.getenv("CE_S3_ACCESS_KEY_SECRET");
String accessKeySecret = useEnv ? System.getenv("CE_S3_ACCESS_KEY_SECRET") : (String) arguments.get("access-key-secret");
if (accessKeySecret == null || accessKeySecret.isEmpty()) {
throw new IllegalArgumentException("'access-key-secret' cannot be empty for S3 host");
}