Merge branch '1.0.0'

This commit is contained in:
2023-09-24 08:00:25 +08:00
3 changed files with 41 additions and 11 deletions

View File

@@ -64,9 +64,7 @@ public class HamsterCorePlugin extends JavaPlugin {
long time = System.currentTimeMillis() - start;
Bukkit.getScheduler().runTaskLater(this, () -> {
PointAPI.reloadPlayerPointAPIHook();
logger.info("已完成 PlayerPoints 挂载.");
VaultAPI.reloadVaultHook();
logger.info("已完成 VaultAPI 挂载.");
}, 1L);
logger.info("仓鼠核心启动完成,总计耗时 " + time + " ms.");
}

View File

@@ -7,6 +7,8 @@ import net.milkbowl.vault.permission.Permission;
import org.bukkit.Bukkit;
import org.bukkit.plugin.RegisteredServiceProvider;
import java.util.logging.Logger;
/**
* Vault API
*/
@@ -25,36 +27,38 @@ public class VaultAPI {
economy = null;
permission = null;
vaultEnabled = Bukkit.getPluginManager().isPluginEnabled("Vault");
Logger logger = HamsterCorePlugin.getInstance().getLogger();
if (!vaultEnabled) {
HamsterCorePlugin.getInstance().getLogger().warning("未检测到 Vault 插件!");
logger.warning("未检测到 Vault 插件!");
return;
}
HamsterCorePlugin.getInstance().getLogger().info("已连接 Vault!");
logger.info("已连接 Vault!");
RegisteredServiceProvider<Chat> chatProvider = Bukkit.getServer().getServicesManager().getRegistration(Chat.class);
if (chatProvider != null) {
chat = chatProvider.getProvider();
HamsterCorePlugin.getInstance().getLogger().info("聊天系统挂接成功.");
logger.info("聊天系统挂接成功.");
} else {
HamsterCorePlugin.getInstance().getLogger().warning("未检测到聊天系统!");
logger.warning("未检测到聊天系统!");
}
RegisteredServiceProvider<Economy> economyProvider = Bukkit.getServer().getServicesManager().getRegistration(Economy.class);
if (economyProvider != null) {
economy = economyProvider.getProvider();
HamsterCorePlugin.getInstance().getLogger().info("经济系统挂接成功.");
logger.info("经济系统挂接成功.");
} else {
HamsterCorePlugin.getInstance().getLogger().warning("未检测到经济系统!");
logger.warning("未检测到经济系统!");
}
RegisteredServiceProvider<Permission> permissionProvider = Bukkit.getServer().getServicesManager().getRegistration(Permission.class);
if (permissionProvider != null) {
permission = permissionProvider.getProvider();
HamsterCorePlugin.getInstance().getLogger().info("权限系统挂接成功.");
logger.info("权限系统挂接成功.");
} else {
HamsterCorePlugin.getInstance().getLogger().warning("未检测到权限插件!");
logger.warning("未检测到权限插件!");
}
logger.info("已完成 VaultAPI 挂载.");
}
/**

View File

@@ -41,10 +41,23 @@ public final class CoreBungeeCordUtils {
}
}
@NotNull
public static Configuration getPluginConfig(@NotNull Plugin plugin, @NotNull String filename) {
File configFile = new File(plugin.getDataFolder(), filename);
if (!configFile.exists()) {
return saveDefaultConfig(plugin, filename);
}
try {
return ConfigurationProvider.getProvider(YamlConfiguration.class).load(configFile);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
@NotNull
public static Configuration saveDefaultConfig(@NotNull Plugin plugin) {
if (plugin.getDataFolder().mkdir()) {
plugin.getLogger().info("创建插件文件夹...");
plugin.getLogger().info("已生成插件存档文件夹...");
}
File configFile = new File(plugin.getDataFolder(), "config.yml");
try {
@@ -55,4 +68,19 @@ public final class CoreBungeeCordUtils {
throw new RuntimeException(e);
}
}
@NotNull
public static Configuration saveDefaultConfig(@NotNull Plugin plugin, @NotNull String filename) {
if (plugin.getDataFolder().mkdir()) {
plugin.getLogger().info("已生成插件存档文件夹...");
}
File configFile = new File(plugin.getDataFolder(), filename);
try {
InputStream in = plugin.getResourceAsStream(filename);
Files.copy(in, configFile.toPath());
return ConfigurationProvider.getProvider(YamlConfiguration.class).load(configFile);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}