В плагине присутствуют 4 команды: verify
, nft
, anft
, nftclean
.
verify
- отвечает за верификацию аккаунта игрока. Состоит из одного параметра signature
.
Отправляет POST запрос на сервер ip:port/verify
(ip:port
настраиваются в конфиге), где в BODY помещается signature
.
Игрок TRXILBLXXD выполняет команду /verify 0xe86ac3566919c...
После которого плагин формирует json:
{
"username": "TRXILBLXXD",
"signature": "0xe86ac3566919c..."
}
и отправит запрос серверу выше асинхронно.
Если будет получен ответ без ошибок, то плагин верифицирует аккаунт,
иначе будет получена ошибка (errors.yml
) по коду из запроса и отправит причину в чат игроку.
nft
- команда для получения NFT игрока с ника. Не включает в себя дополнительные параметры.
Отправляет GET запрос на сервер ip:port/nft/<player>
(ip:port
настраиваются в конфиге).
{
"isError": false,
"errorId": 0,
"nfts": [
{
"title": "Pacemaker #1062",
"description": "Pacemaker is a membership club for fine digital street art, bringing together collectors and artists. Founded by street culture legend TILL JAGLA & fueled by global fashion & tech platform ABOUT YOU. PFP art by LOOPINGLOVERS.",
"tokenId": "1062",
"imageURL": "https://meta.pacemakernft.xyz/qoDHoN/1062.jpg",
"address": "0xf9adb39ae220b187cbe4943fc9af2c86196dd186"
}
]
}
Поле nfts
содержит массив обьектов со следующими параметрами:
"title"
- название NFT,
"description"
- его описание,
"tokenId"
- tokenId,
"imageURL"
- ссылка на изображение,
"address"
- адресс.
Игрок TRXILBLXXD выполняет команду /nft
.
Плагин отправляет запрос серверу выше и получает ответ. Если ответ будет ошибкой, то отправляет игроку подробности об ошибке (errors.yml
) полученной по коду.
Если у игрока не будет NFT, то плагин отправит игроку сообщение из конфига в чат.
Если у игрока будет NFT, то плагин построит на их базе настраиваемый в конфиге GUI, где отобразятся все NFT. После которого игрок сможет нажать на них, выбрать его размер и получить как картину.
После запроса данные об количестве и сами NFT кэшируются как HashedNFT
и BufferedNFT
, которые сбрасываются через время из конфига.
anft
- точно такая же команда как nft
, но вместо никнейма игрока используется адресс. Включает в себя параметр address
.
Отправляет POST запрос на сервер ip:port/nft/<adress>
(ip:port
настраиваются в конфиге).
nftclean
- удаляет все NFT из сервера, включая:
- Карты, оставшиеся в инвентарях (очищает метаданные).
- Карты, поставленные как картины.
После выполнения команды начинает процесс удаления всех NFT в режиме очереди.
verify
- nft.verify
nft
- nft.nft
anft
- nft.anft
nftclean
- nft.rma
Нужны они для ограничения NFT на одного игрока. По шаблону плагин генерирует 3 группы: Обычный
, Премиум
, Админ
.
groups:
default:
id: 1
name: "Обычный"
limit: 2
default: true
premium:
id: 2
name: "Премиум"
limit: 3
default: false
Если у группы Обычный
будет ограничение NFT на игрока 3, то игрок не сможет взять больше 3 NFT.
Если вы хотите выдать группу Обычный
определённой группе из LuckPerms (для примера, работает в любом плагине),
то это можно сделать с помощью выдачи прав nft.group.Обычный
.
Примечание: в названии группы должны соблюдаться все кейсы. Если в плагине название группы ИгРоК, то в правах тоже должен быть ИгРоК
Используются в основном при возникании ошибок в запросах.
Включают в себя id
- идентификатор ошибки и description
- описание ошибки
errors:
success:
id: 0
description: "Всё чётко"
unknown-address:
id: 1
description: "Неверная подпись"
Открыть папку с проектом и прописать команду mvn clean package