Tags
Creators
Details
0.0.2-beta-8
Compatibility
Changes
Рус\Rus
Добавление:
- Создан PermissionUtil.java – единый централизованный класс для проверки прав, учитывающий:
• admin-user из Settings/main.yml (через AdminManager)
• право regionmc.*
• право regionmc.admin
• OP (isOp())
• отдельные права (например, regionmc.command.reload)
- В DebugUtils.java добавлена категория ADMIN (DebugCategory.ADMIN) и её загрузка из config.yml (debug.categories.adminmanager).
- В AdminManager.java добавлена расширенная диагностика загрузки main.yml (вывод пути, размера, ключей) и метод reload().
- В RegionCommand.java внедрены методы:
• hasBasicAccess(CommandSender) – для консоли всегда true, для игроков проверяет admin-user, regionmc.*, regionmc.admin, OP.
• hasPermission(CommandSender, String) – для консоли всегда true, для игроков использует PermissionUtil.
Добавлена поддержка консоли – теперь она может выполнять все команды без ограничений.
- В RegionManager.java метод getDefaultLimit() сделан публичным (ранее был private) для доступа из RegionCommand (команда /regionmc limit для консоли).
- Во всех подкомандах (пакет commands.subcommands) добавлена поддержка CommandSender – теперь они корректно обрабатывают вызовы из консоли.
- В RegionFlagCommand и RegionExampleCommand исправлены сигнатуры execute для поддержки CommandSender.
- В main.yml (Settings/main.yml) добавлен раздел admin-user с примером заполнения:
# =============================================
# Администраторы плагина (все права)
# отключение или удалите ник из списка
# все права даётся (Осторожно ники пишите)
# =============================================
admin-user:
- "KillerYTuber1" # Ник создателя
- "Neonix98" # Ник создателя тестовый
- #"player" # Ник не работает (Закомментирован)
- Добавлена возможность вводить команды в консоли – все команды теперь доступны из консольного ввода.
фикс:
- Удалён дублирующийся публичный метод getDefaultLimit() в конце RegionManager (оставлен единственный корректный, который читает из limit.yml).
- В BlockChatFlag убран устаревший вызов shouldBypassRegionProtection(player, null), заменён на regionManager.isAdminBypass(player).
- Добавлена аннотация @SuppressWarnings("deprecation") в BlockChatFlag для подавления предупреждений об устаревшем API.
- Во всех подкомандах заменены прямые проверки player.hasPermission() на PermissionUtil.hasPermission() (старые строки закомментированы с // old для возможности отката).
- В RegionNotifierCommand исправлены вызовы LanguageManager.getMessage() – теперь передаётся ключ, а не имя игрока.
- Полностью переработана система прав:
• Права теперь проверяются централизованно через PermissionUtil.
• Консоль имеет доступ ко всем командам.
• Игроки получают доступ только при наличии соответствующих прав (admin-user, regionmc.*, regionmc.admin, конкретные права).
• Если прав нет – команды недоступны и не отображаются в таб-комплите.
- Исправлена логика проверки прав в RegionCommand – теперь игроки без прав видят сообщение об отказе, а не справку.
- Устранены все предупреждения компиляции, связанные с deprecated API и unchecked операциями.
Англ/Eng
add:
- Created PermissionUtil.java – a unified centralized permission checking class that considers:
• admin-user from Settings/main.yml (via AdminManager)
• regionmc.* permission
• regionmc.admin permission
• OP (isOp())
• individual permissions (e.g., regionmc.command.reload)
- Added ADMIN category (DebugCategory.ADMIN) to DebugUtils.java and its loading from config.yml (debug.categories.adminmanager).
- Added extended diagnostics for loading main.yml in AdminManager.java (path, size, keys output) and reload() method.
- Introduced methods in RegionCommand.java:
• hasBasicAccess(CommandSender) – always true for console, checks admin-user, regionmc.*, regionmc.admin, OP for players.
• hasPermission(CommandSender, String) – always true for console, uses PermissionUtil for players.
Added console support – now the console can execute all commands without restrictions.
- Made getDefaultLimit() method public in RegionManager.java (was private) for access from RegionCommand (/regionmc limit command for console).
- Added CommandSender support to all subcommands (commands.subcommands package) – they now correctly handle console calls.
- Fixed execute signatures in RegionFlagCommand and RegionExampleCommand to support CommandSender.
- Added admin-user section to main.yml (Settings/main.yml) with example:
# =============================================
# Plugin administrators (all permissions)
# disable or remove nickname from the list
# all permissions are granted (be careful with nicknames)
# =============================================
admin-user:
- "KillerYTuber1" # Creator's nickname
- "Neonix98" # Test creator's nickname
- #"player" # Nickname is not working (Commented out)
- Added ability to enter commands from the console – all commands are now available from console input.
Fixes: ``
-
Removed duplicate public getDefaultLimit() method at the end of RegionManager (left the only correct one that reads from limit.yml).
-
In BlockChatFlag, removed deprecated call to shouldBypassRegionProtection(player, null), replaced with regionManager.isAdminBypass(player).
-
Added @SuppressWarnings("deprecation") annotation to BlockChatFlag to suppress warnings about deprecated API.
-
Replaced all direct player.hasPermission() checks in subcommands with PermissionUtil.hasPermission() (old lines commented with // old for rollback possibility).
-
Fixed LanguageManager.getMessage() calls in RegionNotifierCommand – now passing key instead of player name.
-
Completely reworked permission system: • Permissions are now checked centrally via PermissionUtil. • Console has access to all commands. • Players gain access only if they have the corresponding permissions (admin-user, regionmc.*, regionmc.admin, specific permissions). • If no permissions – commands are unavailable and do not appear in tab-completion.
-
Fixed permission checking logic in RegionCommand – players without permissions now see an access denied message instead of help.
-
Eliminated all compilation warnings related to deprecated API and unchecked operations.
Рус\Rus
Добавление:
Добавление версии 26.2 Добавленно placeholder обновлено до последней версии майна 26.2
фикс: Фикс placeholder обновлено до последней версии майна 26.2
Англ/Eng
add:
Added support Main 26.2 Added placeholder updated to the latest version of Main 26.2
Fixes:
``
The placeholder fix has been updated to the latest version of Main 26.2
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:41Tb4G34:h693cJIx"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:41Tb4G34:h693cJIx"
}

