fix(bukkit): 插件卸载时关闭所有GUI
This commit is contained in:
@@ -8,6 +8,7 @@ import cn.hamster3.mc.plugin.core.bukkit.hook.PointAPI;
|
|||||||
import cn.hamster3.mc.plugin.core.bukkit.hook.VaultAPI;
|
import cn.hamster3.mc.plugin.core.bukkit.hook.VaultAPI;
|
||||||
import cn.hamster3.mc.plugin.core.bukkit.listener.CallbackListener;
|
import cn.hamster3.mc.plugin.core.bukkit.listener.CallbackListener;
|
||||||
import cn.hamster3.mc.plugin.core.bukkit.listener.DebugListener;
|
import cn.hamster3.mc.plugin.core.bukkit.listener.DebugListener;
|
||||||
|
import cn.hamster3.mc.plugin.core.bukkit.page.handler.PageHandler;
|
||||||
import cn.hamster3.mc.plugin.core.bukkit.page.listener.PageListener;
|
import cn.hamster3.mc.plugin.core.bukkit.page.listener.PageListener;
|
||||||
import cn.hamster3.mc.plugin.core.bukkit.util.ItemStackAdapter;
|
import cn.hamster3.mc.plugin.core.bukkit.util.ItemStackAdapter;
|
||||||
import cn.hamster3.mc.plugin.core.common.constant.CoreConstantObjects;
|
import cn.hamster3.mc.plugin.core.common.constant.CoreConstantObjects;
|
||||||
@@ -16,6 +17,9 @@ import cn.hamster3.mc.plugin.core.common.misc.MessageTypeAdapter;
|
|||||||
import com.google.gson.GsonBuilder;
|
import com.google.gson.GsonBuilder;
|
||||||
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
|
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.inventory.Inventory;
|
||||||
|
import org.bukkit.inventory.InventoryView;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
@@ -83,6 +87,14 @@ public class HamsterCorePlugin extends JavaPlugin {
|
|||||||
logger.info("已暂停 WORKER_EXECUTOR.");
|
logger.info("已暂停 WORKER_EXECUTOR.");
|
||||||
CoreConstantObjects.SCHEDULED_EXECUTOR.shutdownNow();
|
CoreConstantObjects.SCHEDULED_EXECUTOR.shutdownNow();
|
||||||
logger.info("已暂停 SCHEDULED_EXECUTOR.");
|
logger.info("已暂停 SCHEDULED_EXECUTOR.");
|
||||||
|
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||||
|
InventoryView view = player.getOpenInventory();
|
||||||
|
Inventory inventory = view.getTopInventory();
|
||||||
|
if (!(inventory.getHolder() instanceof PageHandler)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
player.closeInventory();
|
||||||
|
}
|
||||||
long time = System.currentTimeMillis() - start;
|
long time = System.currentTimeMillis() - start;
|
||||||
logger.info("仓鼠核心已关闭,总计耗时 " + time + " ms.");
|
logger.info("仓鼠核心已关闭,总计耗时 " + time + " ms.");
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user