11import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
2- import ru.astrainteractive.gradleplugin.property.model.Developer
3- import ru.astrainteractive.gradleplugin.property.util.requireJinfo
42import ru.astrainteractive.gradleplugin.property.util.requireProjectInfo
53
64plugins {
7- kotlin(" jvm" )
8- kotlin(" plugin.serialization" )
5+ id(" org.jetbrains.kotlin.jvm" )
6+ id(" org.jetbrains.kotlin.plugin.serialization" )
7+ id(" ru.astrainteractive.gradleplugin.detekt" )
8+ id(" ru.astrainteractive.gradleplugin.java.version" )
99 alias(libs.plugins.gradle.forgegradle)
1010 alias(libs.plugins.gradle.forgerenamer)
1111 alias(libs.plugins.gradle.shadow)
12+ alias(libs.plugins.klibs.minecraft.resource.processor)
1213}
1314
1415repositories {
@@ -20,61 +21,38 @@ repositories {
2021}
2122
2223dependencies {
23- // Kotlin
24+ compileOnly(libs.minecraft.luckperms)
25+
26+ shadow(libs.driver.h2)
27+ shadow(libs.exposed.jdbc)
28+ shadow(libs.klibs.kstorage)
29+ shadow(libs.klibs.mikro.core)
30+ shadow(libs.klibs.mikro.extensions)
2431 shadow(libs.kotlin.coroutines.core)
2532 shadow(libs.kotlin.datetime)
2633 shadow(libs.kotlin.serialization.kaml)
27- // AstraLibs
28- shadow(libs.minecraft.astralibs.core)
2934 shadow(libs.minecraft.astralibs.command)
35+ shadow(libs.minecraft.astralibs.core)
3036 shadow(libs.minecraft.astralibs.core.forge)
31-
32- shadow(libs.klibs.mikro.core)
33- shadow(libs.klibs.mikro.extensions)
34- shadow(libs.klibs.kstorage)
35-
36- shadow(libs.driver.h2)
37- shadow(libs.exposed.jdbc)
38-
39- shadow(libs.minecraft.kyori.plain)
40- shadow(libs.minecraft.kyori.legacy)
4137 shadow(libs.minecraft.kyori.gson)
42- // Spigot
43- compileOnly(libs.minecraft.luckperms)
44- // Local
38+ shadow(libs.minecraft.kyori.legacy)
39+ shadow(libs.minecraft.kyori.plain)
40+ shadow(projects.modules.core.api)
41+ shadow(projects.modules.core.forge)
42+ shadow(projects.modules.link)
4543 shadow(projects.modules.messenger.api)
4644 shadow(projects.modules.messenger.discord)
4745 shadow(projects.modules.messenger.forge)
4846 shadow(projects.modules.messenger.telegram)
49- shadow(projects.modules.core.api)
50- shadow(projects.modules.core.forge)
51- shadow(projects.modules.link)
5247}
5348
54- tasks.named<ProcessResources >(" processResources" ) {
55- filteringCharset = " UTF-8"
56- duplicatesStrategy = DuplicatesStrategy .WARN
57- val sourceSets = project.extensions.getByName(" sourceSets" ) as SourceSetContainer
58- val resDirs = sourceSets
59- .map(SourceSet ::getResources)
60- .map(SourceDirectorySet ::getSrcDirs)
61- from(resDirs) {
62- include(" META-INF/mods.toml" )
63- expand(
64- mapOf (
65- " minecraft_version" to libs.versions.minecraft.forgeversion.get().split(" -" )[0 ],
66- " forge_version" to libs.versions.minecraft.forgeversion.get().split(" -" )[1 ],
67- " mod_id" to requireProjectInfo.name.lowercase(),
68- " mod_name" to requireProjectInfo.name,
69- " mod_license" to " mod_license" ,
70- " mod_version" to requireProjectInfo.versionString,
71- " mod_authors" to requireProjectInfo.developersList
72- .map(Developer ::id)
73- .joinToString(" ," ),
74- " mod_description" to requireProjectInfo.description
75- )
49+ minecraftProcessResource {
50+ forge(
51+ customProperties = mapOf (
52+ " minecraft_version" to libs.versions.minecraft.forgeversion.get().split(" -" )[0 ],
53+ " forge_version" to libs.versions.minecraft.forgeversion.get().split(" -" )[1 ],
7654 )
77- }
55+ )
7856}
7957
8058val shadowJar by tasks.getting(ShadowJar ::class ) {
@@ -229,14 +207,13 @@ val shadowJar by tasks.getting(ShadowJar::class) {
229207 // Don't relocate on: [bukkit]
230208 add(" org.h2" )
231209 }
232-
233210 add(" org.intellij" )
234211 add(" org.jetbrains.annotations" )
235- add(" org.jetbrains.exposed" ) // Don't relocate on: [*]
212+ // add("org.jetbrains.exposed") // Don't relocate on: [*]
236213 add(" org.jetbrains.kotlinx" )
237214 add(" org.json" )
238215 add(" org.json" )
239- add(" org.sqlite" )
216+ // add("org.sqlite")
240217 add(" org.telegram" )
241218 add(" org.telegram.telegrambots" )
242219 add(" org.w3c.css" )
@@ -247,21 +224,15 @@ val shadowJar by tasks.getting(ShadowJar::class) {
247224 }.forEach { pattern -> relocate(pattern, " ${requireProjectInfo.group} .shade.$pattern " ) }
248225}
249226
250- java.toolchain.languageVersion = JavaLanguageVersion .of(requireJinfo.jtarget.majorVersion)
251-
252227minecraft {
253- mappings(" official" , " 1.20.1 " )
228+ mappings(" official" , libs.versions.minecraft.mojang.version.get() )
254229 useDefaultAccessTransformer()
255230}
256231
257232dependencies {
258233 compileOnly(minecraft.dependency(libs.minecraft.forgeversion.get()))
259234}
260235
261- configurations.runtimeElements {
262- setExtendsFrom(emptySet())
263- }
264-
265236renamer {
266237 mappings.from(minecraft.dependency.toSrgFile)
267238}
0 commit comments