Compare commits

..
15 Commits
13 changed files with 215 additions and 113 deletions

No files matched your search

+3 -2
View File
@@ -3,12 +3,13 @@ This file contains update logs for this project. The top may contain a `Unreleas
---
## 4.3.0 - September 17th 2024
## Unreleased
### Changed
* Added alternative player count and player list hover message for when endtimers are running, similar to the existing ping messages setting. They are disabled by default and can be found in their `player-count-message` and `player-list-hover-message` config sections
* All timer commands now accept durations like `2h30m`, `1h30m5s`, or `90s`. The default behavior without units will still be in minutes
* The language defaults will *not* automatically update the command help messages
* The language defaults will not automatically update, you might want to manually update the command help strings or just delete your language file
* Slightly reorganized the configuration file (it will be automatically migrated on startup, but new sections will be slapped at the bottom of the file)
* The `fallback` field now also accepts null values next to an empty array for disabling the feature
* The `fallback` field now also null values next to an empty array for disabling the feature
* Updated language files from [Crowdin](https://crowdin.com/translate/maintenance)
### Fixed
@@ -33,7 +33,6 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Random;
import java.util.Set;
@@ -249,9 +248,7 @@ public class Settings implements eu.kennytv.maintenance.api.Settings {
// All plugin identifiers were changed to 'Maintenance' ('maintenance' for Sponge and Velocity) in 3.0.5
String oldDirName = "Maintenance" + plugin.getServerType();
if (plugin.getServerType() == ServerType.SPONGE || plugin.getServerType() == ServerType.VELOCITY) {
oldDirName = oldDirName.toLowerCase(Locale.ROOT);
} else if (plugin.getServerType() == ServerType.SPIGOT) {
oldDirName = "MaintenanceSpigot";
oldDirName = oldDirName.toLowerCase();
}
final File oldDir = new File(plugin.getDataFolder().getParentFile(), oldDirName);
+1 -1
View File
@@ -26,7 +26,7 @@ joinNotification: "<prefix><yellow>%PLAYER% <red>hat versucht dem Server beizutr
motdList: "<prefix><gray>Liste deiner Motds, die während Maintenance angezeigt werden:"
motdListEmpty: "<prefix><red>Du hast keine Maintenance MOTDs gesetzt!"
reload: "<prefix><green>Die Config, die Liste der Spieler die während Maintenance beitreten können, die Sprachdateien und das Icon, das während der Maintenance angezeigt wird, wurden reloaded."
removedMotd: "<prefix><green>Die %INDEX%. Wartungs-MOTD wurde entfernt."
removedMotd: "<prefix><green>Removed motd number %INDEX%."
removeMotdError: "<prefix><red>Du hast nur eine Maintenance MOTD eingestellt, daher kannst du auch keine entfernen!"
setMotd: "<prefix><green>Die %LINE%. Zeile der %INDEX%. Maintenance MOTD wurde geändert zu: %MOTD%"
setMotdIndexError: "<prefix><red>Momentan gibt es %MOTDS% MOTDs, du musst also eine Zahl, die zwischen 1 und %NEWAMOUNT% liegt, wählen."
+2 -2
View File
@@ -78,8 +78,8 @@ helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MA
helpPageNotFound: "<prefix><gray>No hay pagina con ese número."
helpNextPage: "<gray>Utilice <aqua>/maintenance help %PAGE% <gray>Para pasar a la siguiente ventana de ayuda."
helpAbortTimer: "<gold>/maintenance aborttimer <dark_gray>(<gray>Si se ejecuta, se abortará el temporizador actual<dark_gray>)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpEndtimer: ""
helpStarttimer: ""
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpDebug: "<gold>/maintenance debug <gray>(Activa algunos registros de depuración)"
helpDump: "<gold>/maintenance dump <dark_gray>(<gray>Descarga información del servidor, usada para informes de errores<dark_gray>)"
+6 -6
View File
@@ -78,9 +78,9 @@ helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MA
helpPageNotFound: "<prefix><red>Il n'y a pas cette page !"
helpNextPage: "<gray>Utilisez <aqua>/maintenance help %PAGE% <gray>pour accéder à la fenêtre d’aide suivante."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(Si en cours d'exécution, le minuteur actuel sera abandonné)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpEndtimer: "<gold>/maintenance endtimer <désactiver dans> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera désactiver)"
helpStarttimer: "<gold>/maintenance starttimer <activer dans> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera activé)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <activer dans> <durée de maintenance> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera activé)"
helpDebug: "<gold>/maintenance debug <gray>(Active certains enregistrements de débogage)"
helpDump: "<gold>/maintenance dump <gray>(Enregistre certaines informations sur le serveur, utilisées pour les rapports de bug)"
helpHelp: "<gold>/maintenance help [page] <gray>(Montre cette belle fenêtre d'aide)"
@@ -95,9 +95,9 @@ helpWhitelistAdd: "<gold>/maintenance add <name/uuid> <gray>(Ajoute un joueur à
helpWhitelistRemove: "<gold>/maintenance remove <name/uuid> <gray>(Supprime un joueur de la liste blanche de maintenance)"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
helpAbortSingleTimer: "<gold>/maintenance aborttimer [server] <gray>(Si en cours d'exécution, le minuteur actuel sera abandonné)"
helpSingleEndtimer: "<gold>/maintenance endtimer [server] <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleEndtimer: "<gold>/maintenance endtimer [serveur] <activer dans> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera désactiver)"
helpSingleStarttimer: "<gold>/maintenance starttimer [serveur] <activer dans> <gray>(Après le temps imparti, ex. 1h5m, le mode maintenance sera activé)"
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] <gray>(Active/désactive le mode maintenance)"
helpStatus: "<gold>/maintenance status <gray>(Répertorie tous les serveurs mandatés actuellement en maintenance)"
#Used for autoupdating the language file, do not change this value.
+2 -2
View File
@@ -78,8 +78,8 @@ helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MA
helpPageNotFound: "<prefix><red>Non c'è alcuna pagina con quel numero!"
helpNextPage: "<gray>Usa <aqua>/maintenance help %PAGE% <gray>per andare alla prossima pagina d'aiuto."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(Se attivo, l'attuale timer verrà fermato)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpEndtimer: ""
helpStarttimer: "x"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpDebug: "<gold>/maintenance debug <gray>(Enables some debug logging)"
helpDump: "<gold>/maintenance dump <gray>(Copia alcune informazioni dal server, usato per segnalare problemi)"
+4 -4
View File
@@ -44,7 +44,7 @@ whitelistEmpty: "<prefix><red>Biała lista konserwacji jest pusta! Użyj <yellow
playerNotFound: "<prefix><red>Ten gracz nigdy nie grał na serwerze."
playerNotFoundUuid: "<prefix><red>Nie można znaleźć gracza z tym uuid."
playerNotOnline: "<prefix><red>Nie ma gracza online z tym nickiem."
offlinePlayerFetchError: "<prefix><red>There was an error while fetching offline player. Please try again later."
offlinePlayerFetchError: ""
invalidUuid: "<prefix><red>Nieprawidłowy format uuid!"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
sentToWaitingServer: "<prefix><red>Zostałeś wysłany do poczekalni!"
@@ -78,9 +78,9 @@ helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MA
helpPageNotFound: "<prefix><red>Strona z tym numerem nie istnieje!"
helpNextPage: "<gray>Użyj <aqua>/maintenance help %PAGE% <gray>aby przejść do następnej strony pomocy."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(Jeśli aktywny, timer zostanie anulowany)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpEndtimer: "<gold>/maintenance ender <disable in> <gray>(Po podanym czasie, np. 1 godzina 5 m, tryb konserwacji zostanie wyłączony)"
helpStarttimer: "<gold>/maintenance ender <disable in> <gray>(Po podanym czasie, np. 1 godzina 5 m, tryb konserwacji zostanie wyłączony)."
helpScheduleTimer: ""
helpDebug: "<gold>/maintenance debug <gray>(Włacza logowanie dodatkowych informcji do debugowania)"
helpDump: "<gold>/maintenance dump <gray>(Daje informacje o serwerze, używane do raportowania błędów)"
helpHelp: "<gold>/maintenance help [strona] <gray>(Pokazuje tą piękną stronę pomocy)"
+6 -6
View File
@@ -78,9 +78,9 @@ helpHeader: "<gray>========[ <white>%NAME% <gray>| <gold>%PAGE%<white>/<gold>%MA
helpPageNotFound: "<red>Страница не найдена."
helpNextPage: "<white>Используйте <gold>/maintenance help %PAGE% <white>чтобы перейти на следующую страницу."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>- <white>Остановить таймер включения/выключения режима технических работ."
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpEndtimer: ""
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет включен)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет включен)"
helpDebug: "<gold>/maintenance debug <gray>(Enables some debug logging)"
helpDump: "<gold>/maintenance dump <gray>- <white>Создать дамп."
helpHelp: "<gold>/maintenance help [страница] <gray>- <white>Отобразить список доступных команд."
@@ -95,9 +95,9 @@ helpWhitelistAdd: "<gold>/maintenance add [ник|uuid] <gray>- <white>Доба
helpWhitelistRemove: "<gold>/maintenance remove [ник|uuid] <gray>- <white>Удалить игрока из белого списка."
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
helpAbortSingleTimer: "<gold>/maintenance aborttimer [сервер] <gray>- <white>Остановить таймер включения/выключения режима технических работ."
helpSingleEndtimer: "<gold>/maintenance endtimer [server] <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [server] <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpSingleEndtimer: "<gold>/maintenance endtimer [сервер] <disable in> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет выключен)"
helpSingleStarttimer: "<gold>/maintenance starttimer [сервер] <enable in> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет включен)"
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [сервер] <enable in> <maintenance duration> <gray>(По истечению заданного времени, например 1h5m, режим технических работ будет включен)"
helpSingleToggle: "<gold>/maintenance [on|off] [сервер] <gray>- <white>Включить/выключить режим технических работ."
helpStatus: "<gold>/maintenance status <gray>- <white>Список всех серверов закрытых на технические работы."
#Used for autoupdating the language file, do not change this value.
+1 -1
View File
@@ -78,7 +78,7 @@ helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MA
helpPageNotFound: "<prefix><red>Không có trang nào có số đó!"
helpNextPage: "<gray>Sử dụng <aqua>/maintenance help %PAGE% <gray> để đến cửa sổ trợ giúp tiếp theo."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(Nếu chạy, bộ đếm thời gian hiện tại sẽ bị hủy bỏ)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpEndtimer: ""
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpDebug: "<gold>/maintenance debug <gray>(Cho phép một số ghi nhật ký gỡ lỗi)"
+83 -83
View File
@@ -3,102 +3,102 @@
#For a full list of formats and fancy examples, see https://docs.adventure.kyori.net/minimessage/format.html
#Messages containing the placeholder "<prefix>" will have it replaced with the following string
prefix: "<dark_gray>[<yellow>Maintenance<dark_gray>] "
noPermission: "<red>你没有执行该命令的权限。"
kickmessage: "<red>服务器正在维护!<br>请稍后再试!"
maintenanceActivated: "<prefix><gold>维护模式已启用。"
maintenanceDeactivated: "<prefix><gold>维护模式已停用。"
alreadyEnabled: "<prefix><red>维护模式已开启。"
alreadyDisabled: "<prefix><red>维护模式已关闭!"
endtimerBroadcast: "<prefix><gray>维护模式将在<gold>%TIME%<gray>后关闭"
endtimerStarted: "<prefix><green>开始计时: <gray>维护模式将在<gold>%TIME%<gray>后关闭"
starttimerBroadcast: "<prefix><gray>维护模式将在<gold>%TIME%<gray>后开启"
starttimerStarted: "<prefix><green>开始计时: <gray>维护模式将在<gold>%TIME%<gray>后开启。"
scheduletimerBroadcast: "<prefix><gray>维护模式将在 <gold>%TIME%<gray> 后开启,并将持续 <gold>%DURATION%<gray>。"
scheduletimerStarted: "<prefix><green>正在运行的计时器: <gray>维护模式将在 <gold>%TIME% <gray> 后启用,并持续 <gold>%DURATION%<gray>."
timerAlreadyRunning: "<prefix><red>当前已有计时正在执行!"
timerNotRunning: "<prefix><red>当前没有正在运行的计时器。"
timerCancelled: "<prefix><red>当前计时器已中止。"
timerTooLong: "<prefix><red>数值必须小于40320(28天)!"
timerMotdDisabled: "<prefix><red>如果要使用/编辑特定于计时器的MOTD,你必须在Config.yml配置中将'enable-timerspecific-messages'设置为'true'"
noPermission: "<red>You do not have the permission to execute that command."
kickmessage: "<red>The server is currently under maintenance!<br>Try again later!"
maintenanceActivated: "<prefix><gold>Maintenance mode is now activated."
maintenanceDeactivated: "<prefix><gold>Maintenance mode is now deactivated."
alreadyEnabled: "<prefix><red>Maintenance is already enabled!"
alreadyDisabled: "<prefix><red>Maintenance is already disabled!"
endtimerBroadcast: "<prefix><gray>Maintenance mode will be disabled in <gold>%TIME%<gray>."
endtimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode will be deactivated in <gold>%TIME%<gray>."
starttimerBroadcast: "<prefix><gray>Maintenance mode will be enabled in <gold>%TIME%<gray>."
starttimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode will be activated in <gold>%TIME%<gray>."
scheduletimerBroadcast: "<prefix><gray>Maintenance mode will be enabled in <gold>%TIME% <gray>and will last for <gold>%DURATION%<gray>."
scheduletimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode will be enabled in <gold>%TIME% <gray>and will last for <gold>%DURATION%<gray>."
timerAlreadyRunning: "<prefix><red>There is already a timer scheduled!"
timerNotRunning: "<prefix><red>There is currently no running timer."
timerCancelled: "<prefix><red>The current timer has been disabled."
timerTooLong: "<prefix><red>The duration has to be less than 28 days!"
timerMotdDisabled: "<prefix><red>You have to set 'enable-timerspecific-messages' in the config to 'true', if you want to use/edit timerspecific motds."
motdTimer: "%HOURS%:%MINUTES%:%SECONDS%"
motdTimerNotRunning: "-"
joinNotification: "<prefix><yellow>%PLAYER%<red>试图加入服务器。"
motdList: "<prefix><gray>当前维护模式MOTD:"
motdListEmpty: "<prefix><red>你没有配置维护模式MOTD!"
reload: "<prefix><green>重新加载配置、维护玩家白名单、语言文件和维护图标"
removedMotd: "<prefix><green>删除第%INDEX%条维护模式MOTD"
removeMotdError: "<prefix><red>你只有一条维护模式MOTD,所有你不能再删除任何MOTD!"
setMotd: "<prefix><green>设置第%INDEX%条第%LINE%行维护模式MOTD为%MOTD%"
setMotdIndexError: "<prefix><red>你现在有%MOTDS%条MOTD,所以你必须选择一个介于1和%NEWAMOUNT%之间的数字。"
setMotdLineError: "<prefix><red>第二个参数必须是行号(1或2)!"
updateDownloading: "<prefix><red><bold>正在下载更新..."
updateFailed: "<prefix><dark_red><bold>更新失败!"
updateFinished: "<prefix><green><bold>插件更新成功!为了防止任务出现问题并完成更新,你必须重新启动服务器!"
whitelistedPlayers: "<prefix><gold>维护玩家白名单:"
joinNotification: "<prefix><yellow>%PLAYER% <red>tried to join the server."
motdList: "<prefix><gray>List of your maintenance motds:"
motdListEmpty: "<prefix><red>You don't have any maintenance motds set!"
reload: "<prefix><green>Reloaded config, whitelistedplayers, language file and the maintenance icon."
removedMotd: "<prefix><green>Removed motd number %INDEX%."
removeMotdError: "<prefix><red>You only have one motd, so you cannot remove any!"
setMotd: "<prefix><green>Set line %LINE% of the %INDEX%. maintenance motd to %MOTD%"
setMotdIndexError: "<prefix><red>You currently have %MOTDS% motds, so you have to pick a number between 1 and %NEWAMOUNT%."
setMotdLineError: "<prefix><red>The second argument has to be the line number (1 or 2)!"
updateDownloading: "<prefix><red><bold>Downloading update..."
updateFailed: "<prefix><dark_red><bold>Update failed!"
updateFinished: "<prefix><green><bold>The update was successful! To prevent issues with tasks and to complete the update, you have to restart the server!"
whitelistedPlayers: "<prefix><gold>Whitelisted players for maintenance:"
whitelistedPlayersFormat: "<dark_gray>- <yellow>%NAME% <dark_gray>(<gray>%UUID%<dark_gray>)"
whitelistAdded: "<prefix><green>将<aqua>%PLAYER%<green>添加到维护玩家白名单!"
whitelistAlreadyAdded: "<prefix><red>玩家<aqua>%PLAYER%<red>已在维护玩家白名单中!"
whitelistRemoved: "<prefix><green>从维护玩家白名单中删除<aqua>%PLAYER%<green>!"
whitelistNotFound: "<prefix><red>此玩家不在维护玩家白名单中!"
whitelistEmpty: "<prefix><red>维护玩家白名单为空!使用<yellow>/maintenance add <player/uuid> <red>添加某人!"
playerNotFound: "<prefix><red>此服务器上从未出现该名称的玩家"
playerNotFoundUuid: "<prefix><red>找不到具有该UUID的玩家。"
playerNotOnline: "<prefix><red>没有使用该名称的在线玩家"
offlinePlayerFetchError: "<prefix><red>获取离线玩家时出现错误。请稍后再试。"
invalidUuid: "<prefix><red>无效的UUID格式!"
whitelistAdded: "<prefix><green>Added <aqua>%PLAYER% <green>to the maintenance whitelist!"
whitelistAlreadyAdded: "<prefix><aqua>%PLAYER% <red>already is in the maintenance whitelist!"
whitelistRemoved: "<prefix><green>Removed <aqua>%PLAYER% <green>from the maintenance whitelist!"
whitelistNotFound: "<prefix><red>This player is not in the maintenance whitelist!"
whitelistEmpty: "<prefix><red>The maintenance whitelist is empty! Use <yellow>/maintenance add <player/uuid> <red>to add someone!"
playerNotFound: "<prefix><red>No player with this name has played on this server before."
playerNotFoundUuid: "<prefix><red>No player with that uuid could be found."
playerNotOnline: "<prefix><red>There is no player online with that name."
offlinePlayerFetchError: "<prefix><red>There was an error while fetching offline player. Please try again later."
invalidUuid: "<prefix><red>Invalid uuid format!"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
sentToWaitingServer: "<prefix><red>您已被传送到等待服务器!"
forceWaitingServer: "<prefix><red>启用维护时,您不能离开等待服务器!"
serverNotFound: "<prefix><red>未找到拥有此名称的服务器!"
singleTimerAlreadyRunning: "<prefix><red>该服务器已有计时器正在运行!"
singleTimerCancelled: "<prefix><red>服务器<yellow>%SERVER%<red>的计时器已中止"
singleTimerNotRunning: "<prefix><red>该服务器当前没有正在运行的计时器。"
singleEndtimerBroadcast: "<prefix><gray>服务器%SERVER%的维护模式将在<gold>%TIME%<gray>后关闭。"
singleEndtimerStarted: "<prefix><green>正在运行的计时器:<gray>将在 <gold>%TIME%<gray> 后关闭 %SERVER% 上的维护模式 <gray>."
singleStarttimerBroadcast: "<prefix><gray>服务器%SERVER%的维护模式将在<gold>%TIME%<gray>后开启。"
singleStarttimerStarted: "<prefix><green>正在运行的计时器:<gray>将在 <gold>%TIME%<gray> 后开启 %SERVER% 上的维护模式 <gray>."
singleScheduletimerBroadcast: "<prefix><gray>服务器 %SERVER% 上的维护模式将在 <gold>%TIME%<gray> 后开启,并持续 <gold>%DURATION%<gray>。"
singleScheduletimerStarted: "<prefix><green>正在运行的计时器: <gray>%SERVER% 上的维护模式将在 <gold>%TIME% <gray> 后启用,并持续 <gold>%DURATION%<gray>."
singleMaintenanceKick: "<prefix><red>服务器%SERVER%正在维护!请稍后再试!"
singleMaintenanceKickComplete: "<red>服务器%SERVER%正在维护!<br>你可以尝试重新加入另一个服务器!"
singleMaintenanceActivated: "<prefix><gold>服务器<yellow>%SERVER%<gold>的维护模式已启用。"
singleMaintenanceDeactivated: "<prefix><gold>服务器<yellow>%SERVER%<gold>的维护模式已停用。"
singleServerAlreadyEnabled: "<prefix><red>服务器<yellow>%SERVER%<red>的维护模式已开启!"
singleServerAlreadyDisabled: "<prefix><red>服务器<yellow>%SERVER%<red>的维护模式已关闭!"
singleServerMaintenanceList: "<prefix><gray>已开启维护的服务器有:"
singleServerMaintenanceListEmpty: "<prefix><gray>没有正在维护的服务器"
sentToWaitingServer: "<prefix><red>You have been sent to a waiting server!"
forceWaitingServer: "<prefix><red>You cannot leave the waiting server while maintenance is enabled!"
serverNotFound: "<prefix><red>No server with this name is registered on the proxy!"
singleTimerAlreadyRunning: "<prefix><red>There is already a timer scheduled for that server!"
singleTimerCancelled: "<prefix><red>The current timer for server <yellow>%SERVER% <red>has been disabled."
singleTimerNotRunning: "<prefix><red>There is currently no running timer for that server."
singleEndtimerBroadcast: "<prefix><gray>Maintenance mode on server %SERVER% will be disabled in <gold>%TIME%<gray>."
singleEndtimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode on server %SERVER% will be deactivated in <gold>%TIME%<gray>."
singleStarttimerBroadcast: "<prefix><gray>Maintenance mode on server %SERVER% will be enabled in <gold>%TIME%<gray>."
singleStarttimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode on server %SERVER% will be activated in <gold>%TIME%<gray>."
singleScheduletimerBroadcast: "<prefix><gray>Maintenance mode on server %SERVER% will be enabled in <gold>%TIME% <gray>and will last for <gold>%DURATION%<gray>."
singleScheduletimerStarted: "<prefix><green>Started timer: <gray>Maintenance mode on server %SERVER% will be enabled in <gold>%TIME% <gray>and will last for <gold>%DURATION%<gray>."
singleMaintenanceKick: "<prefix><red>The server %SERVER% is currently under maintenance! Try again later!"
singleMaintenanceKickComplete: "<red>The server %SERVER% is under maintenance!<br>You may try to rejoin to go onto another server!"
singleMaintenanceActivated: "<prefix><gold>Maintenance mode is now activated on server <yellow>%SERVER%<gold>."
singleMaintenanceDeactivated: "<prefix><gold>Maintenance mode is now deactivated on server <yellow>%SERVER%<gold>."
singleServerAlreadyEnabled: "<prefix><red>Maintenance is already enabled on server <yellow>%SERVER%<red>!"
singleServerAlreadyDisabled: "<prefix><red>Maintenance is already disabled on server <yellow>%SERVER%<red>!"
singleServerMaintenanceList: "<prefix><gray>Proxied servers, that have maintenance enabled:"
singleServerMaintenanceListEmpty: "<prefix><gray>There are no proxied servers that are under maintenance."
singleServerMaintenanceListEntry: "<dark_grey>- <aqua>%SERVER%"
second: "秒"
seconds: "秒"
minute: "分钟"
minutes: "分钟"
hour: "小时"
hours: "小时"
second: "second"
seconds: "seconds"
minute: "minute"
minutes: "minutes"
hour: "hour"
hours: "hours"
helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MAX% <dark_gray>]========"
helpPageNotFound: "<prefix><red>没有此页码的帮助页!"
helpNextPage: "<gray>使用<aqua>/maintenance help %PAGE% <gray>切换到下一帮助页"
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(中止当前开启的计时器)"
helpPageNotFound: "<prefix><red>There is no page with that number!"
helpNextPage: "<gray>Use <aqua>/maintenance help %PAGE% <gray>to get to the next help window."
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(If running, the current timer will be aborted)"
helpEndtimer: "<gold>/maintenance endtimer <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpStarttimer: "<gold>/maintenance starttimer <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <enable in> <maintenance duration> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
helpDebug: "<gold>/maintenance debug <gray>(Enables some debug logging)"
helpDump: "<gold>/maintenance dump <gray>(转储一些服务器信息,用于错误报告)"
helpHelp: "<gold>/maintenance help [page] <gray>(显示帮助信息)"
helpMotd: "<gold>/maintenance motd [timer] <gray>(显示当前设置的维护模式MOTD。如果指定'timer',则显示计时器MOTD)"
helpRemoveMotd: "<gold>/maintenance removemotd [timer] <index> <gray>(删除维护模式的MOTD。如果使用'timer'参数,将设置计时器特定的Ping消息)"
helpSetMotd: "<gold>/maintenance setmotd [timer] <index> <1/2> <message> <gray>(设置维护模式的MOTD。如果使用'timer'参数,将设置计时器特定的Ping消息)"
helpReload: "<gold>/maintenance reload <gray>(重新加载配置、维护玩家白名单、语言文件和维护图标)"
helpToggle: "<gold>/maintenance <on/off> <gray>(开启/关闭维护模式)"
helpUpdate: "<gold>/maintenance update <gray>(远程下载最新版本插件到服务器)"
helpWhitelist: "<gold>/maintenance whitelist <gray>(显示所有维护玩家白名单)"
helpWhitelistAdd: "<gold>/maintenance add <name/uuid> <gray>(将玩家加入维护玩家白名单,这样即使开启了维护,他们也能加入服务器)"
helpWhitelistRemove: "<gold>/maintenance remove <name/uuid> <gray>(将玩家从维护玩家白名单中移除)"
helpDump: "<gold>/maintenance dump <gray>(Dumps some server information, used for bug reports)"
helpHelp: "<gold>/maintenance help [page] <gray>(Shows this beautiful help window)"
helpMotd: "<gold>/maintenance motd [timer] <gray>(Lists the currently set maintenance motds. If specifying 'timer', the timer motds are shown)"
helpRemoveMotd: "<gold>/maintenance removemotd [timer] <index> <gray>(Removes a maintenance motd. If using 'timer' as an argument, a timerspecific pingmessage will be removed)"
helpSetMotd: "<gold>/maintenance setmotd [timer] <index> <1/2> <message> <gray>(Sets a motd for maintenance mode. If using 'timer' as an argument, a timerspecific pingmessage will be set)"
helpReload: "<gold>/maintenance reload <gray>(Reloads the config file, whitelist file and the server-icon)"
helpToggle: "<gold>/maintenance <on/off> <gray>(Enables/disables maintenance mode)"
helpUpdate: "<gold>/maintenance update <gray>(Remotely downloads the newest version of the plugin onto your server)"
helpWhitelist: "<gold>/maintenance whitelist <gray>(Shows all whitelisted players for the maintenance mode)"
helpWhitelistAdd: "<gold>/maintenance add <name/uuid> <gray>(Adds the player to the maintenance whitelist, so they can join the server even though maintenance is enabled)"
helpWhitelistRemove: "<gold>/maintenance remove <name/uuid> <gray>(Removes the player from the maintenance whitelist)"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
helpAbortSingleTimer: "<gold>/maintenance aborttimer [server] <gray>(中止指定服务器开启的计时器)"
helpAbortSingleTimer: "<gold>/maintenance aborttimer [server] <gray>(If running, the current timer will be aborted)"
helpSingleEndtimer: "<gold>/maintenance endtimer [server] <disable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be disabled)"
helpSingleStarttimer: "<gold>/maintenance starttimer [server] <enable in> <gray>(After the given time, e.g. 1h5m, maintenance mode will be enabled)"
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] <gray>(开启/关闭指定服务器的维护模式)"
helpStatus: "<gold>/maintenance status <gray>(列出当前正在维护的所有服务器)"
helpSingleToggle: "<gold>/maintenance <on/off> [server] <gray>(Enables/disables maintenance mode)"
helpStatus: "<gold>/maintenance status <gray>(Lists all proxied servers, that are currently under maintenance)"
#Used for autoupdating the language file, do not change this value.
language-version: 2
+104
View File
@@ -0,0 +1,104 @@
#Maintenance Plugin by kennytv
#You can use https://webui.adventure.kyori.net/ to edit and preview the formatted text
#For a full list of formats and fancy examples, see https://docs.adventure.kyori.net/minimessage/format.html
#Messages containing the placeholder "<prefix>" will have it replaced with the following string
prefix: "<dark_gray>[<yellow>Maintenance<dark_gray>] "
noPermission: "<red>您沒有權限使用此指令。"
kickmessage: "<red>伺服器目前正在維護中!<br>請稍後再試!"
maintenanceActivated: "<prefix><gold>維護模式現已啟用。"
maintenanceDeactivated: "<prefix><gold>維護模式已停用。"
alreadyEnabled: "<prefix><red>維護模式已經啟用!"
alreadyDisabled: "<prefix><red>維護模式已經停用!"
endtimerBroadcast: "<prefix><gray>維護模式將於 <gold>%TIME% <gray>後停用。"
endtimerStarted: "<prefix><green>已啟動計時器:<gray>維護模式將於 <gold>%TIME% <gray>後停用。"
starttimerBroadcast: "<prefix><gray>維護模式將於 <gold>%TIME% <gray>後啟用。"
starttimerStarted: "<prefix><green>已啟動計時器:<gray>維護模式將於 <gold>%TIME% <gray>後啟用。"
scheduletimerBroadcast: "<prefix><gray>維護模式將於 <gold>%TIME% <gray>後啟用,並持續 <gold>%DURATION%<gray>。"
scheduletimerStarted: "<prefix><green>已啟動計時器:<gray>維護模式將於 <gold>%TIME% <gray>後啟用,並持續 <gold>%DURATION%<gray>。"
timerAlreadyRunning: "<prefix><red>已經有一個計時器正在排程!"
timerNotRunning: "<prefix><red>目前沒有正在執行的計時器。"
timerCancelled: "<prefix><red>目前的計時器已被停用。"
timerTooLong: "<prefix><red>持續時間必須少於 28 天!"
timerMotdDisabled: "<prefix><red>如果您想使用/編輯計時器專用的伺服器資訊,您必須在設定中將「enable-timerspecific-messages」設定為「true」。"
motdTimer: "%HOURS%:%MINUTES%:%SECONDS%"
motdTimerNotRunning: "-"
joinNotification: "<prefix><yellow>%PLAYER% <red>嘗試加入伺服器。"
motdList: "<prefix><gray>您的維護伺服器資訊清單:"
motdListEmpty: "<prefix><red>您沒有設定任何維護伺服器資訊!"
reload: "<prefix><green>已重新載入設定、白名單玩家、語言檔案和維護圖示。"
removedMotd: "<prefix><green>已移除編號 %INDEX% 的伺服器資訊。"
removeMotdError: "<prefix><red>您只有一個伺服器資訊,因此您無法移除任何伺服器資訊!"
setMotd: "<prefix><green>已將第 %INDEX% 個維護伺服器資訊的第 %LINE% 行設定為 %MOTD%"
setMotdIndexError: "<prefix><red>您目前有 %MOTDS% 個伺服器資訊,因此您必須選擇一個介於 1 到 %NEWAMOUNT% 之間的數字。"
setMotdLineError: "<prefix><red>第二個引數必須是行號(1 或 2)!"
updateDownloading: "<prefix><red><bold>正在下載更新..."
updateFailed: "<prefix><dark_red><bold>更新失敗!"
updateFinished: "<prefix><green><bold>更新成功!為了防止任務出現問題並完成更新,您必須重新啟動伺服器!"
whitelistedPlayers: "<prefix><gold>維護模式的白名單玩家:"
whitelistedPlayersFormat: "<dark_gray>- <yellow>%NAME% <dark_gray>(<gray>%UUID%<dark_gray>)"
whitelistAdded: "<prefix><green>已將 <aqua>%PLAYER% <green>新增至維護白名單!"
whitelistAlreadyAdded: "<prefix><aqua>%PLAYER% <red>已經在維護白名單中!"
whitelistRemoved: "<prefix><green>已將 <aqua>%PLAYER% <green>從維護白名單中移除!"
whitelistNotFound: "<prefix><red>此玩家不在維護白名單中!"
whitelistEmpty: "<prefix><red>維護白名單是空的!使用 <yellow>/maintenance add <player/uuid> <red>新增玩家!"
playerNotFound: "<prefix><red>此伺服器上沒有此名稱的玩家遊玩過。"
playerNotFoundUuid: "<prefix><red>找不到具有該 UUID 的玩家。"
playerNotOnline: "<prefix><red>線上沒有此名稱的玩家。"
offlinePlayerFetchError: "<prefix><red>擷取離線玩家時發生錯誤。請稍後再試。"
invalidUuid: "<prefix><red>UUID 格式無效!"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
sentToWaitingServer: "<prefix><red>您已被傳送到等待伺服器!"
forceWaitingServer: "<prefix><red>在維護模式啟用時,您無法離開等待伺服器!"
serverNotFound: "<prefix><red>代理伺服器上沒有註冊此名稱的伺服器!"
singleTimerAlreadyRunning: "<prefix><red>該伺服器已經有一個計時器正在排程!"
singleTimerCancelled: "<prefix><red>伺服器 <yellow>%SERVER% <red>的目前計時器已被停用。"
singleTimerNotRunning: "<prefix><red>目前該伺服器沒有正在執行的計時器。"
singleEndtimerBroadcast: "<prefix><gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後停用。"
singleEndtimerStarted: "<prefix><green>已啟動計時器:<gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後停用。"
singleStarttimerBroadcast: "<prefix><gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後啟用。"
singleStarttimerStarted: "<prefix><green>已啟動計時器:<gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後啟用。"
singleScheduletimerBroadcast: "<prefix><gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後啟用,並持續 <gold>%DURATION%<gray>。"
singleScheduletimerStarted: "<prefix><green>已啟動計時器:<gray>伺服器 %SERVER% 的維護模式將於 <gold>%TIME% <gray>後啟用,並持續 <gold>%DURATION%<gray>。"
singleMaintenanceKick: "<prefix><red>伺服器 %SERVER% 目前正在維護中!請稍後再試!"
singleMaintenanceKickComplete: "<red>伺服器 %SERVER% 正在維護中!<br>您可以嘗試重新加入以進入其他伺服器!"
singleMaintenanceActivated: "<prefix><gold>維護模式現已在伺服器 <yellow>%SERVER% <gold>上啟用。"
singleMaintenanceDeactivated: "<prefix><gold>維護模式現已在伺服器 <yellow>%SERVER% <gold>上停用。"
singleServerAlreadyEnabled: "<prefix><red>維護模式已經在伺服器 <yellow>%SERVER% <red>上啟用!"
singleServerAlreadyDisabled: "<prefix><red>維護模式已經在伺服器 <yellow>%SERVER% <red>上停用!"
singleServerMaintenanceList: "<prefix><gray>已啟用維護模式的代理伺服器:"
singleServerMaintenanceListEmpty: "<prefix><gray>沒有任何代理伺服器正在維護中。"
singleServerMaintenanceListEntry: "<dark_grey>- <aqua>%SERVER%"
second: "秒"
seconds: "秒"
minute: "分鐘"
minutes: "分鐘"
hour: "小時"
hours: "小時"
helpHeader: "<dark_gray>========[ <yellow>%NAME% <dark_gray>| <yellow>%PAGE%/%MAX% <dark_gray>]========"
helpPageNotFound: "<prefix><red>沒有該編號的頁面!"
helpNextPage: "<gray>使用 <aqua>/maintenance help %PAGE% <gray>前往下一個說明視窗。"
helpAbortTimer: "<gold>/maintenance aborttimer <gray>(如果正在執行,目前的計時器將會被中止)"
helpEndtimer: "<gold>/maintenance endtimer <停用時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被停用)"
helpStarttimer: "<gold>/maintenance starttimer <啟用時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被啟用)"
helpScheduleTimer: "<gold>/maintenance scheduletimer <啟用時間> <維護持續時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被啟用)"
helpDebug: "<gold>/maintenance debug <gray>(啟用一些除錯紀錄)"
helpDump: "<gold>/maintenance dump <gray>(傾印一些伺服器資訊,用於錯誤回報)"
helpHelp: "<gold>/maintenance help [頁碼] <gray>(顯示此說明視窗)"
helpMotd: "<gold>/maintenance motd [計時器] <gray>(列出目前設定的維護伺服器資訊。如果指定「計時器」,則會顯示計時器伺服器資訊)"
helpRemoveMotd: "<gold>/maintenance removemotd [計時器] <索引> <gray>(移除維護伺服器資訊。如果使用「計時器」作為引數,則會移除計時器專用的伺服器資訊)"
helpSetMotd: "<gold>/maintenance setmotd [計時器] <索引> <1/2> <訊息> <gray>(設定維護模式的伺服器資訊。如果使用「計時器」作為引數,則會設定計時器專用的伺服器資訊)"
helpReload: "<gold>/maintenance reload <gray>(重新載入設定檔、白名單檔案和伺服器圖示)"
helpToggle: "<gold>/maintenance <on/off> <gray>(啟用/停用維護模式)"
helpUpdate: "<gold>/maintenance update <gray>(從遠端下載最新版本的外掛程式到您的伺服器)"
helpWhitelist: "<gold>/maintenance whitelist <gray>(顯示維護模式的所有白名單玩家)"
helpWhitelistAdd: "<gold>/maintenance add <名稱/uuid> <gray>(將玩家新增至維護白名單,以便他們即使在維護模式啟用時也能加入伺服器)"
helpWhitelistRemove: "<gold>/maintenance remove <名稱/uuid> <gray>(將玩家從維護白名單中移除)"
#Messages for the Bungee/Velocity part, you can ignore them if you use the plugin on Paper/Sponge
helpAbortSingleTimer: "<gold>/maintenance aborttimer [伺服器] <gray>(如果正在執行,目前的計時器將會被中止)"
helpSingleEndtimer: "<gold>/maintenance endtimer [伺服器] <停用時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被停用)"
helpSingleStarttimer: "<gold>/maintenance starttimer [伺服器] <啟用時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被啟用)"
helpSingleScheduleTimer: "<gold>/maintenance scheduletimer [伺服器] <啟用時間> <維護持續時間> <gray>(經過指定的時間後,例如 1 小時 5 分鐘,維護模式將會被啟用)"
helpSingleToggle: "<gold>/maintenance <on/off> [伺服器] <gray>(啟用/停用維護模式)"
helpStatus: "<gold>/maintenance status <gray>(列出目前正在維護的所有代理伺服器)"
#Used for autoupdating the language file, do not change this value.
language-version: 2
+1 -1
View File
@@ -1,4 +1,4 @@
projectVersion=4.3.0
projectVersion=4.3.0-SNAPSHOT
# Gradle properties
org.gradle.daemon=true
@@ -82,7 +82,7 @@ public final class MaintenancePaperPlugin extends MaintenancePlugin {
pm.registerEvents(new ServerInfoPacketListener(this, plugin, settings), plugin);
} else {
pm.registerEvents(new ServerListPingListener(this, settings), plugin);
getLogger().warning("To use this plugin on Spigot to its full extent, you need the plugin ProtocolLib!");
getLogger().warning("To use this plugin on Spigot to its full extend, you need the plugin ProtocolLib!");
}
continueLastEndtimer();