HomeJavaModsIBottleXP
# IBottleXP

Легкий, но полностью настраиваемый плагин для бутылок опыта. Создавайте неограниченное количество пользовательских бутылок опыта с поддержкой шестнадцатеричного кодирования цветов, пользовательской историей, звуками, частицами, временем восстановления, панелями действий и статистикой для каждого игрока — и все это без единой строчки кода.

---

## Функции

- Неограниченное количество пользовательских бутылок с опытом — добавьте столько, сколько хотите, в файл `config.yml`
- Поддержка шестнадцатеричного кода цвета `&#rrggbb` — работает в названиях предметов, описаниях и всех сообщениях.
- Индивидуальные таймеры для каждой бутылки — предотвращают спам.
- Дополнительное глобальное время ожидания — помимо таймеров для каждой бутылки.
- Пользовательские звуки — выберите любой звук Bukkit для каждой бутылки с регулировкой громкости и высоты тона.
- Эффекты частиц — создаются вокруг игрока при использовании, полностью настраиваемые.
— Сообщения на панели действий — отображаются над панелью быстрого доступа при использовании бутылки.
- Статистика по каждому игроку — общее количество полученных уровней опыта и использованных бутылок, сохраняется автоматически.
- Защита от злоупотреблений — ограничивает использование в секунду и выводит предупреждения в консоль.
- Полная настройка сообщений — каждое сообщение плагина находится в файле `messages.yml`.
— Автодополнение по клавише Tab — все команды и аргументы автоматически дополняются в чате.
- Горячая перезагрузка — мгновенное применение изменений конфигурации с помощью `/ibottlexp reload`

---

## Команды

| Команда | Описание | Разрешение |
|---|---|---|
| `/ibottlexp help` | Показать все доступные команды | — |
| `/ibottlexp reload` | Перезагрузить конфигурацию и сообщения | `ibottlexp.reload` |
| `/ibottlexp give <player> <bottle> [amount]` | Передать бутылку игроку | `ibottlexp.give` |
| `/ibottlexp list` | Список всех настроенных бутылок | — |
| `/ibottlexp info <bottle>` | Показать подробную информацию о конкретной бутылке | — |
| `/ibottlexp stats [player]` | Показать статистику XP | — / `ibottlexp.admin` |

**Псевдонимы:** `/ixp`, `/bottlexp`

---

## Права доступа

| Разрешение | По умолчанию | Описание |
|---|---|---|
| `ibottlexp.use` | всем | Используйте бутылки XP |
| `ibottlexp.reload` | op | Перезагрузить плагин |
| `ibottlexp.give` | op | Раздавайте бутылки игрокам |
| `ibottlexp.admin` | op | Полный доступ администратора + просмотр статистики других игроков |

---

## Конфигурация — config.yml

Укажите столько бутылок, сколько хотите. Каждая из них полностью независима.

```yaml
бутылки:

бутылка 1:
Название: "�FF00Top Bottle"
уровни: 50
лор:
- "&#aaaaaa──────────────────────"
- "&#FFFFFFGrants &a50 &fXP levels"
- "&#FFD700✦ &eRare Bottle &#FFD700✦"
- "&#aaaaaa──────────────────────"
звук: ENTITY_EXPERIENCE_ORB_PICKUP
громкость звука: 1.0
высота звука: 1.0
время восстановления: 5
Панель действий: "�FF00+50 уровней опыта!"

бутылка 2:
Название: "Общая бутылка AAFFAA"
уровни: 10
лор:
- "&#FFFFFF Предоставляет &a10 уровней &fXP"
звук: ENTITY_EXPERIENCE_ORB_PICKUP
громкость звука: 1.0
высота звука: 1.2
время восстановления: 2
Панель действий: "&#AAFFAA+10 уровней опыта!"

бутылка3:
Название: "&#FF4444Легендарная бутылка"
уровни: 100
лор:
- "&#FF6600⚡ &6Легендарная мощь! &#FF6600⚡"
звук: UI_TOAST_CHALLENGE_COMPLETE
громкость звука: 1.0
высота звука: 1.0
Время восстановления: 30
action-bar: "&#FF4444⚡ +100 уровней опыта! ⚡"
```

### Дополнительные настройки

