refactor: split god classes, fix OCP/ISP/SRP, migrate commands to BaseCommand hierarchy

This commit is contained in:
loki5512344 2026-07-05 13:22:48 +02:00
parent 793924c9ba
commit 90c3cac5cf
244 changed files with 1677 additions and 1570 deletions

View file

@ -1,313 +1,158 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat Sounds Configuration ║
# ║ Конфигурация звуков ║
# ║ Версия: 1.5.5-1.20.1 ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat sound configuration
# Controls sound effects for chat events, moderation, and system actions.
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ОСНОВНЫЕ НАСТРОЙКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── General ────────────────────────────────────────────────────────────────────
settings:
# Включить звуки
enabled: true
# Глобальная громкость (0.0 - 1.0)
global-volume: 0.5
# Глобальная высота тона (0.5 - 2.0)
global-pitch: 1.0
# Разрешить игрокам отключать звуки
allow-disable: true
# Команда для управления звуками
toggle-command: "/sounds"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ СООБЩЕНИЙ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Message Sounds ─────────────────────────────────────────────────────────────
messages:
# Личные сообщения
private-message:
enabled: true
sound: "BLOCK_NOTE_BLOCK_PLING"
sound: BLOCK_NOTE_BLOCK_PLING
volume: 0.8
pitch: 1.2
# Играть только получателю
receiver-only: true
# Упоминания в чате
mention:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BELL"
sound: BLOCK_NOTE_BLOCK_BELL
volume: 0.7
pitch: 1.5
# Дополнительный звук для @everyone
everyone-sound: "BLOCK_NOTE_BLOCK_CHIME"
# Глобальный чат
everyone-sound: BLOCK_NOTE_BLOCK_CHIME
global-chat:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.3
pitch: 1.0
# Локальный чат
local-chat:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.2
pitch: 0.8
# Объявления
announcement:
enabled: true
sound: "BLOCK_NOTE_BLOCK_CHIME"
sound: BLOCK_NOTE_BLOCK_CHIME
volume: 1.0
pitch: 1.0
# Дополнительные звуки для важных объявлений
important-sound: "ENTITY_ENDER_DRAGON_GROWL"
important-sound: ENTITY_ENDER_DRAGON_GROWL
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ СИСТЕМЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── System Sounds ──────────────────────────────────────────────────────────────
system:
# Подключение к серверу
join:
enabled: false
sound: "ENTITY_PLAYER_LEVELUP"
sound: ENTITY_PLAYER_LEVELUP
volume: 0.5
pitch: 1.0
# Играть только подключившемуся игроку
self-only: true
# Отключение от сервера
quit:
enabled: false
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.3
pitch: 0.8
# Мут игрока
mute:
enabled: true
sound: "BLOCK_ANVIL_LAND"
sound: BLOCK_ANVIL_LAND
volume: 0.6
pitch: 0.5
# Играть замученному игроку
target-sound: "ENTITY_VILLAGER_NO"
# Размут игрока
target-sound: ENTITY_VILLAGER_NO
unmute:
enabled: true
sound: "ENTITY_PLAYER_LEVELUP"
sound: ENTITY_PLAYER_LEVELUP
volume: 0.7
pitch: 1.2
# Играть размученному игроку
target-sound: "ENTITY_VILLAGER_YES"
# Очистка чата
target-sound: ENTITY_VILLAGER_YES
clear-chat:
enabled: true
sound: "ITEM_BUCKET_EMPTY"
sound: ITEM_BUCKET_EMPTY
volume: 0.5
pitch: 1.5
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ ГРАДИЕНТОВ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Gradient Sounds ────────────────────────────────────────────────────────────
gradient:
# Установка градиента
color-set:
enabled: true
sound: "BLOCK_NOTE_BLOCK_HARP"
sound: BLOCK_NOTE_BLOCK_HARP
volume: 0.6
pitch: 1.3
# Сброс градиента
color-reset:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.4
pitch: 0.7
# Установка префикса
prefix-set:
enabled: true
sound: "BLOCK_NOTE_BLOCK_CHIME"
sound: BLOCK_NOTE_BLOCK_CHIME
volume: 0.7
pitch: 1.4
# Ошибка (недостаточно средств, кулдаун и т.д.)
error:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.5
pitch: 0.8
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ КОМАНД │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Command Sounds ─────────────────────────────────────────────────────────────
commands:
# Успешное выполнение команды
success:
enabled: false
sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
sound: ENTITY_EXPERIENCE_ORB_PICKUP
volume: 0.4
pitch: 1.2
# Ошибка выполнения команды
error:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.5
pitch: 0.8
# Недостаточно прав
no-permission:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.6
pitch: 0.5
# Игрок не найден
player-not-found:
enabled: true
sound: "ENTITY_ITEM_BREAK"
sound: ENTITY_ITEM_BREAK
volume: 0.4
pitch: 0.6
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ ФИЛЬТРОВ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Filter Sounds ──────────────────────────────────────────────────────────────
filters:
# Сообщение заблокировано фильтром
blocked:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.6
pitch: 0.7
# Предупреждение от фильтра
warning:
enabled: true
sound: "BLOCK_NOTE_BLOCK_PLING"
sound: BLOCK_NOTE_BLOCK_PLING
volume: 0.5
pitch: 0.9
# Автоматическое исправление (например, caps)
auto-fix:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.3
pitch: 1.1
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ КАСТОМНЫЕ ЗВУКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
custom:
# Звуки для VIP игроков
vip:
enabled: false
join-sound: "ENTITY_PLAYER_LEVELUP"
message-sound: "BLOCK_NOTE_BLOCK_HARP"
volume: 0.8
pitch: 1.3
# Звуки для администраторов
admin:
enabled: false
join-sound: "ENTITY_ENDER_DRAGON_GROWL"
command-sound: "BLOCK_ANVIL_USE"
volume: 0.7
pitch: 1.0
# Праздничные звуки
holiday:
enabled: false
christmas:
sound: "BLOCK_NOTE_BLOCK_CHIME"
volume: 0.6
pitch: 1.5
new-year:
sound: "ENTITY_FIREWORK_ROCKET_BLAST"
volume: 0.8
pitch: 1.2
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКОВЫЕ СХЕМЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
schemes:
# Классическая схема
classic:
name: "Классическая"
description: "Стандартные звуки Minecraft"
sounds:
private-message: "BLOCK_NOTE_BLOCK_PLING"
mention: "BLOCK_NOTE_BLOCK_BELL"
announcement: "BLOCK_NOTE_BLOCK_CHIME"
# Минималистичная схема
minimal:
name: "Минимальная"
description: "Только важные звуки"
sounds:
private-message: "UI_BUTTON_CLICK"
mention: "BLOCK_NOTE_BLOCK_PLING"
announcement: "ENTITY_EXPERIENCE_ORB_PICKUP"
# Отключенная схема
silent:
name: "Тишина"
description: "Все звуки отключены"
sounds: {}
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ НАСТРОЙКИ ПО МИРАМ │
# └─────────────────────────────────────────────────────────────────────────────┘
worlds:
# Настройки для конкретных миров
world_nether:
volume-modifier: 0.7 # Уменьшить громкость на 30%
pitch-modifier: 0.8 # Понизить тон
world_the_end:
volume-modifier: 0.5
pitch-modifier: 1.2
# Отключить определенные звуки
disabled-sounds:
- "global-chat"
- "local-chat"
creative_world:
volume-modifier: 1.2
# Включить дополнительные звуки
extra-sounds:
build: "BLOCK_STONE_PLACE"
fly: "ENTITY_BAT_TAKEOFF"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ПЕРСОНАЛЬНЫЕ НАСТРОЙКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
personal:
# Разрешить игрокам настраивать громкость
allow-volume-control: true
# Разрешить игрокам выбирать звуковые схемы
allow-scheme-selection: true
# Сохранять настройки игроков
save-preferences: true
# Файл для сохранения настроек
preferences-file: "plugins/LoChat/sound-preferences.yml"