diff --git a/src/main/java/top/redstarmc/plugin/redstarlib/manager/ConfigurationManager.java b/src/main/java/top/redstarmc/plugin/redstarlib/manager/ConfigurationManager.java
index 749103a..dae7c57 100644
--- a/src/main/java/top/redstarmc/plugin/redstarlib/manager/ConfigurationManager.java
+++ b/src/main/java/top/redstarmc/plugin/redstarlib/manager/ConfigurationManager.java
@@ -1,6 +1,7 @@
package top.redstarmc.plugin.redstarlib.manager;
import org.bukkit.configuration.file.YamlConfiguration;
+import org.bukkit.plugin.java.JavaPlugin;
import java.io.File;
import java.io.IOException;
@@ -9,9 +10,8 @@
/**
*
配置管理器
* 抽象类,提供了 {@link YamlConfiguration} 相关的操作代码,以免重复编写 IO流 相关操作。
- * 使用方法:
- * 1.直接使用,new 出实例即可。
- * 2.创建子类,super 然后 new 子类即可。
+ * 使用方法:1.直接使用,new 出实例即可;2.创建子类,super 然后 new 子类即可。
+ * 注意事项:new本类会自动读取配置文件,但并不会保存默认的配置文件,如果你想保存默认配置文件,使用 {@link #saveMapConfig} 或 {@link #saveJarConfig}
*/
public abstract class ConfigurationManager {
@@ -23,11 +23,12 @@ public abstract class ConfigurationManager {
private final File configFile;
- private final YamlConfiguration config;
+ private YamlConfiguration config;
- public ConfigurationManager(File configFile, YamlConfiguration config) {
+ public ConfigurationManager(File configFile) {
this.configFile = configFile;
- this.config = config;
+
+ config = YamlConfiguration.loadConfiguration(configFile);
}
public ConfigurationManager(ConfigurationManager manager){
@@ -35,6 +36,7 @@ public ConfigurationManager(ConfigurationManager manager){
this.config = manager.getConfig();
}
+
/**
* 创建文件
* 如果没有这个文件就自动创建,并返回 {@link YamlConfiguration} 配置文件,方便操作
@@ -58,16 +60,22 @@ public YamlConfiguration initFile(){
* @param configMap {@link Map} 类型的配置文件
*/
public void saveMapConfig(Map configMap){
- if (!configFile.exists()) return;
+ if (!configFile.exists()) initFile();
configMap.forEach(config::set);
save();
}
- public void saveJarConfig(String fileName){
-
+ /**
+ * 从 Jar 包中保存配置文件
+ * @param file 文件名,请务必和你创建 {@link File} 中的文件名保持一致
+ * @param plugin 你插件的主类,若在主类中运行可以使用 this 传入。
+ */
+ public void saveJarConfig(String file, T plugin){
+ plugin.saveResource(file,true);
+ config = YamlConfiguration.loadConfiguration(configFile);
}
/**
diff --git a/src/main/java/top/redstarmc/plugin/redstarlib/manager/LoggerManager.java b/src/main/java/top/redstarmc/plugin/redstarlib/manager/LoggerManager.java
index 07cf65a..af5271d 100644
--- a/src/main/java/top/redstarmc/plugin/redstarlib/manager/LoggerManager.java
+++ b/src/main/java/top/redstarmc/plugin/redstarlib/manager/LoggerManager.java
@@ -3,6 +3,13 @@
import org.bukkit.Bukkit;
import top.redstarmc.plugin.redstarlib.utils.toStrings;
+/**
+ * 日志管理器
+ * 抽象类,提供了日志相关的操作代码,以免重复编写发送日志的操作。
+ * 使用方法:
+ * 1.直接使用,new 出实例即可。
+ * 2.创建子类,super 然后 new 子类即可。
+ */
public abstract class LoggerManager {
public String INFO_PREFIX;