|
33 | 33 | * Main plugin class for GeyserVoice. |
34 | 34 | */ |
35 | 35 | public class GeyserVoice extends JavaPlugin implements BaseGeyserVoice { |
| 36 | + private static final String TRANSPORT_HOST_PATH = "config.voicecraft.transport.host"; |
| 37 | + private static final String TRANSPORT_PORT_PATH = "config.voicecraft.transport.port"; |
| 38 | + private static final String TRANSPORT_LOGIN_TOKEN_PATH = "config.voicecraft.transport.login-token"; |
| 39 | + private static final String LEGACY_HOST_PATH = "config.voicecraft.host"; |
| 40 | + private static final String LEGACY_PORT_PATH = "config.voicecraft.port"; |
| 41 | + private static final String LEGACY_LOGIN_TOKEN_PATH = "config.voicecraft.login-token"; |
| 42 | + private static final String MANAGED_VOICE_PORT_PATH = "config.voicecraft.voice.port"; |
| 43 | + |
36 | 44 | private static @Getter GeyserVoice instance; |
37 | 45 | private @Getter boolean isConnected = false; |
38 | 46 | private @Getter String host = ""; |
@@ -109,9 +117,9 @@ public void reload() { |
109 | 117 | } |
110 | 118 | usesProxy = newUsesProxy; |
111 | 119 |
|
112 | | - host = getConfig().getString("config.voicecraft.host"); |
113 | | - port = getConfig().getInt("config.voicecraft.port"); |
114 | | - loginToken = getConfig().getString("config.voicecraft.login-token"); |
| 120 | + host = getTransportHost(); |
| 121 | + port = getTransportPort(); |
| 122 | + loginToken = getTransportLoginToken(); |
115 | 123 | int proximityDistance = getConfig().getInt("config.voice.proximity-distance"); |
116 | 124 | boolean proximityToggle = getConfig().getBoolean("config.voice.proximity-toggle"); |
117 | 125 | boolean voiceEffects = getConfig().getBoolean("config.voice.voice-effects"); |
@@ -150,9 +158,9 @@ public void reload() { |
150 | 158 | */ |
151 | 159 | public Boolean connect(String host, int port, String loginToken) { |
152 | 160 | if (Objects.nonNull(host) && Objects.nonNull(loginToken)) { |
153 | | - getConfig().set("config.voicecraft.host", host); |
154 | | - getConfig().set("config.voicecraft.port", port); |
155 | | - getConfig().set("config.voicecraft.login-token", loginToken); |
| 161 | + getConfig().set(TRANSPORT_HOST_PATH, host); |
| 162 | + getConfig().set(TRANSPORT_PORT_PATH, port); |
| 163 | + getConfig().set(TRANSPORT_LOGIN_TOKEN_PATH, loginToken); |
156 | 164 | saveConfig(); |
157 | 165 | reloadConfig(); |
158 | 166 | reload(); |
@@ -397,4 +405,23 @@ private InputStream openConfigTemplate(String templatePath) { |
397 | 405 | InputStream input = getResource(templatePath); |
398 | 406 | return input != null ? input : getResource("config/en.yml"); |
399 | 407 | } |
| 408 | + |
| 409 | + public int getManagedVoicePort() { |
| 410 | + return getConfig().getInt(MANAGED_VOICE_PORT_PATH, 1111); |
| 411 | + } |
| 412 | + |
| 413 | + private String getTransportHost() { |
| 414 | + String value = getConfig().getString(TRANSPORT_HOST_PATH); |
| 415 | + return value != null ? value : getConfig().getString(LEGACY_HOST_PATH); |
| 416 | + } |
| 417 | + |
| 418 | + private int getTransportPort() { |
| 419 | + int value = getConfig().getInt(TRANSPORT_PORT_PATH, -1); |
| 420 | + return value > 0 ? value : getConfig().getInt(LEGACY_PORT_PATH); |
| 421 | + } |
| 422 | + |
| 423 | + private String getTransportLoginToken() { |
| 424 | + String value = getConfig().getString(TRANSPORT_LOGIN_TOKEN_PATH); |
| 425 | + return value != null ? value : getConfig().getString(LEGACY_LOGIN_TOKEN_PATH); |
| 426 | + } |
400 | 427 | } |
0 commit comments