LoChat/bin/main/plugin.yml
loki5512344 bba480002f refactor: restructure services and filters architecture
- Remove deprecated service interfaces (CooldownService, IgnoreService, PMService, PlayerDataService, SpyService)
- Add new unified service interfaces (MessagingService, PlayerService, PunishmentService)
- Extract FilterResult as standalone class from AdvancedMessageFilter
- Implement individual filter classes (CharacterFilter, FloodFilter, SpamFilter, SwearFilter, UrlFilter)
- Add moderation commands (BanCommand, WarnCommand, SilentWarnCommand, UnbanCommand)
- Introduce data models for punishment tracking (BanRecord, WarnEntry)
- Refactor messaging service with new MessagingServiceImpl implementation
- Add mute service utilities (MuteDataStorage, MutePermissionChecker)
- Implement PunishmentServiceImpl with snapshot tracking
- Add Discord integration components (DiscordConfig, DiscordMessageService)
- Introduce command handlers for gradient module (ColorCommandHandler, PrefixCommandHandler)
- Add renderer components (EmojiComponent, GradientBuilder, UrlProcessor)
- Add utility classes (ColorConverter, MessageSender, PlaceholderProcessor)
- Update configuration files and plugin metadata
- Add documentation files (CODE_REVIEW_RU.md, REFACTORING_SERVICES.md)
- Consolidate service architecture for improved maintainability and separation of concerns
2026-04-06 00:18:25 +02:00

