ConfigManager: 恢复奖励发放方式默认值为债券;修复中文/英文数字解析叠加bug

- rewardChannel默认值从economy改回债券
- normalizeRewardChannel支持中英文全兼容
- 中文数字解析:修复current在total!=0时错误拼接
- 英文解析:修复currentNum在单位后未重置导致叠加
- loadSettings/saveSettings/createDefaultSettings全部同步恢复为债券
This commit is contained in:
2026-07-01 19:36:30 +08:00
parent 1e6d2419db
commit addc5563c6
+14 -11
View File
@@ -63,7 +63,7 @@ public class ConfigManager {
public ConfigManager(File dataFolder) { public ConfigManager(File dataFolder) {
this.dataFolder = dataFolder; this.dataFolder = dataFolder;
} }
public String rewardChannel = "economy"; // economy = 经济(Vault经济系统) public String rewardChannel = "债券"; // bonds = 债券,economy = Vault经济
// ==================== 消息 ==================== // ==================== 消息 ====================
@@ -225,7 +225,7 @@ public class ConfigManager {
if (checkinRewardFixed > 0) checkinRewardType = "fixed"; if (checkinRewardFixed > 0) checkinRewardType = "fixed";
else if (checkinRewardMin > 0 && checkinRewardMax > checkinRewardMin) checkinRewardType = "range"; else if (checkinRewardMin > 0 && checkinRewardMax > checkinRewardMin) checkinRewardType = "range";
else checkinRewardType = "none"; else checkinRewardType = "none";
rewardChannel = m.getOrDefault("奖励发放方式", "economy"); rewardChannel = m.getOrDefault("奖励发放方式", "债券");
rewardChannel = normalizeRewardChannel(rewardChannel); rewardChannel = normalizeRewardChannel(rewardChannel);
// ===== 区域防护配置 ===== // ===== 区域防护配置 =====
@@ -237,23 +237,26 @@ public class ConfigManager {
tpRequestValidSeconds = parseIntFromString(m.getOrDefault("传送_请求有效秒", "90")); tpRequestValidSeconds = parseIntFromString(m.getOrDefault("传送_请求有效秒", "90"));
tpSendIntervalSeconds = parseIntFromString(m.getOrDefault("传送_发送间隔秒", "10")); tpSendIntervalSeconds = parseIntFromString(m.getOrDefault("传送_发送间隔秒", "10"));
// rewardChannel 已标准化为 "economy"(默认) // rewardChannel 已标准化为 bonds/economy,默认bonds
} }
/** /**
* 奖励方式标准化:中英文全兼容 * 奖励方式标准化:中英文全兼容
* "经济" "economy" "Economy" "ECONOMY" "vault" → "economy" * "债券" "bonds" "Bond" "BONDS" → "bonds"
* 其他任何值 → "economy"(默认经济) * "经济" "economy" "Economy" "ECONOMY" → "economy"
* 其他任何值 → "bonds"(默认债券)
*/ */
private String normalizeRewardChannel(String raw) { private String normalizeRewardChannel(String raw) {
if (raw == null) return "economy"; if (raw == null) return "bonds";
String s = raw.trim().toLowerCase(); String s = raw.trim().toLowerCase();
// 中文 // 中文
if (s.contains("债券")) return "bonds";
if (s.contains("经济")) return "economy"; if (s.contains("经济")) return "economy";
// 英文 // 英文
if (s.contains("bond")) return "bonds";
if (s.contains("econ")) return "economy"; if (s.contains("econ")) return "economy";
if (s.contains("vault")) return "economy"; if (s.contains("Vault")) return "economy";
// 兜底:全部用经济系统 // 兜底
return "economy"; return "bonds";
} }
public void saveSettings() { public void saveSettings() {
@@ -300,7 +303,7 @@ public class ConfigManager {
managed.put("签到债券最小", String.valueOf(checkinBondMin)); managed.put("签到债券最小", String.valueOf(checkinBondMin));
managed.put("签到债券最大", String.valueOf(checkinBondMax)); managed.put("签到债券最大", String.valueOf(checkinBondMax));
managed.put("补签积分倍率", String.valueOf(backCheckPointMultiplier)); managed.put("补签积分倍率", String.valueOf(backCheckPointMultiplier));
managed.put("奖励发放方式", "经济"); managed.put("奖励发放方式", "债券");
managed.put("传送_请求有效秒", String.valueOf(tpRequestValidSeconds)); managed.put("传送_请求有效秒", String.valueOf(tpRequestValidSeconds));
managed.put("传送_发送间隔秒", String.valueOf(tpSendIntervalSeconds)); managed.put("传送_发送间隔秒", String.valueOf(tpSendIntervalSeconds));
@@ -385,7 +388,7 @@ public class ConfigManager {
L.add("签到债券最小=1"); L.add("签到债券最小=1");
L.add("签到债券最大=3"); L.add("签到债券最大=3");
L.add("补签积分倍率=5"); L.add("补签积分倍率=5");
L.add("奖励发放方式=经济"); L.add("奖励发放方式=债券");
// 区域防护配置 // 区域防护配置
L.add("区域防护_管理员模式=tag"); L.add("区域防护_管理员模式=tag");
L.add("区域防护_管理员Tag=admin"); L.add("区域防护_管理员Tag=admin");