Compare commits

...
Author SHA1 Message Date
dependabot[bot] c51e09de07 Bump actions/setup-java from 5 to 5.6.0
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 5 to 5.6.0.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v5...v5.6.0)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: 5.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-01 01:53:19 +00:00
Nassim Jahnke acc5d89263 5.1.0 Release 2026-05-17 09:44:56 +02:00
Maintenancer 46b9dc4e04 New Crowdin updates (#204) 2026-05-15 14:02:24 +02:00
Maintenancer 5d37138b64 New Crowdin updates (#195) 2026-05-15 10:49:15 +02:00
Nassim Jahnke 83f3a850c5 Add separate webhook language strings; add timestamp param 2026-05-15 10:48:27 +02:00
Nassim Jahnke b58cb9709b Update deps 2026-05-15 10:26:35 +02:00
旋律 00f6b25a67 Fix initial loading of proxied-maintenance-servers (#197) 2026-04-25 09:08:47 +02:00
Nassim Jahnke e5fd9e6f37 Bump version to 5.0.1-SNAPSHOT 2026-04-25 09:08:10 +02:00
Nassim Jahnke 051d916f87 [ci skip] Add missing changelog for webhooks 2026-04-20 15:18:24 +02:00
35 changed files with 309 additions and 58 deletions

No files matched your search

+10 -1
View File
@@ -1,6 +1,14 @@
# Maintenance Changelog
This file contains update logs for this project. The top may contain a `Unreleased` section, gathering update logs for a future update during development.
---
## 5.1.0 - May 17th 2026
### Changed
- Made Discord webhooks configurable separately from command messages, including a new `%TIMESTAMP%` parameter for Discord timestamps (e.g. `<t:%TIMESTAMP%:R>`)
### Fixed
- Velocity/Bungee: Fixed proxied-maintenance-servers config loading
---
## 5.0.0 - April 17th 2026
@@ -17,6 +25,7 @@ This update removes *a lot* of legacy code, making the code-base a great bit mor
- Updated proxy/global toggle syntax: `/maintenance on [mode]`
- For proxy servers: `/maintenance on global [mode]`, `/maintenance on <server> [mode]`
- Other updated commands: `/maintenance motd [timer] [mode]`, `/maintenance setmotd [timer] [mode] ...`, `/maintenance removemotd [timer] [mode] ...`
- **Added `webhook` config option for Discord webhooks** when the maintenance status changes, a timer is started or a join is blocked
- **Added `%REASON%` variable to messages**, using the `active-reason` config option. This allows for dynamic MOTD and other messages via a quick command without modifying the messages themselves
- Can be changed via the `/maintenance setreason <reason>` command
- **Added `/maintenance status` command** on Paper/Sponge to display the current maintenance status as well as any running start or end timers.
@@ -24,7 +33,7 @@ This update removes *a lot* of legacy code, making the code-base a great bit mor
- Velocity/Bungee: **Replaced `mysql` section with `redis`**. This is a more suitable database for such reading and sharing of data and no longer means some server pings can take multiple seconds, if you have multiple proxies linked
### Fixed
* Velocity/Bungee: Fixed the `/maintenance schedule` command for single servers having swapped time arguments.
- Velocity/Bungee: Fixed the `/maintenance schedule` command for single servers having swapped time arguments
---
## 4.3.0 - September 17th 2024
### Changed
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
uses: gradle/actions/setup-gradle@v6
- name: Set up JDK 21
uses: actions/setup-java@v5
uses: actions/setup-java@v5.6.0
with:
java-version: 21
distribution: 'temurin'
+1 -1
View File
@@ -8,6 +8,6 @@ repositories {
dependencies {
// version must be manually kept in sync with the one in root project settings.gradle.kts
implementation("com.gradleup.shadow:shadow-gradle-plugin:9.3.1")
implementation("com.gradleup.shadow:shadow-gradle-plugin:9.4.1")
implementation("com.gradleup.nmcp:com.gradleup.nmcp.gradle.plugin:1.4.4")
}
@@ -49,7 +49,6 @@ import java.util.Set;
import java.util.UUID;
import java.util.logging.Level;
import java.util.regex.Pattern;
import net.kyori.adventure.text.Component;
import org.jetbrains.annotations.Blocking;
import org.jetbrains.annotations.Nullable;
@@ -136,12 +135,10 @@ public abstract class MaintenanceProxyPlugin extends MaintenancePlugin implement
}
eventManager.callEvent(new ServerMaintenanceChangedEvent(server, maintenance));
if (settingsProxy.isWebhookEnabled()) {
final Component message = settingsProxy.getMessage(
maintenance ? "singleMaintenanceActivated" : "singleMaintenanceDeactivated",
"%SERVER%", server.getName()
);
sendWebhookMessage(message, maintenance ? DiscordWebhook.EventType.MAINTENANCE_ENABLED : DiscordWebhook.EventType.MAINTENANCE_DISABLED);
if (maintenance) {
sendWebhookMessage("webhookSingleMaintenanceActivated", DiscordWebhook.EventType.MAINTENANCE_ENABLED, "%SERVER%", server.getName());
} else {
sendWebhookMessage("webhookSingleMaintenanceDeactivated", DiscordWebhook.EventType.MAINTENANCE_DISABLED, "%SERVER%", server.getName());
}
for (final String command : (maintenance ? settingsProxy.getCommandsOnMaintenanceEnable(server) : settingsProxy.getCommandsOnMaintenanceDisable(server))) {
@@ -37,7 +37,7 @@ import org.jetbrains.annotations.Nullable;
public final class SettingsProxy extends Settings {
private Map<String, String> maintenanceServers = new LinkedHashMap<>();
private Map<String, String> maintenanceServers;
private List<String> fallbackServers;
private String waitingServer;
private boolean fallbackToOfflineUUID;
@@ -59,7 +59,9 @@ public final class SingleEndtimerCommand extends ProxyCommandInfo {
final Component message = getMessage("endtimerStarted", "%TIME%", plugin.getRunnable().getTime());
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.ENDTIMER_STARTED);
plugin.sendWebhookMessage("webhookEndtimerStarted", DiscordWebhook.EventType.ENDTIMER_STARTED,
"%TIME%", plugin.getRunnable().getTime(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
} else if (args.length == 3) {
if (checkPermission(sender, "singleserver.timer")) return;
@@ -83,7 +85,10 @@ public final class SingleEndtimerCommand extends ProxyCommandInfo {
"%SERVER%", server.getName()
);
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.ENDTIMER_STARTED);
plugin.sendWebhookMessage("webhookSingleEndtimerStarted", DiscordWebhook.EventType.ENDTIMER_STARTED,
"%TIME%", runnable.getTime(),
"%SERVER%", server.getName(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
} else {
sender.send(getHelpMessage());
}
@@ -58,7 +58,9 @@ public final class SingleStarttimerCommand extends ProxyCommandInfo {
plugin.startMaintenanceRunnable(duration, true);
final Component message = getMessage("starttimerStarted", "%TIME%", plugin.getRunnable().getTime());
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.STARTTIMER_STARTED);
plugin.sendWebhookMessage("webhookStarttimerStarted", DiscordWebhook.EventType.STARTTIMER_STARTED,
"%TIME%", plugin.getRunnable().getTime(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
} else if (args.length == 3 || args.length == 4) {
if (checkPermission(sender, "singleserver.timer")) return;
@@ -84,7 +86,10 @@ public final class SingleStarttimerCommand extends ProxyCommandInfo {
"%SERVER%", server.getName()
);
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.STARTTIMER_STARTED);
plugin.sendWebhookMessage("webhookSingleStarttimerStarted", DiscordWebhook.EventType.STARTTIMER_STARTED,
"%TIME%", runnable.getTime(),
"%SERVER%", server.getName(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
} else {
sender.send(getHelpMessage());
}
@@ -63,7 +63,6 @@ import java.util.logging.Logger;
import java.util.regex.Pattern;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import org.jetbrains.annotations.Nullable;
public abstract class MaintenancePlugin implements Maintenance {
@@ -111,14 +110,17 @@ public abstract class MaintenancePlugin implements Maintenance {
serverListPlusHook.setEnabled(!maintenance);
}
final Component message = maintenance ? settings.getMessage("maintenanceActivated") : settings.getMessage("maintenanceDeactivated");
broadcast(message);
broadcast(maintenance ? settings.getMessage("maintenanceActivated") : settings.getMessage("maintenanceDeactivated"));
if (maintenance && settings.isKickOnlinePlayers()) {
kickPlayers();
}
eventManager.callEvent(new MaintenanceChangedEvent(maintenance));
sendWebhookMessage(message, maintenance ? DiscordWebhook.EventType.MAINTENANCE_ENABLED : DiscordWebhook.EventType.MAINTENANCE_DISABLED);
if (maintenance) {
sendWebhookMessage("webhookMaintenanceActivated", DiscordWebhook.EventType.MAINTENANCE_ENABLED);
} else {
sendWebhookMessage("webhookMaintenanceDeactivated", DiscordWebhook.EventType.MAINTENANCE_DISABLED);
}
for (final String command : (maintenance ? settings.getCommandsOnMaintenanceEnable() : settings.getCommandsOnMaintenanceDisable())) {
try {
@@ -129,23 +131,24 @@ public abstract class MaintenancePlugin implements Maintenance {
}
}
public void sendWebhookMessage(final Component message, final DiscordWebhook.EventType eventType) {
public void sendWebhookMessage(final String messageKey, final DiscordWebhook.EventType eventType, final String... replacements) {
if (!settings.isWebhookEnabled() || !settings.isWebhookEventEnabled(eventType.configKey())) {
return;
}
async(() -> {
try {
// Small hack instead of adding a bunch of extra messages: Re-use existing language file entries, but strip the prefix
final String plainMessage = PlainTextComponentSerializer.plainText().serialize(message)
.replace(settings.getPlainTextPrefix(), "").trim();
DiscordWebhook.sendMessage(plainMessage, eventType, settings);
DiscordWebhook.sendMessage(settings.getWebhookMessage(messageKey, replacements), eventType, settings);
} catch (final Exception e) {
getLogger().log(Level.WARNING, "Could not send Discord webhook message", e);
}
});
}
public String getTargetTimestamp(final Duration duration) {
return Long.toString((System.currentTimeMillis() + duration.toMillis()) / TimeUnit.SECONDS.toMillis(1));
}
public String replacePingVariables(final String component) {
return replacePingVariables(component, settings.activeMode());
}
@@ -48,7 +48,7 @@ import org.jetbrains.annotations.Nullable;
public class Settings implements eu.kennytv.maintenance.api.Settings {
public static final String NEW_LINE_REPLACEMENT = "<br>";
private static final int CONFIG_VERSION = 11;
private static final int LANGUAGE_VERSION = 4;
private static final int LANGUAGE_VERSION = 5;
protected final MaintenancePlugin plugin;
private final Map<UUID, String> whitelistedPlayers = new HashMap<>();
private final String[] unsupportedFields;
@@ -449,6 +449,25 @@ public class Settings implements eu.kennytv.maintenance.api.Settings {
return replaceNewlineVar(s).replace("<prefix>", prefixString);
}
public String getWebhookMessage(final String path, final String... replacements) {
String s = language.getString(path);
if (s == null) {
plugin.getLogger().warning("The language file is missing the following webhook message: " + path);
return path;
}
if (replacements.length != 0) {
if (replacements.length % 2 != 0) {
throw new IllegalArgumentException("Invalid replacement count: " + replacements.length);
}
for (int i = 0; i < replacements.length; i += 2) {
final String key = replacements[i];
s = s.replace(key, replacements[i + 1]);
}
}
return replaceNewlineVar(s);
}
public @Nullable String getLanguageStringOrNull(final String path, final String... replacements) {
return language.contains(path) ? getLanguageString(path, replacements) : null;
}
@@ -48,6 +48,8 @@ public final class EndtimerCommand extends CommandInfo {
final Component message = getMessage("endtimerStarted", "%TIME%", plugin.getRunnable().getTime());
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.ENDTIMER_STARTED);
plugin.sendWebhookMessage("webhookEndtimerStarted", DiscordWebhook.EventType.ENDTIMER_STARTED,
"%TIME%", plugin.getRunnable().getTime(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
}
}
@@ -48,6 +48,8 @@ public final class StarttimerCommand extends CommandInfo {
final Component message = getMessage("starttimerStarted", "%TIME%", plugin.getRunnable().getTime());
sender.send(message);
plugin.sendWebhookMessage(message, DiscordWebhook.EventType.STARTTIMER_STARTED);
plugin.sendWebhookMessage("webhookStarttimerStarted", DiscordWebhook.EventType.STARTTIMER_STARTED,
"%TIME%", plugin.getRunnable().getTime(),
"%TIMESTAMP%", plugin.getTargetTimestamp(duration));
}
}
@@ -58,7 +58,7 @@ public abstract class JoinListenerBase {
}
if (settings.isWebhookEnabled()) {
plugin.sendWebhookMessage(settings.getMessage("joinNotification", "%PLAYER%", sender.name()), DiscordWebhook.EventType.BLOCKED_JOIN);
plugin.sendWebhookMessage("webhookJoinNotification", DiscordWebhook.EventType.BLOCKED_JOIN, "%PLAYER%", sender.name());
}
return true;
}
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [servidor] <activar en> <gr
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [servidor] <activar en> <durada del manteniment> <gray>(Programa l'activació del manteniment al servidor)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Mostra tots els servidors proxy en manteniment)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Viser alle proxyservere, der har Vedligeholdelsestilstand aktiveret)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+18 -7
View File
@@ -7,10 +7,10 @@ noPermission: "<red>Du hast nicht die erforderliche Berechtigung, um diesen Befe
kickmessage: "<red>Der Server befindet sich momentan im Wartungsmodus!<br>Bitte versuche es später nochmal!"
maintenanceActivated: "<prefix><gold>Der Wartungsmodus ist jetzt aktiviert."
maintenanceDeactivated: "<prefix><gold>Der Wartungsmodus ist nun deaktiviert."
maintenanceStatusOn: "<prefix><gold>Maintenance mode is currently <green>enabled<gold>."
maintenanceStatusOff: "<prefix><gold>Maintenance mode is currently <red>disabled<gold>."
maintenanceStatusOnWithEndTimer: "<prefix><gold>Maintenance mode is currently <green>enabled <grey>and will be disabled in <gold>%TIME%."
maintenanceStatusOffWithStartTimer: "<prefix><gold>Maintenance mode is currently <red>disabled <grey>and will be enabled in <gold>%TIME%."
maintenanceStatusOn: "<prefix><gold>Wartungsmodus ist momentan <green>aktiviert<gold>."
maintenanceStatusOff: "<prefix><gold>Wartungsmodus ist momentan <red>deaktiviert<gold>."
maintenanceStatusOnWithEndTimer: "<prefix><gold>Wartungsmodus ist momentan <green>aktiviert <grey>und wird deaktiviert in <gold>%TIME%."
maintenanceStatusOffWithStartTimer: "<prefix><gold>Wartungsmodus ist momentan <red>deaktiviert <grey>und wird aktiviert in <gold>%TIME%."
alreadyEnabled: "<prefix><red>Der Wartungsmodus ist bereits aktiviert!"
alreadyDisabled: "<prefix><red>Der Wartungsmodus ist bereits deaktiviert!"
endtimerBroadcast: "<prefix><gray>Der Wartungsmodus wird deaktiviert in: <gold>%TIME%<gray>."
@@ -73,8 +73,8 @@ singleServerAlreadyDisabled: "<prefix><red>Der Wartungsmodus ist bereits aus auf
singleServerMaintenanceList: "<prefix><gray>Unterserver, die im Wartungsmodus sind:"
singleServerMaintenanceListEmpty: "<prefix><gray>Es befindet sich momentan kein Unterserver im Wartungsmodus."
singleServerMaintenanceListEntry: "<dark_grey>- <aqua>%SERVER%"
singleServerMaintenanceListEntryWithStartTimer: "<dark_grey>- <grey>%SERVER% <yellow>starting in <gold>%TIME%"
singleServerMaintenanceListEntryWithEndTimer: "<dark_grey>- <aqua>%SERVER% <yellow>ending in <gold>%TIME%"
singleServerMaintenanceListEntryWithStartTimer: "<dark_grey>- <grey>%SERVER% <yellow>startet in <gold>%TIME%"
singleServerMaintenanceListEntryWithEndTimer: "<dark_grey>- <aqua>%SERVER% <yellow>endet in <gold>%TIME%"
second: "Sekunde"
seconds: "Sekunden"
minute: "Minute"
@@ -96,7 +96,7 @@ helpRemoveMotd: "<gold>/maintenance removemotd [Timer] [Modus] <Index> <gray>(En
helpSetMotd: "<gold>/maintenance setmotd [Timer] [Modus] <Index> <1/2> <Nachricht> <gray>(Setzte eine Motd für den Wartungsmodus. Mit dem 'timer' Argument wird eine timerspezifische Motd gesetzt)"
helpSetReason: "<gold>/maintenance setreason <reason/none> <gray>(Setzt oder löscht den %REASON% Platzhalter)"
helpReload: "<gold>/maintenance reload <gray>(Lädt Config, Language und Whitelist Dateien sowie das Maintenance Icon neu)"
helpGlobalStatus: "<gold>/maintenance status <gray>(Shows the current maintenance status and any running timers)"
helpGlobalStatus: "<gold>/maintenance status <gray>(Zeigt den aktuellen Wartungsstatus und alle laufenden Timer an)"
helpToggle: "<gold>/maintenance <on/off> [mode] <gray>(Aktiviert/deaktiviert den Wartungsmodus mit einem optionalen Anzeigemodus beim Aktivieren)"
helpUpdate: "<gold>/maintenance update <gray>(Sucht nach neuen Updates für das Plugin und lädt diese auf den Server)"
helpWhitelist: "<gold>/maintenance whitelist <gray>(Zeigt alle gewhitelisteten Spieler für den Wartungsmodus an)"
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [Server] [Modus] <Aktiviere
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [Server] [Modus] <Starte in> <Wartungsdauer> <gray>(Sobald der Timer, bspw. 1h5m, abläuft wird der Wartungsmodus für die gegebene Länge aktiviert)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Aktiviert/deaktiviert den Wartungsmodus global oder auf einem bestimmten Server mit optionalem Anzeigemodus beim Aktivieren)"
helpStatus: "<gold>/maintenance status <gray>(Zeigt alle Server an, auf denen momentan der Wartungsmodus aktiviert ist)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] [mode] <enable in>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] [mode] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Lists all proxied servers, that are currently under maintenance)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(Después del tiempo indicado, ej: 1h5m, el modo mantenimiento se habilitará.)"
helpSingleToggle: "<gold>/maintenance <on/off> [servidor|global] [mode] <gray> (Habilita/desactiva el modo de mantenimiento globalmente o en un servidor específico con un modo de visualización opcional al habilitar)"
helpStatus: "<gold>/maintenance status <dark_gray>(<gray>Enumera todos los servidores proxy, que están actualmente en mantenimiento<dark_gray>)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [serveur] <activer dans> <g
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [serveur] <activer dans> <durée de maintenance> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera activé)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Répertorie tous les serveurs mandatés actuellement en maintenance)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [szerver] <enable in> <gray
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [szerver] <enable in> <maintenance duration> <gray>(Azután a megadott időben pl. 1h5m, a karbantartás elkezdödik a megadott szerveren)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Kiírja az összes proxy szervert, ami karbantartás alatt van)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <tempo di attivazi
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <tempo di attivazione> <durata manutenzione> <gray>(Dopo il tempo specificato, es. 1h5m, la modalità manutenzione verrà attivata e durerà per il tempo indicato)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Elenca tutti i server sotto proxy che hanno la modalità manutenzione attiva)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(指定された時間(例えば1時間5分)が経過すると、メンテナンス・モードが有効になる)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(現在メンテナンス中のプロキシサーバーをすべてリストアップします。)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Lists all proxied servers, that are currently under maintenance)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Wyświetla wszystkie serwery w trybie konserwacji)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [servidor] <habilitar em> <
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [servidor] <habilitar em> <duração da manutenção> <gray>(Depois do tempo fornecido, exemplo: 1h5m, o modo de manutenção será habilitado)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Lista todos os servidores proxy que estão atualmente em manutenção)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [сервер] <enable in>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [сервер] <enable in> <maintenance duration> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет включен)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>- <white>Список всех серверов закрытых на технические работы."
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Listar alla proxiade servrar som är i underhåll)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(Belirtilen süreden sonra, Örnek: 1h5m, bakım modu deaktif olacaktır)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Şu anda bakımda olan tüm sunucuları listeler)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>- <white>Список всіх серверів, закритих на технічні роботи."
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [máy chủ] <khoảng th
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [máy chủ] <khoảng thời gian sẽ được bật sau> <khoảng thời gian bảo trì> <gray>(Sau khoảng thời gian được cho, ví dụ 1h5m (1 giờ 5 phút), chế độ bảo trì sẽ được bật)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(Liệt kê tất cả các máy chủ proxy hiện đang được bảo trì)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(在指定时间后开启指定服务器的维护模式直到指定时长结束,例如\"1h5m\")"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(列出当前正在维护的所有服务器)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+12 -1
View File
@@ -109,5 +109,16 @@ helpSingleStarttimer: "<gold>/maintenance starttimer [伺服器] <啟用時間>
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [伺服器] <啟用時間> <維護持續時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被啟用)"
helpSingleToggle: "<gold>/maintenance <on/off> [server|global] [mode] <gray>(Enables/disables maintenance mode globally or on a specific server with an optional display mode when enabling)"
helpStatus: "<gold>/maintenance status <gray>(列出目前正在維護的所有代理伺服器)"
#Discord webhook messages. These use Discord markdown, not MiniMessage.
#For timer webhooks, %TIMESTAMP% is a Unix timestamp for use in Discord timestamp tags, e.g. <t:%TIMESTAMP%:R>.
webhookMaintenanceActivated: "**Maintenance mode enabled.**"
webhookMaintenanceDeactivated: "**Maintenance mode disabled.**"
webhookStarttimerStarted: "Maintenance mode will be enabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookEndtimerStarted: "Maintenance mode will be disabled <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookJoinNotification: "Blocked join: `%PLAYER%` tried to join during maintenance."
webhookSingleMaintenanceActivated: "Maintenance mode enabled on `%SERVER%`."
webhookSingleMaintenanceDeactivated: "Maintenance mode disabled on `%SERVER%`."
webhookSingleStarttimerStarted: "Maintenance mode will be enabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
webhookSingleEndtimerStarted: "Maintenance mode will be disabled on `%SERVER%` <t:%TIMESTAMP%:R> (`%TIME%`)."
#Used for autoupdating the language file, do not change this value.
language-version: 4
language-version: 5
+1 -1
View File
@@ -1,4 +1,4 @@
projectVersion=5.0.0
projectVersion=5.1.0
# Gradle properties
org.gradle.daemon=true
+1 -1
View File
@@ -2,7 +2,7 @@ metadata.format.version = "1.1"
[versions]
jedis = "7.4.0"
jedis = "7.5.0"
bstats = "3.2.1"
# Provided on good platforms, shaded in Bungee
+2 -2
View File
@@ -1,7 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionSha256Sum=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb
distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip
distributionSha256Sum=bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f
distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
+1 -1
View File
@@ -15,7 +15,7 @@ pluginManagement {
plugins {
id("net.kyori.blossom") version "2.2.0"
id("org.jetbrains.gradle.plugin.idea-ext") version "1.4.1"
id("com.gradleup.shadow") version "9.3.1"
id("com.gradleup.shadow") version "9.4.1"
id("com.gradleup.nmcp") version "1.4.4"
}
}