1+ plugins {
2+ id ' eclipse'
3+ id ' maven-publish'
4+ id ' net.minecraftforge.gradle' version ' 6.0.+'
5+ id " io.freefair.lombok" version " 8.4"
6+ id ' org.spongepowered.mixin' version ' 0.7.+'
7+ }
8+
9+ version = " ${ mod_version} -${ minecraft_version} "
10+ group = maven_group
11+ base {
12+ archivesName = archives_base_name
13+ }
14+
15+ java. toolchain. languageVersion = JavaLanguageVersion . of(17 )
16+
17+ minecraft {
18+ mappings channel : ' official' , version : minecraft_version
19+
20+ runs {
21+ client {
22+ workingDirectory project. file(' run' )
23+ property ' forge.logging.markers' , ' REGISTRIES'
24+ property ' forge.logging.console.level' , ' debug'
25+
26+ mods {
27+ clienttimeandweathercontrolmod {
28+ source sourceSets. main
29+ }
30+ }
31+ }
32+
33+ server {
34+ workingDirectory project. file(' run' )
35+ property ' forge.logging.markers' , ' REGISTRIES'
36+ property ' forge.logging.console.level' , ' debug'
37+
38+ mods {
39+ clienttimeandweathercontrolmod {
40+ source sourceSets. main
41+ }
42+ }
43+ }
44+ }
45+ }
46+
47+ repositories {
48+ mavenCentral()
49+ maven {
50+ name = " Cloth Config"
51+ url = " https://maven.shedaniel.me/"
52+ }
53+ }
54+
55+ dependencies {
56+ minecraft " net.minecraftforge:forge:${ minecraft_version} -${ forge_version} "
57+
58+ implementation fg. deobf(" me.shedaniel.cloth:cloth-config-forge:${ cloth_config_version} " )
59+
60+ annotationProcessor ' org.spongepowered:mixin:0.8.5:processor'
61+ implementation ' org.spongepowered:mixin:0.8.5'
62+
63+ compileOnly ' org.projectlombok:lombok:1.18.30'
64+ annotationProcessor ' org.projectlombok:lombok:1.18.30'
65+ }
66+
67+ tasks. named(' processResources' , ProcessResources ). configure {
68+ var replaceProperties = [
69+ minecraft_version : minecraft_version,
70+ minecraft_version_range : minecraft_version_range,
71+ forge_version : forge_version,
72+ forge_version_range : forge_version_range,
73+ cloth_config_version : cloth_config_version,
74+ cloth_config_version_range : cloth_config_version_range,
75+ mod_version : mod_version,
76+ ]
77+ inputs. properties replaceProperties
78+
79+ filesMatching([' META-INF/mods.toml' , ' pack.mcmeta' ]) {
80+ expand replaceProperties + [project : project]
81+ }
82+ }
83+
84+ tasks. named(' jar' , Jar ). configure {
85+ manifest {
86+ attributes([
87+ " Specification-Title" : " CTWC" ,
88+ " Specification-Vendor" : " Minecraft269" ,
89+ " Specification-Version" : " 1" ,
90+ " Implementation-Title" : project. name,
91+ " Implementation-Version" : project. jar. archiveVersion,
92+ " Implementation-Vendor" : " Minecraft269" ,
93+ " Implementation-Timestamp" : new Date (). format(" yyyy-MM-dd'T'HH:mm:ssZ" )
94+ ])
95+ }
96+ }
97+
98+ tasks. withType(JavaCompile ). configureEach {
99+ options. encoding = ' UTF-8'
100+ }
101+
102+ publishing {
103+ publications {
104+ register(' mavenJava' , MavenPublication ) {
105+ artifact jar
106+ }
107+ }
108+ repositories {
109+ maven {
110+ url " file://${ project.projectDir} /mcmodsrepo"
111+ }
112+ }
113+ }
114+
115+ mixin {
116+ add sourceSets. main, " mixins.clienttimeandweathercontrolmod.refmap.json"
117+ config " mixins.clienttimeandweathercontrolmod.json"
118+ debug. export = true
119+ }
0 commit comments