From 817eb7bc479fa55bda106aa1f6c5bd8dc9fbbe4c Mon Sep 17 00:00:00 2001 From: Sho Sakuma Date: Mon, 26 Jan 2026 03:52:29 +0900 Subject: feat: Add channel-chat configuration --- .../engine/exception/ChannelLimitExceededException.kt | 7 +++++++ .../engine/exception/ChannelMemberLimitExceededException.kt | 8 ++++++++ .../engine/exception/PlayerChannelLimitExceededException.kt | 10 ++++++++++ .../lunaticChat/engine/permission/LunaticChatPermissionNode.kt | 6 +++++- 4 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelLimitExceededException.kt create mode 100644 engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelMemberLimitExceededException.kt create mode 100644 engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/PlayerChannelLimitExceededException.kt (limited to 'engine') diff --git a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelLimitExceededException.kt b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelLimitExceededException.kt new file mode 100644 index 0000000..c111ab4 --- /dev/null +++ b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelLimitExceededException.kt @@ -0,0 +1,7 @@ +package dev.m1sk9.lunaticChat.engine.exception + +class ChannelLimitExceededException( + val limit: Int, +) : Exception( + "Channel creation failed: server has reached the maximum limit of $limit channels", + ) diff --git a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelMemberLimitExceededException.kt b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelMemberLimitExceededException.kt new file mode 100644 index 0000000..7e080dc --- /dev/null +++ b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/ChannelMemberLimitExceededException.kt @@ -0,0 +1,8 @@ +package dev.m1sk9.lunaticChat.engine.exception + +class ChannelMemberLimitExceededException( + val channelId: String, + val limit: Int, +) : Exception( + "Cannot join channel '$channelId': channel has reached the maximum member limit of $limit", + ) diff --git a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/PlayerChannelLimitExceededException.kt b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/PlayerChannelLimitExceededException.kt new file mode 100644 index 0000000..0820d8c --- /dev/null +++ b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/exception/PlayerChannelLimitExceededException.kt @@ -0,0 +1,10 @@ +package dev.m1sk9.lunaticChat.engine.exception + +import java.util.UUID + +class PlayerChannelLimitExceededException( + val playerId: UUID, + val limit: Int, +) : Exception( + "Player $playerId has reached the maximum channel membership limit of $limit", + ) diff --git a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/permission/LunaticChatPermissionNode.kt b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/permission/LunaticChatPermissionNode.kt index 838a48b..c20d636 100644 --- a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/permission/LunaticChatPermissionNode.kt +++ b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/permission/LunaticChatPermissionNode.kt @@ -27,6 +27,8 @@ sealed class LunaticChatPermissionNode( object ChannelStatus : LunaticChatPermissionNode("lunaticchat.command.lc.channel.status") + object ChannelInfo : LunaticChatPermissionNode("lunaticchat.command.lc.channel.info") + object ChannelDelete : LunaticChatPermissionNode("lunaticchat.command.lc.channel.delete") object ChatMode : LunaticChatPermissionNode("lunaticchat.command.lc.chatmode") @@ -35,5 +37,7 @@ sealed class LunaticChatPermissionNode( object Spy : LunaticChatPermissionNode("lunaticchat.spy") - object NoticeUpdate : LunaticChatPermissionNode("lunaticchat.noticeUpdate") + object NoticeUpdate : LunaticChatPermissionNode("lunaticchat.noticeupdate") + + object ChannelBypass: LunaticChatPermissionNode("lunaticchat.channelbypass") } -- cgit v1.2.1