-
Notifications
You must be signed in to change notification settings - Fork 4
/
build.gradle
114 lines (92 loc) · 3.14 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
plugins {
id 'eclipse'
id 'maven-publish'
id 'net.minecraftforge.gradle' version '5.1.+'
id 'org.spongepowered.mixin' version '0.7.+'
}
version = '1.18.36'
group = 'com.github.dashiedev'
archivesBaseName = "DoggyTalentsNext-${project.target_mc_version}"
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}"
sourceSets {
api
main {
compileClasspath += sourceSets.api.output
runtimeClasspath += sourceSets.api.output
resources.srcDirs += 'src/generated/resources'
}
}
tasks.named("processResources") {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
task apiJar(type: Jar) {
duplicatesStrategy(DuplicatesStrategy.FAIL)
archiveClassifier = 'api'
from sourceSets.api.output
from sourceSets.api.allJava
}
configurations {
apiImplementation.extendsFrom(implementation)
apiRuntimeOnly.extendsFrom(runtimeOnly)
}
minecraft {
mappings channel: 'official', version: '1.20.1'
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
runs {
client {
taskName 'doggytalents_client'
workingDirectory file('run')
property 'forge.logging.console.level', 'debug'
mods {
doggytalents.sources((SourceSet[]) [sourceSets.main, sourceSets.api])
}
}
server {
taskName 'doggytalents_server'
workingDirectory file('run-server')
property 'forge.logging.console.level', 'debug'
mods {
doggytalents.sources((SourceSet[]) [sourceSets.main, sourceSets.api])
}
}
data {
taskName 'doggytalents_data'
workingDirectory file('run')
property 'forge.logging.console.level', 'debug'
args '--mod', 'doggytalents', '--all', '--output', '"' + file('src/generated/resources/') + '"', '--existing', '"' + sourceSets.main.resources.srcDirs[0] + '"'
mods {
doggytalents.sources((SourceSet[]) [sourceSets.main, sourceSets.api])
}
}
}
}
sourceSets.main.resources { srcDir 'src/generated/resources' }
repositories {
}
dependencies {
minecraft 'net.minecraftforge:forge:1.20.1-47.1.0'
annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
}
jar {
from sourceSets.main.output
from sourceSets.api.output
manifest {
attributes([
"Specification-Title": "Doggy Talents Next",
"Specification-Vendor": "dashiedev",
"Specification-Version": project.version,
"Implementation-Title": project.name,
"Implementation-Version": project.version,
"Implementation-Vendor" :"dashiedev",
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
])
}
}
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
}
mixin {
add sourceSets.main, "doggytalents.refmap.json"
config 'doggytalents.mixins.json'
}