```yaml
# Влияние частиц на использование
частицы:
включено: true
тип: СЧАСТЛИВЫЙ_ЖИТЕЛЬ
количество: 30

# Глобальное ограничение по времени (применяется ко всем бутылкам)
глобальная задержка охлаждения:
включено: false
секунд: 1

# Защита от злоупотреблений — ограничение количества использований в секунду
противодействие злоупотреблениям:
включено: true
log-to-console: true
максимум в секунду: 3

# Отслеживание статистики
статистика:
включено: true
```

---

## Конфигурация — messages.yml

Здесь можно настроить каждое сообщение, отправляемое плагином. Все поля поддерживают шестнадцатеричные цвета `&#rrggbb` и цветовые коды `&`.

```yaml
префикс: "�FFFFIBottleXP &8» &f"

bottle-used: "%prefix%You used %bottle% and received �FF00+%levels% &fXP levels."
bottle-us-level-now: "%prefix%&#FFFFFFВаш текущий уровень: &#FFD700%level%"

cooldown-active: "%prefix%&#FF6600⏳ Wait &#FFAA00%time%s &fbefore using %bottle% again."

give-uccess-sender: "%prefix%�FF00Вы передали &#FFFFFFx%amount% %bottle% �FF00игроку &#FFFF00%player%."
give-success-receiver: "%prefix%�FF00Вы получили &#FFFFFFx%amount% %bottle% �FF00от &#FFFF00%sender%."

reload-success: "%prefix%�FF00Configuration reloaded successfully."
no-permission: "%prefix%&#FF4444У вас нет разрешения на это."
```

### Доступные заполнители

| Заполнитель | Где | Описание |
|---|---|---|
| `%prefix%` | в любом месте | Префикс плагина |
| `%player%` | дать, статистика | Имя игрока |
| `%bottle%` | использование, дать, время восстановления | Отображаемое имя бутылки |
| `%levels%` | использовать | Начисленные уровни опыта |
| `%level%` | использовать | Текущий уровень игрока |
| `%time%` | время восстановления | Осталось секунд |
| `%id%` | информация, список | Идентификатор конфигурации бутылки |
| `%sender%` | give | Имя отправителя команды |
| `%сумма%` | дать | Количество товара |
| `%total%` | статистика | Всего полученных уровней |
| `%count%` | статистика | Всего использовано бутылок |

---

## Цветовой формат

Файлы `config.yml` и `messages.yml` поддерживают шестнадцатеричные значения цветов в формате `&#rrggbb`, а также все стандартные коды `&`.

| Формат | Пример | Результат |
|---|---|---|
| Hex | `&#FF5500text` | Orange |
| Зеленый | `&atext` | Зеленый |
| Жирный шрифт | `<ext` | **Жирный шрифт** |
| Курсив | `&otext` | *Курсив* |
| Сбросить | `&rtext` | Простой белый |

---

## Файлы плагинов

После первого запуска IBottleXP создаст следующие файлы в папке `plugins/`:

```
plugins/IBottleXP/
├── config.yml — бутылки, частицы, время перезарядки, защита от злоупотреблений
├── messages.yml — все сообщения плагина
└── statistics.yml — статистика по каждому игроку (сгенерирована автоматически)
```

---

## Установка

1. Загрузите последнюю версию файла `IBottleXP.jar`, используя кнопку загрузки выше.
2. Поместите файл в папку `plugins/` на вашем сервере.
3. Перезапустите сервер.
4. Отредактируйте файл `plugins/IBottleXP/config.yml`, чтобы настроить ваши контейнеры.
5. Отредактируйте файл `plugins/IBottleXP/messages.yml`, чтобы настроить все сообщения.
6. Запустите команду `/ibottlexp reload`, чтобы применить изменения без перезапуска.

**Требования:** Java 21, Spigot или Paper 1.21.4

---

## Поддерживать

Присоединяйтесь к нашему **серверу Discord**, чтобы получить помощь, сообщить об ошибках и предложить новые функции. Вы также можете оставлять сообщения во вкладке «Обсуждения» на этой странице.

---

*Создано MrReZik*
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

IBottleXP is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 6 times (via Spigot). Download it and open it directly in the game.

Explore more