diff --git a/README.md b/README.md index 0328b97..8e78c35 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,97 @@ +#
🔮 VexlioHub 🔮
+
- Header

- DeluxeHub is the all-in-one hub server solution compacting a large amount of hub essentials into one plugin. + Kompletní, optimalizované a prémiové řešení pro správu vašeho Lobby/Hub serveru.
-
- Wiki - · - SpigotMC - · - Discord + Moderní Minecraft plugin postavený na Paper API s plnou podporou MiniMessage přechodů a lokalizací.

-## License +--- -This project is licensed under the GNU General Public License v3.0 License - see the [LICENSE](LICENSE) file for details. +## 🎨 Design & Barevné schéma + +VexlioHub je od základu navržen tak, aby na hráče udělal skvělý první dojem. Podporuje pokročilé RGB gradienty v chatu, nadpisech (Title) i actionbaru. + +* **Hlavní fialová (Primary):** `#9333EA` (nebo neonová `#A855F7`) +* **Sekundární azurová (Secondary):** `#06B6D4` (nebo zářivá `#00FFD1`) + +V konfiguracích můžete vytvářet nádherné plynulé přechody pomocí následující syntaxe: +```xml +NÁZEV SERVERU +``` + +--- + +## 🚀 Klíčové Funkce + +### 1. Odrazové plošiny (Launchpads) +* Umožňuje odhazování hráčů při šlápnutí na určenou kombinaci bloků (např. kamenná nášlapná deska na redstone bloku). +* **Efekty:** Konfigurovatelné částice (Particles), zvukové efekty (Sound) s nastavením hlasitosti a tóniny, a částicová stopa (Trail) kopírující trajektorii letu hráče. + +### 2. Dvojitý skok (Double Jump) +* Umožňuje hráčům provést druhý skok ve vzduchu pro snadný pohyb po lobby. +* Nastavitelný cooldown, síla odhozu (vertikální i horizontální) a vizuální i zvukové efekty při aktivaci. + +### 3. Oznamování v Actionbaru (ActionBar Announcements) +* Periodicky odesílá nakonfigurované zprávy přímo nad hotbar všech online hráčů. +* Podporuje animované zprávy, gradienty a má zanedbatelný vliv na výkon serveru. + +### 4. Uvítací animace (Join Title Animation) +* Zobrazí velký, stylový nadpis (Title) a podnadpis (Subtitle) s nastavitelným časováním (fadeIn, stay, fadeOut) ihněd po připojení hráče na server. + +### 5. Ochrana světa & Pravidla lobby (World protection) +* **Hráč:** Vypnutí ztráty hladu, poškození pádem, poškození ohněm, utonutí a smrti ve voidu. +* **Interakce:** Automatické zablokování ničení a pokládání bloků, vyhazování a sbírání předmětů a interakce s truhlami/pecemi pro běžné hráče (povoleno pouze v stavebním režimu). +* **Boj:** Vypnutí PvP v celém lobby světě. + +### 6. Připojovací předměty (Custom Join Items) +* Automatické přidělení předmětů do hotbaru při připojení (např. **Výběr serverů**). +* Obsahuje vestavěný přepínač viditelnosti hráčů (**Player Hider**) s vlastním cooldownem a materiály. + +--- + +## 🛠️ Příkazy a Oprávnění + +Všechny příkazy využívají dynamickou registraci přes Bukkit `CommandMap` a podporují inteligentní doplňování (Tab Completion). + +| Příkaz | Aliasy | Oprávnění | Popis | +| :--- | :--- | :--- | :--- | +| `/vexliohub` | `/vhub` | `vexliolobby.admin` | Hlavní příkaz pro správu a znovunačtení konfigurací pluginu. | +| `/buildmode` | `/build` | `vexliolobby.buildmode` | Přepne hráče do stavebního režimu (povolí stavění/ničení). | +| `/fly` | – | `vexliolobby.fly` | Povolí nebo zakáže létání na lobby. | +| `/clearchat` | – | `vexliolobby.clearchat` | Kompletně promaže globální chat na serveru. | +| `/setlobby` | – | `vexliolobby.setlobby` | Nastaví spawn point na aktuální pozici hráče. | +| `/lobby` | – | `vexliolobby.lobby` | Teleportuje hráče na nastavený spawn point. | +| `/gamemode ` | `/gm` | `vexliolobby.gamemode` | Změní herní mód hráče. | +| `/gms` / `/gmc` / `/gma` / `/gmsp` | – | `vexliolobby.gamemode` | Zkratky pro přepínání herních módů. | + +--- + +## 📂 Struktura konfigurace + +Plugin ukládá nastavení do přehledných `.yml` souborů ve své složce: + +* **[config.yml](file:///c:/Users/babym/Documents/Dev/Lobby/uprava/config.yml):** Hlavní nastavení modulů (Launchpad, Double Jump, Actionbar, Join Title, ochrany světa a připojovací předměty). +* **[commands.yml](file:///c:/Users/babym/Documents/Dev/Lobby/uprava/commands.yml):** Povolení/zakázání jednotlivých příkazů a nastavení vlastních (custom) příkazů. +* **[messages.yml](file:///c:/Users/babym/Documents/Dev/Lobby/uprava/messages.yml):** Kompletní překlady a barevné úpravy veškerých textů. +* **[data.yml](file:///c:/Users/babym/Documents/Dev/Lobby/uprava/data.yml):** Ukládání systémových dat (např. souřadnice spawn pointu). + +--- + +## ⚙️ Vývoj a Sestavení + +Plugin vyžaduje k sestavení **Java SDK 25**. + +Pro čisté zkompilování a vygenerování `.jar` souboru spusťte v kořenovém adresáři: +```bash +./gradlew clean shadowJar +``` +Výsledný soubor naleznete v adresáři `build/libs/`. + +--- + +## 📄 Licence + +Tento projekt je licencován pod licencí GNU General Public License v3.0 - podrobnosti naleznete v souboru [LICENSE](LICENSE). diff --git a/uprava/commands.yml b/uprava/commands.yml deleted file mode 100644 index dffa0a4..0000000 --- a/uprava/commands.yml +++ /dev/null @@ -1,56 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | VLASTNÍ PŘÍKAZY (CUSTOM COMMANDS) | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# Pro úpravu těchto příkazů není nutný restart serveru. - -version: 3.7.0 - -custom_commands: - # Název příkazu (hlavní příkaz) - website: - # Aliasy pro příkaz - aliases: - - web - # Akce, které se mají provést - actions: - - '[MESSAGE] Web &8❙ &fwww.vexliomc.net' - - clearinventory: - # Hráči budou k provedení příkazu potřebovat toto oprávnění. - permission: vexliolobby.clearinventory - aliases: - - ci - actions: - - '[COMMAND] minecraft:clear' - - '[MESSAGE] %prefix% &7Tvůj inventář byl úspěšně vymazán.' - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | VEXLIOHUB PŘÍKAZY | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# Při úpravě níže uvedených příkazů doporučujeme restartovat server. - -commands: - gamemode: - enabled: true - aliases: - - gm - gms: - enabled: true - gmc: - enabled: true - gma: - enabled: true - gmsp: - enabled: true - clearchat: - enabled: true - fly: - enabled: true - setlobby: - enabled: true - lobby: - enabled: true - buildmode: - enabled: true - aliases: - - build diff --git a/uprava/config.yml b/uprava/config.yml deleted file mode 100644 index ff9c970..0000000 --- a/uprava/config.yml +++ /dev/null @@ -1,289 +0,0 @@ -# ·························································································· -# : ____ _ _ _ _ ____ _ _ _ : -# :| _ \ ___| |_ ___ _____| | | |_ _| |__ | _ \ ___| | ___ __ _ __| | ___ __| |: -# :| | | |/ _ \ | | | \ \/ / _ \ |_| | | | | '_ \| |_) / _ \ |/ _ \ / _` |/ _` |/ _ \/ _` |: -# :| |_| | __/ | |_| |> < __/ _ | |_| | |_) | _ < __/ | (_) | (_| | (_| | __/ (_| |: -# :|____/ \___|_|\__,_/_/\_\___|_| |_|\__,_|_.__/|_| \_\___|_|\___/ \__,_|\__,_|\___|\__,_|: -# ·························································································· -# AUTOR: tp3x & Strafbefehl -# Verze VexlioHub pro Lobby -# -------- -# AKCE: -# -# [MESSAGE] - Pošle zprávu hráči -# [BROADCAST] - Pošle zprávu všem hráčům -# [TITLE] např. HlavniTitle;Subtitle;FadeIn;Stay;FadeOut - Pošle title zprávu hráči -# [ACTIONBAR] Pošle actionbar zprávu hráči -# [SOUND] - Spustí zvuk pro hráče -# [COMMAND] - Spustí příkaz jako hráč -# [CONSOLE] - Spustí příkaz jako konzole -# [GAMEMODE] - Změní herní mód hráče -# [PROXY] - Pošle hráče na jiný bungeecord server -# [EFFECT] např. EFFECT;LEVEL - Udělí hráči efekt lektvaru -# [MENU] - Otevře menu ze složky plugins/VexlioHub/menus -# [CLOSE] - Zavře otevřené menu hráče -# -------- -# FORMÁTOVÁNÍ ZPRÁV: -# HEX barvy: {#FFFFFF} a pro Přechody (Gradienty) TEXT -#
Vycentrovaná zpráva
- Vycentruje zprávu v chatu - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | OBECNÁ NASTAVENÍ | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -version: 3.7.0 - -# Pokud používáte více světů, nastavte na true -multiple_worlds: false - -# Zakázané světy -disabled-worlds: - # Máme seznam brát jako whitelist namísto blacklistu? - invert: false - # Seznam zakázaných světů - worlds: - - world_nether - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | STAVEBNÍ REŽIM | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -build_mode: - # Zobrazit actionbar zprávu při zapnutém stavebním režimu? - use_actionbar_message: true - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | STATICKÝ ČAS | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -static_time: - # Aktivovat statický čas? - enabled: false - - # Čas, který bude trvale nastaven v lobby světě - time: 12000 - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | LAUNCHPAD | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -launchpad: - # Aktivovat odrazové plošiny? - enabled: true - - # Síla odhozu (max 4.0) - launch_power: 3.0 - launch_power_y: 1.0 - - # Horní a dolní blok potřebný pro fungování plošiny - top_block: STONE_PRESSURE_PLATE - bottom_block: REDSTONE_BLOCK - - # Akce spuštěné při použití plošiny - actions: - - '[SOUND] entity.bat.takeoff' - - # Nastavení efektů plošiny - particle: CLOUD - particle_count: 15 - sound: ENTITY_BAT_TAKEOFF - sound_volume: 1.0 - sound_pitch: 1.0 - trail: - enabled: true - particle: CLOUD - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | DOUBLE JUMP | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -double_jump: - # Aktivovat dvojitý skok? - enabled: true - - # Síla odhozu (max 4.0) - launch_power: 1.0 - launch_power_y: 0.9 - - # Cooldown v sekundách (0 pro vypnutí) - cooldown: 3 - - # Akce spuštěné při použití dvojitého skoku - actions: - - '[SOUND] entity.bat.takeoff' - - # Nastavení efektů dvojitého skoku - particle: CLOUD - particle_count: 15 - sound: ENTITY_BAT_TAKEOFF - sound_volume: 1.0 - sound_pitch: 1.0 - trail: - enabled: true - particle: CLOUD - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | NASTAVENÍ SVĚTA & OCHRANY | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -world_settings: - # Nastavení pro hráče - disable_hunger_loss: true - disable_fall_damage: true - disable_player_pvp: true - disable_void_death: true - disable_fire_damage: true - disable_drowning: true - disable_off_hand_swap: true # Vyžaduje verzi 1.9+ - hide_potion_icons: false - - # Různé - disable_weather_change: true - disable_death_message: true - disable_mob_spawning: true - - # Dropování a sbírání - disable_item_drop: true - disable_item_pickup: true - - # Bloky - disable_block_break: true - disable_block_place: true - disable_block_interact: true # Truhly, pece atd. - disable_block_burn: true - disable_block_fire_spread: true - disable_block_leaf_decay: true - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | EVENTY PŘI PŘIPOJENÍ | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -join_leave_messages: - # Má plugin spravovat připojovací/odpojovací zprávy? - enabled: true - - # Nastavte na '' pro tiché připojení/odpojení - join_message: '» &f%player% &7se připojil na lobby.' - quit_message: '« &f%player% &7se odpojil z lobby.' - -# Akce spuštěné při připojení hráče -join_events: -- '[CONSOLE] cp welcome %player_name%' -- '[GAMEMODE] survival' -- '[EFFECT] SPEED;1' - -join_settings: - # Teleportovat hráče na spawn při připojení? - spawn_join: true - # Vyléčit hráče? - heal: true - # Uhasit hráče? - extinguish: true - # Vymazat inventář hráče? - clear_inventory: false - # Ohňostroj při připojení - firework: - # Má se spawnovat ohňostroj? - enabled: true - # Pouze při prvním připojení? - first_join_only: true - - type: BALL_LARGE - power: 1 - flicker: true - trail: true - colors: - - AQUA - - RED - - TEAL - - WHITE - -hotbar: - joinslot: true - slot_number: 4 # Vybraný slot při připojení (0-8) - -custom_join_items: - # Aktivovat vlastní připojovací předměty? - enabled: true - # Zabránit hráčům v přesouvání a vyhazování předmětů? - disable_inventory_movement: true - - items: - server_selector: - material: FEATHER - amount: 1 - slot: 0 - custom_model_data: 1337 - display_name: 'Výběr Serverů' - lore: - - '&7Kliknutím otevřeš výběr serverů!' - actions: - - '[MENU] casual_server' - - '[SOUND] block.sniffer.egg.plop' - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | SKRÝVÁNÍ HRÁČŮ | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -player_hider: - # Aktivovat skrývání hráčů? - enabled: true - # Slot pro předmět v hotbaru? - slot: 1 - # Zabránit přesouvání a vyhazování předmětu? - disable_inventory_movement: true - # Cooldown v sekundách (0 pro vypnutí) - cooldown: 0 - - not_hidden: - material: FEATHER - hide_tooltip: true - custom_model_data: 5001 - amount: 1 - display_name: 'Skrýt Hráče' - lore: - - '&7Kliknutím skryješ všechny hráče.' - - hidden: - material: FEATHER - hide_tooltip: true - custom_model_data: 5002 - amount: 1 - display_name: 'Zobrazit Hráče' - lore: - - '&7Kliknutím zobrazíš všechny hráče.' - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | OSTATNÍ SYSTÉMY | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -legacySystems: - # Má se použít starý lobby permission systém? - permissionsEnabled: false - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | OZNÁMENÍ V ACTIONBARU | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -actionbar_announcements: - # Aktivovat automatická oznámení v actionbaru? - enabled: true - # Interval v ticích (20 tiků = 1 sekunda) - interval: 200 - messages: - - 'VexlioHub &8❙ &fVítejte na našem serveru!' - - 'Discord &8❙ &fdiscord.vexliomc.net' - - 'Obchod &8❙ &fstore.vexliomc.net' - -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | UVÍTACÍ TITLE ANIMACE | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -join_title: - # Zobrazit uvítací title zprávu při připojení? - enabled: true - title: 'VEXLIOHUB' - subtitle: '&7Vítej, &f%player% &7na lobby serveru!' - fadeIn: 20 - stay: 60 - fadeOut: 20 diff --git a/uprava/data.yml b/uprava/data.yml deleted file mode 100644 index d509397..0000000 --- a/uprava/data.yml +++ /dev/null @@ -1,9 +0,0 @@ -version: 3.7.0 -spawn: - ==: org.bukkit.Location - world_key: minecraft:overworld - x: 2009.4762993366098 - y: 209.0625 - z: 1993.5852924372634 - pitch: -1.0203131 - yaw: 179.52112 diff --git a/uprava/messages.yml b/uprava/messages.yml deleted file mode 100644 index 4df4434..0000000 --- a/uprava/messages.yml +++ /dev/null @@ -1,78 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# -# | ZPRÁVY PLUGINU (MESSAGES) | -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# - -version: 3.7.0 - -Messages: - GENERAL: - # Prefix, který se bude zobrazovat před většinou zpráv. - PREFIX: 'VexlioHub &8❙' - # Zpráva, pokud hráč nemá oprávnění k příkazu. - NO_PERMISSION: '%prefix% &cNa tento příkaz nemáš dostatečná oprávnění!' - # Zpráva, pokud hráč nemá oprávnění k vlastnímu příkazu. - CUSTOM_COMMAND_NO_PERMISSION: '&cK tomuto příkazu nemáš přístup!' - # Zpráva, pokud zadaný hráč není online. - INVALID_PLAYER: '%prefix% &cHráč &e%player% &cnení online!' - # Zpráva o úspěšném načtení konfigurací. - CONFIG_RELOAD: '%prefix% &aVšechny konfigurace byly úspěšně načteny za &7%time%ms&a.' - # Zpráva, pokud je na akce nastaven cooldown. - COOLDOWN_ACTIVE: '%prefix% &cMusíš počkat &e%time%s &cpřed dalším použitím!' - - GAMEMODE: - # Zpráva o změně herního módu. - GAMEMODE_CHANGE: '%prefix% &7Tvůj herní mód byl změněn na &e%gamemode%&7.' - # Zpráva o změně herního módu jiného hráče. - GAMEMODE_CHANGE_OTHER: '%prefix% &7Herní mód hráče &e%player% &7byl změněn na &e%gamemode%&7.' - # Zpráva o neplatném herním módu. - GAMEMODE_INVALID: '%prefix% &e%gamemode% &cnení platný herní mód!' - - FLIGHT: - # Zpráva o zapnutí létání. - ENABLE: '%prefix% &7Létání bylo &a&lpovoleno&7.' - # Zpráva o vypnutí létání. - DISABLE: '%prefix% &7Létání bylo &c&lzakázáno&7.' - # Zpráva o zapnutí létání pro jiného hráče. - ENABLE_OTHER: '%prefix% &7Létání bylo &a&lpovoleno &7pro hráče &e%player%&7.' - # Zpráva o vypnutí létání pro jiného hráče. - DISABLE_OTHER: '%prefix% &7Létání bylo &c&lzakázáno &7pro hráče &e%player%&7.' - - PLAYER_HIDER: - # Zpráva při skrytí hráčů. - HIDDEN: '%prefix% &7Viditelnost hráčů byla &c&lskryta&7.' - # Zpráva při zobrazení hráčů. - SHOWN: '%prefix% &7Viditelnost hráčů byla &a&lzobrazena&7.' - - LOBBY: - # Zpráva o nastavení lobby spawn pointu. - SET_LOBBY: '%prefix% &aLobby spawn byl úspěšně nastaven!' - - CHAT: - # Globální zpráva o promazání chatu. - CLEARCHAT: '&r\nChat byl promazán administrátorem %player%!\n&r' - # Zpráva zobrazená hráči po promazání chatu. - CLEARCHAT_PLAYER: '&cTvůj chat byl promazán administrátorem.' - - DOUBLE_JUMP: - # Zpráva při pokusu o dvojitý skok v cooldownu. - COOLDOWN_ACTIVE: '%prefix% &cDouble Jump můžeš znovu použít za &e%time%s&c!' - - WORLD_EVENT_MODIFICATIONS: - # Ochrany světa (vyhazování, sbírání, pokládání, ničení, interakce) - ITEM_DROP: '%prefix% &cNa lobby nemůžeš vyhazovat předměty!' - ITEM_PICKUP: '%prefix% &cNa lobby nemůžeš sbírat předměty!' - BLOCK_PLACE: '%prefix% &cNa lobby nemůžeš stavět!' - BLOCK_BREAK: '%prefix% &cNa lobby nemůžeš ničit bloky!' - BLOCK_INTERACT: '%prefix% &cZde nemůžeš interagovat s bloky!' - - BUILD_MODE: - # Actionbar při zapnutém stavebním režimu. - ENABLED_ACTION_BAR: 'VexlioHub &8❙ &fStavební režim &a&lpovolen&7. Vypni pomocí &b/buildmode' - # Zpráva po zapnutí stavebního režimu pro sebe. - ENABLED: '%prefix% &7Stavební režim byl &a&lpovolen&7.' - # Zpráva po vypnutí stavebního režimu pro sebe. - DISABLED: '%prefix% &7Stavební režim byl &c&lzakázán&7.' - # Zpráva pokud cílový hráč nebyl nalezen. - TARGET_NOT_FOUND: '%prefix% &cHráč &e%target% &cnebyl nalezen!' - # Zpráva po zapnutí stavebního režimu pro jiného hráče. - ENABLED_FOR_TARGET: '%prefix% &7Stavební režim byl &a&lpovolen &7pro hráče &e%target%&7.'