Elytra Disabled

Control elytra use in specific worlds on your Minecraft server. ElytraDisabled lets you block gliding, prevent players from equipping elytra, and automatically remove equipped elytra when players enter a restricted world.
Features
- World-specific restrictions: choose which worlds disable elytra.
- Configurable equip restrictions: prevent equipping elytra or allow wearing them while blocking gliding.
- Automatic removal: remove equipped elytra when entering restricted worlds.
- Flight control: stop active gliding in restricted worlds.
- Bypass protection: block dispenser equip attempts and use a configurable periodic safety check for additional protection.
- Custom notifications: use chat messages, action bar messages, or titles, with optional sounds.
- Message cooldowns: reduce repeated notifications when players try blocked actions.
- Four languages: English, Turkish, Russian, and Ukrainian.
- Bypass permission: allow selected players to use elytra in any world.
- Optional PlaceholderAPI integration: display world restrictions, bypass permissions, and whether a player is currently blocked.
Main configuration — config.yml
# ===================================================
# ElytraDisabled - Основные настройки / Main Settings
# ===================================================
settings:
# Включить плагин? / Enable plugin?
enable_plugin: true
# Проверять наличие обновлений плагина при запуске
# Check for plugin updates on startup
check_updates: true
# Язык плагина (ru, en, ua, tr) / Plugin language (ru, en, ua, tr)
# ru - русский, en - english, ua - українська, tr - Türkçe
language: en
# Кулдаун между сообщениями игроку (в секундах), чтобы не спамить при повторных попытках
# Cooldown between messages to player (in seconds), to avoid spam on repeated attempts
message_cooldown: 3
# Список миров, где запрещены элитры
# List of worlds where elytra is disabled
disable_in_worlds:
- world_the_end
# Запретить надевание элитр в запрещённых мирах
# Если false - игроки смогут носить элитры, но не смогут летать
# ВАЖНО: Для работы при false необходимо также установить force_unequip_on_enter: false
#
# Prevent equipping elytra in disabled worlds
# If false - players can wear elytra but cannot glide
# IMPORTANT: For this to work when false, you must also set force_unequip_on_enter: false
prevent_equip: true
# Автоматически снимать элитры при входе в запрещённый мир
# Automatically remove elytra when entering disabled world
force_unequip_on_enter: true
# Останавливать активный полёт на элитрах в запрещённых мирах
# Stop active elytra flight in disabled worlds
stop_existing_glide: true
# Дополнительная подстраховка на редкие случаи обхода. Основная защита не нагружает
# сервер и работает мгновенно. В тиках (20 = 1 секунда). 0 - отключить.
# Extra safety net for rare bypass cases. Main protection is instant and has no
# performance cost. In ticks (20 = 1 second). 0 to disable.
safety_net_interval_ticks: 100
# Способ показа сообщений (чат / текст над инвентарём / по центру экрана) и звук
# настраиваются не здесь, а прямо в файлах lang/<язык>.yml - у каждого сообщения свои.
# Смотрите комментарии в начале lang/ru.yml.
#
# How messages are shown (chat / text above the inventory / center of the screen) and
# their sound are configured per-message in lang/<language>.yml, not here.
# See the comments at the top of lang/en.yml.
# ===================================================================
# PlaceholderAPI (если установлен на сервере) / PlaceholderAPI (if installed)
# ===================================================================
# %elytradisabled_world_disabled% - запрещены ли элитры в текущем мире игрока
# %elytradisabled_bypass% - есть ли у игрока право обхода (bypass)
# %elytradisabled_blocked% - реально ли блокируется прямо сейчас (мир запрещён И нет bypass)
# Текст для true/false настраивается в lang/<язык>.yml: placeholder_true / placeholder_false
#
# %elytradisabled_world_disabled% - whether elytra is disabled in the player's current world
# %elytradisabled_bypass% - whether the player has the bypass permission
# %elytradisabled_blocked% - whether it's actually being blocked right now (world
# disabled AND no bypass)
# The true/false text is configured in lang/<language>.yml: placeholder_true / placeholder_false
permissions:
# Игроки с этим пермишеном могут использовать элитры в любых мирах
# Players with this permission can use elytra in any worlds
bypass: "elytradisabled.bypass"
Language configuration — lang/en.yml
# ===================================================================
# Message format
# ===================================================================
# A plain string = a chat message, no sound (see reload_success below).
# For actionbar/title/sound, use a list: the first line in [square brackets] sets
# options, the rest is text (with & colors):
#
# equip_blocked:
# - '[type="title",title_times="10:40:10",sound="minecraft:entity.villager.no;1.0;1.0"]'
# - '&cOops!'
# - '&7You can''t equip elytra here'
#
# type: chat (default) / actionbar / title
# title_times: "fade_in:stay:fade_out" in ticks (20 = 1 second), only used for title
# sound: "sound;volume;pitch" - minecraft:entity.villager.no or ENTITY_VILLAGER_NO,
# volume/pitch optional
# chat sends every line, actionbar only the first, title the first + second (subtitle)
#
# Disable a message: set its value to false (do NOT delete or comment out the key -
# on /reload the plugin re-adds keys missing from your file from the defaults, but
# leaves an explicit false alone):
#
# equip_blocked: false
# ===================================================================
# Message when trying to equip elytra
equip_blocked:
- '[type="title",title_times="10:40:10",sound="minecraft:entity.villager.no;1.0;1.0"]'
- '&cOops!'
- '&7You can''t equip elytra here'
# Message when trying to glide
glide_blocked:
- '[type="title",title_times="10:40:10",sound="minecraft:entity.villager.no;1.0;1.0"]'
- '&cOops!'
- '&7Elytra flying is disabled here'
# Message when elytra is automatically removed
removed_on_enter: "&eYour elytra has been removed upon entering this world."
# Messages when reloading plugin
reload_success: "&a&l[ElytraDisabled]&r &aConfiguration successfully reloaded!"
reload_error: "&c&l[ElytraDisabled]&r &cError reloading configuration!"
# Command help message
help_reload: "&e/elytra-disabled reload &8- &7Reload configuration"
# No permission message
no_permission: "&cYou don't have permission to use this command!"
# PlaceholderAPI text (%elytradisabled_world_disabled%, %elytradisabled_bypass%,
# %elytradisabled_blocked%) for the true/false values - replace with "Yes"/"No" etc.
placeholder_true: "true"
placeholder_false: "false"



