From 1c424f6eed87cbc84c167f9447e79ee9cce8b9e7 Mon Sep 17 00:00:00 2001 From: MiniDay <372403923@qq.com> Date: Mon, 24 Oct 2022 02:40:57 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=B0=86=E9=83=A8=E5=88=86?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E4=BB=A3=E7=A0=81=E6=8F=90=E5=89=8D?= =?UTF-8?q?=E8=87=B3=20onLoad=20=E9=98=B6=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/core/bukkit/HamsterCorePlugin.java | 33 +++++++++++++------ .../plugin/core/bukkit/api/CoreBukkitAPI.java | 5 +-- .../plugin/core/bungee/HamsterCorePlugin.java | 19 +++++++++-- .../plugin/core/bungee/api/CoreBungeeAPI.java | 5 +-- 4 files changed, 41 insertions(+), 21 deletions(-) diff --git a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/HamsterCorePlugin.java b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/HamsterCorePlugin.java index af06493..262261f 100644 --- a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/HamsterCorePlugin.java +++ b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/HamsterCorePlugin.java @@ -11,6 +11,7 @@ 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.page.listener.PageListener; import cn.hamster3.mc.plugin.core.common.constant.CoreConstantObjects; +import net.kyori.adventure.platform.bukkit.BukkitAudiences; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; @@ -23,6 +24,8 @@ public class HamsterCorePlugin extends JavaPlugin { public static final ParentCommand COMMAND_EXECUTOR = new ParentCommand("core"); private static HamsterCorePlugin instance; + private BukkitAudiences audienceProvider; + public static HamsterCorePlugin getInstance() { return instance; } @@ -34,6 +37,19 @@ public class HamsterCorePlugin extends JavaPlugin { @Override public void onLoad() { instance = this; + Logger logger = getLogger(); + long start = System.currentTimeMillis(); + logger.info("仓鼠核心正在初始化..."); + CoreBukkitAPI.init(); + logger.info("CoreBukkitAPI 已初始化."); + COMMAND_EXECUTOR.addChildCommand(BlockInfoCommand.INSTANCE); + logger.info("已添加指令: " + BlockInfoCommand.INSTANCE.getName() + " ."); + COMMAND_EXECUTOR.addChildCommand(YamlCommand.INSTANCE); + logger.info("已添加指令: " + YamlCommand.INSTANCE.getName() + " ."); + COMMAND_EXECUTOR.addChildCommand(ParentLoreCommand.INSTANCE); + logger.info("已添加指令: " + ParentLoreCommand.INSTANCE.getName() + " ."); + long time = System.currentTimeMillis() - start; + logger.info("仓鼠核心初始化完成,总计耗时 " + time + " ms."); } @Override @@ -41,27 +57,20 @@ public class HamsterCorePlugin extends JavaPlugin { Logger logger = getLogger(); long start = System.currentTimeMillis(); logger.info("仓鼠核心正在启动..."); - CoreBukkitAPI.init(); - logger.info("CoreAPI 已初始化."); VaultAPI.reloadVaultHook(); logger.info("完成 VaultAPI 挂载."); PointAPI.reloadPlayerPointAPIHook(); logger.info("完成 PlayerPoints 挂载."); + audienceProvider = BukkitAudiences.create(this); + logger.info("完成 BukkitAudiences 挂载."); Bukkit.getPluginManager().registerEvents(PageListener.INSTANCE, this); logger.info("已注册 PageListener."); Bukkit.getPluginManager().registerEvents(CallbackListener.INSTANCE, this); logger.info("已注册 CallbackListener."); Bukkit.getPluginManager().registerEvents(DebugListener.INSTANCE, this); logger.info("已注册 DebugListener."); - COMMAND_EXECUTOR.addChildCommand(BlockInfoCommand.INSTANCE); - logger.info("已添加指令: " + BlockInfoCommand.INSTANCE.getName() + " ."); - COMMAND_EXECUTOR.addChildCommand(YamlCommand.INSTANCE); - logger.info("已添加指令: " + YamlCommand.INSTANCE.getName() + " ."); - COMMAND_EXECUTOR.addChildCommand(ParentLoreCommand.INSTANCE); - logger.info("已添加指令: " + ParentLoreCommand.INSTANCE.getName() + " ."); - long time = System.currentTimeMillis() - start; - logger.info("仓鼠核心已启动,总计耗时 " + time + " ms."); + logger.info("仓鼠核心启动完成,总计耗时 " + time + " ms."); } @Override @@ -86,4 +95,8 @@ public class HamsterCorePlugin extends JavaPlugin { public List onTabComplete(CommandSender sender, Command command, String alias, String[] args) { return COMMAND_EXECUTOR.onTabComplete(sender, command, alias, args); } + + public BukkitAudiences getAudienceProvider() { + return audienceProvider; + } } diff --git a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/api/CoreBukkitAPI.java b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/api/CoreBukkitAPI.java index adb1558..31de8d4 100644 --- a/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/api/CoreBukkitAPI.java +++ b/hamster-core-bukkit/src/main/java/cn/hamster3/mc/plugin/core/bukkit/api/CoreBukkitAPI.java @@ -5,19 +5,16 @@ import cn.hamster3.mc.plugin.core.common.api.CoreAPI; import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariDataSource; import net.kyori.adventure.platform.AudienceProvider; -import net.kyori.adventure.platform.bukkit.BukkitAudiences; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.FileConfiguration; import org.jetbrains.annotations.NotNull; @SuppressWarnings("unused") public final class CoreBukkitAPI extends CoreAPI { - private final BukkitAudiences audienceProvider; private final HikariDataSource datasource; private CoreBukkitAPI() { HamsterCorePlugin plugin = HamsterCorePlugin.getInstance(); - audienceProvider = BukkitAudiences.create(plugin); plugin.saveDefaultConfig(); FileConfiguration config = plugin.getConfig(); @@ -48,7 +45,7 @@ public final class CoreBukkitAPI extends CoreAPI { @Override public @NotNull AudienceProvider getAudienceProvider() { - return audienceProvider; + return HamsterCorePlugin.getInstance().getAudienceProvider(); } @Override diff --git a/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/HamsterCorePlugin.java b/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/HamsterCorePlugin.java index bd147c9..6d5c8db 100644 --- a/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/HamsterCorePlugin.java +++ b/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/HamsterCorePlugin.java @@ -2,12 +2,14 @@ package cn.hamster3.mc.plugin.core.bungee; import cn.hamster3.mc.plugin.core.bungee.api.CoreBungeeAPI; import cn.hamster3.mc.plugin.core.common.constant.CoreConstantObjects; +import net.kyori.adventure.platform.bungeecord.BungeeAudiences; import net.md_5.bungee.api.plugin.Plugin; import java.util.logging.Logger; public class HamsterCorePlugin extends Plugin { private static HamsterCorePlugin instance; + private BungeeAudiences audienceProvider; public static HamsterCorePlugin getInstance() { return instance; @@ -16,6 +18,13 @@ public class HamsterCorePlugin extends Plugin { @Override public void onLoad() { instance = this; + Logger logger = getLogger(); + long start = System.currentTimeMillis(); + logger.info("仓鼠核心正在初始化..."); + CoreBungeeAPI.init(); + logger.info("CoreBungeeAPI 已初始化."); + long time = System.currentTimeMillis() - start; + logger.info("仓鼠核心初始化完成,总计耗时 " + time + " ms."); } @Override @@ -23,10 +32,10 @@ public class HamsterCorePlugin extends Plugin { Logger logger = getLogger(); long start = System.currentTimeMillis(); logger.info("仓鼠核心正在启动..."); - CoreBungeeAPI.init(); - logger.info("CoreAPI 已初始化."); + audienceProvider = BungeeAudiences.create(this); + logger.info("完成 BungeeAudiences 挂载."); long time = System.currentTimeMillis() - start; - logger.info("仓鼠核心已启动,总计耗时 " + time + " ms."); + logger.info("仓鼠核心启动完成,总计耗时 " + time + " ms."); } @Override @@ -41,4 +50,8 @@ public class HamsterCorePlugin extends Plugin { long time = System.currentTimeMillis() - start; logger.info("仓鼠核心已关闭,总计耗时 " + time + " ms."); } + + public BungeeAudiences getAudienceProvider() { + return audienceProvider; + } } diff --git a/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/api/CoreBungeeAPI.java b/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/api/CoreBungeeAPI.java index a7b1353..b554fe2 100644 --- a/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/api/CoreBungeeAPI.java +++ b/hamster-core-bungeecord/src/main/java/cn/hamster3/mc/plugin/core/bungee/api/CoreBungeeAPI.java @@ -6,18 +6,15 @@ import cn.hamster3.mc.plugin.core.common.api.CoreAPI; import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariDataSource; import net.kyori.adventure.platform.AudienceProvider; -import net.kyori.adventure.platform.bungeecord.BungeeAudiences; import net.md_5.bungee.config.Configuration; import org.jetbrains.annotations.NotNull; @SuppressWarnings("unused") public final class CoreBungeeAPI extends CoreAPI { - private final BungeeAudiences audienceProvider; private final HikariDataSource datasource; private CoreBungeeAPI() { HamsterCorePlugin plugin = HamsterCorePlugin.getInstance(); - audienceProvider = BungeeAudiences.create(plugin); Configuration config = BungeeCordUtils.getPluginConfig(plugin); @@ -47,7 +44,7 @@ public final class CoreBungeeAPI extends CoreAPI { @Override public @NotNull AudienceProvider getAudienceProvider() { - return audienceProvider; + return HamsterCorePlugin.getInstance().getAudienceProvider(); } @Override