diff options
| author | Sho Sakuma <me@m1sk9.dev> | 2026-01-10 11:06:00 +0900 |
|---|---|---|
| committer | Sho Sakuma <me@m1sk9.dev> | 2026-01-10 11:06:00 +0900 |
| commit | 68cb31756e5a9a6031f3830bc5792cd43e366cf8 (patch) | |
| tree | 4a03862b4176d0f444a355667834acec2421b946 | |
| parent | 4e13b2a51fa73e9c9d33081c608074baa2cf893c (diff) | |
| download | LunaticChat-68cb31756e5a9a6031f3830bc5792cd43e366cf8.tar.gz LunaticChat-68cb31756e5a9a6031f3830bc5792cd43e366cf8.tar.bz2 LunaticChat-68cb31756e5a9a6031f3830bc5792cd43e366cf8.zip | |
chore: Change feature config
5 files changed, 58 insertions, 8 deletions
diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/ConfigManager.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/ConfigManager.kt index d10a4e6..d138914 100644 --- a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/ConfigManager.kt +++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/ConfigManager.kt @@ -1,7 +1,9 @@ package dev.m1sk9.lunaticChat.paper.config import dev.m1sk9.lunaticChat.paper.config.key.FeaturesConfig +import dev.m1sk9.lunaticChat.paper.config.key.JapaneseConversionFeatureConfig import dev.m1sk9.lunaticChat.paper.config.key.MessageFormatConfig +import dev.m1sk9.lunaticChat.paper.config.key.QuickRepliesFeatureConfig import org.bukkit.configuration.file.FileConfiguration object ConfigManager { @@ -15,8 +17,32 @@ object ConfigManager { LunaticChatConfiguration( features = FeaturesConfig( - japaneseConversionEnabled = configFile.getBoolean("features.japaneseConversionEnabled", false), - quickRepliesEnabled = configFile.getBoolean("features.quickRepliesEnabled", true), + quickRepliesEnabled = + QuickRepliesFeatureConfig( + enabled = + configFile.getBoolean("features.quickReplies.enabled", true), + ), + japaneseConversion = + JapaneseConversionFeatureConfig( + enabled = configFile.getBoolean("features.japaneseConversion.enabled", false), + cacheMaxEntries = configFile.getInt("features.japaneseConversion.cacheMaxEntries", 500), + cacheSaveIntervalSeconds = + configFile.getInt( + "features.japaneseConversion.cacheSaveIntervalSeconds", + 300, + ), + cacheFilePath = + configFile.getString( + "features.japaneseConversion.cacheFilePath", + "conversion_cache.json", + )!!, + apiTimeout = + configFile.getLong( + "features.japaneseConversion.apiTimeout", + 3000, + ), + apiRetryAttempts = configFile.getInt("features.japaneseConversion.apiRetryAttempts", 2), + ), ), messageFormat = MessageFormatConfig( diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/FeaturesConfig.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/FeaturesConfig.kt index 56ee7ec..703ddcc 100644 --- a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/FeaturesConfig.kt +++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/FeaturesConfig.kt @@ -1,6 +1,6 @@ package dev.m1sk9.lunaticChat.paper.config.key data class FeaturesConfig( - val japaneseConversionEnabled: Boolean, - val quickRepliesEnabled: Boolean, + val quickRepliesEnabled: QuickRepliesFeatureConfig, + val japaneseConversion: JapaneseConversionFeatureConfig, ) diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/JapaneseConversionFeatureConfig.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/JapaneseConversionFeatureConfig.kt new file mode 100644 index 0000000..c329085 --- /dev/null +++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/JapaneseConversionFeatureConfig.kt @@ -0,0 +1,10 @@ +package dev.m1sk9.lunaticChat.paper.config.key + +data class JapaneseConversionFeatureConfig( + val enabled: Boolean, + val cacheMaxEntries: Int, + val cacheSaveIntervalSeconds: Int, + val cacheFilePath: String, + val apiTimeout: Long, + val apiRetryAttempts: Int, +) diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/QuickRepliesFeatureConfig.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/QuickRepliesFeatureConfig.kt new file mode 100644 index 0000000..cf0c00d --- /dev/null +++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/config/key/QuickRepliesFeatureConfig.kt @@ -0,0 +1,5 @@ +package dev.m1sk9.lunaticChat.paper.config.key + +data class QuickRepliesFeatureConfig( + val enabled: Boolean, +) diff --git a/platform-paper/src/main/resources/config.yml b/platform-paper/src/main/resources/config.yml index dd5db15..00478a1 100644 --- a/platform-paper/src/main/resources/config.yml +++ b/platform-paper/src/main/resources/config.yml @@ -20,10 +20,19 @@ debug: false # ---------------------------------------------- features: - # If enabled, enables the conversion function from Roman letters to hiragana. - japaneseConversionEnabled: false - # If enabled, the quick reply feature via the /reply command will be activated. - quickRepliesEnabled: true + quickReplies: + # If enabled, the quick reply feature via the /reply command will be activated. + enabled: true + japaneseConversion: + # If enabled, enables the conversion function from Roman letters to hiragana. + enabled: false + cache: + maxEntries: 500 + saveIntervalSeconds: 300 + filePath: "conversion_cache.json" + api: + timeout: 3000 + retryAttempts: 2 # ---------------------------------------------- # --------- Message Format Settings -------- |
