Ръководство

Как да направиш Minecraft плъгин с GUI меню

Обновено на 18 октомври 2026 г.

Сървърните менюта (warps, магазини, китове, настройки) са инвентари-сандъци, които плъгинът отваря и управлява. Всяко поле съдържа предмет, който работи като бутон. Изглеждат прости, но меню, което не отказва всеки вид клик, позволява на играчите да си отнесат бутоните. Това ръководство обяснява как работят менютата и как да направиш и тестваш такова.

Започни от този пример.

Генерирай това с Codexe

Стъпка по стъпка

  1. 1.Скицирай менюто

    Менюто-сандък има от 1 до 6 реда по 9 полета (от 9 до 54). Напиши кой предмет в кое поле отива, какво прави всеки клик и кои полета са само украса, като стъклени панели.

  2. 2.Създай инвентара с holder

    Отвори го с Bukkit.createInventory(holder, size, title), като използваш собствен клас InventoryHolder. Чрез holder-а плъгинът разбира, че кликът е станал в неговото меню, а не в обикновен сандък.

  3. 3.Обработи кликовете

    В InventoryClickEvent провери holder-а, откажи събитието и после изпълни действието за това поле. След действието затвори менюто или го опресни.

  4. 4.Блокирай всеки друг начин за местене на предмети

    Откажи и InventoryDragEvent и обработи shift-кликовете, цифровите клавиши и кликовете в собствения инвентар на играча, докато менюто е отворено.

  5. 5.Добави страници, ако списъкът е дълъг

    За warps или предмети в магазин, които не се побират, запази долния ред за бутоните „предишна“, „следваща“ и „затвори“.

  6. 6.Отвори го с команда

    Например /warps или от предмет или NPC. Дай на командата permission, ако менюто не е за всички.

  7. 7.Компилирай и го прецъкай

    Остави Codexe да компилира плъгина, влез в тестовия сървър и натисни всеки бутон. Тестовите играчи също могат да отворят менюто и да кликат полетата вместо теб.

Правилата, които пазят менюто сигурно

  • Разпознавай менюто по holder-а, никога по заглавието: заглавието може да се копира от всеки преименуван сандък.
  • Откажи клика преди да направиш каквото и да е друго, за да не остане никога предметът в курсора на играча при грешка в действието.
  • Отказвай влаченията и shift-кликовете от инвентара на играча, иначе в менюто могат да се вкарат предмети.
  • Не се доверявай на предмета в полето: търси действието по номера на полето или по таг върху предмета.
  • Пускай бавната работа (четене от база данни, уеб заявки) извън основната нишка и обновявай менюто, когато приключи.

Менюта от конфигурация

Собствениците на сървъри обичат да променят менютата без нова компилация. Поискай всяко меню да се описва в конфигурационен файл, с размера, заглавието и, за всеки бутон, полето, материала, името, lore и действието:

КлючПримерКакво прави
size27Брой полета, кратно на 9
slot13Къде отива бутонът, като се брои от 0
materialENDER_PEARLПоказваният предмет
actionwarp:spawnКакво прави кликът: warp, команда, друго меню

Примерно описание

„Плъгин за Paper 1.21.4, наречен WarpMenu. /warps отваря меню с 6 реда и по един бутон за всеки warp, 45 на страница, с бутони „предишна“, „следваща“ и „затвори“ на долния ред. Админите добавят warps с /setwarp <name> <material> и ги махат с /delwarp. Кликът върху warp телепортира след 3 секунди подготовка, която се прекъсва при движение. Играчите не могат да вземат или местят нито един предмет в менюто. Warps се пазят в warps.yml, заглавието на менюто, имената на бутоните и съобщенията са в config.yml.“

Тестване на менюта с тестови играчи

Тестовите играчи на Codexe могат да отворят меню и да кликнат поле, а после да проверят дали се е отворило меню, появило се е съобщение или е даден предмет. Добави тест със свои думи, например „обикновен играч изпълнява /warps, кликва поле 0 и вижда съобщението за телепортиране“, и той се пуска отново всеки път, когато Codexe достави промяна.

Въпроси

Работи ли това на 1.8?

Менютата-сандъци съществуват във всяка версия от 1.8 нататък. API-то се различава в детайли (имена на материали, заглавия), затова посочи версията в заявката.

Мога ли вместо това да направя менюта със Skript?

Да, с добавката skript-gui, която е инсталирана на Skript тестовия сървър на Codexe. За големи или натоварени менюта плъгинът е по-добър.

Може ли менюто да изглежда като собствена текстура?

Само с ресурсен пакет, който променя предметите или фона на инвентара. Частта на плъгина е същата: полета, предмети и кликове.

Направи своето меню

Този промпт се отваря готов за изпращане:

“Плъгин за Paper 1.21.4, наречен WarpMenu: /warps отваря меню с 6 реда и по един бутон за всеки warp, 45 на страница, бутони „предишна/следваща/затвори“ на долния ред, /setwarp с име и материал и /delwarp за админи, 3 секунди подготовка за телепортиране, която се прекъсва при движение, нито един предмет не може да се вземе или премести, warps се пазят в warps.yml, заглавията и съобщенията са в config.yml.”

Генерирай това с Codexe
Как да направиш плъгин с GUI меню за Minecraft | Codexe