22
33plugins {
44 id ' multiloader-loader'
5+ id ' net.minecraftforge.accesstransformers'
56 id ' net.minecraftforge.gradle'
67}
78
89// All jar files from this folder will be added automatically as runtime mod dependencies (inspired by AE2's build.gradle)
910def extraModsDir = " extra-mods"
1011
1112repositories {
13+ maven minecraft. mavenizer
14+ maven fg. forgeMaven
15+ maven fg. minecraftLibsMaven
1216 flatDir {
1317 name " extra-mods"
1418 dir file(extraModsDir)
1519 }
1620}
1721
1822dependencies {
19- minecraft " net.minecraftforge:forge:${ minecraft_version} -${ forge_version} "
20- annotationProcessor ' net.minecraftforge:eventbus-validator:7.0-beta.7 '
23+ implementation minecraft . dependency( " net.minecraftforge:forge:${ minecraft_version} -${ forge_version} " )
24+ annotationProcessor ' net.minecraftforge:eventbus-validator:7.0-beta.10 '
2125
2226 testImplementation " junit:junit:4.12"
2327 testImplementation " org.mockito:mockito-core:1.+"
@@ -41,66 +45,37 @@ sourceSets.main.resources { srcDir 'src/generated/resources' }
4145minecraft {
4246 mappings channel : ' official' , version : minecraft_version
4347
44- reobf = false
45-
46- copyIdeResources. set(true )
47-
4848 // Automatically enable neoforge AccessTransformers if the file exists
4949 def at = project(' :loader-common' ). file(' src/main/resources/META-INF/accesstransformer.cfg' )
5050 if (at. exists()) {
51- accessTransformer = file(at . absolutePath)
51+ accessTransformers = ' ../../../../loader-common/src/main/resources/META-INF/accesstransformer.cfg '
5252 }
5353
5454 runs {
55- client {
56- property ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
57- property ' eventbus.api.strictRuntimeChecks' , ' true'
58- workingDirectory file(' runs/client' )
59- ideaModule " ${ rootProject.name} .${ project.name} .main"
60- taskName ' Client'
61- mods {
62- modClientRun {
63- source sourceSets. main
64- }
65- }
55+ configureEach {
56+ workingDir. convention layout. projectDirectory. dir(' run' )
57+ // systemProperty 'forge.logging.markers', 'REGISTRIES'
58+ systemProperty ' forge.logging.console.level' , ' debug'
59+ systemProperty ' eventbus.api.strictRuntimeChecks' , ' true'
60+ jvmArgs " -XstartOnFirstThread" // Fixes startup error
61+ }
62+
63+ register(' client' ) {
64+ systemProperty ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
6665 }
6766
68- server {
69- property ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
70- property ' eventbus.api.strictRuntimeChecks' , ' true'
67+ register(' server' ) {
68+ systemProperty ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
7169 args ' --nogui'
72- workingDirectory file(' runs/server' )
73- ideaModule " ${ rootProject.name} .${ project.name} .main"
74- taskName ' Server'
75- mods {
76- modServerRun {
77- source sourceSets. main
78- }
79- }
8070 }
8171
82- gameTestServer {
83- property ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
84- workingDirectory file(' runs/gametest' )
85- ideaModule " ${ rootProject.name} .${ project.name} .main"
86- taskName ' runGameTestServer'
87- mods {
88- modDataRun {
89- source sourceSets. main
90- }
91- }
72+ register(' gameTestServer' ) {
73+ systemProperty ' forge.enabledGameTestNamespaces' , " cyclopscore,${ mod_id} "
9274 }
9375
94- data {
95- workingDirectory file(' runs/data' )
96- ideaModule " ${ rootProject.name} .${ project.name} .main"
97- args ' --mod' , mod_id, ' --all' , ' --output' , file(' src/generated/resources/' ), ' --existing' , file(' src/main/resources/' )
98- taskName ' Data'
99- mods {
100- modDataRun {
101- source sourceSets. main
102- }
103- }
76+ register(' data' ) {
77+ workingDir = layout. projectDirectory. dir(' run-data' )
78+ args ' --mod' , mod_id, ' --all' , ' --output' , layout. projectDirectory. dir(' src/generated/resources' ), ' --existing' , layout. projectDirectory. dir(' src/main/resources' )
10479 }
10580 }
10681}
0 commit comments