407 lines
11 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: LoChat
version: '1.5.5-1.21'
main: com.loki.lochat.LoChat
api-version: '1.21'
folia-supported: true
author: loki
description: Advanced chat plugin for Paper/Folia 1.21 — Spacelegacy edition
softdepend:
- PlaceholderAPI
- PlayerPoints
- LuckPerms
- LibertyBans
- SkinsRestorer
commands:
g:
description: Send global message
usage: /g <message>
permission: chat.global.use
aliases: [ п ]
globalchat:
description: Toggle global chat
usage: /globalchat toggle
permission: chat.global.toggle
aliases: [ пдщифдсрфе ]
l:
description: Send local message
usage: /l <message>
permission: chat.local.use
aliases: [ д ]
msg:
description: Send private message
usage: /msg <player> <message>
permission: chat.pm.use
aliases: [ tell, pm, m, ьып, ееддж, цж, зьж, ьж ]
reply:
description: Reply to last message
usage: /reply <message>
permission: chat.pm.use
aliases: [ r, ответить, кузду, к ]
ignore:
description: Ignore player
usage: /ignore <player>
permission: chat.pm.ignore
aliases: [ игнор, шптщку ]
unignore:
description: Unignore player
usage: /unignore <player>
permission: chat.pm.ignore
aliases: [ разигнор, гтшптщку ]
ignorelist:
description: List ignored players
usage: /ignorelist
permission: chat.pm.ignore
aliases: [ игнорлист, шптщкудшые ]
announce:
description: Send announcement
usage: /announce <message>
permission: chat.announce.use
aliases: [ объявление, анонс, фттщгтсу ]
nick:
description: Set custom nickname
usage: /nick [nickname|reset]
permission: lochat.nick
aliases: [ ник, тшсл ]
chatspy:
description: Toggle chat spy mode
usage: /chatspy
permission: chat.spy
aliases: [ spy, шпион, срфезуж, зуж ]
clearchat:
description: Clear chat for all players
usage: /clearchat
permission: chat.clear
aliases: [ cc, очиститьчат, сдуфксрфе, сс ]
clearchatconfig:
description: Configure clear chat message
usage: /clearchatconfig <enable|disable|message|status> [text]
permission: lochat.clearchat.config
aliases: [ ccc, настройкаочистки ]
lochat:
description: LoChat admin command
usage: /lochat [reload]
permission: lochat.admin
aliases: [ дщсрфе ]
color:
description: Set gradient nick color
usage: /color <hex1> [hex2] ...
permission: gradient.color
aliases: [ gradient, цвет, градиент, сщдщк, пкфвшуте ]
prefix:
description: Set custom prefix
usage: /prefix <text>
permission: gradient.prefix
aliases: [ префикс, зкуашч ]
aprefix:
description: Admin gradient commands
usage: /aprefix <subcommand>
permission: gradient.admin
aliases: [ gradientadmin, азкуашч, пкфвшуетефвьшт ]
lmute:
description: Mute a player
usage: /lmute <player> [time] [-s] [reason]
permission: lochat.mute
aliases: [ mute, мут, ьгеу ]
lunmute:
description: Unmute a player
usage: /lunmute <player> [-s]
permission: lochat.unmute
aliases: [ unmute, размут, гтьгеу ]
lmutelist:
description: List all active mutes
usage: /lmutelist
permission: lochat.mutelist
aliases: [ mutelist, мутлист, ьгеудшые ]
lmutehistory:
description: View mute history of a player
usage: /lmutehistory <player>
permission: lochat.mutehistory
aliases: [ mutehistory, мутистория, ьгеершыещку ]
lmuteblame:
description: View mutes issued by a moderator
usage: /lmuteblame <moderator>
permission: lochat.muteblame
aliases: [ muteblame, мутблейм, ьгеуидфьу ]
warn:
description: Warn a player (visible to them)
usage: /warn <player> [reason]
permission: lochat.warn
aliases: [ w, варн ]
silentwarn:
description: Silent warn (logged; staff with lochat.warn.notify see)
usage: /silentwarn <player> [reason]
permission: lochat.warn.silent
aliases: [ siw ]
lban:
description: Ban a player
usage: /lban <player> [time|perm] [reason]
permission: lochat.ban
aliases: [ ban, бан ]
lunban:
description: Unban a player
usage: /lunban <player>
permission: lochat.unban
aliases: [ unban, разбан ]
playerinfo:
description: Player info and moderation stats
usage: /playerinfo <player>
permission: lochat.playerinfo
aliases: [ pi, инфо ]
# ═══════════════════════════════════════════════════════════════════════════════
# КАСТОМНЫЕ КОМАНДЫ
# ═══════════════════════════════════════════════════════════════════════════════
customcommands:
description: Manage custom commands
usage: /customcommands [list|reload|enable|disable] [command]
permission: lochat.customcommands
aliases: [ cc-admin, кастомкоманды ]
discordadmin:
description: Discord integration management
usage: /discordadmin [status|reload|test]
permission: lochat.discord.admin
aliases: [ dadmin ]
lochatreload:
description: Reload all LoChat configurations
usage: /lochatreload
permission: lochat.admin.reload
aliases: [ lcreload, перезагрузить ]
me:
description: RP emote - perform an action visible to nearby players
usage: /me <действие>
permission: lochat.rp.me
aliases: [ меня, эмоут ]
try:
description: RP try - attempt an action with random success/fail outcome
usage: /try <действие>
permission: lochat.rp.try
aliases: [ попытаться ]
do:
description: RP do - describe a scene or environment event
usage: /do <описание>
permission: lochat.rp.do
aliases: [ сцена ]
roll:
description: Roll a dice (1 to max, default 100)
usage: /roll [максимум]
permission: lochat.rp.roll
aliases: [ кубик, dice ]
permissions:
chat.global.use:
default: true
chat.global.toggle:
default: true
chat.global.color:
default: op
chat.local.use:
default: true
chat.local.color:
default: op
chat.pm.use:
default: true
chat.pm.ignore:
default: true
chat.announce.use:
default: op
chat.announce.reload:
default: op
chat.spy:
default: op
chat.clear:
default: op
chat.bypass.cooldown:
default: op
chat.bypass.filter:
default: op
chat.bypass.antispam:
default: op
chat.mention.use:
default: true
gradient.color:
default: true
gradient.prefix:
default: true
gradient.admin:
default: op
gradient.bypass.cooldown:
default: op
gradient.bypass.cost:
default: op
lochat.admin:
default: op
lochat.mute:
default: op
lochat.unmute:
default: op
lochat.mutelist:
default: op
lochat.mutehistory:
default: op
lochat.muteblame:
default: op
lochat.mute.silent:
description: Can use silent mute (-s flag)
default: op
lochat.mute.see-silent:
description: Can see silent mute notifications
default: op
lochat.mute.dur.10m:
description: Can mute for 10 minutes
default: false
lochat.mute.dur.30m:
description: Can mute for 30 minutes
default: false
lochat.mute.dur.1h:
description: Can mute for 1 hour
default: false
lochat.mute.dur.6h:
description: Can mute for 6 hours
default: false
lochat.mute.dur.12h:
description: Can mute for 12 hours
default: false
lochat.mute.dur.1d:
description: Can mute for 1 day
default: false
lochat.mute.dur.3d:
description: Can mute for 3 days
default: false
lochat.mute.dur.7d:
description: Can mute for 7 days
default: op
lochat.mute.dur.14d:
description: Can mute for 14 days
default: false
lochat.mute.dur.30d:
description: Can mute for 30 days
default: false
lochat.mute.dur.perm:
description: Can mute permanently
default: op
lochat.warn:
description: Issue a visible warning
default: op
lochat.warn.silent:
description: Issue a silent warning
default: op
lochat.warn.notify:
description: See silent warn notifications
default: op
lochat.ban:
description: Ban players
default: op
lochat.ban.override:
description: Ban players with lochat.bypass.ban
default: op
lochat.unban:
description: Unban players
default: op
lochat.bypass.warn:
description: Immune to /warn
default: false
lochat.bypass.ban:
description: Immune to /lban (unless staff has lochat.ban.override)
default: false
lochat.playerinfo:
description: View player moderation stats
default: op
lochat.clearchat.config:
description: Can configure clear chat message
default: op
lochat.heademoji.use:
description: Can use head emojis in chat
default: true
lochat.nick:
description: Can use custom nicknames
default: true
lochat.mention.everyone:
description: Can mention @everyone
default: op
lochat.mention.here:
description: Can mention @here
default: op
lochat.mention.role:
description: Can mention @role:<permission>
default: op
lochat.bypass.urlfilter:
description: Bypass URL filter
default: op
lochat.bypass.ipfilter:
description: Bypass IP filter
default: op
lochat.bypass.caps:
description: Bypass caps filter
default: op
lochat.bypass.hiddenurls:
description: Bypass hidden URLs filter
default: op
lochat.bypass.domains:
description: Bypass domains filter
default: op
lochat.customcommands:
description: Can manage custom commands
default: op
lochat.discord.admin:
description: Can manage Discord integration
default: op
lochat.admin.reload:
description: Can reload LoChat configurations
default: op
lochat.rp.me:
description: Can use /me RP emote command
default: true
lochat.rp.try:
description: Can use /try RP command
default: true
lochat.rp.do:
description: Can use /do scene description command
default: true
lochat.rp.roll:
description: Can use /roll dice command
default: true
lochat.rp.bypass.cooldown:
description: Bypass RP commands cooldown
default: op
lochat.chat.colors:
description: Can use color codes (&7, &#RRGGBB, MiniMessage) in chat messages
default: op