Skip to content

Commit 386218c

Browse files
committed
Add permission for disabling player transcripts
1 parent 487e3e4 commit 386218c

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

build.gradle.kts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,7 @@ import com.modrinth.minotaur.dependencies.DependencyType
22
import com.modrinth.minotaur.dependencies.ModDependency
33
import dev.deftu.gradle.tools.minecraft.CurseRelation
44
import dev.deftu.gradle.tools.minecraft.CurseRelationType
5-
import dev.deftu.gradle.utils.MinecraftInfo
6-
import dev.deftu.gradle.utils.MinecraftVersion
7-
import dev.deftu.gradle.utils.ModLoader
8-
import dev.deftu.gradle.utils.includeOrShade
5+
import dev.deftu.gradle.utils.*
96

107
plugins {
118
java
@@ -92,14 +89,15 @@ dependencies {
9289
modImplementation("com.terraformersmc:modmenu:$modMenuVersion")
9390
}
9491

92+
includeOrShade(modImplementation("me.lucko:fabric-permissions-api:0.3.1")!!)
93+
9594
val useSVC = false
9695

9796
if (useSVC)
9897
modRuntimeOnly("maven.modrinth:simple-voice-chat:${mcData.loader.friendlyString}-${if (mcData.version != MinecraftVersion.VERSION_1_21_1) mcData.version else "1.21"}-${project.property("voicechat_version")}")
9998
else if (!mcData.isNeoForge) {
10099
modRuntimeOnly("maven.modrinth:plasmo-voice:${mcData.loader.friendlyString}-${if (mcData.version != MinecraftVersion.VERSION_1_21_1) mcData.version else "1.21"}-${project.property("plasmo_version")}")
101100
runtimeOnly("su.plo.voice.api:server:${project.property("plasmo_api_version")}")
102-
modRuntimeOnly("me.lucko:fabric-permissions-api:0.3.1") // buddy.
103101
}
104102

105103
val clothConfigVersion = when(mcData.version.rawVersion) {

src/main/kotlin/xyz/bluspring/unitytranslate/network/UTServerNetworking.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,12 @@ package xyz.bluspring.unitytranslate.network
1010
//#endif
1111
import dev.architectury.event.events.common.PlayerEvent
1212
import dev.architectury.networking.NetworkManager
13+
import me.lucko.fabric.api.permissions.v0.Permissions
1314
import net.minecraft.ChatFormatting
1415
import net.minecraft.network.FriendlyByteBuf
1516
import net.minecraft.network.chat.Component
1617
import net.minecraft.server.level.ServerPlayer
18+
import net.minecraft.world.entity.player.Player
1719
import net.minecraft.world.level.block.SignBlock
1820
import net.minecraft.world.level.block.entity.SignBlockEntity
1921
import xyz.bluspring.unitytranslate.Language
@@ -61,6 +63,9 @@ object UTServerNetworking {
6163
val updateTime = buf.readVarLong()
6264
//#endif
6365

66+
if (!canPlayerRequestTranslations(ctx.player))
67+
return@registerReceiver
68+
6469
// TODO: probably make this better
6570
if (text.length > 1500) {
6671
ctx.player.displayClientMessage(Component.literal("Transcription too long! Current transcript discarded.").withStyle(ChatFormatting.RED), true)
@@ -130,6 +135,9 @@ object UTServerNetworking {
130135
val pos = buf.readBlockPos()
131136
//#endif
132137

138+
if (!canPlayerRequestTranslations(ctx.player))
139+
return@registerReceiver
140+
133141
val player = ctx.player
134142
val level = player.level()
135143

@@ -222,6 +230,10 @@ object UTServerNetworking {
222230
}
223231
}
224232

233+
fun canPlayerRequestTranslations(player: Player): Boolean {
234+
return Permissions.check(player, "unitytranslate.request_translations", true)
235+
}
236+
225237
//#if MC >= 1.20.6
226238
//$$ private fun <T : CustomPacketPayload> registerReceiver(type: TypeAndCodec<RegistryFriendlyByteBuf, T>, receiver: NetworkManager.NetworkReceiver<T>) {
227239
//$$ NetworkManager.registerReceiver(NetworkManager.Side.C2S, type.type, type.codec, receiver)

0 commit comments

Comments
 (0)