diff --git a/bukkit/loader/src/main/resources/config.yml b/bukkit/loader/src/main/resources/config.yml
index 884d642cc..d4eb04482 100644
--- a/bukkit/loader/src/main/resources/config.yml
+++ b/bukkit/loader/src/main/resources/config.yml
@@ -65,24 +65,30 @@ resource-pack:
- CustomNameplates/ResourcePack
- BetterModel/build
- BetterHud/build
- send:
+ delivery:
+ # Send the resource pack on joining the server
send-on-join: true
- send-on-reload: true
kick-if-declined: true
prompt: "To fully experience our server, please accept our custom resource pack."
# If you are hosting the resource pack by yourself, replace `localhost` with your server ip otherwise it would only work on your local pc
# If using BungeeCord or Velocity, consider using a proxy-side plugin to handle resource pack delivery.
# Read this page for more host types: https://mo-mi.gitbook.io/xiaomomi-plugins/craftengine/plugin-wiki/craftengine/resource-pack/host
- host:
+ hosting:
- type: "self_host"
ip: "localhost"
port: 8163
protocol: "http"
deny-non-minecraft-request: true
- local-file-path: "./generated/resource_pack.zip"
rate-limit:
max-requests: 3
reset-interval: 20
+ # Upload the resource pack automatically on generation
+ # When disabled, you must manually trigger uploads using the /ce upload command
+ auto-upload: true
+ # The file to upload
+ file-to-upload: "./generated/resource_pack.zip"
+ # Resend the resource pack to players upon successful upload
+ resend-on-upload: true
duplicated-files-handler:
- term:
type: any_of
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java
index 663ec5371..562f795a2 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java
@@ -14,8 +14,8 @@ import net.momirealms.craftengine.bukkit.util.RecipeUtils;
import net.momirealms.craftengine.bukkit.util.Reflections;
import net.momirealms.craftengine.core.item.CustomItem;
import net.momirealms.craftengine.core.item.ItemBuildContext;
-import net.momirealms.craftengine.core.item.recipe.Recipe;
import net.momirealms.craftengine.core.item.recipe.*;
+import net.momirealms.craftengine.core.item.recipe.Recipe;
import net.momirealms.craftengine.core.item.recipe.vanilla.*;
import net.momirealms.craftengine.core.plugin.CraftEngine;
import net.momirealms.craftengine.core.plugin.config.Config;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java
index 5d4bd2632..918f68fec 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java
@@ -12,8 +12,8 @@ import net.momirealms.craftengine.bukkit.util.ItemUtils;
import net.momirealms.craftengine.bukkit.util.LegacyInventoryUtils;
import net.momirealms.craftengine.bukkit.util.Reflections;
import net.momirealms.craftengine.core.item.*;
-import net.momirealms.craftengine.core.item.recipe.Recipe;
import net.momirealms.craftengine.core.item.recipe.*;
+import net.momirealms.craftengine.core.item.recipe.Recipe;
import net.momirealms.craftengine.core.item.recipe.input.CraftingInput;
import net.momirealms.craftengine.core.item.recipe.input.SingleItemInput;
import net.momirealms.craftengine.core.item.recipe.input.SmithingInput;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/pack/BukkitPackManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/pack/BukkitPackManager.java
index 48cd579e6..d0134f042 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/pack/BukkitPackManager.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/pack/BukkitPackManager.java
@@ -1,7 +1,6 @@
package net.momirealms.craftengine.bukkit.pack;
import net.momirealms.craftengine.bukkit.api.event.AsyncResourcePackGenerateEvent;
-import net.momirealms.craftengine.bukkit.nms.FastNMS;
import net.momirealms.craftengine.bukkit.plugin.BukkitCraftEngine;
import net.momirealms.craftengine.bukkit.plugin.command.feature.ReloadCommand;
import net.momirealms.craftengine.bukkit.plugin.user.BukkitServerPlayer;
@@ -121,12 +120,13 @@ public class BukkitPackManager extends AbstractPackManager implements Listener {
@EventHandler(priority = EventPriority.MONITOR)
public void onAsyncResourcePackGenerate(AsyncResourcePackGenerateEvent event) {
- resourcePackHost().upload(event.zipFilePath()).whenComplete((d, e) -> {
+ if (!Config.autoUpload()) return;
+ resourcePackHost().upload(Config.fileToUpload()).whenComplete((d, e) -> {
if (e != null) {
CraftEngine.instance().logger().warn("Failed to upload resource pack", e);
return;
}
- if (!Config.sendPackOnReload()) return;
+ if (!Config.sendPackOnUpload()) return;
for (BukkitServerPlayer player : this.plugin.networkManager().onlineUsers()) {
sendResourcePack(player);
}
diff --git a/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java b/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java
index d47cea0d8..d63079b13 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/pack/AbstractPackManager.java
@@ -147,7 +147,7 @@ public abstract class AbstractPackManager implements PackManager {
@Override
public void load() {
- List